(function webpackUniversalModuleDefinition(root, factory) {
	if(typeof exports === 'object' && typeof module === 'object')
		module.exports = factory();
	else if(typeof define === 'function' && define.amd)
		define([], factory);
	else if(typeof exports === 'object')
		exports["AWS"] = factory();
	else
		root["AWS"] = factory();
})(this, function() {
return /******/ (function(modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};

/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {

/******/ 		// Check if module is in cache
/******/ 		if(installedModules[moduleId])
/******/ 			return installedModules[moduleId].exports;

/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			exports: {},
/******/ 			id: moduleId,
/******/ 			loaded: false
/******/ 		};

/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

/******/ 		// Flag the module as loaded
/******/ 		module.loaded = true;

/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}


/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;

/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;

/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "";

/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, exports, __webpack_require__) {

	module.exports = __webpack_require__(1);


/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(2);

	__webpack_require__(43);
	module.exports = AWS;

/***/ }),
/* 2 */
/***/ (function(module, exports, __webpack_require__) {

	/* WEBPACK VAR INJECTION */(function(process) {var AWS = __webpack_require__(4);
	// react-native specific modules
	AWS.util.crypto.lib = __webpack_require__(5);
	AWS.util.Buffer = __webpack_require__(6).Buffer;
	AWS.util.url = __webpack_require__(15);
	AWS.util.querystring = __webpack_require__(18);
	AWS.util.environment = 'js-react-native';

	module.exports = AWS;

	__webpack_require__(21);
	__webpack_require__(22);
	__webpack_require__(23);
	__webpack_require__(28);
	__webpack_require__(29);
	__webpack_require__(34);

	// Load the DOMParser XML parser
	AWS.XML.Parser = __webpack_require__(35);

	// Load the XHR HttpClient
	__webpack_require__(39);

	// add custom request event handlers
	var addContentType = __webpack_require__(42).addContentType;
	AWS.EventListeners.Core.addNamedListeners(function(add) {
	  add('ADD_CONTENT_TYPE', 'afterBuild', addContentType);
	});

	if (typeof process === 'undefined') {
	  process = {};
	}
	process.browser = true;
	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))

/***/ }),
/* 3 */
/***/ (function(module, exports) {

	// shim for using process in browser
	var process = module.exports = {};

	// cached from whatever global is present so that test runners that stub it
	// don't break things.  But we need to wrap it in a try catch in case it is
	// wrapped in strict mode code which doesn't define any globals.  It's inside a
	// function because try/catches deoptimize in certain engines.

	var cachedSetTimeout;
	var cachedClearTimeout;

	function defaultSetTimout() {
	    throw new Error('setTimeout has not been defined');
	}
	function defaultClearTimeout () {
	    throw new Error('clearTimeout has not been defined');
	}
	(function () {
	    try {
	        if (typeof setTimeout === 'function') {
	            cachedSetTimeout = setTimeout;
	        } else {
	            cachedSetTimeout = defaultSetTimout;
	        }
	    } catch (e) {
	        cachedSetTimeout = defaultSetTimout;
	    }
	    try {
	        if (typeof clearTimeout === 'function') {
	            cachedClearTimeout = clearTimeout;
	        } else {
	            cachedClearTimeout = defaultClearTimeout;
	        }
	    } catch (e) {
	        cachedClearTimeout = defaultClearTimeout;
	    }
	} ())
	function runTimeout(fun) {
	    if (cachedSetTimeout === setTimeout) {
	        //normal enviroments in sane situations
	        return setTimeout(fun, 0);
	    }
	    // if setTimeout wasn't available but was latter defined
	    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
	        cachedSetTimeout = setTimeout;
	        return setTimeout(fun, 0);
	    }
	    try {
	        // when when somebody has screwed with setTimeout but no I.E. maddness
	        return cachedSetTimeout(fun, 0);
	    } catch(e){
	        try {
	            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
	            return cachedSetTimeout.call(null, fun, 0);
	        } catch(e){
	            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
	            return cachedSetTimeout.call(this, fun, 0);
	        }
	    }


	}
	function runClearTimeout(marker) {
	    if (cachedClearTimeout === clearTimeout) {
	        //normal enviroments in sane situations
	        return clearTimeout(marker);
	    }
	    // if clearTimeout wasn't available but was latter defined
	    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
	        cachedClearTimeout = clearTimeout;
	        return clearTimeout(marker);
	    }
	    try {
	        // when when somebody has screwed with setTimeout but no I.E. maddness
	        return cachedClearTimeout(marker);
	    } catch (e){
	        try {
	            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
	            return cachedClearTimeout.call(null, marker);
	        } catch (e){
	            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
	            // Some versions of I.E. have different rules for clearTimeout vs setTimeout
	            return cachedClearTimeout.call(this, marker);
	        }
	    }



	}
	var queue = [];
	var draining = false;
	var currentQueue;
	var queueIndex = -1;

	function cleanUpNextTick() {
	    if (!draining || !currentQueue) {
	        return;
	    }
	    draining = false;
	    if (currentQueue.length) {
	        queue = currentQueue.concat(queue);
	    } else {
	        queueIndex = -1;
	    }
	    if (queue.length) {
	        drainQueue();
	    }
	}

	function drainQueue() {
	    if (draining) {
	        return;
	    }
	    var timeout = runTimeout(cleanUpNextTick);
	    draining = true;

	    var len = queue.length;
	    while(len) {
	        currentQueue = queue;
	        queue = [];
	        while (++queueIndex < len) {
	            if (currentQueue) {
	                currentQueue[queueIndex].run();
	            }
	        }
	        queueIndex = -1;
	        len = queue.length;
	    }
	    currentQueue = null;
	    draining = false;
	    runClearTimeout(timeout);
	}

	process.nextTick = function (fun) {
	    var args = new Array(arguments.length - 1);
	    if (arguments.length > 1) {
	        for (var i = 1; i < arguments.length; i++) {
	            args[i - 1] = arguments[i];
	        }
	    }
	    queue.push(new Item(fun, args));
	    if (queue.length === 1 && !draining) {
	        runTimeout(drainQueue);
	    }
	};

	// v8 likes predictible objects
	function Item(fun, array) {
	    this.fun = fun;
	    this.array = array;
	}
	Item.prototype.run = function () {
	    this.fun.apply(null, this.array);
	};
	process.title = 'browser';
	process.browser = true;
	process.env = {};
	process.argv = [];
	process.version = ''; // empty string to avoid regexp issues
	process.versions = {};

	function noop() {}

	process.on = noop;
	process.addListener = noop;
	process.once = noop;
	process.off = noop;
	process.removeListener = noop;
	process.removeAllListeners = noop;
	process.emit = noop;
	process.prependListener = noop;
	process.prependOnceListener = noop;

	process.listeners = function (name) { return [] }

	process.binding = function (name) {
	    throw new Error('process.binding is not supported');
	};

	process.cwd = function () { return '/' };
	process.chdir = function (dir) {
	    throw new Error('process.chdir is not supported');
	};
	process.umask = function() { return 0; };


/***/ }),
/* 4 */
/***/ (function(module, exports, __webpack_require__) {

	(function webpackUniversalModuleDefinition(root, factory) {
		if(true)
			module.exports = factory();
		else if(typeof define === 'function' && define.amd)
			define([], factory);
		else if(typeof exports === 'object')
			exports["AWS"] = factory();
		else
			root["AWS"] = factory();
	})(this, function() {
	return /******/ (function(modules) { // webpackBootstrap
	/******/ 	// The module cache
	/******/ 	var installedModules = {};

	/******/ 	// The require function
	/******/ 	function __webpack_require__(moduleId) {

	/******/ 		// Check if module is in cache
	/******/ 		if(installedModules[moduleId])
	/******/ 			return installedModules[moduleId].exports;

	/******/ 		// Create a new module (and put it into the cache)
	/******/ 		var module = installedModules[moduleId] = {
	/******/ 			exports: {},
	/******/ 			id: moduleId,
	/******/ 			loaded: false
	/******/ 		};

	/******/ 		// Execute the module function
	/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

	/******/ 		// Flag the module as loaded
	/******/ 		module.loaded = true;

	/******/ 		// Return the exports of the module
	/******/ 		return module.exports;
	/******/ 	}


	/******/ 	// expose the modules object (__webpack_modules__)
	/******/ 	__webpack_require__.m = modules;

	/******/ 	// expose the module cache
	/******/ 	__webpack_require__.c = installedModules;

	/******/ 	// __webpack_public_path__
	/******/ 	__webpack_require__.p = "";

	/******/ 	// Load entry module and return exports
	/******/ 	return __webpack_require__(0);
	/******/ })
	/************************************************************************/
	/******/ ([
	/* 0 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(1);


	/***/ }),
	/* 1 */
	/***/ (function(module, exports, __webpack_require__) {

		/**
		 * The main AWS namespace
		 */
		var AWS = { util: __webpack_require__(2) };

		/**
		 * @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

		module.exports = AWS;

		AWS.util.update(AWS, {

		  /**
		   * @constant
		   */
		  VERSION: '2.92.0',

		  /**
		   * @api private
		   */
		  Signers: {},

		  /**
		   * @api private
		   */
		  Protocol: {
		    Json: __webpack_require__(11),
		    Query: __webpack_require__(14),
		    Rest: __webpack_require__(18),
		    RestJson: __webpack_require__(19),
		    RestXml: __webpack_require__(20)
		  },

		  /**
		   * @api private
		   */
		  XML: {
		    Builder: __webpack_require__(21),
		    Parser: null // conditionally set based on environment
		  },

		  /**
		   * @api private
		   */
		  JSON: {
		    Builder: __webpack_require__(12),
		    Parser: __webpack_require__(13)
		  },

		  /**
		   * @api private
		   */
		  Model: {
		    Api: __webpack_require__(180),
		    Operation: __webpack_require__(181),
		    Shape: __webpack_require__(16),
		    Paginator: __webpack_require__(182),
		    ResourceWaiter: __webpack_require__(183)
		  },

		  /**
		   * @api private
		   */
		  apiLoader: __webpack_require__(184)
		});

		__webpack_require__(185);
		__webpack_require__(188);

		__webpack_require__(191);
		__webpack_require__(192);
		__webpack_require__(193);
		__webpack_require__(197);
		__webpack_require__(200);
		__webpack_require__(201);
		__webpack_require__(202);
		__webpack_require__(210);

		/**
		 * @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();


	/***/ }),
	/* 2 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(process) {/* 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__(1).VERSION;
		    if (name === 'nodejs') agent += ' ' + util.engine();
		    return agent;
		  },

		  isBrowser: function isBrowser() { return process && process.browser; },
		  isNode: function isNode() { return !util.isBrowser(); },
		  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__(4).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 = (typeof util.Buffer.from === 'function' && util.Buffer.from !== Uint8Array.from) ? util.Buffer.from(string) : new util.Buffer(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 (typeof util.Buffer.from === 'function' && util.Buffer.from !== Uint8Array.from) ? util.Buffer.from(string, 'base64') : new util.Buffer(string, 'base64');
		    }

		  },

		  buffer: {
		    toStream: function toStream(buffer) {
		      if (!util.Buffer.isBuffer(buffer)) buffer = new util.Buffer(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 = new util.Buffer(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 = new util.Buffer(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__(4).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];
		        } 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() {},

		    /**
		     * 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__(1);
		      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 = new util.Buffer(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 = new util.Buffer(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 = new util.Buffer(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 = 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 operation = req.operation;
		    var output = req.service.api.operations[operation].output;
		    if (output.payload) {
		      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__(4);
		      if (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) {
		    if (PromiseDependency === undefined && AWS && AWS.config) {
		      PromiseDependency = AWS.config.getPromisesDependency();
		    }
		    if (PromiseDependency === undefined && typeof Promise !== 'undefined') {
		      PromiseDependency = Promise;
		    }
		    if (typeof PromiseDependency !== 'function') var 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
		   */
		  promisifyMethod: function promisifyMethod(methodName, PromiseDependency) {
		    return function promise() {
		      var self = this;
		      return new PromiseDependency(function(resolve, reject) {
		        self[methodName](function(err, data) {
		          if (err) {
		            reject(err);
		          } else {
		            resolve(data);
		          }
		        });
		      });
		    };
		  },

		  /**
		   * @api private
		   */
		  isDualstackAvailable: function isDualstackAvailable(service) {
		    if (!service) return false;
		    var metadata = __webpack_require__(5);
		    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) {
		    if (!retryDelayOptions) retryDelayOptions = {};
		    var customBackoff = retryDelayOptions.customBackoff || null;
		    if (typeof customBackoff === 'function') {
		      return customBackoff(retryCount);
		    }
		    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;
		      if (err && err.retryable && retryCount < maxRetries) {
		        retryCount++;
		        var delay = util.calculateRetryDelay(retryCount, options.retryDelayOptions);
		        setTimeout(sendRequest, delay + (err.retryAfter || 0));
		      } else {
		        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(),
		              { retryable: statusCode >= 500 || statusCode === 429 }
		            );
		            if (retryAfter && err.retryable) err.retryAfter = retryAfter;
		            errCallback(err);
		          }
		        });
		      }, errCallback);
		    };

		    process.nextTick(sendRequest);
		  },

		  /**
		   * @api private
		   */
		  uuid: {
		    v4: function uuidV4() {
		      return __webpack_require__(6).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
		   */
		  defaultProfile: 'default',

		  /**
		   * @api private
		   */
		  configOptInEnv: 'AWS_SDK_LOAD_CONFIG',

		  /**
		   * @api private
		   */
		  sharedCredentialsFileEnv: 'AWS_SHARED_CREDENTIALS_FILE',

		  /**
		   * @api private
		   */
		  sharedConfigFileEnv: 'AWS_CONFIG_FILE'
		};

		module.exports = util;

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))

	/***/ }),
	/* 3 */
	/***/ (function(module, exports) {

		// shim for using process in browser
		var process = module.exports = {};

		// cached from whatever global is present so that test runners that stub it
		// don't break things.  But we need to wrap it in a try catch in case it is
		// wrapped in strict mode code which doesn't define any globals.  It's inside a
		// function because try/catches deoptimize in certain engines.

		var cachedSetTimeout;
		var cachedClearTimeout;

		function defaultSetTimout() {
		    throw new Error('setTimeout has not been defined');
		}
		function defaultClearTimeout () {
		    throw new Error('clearTimeout has not been defined');
		}
		(function () {
		    try {
		        if (typeof setTimeout === 'function') {
		            cachedSetTimeout = setTimeout;
		        } else {
		            cachedSetTimeout = defaultSetTimout;
		        }
		    } catch (e) {
		        cachedSetTimeout = defaultSetTimout;
		    }
		    try {
		        if (typeof clearTimeout === 'function') {
		            cachedClearTimeout = clearTimeout;
		        } else {
		            cachedClearTimeout = defaultClearTimeout;
		        }
		    } catch (e) {
		        cachedClearTimeout = defaultClearTimeout;
		    }
		} ())
		function runTimeout(fun) {
		    if (cachedSetTimeout === setTimeout) {
		        //normal enviroments in sane situations
		        return setTimeout(fun, 0);
		    }
		    // if setTimeout wasn't available but was latter defined
		    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
		        cachedSetTimeout = setTimeout;
		        return setTimeout(fun, 0);
		    }
		    try {
		        // when when somebody has screwed with setTimeout but no I.E. maddness
		        return cachedSetTimeout(fun, 0);
		    } catch(e){
		        try {
		            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
		            return cachedSetTimeout.call(null, fun, 0);
		        } catch(e){
		            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
		            return cachedSetTimeout.call(this, fun, 0);
		        }
		    }


		}
		function runClearTimeout(marker) {
		    if (cachedClearTimeout === clearTimeout) {
		        //normal enviroments in sane situations
		        return clearTimeout(marker);
		    }
		    // if clearTimeout wasn't available but was latter defined
		    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
		        cachedClearTimeout = clearTimeout;
		        return clearTimeout(marker);
		    }
		    try {
		        // when when somebody has screwed with setTimeout but no I.E. maddness
		        return cachedClearTimeout(marker);
		    } catch (e){
		        try {
		            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
		            return cachedClearTimeout.call(null, marker);
		        } catch (e){
		            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
		            // Some versions of I.E. have different rules for clearTimeout vs setTimeout
		            return cachedClearTimeout.call(this, marker);
		        }
		    }



		}
		var queue = [];
		var draining = false;
		var currentQueue;
		var queueIndex = -1;

		function cleanUpNextTick() {
		    if (!draining || !currentQueue) {
		        return;
		    }
		    draining = false;
		    if (currentQueue.length) {
		        queue = currentQueue.concat(queue);
		    } else {
		        queueIndex = -1;
		    }
		    if (queue.length) {
		        drainQueue();
		    }
		}

		function drainQueue() {
		    if (draining) {
		        return;
		    }
		    var timeout = runTimeout(cleanUpNextTick);
		    draining = true;

		    var len = queue.length;
		    while(len) {
		        currentQueue = queue;
		        queue = [];
		        while (++queueIndex < len) {
		            if (currentQueue) {
		                currentQueue[queueIndex].run();
		            }
		        }
		        queueIndex = -1;
		        len = queue.length;
		    }
		    currentQueue = null;
		    draining = false;
		    runClearTimeout(timeout);
		}

		process.nextTick = function (fun) {
		    var args = new Array(arguments.length - 1);
		    if (arguments.length > 1) {
		        for (var i = 1; i < arguments.length; i++) {
		            args[i - 1] = arguments[i];
		        }
		    }
		    queue.push(new Item(fun, args));
		    if (queue.length === 1 && !draining) {
		        runTimeout(drainQueue);
		    }
		};

		// v8 likes predictible objects
		function Item(fun, array) {
		    this.fun = fun;
		    this.array = array;
		}
		Item.prototype.run = function () {
		    this.fun.apply(null, this.array);
		};
		process.title = 'browser';
		process.browser = true;
		process.env = {};
		process.argv = [];
		process.version = ''; // empty string to avoid regexp issues
		process.versions = {};

		function noop() {}

		process.on = noop;
		process.addListener = noop;
		process.once = noop;
		process.off = noop;
		process.removeListener = noop;
		process.removeAllListeners = noop;
		process.emit = noop;
		process.prependListener = noop;
		process.prependOnceListener = noop;

		process.listeners = function (name) { return [] }

		process.binding = function (name) {
		    throw new Error('process.binding is not supported');
		};

		process.cwd = function () { return '/' };
		process.chdir = function (dir) {
		    throw new Error('process.chdir is not supported');
		};
		process.umask = function() { return 0; };


	/***/ }),
	/* 4 */
	/***/ (function(module, exports) {

		/* (ignored) */

	/***/ }),
	/* 5 */
	/***/ (function(module, exports) {

		module.exports = {"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"},"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*"],"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"},"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"},"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},"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"},"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"},"marketplaceentitlementservice":{"prefix":"entitlement.marketplace","name":"MarketplaceEntitlementService"},"athena":{"name":"Athena"},"greengrass":{"name":"Greengrass"},"dax":{"name":"DAX"}}

	/***/ }),
	/* 6 */
	/***/ (function(module, exports, __webpack_require__) {

		var v1 = __webpack_require__(7);
		var v4 = __webpack_require__(10);

		var uuid = v4;
		uuid.v1 = v1;
		uuid.v4 = v4;

		module.exports = uuid;


	/***/ }),
	/* 7 */
	/***/ (function(module, exports, __webpack_require__) {

		// Unique ID creation requires a high quality random # generator.  We feature
		// detect to determine the best RNG source, normalizing to a function that
		// returns 128-bits of randomness, since that's what's usually required
		var rng = __webpack_require__(8);
		var bytesToUuid = __webpack_require__(9);

		// **`v1()` - Generate time-based UUID**
		//
		// Inspired by https://github.com/LiosK/UUID.js
		// and http://docs.python.org/library/uuid.html

		// random #'s we need to init node and clockseq
		var _seedBytes = rng();

		// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
		var _nodeId = [
		  _seedBytes[0] | 0x01,
		  _seedBytes[1], _seedBytes[2], _seedBytes[3], _seedBytes[4], _seedBytes[5]
		];

		// Per 4.2.2, randomize (14 bit) clockseq
		var _clockseq = (_seedBytes[6] << 8 | _seedBytes[7]) & 0x3fff;

		// Previous uuid creation time
		var _lastMSecs = 0, _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 clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;

		  // 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`
		  var node = options.node || _nodeId;
		  for (var n = 0; n < 6; ++n) {
		    b[i + n] = node[n];
		  }

		  return buf ? buf : bytesToUuid(b);
		}

		module.exports = v1;


	/***/ }),
	/* 8 */
	/***/ (function(module, exports) {

		/* WEBPACK VAR INJECTION */(function(global) {// Unique ID creation requires a high quality random # generator.  In the
		// browser this is a little complicated due to unknown quality of Math.random()
		// and inconsistent support for the `crypto` API.  We do the best we can via
		// feature-detection
		var rng;

		var crypto = global.crypto || global.msCrypto; // for IE 11
		if (crypto && crypto.getRandomValues) {
		  // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto
		  var rnds8 = new Uint8Array(16);
		  rng = function whatwgRNG() {
		    crypto.getRandomValues(rnds8);
		    return rnds8;
		  };
		}

		if (!rng) {
		  // Math.random()-based (RNG)
		  //
		  // If all else fails, use Math.random().  It's fast, but is of unspecified
		  // quality.
		  var  rnds = new Array(16);
		  rng = function() {
		    for (var i = 0, r; i < 16; i++) {
		      if ((i & 0x03) === 0) r = Math.random() * 0x100000000;
		      rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;
		    }

		    return rnds;
		  };
		}

		module.exports = rng;

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))

	/***/ }),
	/* 9 */
	/***/ (function(module, exports) {

		/**
		 * Convert array of 16 byte values to UUID string format of the form:
		 * XXXXXXXX-XXXX-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;
		  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++]];
		}

		module.exports = bytesToUuid;


	/***/ }),
	/* 10 */
	/***/ (function(module, exports, __webpack_require__) {

		var rng = __webpack_require__(8);
		var bytesToUuid = __webpack_require__(9);

		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;


	/***/ }),
	/* 11 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);
		var JsonBuilder = __webpack_require__(12);
		var JsonParser = __webpack_require__(13);

		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;
		}

		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());
		      if (e.__type || e.code) {
		        error.code = (e.__type || e.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);
		  }
		}

		module.exports = {
		  buildRequest: buildRequest,
		  extractError: extractError,
		  extractData: extractData
		};


	/***/ }),
	/* 12 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);

		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);
		}

		module.exports = JsonBuilder;


	/***/ }),
	/* 13 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);

		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);
		}

		module.exports = JsonParser;


	/***/ }),
	/* 14 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var util = __webpack_require__(2);
		var QueryParamSerializer = __webpack_require__(15);
		var Shape = __webpack_require__(16);

		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);
		}

		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;
		}

		module.exports = {
		  buildRequest: buildRequest,
		  extractError: extractError,
		  extractData: extractData
		};


	/***/ }),
	/* 15 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);

		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());
		  }
		}

		module.exports = QueryParamSerializer;


	/***/ }),
	/* 16 */
	/***/ (function(module, exports, __webpack_require__) {

		var Collection = __webpack_require__(17);

		var util = __webpack_require__(2);

		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, '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);

		  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 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.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 (this.location === 'header') {
		    property(this, 'timestampFormat', 'rfc822');
		  } else if (shape.timestampFormat) {
		    property(this, 'timestampFormat', shape.timestampFormat);
		  } else if (!this.timestampFormat && this.api) {
		    if (this.api.timestampFormat) {
		      property(this, 'timestampFormat', this.api.timestampFormat);
		    } else {
		      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 = util.base64.decode;
		  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
		};

		module.exports = Shape;


	/***/ }),
	/* 17 */
	/***/ (function(module, exports, __webpack_require__) {

		var memoizedProperty = __webpack_require__(2).memoizedProperty;

		function memoize(name, value, fn, nameTr) {
		  memoizedProperty(this, nameTr(name), function() {
		    return fn(name, value);
		  });
		}

		function Collection(iterable, options, fn, nameTr) {
		  nameTr = nameTr || String;
		  var self = this;

		  for (var id in iterable) {
		    if (Object.prototype.hasOwnProperty.call(iterable, id)) {
		      memoize.call(self, id, iterable[id], fn, nameTr);
		    }
		  }
		}

		module.exports = Collection;


	/***/ }),
	/* 18 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);

		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(String(val));
		        });
		      } 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(String(paramValue));
		      }
		    }
		  });

		  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);
		}

		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;
		}

		module.exports = {
		  buildRequest: buildRequest,
		  extractError: extractError,
		  extractData: extractData,
		  generateURI: generateURI
		};


	/***/ }),
	/* 19 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);
		var Rest = __webpack_require__(18);
		var Json = __webpack_require__(11);
		var JsonBuilder = __webpack_require__(12);
		var JsonParser = __webpack_require__(13);

		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);
		    } else { // non-JSON payload
		      req.httpRequest.body = params;
		    }
		  } else {
		    req.httpRequest.body = builder.build(req.params, input);
		  }
		}

		function buildRequest(req) {
		  Rest.buildRequest(req);

		  // never send body payload on GET/HEAD/DELETE
		  if (['GET', '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 rules = req.service.api.operations[req.operation].output || {};
		  if (rules.payload) {
		    var payloadMember = rules.members[rules.payload];
		    var body = resp.httpResponse.body;
		    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);
		  }
		}

		module.exports = {
		  buildRequest: buildRequest,
		  extractError: extractError,
		  extractData: extractData
		};


	/***/ }),
	/* 20 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var util = __webpack_require__(2);
		var Rest = __webpack_require__(18);

		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 payload = output.payload;
		  if (payload) {
		    var payloadMember = output.members[payload];
		    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);
		  }
		}

		module.exports = {
		  buildRequest: buildRequest,
		  extractError: extractError,
		  extractData: extractData
		};


	/***/ }),
	/* 21 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);
		var builder = __webpack_require__(22);

		function XmlBuilder() { }

		XmlBuilder.prototype.toXML = function(params, shape, rootElement, noEmpty) {
		  var xml = builder.create(rootElement);
		  applyNamespaces(xml, shape);
		  serialize(xml, params, shape);
		  return xml.children.length > 0 || noEmpty ? xml.root().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.att(name, value);
		      } else if (memberShape.flattened) {
		        serialize(xml, value, memberShape);
		      } else {
		        var element = xml.ele(name);
		        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 = xml.ele(shape.flattened ? shape.name : 'entry');
		    serialize(entry.ele(xmlKey), key, shape.key);
		    serialize(entry.ele(xmlValue), 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 = xml.ele(name);
		      serialize(element, value, shape.member);
		    });
		  } else {
		    util.arrayEach(list, function(value) {
		      var name = shape.member.name || 'member';
		      var element = xml.ele(name);
		      serialize(element, value, shape.member);
		    });
		  }
		}

		function serializeScalar(xml, value, shape) {
		  xml.txt(shape.toWireFormat(value));
		}

		function applyNamespaces(xml, shape) {
		  var uri, prefix = 'xmlns';
		  if (shape.xmlNamespaceUri) {
		    uri = shape.xmlNamespaceUri;
		    if (shape.xmlNamespacePrefix) prefix += ':' + shape.xmlNamespacePrefix;
		  } else if (xml.isRoot && shape.api.xmlNamespaceUri) {
		    uri = shape.api.xmlNamespaceUri;
		  }

		  if (uri) xml.att(prefix, uri);
		}

		module.exports = XmlBuilder;


	/***/ }),
	/* 22 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLBuilder, assign;

		  assign = __webpack_require__(23);

		  XMLBuilder = __webpack_require__(74);

		  module.exports.create = function(name, xmldec, doctype, options) {
		    options = assign({}, xmldec, doctype, options);
		    return new XMLBuilder(name, options).root();
		  };

		}).call(this);


	/***/ }),
	/* 23 */
	/***/ (function(module, exports, __webpack_require__) {

		var assignValue = __webpack_require__(24),
		    copyObject = __webpack_require__(42),
		    createAssigner = __webpack_require__(43),
		    isArrayLike = __webpack_require__(53),
		    isPrototype = __webpack_require__(56),
		    keys = __webpack_require__(57);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Assigns own enumerable string keyed properties of source objects to the
		 * destination object. Source objects are applied from left to right.
		 * Subsequent sources overwrite property assignments of previous sources.
		 *
		 * **Note:** This method mutates `object` and is loosely based on
		 * [`Object.assign`](https://mdn.io/Object/assign).
		 *
		 * @static
		 * @memberOf _
		 * @since 0.10.0
		 * @category Object
		 * @param {Object} object The destination object.
		 * @param {...Object} [sources] The source objects.
		 * @returns {Object} Returns `object`.
		 * @see _.assignIn
		 * @example
		 *
		 * function Foo() {
		 *   this.a = 1;
		 * }
		 *
		 * function Bar() {
		 *   this.c = 3;
		 * }
		 *
		 * Foo.prototype.b = 2;
		 * Bar.prototype.d = 4;
		 *
		 * _.assign({ 'a': 0 }, new Foo, new Bar);
		 * // => { 'a': 1, 'c': 3 }
		 */
		var assign = createAssigner(function(object, source) {
		  if (isPrototype(source) || isArrayLike(source)) {
		    copyObject(source, keys(source), object);
		    return;
		  }
		  for (var key in source) {
		    if (hasOwnProperty.call(source, key)) {
		      assignValue(object, key, source[key]);
		    }
		  }
		});

		module.exports = assign;


	/***/ }),
	/* 24 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseAssignValue = __webpack_require__(25),
		    eq = __webpack_require__(41);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Assigns `value` to `key` of `object` if the existing value is not equivalent
		 * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
		 * for equality comparisons.
		 *
		 * @private
		 * @param {Object} object The object to modify.
		 * @param {string} key The key of the property to assign.
		 * @param {*} value The value to assign.
		 */
		function assignValue(object, key, value) {
		  var objValue = object[key];
		  if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
		      (value === undefined && !(key in object))) {
		    baseAssignValue(object, key, value);
		  }
		}

		module.exports = assignValue;


	/***/ }),
	/* 25 */
	/***/ (function(module, exports, __webpack_require__) {

		var defineProperty = __webpack_require__(26);

		/**
		 * The base implementation of `assignValue` and `assignMergeValue` without
		 * value checks.
		 *
		 * @private
		 * @param {Object} object The object to modify.
		 * @param {string} key The key of the property to assign.
		 * @param {*} value The value to assign.
		 */
		function baseAssignValue(object, key, value) {
		  if (key == '__proto__' && defineProperty) {
		    defineProperty(object, key, {
		      'configurable': true,
		      'enumerable': true,
		      'value': value,
		      'writable': true
		    });
		  } else {
		    object[key] = value;
		  }
		}

		module.exports = baseAssignValue;


	/***/ }),
	/* 26 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27);

		var defineProperty = (function() {
		  try {
		    var func = getNative(Object, 'defineProperty');
		    func({}, '', {});
		    return func;
		  } catch (e) {}
		}());

		module.exports = defineProperty;


	/***/ }),
	/* 27 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsNative = __webpack_require__(28),
		    getValue = __webpack_require__(40);

		/**
		 * Gets the native function at `key` of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {string} key The key of the method to get.
		 * @returns {*} Returns the function if it's native, else `undefined`.
		 */
		function getNative(object, key) {
		  var value = getValue(object, key);
		  return baseIsNative(value) ? value : undefined;
		}

		module.exports = getNative;


	/***/ }),
	/* 28 */
	/***/ (function(module, exports, __webpack_require__) {

		var isFunction = __webpack_require__(29),
		    isMasked = __webpack_require__(37),
		    isObject = __webpack_require__(36),
		    toSource = __webpack_require__(39);

		/**
		 * Used to match `RegExp`
		 * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
		 */
		var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;

		/** Used to detect host constructors (Safari). */
		var reIsHostCtor = /^\[object .+?Constructor\]$/;

		/** Used for built-in method references. */
		var funcProto = Function.prototype,
		    objectProto = Object.prototype;

		/** Used to resolve the decompiled source of functions. */
		var funcToString = funcProto.toString;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/** Used to detect if a method is native. */
		var reIsNative = RegExp('^' +
		  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
		  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
		);

		/**
		 * The base implementation of `_.isNative` without bad shim checks.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a native function,
		 *  else `false`.
		 */
		function baseIsNative(value) {
		  if (!isObject(value) || isMasked(value)) {
		    return false;
		  }
		  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
		  return pattern.test(toSource(value));
		}

		module.exports = baseIsNative;


	/***/ }),
	/* 29 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(30),
		    isObject = __webpack_require__(36);

		/** `Object#toString` result references. */
		var asyncTag = '[object AsyncFunction]',
		    funcTag = '[object Function]',
		    genTag = '[object GeneratorFunction]',
		    proxyTag = '[object Proxy]';

		/**
		 * Checks if `value` is classified as a `Function` object.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a function, else `false`.
		 * @example
		 *
		 * _.isFunction(_);
		 * // => true
		 *
		 * _.isFunction(/abc/);
		 * // => false
		 */
		function isFunction(value) {
		  if (!isObject(value)) {
		    return false;
		  }
		  // The use of `Object#toString` avoids issues with the `typeof` operator
		  // in Safari 9 which returns 'object' for typed arrays and other constructors.
		  var tag = baseGetTag(value);
		  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
		}

		module.exports = isFunction;


	/***/ }),
	/* 30 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(31),
		    getRawTag = __webpack_require__(34),
		    objectToString = __webpack_require__(35);

		/** `Object#toString` result references. */
		var nullTag = '[object Null]',
		    undefinedTag = '[object Undefined]';

		/** Built-in value references. */
		var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

		/**
		 * The base implementation of `getTag` without fallbacks for buggy environments.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @returns {string} Returns the `toStringTag`.
		 */
		function baseGetTag(value) {
		  if (value == null) {
		    return value === undefined ? undefinedTag : nullTag;
		  }
		  return (symToStringTag && symToStringTag in Object(value))
		    ? getRawTag(value)
		    : objectToString(value);
		}

		module.exports = baseGetTag;


	/***/ }),
	/* 31 */
	/***/ (function(module, exports, __webpack_require__) {

		var root = __webpack_require__(32);

		/** Built-in value references. */
		var Symbol = root.Symbol;

		module.exports = Symbol;


	/***/ }),
	/* 32 */
	/***/ (function(module, exports, __webpack_require__) {

		var freeGlobal = __webpack_require__(33);

		/** Detect free variable `self`. */
		var freeSelf = typeof self == 'object' && self && self.Object === Object && self;

		/** Used as a reference to the global object. */
		var root = freeGlobal || freeSelf || Function('return this')();

		module.exports = root;


	/***/ }),
	/* 33 */
	/***/ (function(module, exports) {

		/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
		var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;

		module.exports = freeGlobal;

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))

	/***/ }),
	/* 34 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(31);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Used to resolve the
		 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
		 * of values.
		 */
		var nativeObjectToString = objectProto.toString;

		/** Built-in value references. */
		var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

		/**
		 * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @returns {string} Returns the raw `toStringTag`.
		 */
		function getRawTag(value) {
		  var isOwn = hasOwnProperty.call(value, symToStringTag),
		      tag = value[symToStringTag];

		  try {
		    value[symToStringTag] = undefined;
		    var unmasked = true;
		  } catch (e) {}

		  var result = nativeObjectToString.call(value);
		  if (unmasked) {
		    if (isOwn) {
		      value[symToStringTag] = tag;
		    } else {
		      delete value[symToStringTag];
		    }
		  }
		  return result;
		}

		module.exports = getRawTag;


	/***/ }),
	/* 35 */
	/***/ (function(module, exports) {

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/**
		 * Used to resolve the
		 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
		 * of values.
		 */
		var nativeObjectToString = objectProto.toString;

		/**
		 * Converts `value` to a string using `Object.prototype.toString`.
		 *
		 * @private
		 * @param {*} value The value to convert.
		 * @returns {string} Returns the converted string.
		 */
		function objectToString(value) {
		  return nativeObjectToString.call(value);
		}

		module.exports = objectToString;


	/***/ }),
	/* 36 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is the
		 * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
		 * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an object, else `false`.
		 * @example
		 *
		 * _.isObject({});
		 * // => true
		 *
		 * _.isObject([1, 2, 3]);
		 * // => true
		 *
		 * _.isObject(_.noop);
		 * // => true
		 *
		 * _.isObject(null);
		 * // => false
		 */
		function isObject(value) {
		  var type = typeof value;
		  return value != null && (type == 'object' || type == 'function');
		}

		module.exports = isObject;


	/***/ }),
	/* 37 */
	/***/ (function(module, exports, __webpack_require__) {

		var coreJsData = __webpack_require__(38);

		/** Used to detect methods masquerading as native. */
		var maskSrcKey = (function() {
		  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
		  return uid ? ('Symbol(src)_1.' + uid) : '';
		}());

		/**
		 * Checks if `func` has its source masked.
		 *
		 * @private
		 * @param {Function} func The function to check.
		 * @returns {boolean} Returns `true` if `func` is masked, else `false`.
		 */
		function isMasked(func) {
		  return !!maskSrcKey && (maskSrcKey in func);
		}

		module.exports = isMasked;


	/***/ }),
	/* 38 */
	/***/ (function(module, exports, __webpack_require__) {

		var root = __webpack_require__(32);

		/** Used to detect overreaching core-js shims. */
		var coreJsData = root['__core-js_shared__'];

		module.exports = coreJsData;


	/***/ }),
	/* 39 */
	/***/ (function(module, exports) {

		/** Used for built-in method references. */
		var funcProto = Function.prototype;

		/** Used to resolve the decompiled source of functions. */
		var funcToString = funcProto.toString;

		/**
		 * Converts `func` to its source code.
		 *
		 * @private
		 * @param {Function} func The function to convert.
		 * @returns {string} Returns the source code.
		 */
		function toSource(func) {
		  if (func != null) {
		    try {
		      return funcToString.call(func);
		    } catch (e) {}
		    try {
		      return (func + '');
		    } catch (e) {}
		  }
		  return '';
		}

		module.exports = toSource;


	/***/ }),
	/* 40 */
	/***/ (function(module, exports) {

		/**
		 * Gets the value at `key` of `object`.
		 *
		 * @private
		 * @param {Object} [object] The object to query.
		 * @param {string} key The key of the property to get.
		 * @returns {*} Returns the property value.
		 */
		function getValue(object, key) {
		  return object == null ? undefined : object[key];
		}

		module.exports = getValue;


	/***/ }),
	/* 41 */
	/***/ (function(module, exports) {

		/**
		 * Performs a
		 * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
		 * comparison between two values to determine if they are equivalent.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to compare.
		 * @param {*} other The other value to compare.
		 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
		 * @example
		 *
		 * var object = { 'a': 1 };
		 * var other = { 'a': 1 };
		 *
		 * _.eq(object, object);
		 * // => true
		 *
		 * _.eq(object, other);
		 * // => false
		 *
		 * _.eq('a', 'a');
		 * // => true
		 *
		 * _.eq('a', Object('a'));
		 * // => false
		 *
		 * _.eq(NaN, NaN);
		 * // => true
		 */
		function eq(value, other) {
		  return value === other || (value !== value && other !== other);
		}

		module.exports = eq;


	/***/ }),
	/* 42 */
	/***/ (function(module, exports, __webpack_require__) {

		var assignValue = __webpack_require__(24),
		    baseAssignValue = __webpack_require__(25);

		/**
		 * Copies properties of `source` to `object`.
		 *
		 * @private
		 * @param {Object} source The object to copy properties from.
		 * @param {Array} props The property identifiers to copy.
		 * @param {Object} [object={}] The object to copy properties to.
		 * @param {Function} [customizer] The function to customize copied values.
		 * @returns {Object} Returns `object`.
		 */
		function copyObject(source, props, object, customizer) {
		  var isNew = !object;
		  object || (object = {});

		  var index = -1,
		      length = props.length;

		  while (++index < length) {
		    var key = props[index];

		    var newValue = customizer
		      ? customizer(object[key], source[key], key, object, source)
		      : undefined;

		    if (newValue === undefined) {
		      newValue = source[key];
		    }
		    if (isNew) {
		      baseAssignValue(object, key, newValue);
		    } else {
		      assignValue(object, key, newValue);
		    }
		  }
		  return object;
		}

		module.exports = copyObject;


	/***/ }),
	/* 43 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseRest = __webpack_require__(44),
		    isIterateeCall = __webpack_require__(52);

		/**
		 * Creates a function like `_.assign`.
		 *
		 * @private
		 * @param {Function} assigner The function to assign values.
		 * @returns {Function} Returns the new assigner function.
		 */
		function createAssigner(assigner) {
		  return baseRest(function(object, sources) {
		    var index = -1,
		        length = sources.length,
		        customizer = length > 1 ? sources[length - 1] : undefined,
		        guard = length > 2 ? sources[2] : undefined;

		    customizer = (assigner.length > 3 && typeof customizer == 'function')
		      ? (length--, customizer)
		      : undefined;

		    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
		      customizer = length < 3 ? undefined : customizer;
		      length = 1;
		    }
		    object = Object(object);
		    while (++index < length) {
		      var source = sources[index];
		      if (source) {
		        assigner(object, source, index, customizer);
		      }
		    }
		    return object;
		  });
		}

		module.exports = createAssigner;


	/***/ }),
	/* 44 */
	/***/ (function(module, exports, __webpack_require__) {

		var identity = __webpack_require__(45),
		    overRest = __webpack_require__(46),
		    setToString = __webpack_require__(48);

		/**
		 * The base implementation of `_.rest` which doesn't validate or coerce arguments.
		 *
		 * @private
		 * @param {Function} func The function to apply a rest parameter to.
		 * @param {number} [start=func.length-1] The start position of the rest parameter.
		 * @returns {Function} Returns the new function.
		 */
		function baseRest(func, start) {
		  return setToString(overRest(func, start, identity), func + '');
		}

		module.exports = baseRest;


	/***/ }),
	/* 45 */
	/***/ (function(module, exports) {

		/**
		 * This method returns the first argument it receives.
		 *
		 * @static
		 * @since 0.1.0
		 * @memberOf _
		 * @category Util
		 * @param {*} value Any value.
		 * @returns {*} Returns `value`.
		 * @example
		 *
		 * var object = { 'a': 1 };
		 *
		 * console.log(_.identity(object) === object);
		 * // => true
		 */
		function identity(value) {
		  return value;
		}

		module.exports = identity;


	/***/ }),
	/* 46 */
	/***/ (function(module, exports, __webpack_require__) {

		var apply = __webpack_require__(47);

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeMax = Math.max;

		/**
		 * A specialized version of `baseRest` which transforms the rest array.
		 *
		 * @private
		 * @param {Function} func The function to apply a rest parameter to.
		 * @param {number} [start=func.length-1] The start position of the rest parameter.
		 * @param {Function} transform The rest array transform.
		 * @returns {Function} Returns the new function.
		 */
		function overRest(func, start, transform) {
		  start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
		  return function() {
		    var args = arguments,
		        index = -1,
		        length = nativeMax(args.length - start, 0),
		        array = Array(length);

		    while (++index < length) {
		      array[index] = args[start + index];
		    }
		    index = -1;
		    var otherArgs = Array(start + 1);
		    while (++index < start) {
		      otherArgs[index] = args[index];
		    }
		    otherArgs[start] = transform(array);
		    return apply(func, this, otherArgs);
		  };
		}

		module.exports = overRest;


	/***/ }),
	/* 47 */
	/***/ (function(module, exports) {

		/**
		 * A faster alternative to `Function#apply`, this function invokes `func`
		 * with the `this` binding of `thisArg` and the arguments of `args`.
		 *
		 * @private
		 * @param {Function} func The function to invoke.
		 * @param {*} thisArg The `this` binding of `func`.
		 * @param {Array} args The arguments to invoke `func` with.
		 * @returns {*} Returns the result of `func`.
		 */
		function apply(func, thisArg, args) {
		  switch (args.length) {
		    case 0: return func.call(thisArg);
		    case 1: return func.call(thisArg, args[0]);
		    case 2: return func.call(thisArg, args[0], args[1]);
		    case 3: return func.call(thisArg, args[0], args[1], args[2]);
		  }
		  return func.apply(thisArg, args);
		}

		module.exports = apply;


	/***/ }),
	/* 48 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseSetToString = __webpack_require__(49),
		    shortOut = __webpack_require__(51);

		/**
		 * Sets the `toString` method of `func` to return `string`.
		 *
		 * @private
		 * @param {Function} func The function to modify.
		 * @param {Function} string The `toString` result.
		 * @returns {Function} Returns `func`.
		 */
		var setToString = shortOut(baseSetToString);

		module.exports = setToString;


	/***/ }),
	/* 49 */
	/***/ (function(module, exports, __webpack_require__) {

		var constant = __webpack_require__(50),
		    defineProperty = __webpack_require__(26),
		    identity = __webpack_require__(45);

		/**
		 * The base implementation of `setToString` without support for hot loop shorting.
		 *
		 * @private
		 * @param {Function} func The function to modify.
		 * @param {Function} string The `toString` result.
		 * @returns {Function} Returns `func`.
		 */
		var baseSetToString = !defineProperty ? identity : function(func, string) {
		  return defineProperty(func, 'toString', {
		    'configurable': true,
		    'enumerable': false,
		    'value': constant(string),
		    'writable': true
		  });
		};

		module.exports = baseSetToString;


	/***/ }),
	/* 50 */
	/***/ (function(module, exports) {

		/**
		 * Creates a function that returns `value`.
		 *
		 * @static
		 * @memberOf _
		 * @since 2.4.0
		 * @category Util
		 * @param {*} value The value to return from the new function.
		 * @returns {Function} Returns the new constant function.
		 * @example
		 *
		 * var objects = _.times(2, _.constant({ 'a': 1 }));
		 *
		 * console.log(objects);
		 * // => [{ 'a': 1 }, { 'a': 1 }]
		 *
		 * console.log(objects[0] === objects[1]);
		 * // => true
		 */
		function constant(value) {
		  return function() {
		    return value;
		  };
		}

		module.exports = constant;


	/***/ }),
	/* 51 */
	/***/ (function(module, exports) {

		/** Used to detect hot functions by number of calls within a span of milliseconds. */
		var HOT_COUNT = 800,
		    HOT_SPAN = 16;

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeNow = Date.now;

		/**
		 * Creates a function that'll short out and invoke `identity` instead
		 * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
		 * milliseconds.
		 *
		 * @private
		 * @param {Function} func The function to restrict.
		 * @returns {Function} Returns the new shortable function.
		 */
		function shortOut(func) {
		  var count = 0,
		      lastCalled = 0;

		  return function() {
		    var stamp = nativeNow(),
		        remaining = HOT_SPAN - (stamp - lastCalled);

		    lastCalled = stamp;
		    if (remaining > 0) {
		      if (++count >= HOT_COUNT) {
		        return arguments[0];
		      }
		    } else {
		      count = 0;
		    }
		    return func.apply(undefined, arguments);
		  };
		}

		module.exports = shortOut;


	/***/ }),
	/* 52 */
	/***/ (function(module, exports, __webpack_require__) {

		var eq = __webpack_require__(41),
		    isArrayLike = __webpack_require__(53),
		    isIndex = __webpack_require__(55),
		    isObject = __webpack_require__(36);

		/**
		 * Checks if the given arguments are from an iteratee call.
		 *
		 * @private
		 * @param {*} value The potential iteratee value argument.
		 * @param {*} index The potential iteratee index or key argument.
		 * @param {*} object The potential iteratee object argument.
		 * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
		 *  else `false`.
		 */
		function isIterateeCall(value, index, object) {
		  if (!isObject(object)) {
		    return false;
		  }
		  var type = typeof index;
		  if (type == 'number'
		        ? (isArrayLike(object) && isIndex(index, object.length))
		        : (type == 'string' && index in object)
		      ) {
		    return eq(object[index], value);
		  }
		  return false;
		}

		module.exports = isIterateeCall;


	/***/ }),
	/* 53 */
	/***/ (function(module, exports, __webpack_require__) {

		var isFunction = __webpack_require__(29),
		    isLength = __webpack_require__(54);

		/**
		 * Checks if `value` is array-like. A value is considered array-like if it's
		 * not a function and has a `value.length` that's an integer greater than or
		 * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
		 * @example
		 *
		 * _.isArrayLike([1, 2, 3]);
		 * // => true
		 *
		 * _.isArrayLike(document.body.children);
		 * // => true
		 *
		 * _.isArrayLike('abc');
		 * // => true
		 *
		 * _.isArrayLike(_.noop);
		 * // => false
		 */
		function isArrayLike(value) {
		  return value != null && isLength(value.length) && !isFunction(value);
		}

		module.exports = isArrayLike;


	/***/ }),
	/* 54 */
	/***/ (function(module, exports) {

		/** Used as references for various `Number` constants. */
		var MAX_SAFE_INTEGER = 9007199254740991;

		/**
		 * Checks if `value` is a valid array-like length.
		 *
		 * **Note:** This method is loosely based on
		 * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
		 * @example
		 *
		 * _.isLength(3);
		 * // => true
		 *
		 * _.isLength(Number.MIN_VALUE);
		 * // => false
		 *
		 * _.isLength(Infinity);
		 * // => false
		 *
		 * _.isLength('3');
		 * // => false
		 */
		function isLength(value) {
		  return typeof value == 'number' &&
		    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
		}

		module.exports = isLength;


	/***/ }),
	/* 55 */
	/***/ (function(module, exports) {

		/** Used as references for various `Number` constants. */
		var MAX_SAFE_INTEGER = 9007199254740991;

		/** Used to detect unsigned integer values. */
		var reIsUint = /^(?:0|[1-9]\d*)$/;

		/**
		 * Checks if `value` is a valid array-like index.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
		 * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
		 */
		function isIndex(value, length) {
		  length = length == null ? MAX_SAFE_INTEGER : length;
		  return !!length &&
		    (typeof value == 'number' || reIsUint.test(value)) &&
		    (value > -1 && value % 1 == 0 && value < length);
		}

		module.exports = isIndex;


	/***/ }),
	/* 56 */
	/***/ (function(module, exports) {

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/**
		 * Checks if `value` is likely a prototype object.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
		 */
		function isPrototype(value) {
		  var Ctor = value && value.constructor,
		      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;

		  return value === proto;
		}

		module.exports = isPrototype;


	/***/ }),
	/* 57 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayLikeKeys = __webpack_require__(58),
		    baseKeys = __webpack_require__(71),
		    isArrayLike = __webpack_require__(53);

		/**
		 * Creates an array of the own enumerable property names of `object`.
		 *
		 * **Note:** Non-object values are coerced to objects. See the
		 * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
		 * for more details.
		 *
		 * @static
		 * @since 0.1.0
		 * @memberOf _
		 * @category Object
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of property names.
		 * @example
		 *
		 * function Foo() {
		 *   this.a = 1;
		 *   this.b = 2;
		 * }
		 *
		 * Foo.prototype.c = 3;
		 *
		 * _.keys(new Foo);
		 * // => ['a', 'b'] (iteration order is not guaranteed)
		 *
		 * _.keys('hi');
		 * // => ['0', '1']
		 */
		function keys(object) {
		  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
		}

		module.exports = keys;


	/***/ }),
	/* 58 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseTimes = __webpack_require__(59),
		    isArguments = __webpack_require__(60),
		    isArray = __webpack_require__(63),
		    isBuffer = __webpack_require__(64),
		    isIndex = __webpack_require__(55),
		    isTypedArray = __webpack_require__(67);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Creates an array of the enumerable property names of the array-like `value`.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @param {boolean} inherited Specify returning inherited property names.
		 * @returns {Array} Returns the array of property names.
		 */
		function arrayLikeKeys(value, inherited) {
		  var isArr = isArray(value),
		      isArg = !isArr && isArguments(value),
		      isBuff = !isArr && !isArg && isBuffer(value),
		      isType = !isArr && !isArg && !isBuff && isTypedArray(value),
		      skipIndexes = isArr || isArg || isBuff || isType,
		      result = skipIndexes ? baseTimes(value.length, String) : [],
		      length = result.length;

		  for (var key in value) {
		    if ((inherited || hasOwnProperty.call(value, key)) &&
		        !(skipIndexes && (
		           // Safari 9 has enumerable `arguments.length` in strict mode.
		           key == 'length' ||
		           // Node.js 0.10 has enumerable non-index properties on buffers.
		           (isBuff && (key == 'offset' || key == 'parent')) ||
		           // PhantomJS 2 has enumerable non-index properties on typed arrays.
		           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
		           // Skip index properties.
		           isIndex(key, length)
		        ))) {
		      result.push(key);
		    }
		  }
		  return result;
		}

		module.exports = arrayLikeKeys;


	/***/ }),
	/* 59 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.times` without support for iteratee shorthands
		 * or max array length checks.
		 *
		 * @private
		 * @param {number} n The number of times to invoke `iteratee`.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Array} Returns the array of results.
		 */
		function baseTimes(n, iteratee) {
		  var index = -1,
		      result = Array(n);

		  while (++index < n) {
		    result[index] = iteratee(index);
		  }
		  return result;
		}

		module.exports = baseTimes;


	/***/ }),
	/* 60 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsArguments = __webpack_require__(61),
		    isObjectLike = __webpack_require__(62);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/** Built-in value references. */
		var propertyIsEnumerable = objectProto.propertyIsEnumerable;

		/**
		 * Checks if `value` is likely an `arguments` object.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
		 *  else `false`.
		 * @example
		 *
		 * _.isArguments(function() { return arguments; }());
		 * // => true
		 *
		 * _.isArguments([1, 2, 3]);
		 * // => false
		 */
		var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
		  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
		    !propertyIsEnumerable.call(value, 'callee');
		};

		module.exports = isArguments;


	/***/ }),
	/* 61 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(30),
		    isObjectLike = __webpack_require__(62);

		/** `Object#toString` result references. */
		var argsTag = '[object Arguments]';

		/**
		 * The base implementation of `_.isArguments`.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
		 */
		function baseIsArguments(value) {
		  return isObjectLike(value) && baseGetTag(value) == argsTag;
		}

		module.exports = baseIsArguments;


	/***/ }),
	/* 62 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is object-like. A value is object-like if it's not `null`
		 * and has a `typeof` result of "object".
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
		 * @example
		 *
		 * _.isObjectLike({});
		 * // => true
		 *
		 * _.isObjectLike([1, 2, 3]);
		 * // => true
		 *
		 * _.isObjectLike(_.noop);
		 * // => false
		 *
		 * _.isObjectLike(null);
		 * // => false
		 */
		function isObjectLike(value) {
		  return value != null && typeof value == 'object';
		}

		module.exports = isObjectLike;


	/***/ }),
	/* 63 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is classified as an `Array` object.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an array, else `false`.
		 * @example
		 *
		 * _.isArray([1, 2, 3]);
		 * // => true
		 *
		 * _.isArray(document.body.children);
		 * // => false
		 *
		 * _.isArray('abc');
		 * // => false
		 *
		 * _.isArray(_.noop);
		 * // => false
		 */
		var isArray = Array.isArray;

		module.exports = isArray;


	/***/ }),
	/* 64 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(32),
		    stubFalse = __webpack_require__(66);

		/** Detect free variable `exports`. */
		var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;

		/** Detect free variable `module`. */
		var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

		/** Detect the popular CommonJS extension `module.exports`. */
		var moduleExports = freeModule && freeModule.exports === freeExports;

		/** Built-in value references. */
		var Buffer = moduleExports ? root.Buffer : undefined;

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;

		/**
		 * Checks if `value` is a buffer.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.3.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
		 * @example
		 *
		 * _.isBuffer(new Buffer(2));
		 * // => true
		 *
		 * _.isBuffer(new Uint8Array(2));
		 * // => false
		 */
		var isBuffer = nativeIsBuffer || stubFalse;

		module.exports = isBuffer;

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(65)(module)))

	/***/ }),
	/* 65 */
	/***/ (function(module, exports) {

		module.exports = function(module) {
			if(!module.webpackPolyfill) {
				module.deprecate = function() {};
				module.paths = [];
				// module.parent = undefined by default
				module.children = [];
				module.webpackPolyfill = 1;
			}
			return module;
		}


	/***/ }),
	/* 66 */
	/***/ (function(module, exports) {

		/**
		 * This method returns `false`.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.13.0
		 * @category Util
		 * @returns {boolean} Returns `false`.
		 * @example
		 *
		 * _.times(2, _.stubFalse);
		 * // => [false, false]
		 */
		function stubFalse() {
		  return false;
		}

		module.exports = stubFalse;


	/***/ }),
	/* 67 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsTypedArray = __webpack_require__(68),
		    baseUnary = __webpack_require__(69),
		    nodeUtil = __webpack_require__(70);

		/* Node.js helper references. */
		var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;

		/**
		 * Checks if `value` is classified as a typed array.
		 *
		 * @static
		 * @memberOf _
		 * @since 3.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
		 * @example
		 *
		 * _.isTypedArray(new Uint8Array);
		 * // => true
		 *
		 * _.isTypedArray([]);
		 * // => false
		 */
		var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;

		module.exports = isTypedArray;


	/***/ }),
	/* 68 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(30),
		    isLength = __webpack_require__(54),
		    isObjectLike = __webpack_require__(62);

		/** `Object#toString` result references. */
		var argsTag = '[object Arguments]',
		    arrayTag = '[object Array]',
		    boolTag = '[object Boolean]',
		    dateTag = '[object Date]',
		    errorTag = '[object Error]',
		    funcTag = '[object Function]',
		    mapTag = '[object Map]',
		    numberTag = '[object Number]',
		    objectTag = '[object Object]',
		    regexpTag = '[object RegExp]',
		    setTag = '[object Set]',
		    stringTag = '[object String]',
		    weakMapTag = '[object WeakMap]';

		var arrayBufferTag = '[object ArrayBuffer]',
		    dataViewTag = '[object DataView]',
		    float32Tag = '[object Float32Array]',
		    float64Tag = '[object Float64Array]',
		    int8Tag = '[object Int8Array]',
		    int16Tag = '[object Int16Array]',
		    int32Tag = '[object Int32Array]',
		    uint8Tag = '[object Uint8Array]',
		    uint8ClampedTag = '[object Uint8ClampedArray]',
		    uint16Tag = '[object Uint16Array]',
		    uint32Tag = '[object Uint32Array]';

		/** Used to identify `toStringTag` values of typed arrays. */
		var typedArrayTags = {};
		typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
		typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
		typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
		typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
		typedArrayTags[uint32Tag] = true;
		typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
		typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
		typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
		typedArrayTags[errorTag] = typedArrayTags[funcTag] =
		typedArrayTags[mapTag] = typedArrayTags[numberTag] =
		typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
		typedArrayTags[setTag] = typedArrayTags[stringTag] =
		typedArrayTags[weakMapTag] = false;

		/**
		 * The base implementation of `_.isTypedArray` without Node.js optimizations.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
		 */
		function baseIsTypedArray(value) {
		  return isObjectLike(value) &&
		    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
		}

		module.exports = baseIsTypedArray;


	/***/ }),
	/* 69 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.unary` without support for storing metadata.
		 *
		 * @private
		 * @param {Function} func The function to cap arguments for.
		 * @returns {Function} Returns the new capped function.
		 */
		function baseUnary(func) {
		  return function(value) {
		    return func(value);
		  };
		}

		module.exports = baseUnary;


	/***/ }),
	/* 70 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__(33);

		/** Detect free variable `exports`. */
		var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;

		/** Detect free variable `module`. */
		var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

		/** Detect the popular CommonJS extension `module.exports`. */
		var moduleExports = freeModule && freeModule.exports === freeExports;

		/** Detect free variable `process` from Node.js. */
		var freeProcess = moduleExports && freeGlobal.process;

		/** Used to access faster Node.js helpers. */
		var nodeUtil = (function() {
		  try {
		    return freeProcess && freeProcess.binding && freeProcess.binding('util');
		  } catch (e) {}
		}());

		module.exports = nodeUtil;

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(65)(module)))

	/***/ }),
	/* 71 */
	/***/ (function(module, exports, __webpack_require__) {

		var isPrototype = __webpack_require__(56),
		    nativeKeys = __webpack_require__(72);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of property names.
		 */
		function baseKeys(object) {
		  if (!isPrototype(object)) {
		    return nativeKeys(object);
		  }
		  var result = [];
		  for (var key in Object(object)) {
		    if (hasOwnProperty.call(object, key) && key != 'constructor') {
		      result.push(key);
		    }
		  }
		  return result;
		}

		module.exports = baseKeys;


	/***/ }),
	/* 72 */
	/***/ (function(module, exports, __webpack_require__) {

		var overArg = __webpack_require__(73);

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeKeys = overArg(Object.keys, Object);

		module.exports = nativeKeys;


	/***/ }),
	/* 73 */
	/***/ (function(module, exports) {

		/**
		 * Creates a unary function that invokes `func` with its argument transformed.
		 *
		 * @private
		 * @param {Function} func The function to wrap.
		 * @param {Function} transform The argument transform.
		 * @returns {Function} Returns the new function.
		 */
		function overArg(func, transform) {
		  return function(arg) {
		    return func(transform(arg));
		  };
		}

		module.exports = overArg;


	/***/ }),
	/* 74 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLBuilder, XMLDeclaration, XMLDocType, XMLElement, XMLStringifier;

		  XMLStringifier = __webpack_require__(75);

		  XMLDeclaration = __webpack_require__(76);

		  XMLDocType = __webpack_require__(173);

		  XMLElement = __webpack_require__(88);

		  module.exports = XMLBuilder = (function() {
		    function XMLBuilder(name, options) {
		      var root, temp;
		      if (name == null) {
		        throw new Error("Root element needs a name");
		      }
		      if (options == null) {
		        options = {};
		      }
		      this.options = options;
		      this.stringify = new XMLStringifier(options);
		      temp = new XMLElement(this, 'doc');
		      root = temp.element(name);
		      root.isRoot = true;
		      root.documentObject = this;
		      this.rootObject = root;
		      if (!options.headless) {
		        root.declaration(options);
		        if ((options.pubID != null) || (options.sysID != null)) {
		          root.doctype(options);
		        }
		      }
		    }

		    XMLBuilder.prototype.root = function() {
		      return this.rootObject;
		    };

		    XMLBuilder.prototype.end = function(options) {
		      return this.toString(options);
		    };

		    XMLBuilder.prototype.toString = function(options) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      r = '';
		      if (this.xmldec != null) {
		        r += this.xmldec.toString(options);
		      }
		      if (this.doctype != null) {
		        r += this.doctype.toString(options);
		      }
		      r += this.rootObject.toString(options);
		      if (pretty && r.slice(-newline.length) === newline) {
		        r = r.slice(0, -newline.length);
		      }
		      return r;
		    };

		    return XMLBuilder;

		  })();

		}).call(this);


	/***/ }),
	/* 75 */
	/***/ (function(module, exports) {

		// Generated by CoffeeScript 1.9.1
		(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;
		      this.allowSurrogateChars = options != null ? options.allowSurrogateChars : void 0;
		      this.noDoubleEncoding = options != null ? options.noDoubleEncoding : void 0;
		      ref = (options != null ? options.stringify : void 0) || {};
		      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 || '';
		      if (val.match(/]]>/)) {
		        throw new Error("Invalid CDATA text: " + val);
		      }
		      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 || '';
		    };

		    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 chars, chr;
		      if (this.allowSurrogateChars) {
		        chars = /[\u0000-\u0008\u000B-\u000C\u000E-\u001F\uFFFE-\uFFFF]/;
		      } else {
		        chars = /[\u0000-\u0008\u000B-\u000C\u000E-\u001F\uD800-\uDFFF\uFFFE-\uFFFF]/;
		      }
		      chr = str.match(chars);
		      if (chr) {
		        throw new Error("Invalid character (" + chr + ") in string: " + str + " at index " + chr.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;');
		    };

		    return XMLStringifier;

		  })();

		}).call(this);


	/***/ }),
	/* 76 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDeclaration, XMLNode, create, 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;

		  create = __webpack_require__(77);

		  isObject = __webpack_require__(36);

		  XMLNode = __webpack_require__(80);

		  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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<?xml';
		      r += ' version="' + this.version + '"';
		      if (this.encoding != null) {
		        r += ' encoding="' + this.encoding + '"';
		      }
		      if (this.standalone != null) {
		        r += ' standalone="' + this.standalone + '"';
		      }
		      r += '?>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDeclaration;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 77 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseAssign = __webpack_require__(78),
		    baseCreate = __webpack_require__(79);

		/**
		 * Creates an object that inherits from the `prototype` object. If a
		 * `properties` object is given, its own enumerable string keyed properties
		 * are assigned to the created object.
		 *
		 * @static
		 * @memberOf _
		 * @since 2.3.0
		 * @category Object
		 * @param {Object} prototype The object to inherit from.
		 * @param {Object} [properties] The properties to assign to the object.
		 * @returns {Object} Returns the new object.
		 * @example
		 *
		 * function Shape() {
		 *   this.x = 0;
		 *   this.y = 0;
		 * }
		 *
		 * function Circle() {
		 *   Shape.call(this);
		 * }
		 *
		 * Circle.prototype = _.create(Shape.prototype, {
		 *   'constructor': Circle
		 * });
		 *
		 * var circle = new Circle;
		 * circle instanceof Circle;
		 * // => true
		 *
		 * circle instanceof Shape;
		 * // => true
		 */
		function create(prototype, properties) {
		  var result = baseCreate(prototype);
		  return properties == null ? result : baseAssign(result, properties);
		}

		module.exports = create;


	/***/ }),
	/* 78 */
	/***/ (function(module, exports, __webpack_require__) {

		var copyObject = __webpack_require__(42),
		    keys = __webpack_require__(57);

		/**
		 * The base implementation of `_.assign` without support for multiple sources
		 * or `customizer` functions.
		 *
		 * @private
		 * @param {Object} object The destination object.
		 * @param {Object} source The source object.
		 * @returns {Object} Returns `object`.
		 */
		function baseAssign(object, source) {
		  return object && copyObject(source, keys(source), object);
		}

		module.exports = baseAssign;


	/***/ }),
	/* 79 */
	/***/ (function(module, exports, __webpack_require__) {

		var isObject = __webpack_require__(36);

		/** Built-in value references. */
		var objectCreate = Object.create;

		/**
		 * The base implementation of `_.create` without support for assigning
		 * properties to the created object.
		 *
		 * @private
		 * @param {Object} proto The object to inherit from.
		 * @returns {Object} Returns the new object.
		 */
		var baseCreate = (function() {
		  function object() {}
		  return function(proto) {
		    if (!isObject(proto)) {
		      return {};
		    }
		    if (objectCreate) {
		      return objectCreate(proto);
		    }
		    object.prototype = proto;
		    var result = new object;
		    object.prototype = undefined;
		    return result;
		  };
		}());

		module.exports = baseCreate;


	/***/ }),
	/* 80 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLElement, XMLNode, XMLRaw, XMLText, isEmpty, isFunction, isObject,
		    hasProp = {}.hasOwnProperty;

		  isObject = __webpack_require__(36);

		  isFunction = __webpack_require__(29);

		  isEmpty = __webpack_require__(81);

		  XMLElement = null;

		  XMLCData = null;

		  XMLComment = null;

		  XMLDeclaration = null;

		  XMLDocType = null;

		  XMLRaw = null;

		  XMLText = null;

		  module.exports = XMLNode = (function() {
		    function XMLNode(parent) {
		      this.parent = parent;
		      this.options = this.parent.options;
		      this.stringify = this.parent.stringify;
		      if (XMLElement === null) {
		        XMLElement = __webpack_require__(88);
		        XMLCData = __webpack_require__(171);
		        XMLComment = __webpack_require__(172);
		        XMLDeclaration = __webpack_require__(76);
		        XMLDocType = __webpack_require__(173);
		        XMLRaw = __webpack_require__(178);
		        XMLText = __webpack_require__(179);
		      }
		    }

		    XMLNode.prototype.element = function(name, attributes, text) {
		      var childNode, item, j, k, key, lastChild, len, len1, ref, val;
		      lastChild = null;
		      if (attributes == null) {
		        attributes = {};
		      }
		      attributes = attributes.valueOf();
		      if (!isObject(attributes)) {
		        ref = [attributes, text], text = ref[0], attributes = ref[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.ignoreDecorators && this.stringify.convertPIKey && key.indexOf(this.stringify.convertPIKey) === 0) {
		            lastChild = this.instruction(key.substr(this.stringify.convertPIKey.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 {
		          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, ref;
		      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(ref = [])), ref;
		      return this.parent;
		    };

		    XMLNode.prototype.node = function(name, attributes, text) {
		      var child, ref;
		      if (name != null) {
		        name = name.valueOf();
		      }
		      if (attributes == null) {
		        attributes = {};
		      }
		      attributes = attributes.valueOf();
		      if (!isObject(attributes)) {
		        ref = [attributes, text], text = ref[0], attributes = ref[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.raw = function(value) {
		      var child;
		      child = new XMLRaw(this, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLNode.prototype.declaration = function(version, encoding, standalone) {
		      var doc, xmldec;
		      doc = this.document();
		      xmldec = new XMLDeclaration(doc, version, encoding, standalone);
		      doc.xmldec = xmldec;
		      return doc.root();
		    };

		    XMLNode.prototype.doctype = function(pubID, sysID) {
		      var doc, doctype;
		      doc = this.document();
		      doctype = new XMLDocType(doc, pubID, sysID);
		      doc.doctype = 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 child;
		      if (this.isRoot) {
		        return this;
		      }
		      child = this.parent;
		      while (!child.isRoot) {
		        child = child.parent;
		      }
		      return child;
		    };

		    XMLNode.prototype.document = function() {
		      return this.root().documentObject;
		    };

		    XMLNode.prototype.end = function(options) {
		      return this.document().toString(options);
		    };

		    XMLNode.prototype.prev = function() {
		      var i;
		      if (this.isRoot) {
		        throw new Error("Root node has no siblings");
		      }
		      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;
		      if (this.isRoot) {
		        throw new Error("Root node has no siblings");
		      }
		      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.importXMLBuilder = function(xmlbuilder) {
		      var clonedRoot;
		      clonedRoot = xmlbuilder.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.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.u = function() {
		      return this.up();
		    };

		    return XMLNode;

		  })();

		}).call(this);


	/***/ }),
	/* 81 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseKeys = __webpack_require__(71),
		    getTag = __webpack_require__(82),
		    isArguments = __webpack_require__(60),
		    isArray = __webpack_require__(63),
		    isArrayLike = __webpack_require__(53),
		    isBuffer = __webpack_require__(64),
		    isPrototype = __webpack_require__(56),
		    isTypedArray = __webpack_require__(67);

		/** `Object#toString` result references. */
		var mapTag = '[object Map]',
		    setTag = '[object Set]';

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Checks if `value` is an empty object, collection, map, or set.
		 *
		 * Objects are considered empty if they have no own enumerable string keyed
		 * properties.
		 *
		 * Array-like values such as `arguments` objects, arrays, buffers, strings, or
		 * jQuery-like collections are considered empty if they have a `length` of `0`.
		 * Similarly, maps and sets are considered empty if they have a `size` of `0`.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is empty, else `false`.
		 * @example
		 *
		 * _.isEmpty(null);
		 * // => true
		 *
		 * _.isEmpty(true);
		 * // => true
		 *
		 * _.isEmpty(1);
		 * // => true
		 *
		 * _.isEmpty([1, 2, 3]);
		 * // => false
		 *
		 * _.isEmpty({ 'a': 1 });
		 * // => false
		 */
		function isEmpty(value) {
		  if (value == null) {
		    return true;
		  }
		  if (isArrayLike(value) &&
		      (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||
		        isBuffer(value) || isTypedArray(value) || isArguments(value))) {
		    return !value.length;
		  }
		  var tag = getTag(value);
		  if (tag == mapTag || tag == setTag) {
		    return !value.size;
		  }
		  if (isPrototype(value)) {
		    return !baseKeys(value).length;
		  }
		  for (var key in value) {
		    if (hasOwnProperty.call(value, key)) {
		      return false;
		    }
		  }
		  return true;
		}

		module.exports = isEmpty;


	/***/ }),
	/* 82 */
	/***/ (function(module, exports, __webpack_require__) {

		var DataView = __webpack_require__(83),
		    Map = __webpack_require__(84),
		    Promise = __webpack_require__(85),
		    Set = __webpack_require__(86),
		    WeakMap = __webpack_require__(87),
		    baseGetTag = __webpack_require__(30),
		    toSource = __webpack_require__(39);

		/** `Object#toString` result references. */
		var mapTag = '[object Map]',
		    objectTag = '[object Object]',
		    promiseTag = '[object Promise]',
		    setTag = '[object Set]',
		    weakMapTag = '[object WeakMap]';

		var dataViewTag = '[object DataView]';

		/** Used to detect maps, sets, and weakmaps. */
		var dataViewCtorString = toSource(DataView),
		    mapCtorString = toSource(Map),
		    promiseCtorString = toSource(Promise),
		    setCtorString = toSource(Set),
		    weakMapCtorString = toSource(WeakMap);

		/**
		 * Gets the `toStringTag` of `value`.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @returns {string} Returns the `toStringTag`.
		 */
		var getTag = baseGetTag;

		// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
		if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
		    (Map && getTag(new Map) != mapTag) ||
		    (Promise && getTag(Promise.resolve()) != promiseTag) ||
		    (Set && getTag(new Set) != setTag) ||
		    (WeakMap && getTag(new WeakMap) != weakMapTag)) {
		  getTag = function(value) {
		    var result = baseGetTag(value),
		        Ctor = result == objectTag ? value.constructor : undefined,
		        ctorString = Ctor ? toSource(Ctor) : '';

		    if (ctorString) {
		      switch (ctorString) {
		        case dataViewCtorString: return dataViewTag;
		        case mapCtorString: return mapTag;
		        case promiseCtorString: return promiseTag;
		        case setCtorString: return setTag;
		        case weakMapCtorString: return weakMapTag;
		      }
		    }
		    return result;
		  };
		}

		module.exports = getTag;


	/***/ }),
	/* 83 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27),
		    root = __webpack_require__(32);

		/* Built-in method references that are verified to be native. */
		var DataView = getNative(root, 'DataView');

		module.exports = DataView;


	/***/ }),
	/* 84 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27),
		    root = __webpack_require__(32);

		/* Built-in method references that are verified to be native. */
		var Map = getNative(root, 'Map');

		module.exports = Map;


	/***/ }),
	/* 85 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27),
		    root = __webpack_require__(32);

		/* Built-in method references that are verified to be native. */
		var Promise = getNative(root, 'Promise');

		module.exports = Promise;


	/***/ }),
	/* 86 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27),
		    root = __webpack_require__(32);

		/* Built-in method references that are verified to be native. */
		var Set = getNative(root, 'Set');

		module.exports = Set;


	/***/ }),
	/* 87 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27),
		    root = __webpack_require__(32);

		/* Built-in method references that are verified to be native. */
		var WeakMap = getNative(root, 'WeakMap');

		module.exports = WeakMap;


	/***/ }),
	/* 88 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLAttribute, XMLElement, XMLNode, XMLProcessingInstruction, create, every, isFunction, 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;

		  create = __webpack_require__(77);

		  isObject = __webpack_require__(36);

		  isFunction = __webpack_require__(29);

		  every = __webpack_require__(89);

		  XMLNode = __webpack_require__(80);

		  XMLAttribute = __webpack_require__(169);

		  XMLProcessingInstruction = __webpack_require__(170);

		  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.children = [];
		      this.instructions = [];
		      this.attributes = {};
		      if (attributes != null) {
		        this.attribute(attributes);
		      }
		    }

		    XMLElement.prototype.clone = function() {
		      var att, attName, clonedSelf, i, len, pi, ref, ref1;
		      clonedSelf = create(XMLElement.prototype, this);
		      if (clonedSelf.isRoot) {
		        clonedSelf.documentObject = null;
		      }
		      clonedSelf.attributes = {};
		      ref = this.attributes;
		      for (attName in ref) {
		        if (!hasProp.call(ref, attName)) continue;
		        att = ref[attName];
		        clonedSelf.attributes[attName] = att.clone();
		      }
		      clonedSelf.instructions = [];
		      ref1 = this.instructions;
		      for (i = 0, len = ref1.length; i < len; i++) {
		        pi = ref1[i];
		        clonedSelf.instructions.push(pi.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.instruction = function(target, value) {
		      var i, insTarget, insValue, instruction, len;
		      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();
		        }
		        instruction = new XMLProcessingInstruction(this, target, value);
		        this.instructions.push(instruction);
		      }
		      return this;
		    };

		    XMLElement.prototype.toString = function(options, level) {
		      var att, child, i, indent, instruction, j, len, len1, name, newline, offset, pretty, r, ref, ref1, ref2, ref3, ref4, ref5, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      ref3 = this.instructions;
		      for (i = 0, len = ref3.length; i < len; i++) {
		        instruction = ref3[i];
		        r += instruction.toString(options, level);
		      }
		      if (pretty) {
		        r += space;
		      }
		      r += '<' + this.name;
		      ref4 = this.attributes;
		      for (name in ref4) {
		        if (!hasProp.call(ref4, name)) continue;
		        att = ref4[name];
		        r += att.toString(options);
		      }
		      if (this.children.length === 0 || every(this.children, function(e) {
		        return e.value === '';
		      })) {
		        r += '/>';
		        if (pretty) {
		          r += newline;
		        }
		      } else if (pretty && this.children.length === 1 && (this.children[0].value != null)) {
		        r += '>';
		        r += this.children[0].value;
		        r += '</' + this.name + '>';
		        r += newline;
		      } else {
		        r += '>';
		        if (pretty) {
		          r += newline;
		        }
		        ref5 = this.children;
		        for (j = 0, len1 = ref5.length; j < len1; j++) {
		          child = ref5[j];
		          r += child.toString(options, level + 1);
		        }
		        if (pretty) {
		          r += space;
		        }
		        r += '</' + this.name + '>';
		        if (pretty) {
		          r += newline;
		        }
		      }
		      return r;
		    };

		    XMLElement.prototype.att = function(name, value) {
		      return this.attribute(name, value);
		    };

		    XMLElement.prototype.ins = function(target, value) {
		      return this.instruction(target, value);
		    };

		    XMLElement.prototype.a = function(name, value) {
		      return this.attribute(name, value);
		    };

		    XMLElement.prototype.i = function(target, value) {
		      return this.instruction(target, value);
		    };

		    return XMLElement;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 89 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayEvery = __webpack_require__(90),
		    baseEvery = __webpack_require__(91),
		    baseIteratee = __webpack_require__(97),
		    isArray = __webpack_require__(63),
		    isIterateeCall = __webpack_require__(52);

		/**
		 * Checks if `predicate` returns truthy for **all** elements of `collection`.
		 * Iteration is stopped once `predicate` returns falsey. The predicate is
		 * invoked with three arguments: (value, index|key, collection).
		 *
		 * **Note:** This method returns `true` for
		 * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because
		 * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of
		 * elements of empty collections.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Collection
		 * @param {Array|Object} collection The collection to iterate over.
		 * @param {Function} [predicate=_.identity] The function invoked per iteration.
		 * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
		 * @returns {boolean} Returns `true` if all elements pass the predicate check,
		 *  else `false`.
		 * @example
		 *
		 * _.every([true, 1, null, 'yes'], Boolean);
		 * // => false
		 *
		 * var users = [
		 *   { 'user': 'barney', 'age': 36, 'active': false },
		 *   { 'user': 'fred',   'age': 40, 'active': false }
		 * ];
		 *
		 * // The `_.matches` iteratee shorthand.
		 * _.every(users, { 'user': 'barney', 'active': false });
		 * // => false
		 *
		 * // The `_.matchesProperty` iteratee shorthand.
		 * _.every(users, ['active', false]);
		 * // => true
		 *
		 * // The `_.property` iteratee shorthand.
		 * _.every(users, 'active');
		 * // => false
		 */
		function every(collection, predicate, guard) {
		  var func = isArray(collection) ? arrayEvery : baseEvery;
		  if (guard && isIterateeCall(collection, predicate, guard)) {
		    predicate = undefined;
		  }
		  return func(collection, baseIteratee(predicate, 3));
		}

		module.exports = every;


	/***/ }),
	/* 90 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.every` for arrays without support for
		 * iteratee shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {boolean} Returns `true` if all elements pass the predicate check,
		 *  else `false`.
		 */
		function arrayEvery(array, predicate) {
		  var index = -1,
		      length = array == null ? 0 : array.length;

		  while (++index < length) {
		    if (!predicate(array[index], index, array)) {
		      return false;
		    }
		  }
		  return true;
		}

		module.exports = arrayEvery;


	/***/ }),
	/* 91 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseEach = __webpack_require__(92);

		/**
		 * The base implementation of `_.every` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Array|Object} collection The collection to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {boolean} Returns `true` if all elements pass the predicate check,
		 *  else `false`
		 */
		function baseEvery(collection, predicate) {
		  var result = true;
		  baseEach(collection, function(value, index, collection) {
		    result = !!predicate(value, index, collection);
		    return result;
		  });
		  return result;
		}

		module.exports = baseEvery;


	/***/ }),
	/* 92 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseForOwn = __webpack_require__(93),
		    createBaseEach = __webpack_require__(96);

		/**
		 * The base implementation of `_.forEach` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Array|Object} collection The collection to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Array|Object} Returns `collection`.
		 */
		var baseEach = createBaseEach(baseForOwn);

		module.exports = baseEach;


	/***/ }),
	/* 93 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseFor = __webpack_require__(94),
		    keys = __webpack_require__(57);

		/**
		 * The base implementation of `_.forOwn` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Object} object The object to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Object} Returns `object`.
		 */
		function baseForOwn(object, iteratee) {
		  return object && baseFor(object, iteratee, keys);
		}

		module.exports = baseForOwn;


	/***/ }),
	/* 94 */
	/***/ (function(module, exports, __webpack_require__) {

		var createBaseFor = __webpack_require__(95);

		/**
		 * The base implementation of `baseForOwn` which iterates over `object`
		 * properties returned by `keysFunc` and invokes `iteratee` for each property.
		 * Iteratee functions may exit iteration early by explicitly returning `false`.
		 *
		 * @private
		 * @param {Object} object The object to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @param {Function} keysFunc The function to get the keys of `object`.
		 * @returns {Object} Returns `object`.
		 */
		var baseFor = createBaseFor();

		module.exports = baseFor;


	/***/ }),
	/* 95 */
	/***/ (function(module, exports) {

		/**
		 * Creates a base function for methods like `_.forIn` and `_.forOwn`.
		 *
		 * @private
		 * @param {boolean} [fromRight] Specify iterating from right to left.
		 * @returns {Function} Returns the new base function.
		 */
		function createBaseFor(fromRight) {
		  return function(object, iteratee, keysFunc) {
		    var index = -1,
		        iterable = Object(object),
		        props = keysFunc(object),
		        length = props.length;

		    while (length--) {
		      var key = props[fromRight ? length : ++index];
		      if (iteratee(iterable[key], key, iterable) === false) {
		        break;
		      }
		    }
		    return object;
		  };
		}

		module.exports = createBaseFor;


	/***/ }),
	/* 96 */
	/***/ (function(module, exports, __webpack_require__) {

		var isArrayLike = __webpack_require__(53);

		/**
		 * Creates a `baseEach` or `baseEachRight` function.
		 *
		 * @private
		 * @param {Function} eachFunc The function to iterate over a collection.
		 * @param {boolean} [fromRight] Specify iterating from right to left.
		 * @returns {Function} Returns the new base function.
		 */
		function createBaseEach(eachFunc, fromRight) {
		  return function(collection, iteratee) {
		    if (collection == null) {
		      return collection;
		    }
		    if (!isArrayLike(collection)) {
		      return eachFunc(collection, iteratee);
		    }
		    var length = collection.length,
		        index = fromRight ? length : -1,
		        iterable = Object(collection);

		    while ((fromRight ? index-- : ++index < length)) {
		      if (iteratee(iterable[index], index, iterable) === false) {
		        break;
		      }
		    }
		    return collection;
		  };
		}

		module.exports = createBaseEach;


	/***/ }),
	/* 97 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseMatches = __webpack_require__(98),
		    baseMatchesProperty = __webpack_require__(150),
		    identity = __webpack_require__(45),
		    isArray = __webpack_require__(63),
		    property = __webpack_require__(166);

		/**
		 * The base implementation of `_.iteratee`.
		 *
		 * @private
		 * @param {*} [value=_.identity] The value to convert to an iteratee.
		 * @returns {Function} Returns the iteratee.
		 */
		function baseIteratee(value) {
		  // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
		  // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
		  if (typeof value == 'function') {
		    return value;
		  }
		  if (value == null) {
		    return identity;
		  }
		  if (typeof value == 'object') {
		    return isArray(value)
		      ? baseMatchesProperty(value[0], value[1])
		      : baseMatches(value);
		  }
		  return property(value);
		}

		module.exports = baseIteratee;


	/***/ }),
	/* 98 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsMatch = __webpack_require__(99),
		    getMatchData = __webpack_require__(147),
		    matchesStrictComparable = __webpack_require__(149);

		/**
		 * The base implementation of `_.matches` which doesn't clone `source`.
		 *
		 * @private
		 * @param {Object} source The object of property values to match.
		 * @returns {Function} Returns the new spec function.
		 */
		function baseMatches(source) {
		  var matchData = getMatchData(source);
		  if (matchData.length == 1 && matchData[0][2]) {
		    return matchesStrictComparable(matchData[0][0], matchData[0][1]);
		  }
		  return function(object) {
		    return object === source || baseIsMatch(object, source, matchData);
		  };
		}

		module.exports = baseMatches;


	/***/ }),
	/* 99 */
	/***/ (function(module, exports, __webpack_require__) {

		var Stack = __webpack_require__(100),
		    baseIsEqual = __webpack_require__(128);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/**
		 * The base implementation of `_.isMatch` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Object} object The object to inspect.
		 * @param {Object} source The object of property values to match.
		 * @param {Array} matchData The property names, values, and compare flags to match.
		 * @param {Function} [customizer] The function to customize comparisons.
		 * @returns {boolean} Returns `true` if `object` is a match, else `false`.
		 */
		function baseIsMatch(object, source, matchData, customizer) {
		  var index = matchData.length,
		      length = index,
		      noCustomizer = !customizer;

		  if (object == null) {
		    return !length;
		  }
		  object = Object(object);
		  while (index--) {
		    var data = matchData[index];
		    if ((noCustomizer && data[2])
		          ? data[1] !== object[data[0]]
		          : !(data[0] in object)
		        ) {
		      return false;
		    }
		  }
		  while (++index < length) {
		    data = matchData[index];
		    var key = data[0],
		        objValue = object[key],
		        srcValue = data[1];

		    if (noCustomizer && data[2]) {
		      if (objValue === undefined && !(key in object)) {
		        return false;
		      }
		    } else {
		      var stack = new Stack;
		      if (customizer) {
		        var result = customizer(objValue, srcValue, key, object, source, stack);
		      }
		      if (!(result === undefined
		            ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
		            : result
		          )) {
		        return false;
		      }
		    }
		  }
		  return true;
		}

		module.exports = baseIsMatch;


	/***/ }),
	/* 100 */
	/***/ (function(module, exports, __webpack_require__) {

		var ListCache = __webpack_require__(101),
		    stackClear = __webpack_require__(108),
		    stackDelete = __webpack_require__(109),
		    stackGet = __webpack_require__(110),
		    stackHas = __webpack_require__(111),
		    stackSet = __webpack_require__(112);

		/**
		 * Creates a stack cache object to store key-value pairs.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function Stack(entries) {
		  var data = this.__data__ = new ListCache(entries);
		  this.size = data.size;
		}

		// Add methods to `Stack`.
		Stack.prototype.clear = stackClear;
		Stack.prototype['delete'] = stackDelete;
		Stack.prototype.get = stackGet;
		Stack.prototype.has = stackHas;
		Stack.prototype.set = stackSet;

		module.exports = Stack;


	/***/ }),
	/* 101 */
	/***/ (function(module, exports, __webpack_require__) {

		var listCacheClear = __webpack_require__(102),
		    listCacheDelete = __webpack_require__(103),
		    listCacheGet = __webpack_require__(105),
		    listCacheHas = __webpack_require__(106),
		    listCacheSet = __webpack_require__(107);

		/**
		 * Creates an list cache object.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function ListCache(entries) {
		  var index = -1,
		      length = entries == null ? 0 : entries.length;

		  this.clear();
		  while (++index < length) {
		    var entry = entries[index];
		    this.set(entry[0], entry[1]);
		  }
		}

		// Add methods to `ListCache`.
		ListCache.prototype.clear = listCacheClear;
		ListCache.prototype['delete'] = listCacheDelete;
		ListCache.prototype.get = listCacheGet;
		ListCache.prototype.has = listCacheHas;
		ListCache.prototype.set = listCacheSet;

		module.exports = ListCache;


	/***/ }),
	/* 102 */
	/***/ (function(module, exports) {

		/**
		 * Removes all key-value entries from the list cache.
		 *
		 * @private
		 * @name clear
		 * @memberOf ListCache
		 */
		function listCacheClear() {
		  this.__data__ = [];
		  this.size = 0;
		}

		module.exports = listCacheClear;


	/***/ }),
	/* 103 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(104);

		/** Used for built-in method references. */
		var arrayProto = Array.prototype;

		/** Built-in value references. */
		var splice = arrayProto.splice;

		/**
		 * Removes `key` and its value from the list cache.
		 *
		 * @private
		 * @name delete
		 * @memberOf ListCache
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function listCacheDelete(key) {
		  var data = this.__data__,
		      index = assocIndexOf(data, key);

		  if (index < 0) {
		    return false;
		  }
		  var lastIndex = data.length - 1;
		  if (index == lastIndex) {
		    data.pop();
		  } else {
		    splice.call(data, index, 1);
		  }
		  --this.size;
		  return true;
		}

		module.exports = listCacheDelete;


	/***/ }),
	/* 104 */
	/***/ (function(module, exports, __webpack_require__) {

		var eq = __webpack_require__(41);

		/**
		 * Gets the index at which the `key` is found in `array` of key-value pairs.
		 *
		 * @private
		 * @param {Array} array The array to inspect.
		 * @param {*} key The key to search for.
		 * @returns {number} Returns the index of the matched value, else `-1`.
		 */
		function assocIndexOf(array, key) {
		  var length = array.length;
		  while (length--) {
		    if (eq(array[length][0], key)) {
		      return length;
		    }
		  }
		  return -1;
		}

		module.exports = assocIndexOf;


	/***/ }),
	/* 105 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(104);

		/**
		 * Gets the list cache value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf ListCache
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function listCacheGet(key) {
		  var data = this.__data__,
		      index = assocIndexOf(data, key);

		  return index < 0 ? undefined : data[index][1];
		}

		module.exports = listCacheGet;


	/***/ }),
	/* 106 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(104);

		/**
		 * Checks if a list cache value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf ListCache
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function listCacheHas(key) {
		  return assocIndexOf(this.__data__, key) > -1;
		}

		module.exports = listCacheHas;


	/***/ }),
	/* 107 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(104);

		/**
		 * Sets the list cache `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf ListCache
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the list cache instance.
		 */
		function listCacheSet(key, value) {
		  var data = this.__data__,
		      index = assocIndexOf(data, key);

		  if (index < 0) {
		    ++this.size;
		    data.push([key, value]);
		  } else {
		    data[index][1] = value;
		  }
		  return this;
		}

		module.exports = listCacheSet;


	/***/ }),
	/* 108 */
	/***/ (function(module, exports, __webpack_require__) {

		var ListCache = __webpack_require__(101);

		/**
		 * Removes all key-value entries from the stack.
		 *
		 * @private
		 * @name clear
		 * @memberOf Stack
		 */
		function stackClear() {
		  this.__data__ = new ListCache;
		  this.size = 0;
		}

		module.exports = stackClear;


	/***/ }),
	/* 109 */
	/***/ (function(module, exports) {

		/**
		 * Removes `key` and its value from the stack.
		 *
		 * @private
		 * @name delete
		 * @memberOf Stack
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function stackDelete(key) {
		  var data = this.__data__,
		      result = data['delete'](key);

		  this.size = data.size;
		  return result;
		}

		module.exports = stackDelete;


	/***/ }),
	/* 110 */
	/***/ (function(module, exports) {

		/**
		 * Gets the stack value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf Stack
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function stackGet(key) {
		  return this.__data__.get(key);
		}

		module.exports = stackGet;


	/***/ }),
	/* 111 */
	/***/ (function(module, exports) {

		/**
		 * Checks if a stack value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf Stack
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function stackHas(key) {
		  return this.__data__.has(key);
		}

		module.exports = stackHas;


	/***/ }),
	/* 112 */
	/***/ (function(module, exports, __webpack_require__) {

		var ListCache = __webpack_require__(101),
		    Map = __webpack_require__(84),
		    MapCache = __webpack_require__(113);

		/** Used as the size to enable large array optimizations. */
		var LARGE_ARRAY_SIZE = 200;

		/**
		 * Sets the stack `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf Stack
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the stack cache instance.
		 */
		function stackSet(key, value) {
		  var data = this.__data__;
		  if (data instanceof ListCache) {
		    var pairs = data.__data__;
		    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
		      pairs.push([key, value]);
		      this.size = ++data.size;
		      return this;
		    }
		    data = this.__data__ = new MapCache(pairs);
		  }
		  data.set(key, value);
		  this.size = data.size;
		  return this;
		}

		module.exports = stackSet;


	/***/ }),
	/* 113 */
	/***/ (function(module, exports, __webpack_require__) {

		var mapCacheClear = __webpack_require__(114),
		    mapCacheDelete = __webpack_require__(122),
		    mapCacheGet = __webpack_require__(125),
		    mapCacheHas = __webpack_require__(126),
		    mapCacheSet = __webpack_require__(127);

		/**
		 * Creates a map cache object to store key-value pairs.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function MapCache(entries) {
		  var index = -1,
		      length = entries == null ? 0 : entries.length;

		  this.clear();
		  while (++index < length) {
		    var entry = entries[index];
		    this.set(entry[0], entry[1]);
		  }
		}

		// Add methods to `MapCache`.
		MapCache.prototype.clear = mapCacheClear;
		MapCache.prototype['delete'] = mapCacheDelete;
		MapCache.prototype.get = mapCacheGet;
		MapCache.prototype.has = mapCacheHas;
		MapCache.prototype.set = mapCacheSet;

		module.exports = MapCache;


	/***/ }),
	/* 114 */
	/***/ (function(module, exports, __webpack_require__) {

		var Hash = __webpack_require__(115),
		    ListCache = __webpack_require__(101),
		    Map = __webpack_require__(84);

		/**
		 * Removes all key-value entries from the map.
		 *
		 * @private
		 * @name clear
		 * @memberOf MapCache
		 */
		function mapCacheClear() {
		  this.size = 0;
		  this.__data__ = {
		    'hash': new Hash,
		    'map': new (Map || ListCache),
		    'string': new Hash
		  };
		}

		module.exports = mapCacheClear;


	/***/ }),
	/* 115 */
	/***/ (function(module, exports, __webpack_require__) {

		var hashClear = __webpack_require__(116),
		    hashDelete = __webpack_require__(118),
		    hashGet = __webpack_require__(119),
		    hashHas = __webpack_require__(120),
		    hashSet = __webpack_require__(121);

		/**
		 * Creates a hash object.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function Hash(entries) {
		  var index = -1,
		      length = entries == null ? 0 : entries.length;

		  this.clear();
		  while (++index < length) {
		    var entry = entries[index];
		    this.set(entry[0], entry[1]);
		  }
		}

		// Add methods to `Hash`.
		Hash.prototype.clear = hashClear;
		Hash.prototype['delete'] = hashDelete;
		Hash.prototype.get = hashGet;
		Hash.prototype.has = hashHas;
		Hash.prototype.set = hashSet;

		module.exports = Hash;


	/***/ }),
	/* 116 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(117);

		/**
		 * Removes all key-value entries from the hash.
		 *
		 * @private
		 * @name clear
		 * @memberOf Hash
		 */
		function hashClear() {
		  this.__data__ = nativeCreate ? nativeCreate(null) : {};
		  this.size = 0;
		}

		module.exports = hashClear;


	/***/ }),
	/* 117 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(27);

		/* Built-in method references that are verified to be native. */
		var nativeCreate = getNative(Object, 'create');

		module.exports = nativeCreate;


	/***/ }),
	/* 118 */
	/***/ (function(module, exports) {

		/**
		 * Removes `key` and its value from the hash.
		 *
		 * @private
		 * @name delete
		 * @memberOf Hash
		 * @param {Object} hash The hash to modify.
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function hashDelete(key) {
		  var result = this.has(key) && delete this.__data__[key];
		  this.size -= result ? 1 : 0;
		  return result;
		}

		module.exports = hashDelete;


	/***/ }),
	/* 119 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(117);

		/** Used to stand-in for `undefined` hash values. */
		var HASH_UNDEFINED = '__lodash_hash_undefined__';

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Gets the hash value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf Hash
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function hashGet(key) {
		  var data = this.__data__;
		  if (nativeCreate) {
		    var result = data[key];
		    return result === HASH_UNDEFINED ? undefined : result;
		  }
		  return hasOwnProperty.call(data, key) ? data[key] : undefined;
		}

		module.exports = hashGet;


	/***/ }),
	/* 120 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(117);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Checks if a hash value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf Hash
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function hashHas(key) {
		  var data = this.__data__;
		  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
		}

		module.exports = hashHas;


	/***/ }),
	/* 121 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(117);

		/** Used to stand-in for `undefined` hash values. */
		var HASH_UNDEFINED = '__lodash_hash_undefined__';

		/**
		 * Sets the hash `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf Hash
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the hash instance.
		 */
		function hashSet(key, value) {
		  var data = this.__data__;
		  this.size += this.has(key) ? 0 : 1;
		  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
		  return this;
		}

		module.exports = hashSet;


	/***/ }),
	/* 122 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(123);

		/**
		 * Removes `key` and its value from the map.
		 *
		 * @private
		 * @name delete
		 * @memberOf MapCache
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function mapCacheDelete(key) {
		  var result = getMapData(this, key)['delete'](key);
		  this.size -= result ? 1 : 0;
		  return result;
		}

		module.exports = mapCacheDelete;


	/***/ }),
	/* 123 */
	/***/ (function(module, exports, __webpack_require__) {

		var isKeyable = __webpack_require__(124);

		/**
		 * Gets the data for `map`.
		 *
		 * @private
		 * @param {Object} map The map to query.
		 * @param {string} key The reference key.
		 * @returns {*} Returns the map data.
		 */
		function getMapData(map, key) {
		  var data = map.__data__;
		  return isKeyable(key)
		    ? data[typeof key == 'string' ? 'string' : 'hash']
		    : data.map;
		}

		module.exports = getMapData;


	/***/ }),
	/* 124 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is suitable for use as unique object key.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
		 */
		function isKeyable(value) {
		  var type = typeof value;
		  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
		    ? (value !== '__proto__')
		    : (value === null);
		}

		module.exports = isKeyable;


	/***/ }),
	/* 125 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(123);

		/**
		 * Gets the map value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf MapCache
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function mapCacheGet(key) {
		  return getMapData(this, key).get(key);
		}

		module.exports = mapCacheGet;


	/***/ }),
	/* 126 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(123);

		/**
		 * Checks if a map value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf MapCache
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function mapCacheHas(key) {
		  return getMapData(this, key).has(key);
		}

		module.exports = mapCacheHas;


	/***/ }),
	/* 127 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(123);

		/**
		 * Sets the map `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf MapCache
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the map cache instance.
		 */
		function mapCacheSet(key, value) {
		  var data = getMapData(this, key),
		      size = data.size;

		  data.set(key, value);
		  this.size += data.size == size ? 0 : 1;
		  return this;
		}

		module.exports = mapCacheSet;


	/***/ }),
	/* 128 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsEqualDeep = __webpack_require__(129),
		    isObjectLike = __webpack_require__(62);

		/**
		 * The base implementation of `_.isEqual` which supports partial comparisons
		 * and tracks traversed objects.
		 *
		 * @private
		 * @param {*} value The value to compare.
		 * @param {*} other The other value to compare.
		 * @param {boolean} bitmask The bitmask flags.
		 *  1 - Unordered comparison
		 *  2 - Partial comparison
		 * @param {Function} [customizer] The function to customize comparisons.
		 * @param {Object} [stack] Tracks traversed `value` and `other` objects.
		 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
		 */
		function baseIsEqual(value, other, bitmask, customizer, stack) {
		  if (value === other) {
		    return true;
		  }
		  if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
		    return value !== value && other !== other;
		  }
		  return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
		}

		module.exports = baseIsEqual;


	/***/ }),
	/* 129 */
	/***/ (function(module, exports, __webpack_require__) {

		var Stack = __webpack_require__(100),
		    equalArrays = __webpack_require__(130),
		    equalByTag = __webpack_require__(136),
		    equalObjects = __webpack_require__(140),
		    getTag = __webpack_require__(82),
		    isArray = __webpack_require__(63),
		    isBuffer = __webpack_require__(64),
		    isTypedArray = __webpack_require__(67);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1;

		/** `Object#toString` result references. */
		var argsTag = '[object Arguments]',
		    arrayTag = '[object Array]',
		    objectTag = '[object Object]';

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * A specialized version of `baseIsEqual` for arrays and objects which performs
		 * deep comparisons and tracks traversed objects enabling objects with circular
		 * references to be compared.
		 *
		 * @private
		 * @param {Object} object The object to compare.
		 * @param {Object} other The other object to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} [stack] Tracks traversed `object` and `other` objects.
		 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
		 */
		function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
		  var objIsArr = isArray(object),
		      othIsArr = isArray(other),
		      objTag = objIsArr ? arrayTag : getTag(object),
		      othTag = othIsArr ? arrayTag : getTag(other);

		  objTag = objTag == argsTag ? objectTag : objTag;
		  othTag = othTag == argsTag ? objectTag : othTag;

		  var objIsObj = objTag == objectTag,
		      othIsObj = othTag == objectTag,
		      isSameTag = objTag == othTag;

		  if (isSameTag && isBuffer(object)) {
		    if (!isBuffer(other)) {
		      return false;
		    }
		    objIsArr = true;
		    objIsObj = false;
		  }
		  if (isSameTag && !objIsObj) {
		    stack || (stack = new Stack);
		    return (objIsArr || isTypedArray(object))
		      ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
		      : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
		  }
		  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
		    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
		        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');

		    if (objIsWrapped || othIsWrapped) {
		      var objUnwrapped = objIsWrapped ? object.value() : object,
		          othUnwrapped = othIsWrapped ? other.value() : other;

		      stack || (stack = new Stack);
		      return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
		    }
		  }
		  if (!isSameTag) {
		    return false;
		  }
		  stack || (stack = new Stack);
		  return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
		}

		module.exports = baseIsEqualDeep;


	/***/ }),
	/* 130 */
	/***/ (function(module, exports, __webpack_require__) {

		var SetCache = __webpack_require__(131),
		    arraySome = __webpack_require__(134),
		    cacheHas = __webpack_require__(135);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/**
		 * A specialized version of `baseIsEqualDeep` for arrays with support for
		 * partial deep comparisons.
		 *
		 * @private
		 * @param {Array} array The array to compare.
		 * @param {Array} other The other array to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} stack Tracks traversed `array` and `other` objects.
		 * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
		 */
		function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
		  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
		      arrLength = array.length,
		      othLength = other.length;

		  if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
		    return false;
		  }
		  // Assume cyclic values are equal.
		  var stacked = stack.get(array);
		  if (stacked && stack.get(other)) {
		    return stacked == other;
		  }
		  var index = -1,
		      result = true,
		      seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;

		  stack.set(array, other);
		  stack.set(other, array);

		  // Ignore non-index properties.
		  while (++index < arrLength) {
		    var arrValue = array[index],
		        othValue = other[index];

		    if (customizer) {
		      var compared = isPartial
		        ? customizer(othValue, arrValue, index, other, array, stack)
		        : customizer(arrValue, othValue, index, array, other, stack);
		    }
		    if (compared !== undefined) {
		      if (compared) {
		        continue;
		      }
		      result = false;
		      break;
		    }
		    // Recursively compare arrays (susceptible to call stack limits).
		    if (seen) {
		      if (!arraySome(other, function(othValue, othIndex) {
		            if (!cacheHas(seen, othIndex) &&
		                (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
		              return seen.push(othIndex);
		            }
		          })) {
		        result = false;
		        break;
		      }
		    } else if (!(
		          arrValue === othValue ||
		            equalFunc(arrValue, othValue, bitmask, customizer, stack)
		        )) {
		      result = false;
		      break;
		    }
		  }
		  stack['delete'](array);
		  stack['delete'](other);
		  return result;
		}

		module.exports = equalArrays;


	/***/ }),
	/* 131 */
	/***/ (function(module, exports, __webpack_require__) {

		var MapCache = __webpack_require__(113),
		    setCacheAdd = __webpack_require__(132),
		    setCacheHas = __webpack_require__(133);

		/**
		 *
		 * Creates an array cache object to store unique values.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [values] The values to cache.
		 */
		function SetCache(values) {
		  var index = -1,
		      length = values == null ? 0 : values.length;

		  this.__data__ = new MapCache;
		  while (++index < length) {
		    this.add(values[index]);
		  }
		}

		// Add methods to `SetCache`.
		SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
		SetCache.prototype.has = setCacheHas;

		module.exports = SetCache;


	/***/ }),
	/* 132 */
	/***/ (function(module, exports) {

		/** Used to stand-in for `undefined` hash values. */
		var HASH_UNDEFINED = '__lodash_hash_undefined__';

		/**
		 * Adds `value` to the array cache.
		 *
		 * @private
		 * @name add
		 * @memberOf SetCache
		 * @alias push
		 * @param {*} value The value to cache.
		 * @returns {Object} Returns the cache instance.
		 */
		function setCacheAdd(value) {
		  this.__data__.set(value, HASH_UNDEFINED);
		  return this;
		}

		module.exports = setCacheAdd;


	/***/ }),
	/* 133 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is in the array cache.
		 *
		 * @private
		 * @name has
		 * @memberOf SetCache
		 * @param {*} value The value to search for.
		 * @returns {number} Returns `true` if `value` is found, else `false`.
		 */
		function setCacheHas(value) {
		  return this.__data__.has(value);
		}

		module.exports = setCacheHas;


	/***/ }),
	/* 134 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.some` for arrays without support for iteratee
		 * shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {boolean} Returns `true` if any element passes the predicate check,
		 *  else `false`.
		 */
		function arraySome(array, predicate) {
		  var index = -1,
		      length = array == null ? 0 : array.length;

		  while (++index < length) {
		    if (predicate(array[index], index, array)) {
		      return true;
		    }
		  }
		  return false;
		}

		module.exports = arraySome;


	/***/ }),
	/* 135 */
	/***/ (function(module, exports) {

		/**
		 * Checks if a `cache` value for `key` exists.
		 *
		 * @private
		 * @param {Object} cache The cache to query.
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function cacheHas(cache, key) {
		  return cache.has(key);
		}

		module.exports = cacheHas;


	/***/ }),
	/* 136 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(31),
		    Uint8Array = __webpack_require__(137),
		    eq = __webpack_require__(41),
		    equalArrays = __webpack_require__(130),
		    mapToArray = __webpack_require__(138),
		    setToArray = __webpack_require__(139);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/** `Object#toString` result references. */
		var boolTag = '[object Boolean]',
		    dateTag = '[object Date]',
		    errorTag = '[object Error]',
		    mapTag = '[object Map]',
		    numberTag = '[object Number]',
		    regexpTag = '[object RegExp]',
		    setTag = '[object Set]',
		    stringTag = '[object String]',
		    symbolTag = '[object Symbol]';

		var arrayBufferTag = '[object ArrayBuffer]',
		    dataViewTag = '[object DataView]';

		/** Used to convert symbols to primitives and strings. */
		var symbolProto = Symbol ? Symbol.prototype : undefined,
		    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;

		/**
		 * A specialized version of `baseIsEqualDeep` for comparing objects of
		 * the same `toStringTag`.
		 *
		 * **Note:** This function only supports comparing values with tags of
		 * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
		 *
		 * @private
		 * @param {Object} object The object to compare.
		 * @param {Object} other The other object to compare.
		 * @param {string} tag The `toStringTag` of the objects to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} stack Tracks traversed `object` and `other` objects.
		 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
		 */
		function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
		  switch (tag) {
		    case dataViewTag:
		      if ((object.byteLength != other.byteLength) ||
		          (object.byteOffset != other.byteOffset)) {
		        return false;
		      }
		      object = object.buffer;
		      other = other.buffer;

		    case arrayBufferTag:
		      if ((object.byteLength != other.byteLength) ||
		          !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
		        return false;
		      }
		      return true;

		    case boolTag:
		    case dateTag:
		    case numberTag:
		      // Coerce booleans to `1` or `0` and dates to milliseconds.
		      // Invalid dates are coerced to `NaN`.
		      return eq(+object, +other);

		    case errorTag:
		      return object.name == other.name && object.message == other.message;

		    case regexpTag:
		    case stringTag:
		      // Coerce regexes to strings and treat strings, primitives and objects,
		      // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
		      // for more details.
		      return object == (other + '');

		    case mapTag:
		      var convert = mapToArray;

		    case setTag:
		      var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
		      convert || (convert = setToArray);

		      if (object.size != other.size && !isPartial) {
		        return false;
		      }
		      // Assume cyclic values are equal.
		      var stacked = stack.get(object);
		      if (stacked) {
		        return stacked == other;
		      }
		      bitmask |= COMPARE_UNORDERED_FLAG;

		      // Recursively compare objects (susceptible to call stack limits).
		      stack.set(object, other);
		      var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
		      stack['delete'](object);
		      return result;

		    case symbolTag:
		      if (symbolValueOf) {
		        return symbolValueOf.call(object) == symbolValueOf.call(other);
		      }
		  }
		  return false;
		}

		module.exports = equalByTag;


	/***/ }),
	/* 137 */
	/***/ (function(module, exports, __webpack_require__) {

		var root = __webpack_require__(32);

		/** Built-in value references. */
		var Uint8Array = root.Uint8Array;

		module.exports = Uint8Array;


	/***/ }),
	/* 138 */
	/***/ (function(module, exports) {

		/**
		 * Converts `map` to its key-value pairs.
		 *
		 * @private
		 * @param {Object} map The map to convert.
		 * @returns {Array} Returns the key-value pairs.
		 */
		function mapToArray(map) {
		  var index = -1,
		      result = Array(map.size);

		  map.forEach(function(value, key) {
		    result[++index] = [key, value];
		  });
		  return result;
		}

		module.exports = mapToArray;


	/***/ }),
	/* 139 */
	/***/ (function(module, exports) {

		/**
		 * Converts `set` to an array of its values.
		 *
		 * @private
		 * @param {Object} set The set to convert.
		 * @returns {Array} Returns the values.
		 */
		function setToArray(set) {
		  var index = -1,
		      result = Array(set.size);

		  set.forEach(function(value) {
		    result[++index] = value;
		  });
		  return result;
		}

		module.exports = setToArray;


	/***/ }),
	/* 140 */
	/***/ (function(module, exports, __webpack_require__) {

		var getAllKeys = __webpack_require__(141);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1;

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * A specialized version of `baseIsEqualDeep` for objects with support for
		 * partial deep comparisons.
		 *
		 * @private
		 * @param {Object} object The object to compare.
		 * @param {Object} other The other object to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} stack Tracks traversed `object` and `other` objects.
		 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
		 */
		function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
		  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
		      objProps = getAllKeys(object),
		      objLength = objProps.length,
		      othProps = getAllKeys(other),
		      othLength = othProps.length;

		  if (objLength != othLength && !isPartial) {
		    return false;
		  }
		  var index = objLength;
		  while (index--) {
		    var key = objProps[index];
		    if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {
		      return false;
		    }
		  }
		  // Assume cyclic values are equal.
		  var stacked = stack.get(object);
		  if (stacked && stack.get(other)) {
		    return stacked == other;
		  }
		  var result = true;
		  stack.set(object, other);
		  stack.set(other, object);

		  var skipCtor = isPartial;
		  while (++index < objLength) {
		    key = objProps[index];
		    var objValue = object[key],
		        othValue = other[key];

		    if (customizer) {
		      var compared = isPartial
		        ? customizer(othValue, objValue, key, other, object, stack)
		        : customizer(objValue, othValue, key, object, other, stack);
		    }
		    // Recursively compare objects (susceptible to call stack limits).
		    if (!(compared === undefined
		          ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))
		          : compared
		        )) {
		      result = false;
		      break;
		    }
		    skipCtor || (skipCtor = key == 'constructor');
		  }
		  if (result && !skipCtor) {
		    var objCtor = object.constructor,
		        othCtor = other.constructor;

		    // Non `Object` object instances with different constructors are not equal.
		    if (objCtor != othCtor &&
		        ('constructor' in object && 'constructor' in other) &&
		        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
		          typeof othCtor == 'function' && othCtor instanceof othCtor)) {
		      result = false;
		    }
		  }
		  stack['delete'](object);
		  stack['delete'](other);
		  return result;
		}

		module.exports = equalObjects;


	/***/ }),
	/* 141 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetAllKeys = __webpack_require__(142),
		    getSymbols = __webpack_require__(144),
		    keys = __webpack_require__(57);

		/**
		 * Creates an array of own enumerable property names and symbols of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of property names and symbols.
		 */
		function getAllKeys(object) {
		  return baseGetAllKeys(object, keys, getSymbols);
		}

		module.exports = getAllKeys;


	/***/ }),
	/* 142 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayPush = __webpack_require__(143),
		    isArray = __webpack_require__(63);

		/**
		 * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
		 * `keysFunc` and `symbolsFunc` to get the enumerable property names and
		 * symbols of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {Function} keysFunc The function to get the keys of `object`.
		 * @param {Function} symbolsFunc The function to get the symbols of `object`.
		 * @returns {Array} Returns the array of property names and symbols.
		 */
		function baseGetAllKeys(object, keysFunc, symbolsFunc) {
		  var result = keysFunc(object);
		  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
		}

		module.exports = baseGetAllKeys;


	/***/ }),
	/* 143 */
	/***/ (function(module, exports) {

		/**
		 * Appends the elements of `values` to `array`.
		 *
		 * @private
		 * @param {Array} array The array to modify.
		 * @param {Array} values The values to append.
		 * @returns {Array} Returns `array`.
		 */
		function arrayPush(array, values) {
		  var index = -1,
		      length = values.length,
		      offset = array.length;

		  while (++index < length) {
		    array[offset + index] = values[index];
		  }
		  return array;
		}

		module.exports = arrayPush;


	/***/ }),
	/* 144 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayFilter = __webpack_require__(145),
		    stubArray = __webpack_require__(146);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Built-in value references. */
		var propertyIsEnumerable = objectProto.propertyIsEnumerable;

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeGetSymbols = Object.getOwnPropertySymbols;

		/**
		 * Creates an array of the own enumerable symbols of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of symbols.
		 */
		var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
		  if (object == null) {
		    return [];
		  }
		  object = Object(object);
		  return arrayFilter(nativeGetSymbols(object), function(symbol) {
		    return propertyIsEnumerable.call(object, symbol);
		  });
		};

		module.exports = getSymbols;


	/***/ }),
	/* 145 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.filter` for arrays without support for
		 * iteratee shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {Array} Returns the new filtered array.
		 */
		function arrayFilter(array, predicate) {
		  var index = -1,
		      length = array == null ? 0 : array.length,
		      resIndex = 0,
		      result = [];

		  while (++index < length) {
		    var value = array[index];
		    if (predicate(value, index, array)) {
		      result[resIndex++] = value;
		    }
		  }
		  return result;
		}

		module.exports = arrayFilter;


	/***/ }),
	/* 146 */
	/***/ (function(module, exports) {

		/**
		 * This method returns a new empty array.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.13.0
		 * @category Util
		 * @returns {Array} Returns the new empty array.
		 * @example
		 *
		 * var arrays = _.times(2, _.stubArray);
		 *
		 * console.log(arrays);
		 * // => [[], []]
		 *
		 * console.log(arrays[0] === arrays[1]);
		 * // => false
		 */
		function stubArray() {
		  return [];
		}

		module.exports = stubArray;


	/***/ }),
	/* 147 */
	/***/ (function(module, exports, __webpack_require__) {

		var isStrictComparable = __webpack_require__(148),
		    keys = __webpack_require__(57);

		/**
		 * Gets the property names, values, and compare flags of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the match data of `object`.
		 */
		function getMatchData(object) {
		  var result = keys(object),
		      length = result.length;

		  while (length--) {
		    var key = result[length],
		        value = object[key];

		    result[length] = [key, value, isStrictComparable(value)];
		  }
		  return result;
		}

		module.exports = getMatchData;


	/***/ }),
	/* 148 */
	/***/ (function(module, exports, __webpack_require__) {

		var isObject = __webpack_require__(36);

		/**
		 * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` if suitable for strict
		 *  equality comparisons, else `false`.
		 */
		function isStrictComparable(value) {
		  return value === value && !isObject(value);
		}

		module.exports = isStrictComparable;


	/***/ }),
	/* 149 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `matchesProperty` for source values suitable
		 * for strict equality comparisons, i.e. `===`.
		 *
		 * @private
		 * @param {string} key The key of the property to get.
		 * @param {*} srcValue The value to match.
		 * @returns {Function} Returns the new spec function.
		 */
		function matchesStrictComparable(key, srcValue) {
		  return function(object) {
		    if (object == null) {
		      return false;
		    }
		    return object[key] === srcValue &&
		      (srcValue !== undefined || (key in Object(object)));
		  };
		}

		module.exports = matchesStrictComparable;


	/***/ }),
	/* 150 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsEqual = __webpack_require__(128),
		    get = __webpack_require__(151),
		    hasIn = __webpack_require__(163),
		    isKey = __webpack_require__(154),
		    isStrictComparable = __webpack_require__(148),
		    matchesStrictComparable = __webpack_require__(149),
		    toKey = __webpack_require__(162);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/**
		 * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
		 *
		 * @private
		 * @param {string} path The path of the property to get.
		 * @param {*} srcValue The value to match.
		 * @returns {Function} Returns the new spec function.
		 */
		function baseMatchesProperty(path, srcValue) {
		  if (isKey(path) && isStrictComparable(srcValue)) {
		    return matchesStrictComparable(toKey(path), srcValue);
		  }
		  return function(object) {
		    var objValue = get(object, path);
		    return (objValue === undefined && objValue === srcValue)
		      ? hasIn(object, path)
		      : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
		  };
		}

		module.exports = baseMatchesProperty;


	/***/ }),
	/* 151 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGet = __webpack_require__(152);

		/**
		 * Gets the value at `path` of `object`. If the resolved value is
		 * `undefined`, the `defaultValue` is returned in its place.
		 *
		 * @static
		 * @memberOf _
		 * @since 3.7.0
		 * @category Object
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path of the property to get.
		 * @param {*} [defaultValue] The value returned for `undefined` resolved values.
		 * @returns {*} Returns the resolved value.
		 * @example
		 *
		 * var object = { 'a': [{ 'b': { 'c': 3 } }] };
		 *
		 * _.get(object, 'a[0].b.c');
		 * // => 3
		 *
		 * _.get(object, ['a', '0', 'b', 'c']);
		 * // => 3
		 *
		 * _.get(object, 'a.b.c', 'default');
		 * // => 'default'
		 */
		function get(object, path, defaultValue) {
		  var result = object == null ? undefined : baseGet(object, path);
		  return result === undefined ? defaultValue : result;
		}

		module.exports = get;


	/***/ }),
	/* 152 */
	/***/ (function(module, exports, __webpack_require__) {

		var castPath = __webpack_require__(153),
		    toKey = __webpack_require__(162);

		/**
		 * The base implementation of `_.get` without support for default values.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path of the property to get.
		 * @returns {*} Returns the resolved value.
		 */
		function baseGet(object, path) {
		  path = castPath(path, object);

		  var index = 0,
		      length = path.length;

		  while (object != null && index < length) {
		    object = object[toKey(path[index++])];
		  }
		  return (index && index == length) ? object : undefined;
		}

		module.exports = baseGet;


	/***/ }),
	/* 153 */
	/***/ (function(module, exports, __webpack_require__) {

		var isArray = __webpack_require__(63),
		    isKey = __webpack_require__(154),
		    stringToPath = __webpack_require__(156),
		    toString = __webpack_require__(159);

		/**
		 * Casts `value` to a path array if it's not one.
		 *
		 * @private
		 * @param {*} value The value to inspect.
		 * @param {Object} [object] The object to query keys on.
		 * @returns {Array} Returns the cast property path array.
		 */
		function castPath(value, object) {
		  if (isArray(value)) {
		    return value;
		  }
		  return isKey(value, object) ? [value] : stringToPath(toString(value));
		}

		module.exports = castPath;


	/***/ }),
	/* 154 */
	/***/ (function(module, exports, __webpack_require__) {

		var isArray = __webpack_require__(63),
		    isSymbol = __webpack_require__(155);

		/** Used to match property names within property paths. */
		var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
		    reIsPlainProp = /^\w*$/;

		/**
		 * Checks if `value` is a property name and not a property path.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @param {Object} [object] The object to query keys on.
		 * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
		 */
		function isKey(value, object) {
		  if (isArray(value)) {
		    return false;
		  }
		  var type = typeof value;
		  if (type == 'number' || type == 'symbol' || type == 'boolean' ||
		      value == null || isSymbol(value)) {
		    return true;
		  }
		  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
		    (object != null && value in Object(object));
		}

		module.exports = isKey;


	/***/ }),
	/* 155 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(30),
		    isObjectLike = __webpack_require__(62);

		/** `Object#toString` result references. */
		var symbolTag = '[object Symbol]';

		/**
		 * Checks if `value` is classified as a `Symbol` primitive or object.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
		 * @example
		 *
		 * _.isSymbol(Symbol.iterator);
		 * // => true
		 *
		 * _.isSymbol('abc');
		 * // => false
		 */
		function isSymbol(value) {
		  return typeof value == 'symbol' ||
		    (isObjectLike(value) && baseGetTag(value) == symbolTag);
		}

		module.exports = isSymbol;


	/***/ }),
	/* 156 */
	/***/ (function(module, exports, __webpack_require__) {

		var memoizeCapped = __webpack_require__(157);

		/** Used to match property names within property paths. */
		var reLeadingDot = /^\./,
		    rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;

		/** Used to match backslashes in property paths. */
		var reEscapeChar = /\\(\\)?/g;

		/**
		 * Converts `string` to a property path array.
		 *
		 * @private
		 * @param {string} string The string to convert.
		 * @returns {Array} Returns the property path array.
		 */
		var stringToPath = memoizeCapped(function(string) {
		  var result = [];
		  if (reLeadingDot.test(string)) {
		    result.push('');
		  }
		  string.replace(rePropName, function(match, number, quote, string) {
		    result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
		  });
		  return result;
		});

		module.exports = stringToPath;


	/***/ }),
	/* 157 */
	/***/ (function(module, exports, __webpack_require__) {

		var memoize = __webpack_require__(158);

		/** Used as the maximum memoize cache size. */
		var MAX_MEMOIZE_SIZE = 500;

		/**
		 * A specialized version of `_.memoize` which clears the memoized function's
		 * cache when it exceeds `MAX_MEMOIZE_SIZE`.
		 *
		 * @private
		 * @param {Function} func The function to have its output memoized.
		 * @returns {Function} Returns the new memoized function.
		 */
		function memoizeCapped(func) {
		  var result = memoize(func, function(key) {
		    if (cache.size === MAX_MEMOIZE_SIZE) {
		      cache.clear();
		    }
		    return key;
		  });

		  var cache = result.cache;
		  return result;
		}

		module.exports = memoizeCapped;


	/***/ }),
	/* 158 */
	/***/ (function(module, exports, __webpack_require__) {

		var MapCache = __webpack_require__(113);

		/** Error message constants. */
		var FUNC_ERROR_TEXT = 'Expected a function';

		/**
		 * Creates a function that memoizes the result of `func`. If `resolver` is
		 * provided, it determines the cache key for storing the result based on the
		 * arguments provided to the memoized function. By default, the first argument
		 * provided to the memoized function is used as the map cache key. The `func`
		 * is invoked with the `this` binding of the memoized function.
		 *
		 * **Note:** The cache is exposed as the `cache` property on the memoized
		 * function. Its creation may be customized by replacing the `_.memoize.Cache`
		 * constructor with one whose instances implement the
		 * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
		 * method interface of `clear`, `delete`, `get`, `has`, and `set`.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Function
		 * @param {Function} func The function to have its output memoized.
		 * @param {Function} [resolver] The function to resolve the cache key.
		 * @returns {Function} Returns the new memoized function.
		 * @example
		 *
		 * var object = { 'a': 1, 'b': 2 };
		 * var other = { 'c': 3, 'd': 4 };
		 *
		 * var values = _.memoize(_.values);
		 * values(object);
		 * // => [1, 2]
		 *
		 * values(other);
		 * // => [3, 4]
		 *
		 * object.a = 2;
		 * values(object);
		 * // => [1, 2]
		 *
		 * // Modify the result cache.
		 * values.cache.set(object, ['a', 'b']);
		 * values(object);
		 * // => ['a', 'b']
		 *
		 * // Replace `_.memoize.Cache`.
		 * _.memoize.Cache = WeakMap;
		 */
		function memoize(func, resolver) {
		  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
		    throw new TypeError(FUNC_ERROR_TEXT);
		  }
		  var memoized = function() {
		    var args = arguments,
		        key = resolver ? resolver.apply(this, args) : args[0],
		        cache = memoized.cache;

		    if (cache.has(key)) {
		      return cache.get(key);
		    }
		    var result = func.apply(this, args);
		    memoized.cache = cache.set(key, result) || cache;
		    return result;
		  };
		  memoized.cache = new (memoize.Cache || MapCache);
		  return memoized;
		}

		// Expose `MapCache`.
		memoize.Cache = MapCache;

		module.exports = memoize;


	/***/ }),
	/* 159 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseToString = __webpack_require__(160);

		/**
		 * Converts `value` to a string. An empty string is returned for `null`
		 * and `undefined` values. The sign of `-0` is preserved.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to convert.
		 * @returns {string} Returns the converted string.
		 * @example
		 *
		 * _.toString(null);
		 * // => ''
		 *
		 * _.toString(-0);
		 * // => '-0'
		 *
		 * _.toString([1, 2, 3]);
		 * // => '1,2,3'
		 */
		function toString(value) {
		  return value == null ? '' : baseToString(value);
		}

		module.exports = toString;


	/***/ }),
	/* 160 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(31),
		    arrayMap = __webpack_require__(161),
		    isArray = __webpack_require__(63),
		    isSymbol = __webpack_require__(155);

		/** Used as references for various `Number` constants. */
		var INFINITY = 1 / 0;

		/** Used to convert symbols to primitives and strings. */
		var symbolProto = Symbol ? Symbol.prototype : undefined,
		    symbolToString = symbolProto ? symbolProto.toString : undefined;

		/**
		 * The base implementation of `_.toString` which doesn't convert nullish
		 * values to empty strings.
		 *
		 * @private
		 * @param {*} value The value to process.
		 * @returns {string} Returns the string.
		 */
		function baseToString(value) {
		  // Exit early for strings to avoid a performance hit in some environments.
		  if (typeof value == 'string') {
		    return value;
		  }
		  if (isArray(value)) {
		    // Recursively convert values (susceptible to call stack limits).
		    return arrayMap(value, baseToString) + '';
		  }
		  if (isSymbol(value)) {
		    return symbolToString ? symbolToString.call(value) : '';
		  }
		  var result = (value + '');
		  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
		}

		module.exports = baseToString;


	/***/ }),
	/* 161 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.map` for arrays without support for iteratee
		 * shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Array} Returns the new mapped array.
		 */
		function arrayMap(array, iteratee) {
		  var index = -1,
		      length = array == null ? 0 : array.length,
		      result = Array(length);

		  while (++index < length) {
		    result[index] = iteratee(array[index], index, array);
		  }
		  return result;
		}

		module.exports = arrayMap;


	/***/ }),
	/* 162 */
	/***/ (function(module, exports, __webpack_require__) {

		var isSymbol = __webpack_require__(155);

		/** Used as references for various `Number` constants. */
		var INFINITY = 1 / 0;

		/**
		 * Converts `value` to a string key if it's not a string or symbol.
		 *
		 * @private
		 * @param {*} value The value to inspect.
		 * @returns {string|symbol} Returns the key.
		 */
		function toKey(value) {
		  if (typeof value == 'string' || isSymbol(value)) {
		    return value;
		  }
		  var result = (value + '');
		  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
		}

		module.exports = toKey;


	/***/ }),
	/* 163 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseHasIn = __webpack_require__(164),
		    hasPath = __webpack_require__(165);

		/**
		 * Checks if `path` is a direct or inherited property of `object`.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Object
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path to check.
		 * @returns {boolean} Returns `true` if `path` exists, else `false`.
		 * @example
		 *
		 * var object = _.create({ 'a': _.create({ 'b': 2 }) });
		 *
		 * _.hasIn(object, 'a');
		 * // => true
		 *
		 * _.hasIn(object, 'a.b');
		 * // => true
		 *
		 * _.hasIn(object, ['a', 'b']);
		 * // => true
		 *
		 * _.hasIn(object, 'b');
		 * // => false
		 */
		function hasIn(object, path) {
		  return object != null && hasPath(object, path, baseHasIn);
		}

		module.exports = hasIn;


	/***/ }),
	/* 164 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.hasIn` without support for deep paths.
		 *
		 * @private
		 * @param {Object} [object] The object to query.
		 * @param {Array|string} key The key to check.
		 * @returns {boolean} Returns `true` if `key` exists, else `false`.
		 */
		function baseHasIn(object, key) {
		  return object != null && key in Object(object);
		}

		module.exports = baseHasIn;


	/***/ }),
	/* 165 */
	/***/ (function(module, exports, __webpack_require__) {

		var castPath = __webpack_require__(153),
		    isArguments = __webpack_require__(60),
		    isArray = __webpack_require__(63),
		    isIndex = __webpack_require__(55),
		    isLength = __webpack_require__(54),
		    toKey = __webpack_require__(162);

		/**
		 * Checks if `path` exists on `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path to check.
		 * @param {Function} hasFunc The function to check properties.
		 * @returns {boolean} Returns `true` if `path` exists, else `false`.
		 */
		function hasPath(object, path, hasFunc) {
		  path = castPath(path, object);

		  var index = -1,
		      length = path.length,
		      result = false;

		  while (++index < length) {
		    var key = toKey(path[index]);
		    if (!(result = object != null && hasFunc(object, key))) {
		      break;
		    }
		    object = object[key];
		  }
		  if (result || ++index != length) {
		    return result;
		  }
		  length = object == null ? 0 : object.length;
		  return !!length && isLength(length) && isIndex(key, length) &&
		    (isArray(object) || isArguments(object));
		}

		module.exports = hasPath;


	/***/ }),
	/* 166 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseProperty = __webpack_require__(167),
		    basePropertyDeep = __webpack_require__(168),
		    isKey = __webpack_require__(154),
		    toKey = __webpack_require__(162);

		/**
		 * Creates a function that returns the value at `path` of a given object.
		 *
		 * @static
		 * @memberOf _
		 * @since 2.4.0
		 * @category Util
		 * @param {Array|string} path The path of the property to get.
		 * @returns {Function} Returns the new accessor function.
		 * @example
		 *
		 * var objects = [
		 *   { 'a': { 'b': 2 } },
		 *   { 'a': { 'b': 1 } }
		 * ];
		 *
		 * _.map(objects, _.property('a.b'));
		 * // => [2, 1]
		 *
		 * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
		 * // => [1, 2]
		 */
		function property(path) {
		  return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
		}

		module.exports = property;


	/***/ }),
	/* 167 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.property` without support for deep paths.
		 *
		 * @private
		 * @param {string} key The key of the property to get.
		 * @returns {Function} Returns the new accessor function.
		 */
		function baseProperty(key) {
		  return function(object) {
		    return object == null ? undefined : object[key];
		  };
		}

		module.exports = baseProperty;


	/***/ }),
	/* 168 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGet = __webpack_require__(152);

		/**
		 * A specialized version of `baseProperty` which supports deep paths.
		 *
		 * @private
		 * @param {Array|string} path The path of the property to get.
		 * @returns {Function} Returns the new accessor function.
		 */
		function basePropertyDeep(path) {
		  return function(object) {
		    return baseGet(object, path);
		  };
		}

		module.exports = basePropertyDeep;


	/***/ }),
	/* 169 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLAttribute, create;

		  create = __webpack_require__(77);

		  module.exports = XMLAttribute = (function() {
		    function XMLAttribute(parent, name, value) {
		      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 create(XMLAttribute.prototype, this);
		    };

		    XMLAttribute.prototype.toString = function(options, level) {
		      return ' ' + this.name + '="' + this.value + '"';
		    };

		    return XMLAttribute;

		  })();

		}).call(this);


	/***/ }),
	/* 170 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLProcessingInstruction, create;

		  create = __webpack_require__(77);

		  module.exports = XMLProcessingInstruction = (function() {
		    function XMLProcessingInstruction(parent, target, value) {
		      this.stringify = parent.stringify;
		      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 create(XMLProcessingInstruction.prototype, this);
		    };

		    XMLProcessingInstruction.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<?';
		      r += this.target;
		      if (this.value) {
		        r += ' ' + this.value;
		      }
		      r += '?>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLProcessingInstruction;

		  })();

		}).call(this);


	/***/ }),
	/* 171 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLCData, XMLNode, create,
		    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;

		  create = __webpack_require__(77);

		  XMLNode = __webpack_require__(80);

		  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 create(XMLCData.prototype, this);
		    };

		    XMLCData.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<![CDATA[' + this.text + ']]>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLCData;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 172 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLComment, XMLNode, create,
		    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;

		  create = __webpack_require__(77);

		  XMLNode = __webpack_require__(80);

		  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 create(XMLComment.prototype, this);
		    };

		    XMLComment.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!-- ' + this.text + ' -->';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLComment;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 173 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLProcessingInstruction, create, isObject;

		  create = __webpack_require__(77);

		  isObject = __webpack_require__(36);

		  XMLCData = __webpack_require__(171);

		  XMLComment = __webpack_require__(172);

		  XMLDTDAttList = __webpack_require__(174);

		  XMLDTDEntity = __webpack_require__(175);

		  XMLDTDElement = __webpack_require__(176);

		  XMLDTDNotation = __webpack_require__(177);

		  XMLProcessingInstruction = __webpack_require__(170);

		  module.exports = XMLDocType = (function() {
		    function XMLDocType(parent, pubID, sysID) {
		      var ref, ref1;
		      this.documentObject = parent;
		      this.stringify = this.documentObject.stringify;
		      this.children = [];
		      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.cdata = function(value) {
		      var child;
		      child = new XMLCData(this, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLDocType.prototype.comment = function(value) {
		      var child;
		      child = new XMLComment(this, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLDocType.prototype.instruction = function(target, value) {
		      var child;
		      child = new XMLProcessingInstruction(this, target, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLDocType.prototype.root = function() {
		      return this.documentObject.root();
		    };

		    XMLDocType.prototype.document = function() {
		      return this.documentObject;
		    };

		    XMLDocType.prototype.toString = function(options, level) {
		      var child, i, indent, len, newline, offset, pretty, r, ref, ref1, ref2, ref3, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!DOCTYPE ' + this.root().name;
		      if (this.pubID && this.sysID) {
		        r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
		      } else if (this.sysID) {
		        r += ' SYSTEM "' + this.sysID + '"';
		      }
		      if (this.children.length > 0) {
		        r += ' [';
		        if (pretty) {
		          r += newline;
		        }
		        ref3 = this.children;
		        for (i = 0, len = ref3.length; i < len; i++) {
		          child = ref3[i];
		          r += child.toString(options, level + 1);
		        }
		        r += ']';
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    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.dat = function(value) {
		      return this.cdata(value);
		    };

		    XMLDocType.prototype.com = function(value) {
		      return this.comment(value);
		    };

		    XMLDocType.prototype.ins = function(target, value) {
		      return this.instruction(target, value);
		    };

		    XMLDocType.prototype.up = function() {
		      return this.root();
		    };

		    XMLDocType.prototype.doc = function() {
		      return this.document();
		    };

		    return XMLDocType;

		  })();

		}).call(this);


	/***/ }),
	/* 174 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDAttList, create;

		  create = __webpack_require__(77);

		  module.exports = XMLDTDAttList = (function() {
		    function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!ATTLIST ' + this.elementName + ' ' + this.attributeName + ' ' + this.attributeType;
		      if (this.defaultValueType !== '#DEFAULT') {
		        r += ' ' + this.defaultValueType;
		      }
		      if (this.defaultValue) {
		        r += ' "' + this.defaultValue + '"';
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDAttList;

		  })();

		}).call(this);


	/***/ }),
	/* 175 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDEntity, create, isObject;

		  create = __webpack_require__(77);

		  isObject = __webpack_require__(36);

		  module.exports = XMLDTDEntity = (function() {
		    function XMLDTDEntity(parent, pe, name, value) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!ENTITY';
		      if (this.pe) {
		        r += ' %';
		      }
		      r += ' ' + this.name;
		      if (this.value) {
		        r += ' "' + this.value + '"';
		      } else {
		        if (this.pubID && this.sysID) {
		          r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
		        } else if (this.sysID) {
		          r += ' SYSTEM "' + this.sysID + '"';
		        }
		        if (this.nData) {
		          r += ' NDATA ' + this.nData;
		        }
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDEntity;

		  })();

		}).call(this);


	/***/ }),
	/* 176 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDElement, create;

		  create = __webpack_require__(77);

		  module.exports = XMLDTDElement = (function() {
		    function XMLDTDElement(parent, name, value) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!ELEMENT ' + this.name + ' ' + this.value + '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDElement;

		  })();

		}).call(this);


	/***/ }),
	/* 177 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDNotation, create;

		  create = __webpack_require__(77);

		  module.exports = XMLDTDNotation = (function() {
		    function XMLDTDNotation(parent, name, value) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!NOTATION ' + this.name;
		      if (this.pubID && this.sysID) {
		        r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
		      } else if (this.pubID) {
		        r += ' PUBLIC "' + this.pubID + '"';
		      } else if (this.sysID) {
		        r += ' SYSTEM "' + this.sysID + '"';
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDNotation;

		  })();

		}).call(this);


	/***/ }),
	/* 178 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLNode, XMLRaw, create,
		    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;

		  create = __webpack_require__(77);

		  XMLNode = __webpack_require__(80);

		  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 create(XMLRaw.prototype, this);
		    };

		    XMLRaw.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += this.value;
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLRaw;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 179 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLNode, XMLText, create,
		    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;

		  create = __webpack_require__(77);

		  XMLNode = __webpack_require__(80);

		  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 create(XMLText.prototype, this);
		    };

		    XMLText.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += this.value;
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLText;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 180 */
	/***/ (function(module, exports, __webpack_require__) {

		var Collection = __webpack_require__(17);
		var Operation = __webpack_require__(181);
		var Shape = __webpack_require__(16);
		var Paginator = __webpack_require__(182);
		var ResourceWaiter = __webpack_require__(183);

		var util = __webpack_require__(2);
		var property = util.property;
		var memoizedProperty = util.memoizedProperty;

		function Api(api, options) {
		  api = api || {};
		  options = options || {};
		  options.api = this;

		  api.metadata = api.metadata || {};

		  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);

		  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;
		  });

		  property(this, 'operations', new Collection(api.operations, options, function(name, operation) {
		    return new Operation(name, operation, options);
		  }, util.string.lowerFirst));

		  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);
		  }
		}

		module.exports = Api;


	/***/ }),
	/* 181 */
	/***/ (function(module, exports, __webpack_require__) {

		var Shape = __webpack_require__(16);

		var util = __webpack_require__(2);
		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, 'httpMethod', operation.http.method || 'POST');
		  property(this, 'httpPath', operation.http.requestUri || '/');
		  property(this, 'authtype', operation.authtype || '');

		  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;
		  });

		}

		module.exports = Operation;


	/***/ }),
	/* 182 */
	/***/ (function(module, exports, __webpack_require__) {

		var property = __webpack_require__(2).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);
		}

		module.exports = Paginator;


	/***/ }),
	/* 183 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);
		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);
		    }
		  });
		}

		module.exports = ResourceWaiter;


	/***/ }),
	/* 184 */
	/***/ (function(module, exports) {

		function apiLoader(svc, version) {
		  if (!apiLoader.services.hasOwnProperty(svc)) {
		    throw new Error('InvalidService: Failed to load api for ' + svc);
		  }
		  return apiLoader.services[svc][version];
		}

		/**
		 * This member of AWS.apiLoader is private, but changing it will necessitate a
		 * change to ../scripts/services-table-generator.ts
		 */
		apiLoader.services = {};
		module.exports = apiLoader;


	/***/ }),
	/* 185 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var Api = __webpack_require__(180);
		var regionConfig = __webpack_require__(186);
		var inherit = AWS.util.inherit;
		var clientCount = 0;

		/**
		 * The service class representing an AWS service.
		 *
		 * @abstract
		 *
		 * @!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(this);

		    this.config.endpoint = this.endpointFromTemplate(this.config.endpoint);
		    this.setEndpoint(this.config.endpoint);
		  },

		  /**
		   * @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);

		    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);
		    }
		  },

		  /**
		   * Override this method to setup any custom request listeners for each
		   * new request to the service.
		   *
		   * @abstract
		   */
		  setupRequestListeners: function setupRequestListeners() {
		  },

		  /**
		   * 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) {
		    return AWS.util.calculateRetryDelay(retryCount, this.config.retryDelayOptions);
		  },

		  /**
		   * @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
		   */
		  throttledError: function throttledError(error) {
		    // this logic varies between services
		    switch (error.code) {
		      case 'ProvisionedThroughputExceededException':
		      case 'Throttling':
		      case 'ThrottlingException':
		      case 'RequestLimitExceeded':
		      case 'RequestThrottled':
		        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);
		    }

		    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);
		      }
		    }

		    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);
		  },

		  /**
		   * @api private
		   */
		  _serviceMap: {}
		});

		module.exports = AWS.Service;


	/***/ }),
	/* 186 */
	/***/ (function(module, exports, __webpack_require__) {

		var util = __webpack_require__(2);
		var regionConfig = __webpack_require__(187);

		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 = '{service}.dualstack.{region}.amazonaws.com';
		      }

		      // set global endpoint
		      service.isGlobalEndpoint = !!config.globalEndpoint;

		      // signature version
		      if (!config.signatureVersion) config.signatureVersion = 'v4';

		      // merge config
		      applyConfig(service, config);
		      return;
		    }
		  }
		}

		module.exports = configureEndpoint;


	/***/ }),
	/* 187 */
	/***/ (function(module, exports) {

		module.exports = {"rules":{"*/*":{"endpoint":"{service}.{region}.amazonaws.com"},"cn-*/*":{"endpoint":"{service}.{region}.amazonaws.com.cn"},"*/budgets":"globalSSL","*/cloudfront":"globalSSL","*/iam":"globalSSL","*/sts":"globalSSL","*/importexport":{"endpoint":"{service}.amazonaws.com","signatureVersion":"v2","globalEndpoint":true},"*/route53":{"endpoint":"https://{service}.amazonaws.com","signatureVersion":"v3https","globalEndpoint":true},"*/waf":"globalSSL","us-gov-*/iam":"globalGovCloud","us-gov-*/sts":{"endpoint":"{service}.{region}.amazonaws.com"},"us-gov-west-1/s3":"s3dash","us-west-1/s3":"s3dash","us-west-2/s3":"s3dash","eu-west-1/s3":"s3dash","ap-southeast-1/s3":"s3dash","ap-southeast-2/s3":"s3dash","ap-northeast-1/s3":"s3dash","sa-east-1/s3":"s3dash","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},"globalGovCloud":{"endpoint":"{service}.us-gov.amazonaws.com"},"s3dash":{"endpoint":"{service}-{region}.amazonaws.com","signatureVersion":"s3"}}}

	/***/ }),
	/* 188 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		__webpack_require__(189);
		__webpack_require__(190);
		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 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) {
		 *       // 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 returns the amount of time to delay in milliseconds. The `base` option will be
		 *       ignored if this option is supplied.
		 *
		 * @!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. 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 supported in the
		 *       Node.js environment.
		 *     * **timeout** [Integer] &mdash; The number of milliseconds to wait before
		 *       giving up on a connection attempt. 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`.
		 */
		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 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 returns the amount of time to delay in milliseconds. The `base` option will be
		   *     ignored if this option is supplied.
		   * @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`.
		   */
		  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,
		    computeChecksums: true,
		    convertResponseTypes: true,
		    correctClockSkew: false,
		    customUserAgent: null,
		    dynamoDbCrc32: true,
		    systemClockOffset: 0,
		    signatureVersion: null,
		    signatureCache: true,
		    retryDelayOptions: {},
		    useAccelerateEndpoint: false
		  },

		  /**
		   * 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 && 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();


	/***/ }),
	/* 189 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);

		/**
		 * 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;
		    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
		 */
		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);


	/***/ }),
	/* 190 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);

		/**
		 * 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);
		    }
		  },

		  /**
		   * @!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) {
		    if (this.providers.length === 0) {
		      callback(new Error('No providers'));
		      return this;
		    }

		    var index = 0;
		    var providers = this.providers.slice(0);

		    function resolveNext(err, creds) {
		      if ((!err && creds) || index === providers.length) {
		        callback(err, creds);
		        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 this;
		  }
		});

		/**
		 * 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 () {
		 *     // if AWS_CONTAINER_CREDENTIALS_RELATIVE_URI is set
		 *       return new AWS.ECSCredentials();
		 *     // else
		 *       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);


	/***/ }),
	/* 191 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		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 '';
		  }

		});

		/**
		 * 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;
		};


	/***/ }),
	/* 192 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);

		/**
		 * @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
		 *   @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) {
		    if (this._events[eventName]) {
		      this._events[eventName].push(listener);
		    } else {
		      this._events[eventName] = [listener];
		    }
		    return this;
		  },

		  /**
		   * @api private
		   */
		  onAsync: function onAsync(eventName, listener) {
		    listener._isAsync = true;
		    return this.on(eventName, listener);
		  },

		  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) {
		    this[name] = callback;
		    this.addListener(eventName, callback);
		    return this;
		  },

		  /**
		   * @api private
		   */
		  addNamedAsyncListener: function addNamedAsyncListener(name, eventName, callback) {
		    callback._isAsync = true;
		    return this.addNamedListener(name, eventName, callback);
		  },

		  /**
		   * 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;

		module.exports = AWS.SequentialExecutor;


	/***/ }),
	/* 193 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var SequentialExecutor = __webpack_require__(192);
		/**
		 * 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) 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'});
		        }
		        done();
		      });
		    });

		    add('VALIDATE_REGION', 'validate', function VALIDATE_REGION(req) {
		      if (!req.service.config.region && !req.service.isGlobalEndpoint) {
		        req.response.error = AWS.util.error(new Error(),
		          {code: 'ConfigError', message: 'Missing 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) 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);
		      if (req.httpRequest.headers['Content-Length'] === undefined
		          && authtype.indexOf('unsigned-body') === -1) {
		        var length = AWS.util.string.byteLength(req.httpRequest.body);
		        req.httpRequest.headers['Content-Length'] = length;
		      }
		    });

		    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;
		      }
		    });

		    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) return done(); // none

		      service.config.getCredentials(function (err, credentials) {
		        if (err) {
		          req.response.error = err;
		          return done();
		        }

		        try {
		          var date = AWS.util.date.getDate();
		          var SignerClass = service.getSignerClass(req);
		          var signer = new SignerClass(req.httpRequest,
		            service.api.signingName || service.api.endpointPrefix,
		            {
		              signatureCache: service.config.signatureCache,
		              operation: operation
		            });
		          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;

		        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
		              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) {
		            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 = (AWS.util.date.getDate() - 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 = new AWS.util.Buffer('');
		      resp.httpResponse.buffers = [];
		      resp.httpResponse.numBytes = 0;
		      var dateHeader = headers.date || headers.Date;
		      if (dateHeader) {
		        var serverTime = Date.parse(dateHeader);
		        if (resp.request.service.config.correctClockSkew
		            && AWS.util.isClockSkewed(serverTime)) {
		          AWS.util.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(new AWS.util.Buffer(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
		          && AWS.config.isClockSkewed) {
		        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) || 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;
		        }
		      }

		      if (willRetry) {
		        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) {
		      if (err.code === 'NetworkingError' && err.errno === 'ENOTFOUND') {
		        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 buildMessage() {
		        var time = AWS.util.date.getDate().getTime();
		        var delta = (time - req.startTime.getTime()) / 1000;
		        var ansi = logger.isTTY ? true : false;
		        var status = resp.httpResponse.statusCode;
		        var params = __webpack_require__(194).inspect(req.params, 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__(11);
		    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__(18);
		    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__(19);
		    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__(20);
		    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__(14);
		    add('BUILD', 'build', svc.buildRequest);
		    add('EXTRACT_DATA', 'extractData', svc.extractData);
		    add('EXTRACT_ERROR', 'extractError', svc.extractError);
		  })
		};


	/***/ }),
	/* 194 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(global, process) {// 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 formatRegExp = /%[sdj%]/g;
		exports.format = function(f) {
		  if (!isString(f)) {
		    var objects = [];
		    for (var i = 0; i < arguments.length; i++) {
		      objects.push(inspect(arguments[i]));
		    }
		    return objects.join(' ');
		  }

		  var i = 1;
		  var args = arguments;
		  var len = args.length;
		  var str = String(f).replace(formatRegExp, function(x) {
		    if (x === '%%') return '%';
		    if (i >= len) return x;
		    switch (x) {
		      case '%s': return String(args[i++]);
		      case '%d': return Number(args[i++]);
		      case '%j':
		        try {
		          return JSON.stringify(args[i++]);
		        } catch (_) {
		          return '[Circular]';
		        }
		      default:
		        return x;
		    }
		  });
		  for (var x = args[i]; i < len; x = args[++i]) {
		    if (isNull(x) || !isObject(x)) {
		      str += ' ' + x;
		    } else {
		      str += ' ' + inspect(x);
		    }
		  }
		  return str;
		};


		// Mark that a method should not be used.
		// Returns a modified function which warns once by default.
		// If --no-deprecation is set, then it is a no-op.
		exports.deprecate = function(fn, msg) {
		  // Allow for deprecating things in the process of starting up.
		  if (isUndefined(global.process)) {
		    return function() {
		      return exports.deprecate(fn, msg).apply(this, arguments);
		    };
		  }

		  if (process.noDeprecation === true) {
		    return fn;
		  }

		  var warned = false;
		  function deprecated() {
		    if (!warned) {
		      if (process.throwDeprecation) {
		        throw new Error(msg);
		      } else if (process.traceDeprecation) {
		        console.trace(msg);
		      } else {
		        console.error(msg);
		      }
		      warned = true;
		    }
		    return fn.apply(this, arguments);
		  }

		  return deprecated;
		};


		var debugs = {};
		var debugEnviron;
		exports.debuglog = function(set) {
		  if (isUndefined(debugEnviron))
		    debugEnviron = process.env.NODE_DEBUG || '';
		  set = set.toUpperCase();
		  if (!debugs[set]) {
		    if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) {
		      var pid = process.pid;
		      debugs[set] = function() {
		        var msg = exports.format.apply(exports, arguments);
		        console.error('%s %d: %s', set, pid, msg);
		      };
		    } else {
		      debugs[set] = function() {};
		    }
		  }
		  return debugs[set];
		};


		/**
		 * Echos the value of a value. Trys to print the value out
		 * in the best way possible given the different types.
		 *
		 * @param {Object} obj The object to print out.
		 * @param {Object} opts Optional options object that alters the output.
		 */
		/* legacy: obj, showHidden, depth, colors*/
		function inspect(obj, opts) {
		  // default options
		  var ctx = {
		    seen: [],
		    stylize: stylizeNoColor
		  };
		  // legacy...
		  if (arguments.length >= 3) ctx.depth = arguments[2];
		  if (arguments.length >= 4) ctx.colors = arguments[3];
		  if (isBoolean(opts)) {
		    // legacy...
		    ctx.showHidden = opts;
		  } else if (opts) {
		    // got an "options" object
		    exports._extend(ctx, opts);
		  }
		  // set default options
		  if (isUndefined(ctx.showHidden)) ctx.showHidden = false;
		  if (isUndefined(ctx.depth)) ctx.depth = 2;
		  if (isUndefined(ctx.colors)) ctx.colors = false;
		  if (isUndefined(ctx.customInspect)) ctx.customInspect = true;
		  if (ctx.colors) ctx.stylize = stylizeWithColor;
		  return formatValue(ctx, obj, ctx.depth);
		}
		exports.inspect = inspect;


		// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics
		inspect.colors = {
		  'bold' : [1, 22],
		  'italic' : [3, 23],
		  'underline' : [4, 24],
		  'inverse' : [7, 27],
		  'white' : [37, 39],
		  'grey' : [90, 39],
		  'black' : [30, 39],
		  'blue' : [34, 39],
		  'cyan' : [36, 39],
		  'green' : [32, 39],
		  'magenta' : [35, 39],
		  'red' : [31, 39],
		  'yellow' : [33, 39]
		};

		// Don't use 'blue' not visible on cmd.exe
		inspect.styles = {
		  'special': 'cyan',
		  'number': 'yellow',
		  'boolean': 'yellow',
		  'undefined': 'grey',
		  'null': 'bold',
		  'string': 'green',
		  'date': 'magenta',
		  // "name": intentionally not styling
		  'regexp': 'red'
		};


		function stylizeWithColor(str, styleType) {
		  var style = inspect.styles[styleType];

		  if (style) {
		    return '\u001b[' + inspect.colors[style][0] + 'm' + str +
		           '\u001b[' + inspect.colors[style][1] + 'm';
		  } else {
		    return str;
		  }
		}


		function stylizeNoColor(str, styleType) {
		  return str;
		}


		function arrayToHash(array) {
		  var hash = {};

		  array.forEach(function(val, idx) {
		    hash[val] = true;
		  });

		  return hash;
		}


		function formatValue(ctx, value, recurseTimes) {
		  // Provide a hook for user-specified inspect functions.
		  // Check that value is an object with an inspect function on it
		  if (ctx.customInspect &&
		      value &&
		      isFunction(value.inspect) &&
		      // Filter out the util module, it's inspect function is special
		      value.inspect !== exports.inspect &&
		      // Also filter out any prototype objects using the circular check.
		      !(value.constructor && value.constructor.prototype === value)) {
		    var ret = value.inspect(recurseTimes, ctx);
		    if (!isString(ret)) {
		      ret = formatValue(ctx, ret, recurseTimes);
		    }
		    return ret;
		  }

		  // Primitive types cannot have properties
		  var primitive = formatPrimitive(ctx, value);
		  if (primitive) {
		    return primitive;
		  }

		  // Look up the keys of the object.
		  var keys = Object.keys(value);
		  var visibleKeys = arrayToHash(keys);

		  if (ctx.showHidden) {
		    keys = Object.getOwnPropertyNames(value);
		  }

		  // IE doesn't make error fields non-enumerable
		  // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx
		  if (isError(value)
		      && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {
		    return formatError(value);
		  }

		  // Some type of object without properties can be shortcutted.
		  if (keys.length === 0) {
		    if (isFunction(value)) {
		      var name = value.name ? ': ' + value.name : '';
		      return ctx.stylize('[Function' + name + ']', 'special');
		    }
		    if (isRegExp(value)) {
		      return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
		    }
		    if (isDate(value)) {
		      return ctx.stylize(Date.prototype.toString.call(value), 'date');
		    }
		    if (isError(value)) {
		      return formatError(value);
		    }
		  }

		  var base = '', array = false, braces = ['{', '}'];

		  // Make Array say that they are Array
		  if (isArray(value)) {
		    array = true;
		    braces = ['[', ']'];
		  }

		  // Make functions say that they are functions
		  if (isFunction(value)) {
		    var n = value.name ? ': ' + value.name : '';
		    base = ' [Function' + n + ']';
		  }

		  // Make RegExps say that they are RegExps
		  if (isRegExp(value)) {
		    base = ' ' + RegExp.prototype.toString.call(value);
		  }

		  // Make dates with properties first say the date
		  if (isDate(value)) {
		    base = ' ' + Date.prototype.toUTCString.call(value);
		  }

		  // Make error with message first say the error
		  if (isError(value)) {
		    base = ' ' + formatError(value);
		  }

		  if (keys.length === 0 && (!array || value.length == 0)) {
		    return braces[0] + base + braces[1];
		  }

		  if (recurseTimes < 0) {
		    if (isRegExp(value)) {
		      return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
		    } else {
		      return ctx.stylize('[Object]', 'special');
		    }
		  }

		  ctx.seen.push(value);

		  var output;
		  if (array) {
		    output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);
		  } else {
		    output = keys.map(function(key) {
		      return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);
		    });
		  }

		  ctx.seen.pop();

		  return reduceToSingleString(output, base, braces);
		}


		function formatPrimitive(ctx, value) {
		  if (isUndefined(value))
		    return ctx.stylize('undefined', 'undefined');
		  if (isString(value)) {
		    var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '')
		                                             .replace(/'/g, "\\'")
		                                             .replace(/\\"/g, '"') + '\'';
		    return ctx.stylize(simple, 'string');
		  }
		  if (isNumber(value))
		    return ctx.stylize('' + value, 'number');
		  if (isBoolean(value))
		    return ctx.stylize('' + value, 'boolean');
		  // For some reason typeof null is "object", so special case here.
		  if (isNull(value))
		    return ctx.stylize('null', 'null');
		}


		function formatError(value) {
		  return '[' + Error.prototype.toString.call(value) + ']';
		}


		function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
		  var output = [];
		  for (var i = 0, l = value.length; i < l; ++i) {
		    if (hasOwnProperty(value, String(i))) {
		      output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
		          String(i), true));
		    } else {
		      output.push('');
		    }
		  }
		  keys.forEach(function(key) {
		    if (!key.match(/^\d+$/)) {
		      output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
		          key, true));
		    }
		  });
		  return output;
		}


		function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {
		  var name, str, desc;
		  desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };
		  if (desc.get) {
		    if (desc.set) {
		      str = ctx.stylize('[Getter/Setter]', 'special');
		    } else {
		      str = ctx.stylize('[Getter]', 'special');
		    }
		  } else {
		    if (desc.set) {
		      str = ctx.stylize('[Setter]', 'special');
		    }
		  }
		  if (!hasOwnProperty(visibleKeys, key)) {
		    name = '[' + key + ']';
		  }
		  if (!str) {
		    if (ctx.seen.indexOf(desc.value) < 0) {
		      if (isNull(recurseTimes)) {
		        str = formatValue(ctx, desc.value, null);
		      } else {
		        str = formatValue(ctx, desc.value, recurseTimes - 1);
		      }
		      if (str.indexOf('\n') > -1) {
		        if (array) {
		          str = str.split('\n').map(function(line) {
		            return '  ' + line;
		          }).join('\n').substr(2);
		        } else {
		          str = '\n' + str.split('\n').map(function(line) {
		            return '   ' + line;
		          }).join('\n');
		        }
		      }
		    } else {
		      str = ctx.stylize('[Circular]', 'special');
		    }
		  }
		  if (isUndefined(name)) {
		    if (array && key.match(/^\d+$/)) {
		      return str;
		    }
		    name = JSON.stringify('' + key);
		    if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) {
		      name = name.substr(1, name.length - 2);
		      name = ctx.stylize(name, 'name');
		    } else {
		      name = name.replace(/'/g, "\\'")
		                 .replace(/\\"/g, '"')
		                 .replace(/(^"|"$)/g, "'");
		      name = ctx.stylize(name, 'string');
		    }
		  }

		  return name + ': ' + str;
		}


		function reduceToSingleString(output, base, braces) {
		  var numLinesEst = 0;
		  var length = output.reduce(function(prev, cur) {
		    numLinesEst++;
		    if (cur.indexOf('\n') >= 0) numLinesEst++;
		    return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1;
		  }, 0);

		  if (length > 60) {
		    return braces[0] +
		           (base === '' ? '' : base + '\n ') +
		           ' ' +
		           output.join(',\n  ') +
		           ' ' +
		           braces[1];
		  }

		  return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];
		}


		// NOTE: These type checking functions intentionally don't use `instanceof`
		// because it is fragile and can be easily faked with `Object.create()`.
		function isArray(ar) {
		  return Array.isArray(ar);
		}
		exports.isArray = isArray;

		function isBoolean(arg) {
		  return typeof arg === 'boolean';
		}
		exports.isBoolean = isBoolean;

		function isNull(arg) {
		  return arg === null;
		}
		exports.isNull = isNull;

		function isNullOrUndefined(arg) {
		  return arg == null;
		}
		exports.isNullOrUndefined = isNullOrUndefined;

		function isNumber(arg) {
		  return typeof arg === 'number';
		}
		exports.isNumber = isNumber;

		function isString(arg) {
		  return typeof arg === 'string';
		}
		exports.isString = isString;

		function isSymbol(arg) {
		  return typeof arg === 'symbol';
		}
		exports.isSymbol = isSymbol;

		function isUndefined(arg) {
		  return arg === void 0;
		}
		exports.isUndefined = isUndefined;

		function isRegExp(re) {
		  return isObject(re) && objectToString(re) === '[object RegExp]';
		}
		exports.isRegExp = isRegExp;

		function isObject(arg) {
		  return typeof arg === 'object' && arg !== null;
		}
		exports.isObject = isObject;

		function isDate(d) {
		  return isObject(d) && objectToString(d) === '[object Date]';
		}
		exports.isDate = isDate;

		function isError(e) {
		  return isObject(e) &&
		      (objectToString(e) === '[object Error]' || e instanceof Error);
		}
		exports.isError = isError;

		function isFunction(arg) {
		  return typeof arg === 'function';
		}
		exports.isFunction = isFunction;

		function isPrimitive(arg) {
		  return arg === null ||
		         typeof arg === 'boolean' ||
		         typeof arg === 'number' ||
		         typeof arg === 'string' ||
		         typeof arg === 'symbol' ||  // ES6 symbol
		         typeof arg === 'undefined';
		}
		exports.isPrimitive = isPrimitive;

		exports.isBuffer = __webpack_require__(195);

		function objectToString(o) {
		  return Object.prototype.toString.call(o);
		}


		function pad(n) {
		  return n < 10 ? '0' + n.toString(10) : n.toString(10);
		}


		var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',
		              'Oct', 'Nov', 'Dec'];

		// 26 Feb 16:19:34
		function timestamp() {
		  var d = new Date();
		  var time = [pad(d.getHours()),
		              pad(d.getMinutes()),
		              pad(d.getSeconds())].join(':');
		  return [d.getDate(), months[d.getMonth()], time].join(' ');
		}


		// log is just a thin wrapper to console.log that prepends a timestamp
		exports.log = function() {
		  console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));
		};


		/**
		 * Inherit the prototype methods from one constructor into another.
		 *
		 * The Function.prototype.inherits from lang.js rewritten as a standalone
		 * function (not on Function.prototype). NOTE: If this file is to be loaded
		 * during bootstrapping this function needs to be rewritten using some native
		 * functions as prototype setup using normal JavaScript does not work as
		 * expected during bootstrapping (see mirror.js in r114903).
		 *
		 * @param {function} ctor Constructor function which needs to inherit the
		 *     prototype.
		 * @param {function} superCtor Constructor function to inherit prototype from.
		 */
		exports.inherits = __webpack_require__(196);

		exports._extend = function(origin, add) {
		  // Don't do anything if add isn't an object
		  if (!add || !isObject(add)) return origin;

		  var keys = Object.keys(add);
		  var i = keys.length;
		  while (i--) {
		    origin[keys[i]] = add[keys[i]];
		  }
		  return origin;
		};

		function hasOwnProperty(obj, prop) {
		  return Object.prototype.hasOwnProperty.call(obj, prop);
		}

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(3)))

	/***/ }),
	/* 195 */
	/***/ (function(module, exports) {

		module.exports = function isBuffer(arg) {
		  return arg && typeof arg === 'object'
		    && typeof arg.copy === 'function'
		    && typeof arg.fill === 'function'
		    && typeof arg.readUInt8 === 'function';
		}

	/***/ }),
	/* 196 */
	/***/ (function(module, exports) {

		if (typeof Object.create === 'function') {
		  // implementation from standard node.js 'util' module
		  module.exports = function inherits(ctor, 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) {
		    ctor.super_ = superCtor
		    var TempCtor = function () {}
		    TempCtor.prototype = superCtor.prototype
		    ctor.prototype = new TempCtor()
		    ctor.prototype.constructor = ctor
		  }
		}


	/***/ }),
	/* 197 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(process) {var AWS = __webpack_require__(1);
		var AcceptorStateMachine = __webpack_require__(198);
		var inherit = AWS.util.inherit;
		var domain = AWS.util.domain;
		var jmespath = __webpack_require__(199);

		/**
		 * @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(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;

		    // global endpoints sign as us-east-1
		    if (service.isGlobalEndpoint) 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 = AWS.util.date.getDate();

		    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: new Buffer(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.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 enumberable
		          // 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);

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3)))

	/***/ }),
	/* 198 */
	/***/ (function(module, exports) {

		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;
		};

		module.exports = AcceptorStateMachine;


	/***/ }),
	/* 199 */
	/***/ (function(module, exports, __webpack_require__) {

		(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 ? this.jmespath = {} : exports);


	/***/ }),
	/* 200 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var inherit = AWS.util.inherit;
		var jmespath = __webpack_require__(199);

		/**
		 * 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;
		  }

		});


	/***/ }),
	/* 201 */
	/***/ (function(module, 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__(1);
		var inherit = AWS.util.inherit;
		var jmespath = __webpack_require__(199);

		/**
		 * @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]);
		  }
		});


	/***/ }),
	/* 202 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);

		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 '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__(203);
		__webpack_require__(204);
		__webpack_require__(205);
		__webpack_require__(206);
		__webpack_require__(208);
		__webpack_require__(209);


	/***/ }),
	/* 203 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		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');
		  }

		});

		module.exports = AWS.Signers.V2;


	/***/ }),
	/* 204 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		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'));
		  }

		});

		module.exports = AWS.Signers.V3;


	/***/ }),
	/* 205 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var inherit = AWS.util.inherit;

		__webpack_require__(204);

		/**
		 * @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'];
		  }
		});

		module.exports = AWS.Signers.V3Https;


	/***/ }),
	/* 206 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		var v4Credentials = __webpack_require__(207);
		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;
		  },

		  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') 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;
		  }

		});

		module.exports = AWS.Signers.V4;


	/***/ }),
	/* 207 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);

		/**
		 * @api private
		 */
		var cachedSecret = {};

		/**
		 * @api private
		 */
		var cacheQueue = [];

		/**
		 * @api private
		 */
		var maxCacheEntries = 50;

		/**
		 * @api private
		 */
		var v4Identifier = 'aws4_request';

		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 = [];
		  }
		};


	/***/ }),
	/* 208 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		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');
		  }
		});

		module.exports = AWS.Signers.S3;


	/***/ }),
	/* 209 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);
		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) {
		    request.httpRequest.headers[expiresHeader] = parseInt(
		      AWS.util.date.unixTimestamp() + 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));
		  }

		  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];

		  var auth = queryParams['Authorization'].split(' ');
		  if (auth[0] === 'AWS') {
		    auth = auth[1].split(':');
		    queryParams['AWSAccessKeyId'] = auth[0];
		    queryParams['Signature'] = auth[1];
		  } 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'];
		  }
		  delete queryParams['Authorization'];
		  delete queryParams['Host'];

		  // 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);
		    }
		  }
		});

		module.exports = AWS.Signers.Presign;


	/***/ }),
	/* 210 */
	/***/ (function(module, exports, __webpack_require__) {

		var AWS = __webpack_require__(1);

		/**
		 * @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 {
		        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);
		    }
		  },

		  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;
		    }

		    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');
		  }
		});


	/***/ })
	/******/ ])
	});
	;

/***/ }),
/* 5 */
/***/ (function(module, exports, __webpack_require__) {

	var Buffer = __webpack_require__(6).Buffer
	var sha = __webpack_require__(10)
	var sha256 = __webpack_require__(12)
	var rng = __webpack_require__(13)
	var md5 = __webpack_require__(14)

	var algorithms = {
	  sha1: sha,
	  sha256: sha256,
	  md5: md5
	}

	var blocksize = 64
	var zeroBuffer = new Buffer(blocksize); zeroBuffer.fill(0)
	function hmac(fn, key, data) {
	  if(!Buffer.isBuffer(key)) key = new Buffer(key)
	  if(!Buffer.isBuffer(data)) data = new Buffer(data)

	  if(key.length > blocksize) {
	    key = fn(key)
	  } else if(key.length < blocksize) {
	    key = Buffer.concat([key, zeroBuffer], blocksize)
	  }

	  var ipad = new Buffer(blocksize), opad = new Buffer(blocksize)
	  for(var i = 0; i < blocksize; i++) {
	    ipad[i] = key[i] ^ 0x36
	    opad[i] = key[i] ^ 0x5C
	  }

	  var hash = fn(Buffer.concat([ipad, data]))
	  return fn(Buffer.concat([opad, hash]))
	}

	function hash(alg, key) {
	  alg = alg || 'sha1'
	  var fn = algorithms[alg]
	  var bufs = []
	  var length = 0
	  if(!fn) error('algorithm:', alg, 'is not yet supported')
	  return {
	    update: function (data) {
	      if(!Buffer.isBuffer(data)) data = new Buffer(data)
	        
	      bufs.push(data)
	      length += data.length
	      return this
	    },
	    digest: function (enc) {
	      var buf = Buffer.concat(bufs)
	      var r = key ? hmac(fn, key, buf) : fn(buf)
	      bufs = null
	      return enc ? r.toString(enc) : r
	    }
	  }
	}

	function error () {
	  var m = [].slice.call(arguments).join(' ')
	  throw new Error([
	    m,
	    'we accept pull requests',
	    'http://github.com/dominictarr/crypto-browserify'
	    ].join('\n'))
	}

	exports.createHash = function (alg) { return hash(alg) }
	exports.createHmac = function (alg, key) { return hash(alg, key) }
	exports.randomBytes = function(size, callback) {
	  if (callback && callback.call) {
	    try {
	      callback.call(this, undefined, new Buffer(rng(size)))
	    } catch (err) { callback(err) }
	  } else {
	    return new Buffer(rng(size))
	  }
	}

	function each(a, f) {
	  for(var i in a)
	    f(a[i], i)
	}

	// the least I can do is make error messages for the rest of the node.js/crypto api.
	each(['createCredentials'
	, 'createCipher'
	, 'createCipheriv'
	, 'createDecipher'
	, 'createDecipheriv'
	, 'createSign'
	, 'createVerify'
	, 'createDiffieHellman'
	, 'pbkdf2'], function (name) {
	  exports[name] = function () {
	    error('sorry,', name, 'is not implemented yet')
	  }
	})


/***/ }),
/* 6 */
/***/ (function(module, exports, __webpack_require__) {

	/* WEBPACK VAR INJECTION */(function(global) {/*!
	 * The buffer module from node.js, for the browser.
	 *
	 * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
	 * @license  MIT
	 */
	/* eslint-disable no-proto */

	'use strict'

	var base64 = __webpack_require__(7)
	var ieee754 = __webpack_require__(8)
	var isArray = __webpack_require__(9)

	exports.Buffer = Buffer
	exports.SlowBuffer = SlowBuffer
	exports.INSPECT_MAX_BYTES = 50

	/**
	 * If `Buffer.TYPED_ARRAY_SUPPORT`:
	 *   === true    Use Uint8Array implementation (fastest)
	 *   === false   Use Object implementation (most compatible, even IE6)
	 *
	 * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,
	 * Opera 11.6+, iOS 4.2+.
	 *
	 * Due to various browser bugs, sometimes the Object implementation will be used even
	 * when the browser supports typed arrays.
	 *
	 * Note:
	 *
	 *   - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,
	 *     See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.
	 *
	 *   - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.
	 *
	 *   - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of
	 *     incorrect length in some situations.

	 * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they
	 * get the Object implementation, which is slower but behaves correctly.
	 */
	Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined
	  ? global.TYPED_ARRAY_SUPPORT
	  : typedArraySupport()

	/*
	 * Export kMaxLength after typed array support is determined.
	 */
	exports.kMaxLength = kMaxLength()

	function typedArraySupport () {
	  try {
	    var arr = new Uint8Array(1)
	    arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}
	    return arr.foo() === 42 && // typed array instances can be augmented
	        typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`
	        arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`
	  } catch (e) {
	    return false
	  }
	}

	function kMaxLength () {
	  return Buffer.TYPED_ARRAY_SUPPORT
	    ? 0x7fffffff
	    : 0x3fffffff
	}

	function createBuffer (that, length) {
	  if (kMaxLength() < length) {
	    throw new RangeError('Invalid typed array length')
	  }
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    // Return an augmented `Uint8Array` instance, for best performance
	    that = new Uint8Array(length)
	    that.__proto__ = Buffer.prototype
	  } else {
	    // Fallback: Return an object instance of the Buffer class
	    if (that === null) {
	      that = new Buffer(length)
	    }
	    that.length = length
	  }

	  return that
	}

	/**
	 * The Buffer constructor returns instances of `Uint8Array` that have their
	 * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of
	 * `Uint8Array`, so the returned instances will have all the node `Buffer` methods
	 * and the `Uint8Array` methods. Square bracket notation works as expected -- it
	 * returns a single octet.
	 *
	 * The `Uint8Array` prototype remains unmodified.
	 */

	function Buffer (arg, encodingOrOffset, length) {
	  if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {
	    return new Buffer(arg, encodingOrOffset, length)
	  }

	  // Common case.
	  if (typeof arg === 'number') {
	    if (typeof encodingOrOffset === 'string') {
	      throw new Error(
	        'If encoding is specified then the first argument must be a string'
	      )
	    }
	    return allocUnsafe(this, arg)
	  }
	  return from(this, arg, encodingOrOffset, length)
	}

	Buffer.poolSize = 8192 // not used by this implementation

	// TODO: Legacy, not needed anymore. Remove in next major version.
	Buffer._augment = function (arr) {
	  arr.__proto__ = Buffer.prototype
	  return arr
	}

	function from (that, value, encodingOrOffset, length) {
	  if (typeof value === 'number') {
	    throw new TypeError('"value" argument must not be a number')
	  }

	  if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {
	    return fromArrayBuffer(that, value, encodingOrOffset, length)
	  }

	  if (typeof value === 'string') {
	    return fromString(that, value, encodingOrOffset)
	  }

	  return fromObject(that, value)
	}

	/**
	 * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError
	 * if value is a number.
	 * Buffer.from(str[, encoding])
	 * Buffer.from(array)
	 * Buffer.from(buffer)
	 * Buffer.from(arrayBuffer[, byteOffset[, length]])
	 **/
	Buffer.from = function (value, encodingOrOffset, length) {
	  return from(null, value, encodingOrOffset, length)
	}

	if (Buffer.TYPED_ARRAY_SUPPORT) {
	  Buffer.prototype.__proto__ = Uint8Array.prototype
	  Buffer.__proto__ = Uint8Array
	  if (typeof Symbol !== 'undefined' && Symbol.species &&
	      Buffer[Symbol.species] === Buffer) {
	    // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
	    Object.defineProperty(Buffer, Symbol.species, {
	      value: null,
	      configurable: true
	    })
	  }
	}

	function assertSize (size) {
	  if (typeof size !== 'number') {
	    throw new TypeError('"size" argument must be a number')
	  } else if (size < 0) {
	    throw new RangeError('"size" argument must not be negative')
	  }
	}

	function alloc (that, size, fill, encoding) {
	  assertSize(size)
	  if (size <= 0) {
	    return createBuffer(that, size)
	  }
	  if (fill !== undefined) {
	    // Only pay attention to encoding if it's a string. This
	    // prevents accidentally sending in a number that would
	    // be interpretted as a start offset.
	    return typeof encoding === 'string'
	      ? createBuffer(that, size).fill(fill, encoding)
	      : createBuffer(that, size).fill(fill)
	  }
	  return createBuffer(that, size)
	}

	/**
	 * Creates a new filled Buffer instance.
	 * alloc(size[, fill[, encoding]])
	 **/
	Buffer.alloc = function (size, fill, encoding) {
	  return alloc(null, size, fill, encoding)
	}

	function allocUnsafe (that, size) {
	  assertSize(size)
	  that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)
	  if (!Buffer.TYPED_ARRAY_SUPPORT) {
	    for (var i = 0; i < size; ++i) {
	      that[i] = 0
	    }
	  }
	  return that
	}

	/**
	 * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.
	 * */
	Buffer.allocUnsafe = function (size) {
	  return allocUnsafe(null, size)
	}
	/**
	 * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.
	 */
	Buffer.allocUnsafeSlow = function (size) {
	  return allocUnsafe(null, size)
	}

	function fromString (that, string, encoding) {
	  if (typeof encoding !== 'string' || encoding === '') {
	    encoding = 'utf8'
	  }

	  if (!Buffer.isEncoding(encoding)) {
	    throw new TypeError('"encoding" must be a valid string encoding')
	  }

	  var length = byteLength(string, encoding) | 0
	  that = createBuffer(that, length)

	  var actual = that.write(string, encoding)

	  if (actual !== length) {
	    // Writing a hex string, for example, that contains invalid characters will
	    // cause everything after the first invalid character to be ignored. (e.g.
	    // 'abxxcd' will be treated as 'ab')
	    that = that.slice(0, actual)
	  }

	  return that
	}

	function fromArrayLike (that, array) {
	  var length = array.length < 0 ? 0 : checked(array.length) | 0
	  that = createBuffer(that, length)
	  for (var i = 0; i < length; i += 1) {
	    that[i] = array[i] & 255
	  }
	  return that
	}

	function fromArrayBuffer (that, array, byteOffset, length) {
	  array.byteLength // this throws if `array` is not a valid ArrayBuffer

	  if (byteOffset < 0 || array.byteLength < byteOffset) {
	    throw new RangeError('\'offset\' is out of bounds')
	  }

	  if (array.byteLength < byteOffset + (length || 0)) {
	    throw new RangeError('\'length\' is out of bounds')
	  }

	  if (byteOffset === undefined && length === undefined) {
	    array = new Uint8Array(array)
	  } else if (length === undefined) {
	    array = new Uint8Array(array, byteOffset)
	  } else {
	    array = new Uint8Array(array, byteOffset, length)
	  }

	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    // Return an augmented `Uint8Array` instance, for best performance
	    that = array
	    that.__proto__ = Buffer.prototype
	  } else {
	    // Fallback: Return an object instance of the Buffer class
	    that = fromArrayLike(that, array)
	  }
	  return that
	}

	function fromObject (that, obj) {
	  if (Buffer.isBuffer(obj)) {
	    var len = checked(obj.length) | 0
	    that = createBuffer(that, len)

	    if (that.length === 0) {
	      return that
	    }

	    obj.copy(that, 0, 0, len)
	    return that
	  }

	  if (obj) {
	    if ((typeof ArrayBuffer !== 'undefined' &&
	        obj.buffer instanceof ArrayBuffer) || 'length' in obj) {
	      if (typeof obj.length !== 'number' || isnan(obj.length)) {
	        return createBuffer(that, 0)
	      }
	      return fromArrayLike(that, obj)
	    }

	    if (obj.type === 'Buffer' && isArray(obj.data)) {
	      return fromArrayLike(that, obj.data)
	    }
	  }

	  throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')
	}

	function checked (length) {
	  // Note: cannot use `length < kMaxLength()` here because that fails when
	  // length is NaN (which is otherwise coerced to zero.)
	  if (length >= kMaxLength()) {
	    throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
	                         'size: 0x' + kMaxLength().toString(16) + ' bytes')
	  }
	  return length | 0
	}

	function SlowBuffer (length) {
	  if (+length != length) { // eslint-disable-line eqeqeq
	    length = 0
	  }
	  return Buffer.alloc(+length)
	}

	Buffer.isBuffer = function isBuffer (b) {
	  return !!(b != null && b._isBuffer)
	}

	Buffer.compare = function compare (a, b) {
	  if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
	    throw new TypeError('Arguments must be Buffers')
	  }

	  if (a === b) return 0

	  var x = a.length
	  var y = b.length

	  for (var i = 0, len = Math.min(x, y); i < len; ++i) {
	    if (a[i] !== b[i]) {
	      x = a[i]
	      y = b[i]
	      break
	    }
	  }

	  if (x < y) return -1
	  if (y < x) return 1
	  return 0
	}

	Buffer.isEncoding = function isEncoding (encoding) {
	  switch (String(encoding).toLowerCase()) {
	    case 'hex':
	    case 'utf8':
	    case 'utf-8':
	    case 'ascii':
	    case 'latin1':
	    case 'binary':
	    case 'base64':
	    case 'ucs2':
	    case 'ucs-2':
	    case 'utf16le':
	    case 'utf-16le':
	      return true
	    default:
	      return false
	  }
	}

	Buffer.concat = function concat (list, length) {
	  if (!isArray(list)) {
	    throw new TypeError('"list" argument must be an Array of Buffers')
	  }

	  if (list.length === 0) {
	    return Buffer.alloc(0)
	  }

	  var i
	  if (length === undefined) {
	    length = 0
	    for (i = 0; i < list.length; ++i) {
	      length += list[i].length
	    }
	  }

	  var buffer = Buffer.allocUnsafe(length)
	  var pos = 0
	  for (i = 0; i < list.length; ++i) {
	    var buf = list[i]
	    if (!Buffer.isBuffer(buf)) {
	      throw new TypeError('"list" argument must be an Array of Buffers')
	    }
	    buf.copy(buffer, pos)
	    pos += buf.length
	  }
	  return buffer
	}

	function byteLength (string, encoding) {
	  if (Buffer.isBuffer(string)) {
	    return string.length
	  }
	  if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&
	      (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {
	    return string.byteLength
	  }
	  if (typeof string !== 'string') {
	    string = '' + string
	  }

	  var len = string.length
	  if (len === 0) return 0

	  // Use a for loop to avoid recursion
	  var loweredCase = false
	  for (;;) {
	    switch (encoding) {
	      case 'ascii':
	      case 'latin1':
	      case 'binary':
	        return len
	      case 'utf8':
	      case 'utf-8':
	      case undefined:
	        return utf8ToBytes(string).length
	      case 'ucs2':
	      case 'ucs-2':
	      case 'utf16le':
	      case 'utf-16le':
	        return len * 2
	      case 'hex':
	        return len >>> 1
	      case 'base64':
	        return base64ToBytes(string).length
	      default:
	        if (loweredCase) return utf8ToBytes(string).length // assume utf8
	        encoding = ('' + encoding).toLowerCase()
	        loweredCase = true
	    }
	  }
	}
	Buffer.byteLength = byteLength

	function slowToString (encoding, start, end) {
	  var loweredCase = false

	  // No need to verify that "this.length <= MAX_UINT32" since it's a read-only
	  // property of a typed array.

	  // This behaves neither like String nor Uint8Array in that we set start/end
	  // to their upper/lower bounds if the value passed is out of range.
	  // undefined is handled specially as per ECMA-262 6th Edition,
	  // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
	  if (start === undefined || start < 0) {
	    start = 0
	  }
	  // Return early if start > this.length. Done here to prevent potential uint32
	  // coercion fail below.
	  if (start > this.length) {
	    return ''
	  }

	  if (end === undefined || end > this.length) {
	    end = this.length
	  }

	  if (end <= 0) {
	    return ''
	  }

	  // Force coersion to uint32. This will also coerce falsey/NaN values to 0.
	  end >>>= 0
	  start >>>= 0

	  if (end <= start) {
	    return ''
	  }

	  if (!encoding) encoding = 'utf8'

	  while (true) {
	    switch (encoding) {
	      case 'hex':
	        return hexSlice(this, start, end)

	      case 'utf8':
	      case 'utf-8':
	        return utf8Slice(this, start, end)

	      case 'ascii':
	        return asciiSlice(this, start, end)

	      case 'latin1':
	      case 'binary':
	        return latin1Slice(this, start, end)

	      case 'base64':
	        return base64Slice(this, start, end)

	      case 'ucs2':
	      case 'ucs-2':
	      case 'utf16le':
	      case 'utf-16le':
	        return utf16leSlice(this, start, end)

	      default:
	        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
	        encoding = (encoding + '').toLowerCase()
	        loweredCase = true
	    }
	  }
	}

	// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect
	// Buffer instances.
	Buffer.prototype._isBuffer = true

	function swap (b, n, m) {
	  var i = b[n]
	  b[n] = b[m]
	  b[m] = i
	}

	Buffer.prototype.swap16 = function swap16 () {
	  var len = this.length
	  if (len % 2 !== 0) {
	    throw new RangeError('Buffer size must be a multiple of 16-bits')
	  }
	  for (var i = 0; i < len; i += 2) {
	    swap(this, i, i + 1)
	  }
	  return this
	}

	Buffer.prototype.swap32 = function swap32 () {
	  var len = this.length
	  if (len % 4 !== 0) {
	    throw new RangeError('Buffer size must be a multiple of 32-bits')
	  }
	  for (var i = 0; i < len; i += 4) {
	    swap(this, i, i + 3)
	    swap(this, i + 1, i + 2)
	  }
	  return this
	}

	Buffer.prototype.swap64 = function swap64 () {
	  var len = this.length
	  if (len % 8 !== 0) {
	    throw new RangeError('Buffer size must be a multiple of 64-bits')
	  }
	  for (var i = 0; i < len; i += 8) {
	    swap(this, i, i + 7)
	    swap(this, i + 1, i + 6)
	    swap(this, i + 2, i + 5)
	    swap(this, i + 3, i + 4)
	  }
	  return this
	}

	Buffer.prototype.toString = function toString () {
	  var length = this.length | 0
	  if (length === 0) return ''
	  if (arguments.length === 0) return utf8Slice(this, 0, length)
	  return slowToString.apply(this, arguments)
	}

	Buffer.prototype.equals = function equals (b) {
	  if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')
	  if (this === b) return true
	  return Buffer.compare(this, b) === 0
	}

	Buffer.prototype.inspect = function inspect () {
	  var str = ''
	  var max = exports.INSPECT_MAX_BYTES
	  if (this.length > 0) {
	    str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')
	    if (this.length > max) str += ' ... '
	  }
	  return '<Buffer ' + str + '>'
	}

	Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {
	  if (!Buffer.isBuffer(target)) {
	    throw new TypeError('Argument must be a Buffer')
	  }

	  if (start === undefined) {
	    start = 0
	  }
	  if (end === undefined) {
	    end = target ? target.length : 0
	  }
	  if (thisStart === undefined) {
	    thisStart = 0
	  }
	  if (thisEnd === undefined) {
	    thisEnd = this.length
	  }

	  if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
	    throw new RangeError('out of range index')
	  }

	  if (thisStart >= thisEnd && start >= end) {
	    return 0
	  }
	  if (thisStart >= thisEnd) {
	    return -1
	  }
	  if (start >= end) {
	    return 1
	  }

	  start >>>= 0
	  end >>>= 0
	  thisStart >>>= 0
	  thisEnd >>>= 0

	  if (this === target) return 0

	  var x = thisEnd - thisStart
	  var y = end - start
	  var len = Math.min(x, y)

	  var thisCopy = this.slice(thisStart, thisEnd)
	  var targetCopy = target.slice(start, end)

	  for (var i = 0; i < len; ++i) {
	    if (thisCopy[i] !== targetCopy[i]) {
	      x = thisCopy[i]
	      y = targetCopy[i]
	      break
	    }
	  }

	  if (x < y) return -1
	  if (y < x) return 1
	  return 0
	}

	// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
	// OR the last index of `val` in `buffer` at offset <= `byteOffset`.
	//
	// Arguments:
	// - buffer - a Buffer to search
	// - val - a string, Buffer, or number
	// - byteOffset - an index into `buffer`; will be clamped to an int32
	// - encoding - an optional encoding, relevant is val is a string
	// - dir - true for indexOf, false for lastIndexOf
	function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
	  // Empty buffer means no match
	  if (buffer.length === 0) return -1

	  // Normalize byteOffset
	  if (typeof byteOffset === 'string') {
	    encoding = byteOffset
	    byteOffset = 0
	  } else if (byteOffset > 0x7fffffff) {
	    byteOffset = 0x7fffffff
	  } else if (byteOffset < -0x80000000) {
	    byteOffset = -0x80000000
	  }
	  byteOffset = +byteOffset  // Coerce to Number.
	  if (isNaN(byteOffset)) {
	    // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
	    byteOffset = dir ? 0 : (buffer.length - 1)
	  }

	  // Normalize byteOffset: negative offsets start from the end of the buffer
	  if (byteOffset < 0) byteOffset = buffer.length + byteOffset
	  if (byteOffset >= buffer.length) {
	    if (dir) return -1
	    else byteOffset = buffer.length - 1
	  } else if (byteOffset < 0) {
	    if (dir) byteOffset = 0
	    else return -1
	  }

	  // Normalize val
	  if (typeof val === 'string') {
	    val = Buffer.from(val, encoding)
	  }

	  // Finally, search either indexOf (if dir is true) or lastIndexOf
	  if (Buffer.isBuffer(val)) {
	    // Special case: looking for empty string/buffer always fails
	    if (val.length === 0) {
	      return -1
	    }
	    return arrayIndexOf(buffer, val, byteOffset, encoding, dir)
	  } else if (typeof val === 'number') {
	    val = val & 0xFF // Search for a byte value [0-255]
	    if (Buffer.TYPED_ARRAY_SUPPORT &&
	        typeof Uint8Array.prototype.indexOf === 'function') {
	      if (dir) {
	        return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)
	      } else {
	        return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)
	      }
	    }
	    return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)
	  }

	  throw new TypeError('val must be string, number or Buffer')
	}

	function arrayIndexOf (arr, val, byteOffset, encoding, dir) {
	  var indexSize = 1
	  var arrLength = arr.length
	  var valLength = val.length

	  if (encoding !== undefined) {
	    encoding = String(encoding).toLowerCase()
	    if (encoding === 'ucs2' || encoding === 'ucs-2' ||
	        encoding === 'utf16le' || encoding === 'utf-16le') {
	      if (arr.length < 2 || val.length < 2) {
	        return -1
	      }
	      indexSize = 2
	      arrLength /= 2
	      valLength /= 2
	      byteOffset /= 2
	    }
	  }

	  function read (buf, i) {
	    if (indexSize === 1) {
	      return buf[i]
	    } else {
	      return buf.readUInt16BE(i * indexSize)
	    }
	  }

	  var i
	  if (dir) {
	    var foundIndex = -1
	    for (i = byteOffset; i < arrLength; i++) {
	      if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
	        if (foundIndex === -1) foundIndex = i
	        if (i - foundIndex + 1 === valLength) return foundIndex * indexSize
	      } else {
	        if (foundIndex !== -1) i -= i - foundIndex
	        foundIndex = -1
	      }
	    }
	  } else {
	    if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength
	    for (i = byteOffset; i >= 0; i--) {
	      var found = true
	      for (var j = 0; j < valLength; j++) {
	        if (read(arr, i + j) !== read(val, j)) {
	          found = false
	          break
	        }
	      }
	      if (found) return i
	    }
	  }

	  return -1
	}

	Buffer.prototype.includes = function includes (val, byteOffset, encoding) {
	  return this.indexOf(val, byteOffset, encoding) !== -1
	}

	Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {
	  return bidirectionalIndexOf(this, val, byteOffset, encoding, true)
	}

	Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {
	  return bidirectionalIndexOf(this, val, byteOffset, encoding, false)
	}

	function hexWrite (buf, string, offset, length) {
	  offset = Number(offset) || 0
	  var remaining = buf.length - offset
	  if (!length) {
	    length = remaining
	  } else {
	    length = Number(length)
	    if (length > remaining) {
	      length = remaining
	    }
	  }

	  // must be an even number of digits
	  var strLen = string.length
	  if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')

	  if (length > strLen / 2) {
	    length = strLen / 2
	  }
	  for (var i = 0; i < length; ++i) {
	    var parsed = parseInt(string.substr(i * 2, 2), 16)
	    if (isNaN(parsed)) return i
	    buf[offset + i] = parsed
	  }
	  return i
	}

	function utf8Write (buf, string, offset, length) {
	  return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)
	}

	function asciiWrite (buf, string, offset, length) {
	  return blitBuffer(asciiToBytes(string), buf, offset, length)
	}

	function latin1Write (buf, string, offset, length) {
	  return asciiWrite(buf, string, offset, length)
	}

	function base64Write (buf, string, offset, length) {
	  return blitBuffer(base64ToBytes(string), buf, offset, length)
	}

	function ucs2Write (buf, string, offset, length) {
	  return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)
	}

	Buffer.prototype.write = function write (string, offset, length, encoding) {
	  // Buffer#write(string)
	  if (offset === undefined) {
	    encoding = 'utf8'
	    length = this.length
	    offset = 0
	  // Buffer#write(string, encoding)
	  } else if (length === undefined && typeof offset === 'string') {
	    encoding = offset
	    length = this.length
	    offset = 0
	  // Buffer#write(string, offset[, length][, encoding])
	  } else if (isFinite(offset)) {
	    offset = offset | 0
	    if (isFinite(length)) {
	      length = length | 0
	      if (encoding === undefined) encoding = 'utf8'
	    } else {
	      encoding = length
	      length = undefined
	    }
	  // legacy write(string, encoding, offset, length) - remove in v0.13
	  } else {
	    throw new Error(
	      'Buffer.write(string, encoding, offset[, length]) is no longer supported'
	    )
	  }

	  var remaining = this.length - offset
	  if (length === undefined || length > remaining) length = remaining

	  if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {
	    throw new RangeError('Attempt to write outside buffer bounds')
	  }

	  if (!encoding) encoding = 'utf8'

	  var loweredCase = false
	  for (;;) {
	    switch (encoding) {
	      case 'hex':
	        return hexWrite(this, string, offset, length)

	      case 'utf8':
	      case 'utf-8':
	        return utf8Write(this, string, offset, length)

	      case 'ascii':
	        return asciiWrite(this, string, offset, length)

	      case 'latin1':
	      case 'binary':
	        return latin1Write(this, string, offset, length)

	      case 'base64':
	        // Warning: maxLength not taken into account in base64Write
	        return base64Write(this, string, offset, length)

	      case 'ucs2':
	      case 'ucs-2':
	      case 'utf16le':
	      case 'utf-16le':
	        return ucs2Write(this, string, offset, length)

	      default:
	        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
	        encoding = ('' + encoding).toLowerCase()
	        loweredCase = true
	    }
	  }
	}

	Buffer.prototype.toJSON = function toJSON () {
	  return {
	    type: 'Buffer',
	    data: Array.prototype.slice.call(this._arr || this, 0)
	  }
	}

	function base64Slice (buf, start, end) {
	  if (start === 0 && end === buf.length) {
	    return base64.fromByteArray(buf)
	  } else {
	    return base64.fromByteArray(buf.slice(start, end))
	  }
	}

	function utf8Slice (buf, start, end) {
	  end = Math.min(buf.length, end)
	  var res = []

	  var i = start
	  while (i < end) {
	    var firstByte = buf[i]
	    var codePoint = null
	    var bytesPerSequence = (firstByte > 0xEF) ? 4
	      : (firstByte > 0xDF) ? 3
	      : (firstByte > 0xBF) ? 2
	      : 1

	    if (i + bytesPerSequence <= end) {
	      var secondByte, thirdByte, fourthByte, tempCodePoint

	      switch (bytesPerSequence) {
	        case 1:
	          if (firstByte < 0x80) {
	            codePoint = firstByte
	          }
	          break
	        case 2:
	          secondByte = buf[i + 1]
	          if ((secondByte & 0xC0) === 0x80) {
	            tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)
	            if (tempCodePoint > 0x7F) {
	              codePoint = tempCodePoint
	            }
	          }
	          break
	        case 3:
	          secondByte = buf[i + 1]
	          thirdByte = buf[i + 2]
	          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {
	            tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)
	            if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {
	              codePoint = tempCodePoint
	            }
	          }
	          break
	        case 4:
	          secondByte = buf[i + 1]
	          thirdByte = buf[i + 2]
	          fourthByte = buf[i + 3]
	          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {
	            tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)
	            if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {
	              codePoint = tempCodePoint
	            }
	          }
	      }
	    }

	    if (codePoint === null) {
	      // we did not generate a valid codePoint so insert a
	      // replacement char (U+FFFD) and advance only 1 byte
	      codePoint = 0xFFFD
	      bytesPerSequence = 1
	    } else if (codePoint > 0xFFFF) {
	      // encode to utf16 (surrogate pair dance)
	      codePoint -= 0x10000
	      res.push(codePoint >>> 10 & 0x3FF | 0xD800)
	      codePoint = 0xDC00 | codePoint & 0x3FF
	    }

	    res.push(codePoint)
	    i += bytesPerSequence
	  }

	  return decodeCodePointsArray(res)
	}

	// Based on http://stackoverflow.com/a/22747272/680742, the browser with
	// the lowest limit is Chrome, with 0x10000 args.
	// We go 1 magnitude less, for safety
	var MAX_ARGUMENTS_LENGTH = 0x1000

	function decodeCodePointsArray (codePoints) {
	  var len = codePoints.length
	  if (len <= MAX_ARGUMENTS_LENGTH) {
	    return String.fromCharCode.apply(String, codePoints) // avoid extra slice()
	  }

	  // Decode in chunks to avoid "call stack size exceeded".
	  var res = ''
	  var i = 0
	  while (i < len) {
	    res += String.fromCharCode.apply(
	      String,
	      codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)
	    )
	  }
	  return res
	}

	function asciiSlice (buf, start, end) {
	  var ret = ''
	  end = Math.min(buf.length, end)

	  for (var i = start; i < end; ++i) {
	    ret += String.fromCharCode(buf[i] & 0x7F)
	  }
	  return ret
	}

	function latin1Slice (buf, start, end) {
	  var ret = ''
	  end = Math.min(buf.length, end)

	  for (var i = start; i < end; ++i) {
	    ret += String.fromCharCode(buf[i])
	  }
	  return ret
	}

	function hexSlice (buf, start, end) {
	  var len = buf.length

	  if (!start || start < 0) start = 0
	  if (!end || end < 0 || end > len) end = len

	  var out = ''
	  for (var i = start; i < end; ++i) {
	    out += toHex(buf[i])
	  }
	  return out
	}

	function utf16leSlice (buf, start, end) {
	  var bytes = buf.slice(start, end)
	  var res = ''
	  for (var i = 0; i < bytes.length; i += 2) {
	    res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)
	  }
	  return res
	}

	Buffer.prototype.slice = function slice (start, end) {
	  var len = this.length
	  start = ~~start
	  end = end === undefined ? len : ~~end

	  if (start < 0) {
	    start += len
	    if (start < 0) start = 0
	  } else if (start > len) {
	    start = len
	  }

	  if (end < 0) {
	    end += len
	    if (end < 0) end = 0
	  } else if (end > len) {
	    end = len
	  }

	  if (end < start) end = start

	  var newBuf
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    newBuf = this.subarray(start, end)
	    newBuf.__proto__ = Buffer.prototype
	  } else {
	    var sliceLen = end - start
	    newBuf = new Buffer(sliceLen, undefined)
	    for (var i = 0; i < sliceLen; ++i) {
	      newBuf[i] = this[i + start]
	    }
	  }

	  return newBuf
	}

	/*
	 * Need to make sure that buffer isn't trying to write out of bounds.
	 */
	function checkOffset (offset, ext, length) {
	  if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')
	  if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')
	}

	Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {
	  offset = offset | 0
	  byteLength = byteLength | 0
	  if (!noAssert) checkOffset(offset, byteLength, this.length)

	  var val = this[offset]
	  var mul = 1
	  var i = 0
	  while (++i < byteLength && (mul *= 0x100)) {
	    val += this[offset + i] * mul
	  }

	  return val
	}

	Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {
	  offset = offset | 0
	  byteLength = byteLength | 0
	  if (!noAssert) {
	    checkOffset(offset, byteLength, this.length)
	  }

	  var val = this[offset + --byteLength]
	  var mul = 1
	  while (byteLength > 0 && (mul *= 0x100)) {
	    val += this[offset + --byteLength] * mul
	  }

	  return val
	}

	Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 1, this.length)
	  return this[offset]
	}

	Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 2, this.length)
	  return this[offset] | (this[offset + 1] << 8)
	}

	Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 2, this.length)
	  return (this[offset] << 8) | this[offset + 1]
	}

	Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 4, this.length)

	  return ((this[offset]) |
	      (this[offset + 1] << 8) |
	      (this[offset + 2] << 16)) +
	      (this[offset + 3] * 0x1000000)
	}

	Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 4, this.length)

	  return (this[offset] * 0x1000000) +
	    ((this[offset + 1] << 16) |
	    (this[offset + 2] << 8) |
	    this[offset + 3])
	}

	Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {
	  offset = offset | 0
	  byteLength = byteLength | 0
	  if (!noAssert) checkOffset(offset, byteLength, this.length)

	  var val = this[offset]
	  var mul = 1
	  var i = 0
	  while (++i < byteLength && (mul *= 0x100)) {
	    val += this[offset + i] * mul
	  }
	  mul *= 0x80

	  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

	  return val
	}

	Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {
	  offset = offset | 0
	  byteLength = byteLength | 0
	  if (!noAssert) checkOffset(offset, byteLength, this.length)

	  var i = byteLength
	  var mul = 1
	  var val = this[offset + --i]
	  while (i > 0 && (mul *= 0x100)) {
	    val += this[offset + --i] * mul
	  }
	  mul *= 0x80

	  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

	  return val
	}

	Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 1, this.length)
	  if (!(this[offset] & 0x80)) return (this[offset])
	  return ((0xff - this[offset] + 1) * -1)
	}

	Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 2, this.length)
	  var val = this[offset] | (this[offset + 1] << 8)
	  return (val & 0x8000) ? val | 0xFFFF0000 : val
	}

	Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 2, this.length)
	  var val = this[offset + 1] | (this[offset] << 8)
	  return (val & 0x8000) ? val | 0xFFFF0000 : val
	}

	Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 4, this.length)

	  return (this[offset]) |
	    (this[offset + 1] << 8) |
	    (this[offset + 2] << 16) |
	    (this[offset + 3] << 24)
	}

	Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 4, this.length)

	  return (this[offset] << 24) |
	    (this[offset + 1] << 16) |
	    (this[offset + 2] << 8) |
	    (this[offset + 3])
	}

	Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 4, this.length)
	  return ieee754.read(this, offset, true, 23, 4)
	}

	Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 4, this.length)
	  return ieee754.read(this, offset, false, 23, 4)
	}

	Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 8, this.length)
	  return ieee754.read(this, offset, true, 52, 8)
	}

	Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {
	  if (!noAssert) checkOffset(offset, 8, this.length)
	  return ieee754.read(this, offset, false, 52, 8)
	}

	function checkInt (buf, value, offset, ext, max, min) {
	  if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance')
	  if (value > max || value < min) throw new RangeError('"value" argument is out of bounds')
	  if (offset + ext > buf.length) throw new RangeError('Index out of range')
	}

	Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {
	  value = +value
	  offset = offset | 0
	  byteLength = byteLength | 0
	  if (!noAssert) {
	    var maxBytes = Math.pow(2, 8 * byteLength) - 1
	    checkInt(this, value, offset, byteLength, maxBytes, 0)
	  }

	  var mul = 1
	  var i = 0
	  this[offset] = value & 0xFF
	  while (++i < byteLength && (mul *= 0x100)) {
	    this[offset + i] = (value / mul) & 0xFF
	  }

	  return offset + byteLength
	}

	Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {
	  value = +value
	  offset = offset | 0
	  byteLength = byteLength | 0
	  if (!noAssert) {
	    var maxBytes = Math.pow(2, 8 * byteLength) - 1
	    checkInt(this, value, offset, byteLength, maxBytes, 0)
	  }

	  var i = byteLength - 1
	  var mul = 1
	  this[offset + i] = value & 0xFF
	  while (--i >= 0 && (mul *= 0x100)) {
	    this[offset + i] = (value / mul) & 0xFF
	  }

	  return offset + byteLength
	}

	Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)
	  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
	  this[offset] = (value & 0xff)
	  return offset + 1
	}

	function objectWriteUInt16 (buf, value, offset, littleEndian) {
	  if (value < 0) value = 0xffff + value + 1
	  for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {
	    buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>
	      (littleEndian ? i : 1 - i) * 8
	  }
	}

	Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value & 0xff)
	    this[offset + 1] = (value >>> 8)
	  } else {
	    objectWriteUInt16(this, value, offset, true)
	  }
	  return offset + 2
	}

	Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value >>> 8)
	    this[offset + 1] = (value & 0xff)
	  } else {
	    objectWriteUInt16(this, value, offset, false)
	  }
	  return offset + 2
	}

	function objectWriteUInt32 (buf, value, offset, littleEndian) {
	  if (value < 0) value = 0xffffffff + value + 1
	  for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {
	    buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff
	  }
	}

	Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset + 3] = (value >>> 24)
	    this[offset + 2] = (value >>> 16)
	    this[offset + 1] = (value >>> 8)
	    this[offset] = (value & 0xff)
	  } else {
	    objectWriteUInt32(this, value, offset, true)
	  }
	  return offset + 4
	}

	Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value >>> 24)
	    this[offset + 1] = (value >>> 16)
	    this[offset + 2] = (value >>> 8)
	    this[offset + 3] = (value & 0xff)
	  } else {
	    objectWriteUInt32(this, value, offset, false)
	  }
	  return offset + 4
	}

	Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) {
	    var limit = Math.pow(2, 8 * byteLength - 1)

	    checkInt(this, value, offset, byteLength, limit - 1, -limit)
	  }

	  var i = 0
	  var mul = 1
	  var sub = 0
	  this[offset] = value & 0xFF
	  while (++i < byteLength && (mul *= 0x100)) {
	    if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
	      sub = 1
	    }
	    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
	  }

	  return offset + byteLength
	}

	Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) {
	    var limit = Math.pow(2, 8 * byteLength - 1)

	    checkInt(this, value, offset, byteLength, limit - 1, -limit)
	  }

	  var i = byteLength - 1
	  var mul = 1
	  var sub = 0
	  this[offset + i] = value & 0xFF
	  while (--i >= 0 && (mul *= 0x100)) {
	    if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
	      sub = 1
	    }
	    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
	  }

	  return offset + byteLength
	}

	Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)
	  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
	  if (value < 0) value = 0xff + value + 1
	  this[offset] = (value & 0xff)
	  return offset + 1
	}

	Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value & 0xff)
	    this[offset + 1] = (value >>> 8)
	  } else {
	    objectWriteUInt16(this, value, offset, true)
	  }
	  return offset + 2
	}

	Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value >>> 8)
	    this[offset + 1] = (value & 0xff)
	  } else {
	    objectWriteUInt16(this, value, offset, false)
	  }
	  return offset + 2
	}

	Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value & 0xff)
	    this[offset + 1] = (value >>> 8)
	    this[offset + 2] = (value >>> 16)
	    this[offset + 3] = (value >>> 24)
	  } else {
	    objectWriteUInt32(this, value, offset, true)
	  }
	  return offset + 4
	}

	Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {
	  value = +value
	  offset = offset | 0
	  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
	  if (value < 0) value = 0xffffffff + value + 1
	  if (Buffer.TYPED_ARRAY_SUPPORT) {
	    this[offset] = (value >>> 24)
	    this[offset + 1] = (value >>> 16)
	    this[offset + 2] = (value >>> 8)
	    this[offset + 3] = (value & 0xff)
	  } else {
	    objectWriteUInt32(this, value, offset, false)
	  }
	  return offset + 4
	}

	function checkIEEE754 (buf, value, offset, ext, max, min) {
	  if (offset + ext > buf.length) throw new RangeError('Index out of range')
	  if (offset < 0) throw new RangeError('Index out of range')
	}

	function writeFloat (buf, value, offset, littleEndian, noAssert) {
	  if (!noAssert) {
	    checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)
	  }
	  ieee754.write(buf, value, offset, littleEndian, 23, 4)
	  return offset + 4
	}

	Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {
	  return writeFloat(this, value, offset, true, noAssert)
	}

	Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {
	  return writeFloat(this, value, offset, false, noAssert)
	}

	function writeDouble (buf, value, offset, littleEndian, noAssert) {
	  if (!noAssert) {
	    checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)
	  }
	  ieee754.write(buf, value, offset, littleEndian, 52, 8)
	  return offset + 8
	}

	Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {
	  return writeDouble(this, value, offset, true, noAssert)
	}

	Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {
	  return writeDouble(this, value, offset, false, noAssert)
	}

	// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
	Buffer.prototype.copy = function copy (target, targetStart, start, end) {
	  if (!start) start = 0
	  if (!end && end !== 0) end = this.length
	  if (targetStart >= target.length) targetStart = target.length
	  if (!targetStart) targetStart = 0
	  if (end > 0 && end < start) end = start

	  // Copy 0 bytes; we're done
	  if (end === start) return 0
	  if (target.length === 0 || this.length === 0) return 0

	  // Fatal error conditions
	  if (targetStart < 0) {
	    throw new RangeError('targetStart out of bounds')
	  }
	  if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')
	  if (end < 0) throw new RangeError('sourceEnd out of bounds')

	  // Are we oob?
	  if (end > this.length) end = this.length
	  if (target.length - targetStart < end - start) {
	    end = target.length - targetStart + start
	  }

	  var len = end - start
	  var i

	  if (this === target && start < targetStart && targetStart < end) {
	    // descending copy from end
	    for (i = len - 1; i >= 0; --i) {
	      target[i + targetStart] = this[i + start]
	    }
	  } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {
	    // ascending copy from start
	    for (i = 0; i < len; ++i) {
	      target[i + targetStart] = this[i + start]
	    }
	  } else {
	    Uint8Array.prototype.set.call(
	      target,
	      this.subarray(start, start + len),
	      targetStart
	    )
	  }

	  return len
	}

	// Usage:
	//    buffer.fill(number[, offset[, end]])
	//    buffer.fill(buffer[, offset[, end]])
	//    buffer.fill(string[, offset[, end]][, encoding])
	Buffer.prototype.fill = function fill (val, start, end, encoding) {
	  // Handle string cases:
	  if (typeof val === 'string') {
	    if (typeof start === 'string') {
	      encoding = start
	      start = 0
	      end = this.length
	    } else if (typeof end === 'string') {
	      encoding = end
	      end = this.length
	    }
	    if (val.length === 1) {
	      var code = val.charCodeAt(0)
	      if (code < 256) {
	        val = code
	      }
	    }
	    if (encoding !== undefined && typeof encoding !== 'string') {
	      throw new TypeError('encoding must be a string')
	    }
	    if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {
	      throw new TypeError('Unknown encoding: ' + encoding)
	    }
	  } else if (typeof val === 'number') {
	    val = val & 255
	  }

	  // Invalid ranges are not set to a default, so can range check early.
	  if (start < 0 || this.length < start || this.length < end) {
	    throw new RangeError('Out of range index')
	  }

	  if (end <= start) {
	    return this
	  }

	  start = start >>> 0
	  end = end === undefined ? this.length : end >>> 0

	  if (!val) val = 0

	  var i
	  if (typeof val === 'number') {
	    for (i = start; i < end; ++i) {
	      this[i] = val
	    }
	  } else {
	    var bytes = Buffer.isBuffer(val)
	      ? val
	      : utf8ToBytes(new Buffer(val, encoding).toString())
	    var len = bytes.length
	    for (i = 0; i < end - start; ++i) {
	      this[i + start] = bytes[i % len]
	    }
	  }

	  return this
	}

	// HELPER FUNCTIONS
	// ================

	var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g

	function base64clean (str) {
	  // Node strips out invalid characters like \n and \t from the string, base64-js does not
	  str = stringtrim(str).replace(INVALID_BASE64_RE, '')
	  // Node converts strings with length < 2 to ''
	  if (str.length < 2) return ''
	  // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
	  while (str.length % 4 !== 0) {
	    str = str + '='
	  }
	  return str
	}

	function stringtrim (str) {
	  if (str.trim) return str.trim()
	  return str.replace(/^\s+|\s+$/g, '')
	}

	function toHex (n) {
	  if (n < 16) return '0' + n.toString(16)
	  return n.toString(16)
	}

	function utf8ToBytes (string, units) {
	  units = units || Infinity
	  var codePoint
	  var length = string.length
	  var leadSurrogate = null
	  var bytes = []

	  for (var i = 0; i < length; ++i) {
	    codePoint = string.charCodeAt(i)

	    // is surrogate component
	    if (codePoint > 0xD7FF && codePoint < 0xE000) {
	      // last char was a lead
	      if (!leadSurrogate) {
	        // no lead yet
	        if (codePoint > 0xDBFF) {
	          // unexpected trail
	          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
	          continue
	        } else if (i + 1 === length) {
	          // unpaired lead
	          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
	          continue
	        }

	        // valid lead
	        leadSurrogate = codePoint

	        continue
	      }

	      // 2 leads in a row
	      if (codePoint < 0xDC00) {
	        if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
	        leadSurrogate = codePoint
	        continue
	      }

	      // valid surrogate pair
	      codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000
	    } else if (leadSurrogate) {
	      // valid bmp char, but last char was a lead
	      if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
	    }

	    leadSurrogate = null

	    // encode utf8
	    if (codePoint < 0x80) {
	      if ((units -= 1) < 0) break
	      bytes.push(codePoint)
	    } else if (codePoint < 0x800) {
	      if ((units -= 2) < 0) break
	      bytes.push(
	        codePoint >> 0x6 | 0xC0,
	        codePoint & 0x3F | 0x80
	      )
	    } else if (codePoint < 0x10000) {
	      if ((units -= 3) < 0) break
	      bytes.push(
	        codePoint >> 0xC | 0xE0,
	        codePoint >> 0x6 & 0x3F | 0x80,
	        codePoint & 0x3F | 0x80
	      )
	    } else if (codePoint < 0x110000) {
	      if ((units -= 4) < 0) break
	      bytes.push(
	        codePoint >> 0x12 | 0xF0,
	        codePoint >> 0xC & 0x3F | 0x80,
	        codePoint >> 0x6 & 0x3F | 0x80,
	        codePoint & 0x3F | 0x80
	      )
	    } else {
	      throw new Error('Invalid code point')
	    }
	  }

	  return bytes
	}

	function asciiToBytes (str) {
	  var byteArray = []
	  for (var i = 0; i < str.length; ++i) {
	    // Node's code seems to be doing this and not & 0x7F..
	    byteArray.push(str.charCodeAt(i) & 0xFF)
	  }
	  return byteArray
	}

	function utf16leToBytes (str, units) {
	  var c, hi, lo
	  var byteArray = []
	  for (var i = 0; i < str.length; ++i) {
	    if ((units -= 2) < 0) break

	    c = str.charCodeAt(i)
	    hi = c >> 8
	    lo = c % 256
	    byteArray.push(lo)
	    byteArray.push(hi)
	  }

	  return byteArray
	}

	function base64ToBytes (str) {
	  return base64.toByteArray(base64clean(str))
	}

	function blitBuffer (src, dst, offset, length) {
	  for (var i = 0; i < length; ++i) {
	    if ((i + offset >= dst.length) || (i >= src.length)) break
	    dst[i + offset] = src[i]
	  }
	  return i
	}

	function isnan (val) {
	  return val !== val // eslint-disable-line no-self-compare
	}

	/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))

/***/ }),
/* 7 */
/***/ (function(module, exports) {

	'use strict'

	exports.byteLength = byteLength
	exports.toByteArray = toByteArray
	exports.fromByteArray = fromByteArray

	var lookup = []
	var revLookup = []
	var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array

	var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
	for (var i = 0, len = code.length; i < len; ++i) {
	  lookup[i] = code[i]
	  revLookup[code.charCodeAt(i)] = i
	}

	revLookup['-'.charCodeAt(0)] = 62
	revLookup['_'.charCodeAt(0)] = 63

	function placeHoldersCount (b64) {
	  var len = b64.length
	  if (len % 4 > 0) {
	    throw new Error('Invalid string. Length must be a multiple of 4')
	  }

	  // the number of equal signs (place holders)
	  // if there are two placeholders, than the two characters before it
	  // represent one byte
	  // if there is only one, then the three characters before it represent 2 bytes
	  // this is just a cheap hack to not do indexOf twice
	  return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0
	}

	function byteLength (b64) {
	  // base64 is 4/3 + up to two characters of the original data
	  return (b64.length * 3 / 4) - placeHoldersCount(b64)
	}

	function toByteArray (b64) {
	  var i, l, tmp, placeHolders, arr
	  var len = b64.length
	  placeHolders = placeHoldersCount(b64)

	  arr = new Arr((len * 3 / 4) - placeHolders)

	  // if there are placeholders, only get up to the last complete 4 chars
	  l = placeHolders > 0 ? len - 4 : len

	  var L = 0

	  for (i = 0; i < l; i += 4) {
	    tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)]
	    arr[L++] = (tmp >> 16) & 0xFF
	    arr[L++] = (tmp >> 8) & 0xFF
	    arr[L++] = tmp & 0xFF
	  }

	  if (placeHolders === 2) {
	    tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4)
	    arr[L++] = tmp & 0xFF
	  } else if (placeHolders === 1) {
	    tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2)
	    arr[L++] = (tmp >> 8) & 0xFF
	    arr[L++] = tmp & 0xFF
	  }

	  return arr
	}

	function tripletToBase64 (num) {
	  return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F]
	}

	function encodeChunk (uint8, start, end) {
	  var tmp
	  var output = []
	  for (var i = start; i < end; i += 3) {
	    tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])
	    output.push(tripletToBase64(tmp))
	  }
	  return output.join('')
	}

	function fromByteArray (uint8) {
	  var tmp
	  var len = uint8.length
	  var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
	  var output = ''
	  var parts = []
	  var maxChunkLength = 16383 // must be multiple of 3

	  // go through the array every three bytes, we'll deal with trailing stuff later
	  for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
	    parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
	  }

	  // pad the end with zeros, but make sure to not forget the extra bytes
	  if (extraBytes === 1) {
	    tmp = uint8[len - 1]
	    output += lookup[tmp >> 2]
	    output += lookup[(tmp << 4) & 0x3F]
	    output += '=='
	  } else if (extraBytes === 2) {
	    tmp = (uint8[len - 2] << 8) + (uint8[len - 1])
	    output += lookup[tmp >> 10]
	    output += lookup[(tmp >> 4) & 0x3F]
	    output += lookup[(tmp << 2) & 0x3F]
	    output += '='
	  }

	  parts.push(output)

	  return parts.join('')
	}


/***/ }),
/* 8 */
/***/ (function(module, exports) {

	exports.read = function (buffer, offset, isLE, mLen, nBytes) {
	  var e, m
	  var eLen = nBytes * 8 - mLen - 1
	  var eMax = (1 << eLen) - 1
	  var eBias = eMax >> 1
	  var nBits = -7
	  var i = isLE ? (nBytes - 1) : 0
	  var d = isLE ? -1 : 1
	  var s = buffer[offset + i]

	  i += d

	  e = s & ((1 << (-nBits)) - 1)
	  s >>= (-nBits)
	  nBits += eLen
	  for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}

	  m = e & ((1 << (-nBits)) - 1)
	  e >>= (-nBits)
	  nBits += mLen
	  for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}

	  if (e === 0) {
	    e = 1 - eBias
	  } else if (e === eMax) {
	    return m ? NaN : ((s ? -1 : 1) * Infinity)
	  } else {
	    m = m + Math.pow(2, mLen)
	    e = e - eBias
	  }
	  return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
	}

	exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
	  var e, m, c
	  var eLen = nBytes * 8 - mLen - 1
	  var eMax = (1 << eLen) - 1
	  var eBias = eMax >> 1
	  var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)
	  var i = isLE ? 0 : (nBytes - 1)
	  var d = isLE ? 1 : -1
	  var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0

	  value = Math.abs(value)

	  if (isNaN(value) || value === Infinity) {
	    m = isNaN(value) ? 1 : 0
	    e = eMax
	  } else {
	    e = Math.floor(Math.log(value) / Math.LN2)
	    if (value * (c = Math.pow(2, -e)) < 1) {
	      e--
	      c *= 2
	    }
	    if (e + eBias >= 1) {
	      value += rt / c
	    } else {
	      value += rt * Math.pow(2, 1 - eBias)
	    }
	    if (value * c >= 2) {
	      e++
	      c /= 2
	    }

	    if (e + eBias >= eMax) {
	      m = 0
	      e = eMax
	    } else if (e + eBias >= 1) {
	      m = (value * c - 1) * Math.pow(2, mLen)
	      e = e + eBias
	    } else {
	      m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)
	      e = 0
	    }
	  }

	  for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}

	  e = (e << mLen) | m
	  eLen += mLen
	  for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}

	  buffer[offset + i - d] |= s * 128
	}


/***/ }),
/* 9 */
/***/ (function(module, exports) {

	var toString = {}.toString;

	module.exports = Array.isArray || function (arr) {
	  return toString.call(arr) == '[object Array]';
	};


/***/ }),
/* 10 */
/***/ (function(module, exports, __webpack_require__) {

	/*
	 * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined
	 * in FIPS PUB 180-1
	 * Version 2.1a Copyright Paul Johnston 2000 - 2002.
	 * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
	 * Distributed under the BSD License
	 * See http://pajhome.org.uk/crypt/md5 for details.
	 */

	var helpers = __webpack_require__(11);

	/*
	 * Calculate the SHA-1 of an array of big-endian words, and a bit length
	 */
	function core_sha1(x, len)
	{
	  /* append padding */
	  x[len >> 5] |= 0x80 << (24 - len % 32);
	  x[((len + 64 >> 9) << 4) + 15] = len;

	  var w = Array(80);
	  var a =  1732584193;
	  var b = -271733879;
	  var c = -1732584194;
	  var d =  271733878;
	  var e = -1009589776;

	  for(var i = 0; i < x.length; i += 16)
	  {
	    var olda = a;
	    var oldb = b;
	    var oldc = c;
	    var oldd = d;
	    var olde = e;

	    for(var j = 0; j < 80; j++)
	    {
	      if(j < 16) w[j] = x[i + j];
	      else w[j] = rol(w[j-3] ^ w[j-8] ^ w[j-14] ^ w[j-16], 1);
	      var t = safe_add(safe_add(rol(a, 5), sha1_ft(j, b, c, d)),
	                       safe_add(safe_add(e, w[j]), sha1_kt(j)));
	      e = d;
	      d = c;
	      c = rol(b, 30);
	      b = a;
	      a = t;
	    }

	    a = safe_add(a, olda);
	    b = safe_add(b, oldb);
	    c = safe_add(c, oldc);
	    d = safe_add(d, oldd);
	    e = safe_add(e, olde);
	  }
	  return Array(a, b, c, d, e);

	}

	/*
	 * Perform the appropriate triplet combination function for the current
	 * iteration
	 */
	function sha1_ft(t, b, c, d)
	{
	  if(t < 20) return (b & c) | ((~b) & d);
	  if(t < 40) return b ^ c ^ d;
	  if(t < 60) return (b & c) | (b & d) | (c & d);
	  return b ^ c ^ d;
	}

	/*
	 * Determine the appropriate additive constant for the current iteration
	 */
	function sha1_kt(t)
	{
	  return (t < 20) ?  1518500249 : (t < 40) ?  1859775393 :
	         (t < 60) ? -1894007588 : -899497514;
	}

	/*
	 * Add integers, wrapping at 2^32. This uses 16-bit operations internally
	 * to work around bugs in some JS interpreters.
	 */
	function safe_add(x, y)
	{
	  var lsw = (x & 0xFFFF) + (y & 0xFFFF);
	  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
	  return (msw << 16) | (lsw & 0xFFFF);
	}

	/*
	 * Bitwise rotate a 32-bit number to the left.
	 */
	function rol(num, cnt)
	{
	  return (num << cnt) | (num >>> (32 - cnt));
	}

	module.exports = function sha1(buf) {
	  return helpers.hash(buf, core_sha1, 20, true);
	};


/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {

	var Buffer = __webpack_require__(6).Buffer;
	var intSize = 4;
	var zeroBuffer = new Buffer(intSize); zeroBuffer.fill(0);
	var chrsz = 8;

	function toArray(buf, bigEndian) {
	  if ((buf.length % intSize) !== 0) {
	    var len = buf.length + (intSize - (buf.length % intSize));
	    buf = Buffer.concat([buf, zeroBuffer], len);
	  }

	  var arr = [];
	  var fn = bigEndian ? buf.readInt32BE : buf.readInt32LE;
	  for (var i = 0; i < buf.length; i += intSize) {
	    arr.push(fn.call(buf, i));
	  }
	  return arr;
	}

	function toBuffer(arr, size, bigEndian) {
	  var buf = new Buffer(size);
	  var fn = bigEndian ? buf.writeInt32BE : buf.writeInt32LE;
	  for (var i = 0; i < arr.length; i++) {
	    fn.call(buf, arr[i], i * 4, true);
	  }
	  return buf;
	}

	function hash(buf, fn, hashSize, bigEndian) {
	  if (!Buffer.isBuffer(buf)) buf = new Buffer(buf);
	  var arr = fn(toArray(buf, bigEndian), buf.length * chrsz);
	  return toBuffer(arr, hashSize, bigEndian);
	}

	module.exports = { hash: hash };


/***/ }),
/* 12 */
/***/ (function(module, exports, __webpack_require__) {

	
	/**
	 * A JavaScript implementation of the Secure Hash Algorithm, SHA-256, as defined
	 * in FIPS 180-2
	 * Version 2.2-beta Copyright Angel Marin, Paul Johnston 2000 - 2009.
	 * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
	 *
	 */

	var helpers = __webpack_require__(11);

	var safe_add = function(x, y) {
	  var lsw = (x & 0xFFFF) + (y & 0xFFFF);
	  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
	  return (msw << 16) | (lsw & 0xFFFF);
	};

	var S = function(X, n) {
	  return (X >>> n) | (X << (32 - n));
	};

	var R = function(X, n) {
	  return (X >>> n);
	};

	var Ch = function(x, y, z) {
	  return ((x & y) ^ ((~x) & z));
	};

	var Maj = function(x, y, z) {
	  return ((x & y) ^ (x & z) ^ (y & z));
	};

	var Sigma0256 = function(x) {
	  return (S(x, 2) ^ S(x, 13) ^ S(x, 22));
	};

	var Sigma1256 = function(x) {
	  return (S(x, 6) ^ S(x, 11) ^ S(x, 25));
	};

	var Gamma0256 = function(x) {
	  return (S(x, 7) ^ S(x, 18) ^ R(x, 3));
	};

	var Gamma1256 = function(x) {
	  return (S(x, 17) ^ S(x, 19) ^ R(x, 10));
	};

	var core_sha256 = function(m, l) {
	  var K = new Array(0x428A2F98,0x71374491,0xB5C0FBCF,0xE9B5DBA5,0x3956C25B,0x59F111F1,0x923F82A4,0xAB1C5ED5,0xD807AA98,0x12835B01,0x243185BE,0x550C7DC3,0x72BE5D74,0x80DEB1FE,0x9BDC06A7,0xC19BF174,0xE49B69C1,0xEFBE4786,0xFC19DC6,0x240CA1CC,0x2DE92C6F,0x4A7484AA,0x5CB0A9DC,0x76F988DA,0x983E5152,0xA831C66D,0xB00327C8,0xBF597FC7,0xC6E00BF3,0xD5A79147,0x6CA6351,0x14292967,0x27B70A85,0x2E1B2138,0x4D2C6DFC,0x53380D13,0x650A7354,0x766A0ABB,0x81C2C92E,0x92722C85,0xA2BFE8A1,0xA81A664B,0xC24B8B70,0xC76C51A3,0xD192E819,0xD6990624,0xF40E3585,0x106AA070,0x19A4C116,0x1E376C08,0x2748774C,0x34B0BCB5,0x391C0CB3,0x4ED8AA4A,0x5B9CCA4F,0x682E6FF3,0x748F82EE,0x78A5636F,0x84C87814,0x8CC70208,0x90BEFFFA,0xA4506CEB,0xBEF9A3F7,0xC67178F2);
	  var HASH = new Array(0x6A09E667, 0xBB67AE85, 0x3C6EF372, 0xA54FF53A, 0x510E527F, 0x9B05688C, 0x1F83D9AB, 0x5BE0CD19);
	    var W = new Array(64);
	    var a, b, c, d, e, f, g, h, i, j;
	    var T1, T2;
	  /* append padding */
	  m[l >> 5] |= 0x80 << (24 - l % 32);
	  m[((l + 64 >> 9) << 4) + 15] = l;
	  for (var i = 0; i < m.length; i += 16) {
	    a = HASH[0]; b = HASH[1]; c = HASH[2]; d = HASH[3]; e = HASH[4]; f = HASH[5]; g = HASH[6]; h = HASH[7];
	    for (var j = 0; j < 64; j++) {
	      if (j < 16) {
	        W[j] = m[j + i];
	      } else {
	        W[j] = safe_add(safe_add(safe_add(Gamma1256(W[j - 2]), W[j - 7]), Gamma0256(W[j - 15])), W[j - 16]);
	      }
	      T1 = safe_add(safe_add(safe_add(safe_add(h, Sigma1256(e)), Ch(e, f, g)), K[j]), W[j]);
	      T2 = safe_add(Sigma0256(a), Maj(a, b, c));
	      h = g; g = f; f = e; e = safe_add(d, T1); d = c; c = b; b = a; a = safe_add(T1, T2);
	    }
	    HASH[0] = safe_add(a, HASH[0]); HASH[1] = safe_add(b, HASH[1]); HASH[2] = safe_add(c, HASH[2]); HASH[3] = safe_add(d, HASH[3]);
	    HASH[4] = safe_add(e, HASH[4]); HASH[5] = safe_add(f, HASH[5]); HASH[6] = safe_add(g, HASH[6]); HASH[7] = safe_add(h, HASH[7]);
	  }
	  return HASH;
	};

	module.exports = function sha256(buf) {
	  return helpers.hash(buf, core_sha256, 32, true);
	};


/***/ }),
/* 13 */
/***/ (function(module, exports) {

	// Original code adapted from Robert Kieffer.
	// details at https://github.com/broofa/node-uuid
	(function() {
	  var _global = this;

	  var mathRNG, whatwgRNG;

	  // NOTE: Math.random() does not guarantee "cryptographic quality"
	  mathRNG = function(size) {
	    var bytes = new Array(size);
	    var r;

	    for (var i = 0, r; i < size; i++) {
	      if ((i & 0x03) == 0) r = Math.random() * 0x100000000;
	      bytes[i] = r >>> ((i & 0x03) << 3) & 0xff;
	    }

	    return bytes;
	  }

	  if (_global.crypto && crypto.getRandomValues) {
	    whatwgRNG = function(size) {
	      var bytes = new Uint8Array(size);
	      crypto.getRandomValues(bytes);
	      return bytes;
	    }
	  }

	  module.exports = whatwgRNG || mathRNG;

	}())


/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {

	/*
	 * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
	 * Digest Algorithm, as defined in RFC 1321.
	 * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.
	 * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
	 * Distributed under the BSD License
	 * See http://pajhome.org.uk/crypt/md5 for more info.
	 */

	var helpers = __webpack_require__(11);

	/*
	 * Perform a simple self-test to see if the VM is working
	 */
	function md5_vm_test()
	{
	  return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
	}

	/*
	 * Calculate the MD5 of an array of little-endian words, and a bit length
	 */
	function core_md5(x, len)
	{
	  /* append padding */
	  x[len >> 5] |= 0x80 << ((len) % 32);
	  x[(((len + 64) >>> 9) << 4) + 14] = len;

	  var a =  1732584193;
	  var b = -271733879;
	  var c = -1732584194;
	  var d =  271733878;

	  for(var i = 0; i < x.length; i += 16)
	  {
	    var olda = a;
	    var oldb = b;
	    var oldc = c;
	    var oldd = d;

	    a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
	    d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
	    c = md5_ff(c, d, a, b, x[i+ 2], 17,  606105819);
	    b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
	    a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
	    d = md5_ff(d, a, b, c, x[i+ 5], 12,  1200080426);
	    c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
	    b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
	    a = md5_ff(a, b, c, d, x[i+ 8], 7 ,  1770035416);
	    d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
	    c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
	    b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
	    a = md5_ff(a, b, c, d, x[i+12], 7 ,  1804603682);
	    d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
	    c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
	    b = md5_ff(b, c, d, a, x[i+15], 22,  1236535329);

	    a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
	    d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
	    c = md5_gg(c, d, a, b, x[i+11], 14,  643717713);
	    b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
	    a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
	    d = md5_gg(d, a, b, c, x[i+10], 9 ,  38016083);
	    c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
	    b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
	    a = md5_gg(a, b, c, d, x[i+ 9], 5 ,  568446438);
	    d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
	    c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
	    b = md5_gg(b, c, d, a, x[i+ 8], 20,  1163531501);
	    a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
	    d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
	    c = md5_gg(c, d, a, b, x[i+ 7], 14,  1735328473);
	    b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);

	    a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
	    d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
	    c = md5_hh(c, d, a, b, x[i+11], 16,  1839030562);
	    b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
	    a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
	    d = md5_hh(d, a, b, c, x[i+ 4], 11,  1272893353);
	    c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
	    b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
	    a = md5_hh(a, b, c, d, x[i+13], 4 ,  681279174);
	    d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
	    c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
	    b = md5_hh(b, c, d, a, x[i+ 6], 23,  76029189);
	    a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
	    d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
	    c = md5_hh(c, d, a, b, x[i+15], 16,  530742520);
	    b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);

	    a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
	    d = md5_ii(d, a, b, c, x[i+ 7], 10,  1126891415);
	    c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
	    b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
	    a = md5_ii(a, b, c, d, x[i+12], 6 ,  1700485571);
	    d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
	    c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
	    b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
	    a = md5_ii(a, b, c, d, x[i+ 8], 6 ,  1873313359);
	    d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
	    c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
	    b = md5_ii(b, c, d, a, x[i+13], 21,  1309151649);
	    a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
	    d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
	    c = md5_ii(c, d, a, b, x[i+ 2], 15,  718787259);
	    b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);

	    a = safe_add(a, olda);
	    b = safe_add(b, oldb);
	    c = safe_add(c, oldc);
	    d = safe_add(d, oldd);
	  }
	  return Array(a, b, c, d);

	}

	/*
	 * These functions implement the four basic operations the algorithm uses.
	 */
	function md5_cmn(q, a, b, x, s, t)
	{
	  return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
	}
	function md5_ff(a, b, c, d, x, s, t)
	{
	  return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
	}
	function md5_gg(a, b, c, d, x, s, t)
	{
	  return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
	}
	function md5_hh(a, b, c, d, x, s, t)
	{
	  return md5_cmn(b ^ c ^ d, a, b, x, s, t);
	}
	function md5_ii(a, b, c, d, x, s, t)
	{
	  return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
	}

	/*
	 * Add integers, wrapping at 2^32. This uses 16-bit operations internally
	 * to work around bugs in some JS interpreters.
	 */
	function safe_add(x, y)
	{
	  var lsw = (x & 0xFFFF) + (y & 0xFFFF);
	  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
	  return (msw << 16) | (lsw & 0xFFFF);
	}

	/*
	 * Bitwise rotate a 32-bit number to the left.
	 */
	function bit_rol(num, cnt)
	{
	  return (num << cnt) | (num >>> (32 - cnt));
	}

	module.exports = function md5(buf) {
	  return helpers.hash(buf, core_md5, 16);
	};


/***/ }),
/* 15 */
/***/ (function(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 punycode = __webpack_require__(16);

	exports.parse = urlParse;
	exports.resolve = urlResolve;
	exports.resolveObject = urlResolveObject;
	exports.format = urlFormat;

	exports.Url = Url;

	function Url() {
	  this.protocol = null;
	  this.slashes = null;
	  this.auth = null;
	  this.host = null;
	  this.port = null;
	  this.hostname = null;
	  this.hash = null;
	  this.search = null;
	  this.query = null;
	  this.pathname = null;
	  this.path = null;
	  this.href = null;
	}

	// Reference: RFC 3986, RFC 1808, RFC 2396

	// define these here so at least they only have to be
	// compiled once on the first module load.
	var protocolPattern = /^([a-z0-9.+-]+:)/i,
	    portPattern = /:[0-9]*$/,

	    // RFC 2396: characters reserved for delimiting URLs.
	    // We actually just auto-escape these.
	    delims = ['<', '>', '"', '`', ' ', '\r', '\n', '\t'],

	    // RFC 2396: characters not allowed for various reasons.
	    unwise = ['{', '}', '|', '\\', '^', '`'].concat(delims),

	    // Allowed by RFCs, but cause of XSS attacks.  Always escape these.
	    autoEscape = ['\''].concat(unwise),
	    // Characters that are never ever allowed in a hostname.
	    // Note that any invalid chars are also handled, but these
	    // are the ones that are *expected* to be seen, so we fast-path
	    // them.
	    nonHostChars = ['%', '/', '?', ';', '#'].concat(autoEscape),
	    hostEndingChars = ['/', '?', '#'],
	    hostnameMaxLen = 255,
	    hostnamePartPattern = /^[a-z0-9A-Z_-]{0,63}$/,
	    hostnamePartStart = /^([a-z0-9A-Z_-]{0,63})(.*)$/,
	    // protocols that can allow "unsafe" and "unwise" chars.
	    unsafeProtocol = {
	      'javascript': true,
	      'javascript:': true
	    },
	    // protocols that never have a hostname.
	    hostlessProtocol = {
	      'javascript': true,
	      'javascript:': true
	    },
	    // protocols that always contain a // bit.
	    slashedProtocol = {
	      'http': true,
	      'https': true,
	      'ftp': true,
	      'gopher': true,
	      'file': true,
	      'http:': true,
	      'https:': true,
	      'ftp:': true,
	      'gopher:': true,
	      'file:': true
	    },
	    querystring = __webpack_require__(18);

	function urlParse(url, parseQueryString, slashesDenoteHost) {
	  if (url && isObject(url) && url instanceof Url) return url;

	  var u = new Url;
	  u.parse(url, parseQueryString, slashesDenoteHost);
	  return u;
	}

	Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
	  if (!isString(url)) {
	    throw new TypeError("Parameter 'url' must be a string, not " + typeof url);
	  }

	  var rest = url;

	  // trim before proceeding.
	  // This is to support parse stuff like "  http://foo.com  \n"
	  rest = rest.trim();

	  var proto = protocolPattern.exec(rest);
	  if (proto) {
	    proto = proto[0];
	    var lowerProto = proto.toLowerCase();
	    this.protocol = lowerProto;
	    rest = rest.substr(proto.length);
	  }

	  // figure out if it's got a host
	  // user@server is *always* interpreted as a hostname, and url
	  // resolution will treat //foo/bar as host=foo,path=bar because that's
	  // how the browser resolves relative URLs.
	  if (slashesDenoteHost || proto || rest.match(/^\/\/[^@\/]+@[^@\/]+/)) {
	    var slashes = rest.substr(0, 2) === '//';
	    if (slashes && !(proto && hostlessProtocol[proto])) {
	      rest = rest.substr(2);
	      this.slashes = true;
	    }
	  }

	  if (!hostlessProtocol[proto] &&
	      (slashes || (proto && !slashedProtocol[proto]))) {

	    // there's a hostname.
	    // the first instance of /, ?, ;, or # ends the host.
	    //
	    // If there is an @ in the hostname, then non-host chars *are* allowed
	    // to the left of the last @ sign, unless some host-ending character
	    // comes *before* the @-sign.
	    // URLs are obnoxious.
	    //
	    // ex:
	    // http://a@b@c/ => user:a@b host:c
	    // http://a@b?@c => user:a host:c path:/?@c

	    // v0.12 TODO(isaacs): This is not quite how Chrome does things.
	    // Review our test case against browsers more comprehensively.

	    // find the first instance of any hostEndingChars
	    var hostEnd = -1;
	    for (var i = 0; i < hostEndingChars.length; i++) {
	      var hec = rest.indexOf(hostEndingChars[i]);
	      if (hec !== -1 && (hostEnd === -1 || hec < hostEnd))
	        hostEnd = hec;
	    }

	    // at this point, either we have an explicit point where the
	    // auth portion cannot go past, or the last @ char is the decider.
	    var auth, atSign;
	    if (hostEnd === -1) {
	      // atSign can be anywhere.
	      atSign = rest.lastIndexOf('@');
	    } else {
	      // atSign must be in auth portion.
	      // http://a@b/c@d => host:b auth:a path:/c@d
	      atSign = rest.lastIndexOf('@', hostEnd);
	    }

	    // Now we have a portion which is definitely the auth.
	    // Pull that off.
	    if (atSign !== -1) {
	      auth = rest.slice(0, atSign);
	      rest = rest.slice(atSign + 1);
	      this.auth = decodeURIComponent(auth);
	    }

	    // the host is the remaining to the left of the first non-host char
	    hostEnd = -1;
	    for (var i = 0; i < nonHostChars.length; i++) {
	      var hec = rest.indexOf(nonHostChars[i]);
	      if (hec !== -1 && (hostEnd === -1 || hec < hostEnd))
	        hostEnd = hec;
	    }
	    // if we still have not hit it, then the entire thing is a host.
	    if (hostEnd === -1)
	      hostEnd = rest.length;

	    this.host = rest.slice(0, hostEnd);
	    rest = rest.slice(hostEnd);

	    // pull out port.
	    this.parseHost();

	    // we've indicated that there is a hostname,
	    // so even if it's empty, it has to be present.
	    this.hostname = this.hostname || '';

	    // if hostname begins with [ and ends with ]
	    // assume that it's an IPv6 address.
	    var ipv6Hostname = this.hostname[0] === '[' &&
	        this.hostname[this.hostname.length - 1] === ']';

	    // validate a little.
	    if (!ipv6Hostname) {
	      var hostparts = this.hostname.split(/\./);
	      for (var i = 0, l = hostparts.length; i < l; i++) {
	        var part = hostparts[i];
	        if (!part) continue;
	        if (!part.match(hostnamePartPattern)) {
	          var newpart = '';
	          for (var j = 0, k = part.length; j < k; j++) {
	            if (part.charCodeAt(j) > 127) {
	              // we replace non-ASCII char with a temporary placeholder
	              // we need this to make sure size of hostname is not
	              // broken by replacing non-ASCII by nothing
	              newpart += 'x';
	            } else {
	              newpart += part[j];
	            }
	          }
	          // we test again with ASCII char only
	          if (!newpart.match(hostnamePartPattern)) {
	            var validParts = hostparts.slice(0, i);
	            var notHost = hostparts.slice(i + 1);
	            var bit = part.match(hostnamePartStart);
	            if (bit) {
	              validParts.push(bit[1]);
	              notHost.unshift(bit[2]);
	            }
	            if (notHost.length) {
	              rest = '/' + notHost.join('.') + rest;
	            }
	            this.hostname = validParts.join('.');
	            break;
	          }
	        }
	      }
	    }

	    if (this.hostname.length > hostnameMaxLen) {
	      this.hostname = '';
	    } else {
	      // hostnames are always lower case.
	      this.hostname = this.hostname.toLowerCase();
	    }

	    if (!ipv6Hostname) {
	      // IDNA Support: Returns a puny coded representation of "domain".
	      // It only converts the part of the domain name that
	      // has non ASCII characters. I.e. it dosent matter if
	      // you call it with a domain that already is in ASCII.
	      var domainArray = this.hostname.split('.');
	      var newOut = [];
	      for (var i = 0; i < domainArray.length; ++i) {
	        var s = domainArray[i];
	        newOut.push(s.match(/[^A-Za-z0-9_-]/) ?
	            'xn--' + punycode.encode(s) : s);
	      }
	      this.hostname = newOut.join('.');
	    }

	    var p = this.port ? ':' + this.port : '';
	    var h = this.hostname || '';
	    this.host = h + p;
	    this.href += this.host;

	    // strip [ and ] from the hostname
	    // the host field still retains them, though
	    if (ipv6Hostname) {
	      this.hostname = this.hostname.substr(1, this.hostname.length - 2);
	      if (rest[0] !== '/') {
	        rest = '/' + rest;
	      }
	    }
	  }

	  // now rest is set to the post-host stuff.
	  // chop off any delim chars.
	  if (!unsafeProtocol[lowerProto]) {

	    // First, make 100% sure that any "autoEscape" chars get
	    // escaped, even if encodeURIComponent doesn't think they
	    // need to be.
	    for (var i = 0, l = autoEscape.length; i < l; i++) {
	      var ae = autoEscape[i];
	      var esc = encodeURIComponent(ae);
	      if (esc === ae) {
	        esc = escape(ae);
	      }
	      rest = rest.split(ae).join(esc);
	    }
	  }


	  // chop off from the tail first.
	  var hash = rest.indexOf('#');
	  if (hash !== -1) {
	    // got a fragment string.
	    this.hash = rest.substr(hash);
	    rest = rest.slice(0, hash);
	  }
	  var qm = rest.indexOf('?');
	  if (qm !== -1) {
	    this.search = rest.substr(qm);
	    this.query = rest.substr(qm + 1);
	    if (parseQueryString) {
	      this.query = querystring.parse(this.query);
	    }
	    rest = rest.slice(0, qm);
	  } else if (parseQueryString) {
	    // no query string, but parseQueryString still requested
	    this.search = '';
	    this.query = {};
	  }
	  if (rest) this.pathname = rest;
	  if (slashedProtocol[lowerProto] &&
	      this.hostname && !this.pathname) {
	    this.pathname = '/';
	  }

	  //to support http.request
	  if (this.pathname || this.search) {
	    var p = this.pathname || '';
	    var s = this.search || '';
	    this.path = p + s;
	  }

	  // finally, reconstruct the href based on what has been validated.
	  this.href = this.format();
	  return this;
	};

	// format a parsed object into a url string
	function urlFormat(obj) {
	  // ensure it's an object, and not a string url.
	  // If it's an obj, this is a no-op.
	  // this way, you can call url_format() on strings
	  // to clean up potentially wonky urls.
	  if (isString(obj)) obj = urlParse(obj);
	  if (!(obj instanceof Url)) return Url.prototype.format.call(obj);
	  return obj.format();
	}

	Url.prototype.format = function() {
	  var auth = this.auth || '';
	  if (auth) {
	    auth = encodeURIComponent(auth);
	    auth = auth.replace(/%3A/i, ':');
	    auth += '@';
	  }

	  var protocol = this.protocol || '',
	      pathname = this.pathname || '',
	      hash = this.hash || '',
	      host = false,
	      query = '';

	  if (this.host) {
	    host = auth + this.host;
	  } else if (this.hostname) {
	    host = auth + (this.hostname.indexOf(':') === -1 ?
	        this.hostname :
	        '[' + this.hostname + ']');
	    if (this.port) {
	      host += ':' + this.port;
	    }
	  }

	  if (this.query &&
	      isObject(this.query) &&
	      Object.keys(this.query).length) {
	    query = querystring.stringify(this.query);
	  }

	  var search = this.search || (query && ('?' + query)) || '';

	  if (protocol && protocol.substr(-1) !== ':') protocol += ':';

	  // only the slashedProtocols get the //.  Not mailto:, xmpp:, etc.
	  // unless they had them to begin with.
	  if (this.slashes ||
	      (!protocol || slashedProtocol[protocol]) && host !== false) {
	    host = '//' + (host || '');
	    if (pathname && pathname.charAt(0) !== '/') pathname = '/' + pathname;
	  } else if (!host) {
	    host = '';
	  }

	  if (hash && hash.charAt(0) !== '#') hash = '#' + hash;
	  if (search && search.charAt(0) !== '?') search = '?' + search;

	  pathname = pathname.replace(/[?#]/g, function(match) {
	    return encodeURIComponent(match);
	  });
	  search = search.replace('#', '%23');

	  return protocol + host + pathname + search + hash;
	};

	function urlResolve(source, relative) {
	  return urlParse(source, false, true).resolve(relative);
	}

	Url.prototype.resolve = function(relative) {
	  return this.resolveObject(urlParse(relative, false, true)).format();
	};

	function urlResolveObject(source, relative) {
	  if (!source) return relative;
	  return urlParse(source, false, true).resolveObject(relative);
	}

	Url.prototype.resolveObject = function(relative) {
	  if (isString(relative)) {
	    var rel = new Url();
	    rel.parse(relative, false, true);
	    relative = rel;
	  }

	  var result = new Url();
	  Object.keys(this).forEach(function(k) {
	    result[k] = this[k];
	  }, this);

	  // hash is always overridden, no matter what.
	  // even href="" will remove it.
	  result.hash = relative.hash;

	  // if the relative url is empty, then there's nothing left to do here.
	  if (relative.href === '') {
	    result.href = result.format();
	    return result;
	  }

	  // hrefs like //foo/bar always cut to the protocol.
	  if (relative.slashes && !relative.protocol) {
	    // take everything except the protocol from relative
	    Object.keys(relative).forEach(function(k) {
	      if (k !== 'protocol')
	        result[k] = relative[k];
	    });

	    //urlParse appends trailing / to urls like http://www.example.com
	    if (slashedProtocol[result.protocol] &&
	        result.hostname && !result.pathname) {
	      result.path = result.pathname = '/';
	    }

	    result.href = result.format();
	    return result;
	  }

	  if (relative.protocol && relative.protocol !== result.protocol) {
	    // if it's a known url protocol, then changing
	    // the protocol does weird things
	    // first, if it's not file:, then we MUST have a host,
	    // and if there was a path
	    // to begin with, then we MUST have a path.
	    // if it is file:, then the host is dropped,
	    // because that's known to be hostless.
	    // anything else is assumed to be absolute.
	    if (!slashedProtocol[relative.protocol]) {
	      Object.keys(relative).forEach(function(k) {
	        result[k] = relative[k];
	      });
	      result.href = result.format();
	      return result;
	    }

	    result.protocol = relative.protocol;
	    if (!relative.host && !hostlessProtocol[relative.protocol]) {
	      var relPath = (relative.pathname || '').split('/');
	      while (relPath.length && !(relative.host = relPath.shift()));
	      if (!relative.host) relative.host = '';
	      if (!relative.hostname) relative.hostname = '';
	      if (relPath[0] !== '') relPath.unshift('');
	      if (relPath.length < 2) relPath.unshift('');
	      result.pathname = relPath.join('/');
	    } else {
	      result.pathname = relative.pathname;
	    }
	    result.search = relative.search;
	    result.query = relative.query;
	    result.host = relative.host || '';
	    result.auth = relative.auth;
	    result.hostname = relative.hostname || relative.host;
	    result.port = relative.port;
	    // to support http.request
	    if (result.pathname || result.search) {
	      var p = result.pathname || '';
	      var s = result.search || '';
	      result.path = p + s;
	    }
	    result.slashes = result.slashes || relative.slashes;
	    result.href = result.format();
	    return result;
	  }

	  var isSourceAbs = (result.pathname && result.pathname.charAt(0) === '/'),
	      isRelAbs = (
	          relative.host ||
	          relative.pathname && relative.pathname.charAt(0) === '/'
	      ),
	      mustEndAbs = (isRelAbs || isSourceAbs ||
	                    (result.host && relative.pathname)),
	      removeAllDots = mustEndAbs,
	      srcPath = result.pathname && result.pathname.split('/') || [],
	      relPath = relative.pathname && relative.pathname.split('/') || [],
	      psychotic = result.protocol && !slashedProtocol[result.protocol];

	  // if the url is a non-slashed url, then relative
	  // links like ../.. should be able
	  // to crawl up to the hostname, as well.  This is strange.
	  // result.protocol has already been set by now.
	  // Later on, put the first path part into the host field.
	  if (psychotic) {
	    result.hostname = '';
	    result.port = null;
	    if (result.host) {
	      if (srcPath[0] === '') srcPath[0] = result.host;
	      else srcPath.unshift(result.host);
	    }
	    result.host = '';
	    if (relative.protocol) {
	      relative.hostname = null;
	      relative.port = null;
	      if (relative.host) {
	        if (relPath[0] === '') relPath[0] = relative.host;
	        else relPath.unshift(relative.host);
	      }
	      relative.host = null;
	    }
	    mustEndAbs = mustEndAbs && (relPath[0] === '' || srcPath[0] === '');
	  }

	  if (isRelAbs) {
	    // it's absolute.
	    result.host = (relative.host || relative.host === '') ?
	                  relative.host : result.host;
	    result.hostname = (relative.hostname || relative.hostname === '') ?
	                      relative.hostname : result.hostname;
	    result.search = relative.search;
	    result.query = relative.query;
	    srcPath = relPath;
	    // fall through to the dot-handling below.
	  } else if (relPath.length) {
	    // it's relative
	    // throw away the existing file, and take the new path instead.
	    if (!srcPath) srcPath = [];
	    srcPath.pop();
	    srcPath = srcPath.concat(relPath);
	    result.search = relative.search;
	    result.query = relative.query;
	  } else if (!isNullOrUndefined(relative.search)) {
	    // just pull out the search.
	    // like href='?foo'.
	    // Put this after the other two cases because it simplifies the booleans
	    if (psychotic) {
	      result.hostname = result.host = srcPath.shift();
	      //occationaly the auth can get stuck only in host
	      //this especialy happens in cases like
	      //url.resolveObject('mailto:local1@domain1', 'local2@domain2')
	      var authInHost = result.host && result.host.indexOf('@') > 0 ?
	                       result.host.split('@') : false;
	      if (authInHost) {
	        result.auth = authInHost.shift();
	        result.host = result.hostname = authInHost.shift();
	      }
	    }
	    result.search = relative.search;
	    result.query = relative.query;
	    //to support http.request
	    if (!isNull(result.pathname) || !isNull(result.search)) {
	      result.path = (result.pathname ? result.pathname : '') +
	                    (result.search ? result.search : '');
	    }
	    result.href = result.format();
	    return result;
	  }

	  if (!srcPath.length) {
	    // no path at all.  easy.
	    // we've already handled the other stuff above.
	    result.pathname = null;
	    //to support http.request
	    if (result.search) {
	      result.path = '/' + result.search;
	    } else {
	      result.path = null;
	    }
	    result.href = result.format();
	    return result;
	  }

	  // if a url ENDs in . or .., then it must get a trailing slash.
	  // however, if it ends in anything else non-slashy,
	  // then it must NOT get a trailing slash.
	  var last = srcPath.slice(-1)[0];
	  var hasTrailingSlash = (
	      (result.host || relative.host) && (last === '.' || last === '..') ||
	      last === '');

	  // strip single dots, resolve double dots to parent dir
	  // if the path tries to go above the root, `up` ends up > 0
	  var up = 0;
	  for (var i = srcPath.length; i >= 0; i--) {
	    last = srcPath[i];
	    if (last == '.') {
	      srcPath.splice(i, 1);
	    } else if (last === '..') {
	      srcPath.splice(i, 1);
	      up++;
	    } else if (up) {
	      srcPath.splice(i, 1);
	      up--;
	    }
	  }

	  // if the path is allowed to go above the root, restore leading ..s
	  if (!mustEndAbs && !removeAllDots) {
	    for (; up--; up) {
	      srcPath.unshift('..');
	    }
	  }

	  if (mustEndAbs && srcPath[0] !== '' &&
	      (!srcPath[0] || srcPath[0].charAt(0) !== '/')) {
	    srcPath.unshift('');
	  }

	  if (hasTrailingSlash && (srcPath.join('/').substr(-1) !== '/')) {
	    srcPath.push('');
	  }

	  var isAbsolute = srcPath[0] === '' ||
	      (srcPath[0] && srcPath[0].charAt(0) === '/');

	  // put the host back
	  if (psychotic) {
	    result.hostname = result.host = isAbsolute ? '' :
	                                    srcPath.length ? srcPath.shift() : '';
	    //occationaly the auth can get stuck only in host
	    //this especialy happens in cases like
	    //url.resolveObject('mailto:local1@domain1', 'local2@domain2')
	    var authInHost = result.host && result.host.indexOf('@') > 0 ?
	                     result.host.split('@') : false;
	    if (authInHost) {
	      result.auth = authInHost.shift();
	      result.host = result.hostname = authInHost.shift();
	    }
	  }

	  mustEndAbs = mustEndAbs || (result.host && srcPath.length);

	  if (mustEndAbs && !isAbsolute) {
	    srcPath.unshift('');
	  }

	  if (!srcPath.length) {
	    result.pathname = null;
	    result.path = null;
	  } else {
	    result.pathname = srcPath.join('/');
	  }

	  //to support request.http
	  if (!isNull(result.pathname) || !isNull(result.search)) {
	    result.path = (result.pathname ? result.pathname : '') +
	                  (result.search ? result.search : '');
	  }
	  result.auth = relative.auth || result.auth;
	  result.slashes = result.slashes || relative.slashes;
	  result.href = result.format();
	  return result;
	};

	Url.prototype.parseHost = function() {
	  var host = this.host;
	  var port = portPattern.exec(host);
	  if (port) {
	    port = port[0];
	    if (port !== ':') {
	      this.port = port.substr(1);
	    }
	    host = host.substr(0, host.length - port.length);
	  }
	  if (host) this.hostname = host;
	};

	function isString(arg) {
	  return typeof arg === "string";
	}

	function isObject(arg) {
	  return typeof arg === 'object' && arg !== null;
	}

	function isNull(arg) {
	  return arg === null;
	}
	function isNullOrUndefined(arg) {
	  return  arg == null;
	}


/***/ }),
/* 16 */
/***/ (function(module, exports, __webpack_require__) {

	var __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(module, global) {/*! https://mths.be/punycode v1.3.2 by @mathias */
	;(function(root) {

		/** Detect free variables */
		var freeExports = typeof exports == 'object' && exports &&
			!exports.nodeType && exports;
		var freeModule = typeof module == 'object' && module &&
			!module.nodeType && module;
		var freeGlobal = typeof global == 'object' && global;
		if (
			freeGlobal.global === freeGlobal ||
			freeGlobal.window === freeGlobal ||
			freeGlobal.self === freeGlobal
		) {
			root = freeGlobal;
		}

		/**
		 * The `punycode` object.
		 * @name punycode
		 * @type Object
		 */
		var punycode,

		/** Highest positive signed 32-bit float value */
		maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1

		/** Bootstring parameters */
		base = 36,
		tMin = 1,
		tMax = 26,
		skew = 38,
		damp = 700,
		initialBias = 72,
		initialN = 128, // 0x80
		delimiter = '-', // '\x2D'

		/** Regular expressions */
		regexPunycode = /^xn--/,
		regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars
		regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators

		/** Error messages */
		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 */
		baseMinusTMin = base - tMin,
		floor = Math.floor,
		stringFromCharCode = String.fromCharCode,

		/** Temporary variable */
		key;

		/*--------------------------------------------------------------------------*/

		/**
		 * A generic error utility function.
		 * @private
		 * @param {String} type The error type.
		 * @returns {Error} Throws a `RangeError` with the applicable error message.
		 */
		function error(type) {
			throw 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 length = array.length;
			var result = [];
			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 = [],
			    counter = 0,
			    length = string.length,
			    value,
			    extra;
			while (counter < length) {
				value = string.charCodeAt(counter++);
				if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
					// high surrogate, and there is a next character
					extra = string.charCodeAt(counter++);
					if ((extra & 0xFC00) == 0xDC00) { // low surrogate
						output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
					} else {
						// 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).
		 */
		function ucs2encode(array) {
			return map(array, function(value) {
				var output = '';
				if (value > 0xFFFF) {
					value -= 0x10000;
					output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800);
					value = 0xDC00 | value & 0x3FF;
				}
				output += stringFromCharCode(value);
				return output;
			}).join('');
		}

		/**
		 * 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.
		 */
		function basicToDigit(codePoint) {
			if (codePoint - 48 < 10) {
				return codePoint - 22;
			}
			if (codePoint - 65 < 26) {
				return codePoint - 65;
			}
			if (codePoint - 97 < 26) {
				return codePoint - 97;
			}
			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.
		 */
		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.
		 * http://tools.ietf.org/html/rfc3492#section-3.4
		 * @private
		 */
		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.
		 */
		function decode(input) {
			// Don't use UCS-2
			var output = [],
			    inputLength = input.length,
			    out,
			    i = 0,
			    n = initialN,
			    bias = initialBias,
			    basic,
			    j,
			    index,
			    oldi,
			    w,
			    k,
			    digit,
			    t,
			    /** Cached calculation results */
			    baseMinusT;

			// 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.

			basic = input.lastIndexOf(delimiter);
			if (basic < 0) {
				basic = 0;
			}

			for (j = 0; j < basic; ++j) {
				// if it's not a basic code point
				if (input.charCodeAt(j) >= 0x80) {
					error('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 (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`.
				for (oldi = i, w = 1, k = base; /* no condition */; k += base) {

					if (index >= inputLength) {
						error('invalid-input');
					}

					digit = basicToDigit(input.charCodeAt(index++));

					if (digit >= base || digit > floor((maxInt - i) / w)) {
						error('overflow');
					}

					i += digit * w;
					t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);

					if (digit < t) {
						break;
					}

					baseMinusT = base - t;
					if (w > floor(maxInt / baseMinusT)) {
						error('overflow');
					}

					w *= baseMinusT;

				}

				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('overflow');
				}

				n += floor(i / out);
				i %= out;

				// Insert `n` at position `i` of the output
				output.splice(i++, 0, n);

			}

			return ucs2encode(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.
		 */
		function encode(input) {
			var n,
			    delta,
			    handledCPCount,
			    basicLength,
			    bias,
			    j,
			    m,
			    q,
			    k,
			    t,
			    currentValue,
			    output = [],
			    /** `inputLength` will hold the number of code points in `input`. */
			    inputLength,
			    /** Cached calculation results */
			    handledCPCountPlusOne,
			    baseMinusT,
			    qMinusT;

			// Convert the input in UCS-2 to Unicode
			input = ucs2decode(input);

			// Cache the length
			inputLength = input.length;

			// Initialize the state
			n = initialN;
			delta = 0;
			bias = initialBias;

			// Handle the basic code points
			for (j = 0; j < inputLength; ++j) {
				currentValue = input[j];
				if (currentValue < 0x80) {
					output.push(stringFromCharCode(currentValue));
				}
			}

			handledCPCount = basicLength = output.length;

			// `handledCPCount` is the number of code points that have been handled;
			// `basicLength` is the number of basic code points.

			// Finish the basic string - if it is not empty - with a delimiter
			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:
				for (m = maxInt, j = 0; j < inputLength; ++j) {
					currentValue = input[j];
					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
				handledCPCountPlusOne = handledCPCount + 1;
				if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
					error('overflow');
				}

				delta += (m - n) * handledCPCountPlusOne;
				n = m;

				for (j = 0; j < inputLength; ++j) {
					currentValue = input[j];

					if (currentValue < n && ++delta > maxInt) {
						error('overflow');
					}

					if (currentValue == n) {
						// Represent delta as a generalized variable-length integer
						for (q = delta, k = base; /* no condition */; k += base) {
							t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);
							if (q < t) {
								break;
							}
							qMinusT = q - t;
							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;
					}
				}

				++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.
		 */
		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.
		 */
		function toASCII(input) {
			return mapDomain(input, function(string) {
				return regexNonASCII.test(string)
					? 'xn--' + encode(string)
					: string;
			});
		}

		/*--------------------------------------------------------------------------*/

		/** Define the public API */
		punycode = {
			/**
			 * A string representing the current Punycode.js version number.
			 * @memberOf punycode
			 * @type String
			 */
			'version': '1.3.2',
			/**
			 * 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
		};

		/** Expose `punycode` */
		// Some AMD build optimizers, like r.js, check for specific condition patterns
		// like the following:
		if (
			true
		) {
			!(__WEBPACK_AMD_DEFINE_RESULT__ = function() {
				return punycode;
			}.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
		} else if (freeExports && freeModule) {
			if (module.exports == freeExports) { // in Node.js or RingoJS v0.8.0+
				freeModule.exports = punycode;
			} else { // in Narwhal or RingoJS v0.7.0-
				for (key in punycode) {
					punycode.hasOwnProperty(key) && (freeExports[key] = punycode[key]);
				}
			}
		} else { // in Rhino or a web browser
			root.punycode = punycode;
		}

	}(this));

	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(17)(module), (function() { return this; }())))

/***/ }),
/* 17 */
/***/ (function(module, exports) {

	module.exports = function(module) {
		if(!module.webpackPolyfill) {
			module.deprecate = function() {};
			module.paths = [];
			// module.parent = undefined by default
			module.children = [];
			module.webpackPolyfill = 1;
		}
		return module;
	}


/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {

	'use strict';

	exports.decode = exports.parse = __webpack_require__(19);
	exports.encode = exports.stringify = __webpack_require__(20);


/***/ }),
/* 19 */
/***/ (function(module, exports) {

	// 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.

	'use strict';

	// If obj.hasOwnProperty has been overridden, then calling
	// obj.hasOwnProperty(prop) will break.
	// See: https://github.com/joyent/node/issues/1707
	function hasOwnProperty(obj, prop) {
	  return Object.prototype.hasOwnProperty.call(obj, prop);
	}

	module.exports = function(qs, sep, eq, options) {
	  sep = sep || '&';
	  eq = eq || '=';
	  var obj = {};

	  if (typeof qs !== 'string' || qs.length === 0) {
	    return obj;
	  }

	  var regexp = /\+/g;
	  qs = qs.split(sep);

	  var maxKeys = 1000;
	  if (options && typeof options.maxKeys === 'number') {
	    maxKeys = options.maxKeys;
	  }

	  var len = qs.length;
	  // maxKeys <= 0 means that we should not limit keys count
	  if (maxKeys > 0 && len > maxKeys) {
	    len = maxKeys;
	  }

	  for (var i = 0; i < len; ++i) {
	    var x = qs[i].replace(regexp, '%20'),
	        idx = x.indexOf(eq),
	        kstr, vstr, k, v;

	    if (idx >= 0) {
	      kstr = x.substr(0, idx);
	      vstr = x.substr(idx + 1);
	    } else {
	      kstr = x;
	      vstr = '';
	    }

	    k = decodeURIComponent(kstr);
	    v = decodeURIComponent(vstr);

	    if (!hasOwnProperty(obj, k)) {
	      obj[k] = v;
	    } else if (Array.isArray(obj[k])) {
	      obj[k].push(v);
	    } else {
	      obj[k] = [obj[k], v];
	    }
	  }

	  return obj;
	};


/***/ }),
/* 20 */
/***/ (function(module, exports) {

	// 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.

	'use strict';

	var stringifyPrimitive = function(v) {
	  switch (typeof v) {
	    case 'string':
	      return v;

	    case 'boolean':
	      return v ? 'true' : 'false';

	    case 'number':
	      return isFinite(v) ? v : '';

	    default:
	      return '';
	  }
	};

	module.exports = function(obj, sep, eq, name) {
	  sep = sep || '&';
	  eq = eq || '=';
	  if (obj === null) {
	    obj = undefined;
	  }

	  if (typeof obj === 'object') {
	    return Object.keys(obj).map(function(k) {
	      var ks = encodeURIComponent(stringifyPrimitive(k)) + eq;
	      if (Array.isArray(obj[k])) {
	        return obj[k].map(function(v) {
	          return ks + encodeURIComponent(stringifyPrimitive(v));
	        }).join(sep);
	      } else {
	        return ks + encodeURIComponent(stringifyPrimitive(obj[k]));
	      }
	    }).join(sep);

	  }

	  if (!name) return '';
	  return encodeURIComponent(stringifyPrimitive(name)) + eq +
	         encodeURIComponent(stringifyPrimitive(obj));
	};


/***/ }),
/* 21 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	/**
	 * 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;
	    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
	 */
	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);


/***/ }),
/* 22 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	/**
	 * 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);
	    }
	  },

	  /**
	   * @!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) {
	    if (this.providers.length === 0) {
	      callback(new Error('No providers'));
	      return this;
	    }

	    var index = 0;
	    var providers = this.providers.slice(0);

	    function resolveNext(err, creds) {
	      if ((!err && creds) || index === providers.length) {
	        callback(err, creds);
	        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 this;
	  }
	});

	/**
	 * 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 () {
	 *     // if AWS_CONTAINER_CREDENTIALS_RELATIVE_URI is set
	 *       return new AWS.ECSCredentials();
	 *     // else
	 *       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);


/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var STS = __webpack_require__(24);

	/**
	 * 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.
	 *
	 * 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) {
	    var self = this;
	    self.createClients();
	    if (!callback) callback = function(err) { if (err) throw err; };

	    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});
	  }

	});


/***/ }),
/* 24 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['sts'] = {};
	AWS.STS = Service.defineService('sts', ['2011-06-15']);
	__webpack_require__(25);
	Object.defineProperty(apiLoader.services['sts'], '2011-06-15', {
	  get: function get() {
	    var model = __webpack_require__(26);
	    model.paginators = __webpack_require__(27).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.STS;


/***/ }),
/* 25 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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);
	  }
	});


/***/ }),
/* 26 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2011-06-15","endpointPrefix":"sts","globalEndpoint":"sts.amazonaws.com","protocol":"query","serviceAbbreviation":"AWS STS","serviceFullName":"AWS Security Token Service","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":{},"Policy":{},"DurationSeconds":{"type":"integer"},"ExternalId":{},"SerialNumber":{},"TokenCode":{}}},"output":{"resultWrapper":"AssumeRoleResult","type":"structure","members":{"Credentials":{"shape":"Sa"},"AssumedRoleUser":{"shape":"Sf"},"PackedPolicySize":{"type":"integer"}}}},"AssumeRoleWithSAML":{"input":{"type":"structure","required":["RoleArn","PrincipalArn","SAMLAssertion"],"members":{"RoleArn":{},"PrincipalArn":{},"SAMLAssertion":{},"Policy":{},"DurationSeconds":{"type":"integer"}}},"output":{"resultWrapper":"AssumeRoleWithSAMLResult","type":"structure","members":{"Credentials":{"shape":"Sa"},"AssumedRoleUser":{"shape":"Sf"},"PackedPolicySize":{"type":"integer"},"Subject":{},"SubjectType":{},"Issuer":{},"Audience":{},"NameQualifier":{}}}},"AssumeRoleWithWebIdentity":{"input":{"type":"structure","required":["RoleArn","RoleSessionName","WebIdentityToken"],"members":{"RoleArn":{},"RoleSessionName":{},"WebIdentityToken":{},"ProviderId":{},"Policy":{},"DurationSeconds":{"type":"integer"}}},"output":{"resultWrapper":"AssumeRoleWithWebIdentityResult","type":"structure","members":{"Credentials":{"shape":"Sa"},"SubjectFromWebIdentityToken":{},"AssumedRoleUser":{"shape":"Sf"},"PackedPolicySize":{"type":"integer"},"Provider":{},"Audience":{}}}},"DecodeAuthorizationMessage":{"input":{"type":"structure","required":["EncodedMessage"],"members":{"EncodedMessage":{}}},"output":{"resultWrapper":"DecodeAuthorizationMessageResult","type":"structure","members":{"DecodedMessage":{}}}},"GetCallerIdentity":{"input":{"type":"structure","members":{}},"output":{"resultWrapper":"GetCallerIdentityResult","type":"structure","members":{"UserId":{},"Account":{},"Arn":{}}}},"GetFederationToken":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"Policy":{},"DurationSeconds":{"type":"integer"}}},"output":{"resultWrapper":"GetFederationTokenResult","type":"structure","members":{"Credentials":{"shape":"Sa"},"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":"Sa"}}}}},"shapes":{"Sa":{"type":"structure","required":["AccessKeyId","SecretAccessKey","SessionToken","Expiration"],"members":{"AccessKeyId":{},"SecretAccessKey":{},"SessionToken":{},"Expiration":{"type":"timestamp"}}},"Sf":{"type":"structure","required":["AssumedRoleId","Arn"],"members":{"AssumedRoleId":{},"Arn":{}}}}}

/***/ }),
/* 27 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 28 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var STS = __webpack_require__(24);

	/**
	 * 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) {
	    var self = this;
	    self.createClients();
	    if (!callback) callback = function(err) { if (err) throw err; };

	    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);
	    }
	  }

	});


/***/ }),
/* 29 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var CognitoIdentity = __webpack_require__(30);
	var STS = __webpack_require__(24);

	/**
	 * 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) {
	    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 {};
	    }
	  })()
	});


/***/ }),
/* 30 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['cognitoidentity'] = {};
	AWS.CognitoIdentity = Service.defineService('cognitoidentity', ['2014-06-30']);
	__webpack_require__(31);
	Object.defineProperty(apiLoader.services['cognitoidentity'], '2014-06-30', {
	  get: function get() {
	    var model = __webpack_require__(32);
	    model.paginators = __webpack_require__(33).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CognitoIdentity;


/***/ }),
/* 31 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	AWS.util.update(AWS.CognitoIdentity.prototype, {
	  getOpenIdToken: function getOpenIdToken(params, callback) {
	    return this.makeUnauthenticatedRequest('getOpenIdToken', params, callback);
	  },

	  getId: function getId(params, callback) {
	    return this.makeUnauthenticatedRequest('getId', params, callback);
	  },

	  getCredentialsForIdentity: function getCredentialsForIdentity(params, callback) {
	    return this.makeUnauthenticatedRequest('getCredentialsForIdentity', params, callback);
	  }
	});


/***/ }),
/* 32 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-06-30","endpointPrefix":"cognito-identity","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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"},"SupportedLoginProviders":{"shape":"S4"},"DeveloperProviderName":{},"OpenIdConnectProviderARNs":{"shape":"S8"},"CognitoIdentityProviders":{"shape":"Sa"},"SamlProviderARNs":{"shape":"Sf"}}},"output":{"shape":"Sg"}},"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":"Sr"}},"DescribeIdentityPool":{"input":{"type":"structure","required":["IdentityPoolId"],"members":{"IdentityPoolId":{}}},"output":{"shape":"Sg"}},"GetCredentialsForIdentity":{"input":{"type":"structure","required":["IdentityId"],"members":{"IdentityId":{},"Logins":{"shape":"Sw"},"CustomRoleArn":{}}},"output":{"type":"structure","members":{"IdentityId":{},"Credentials":{"type":"structure","members":{"AccessKeyId":{},"SecretKey":{},"SessionToken":{},"Expiration":{"type":"timestamp"}}}}}},"GetId":{"input":{"type":"structure","required":["IdentityPoolId"],"members":{"AccountId":{},"IdentityPoolId":{},"Logins":{"shape":"Sw"}}},"output":{"type":"structure","members":{"IdentityId":{}}}},"GetIdentityPoolRoles":{"input":{"type":"structure","required":["IdentityPoolId"],"members":{"IdentityPoolId":{}}},"output":{"type":"structure","members":{"IdentityPoolId":{},"Roles":{"shape":"S18"},"RoleMappings":{"shape":"S1a"}}}},"GetOpenIdToken":{"input":{"type":"structure","required":["IdentityId"],"members":{"IdentityId":{},"Logins":{"shape":"Sw"}}},"output":{"type":"structure","members":{"IdentityId":{},"Token":{}}}},"GetOpenIdTokenForDeveloperIdentity":{"input":{"type":"structure","required":["IdentityPoolId","Logins"],"members":{"IdentityPoolId":{},"IdentityId":{},"Logins":{"shape":"Sw"},"TokenDuration":{"type":"long"}}},"output":{"type":"structure","members":{"IdentityId":{},"Token":{}}}},"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":"Sr"}},"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":{}}}},"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":"S18"},"RoleMappings":{"shape":"S1a"}}}},"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":"Sw"},"LoginsToRemove":{"shape":"Ss"}}}},"UpdateIdentityPool":{"input":{"shape":"Sg"},"output":{"shape":"Sg"}}},"shapes":{"S4":{"type":"map","key":{},"value":{}},"S8":{"type":"list","member":{}},"Sa":{"type":"list","member":{"type":"structure","members":{"ProviderName":{},"ClientId":{},"ServerSideTokenCheck":{"type":"boolean"}}}},"Sf":{"type":"list","member":{}},"Sg":{"type":"structure","required":["IdentityPoolId","IdentityPoolName","AllowUnauthenticatedIdentities"],"members":{"IdentityPoolId":{},"IdentityPoolName":{},"AllowUnauthenticatedIdentities":{"type":"boolean"},"SupportedLoginProviders":{"shape":"S4"},"DeveloperProviderName":{},"OpenIdConnectProviderARNs":{"shape":"S8"},"CognitoIdentityProviders":{"shape":"Sa"},"SamlProviderARNs":{"shape":"Sf"}}},"Sr":{"type":"structure","members":{"IdentityId":{},"Logins":{"shape":"Ss"},"CreationDate":{"type":"timestamp"},"LastModifiedDate":{"type":"timestamp"}}},"Ss":{"type":"list","member":{}},"Sw":{"type":"map","key":{},"value":{}},"S18":{"type":"map","key":{},"value":{}},"S1a":{"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":{}}}}}}}}}}}

/***/ }),
/* 33 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 34 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var STS = __webpack_require__(24);

	/**
	 * 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) {
	    var self = this;
	    self.createClients();
	    if (!callback) callback = function(err) { if (err) throw err; };

	    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});
	  }

	});


/***/ }),
/* 35 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var util = AWS.util;
	var Shape = AWS.Model.Shape;

	var xml2js = __webpack_require__(36);

	/**
	 * @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') {
	      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 === ['$']) {
	    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;
	}

	module.exports = NodeXmlParser;


/***/ }),
/* 36 */
/***/ (function(module, exports, __webpack_require__) {

	/* WEBPACK VAR INJECTION */(function(Buffer, setImmediate, clearImmediate) {module.exports =
	/******/ (function(modules) { // webpackBootstrap
	/******/ 	// The module cache
	/******/ 	var installedModules = {};

	/******/ 	// The require function
	/******/ 	function __webpack_require__(moduleId) {

	/******/ 		// Check if module is in cache
	/******/ 		if(installedModules[moduleId])
	/******/ 			return installedModules[moduleId].exports;

	/******/ 		// Create a new module (and put it into the cache)
	/******/ 		var module = installedModules[moduleId] = {
	/******/ 			exports: {},
	/******/ 			id: moduleId,
	/******/ 			loaded: false
	/******/ 		};

	/******/ 		// Execute the module function
	/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

	/******/ 		// Flag the module as loaded
	/******/ 		module.loaded = true;

	/******/ 		// Return the exports of the module
	/******/ 		return module.exports;
	/******/ 	}


	/******/ 	// expose the modules object (__webpack_modules__)
	/******/ 	__webpack_require__.m = modules;

	/******/ 	// expose the module cache
	/******/ 	__webpack_require__.c = installedModules;

	/******/ 	// __webpack_public_path__
	/******/ 	__webpack_require__.p = "";

	/******/ 	// Load entry module and return exports
	/******/ 	return __webpack_require__(0);
	/******/ })
	/************************************************************************/
	/******/ ([
	/* 0 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(1);


	/***/ }),
	/* 1 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.10.0
		(function() {
		  "use strict";
		  var bom, builder, escapeCDATA, events, isEmpty, processName, processors, requiresCDATA, sax, setImmediate, wrapCDATA,
		    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,
		    bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };

		  sax = __webpack_require__(2);

		  events = __webpack_require__(8);

		  builder = __webpack_require__(33);

		  bom = __webpack_require__(191);

		  processors = __webpack_require__(192);

		  setImmediate = __webpack_require__(22).setImmediate;

		  isEmpty = function(thing) {
		    return typeof thing === "object" && (thing != null) && Object.keys(thing).length === 0;
		  };

		  processName = function(processors, processedName) {
		    var i, len, process;
		    for (i = 0, len = processors.length; i < len; i++) {
		      process = processors[i];
		      processedName = process(processedName);
		    }
		    return processedName;
		  };

		  requiresCDATA = function(entry) {
		    return entry.indexOf('&') >= 0 || entry.indexOf('>') >= 0 || entry.indexOf('<') >= 0;
		  };

		  wrapCDATA = function(entry) {
		    return "<![CDATA[" + (escapeCDATA(entry)) + "]]>";
		  };

		  escapeCDATA = function(entry) {
		    return entry.replace(']]>', ']]]]><![CDATA[>');
		  };

		  exports.processors = processors;

		  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
		    }
		  };

		  exports.ValidationError = (function(superClass) {
		    extend(ValidationError, superClass);

		    function ValidationError(message) {
		      this.message = message;
		    }

		    return ValidationError;

		  })(Error);

		  exports.Builder = (function() {
		    function Builder(opts) {
		      var key, ref, value;
		      this.options = {};
		      ref = exports.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 === exports.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 {
		            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;

		  })();

		  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 = exports.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, error1;
		      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 ? processName(_this.options.attrValueProcessors, node.attributes[key]) : node.attributes[key];
		              processedKey = _this.options.attrNameProcessors ? processName(_this.options.attrNameProcessors, key) : key;
		              if (_this.options.mergeAttrs) {
		                _this.assignOrPush(obj, processedKey, newValue);
		              } else {
		                obj[attrkey][processedKey] = newValue;
		              }
		            }
		          }
		          obj["#name"] = _this.options.tagNameProcessors ? processName(_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, err, error1, 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 ? processName(_this.options.valueProcessors, obj[charkey]) : 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("/");
		            try {
		              obj = _this.options.validator(xpath, s && s[nodeName], obj);
		            } catch (error1) {
		              err = error1;
		              _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, error1;
		      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);


	/***/ }),
	/* 2 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(Buffer) {;(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__(7).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__(32).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)
		  }

		  // character classes and tokens
		  var whitespace = '\r\n\t '

		  // this really needs to be replaced with character classes.
		  // XML allows all manner of ridiculous numbers and digits.
		  var number = '0124356789'
		  var letter = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'

		  // (Letter | "_" | ":")
		  var quote = '\'"'
		  var attribEnd = whitespace + '>'
		  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 }

		  // turn all the string character sets into character class objects.
		  whitespace = charClass(whitespace)
		  number = charClass(number)
		  letter = charClass(letter)

		  // 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-]/

		  quote = charClass(quote)
		  attribEnd = charClass(attribEnd)

		  function charClass (str) {
		    return str.split('').reduce(function (s, c) {
		      s[c] = true
		      return s
		    }, {})
		  }

		  function isRegExp (c) {
		    return Object.prototype.toString.call(c) === '[object RegExp]'
		  }

		  function is (charclass, c) {
		    return isRegExp(charclass) ? !!c.match(charclass) : charclass[c]
		  }

		  function not (charclass, c) {
		    return !is(charclass, 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 (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 (not(whitespace, 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 (not(whitespace, 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 (is(whitespace, c)) {
		            // wait for it...
		          } else if (is(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 (is(quote, 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 (is(quote, 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 (is(quote, 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 (is(whitespace, c)) {
		            parser.state = S.PROC_INST_BODY
		          } else {
		            parser.procInstName += c
		          }
		          continue

		        case S.PROC_INST_BODY:
		          if (!parser.procInstBody && is(whitespace, 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 (is(nameBody, c)) {
		            parser.tagName += c
		          } else {
		            newTag(parser)
		            if (c === '>') {
		              openTag(parser)
		            } else if (c === '/') {
		              parser.state = S.OPEN_TAG_SLASH
		            } else {
		              if (not(whitespace, 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 (is(whitespace, c)) {
		            continue
		          } else if (c === '>') {
		            openTag(parser)
		          } else if (c === '/') {
		            parser.state = S.OPEN_TAG_SLASH
		          } else if (is(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 (is(whitespace, c)) {
		            parser.state = S.ATTRIB_NAME_SAW_WHITE
		          } else if (is(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 (is(whitespace, 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 (is(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 (is(whitespace, c)) {
		            continue
		          } else if (is(quote, 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 (is(whitespace, c)) {
		            parser.state = S.ATTRIB
		          } else if (c === '>') {
		            openTag(parser)
		          } else if (c === '/') {
		            parser.state = S.OPEN_TAG_SLASH
		          } else if (is(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 (not(attribEnd, 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 (is(whitespace, c)) {
		              continue
		            } else if (not(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 (is(nameBody, c)) {
		            parser.tagName += c
		          } else if (parser.script) {
		            parser.script += '</' + parser.tagName
		            parser.tagName = ''
		            parser.state = S.SCRIPT
		          } else {
		            if (not(whitespace, c)) {
		              strictFail(parser, 'Invalid tagname in closing tag')
		            }
		            parser.state = S.CLOSE_TAG_SAW_WHITE
		          }
		          continue

		        case S.CLOSE_TAG_SAW_WHITE:
		          if (is(whitespace, 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 (is(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 */
		  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
		      }
		      if (Object.defineProperty) {
		        Object.defineProperty(String, 'fromCodePoint', {
		          value: fromCodePoint,
		          configurable: true,
		          writable: true
		        })
		      } else {
		        String.fromCodePoint = fromCodePoint
		      }
		    }())
		  }
		})( false ? this.sax = {} : exports)

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3).Buffer))

	/***/ }),
	/* 3 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(global) {/*!
		 * The buffer module from node.js, for the browser.
		 *
		 * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
		 * @license  MIT
		 */
		/* eslint-disable no-proto */

		'use strict'

		var base64 = __webpack_require__(4)
		var ieee754 = __webpack_require__(5)
		var isArray = __webpack_require__(6)

		exports.Buffer = Buffer
		exports.SlowBuffer = SlowBuffer
		exports.INSPECT_MAX_BYTES = 50

		/**
		 * If `Buffer.TYPED_ARRAY_SUPPORT`:
		 *   === true    Use Uint8Array implementation (fastest)
		 *   === false   Use Object implementation (most compatible, even IE6)
		 *
		 * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,
		 * Opera 11.6+, iOS 4.2+.
		 *
		 * Due to various browser bugs, sometimes the Object implementation will be used even
		 * when the browser supports typed arrays.
		 *
		 * Note:
		 *
		 *   - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,
		 *     See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.
		 *
		 *   - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.
		 *
		 *   - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of
		 *     incorrect length in some situations.

		 * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they
		 * get the Object implementation, which is slower but behaves correctly.
		 */
		Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined
		  ? global.TYPED_ARRAY_SUPPORT
		  : typedArraySupport()

		/*
		 * Export kMaxLength after typed array support is determined.
		 */
		exports.kMaxLength = kMaxLength()

		function typedArraySupport () {
		  try {
		    var arr = new Uint8Array(1)
		    arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}
		    return arr.foo() === 42 && // typed array instances can be augmented
		        typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`
		        arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`
		  } catch (e) {
		    return false
		  }
		}

		function kMaxLength () {
		  return Buffer.TYPED_ARRAY_SUPPORT
		    ? 0x7fffffff
		    : 0x3fffffff
		}

		function createBuffer (that, length) {
		  if (kMaxLength() < length) {
		    throw new RangeError('Invalid typed array length')
		  }
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    // Return an augmented `Uint8Array` instance, for best performance
		    that = new Uint8Array(length)
		    that.__proto__ = Buffer.prototype
		  } else {
		    // Fallback: Return an object instance of the Buffer class
		    if (that === null) {
		      that = new Buffer(length)
		    }
		    that.length = length
		  }

		  return that
		}

		/**
		 * The Buffer constructor returns instances of `Uint8Array` that have their
		 * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of
		 * `Uint8Array`, so the returned instances will have all the node `Buffer` methods
		 * and the `Uint8Array` methods. Square bracket notation works as expected -- it
		 * returns a single octet.
		 *
		 * The `Uint8Array` prototype remains unmodified.
		 */

		function Buffer (arg, encodingOrOffset, length) {
		  if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {
		    return new Buffer(arg, encodingOrOffset, length)
		  }

		  // Common case.
		  if (typeof arg === 'number') {
		    if (typeof encodingOrOffset === 'string') {
		      throw new Error(
		        'If encoding is specified then the first argument must be a string'
		      )
		    }
		    return allocUnsafe(this, arg)
		  }
		  return from(this, arg, encodingOrOffset, length)
		}

		Buffer.poolSize = 8192 // not used by this implementation

		// TODO: Legacy, not needed anymore. Remove in next major version.
		Buffer._augment = function (arr) {
		  arr.__proto__ = Buffer.prototype
		  return arr
		}

		function from (that, value, encodingOrOffset, length) {
		  if (typeof value === 'number') {
		    throw new TypeError('"value" argument must not be a number')
		  }

		  if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {
		    return fromArrayBuffer(that, value, encodingOrOffset, length)
		  }

		  if (typeof value === 'string') {
		    return fromString(that, value, encodingOrOffset)
		  }

		  return fromObject(that, value)
		}

		/**
		 * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError
		 * if value is a number.
		 * Buffer.from(str[, encoding])
		 * Buffer.from(array)
		 * Buffer.from(buffer)
		 * Buffer.from(arrayBuffer[, byteOffset[, length]])
		 **/
		Buffer.from = function (value, encodingOrOffset, length) {
		  return from(null, value, encodingOrOffset, length)
		}

		if (Buffer.TYPED_ARRAY_SUPPORT) {
		  Buffer.prototype.__proto__ = Uint8Array.prototype
		  Buffer.__proto__ = Uint8Array
		  if (typeof Symbol !== 'undefined' && Symbol.species &&
		      Buffer[Symbol.species] === Buffer) {
		    // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
		    Object.defineProperty(Buffer, Symbol.species, {
		      value: null,
		      configurable: true
		    })
		  }
		}

		function assertSize (size) {
		  if (typeof size !== 'number') {
		    throw new TypeError('"size" argument must be a number')
		  } else if (size < 0) {
		    throw new RangeError('"size" argument must not be negative')
		  }
		}

		function alloc (that, size, fill, encoding) {
		  assertSize(size)
		  if (size <= 0) {
		    return createBuffer(that, size)
		  }
		  if (fill !== undefined) {
		    // Only pay attention to encoding if it's a string. This
		    // prevents accidentally sending in a number that would
		    // be interpretted as a start offset.
		    return typeof encoding === 'string'
		      ? createBuffer(that, size).fill(fill, encoding)
		      : createBuffer(that, size).fill(fill)
		  }
		  return createBuffer(that, size)
		}

		/**
		 * Creates a new filled Buffer instance.
		 * alloc(size[, fill[, encoding]])
		 **/
		Buffer.alloc = function (size, fill, encoding) {
		  return alloc(null, size, fill, encoding)
		}

		function allocUnsafe (that, size) {
		  assertSize(size)
		  that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)
		  if (!Buffer.TYPED_ARRAY_SUPPORT) {
		    for (var i = 0; i < size; ++i) {
		      that[i] = 0
		    }
		  }
		  return that
		}

		/**
		 * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.
		 * */
		Buffer.allocUnsafe = function (size) {
		  return allocUnsafe(null, size)
		}
		/**
		 * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.
		 */
		Buffer.allocUnsafeSlow = function (size) {
		  return allocUnsafe(null, size)
		}

		function fromString (that, string, encoding) {
		  if (typeof encoding !== 'string' || encoding === '') {
		    encoding = 'utf8'
		  }

		  if (!Buffer.isEncoding(encoding)) {
		    throw new TypeError('"encoding" must be a valid string encoding')
		  }

		  var length = byteLength(string, encoding) | 0
		  that = createBuffer(that, length)

		  var actual = that.write(string, encoding)

		  if (actual !== length) {
		    // Writing a hex string, for example, that contains invalid characters will
		    // cause everything after the first invalid character to be ignored. (e.g.
		    // 'abxxcd' will be treated as 'ab')
		    that = that.slice(0, actual)
		  }

		  return that
		}

		function fromArrayLike (that, array) {
		  var length = array.length < 0 ? 0 : checked(array.length) | 0
		  that = createBuffer(that, length)
		  for (var i = 0; i < length; i += 1) {
		    that[i] = array[i] & 255
		  }
		  return that
		}

		function fromArrayBuffer (that, array, byteOffset, length) {
		  array.byteLength // this throws if `array` is not a valid ArrayBuffer

		  if (byteOffset < 0 || array.byteLength < byteOffset) {
		    throw new RangeError('\'offset\' is out of bounds')
		  }

		  if (array.byteLength < byteOffset + (length || 0)) {
		    throw new RangeError('\'length\' is out of bounds')
		  }

		  if (byteOffset === undefined && length === undefined) {
		    array = new Uint8Array(array)
		  } else if (length === undefined) {
		    array = new Uint8Array(array, byteOffset)
		  } else {
		    array = new Uint8Array(array, byteOffset, length)
		  }

		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    // Return an augmented `Uint8Array` instance, for best performance
		    that = array
		    that.__proto__ = Buffer.prototype
		  } else {
		    // Fallback: Return an object instance of the Buffer class
		    that = fromArrayLike(that, array)
		  }
		  return that
		}

		function fromObject (that, obj) {
		  if (Buffer.isBuffer(obj)) {
		    var len = checked(obj.length) | 0
		    that = createBuffer(that, len)

		    if (that.length === 0) {
		      return that
		    }

		    obj.copy(that, 0, 0, len)
		    return that
		  }

		  if (obj) {
		    if ((typeof ArrayBuffer !== 'undefined' &&
		        obj.buffer instanceof ArrayBuffer) || 'length' in obj) {
		      if (typeof obj.length !== 'number' || isnan(obj.length)) {
		        return createBuffer(that, 0)
		      }
		      return fromArrayLike(that, obj)
		    }

		    if (obj.type === 'Buffer' && isArray(obj.data)) {
		      return fromArrayLike(that, obj.data)
		    }
		  }

		  throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')
		}

		function checked (length) {
		  // Note: cannot use `length < kMaxLength()` here because that fails when
		  // length is NaN (which is otherwise coerced to zero.)
		  if (length >= kMaxLength()) {
		    throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
		                         'size: 0x' + kMaxLength().toString(16) + ' bytes')
		  }
		  return length | 0
		}

		function SlowBuffer (length) {
		  if (+length != length) { // eslint-disable-line eqeqeq
		    length = 0
		  }
		  return Buffer.alloc(+length)
		}

		Buffer.isBuffer = function isBuffer (b) {
		  return !!(b != null && b._isBuffer)
		}

		Buffer.compare = function compare (a, b) {
		  if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
		    throw new TypeError('Arguments must be Buffers')
		  }

		  if (a === b) return 0

		  var x = a.length
		  var y = b.length

		  for (var i = 0, len = Math.min(x, y); i < len; ++i) {
		    if (a[i] !== b[i]) {
		      x = a[i]
		      y = b[i]
		      break
		    }
		  }

		  if (x < y) return -1
		  if (y < x) return 1
		  return 0
		}

		Buffer.isEncoding = function isEncoding (encoding) {
		  switch (String(encoding).toLowerCase()) {
		    case 'hex':
		    case 'utf8':
		    case 'utf-8':
		    case 'ascii':
		    case 'latin1':
		    case 'binary':
		    case 'base64':
		    case 'ucs2':
		    case 'ucs-2':
		    case 'utf16le':
		    case 'utf-16le':
		      return true
		    default:
		      return false
		  }
		}

		Buffer.concat = function concat (list, length) {
		  if (!isArray(list)) {
		    throw new TypeError('"list" argument must be an Array of Buffers')
		  }

		  if (list.length === 0) {
		    return Buffer.alloc(0)
		  }

		  var i
		  if (length === undefined) {
		    length = 0
		    for (i = 0; i < list.length; ++i) {
		      length += list[i].length
		    }
		  }

		  var buffer = Buffer.allocUnsafe(length)
		  var pos = 0
		  for (i = 0; i < list.length; ++i) {
		    var buf = list[i]
		    if (!Buffer.isBuffer(buf)) {
		      throw new TypeError('"list" argument must be an Array of Buffers')
		    }
		    buf.copy(buffer, pos)
		    pos += buf.length
		  }
		  return buffer
		}

		function byteLength (string, encoding) {
		  if (Buffer.isBuffer(string)) {
		    return string.length
		  }
		  if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&
		      (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {
		    return string.byteLength
		  }
		  if (typeof string !== 'string') {
		    string = '' + string
		  }

		  var len = string.length
		  if (len === 0) return 0

		  // Use a for loop to avoid recursion
		  var loweredCase = false
		  for (;;) {
		    switch (encoding) {
		      case 'ascii':
		      case 'latin1':
		      case 'binary':
		        return len
		      case 'utf8':
		      case 'utf-8':
		      case undefined:
		        return utf8ToBytes(string).length
		      case 'ucs2':
		      case 'ucs-2':
		      case 'utf16le':
		      case 'utf-16le':
		        return len * 2
		      case 'hex':
		        return len >>> 1
		      case 'base64':
		        return base64ToBytes(string).length
		      default:
		        if (loweredCase) return utf8ToBytes(string).length // assume utf8
		        encoding = ('' + encoding).toLowerCase()
		        loweredCase = true
		    }
		  }
		}
		Buffer.byteLength = byteLength

		function slowToString (encoding, start, end) {
		  var loweredCase = false

		  // No need to verify that "this.length <= MAX_UINT32" since it's a read-only
		  // property of a typed array.

		  // This behaves neither like String nor Uint8Array in that we set start/end
		  // to their upper/lower bounds if the value passed is out of range.
		  // undefined is handled specially as per ECMA-262 6th Edition,
		  // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
		  if (start === undefined || start < 0) {
		    start = 0
		  }
		  // Return early if start > this.length. Done here to prevent potential uint32
		  // coercion fail below.
		  if (start > this.length) {
		    return ''
		  }

		  if (end === undefined || end > this.length) {
		    end = this.length
		  }

		  if (end <= 0) {
		    return ''
		  }

		  // Force coersion to uint32. This will also coerce falsey/NaN values to 0.
		  end >>>= 0
		  start >>>= 0

		  if (end <= start) {
		    return ''
		  }

		  if (!encoding) encoding = 'utf8'

		  while (true) {
		    switch (encoding) {
		      case 'hex':
		        return hexSlice(this, start, end)

		      case 'utf8':
		      case 'utf-8':
		        return utf8Slice(this, start, end)

		      case 'ascii':
		        return asciiSlice(this, start, end)

		      case 'latin1':
		      case 'binary':
		        return latin1Slice(this, start, end)

		      case 'base64':
		        return base64Slice(this, start, end)

		      case 'ucs2':
		      case 'ucs-2':
		      case 'utf16le':
		      case 'utf-16le':
		        return utf16leSlice(this, start, end)

		      default:
		        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
		        encoding = (encoding + '').toLowerCase()
		        loweredCase = true
		    }
		  }
		}

		// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect
		// Buffer instances.
		Buffer.prototype._isBuffer = true

		function swap (b, n, m) {
		  var i = b[n]
		  b[n] = b[m]
		  b[m] = i
		}

		Buffer.prototype.swap16 = function swap16 () {
		  var len = this.length
		  if (len % 2 !== 0) {
		    throw new RangeError('Buffer size must be a multiple of 16-bits')
		  }
		  for (var i = 0; i < len; i += 2) {
		    swap(this, i, i + 1)
		  }
		  return this
		}

		Buffer.prototype.swap32 = function swap32 () {
		  var len = this.length
		  if (len % 4 !== 0) {
		    throw new RangeError('Buffer size must be a multiple of 32-bits')
		  }
		  for (var i = 0; i < len; i += 4) {
		    swap(this, i, i + 3)
		    swap(this, i + 1, i + 2)
		  }
		  return this
		}

		Buffer.prototype.swap64 = function swap64 () {
		  var len = this.length
		  if (len % 8 !== 0) {
		    throw new RangeError('Buffer size must be a multiple of 64-bits')
		  }
		  for (var i = 0; i < len; i += 8) {
		    swap(this, i, i + 7)
		    swap(this, i + 1, i + 6)
		    swap(this, i + 2, i + 5)
		    swap(this, i + 3, i + 4)
		  }
		  return this
		}

		Buffer.prototype.toString = function toString () {
		  var length = this.length | 0
		  if (length === 0) return ''
		  if (arguments.length === 0) return utf8Slice(this, 0, length)
		  return slowToString.apply(this, arguments)
		}

		Buffer.prototype.equals = function equals (b) {
		  if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')
		  if (this === b) return true
		  return Buffer.compare(this, b) === 0
		}

		Buffer.prototype.inspect = function inspect () {
		  var str = ''
		  var max = exports.INSPECT_MAX_BYTES
		  if (this.length > 0) {
		    str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')
		    if (this.length > max) str += ' ... '
		  }
		  return '<Buffer ' + str + '>'
		}

		Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {
		  if (!Buffer.isBuffer(target)) {
		    throw new TypeError('Argument must be a Buffer')
		  }

		  if (start === undefined) {
		    start = 0
		  }
		  if (end === undefined) {
		    end = target ? target.length : 0
		  }
		  if (thisStart === undefined) {
		    thisStart = 0
		  }
		  if (thisEnd === undefined) {
		    thisEnd = this.length
		  }

		  if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
		    throw new RangeError('out of range index')
		  }

		  if (thisStart >= thisEnd && start >= end) {
		    return 0
		  }
		  if (thisStart >= thisEnd) {
		    return -1
		  }
		  if (start >= end) {
		    return 1
		  }

		  start >>>= 0
		  end >>>= 0
		  thisStart >>>= 0
		  thisEnd >>>= 0

		  if (this === target) return 0

		  var x = thisEnd - thisStart
		  var y = end - start
		  var len = Math.min(x, y)

		  var thisCopy = this.slice(thisStart, thisEnd)
		  var targetCopy = target.slice(start, end)

		  for (var i = 0; i < len; ++i) {
		    if (thisCopy[i] !== targetCopy[i]) {
		      x = thisCopy[i]
		      y = targetCopy[i]
		      break
		    }
		  }

		  if (x < y) return -1
		  if (y < x) return 1
		  return 0
		}

		// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
		// OR the last index of `val` in `buffer` at offset <= `byteOffset`.
		//
		// Arguments:
		// - buffer - a Buffer to search
		// - val - a string, Buffer, or number
		// - byteOffset - an index into `buffer`; will be clamped to an int32
		// - encoding - an optional encoding, relevant is val is a string
		// - dir - true for indexOf, false for lastIndexOf
		function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
		  // Empty buffer means no match
		  if (buffer.length === 0) return -1

		  // Normalize byteOffset
		  if (typeof byteOffset === 'string') {
		    encoding = byteOffset
		    byteOffset = 0
		  } else if (byteOffset > 0x7fffffff) {
		    byteOffset = 0x7fffffff
		  } else if (byteOffset < -0x80000000) {
		    byteOffset = -0x80000000
		  }
		  byteOffset = +byteOffset  // Coerce to Number.
		  if (isNaN(byteOffset)) {
		    // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
		    byteOffset = dir ? 0 : (buffer.length - 1)
		  }

		  // Normalize byteOffset: negative offsets start from the end of the buffer
		  if (byteOffset < 0) byteOffset = buffer.length + byteOffset
		  if (byteOffset >= buffer.length) {
		    if (dir) return -1
		    else byteOffset = buffer.length - 1
		  } else if (byteOffset < 0) {
		    if (dir) byteOffset = 0
		    else return -1
		  }

		  // Normalize val
		  if (typeof val === 'string') {
		    val = Buffer.from(val, encoding)
		  }

		  // Finally, search either indexOf (if dir is true) or lastIndexOf
		  if (Buffer.isBuffer(val)) {
		    // Special case: looking for empty string/buffer always fails
		    if (val.length === 0) {
		      return -1
		    }
		    return arrayIndexOf(buffer, val, byteOffset, encoding, dir)
		  } else if (typeof val === 'number') {
		    val = val & 0xFF // Search for a byte value [0-255]
		    if (Buffer.TYPED_ARRAY_SUPPORT &&
		        typeof Uint8Array.prototype.indexOf === 'function') {
		      if (dir) {
		        return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)
		      } else {
		        return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)
		      }
		    }
		    return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)
		  }

		  throw new TypeError('val must be string, number or Buffer')
		}

		function arrayIndexOf (arr, val, byteOffset, encoding, dir) {
		  var indexSize = 1
		  var arrLength = arr.length
		  var valLength = val.length

		  if (encoding !== undefined) {
		    encoding = String(encoding).toLowerCase()
		    if (encoding === 'ucs2' || encoding === 'ucs-2' ||
		        encoding === 'utf16le' || encoding === 'utf-16le') {
		      if (arr.length < 2 || val.length < 2) {
		        return -1
		      }
		      indexSize = 2
		      arrLength /= 2
		      valLength /= 2
		      byteOffset /= 2
		    }
		  }

		  function read (buf, i) {
		    if (indexSize === 1) {
		      return buf[i]
		    } else {
		      return buf.readUInt16BE(i * indexSize)
		    }
		  }

		  var i
		  if (dir) {
		    var foundIndex = -1
		    for (i = byteOffset; i < arrLength; i++) {
		      if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
		        if (foundIndex === -1) foundIndex = i
		        if (i - foundIndex + 1 === valLength) return foundIndex * indexSize
		      } else {
		        if (foundIndex !== -1) i -= i - foundIndex
		        foundIndex = -1
		      }
		    }
		  } else {
		    if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength
		    for (i = byteOffset; i >= 0; i--) {
		      var found = true
		      for (var j = 0; j < valLength; j++) {
		        if (read(arr, i + j) !== read(val, j)) {
		          found = false
		          break
		        }
		      }
		      if (found) return i
		    }
		  }

		  return -1
		}

		Buffer.prototype.includes = function includes (val, byteOffset, encoding) {
		  return this.indexOf(val, byteOffset, encoding) !== -1
		}

		Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {
		  return bidirectionalIndexOf(this, val, byteOffset, encoding, true)
		}

		Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {
		  return bidirectionalIndexOf(this, val, byteOffset, encoding, false)
		}

		function hexWrite (buf, string, offset, length) {
		  offset = Number(offset) || 0
		  var remaining = buf.length - offset
		  if (!length) {
		    length = remaining
		  } else {
		    length = Number(length)
		    if (length > remaining) {
		      length = remaining
		    }
		  }

		  // must be an even number of digits
		  var strLen = string.length
		  if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')

		  if (length > strLen / 2) {
		    length = strLen / 2
		  }
		  for (var i = 0; i < length; ++i) {
		    var parsed = parseInt(string.substr(i * 2, 2), 16)
		    if (isNaN(parsed)) return i
		    buf[offset + i] = parsed
		  }
		  return i
		}

		function utf8Write (buf, string, offset, length) {
		  return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)
		}

		function asciiWrite (buf, string, offset, length) {
		  return blitBuffer(asciiToBytes(string), buf, offset, length)
		}

		function latin1Write (buf, string, offset, length) {
		  return asciiWrite(buf, string, offset, length)
		}

		function base64Write (buf, string, offset, length) {
		  return blitBuffer(base64ToBytes(string), buf, offset, length)
		}

		function ucs2Write (buf, string, offset, length) {
		  return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)
		}

		Buffer.prototype.write = function write (string, offset, length, encoding) {
		  // Buffer#write(string)
		  if (offset === undefined) {
		    encoding = 'utf8'
		    length = this.length
		    offset = 0
		  // Buffer#write(string, encoding)
		  } else if (length === undefined && typeof offset === 'string') {
		    encoding = offset
		    length = this.length
		    offset = 0
		  // Buffer#write(string, offset[, length][, encoding])
		  } else if (isFinite(offset)) {
		    offset = offset | 0
		    if (isFinite(length)) {
		      length = length | 0
		      if (encoding === undefined) encoding = 'utf8'
		    } else {
		      encoding = length
		      length = undefined
		    }
		  // legacy write(string, encoding, offset, length) - remove in v0.13
		  } else {
		    throw new Error(
		      'Buffer.write(string, encoding, offset[, length]) is no longer supported'
		    )
		  }

		  var remaining = this.length - offset
		  if (length === undefined || length > remaining) length = remaining

		  if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {
		    throw new RangeError('Attempt to write outside buffer bounds')
		  }

		  if (!encoding) encoding = 'utf8'

		  var loweredCase = false
		  for (;;) {
		    switch (encoding) {
		      case 'hex':
		        return hexWrite(this, string, offset, length)

		      case 'utf8':
		      case 'utf-8':
		        return utf8Write(this, string, offset, length)

		      case 'ascii':
		        return asciiWrite(this, string, offset, length)

		      case 'latin1':
		      case 'binary':
		        return latin1Write(this, string, offset, length)

		      case 'base64':
		        // Warning: maxLength not taken into account in base64Write
		        return base64Write(this, string, offset, length)

		      case 'ucs2':
		      case 'ucs-2':
		      case 'utf16le':
		      case 'utf-16le':
		        return ucs2Write(this, string, offset, length)

		      default:
		        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
		        encoding = ('' + encoding).toLowerCase()
		        loweredCase = true
		    }
		  }
		}

		Buffer.prototype.toJSON = function toJSON () {
		  return {
		    type: 'Buffer',
		    data: Array.prototype.slice.call(this._arr || this, 0)
		  }
		}

		function base64Slice (buf, start, end) {
		  if (start === 0 && end === buf.length) {
		    return base64.fromByteArray(buf)
		  } else {
		    return base64.fromByteArray(buf.slice(start, end))
		  }
		}

		function utf8Slice (buf, start, end) {
		  end = Math.min(buf.length, end)
		  var res = []

		  var i = start
		  while (i < end) {
		    var firstByte = buf[i]
		    var codePoint = null
		    var bytesPerSequence = (firstByte > 0xEF) ? 4
		      : (firstByte > 0xDF) ? 3
		      : (firstByte > 0xBF) ? 2
		      : 1

		    if (i + bytesPerSequence <= end) {
		      var secondByte, thirdByte, fourthByte, tempCodePoint

		      switch (bytesPerSequence) {
		        case 1:
		          if (firstByte < 0x80) {
		            codePoint = firstByte
		          }
		          break
		        case 2:
		          secondByte = buf[i + 1]
		          if ((secondByte & 0xC0) === 0x80) {
		            tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)
		            if (tempCodePoint > 0x7F) {
		              codePoint = tempCodePoint
		            }
		          }
		          break
		        case 3:
		          secondByte = buf[i + 1]
		          thirdByte = buf[i + 2]
		          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {
		            tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)
		            if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {
		              codePoint = tempCodePoint
		            }
		          }
		          break
		        case 4:
		          secondByte = buf[i + 1]
		          thirdByte = buf[i + 2]
		          fourthByte = buf[i + 3]
		          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {
		            tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)
		            if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {
		              codePoint = tempCodePoint
		            }
		          }
		      }
		    }

		    if (codePoint === null) {
		      // we did not generate a valid codePoint so insert a
		      // replacement char (U+FFFD) and advance only 1 byte
		      codePoint = 0xFFFD
		      bytesPerSequence = 1
		    } else if (codePoint > 0xFFFF) {
		      // encode to utf16 (surrogate pair dance)
		      codePoint -= 0x10000
		      res.push(codePoint >>> 10 & 0x3FF | 0xD800)
		      codePoint = 0xDC00 | codePoint & 0x3FF
		    }

		    res.push(codePoint)
		    i += bytesPerSequence
		  }

		  return decodeCodePointsArray(res)
		}

		// Based on http://stackoverflow.com/a/22747272/680742, the browser with
		// the lowest limit is Chrome, with 0x10000 args.
		// We go 1 magnitude less, for safety
		var MAX_ARGUMENTS_LENGTH = 0x1000

		function decodeCodePointsArray (codePoints) {
		  var len = codePoints.length
		  if (len <= MAX_ARGUMENTS_LENGTH) {
		    return String.fromCharCode.apply(String, codePoints) // avoid extra slice()
		  }

		  // Decode in chunks to avoid "call stack size exceeded".
		  var res = ''
		  var i = 0
		  while (i < len) {
		    res += String.fromCharCode.apply(
		      String,
		      codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)
		    )
		  }
		  return res
		}

		function asciiSlice (buf, start, end) {
		  var ret = ''
		  end = Math.min(buf.length, end)

		  for (var i = start; i < end; ++i) {
		    ret += String.fromCharCode(buf[i] & 0x7F)
		  }
		  return ret
		}

		function latin1Slice (buf, start, end) {
		  var ret = ''
		  end = Math.min(buf.length, end)

		  for (var i = start; i < end; ++i) {
		    ret += String.fromCharCode(buf[i])
		  }
		  return ret
		}

		function hexSlice (buf, start, end) {
		  var len = buf.length

		  if (!start || start < 0) start = 0
		  if (!end || end < 0 || end > len) end = len

		  var out = ''
		  for (var i = start; i < end; ++i) {
		    out += toHex(buf[i])
		  }
		  return out
		}

		function utf16leSlice (buf, start, end) {
		  var bytes = buf.slice(start, end)
		  var res = ''
		  for (var i = 0; i < bytes.length; i += 2) {
		    res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)
		  }
		  return res
		}

		Buffer.prototype.slice = function slice (start, end) {
		  var len = this.length
		  start = ~~start
		  end = end === undefined ? len : ~~end

		  if (start < 0) {
		    start += len
		    if (start < 0) start = 0
		  } else if (start > len) {
		    start = len
		  }

		  if (end < 0) {
		    end += len
		    if (end < 0) end = 0
		  } else if (end > len) {
		    end = len
		  }

		  if (end < start) end = start

		  var newBuf
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    newBuf = this.subarray(start, end)
		    newBuf.__proto__ = Buffer.prototype
		  } else {
		    var sliceLen = end - start
		    newBuf = new Buffer(sliceLen, undefined)
		    for (var i = 0; i < sliceLen; ++i) {
		      newBuf[i] = this[i + start]
		    }
		  }

		  return newBuf
		}

		/*
		 * Need to make sure that buffer isn't trying to write out of bounds.
		 */
		function checkOffset (offset, ext, length) {
		  if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')
		  if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')
		}

		Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {
		  offset = offset | 0
		  byteLength = byteLength | 0
		  if (!noAssert) checkOffset(offset, byteLength, this.length)

		  var val = this[offset]
		  var mul = 1
		  var i = 0
		  while (++i < byteLength && (mul *= 0x100)) {
		    val += this[offset + i] * mul
		  }

		  return val
		}

		Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {
		  offset = offset | 0
		  byteLength = byteLength | 0
		  if (!noAssert) {
		    checkOffset(offset, byteLength, this.length)
		  }

		  var val = this[offset + --byteLength]
		  var mul = 1
		  while (byteLength > 0 && (mul *= 0x100)) {
		    val += this[offset + --byteLength] * mul
		  }

		  return val
		}

		Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 1, this.length)
		  return this[offset]
		}

		Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 2, this.length)
		  return this[offset] | (this[offset + 1] << 8)
		}

		Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 2, this.length)
		  return (this[offset] << 8) | this[offset + 1]
		}

		Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 4, this.length)

		  return ((this[offset]) |
		      (this[offset + 1] << 8) |
		      (this[offset + 2] << 16)) +
		      (this[offset + 3] * 0x1000000)
		}

		Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 4, this.length)

		  return (this[offset] * 0x1000000) +
		    ((this[offset + 1] << 16) |
		    (this[offset + 2] << 8) |
		    this[offset + 3])
		}

		Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {
		  offset = offset | 0
		  byteLength = byteLength | 0
		  if (!noAssert) checkOffset(offset, byteLength, this.length)

		  var val = this[offset]
		  var mul = 1
		  var i = 0
		  while (++i < byteLength && (mul *= 0x100)) {
		    val += this[offset + i] * mul
		  }
		  mul *= 0x80

		  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

		  return val
		}

		Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {
		  offset = offset | 0
		  byteLength = byteLength | 0
		  if (!noAssert) checkOffset(offset, byteLength, this.length)

		  var i = byteLength
		  var mul = 1
		  var val = this[offset + --i]
		  while (i > 0 && (mul *= 0x100)) {
		    val += this[offset + --i] * mul
		  }
		  mul *= 0x80

		  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

		  return val
		}

		Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 1, this.length)
		  if (!(this[offset] & 0x80)) return (this[offset])
		  return ((0xff - this[offset] + 1) * -1)
		}

		Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 2, this.length)
		  var val = this[offset] | (this[offset + 1] << 8)
		  return (val & 0x8000) ? val | 0xFFFF0000 : val
		}

		Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 2, this.length)
		  var val = this[offset + 1] | (this[offset] << 8)
		  return (val & 0x8000) ? val | 0xFFFF0000 : val
		}

		Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 4, this.length)

		  return (this[offset]) |
		    (this[offset + 1] << 8) |
		    (this[offset + 2] << 16) |
		    (this[offset + 3] << 24)
		}

		Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 4, this.length)

		  return (this[offset] << 24) |
		    (this[offset + 1] << 16) |
		    (this[offset + 2] << 8) |
		    (this[offset + 3])
		}

		Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 4, this.length)
		  return ieee754.read(this, offset, true, 23, 4)
		}

		Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 4, this.length)
		  return ieee754.read(this, offset, false, 23, 4)
		}

		Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 8, this.length)
		  return ieee754.read(this, offset, true, 52, 8)
		}

		Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {
		  if (!noAssert) checkOffset(offset, 8, this.length)
		  return ieee754.read(this, offset, false, 52, 8)
		}

		function checkInt (buf, value, offset, ext, max, min) {
		  if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance')
		  if (value > max || value < min) throw new RangeError('"value" argument is out of bounds')
		  if (offset + ext > buf.length) throw new RangeError('Index out of range')
		}

		Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {
		  value = +value
		  offset = offset | 0
		  byteLength = byteLength | 0
		  if (!noAssert) {
		    var maxBytes = Math.pow(2, 8 * byteLength) - 1
		    checkInt(this, value, offset, byteLength, maxBytes, 0)
		  }

		  var mul = 1
		  var i = 0
		  this[offset] = value & 0xFF
		  while (++i < byteLength && (mul *= 0x100)) {
		    this[offset + i] = (value / mul) & 0xFF
		  }

		  return offset + byteLength
		}

		Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {
		  value = +value
		  offset = offset | 0
		  byteLength = byteLength | 0
		  if (!noAssert) {
		    var maxBytes = Math.pow(2, 8 * byteLength) - 1
		    checkInt(this, value, offset, byteLength, maxBytes, 0)
		  }

		  var i = byteLength - 1
		  var mul = 1
		  this[offset + i] = value & 0xFF
		  while (--i >= 0 && (mul *= 0x100)) {
		    this[offset + i] = (value / mul) & 0xFF
		  }

		  return offset + byteLength
		}

		Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)
		  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
		  this[offset] = (value & 0xff)
		  return offset + 1
		}

		function objectWriteUInt16 (buf, value, offset, littleEndian) {
		  if (value < 0) value = 0xffff + value + 1
		  for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {
		    buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>
		      (littleEndian ? i : 1 - i) * 8
		  }
		}

		Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value & 0xff)
		    this[offset + 1] = (value >>> 8)
		  } else {
		    objectWriteUInt16(this, value, offset, true)
		  }
		  return offset + 2
		}

		Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value >>> 8)
		    this[offset + 1] = (value & 0xff)
		  } else {
		    objectWriteUInt16(this, value, offset, false)
		  }
		  return offset + 2
		}

		function objectWriteUInt32 (buf, value, offset, littleEndian) {
		  if (value < 0) value = 0xffffffff + value + 1
		  for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {
		    buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff
		  }
		}

		Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset + 3] = (value >>> 24)
		    this[offset + 2] = (value >>> 16)
		    this[offset + 1] = (value >>> 8)
		    this[offset] = (value & 0xff)
		  } else {
		    objectWriteUInt32(this, value, offset, true)
		  }
		  return offset + 4
		}

		Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value >>> 24)
		    this[offset + 1] = (value >>> 16)
		    this[offset + 2] = (value >>> 8)
		    this[offset + 3] = (value & 0xff)
		  } else {
		    objectWriteUInt32(this, value, offset, false)
		  }
		  return offset + 4
		}

		Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) {
		    var limit = Math.pow(2, 8 * byteLength - 1)

		    checkInt(this, value, offset, byteLength, limit - 1, -limit)
		  }

		  var i = 0
		  var mul = 1
		  var sub = 0
		  this[offset] = value & 0xFF
		  while (++i < byteLength && (mul *= 0x100)) {
		    if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
		      sub = 1
		    }
		    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
		  }

		  return offset + byteLength
		}

		Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) {
		    var limit = Math.pow(2, 8 * byteLength - 1)

		    checkInt(this, value, offset, byteLength, limit - 1, -limit)
		  }

		  var i = byteLength - 1
		  var mul = 1
		  var sub = 0
		  this[offset + i] = value & 0xFF
		  while (--i >= 0 && (mul *= 0x100)) {
		    if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
		      sub = 1
		    }
		    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
		  }

		  return offset + byteLength
		}

		Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)
		  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
		  if (value < 0) value = 0xff + value + 1
		  this[offset] = (value & 0xff)
		  return offset + 1
		}

		Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value & 0xff)
		    this[offset + 1] = (value >>> 8)
		  } else {
		    objectWriteUInt16(this, value, offset, true)
		  }
		  return offset + 2
		}

		Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value >>> 8)
		    this[offset + 1] = (value & 0xff)
		  } else {
		    objectWriteUInt16(this, value, offset, false)
		  }
		  return offset + 2
		}

		Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value & 0xff)
		    this[offset + 1] = (value >>> 8)
		    this[offset + 2] = (value >>> 16)
		    this[offset + 3] = (value >>> 24)
		  } else {
		    objectWriteUInt32(this, value, offset, true)
		  }
		  return offset + 4
		}

		Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {
		  value = +value
		  offset = offset | 0
		  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
		  if (value < 0) value = 0xffffffff + value + 1
		  if (Buffer.TYPED_ARRAY_SUPPORT) {
		    this[offset] = (value >>> 24)
		    this[offset + 1] = (value >>> 16)
		    this[offset + 2] = (value >>> 8)
		    this[offset + 3] = (value & 0xff)
		  } else {
		    objectWriteUInt32(this, value, offset, false)
		  }
		  return offset + 4
		}

		function checkIEEE754 (buf, value, offset, ext, max, min) {
		  if (offset + ext > buf.length) throw new RangeError('Index out of range')
		  if (offset < 0) throw new RangeError('Index out of range')
		}

		function writeFloat (buf, value, offset, littleEndian, noAssert) {
		  if (!noAssert) {
		    checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)
		  }
		  ieee754.write(buf, value, offset, littleEndian, 23, 4)
		  return offset + 4
		}

		Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {
		  return writeFloat(this, value, offset, true, noAssert)
		}

		Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {
		  return writeFloat(this, value, offset, false, noAssert)
		}

		function writeDouble (buf, value, offset, littleEndian, noAssert) {
		  if (!noAssert) {
		    checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)
		  }
		  ieee754.write(buf, value, offset, littleEndian, 52, 8)
		  return offset + 8
		}

		Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {
		  return writeDouble(this, value, offset, true, noAssert)
		}

		Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {
		  return writeDouble(this, value, offset, false, noAssert)
		}

		// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
		Buffer.prototype.copy = function copy (target, targetStart, start, end) {
		  if (!start) start = 0
		  if (!end && end !== 0) end = this.length
		  if (targetStart >= target.length) targetStart = target.length
		  if (!targetStart) targetStart = 0
		  if (end > 0 && end < start) end = start

		  // Copy 0 bytes; we're done
		  if (end === start) return 0
		  if (target.length === 0 || this.length === 0) return 0

		  // Fatal error conditions
		  if (targetStart < 0) {
		    throw new RangeError('targetStart out of bounds')
		  }
		  if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')
		  if (end < 0) throw new RangeError('sourceEnd out of bounds')

		  // Are we oob?
		  if (end > this.length) end = this.length
		  if (target.length - targetStart < end - start) {
		    end = target.length - targetStart + start
		  }

		  var len = end - start
		  var i

		  if (this === target && start < targetStart && targetStart < end) {
		    // descending copy from end
		    for (i = len - 1; i >= 0; --i) {
		      target[i + targetStart] = this[i + start]
		    }
		  } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {
		    // ascending copy from start
		    for (i = 0; i < len; ++i) {
		      target[i + targetStart] = this[i + start]
		    }
		  } else {
		    Uint8Array.prototype.set.call(
		      target,
		      this.subarray(start, start + len),
		      targetStart
		    )
		  }

		  return len
		}

		// Usage:
		//    buffer.fill(number[, offset[, end]])
		//    buffer.fill(buffer[, offset[, end]])
		//    buffer.fill(string[, offset[, end]][, encoding])
		Buffer.prototype.fill = function fill (val, start, end, encoding) {
		  // Handle string cases:
		  if (typeof val === 'string') {
		    if (typeof start === 'string') {
		      encoding = start
		      start = 0
		      end = this.length
		    } else if (typeof end === 'string') {
		      encoding = end
		      end = this.length
		    }
		    if (val.length === 1) {
		      var code = val.charCodeAt(0)
		      if (code < 256) {
		        val = code
		      }
		    }
		    if (encoding !== undefined && typeof encoding !== 'string') {
		      throw new TypeError('encoding must be a string')
		    }
		    if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {
		      throw new TypeError('Unknown encoding: ' + encoding)
		    }
		  } else if (typeof val === 'number') {
		    val = val & 255
		  }

		  // Invalid ranges are not set to a default, so can range check early.
		  if (start < 0 || this.length < start || this.length < end) {
		    throw new RangeError('Out of range index')
		  }

		  if (end <= start) {
		    return this
		  }

		  start = start >>> 0
		  end = end === undefined ? this.length : end >>> 0

		  if (!val) val = 0

		  var i
		  if (typeof val === 'number') {
		    for (i = start; i < end; ++i) {
		      this[i] = val
		    }
		  } else {
		    var bytes = Buffer.isBuffer(val)
		      ? val
		      : utf8ToBytes(new Buffer(val, encoding).toString())
		    var len = bytes.length
		    for (i = 0; i < end - start; ++i) {
		      this[i + start] = bytes[i % len]
		    }
		  }

		  return this
		}

		// HELPER FUNCTIONS
		// ================

		var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g

		function base64clean (str) {
		  // Node strips out invalid characters like \n and \t from the string, base64-js does not
		  str = stringtrim(str).replace(INVALID_BASE64_RE, '')
		  // Node converts strings with length < 2 to ''
		  if (str.length < 2) return ''
		  // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
		  while (str.length % 4 !== 0) {
		    str = str + '='
		  }
		  return str
		}

		function stringtrim (str) {
		  if (str.trim) return str.trim()
		  return str.replace(/^\s+|\s+$/g, '')
		}

		function toHex (n) {
		  if (n < 16) return '0' + n.toString(16)
		  return n.toString(16)
		}

		function utf8ToBytes (string, units) {
		  units = units || Infinity
		  var codePoint
		  var length = string.length
		  var leadSurrogate = null
		  var bytes = []

		  for (var i = 0; i < length; ++i) {
		    codePoint = string.charCodeAt(i)

		    // is surrogate component
		    if (codePoint > 0xD7FF && codePoint < 0xE000) {
		      // last char was a lead
		      if (!leadSurrogate) {
		        // no lead yet
		        if (codePoint > 0xDBFF) {
		          // unexpected trail
		          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
		          continue
		        } else if (i + 1 === length) {
		          // unpaired lead
		          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
		          continue
		        }

		        // valid lead
		        leadSurrogate = codePoint

		        continue
		      }

		      // 2 leads in a row
		      if (codePoint < 0xDC00) {
		        if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
		        leadSurrogate = codePoint
		        continue
		      }

		      // valid surrogate pair
		      codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000
		    } else if (leadSurrogate) {
		      // valid bmp char, but last char was a lead
		      if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
		    }

		    leadSurrogate = null

		    // encode utf8
		    if (codePoint < 0x80) {
		      if ((units -= 1) < 0) break
		      bytes.push(codePoint)
		    } else if (codePoint < 0x800) {
		      if ((units -= 2) < 0) break
		      bytes.push(
		        codePoint >> 0x6 | 0xC0,
		        codePoint & 0x3F | 0x80
		      )
		    } else if (codePoint < 0x10000) {
		      if ((units -= 3) < 0) break
		      bytes.push(
		        codePoint >> 0xC | 0xE0,
		        codePoint >> 0x6 & 0x3F | 0x80,
		        codePoint & 0x3F | 0x80
		      )
		    } else if (codePoint < 0x110000) {
		      if ((units -= 4) < 0) break
		      bytes.push(
		        codePoint >> 0x12 | 0xF0,
		        codePoint >> 0xC & 0x3F | 0x80,
		        codePoint >> 0x6 & 0x3F | 0x80,
		        codePoint & 0x3F | 0x80
		      )
		    } else {
		      throw new Error('Invalid code point')
		    }
		  }

		  return bytes
		}

		function asciiToBytes (str) {
		  var byteArray = []
		  for (var i = 0; i < str.length; ++i) {
		    // Node's code seems to be doing this and not & 0x7F..
		    byteArray.push(str.charCodeAt(i) & 0xFF)
		  }
		  return byteArray
		}

		function utf16leToBytes (str, units) {
		  var c, hi, lo
		  var byteArray = []
		  for (var i = 0; i < str.length; ++i) {
		    if ((units -= 2) < 0) break

		    c = str.charCodeAt(i)
		    hi = c >> 8
		    lo = c % 256
		    byteArray.push(lo)
		    byteArray.push(hi)
		  }

		  return byteArray
		}

		function base64ToBytes (str) {
		  return base64.toByteArray(base64clean(str))
		}

		function blitBuffer (src, dst, offset, length) {
		  for (var i = 0; i < length; ++i) {
		    if ((i + offset >= dst.length) || (i >= src.length)) break
		    dst[i + offset] = src[i]
		  }
		  return i
		}

		function isnan (val) {
		  return val !== val // eslint-disable-line no-self-compare
		}

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))

	/***/ }),
	/* 4 */
	/***/ (function(module, exports) {

		'use strict'

		exports.byteLength = byteLength
		exports.toByteArray = toByteArray
		exports.fromByteArray = fromByteArray

		var lookup = []
		var revLookup = []
		var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array

		var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
		for (var i = 0, len = code.length; i < len; ++i) {
		  lookup[i] = code[i]
		  revLookup[code.charCodeAt(i)] = i
		}

		revLookup['-'.charCodeAt(0)] = 62
		revLookup['_'.charCodeAt(0)] = 63

		function placeHoldersCount (b64) {
		  var len = b64.length
		  if (len % 4 > 0) {
		    throw new Error('Invalid string. Length must be a multiple of 4')
		  }

		  // the number of equal signs (place holders)
		  // if there are two placeholders, than the two characters before it
		  // represent one byte
		  // if there is only one, then the three characters before it represent 2 bytes
		  // this is just a cheap hack to not do indexOf twice
		  return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0
		}

		function byteLength (b64) {
		  // base64 is 4/3 + up to two characters of the original data
		  return (b64.length * 3 / 4) - placeHoldersCount(b64)
		}

		function toByteArray (b64) {
		  var i, l, tmp, placeHolders, arr
		  var len = b64.length
		  placeHolders = placeHoldersCount(b64)

		  arr = new Arr((len * 3 / 4) - placeHolders)

		  // if there are placeholders, only get up to the last complete 4 chars
		  l = placeHolders > 0 ? len - 4 : len

		  var L = 0

		  for (i = 0; i < l; i += 4) {
		    tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)]
		    arr[L++] = (tmp >> 16) & 0xFF
		    arr[L++] = (tmp >> 8) & 0xFF
		    arr[L++] = tmp & 0xFF
		  }

		  if (placeHolders === 2) {
		    tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4)
		    arr[L++] = tmp & 0xFF
		  } else if (placeHolders === 1) {
		    tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2)
		    arr[L++] = (tmp >> 8) & 0xFF
		    arr[L++] = tmp & 0xFF
		  }

		  return arr
		}

		function tripletToBase64 (num) {
		  return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F]
		}

		function encodeChunk (uint8, start, end) {
		  var tmp
		  var output = []
		  for (var i = start; i < end; i += 3) {
		    tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])
		    output.push(tripletToBase64(tmp))
		  }
		  return output.join('')
		}

		function fromByteArray (uint8) {
		  var tmp
		  var len = uint8.length
		  var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
		  var output = ''
		  var parts = []
		  var maxChunkLength = 16383 // must be multiple of 3

		  // go through the array every three bytes, we'll deal with trailing stuff later
		  for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
		    parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
		  }

		  // pad the end with zeros, but make sure to not forget the extra bytes
		  if (extraBytes === 1) {
		    tmp = uint8[len - 1]
		    output += lookup[tmp >> 2]
		    output += lookup[(tmp << 4) & 0x3F]
		    output += '=='
		  } else if (extraBytes === 2) {
		    tmp = (uint8[len - 2] << 8) + (uint8[len - 1])
		    output += lookup[tmp >> 10]
		    output += lookup[(tmp >> 4) & 0x3F]
		    output += lookup[(tmp << 2) & 0x3F]
		    output += '='
		  }

		  parts.push(output)

		  return parts.join('')
		}


	/***/ }),
	/* 5 */
	/***/ (function(module, exports) {

		exports.read = function (buffer, offset, isLE, mLen, nBytes) {
		  var e, m
		  var eLen = nBytes * 8 - mLen - 1
		  var eMax = (1 << eLen) - 1
		  var eBias = eMax >> 1
		  var nBits = -7
		  var i = isLE ? (nBytes - 1) : 0
		  var d = isLE ? -1 : 1
		  var s = buffer[offset + i]

		  i += d

		  e = s & ((1 << (-nBits)) - 1)
		  s >>= (-nBits)
		  nBits += eLen
		  for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}

		  m = e & ((1 << (-nBits)) - 1)
		  e >>= (-nBits)
		  nBits += mLen
		  for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}

		  if (e === 0) {
		    e = 1 - eBias
		  } else if (e === eMax) {
		    return m ? NaN : ((s ? -1 : 1) * Infinity)
		  } else {
		    m = m + Math.pow(2, mLen)
		    e = e - eBias
		  }
		  return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
		}

		exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
		  var e, m, c
		  var eLen = nBytes * 8 - mLen - 1
		  var eMax = (1 << eLen) - 1
		  var eBias = eMax >> 1
		  var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)
		  var i = isLE ? 0 : (nBytes - 1)
		  var d = isLE ? 1 : -1
		  var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0

		  value = Math.abs(value)

		  if (isNaN(value) || value === Infinity) {
		    m = isNaN(value) ? 1 : 0
		    e = eMax
		  } else {
		    e = Math.floor(Math.log(value) / Math.LN2)
		    if (value * (c = Math.pow(2, -e)) < 1) {
		      e--
		      c *= 2
		    }
		    if (e + eBias >= 1) {
		      value += rt / c
		    } else {
		      value += rt * Math.pow(2, 1 - eBias)
		    }
		    if (value * c >= 2) {
		      e++
		      c /= 2
		    }

		    if (e + eBias >= eMax) {
		      m = 0
		      e = eMax
		    } else if (e + eBias >= 1) {
		      m = (value * c - 1) * Math.pow(2, mLen)
		      e = e + eBias
		    } else {
		      m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)
		      e = 0
		    }
		  }

		  for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}

		  e = (e << mLen) | m
		  eLen += mLen
		  for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}

		  buffer[offset + i - d] |= s * 128
		}


	/***/ }),
	/* 6 */
	/***/ (function(module, exports) {

		var toString = {}.toString;

		module.exports = Array.isArray || function (arr) {
		  return toString.call(arr) == '[object Array]';
		};


	/***/ }),
	/* 7 */
	/***/ (function(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.

		module.exports = Stream;

		var EE = __webpack_require__(8).EventEmitter;
		var inherits = __webpack_require__(9);

		inherits(Stream, EE);
		Stream.Readable = __webpack_require__(10);
		Stream.Writable = __webpack_require__(28);
		Stream.Duplex = __webpack_require__(29);
		Stream.Transform = __webpack_require__(30);
		Stream.PassThrough = __webpack_require__(31);

		// Backwards-compat with node 0.4.x
		Stream.Stream = Stream;



		// old-style streams.  Note that the pipe method (the only relevant
		// part of this class) is overridden in the Readable class.

		function Stream() {
		  EE.call(this);
		}

		Stream.prototype.pipe = function(dest, options) {
		  var source = this;

		  function ondata(chunk) {
		    if (dest.writable) {
		      if (false === dest.write(chunk) && source.pause) {
		        source.pause();
		      }
		    }
		  }

		  source.on('data', ondata);

		  function ondrain() {
		    if (source.readable && source.resume) {
		      source.resume();
		    }
		  }

		  dest.on('drain', ondrain);

		  // If the 'end' option is not supplied, dest.end() will be called when
		  // source gets the 'end' or 'close' events.  Only dest.end() once.
		  if (!dest._isStdio && (!options || options.end !== false)) {
		    source.on('end', onend);
		    source.on('close', onclose);
		  }

		  var didOnEnd = false;
		  function onend() {
		    if (didOnEnd) return;
		    didOnEnd = true;

		    dest.end();
		  }


		  function onclose() {
		    if (didOnEnd) return;
		    didOnEnd = true;

		    if (typeof dest.destroy === 'function') dest.destroy();
		  }

		  // don't leave dangling pipes when there are errors.
		  function onerror(er) {
		    cleanup();
		    if (EE.listenerCount(this, 'error') === 0) {
		      throw er; // Unhandled stream error in pipe.
		    }
		  }

		  source.on('error', onerror);
		  dest.on('error', onerror);

		  // remove all the event listeners that were added.
		  function cleanup() {
		    source.removeListener('data', ondata);
		    dest.removeListener('drain', ondrain);

		    source.removeListener('end', onend);
		    source.removeListener('close', onclose);

		    source.removeListener('error', onerror);
		    dest.removeListener('error', onerror);

		    source.removeListener('end', cleanup);
		    source.removeListener('close', cleanup);

		    dest.removeListener('close', cleanup);
		  }

		  source.on('end', cleanup);
		  source.on('close', cleanup);

		  dest.on('close', cleanup);

		  dest.emit('pipe', source);

		  // Allow for unix-like usage: A.pipe(B).pipe(C)
		  return dest;
		};


	/***/ }),
	/* 8 */
	/***/ (function(module, exports) {

		// 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.

		function EventEmitter() {
		  this._events = this._events || {};
		  this._maxListeners = this._maxListeners || undefined;
		}
		module.exports = EventEmitter;

		// Backwards-compat with node 0.10.x
		EventEmitter.EventEmitter = EventEmitter;

		EventEmitter.prototype._events = undefined;
		EventEmitter.prototype._maxListeners = undefined;

		// By default EventEmitters will print a warning if more than 10 listeners are
		// added to it. This is a useful default which helps finding memory leaks.
		EventEmitter.defaultMaxListeners = 10;

		// Obviously not all Emitters should be limited to 10. This function allows
		// that to be increased. Set to zero for unlimited.
		EventEmitter.prototype.setMaxListeners = function(n) {
		  if (!isNumber(n) || n < 0 || isNaN(n))
		    throw TypeError('n must be a positive number');
		  this._maxListeners = n;
		  return this;
		};

		EventEmitter.prototype.emit = function(type) {
		  var er, handler, len, args, i, listeners;

		  if (!this._events)
		    this._events = {};

		  // If there is no 'error' event listener then throw.
		  if (type === 'error') {
		    if (!this._events.error ||
		        (isObject(this._events.error) && !this._events.error.length)) {
		      er = arguments[1];
		      if (er instanceof Error) {
		        throw er; // Unhandled 'error' event
		      } else {
		        // At least give some kind of context to the user
		        var err = new Error('Uncaught, unspecified "error" event. (' + er + ')');
		        err.context = er;
		        throw err;
		      }
		    }
		  }

		  handler = this._events[type];

		  if (isUndefined(handler))
		    return false;

		  if (isFunction(handler)) {
		    switch (arguments.length) {
		      // fast cases
		      case 1:
		        handler.call(this);
		        break;
		      case 2:
		        handler.call(this, arguments[1]);
		        break;
		      case 3:
		        handler.call(this, arguments[1], arguments[2]);
		        break;
		      // slower
		      default:
		        args = Array.prototype.slice.call(arguments, 1);
		        handler.apply(this, args);
		    }
		  } else if (isObject(handler)) {
		    args = Array.prototype.slice.call(arguments, 1);
		    listeners = handler.slice();
		    len = listeners.length;
		    for (i = 0; i < len; i++)
		      listeners[i].apply(this, args);
		  }

		  return true;
		};

		EventEmitter.prototype.addListener = function(type, listener) {
		  var m;

		  if (!isFunction(listener))
		    throw TypeError('listener must be a function');

		  if (!this._events)
		    this._events = {};

		  // To avoid recursion in the case that type === "newListener"! Before
		  // adding it to the listeners, first emit "newListener".
		  if (this._events.newListener)
		    this.emit('newListener', type,
		              isFunction(listener.listener) ?
		              listener.listener : listener);

		  if (!this._events[type])
		    // Optimize the case of one listener. Don't need the extra array object.
		    this._events[type] = listener;
		  else if (isObject(this._events[type]))
		    // If we've already got an array, just append.
		    this._events[type].push(listener);
		  else
		    // Adding the second element, need to change to array.
		    this._events[type] = [this._events[type], listener];

		  // Check for listener leak
		  if (isObject(this._events[type]) && !this._events[type].warned) {
		    if (!isUndefined(this._maxListeners)) {
		      m = this._maxListeners;
		    } else {
		      m = EventEmitter.defaultMaxListeners;
		    }

		    if (m && m > 0 && this._events[type].length > m) {
		      this._events[type].warned = true;
		      console.error('(node) warning: possible EventEmitter memory ' +
		                    'leak detected. %d listeners added. ' +
		                    'Use emitter.setMaxListeners() to increase limit.',
		                    this._events[type].length);
		      if (typeof console.trace === 'function') {
		        // not supported in IE 10
		        console.trace();
		      }
		    }
		  }

		  return this;
		};

		EventEmitter.prototype.on = EventEmitter.prototype.addListener;

		EventEmitter.prototype.once = function(type, listener) {
		  if (!isFunction(listener))
		    throw TypeError('listener must be a function');

		  var fired = false;

		  function g() {
		    this.removeListener(type, g);

		    if (!fired) {
		      fired = true;
		      listener.apply(this, arguments);
		    }
		  }

		  g.listener = listener;
		  this.on(type, g);

		  return this;
		};

		// emits a 'removeListener' event iff the listener was removed
		EventEmitter.prototype.removeListener = function(type, listener) {
		  var list, position, length, i;

		  if (!isFunction(listener))
		    throw TypeError('listener must be a function');

		  if (!this._events || !this._events[type])
		    return this;

		  list = this._events[type];
		  length = list.length;
		  position = -1;

		  if (list === listener ||
		      (isFunction(list.listener) && list.listener === listener)) {
		    delete this._events[type];
		    if (this._events.removeListener)
		      this.emit('removeListener', type, listener);

		  } else if (isObject(list)) {
		    for (i = length; i-- > 0;) {
		      if (list[i] === listener ||
		          (list[i].listener && list[i].listener === listener)) {
		        position = i;
		        break;
		      }
		    }

		    if (position < 0)
		      return this;

		    if (list.length === 1) {
		      list.length = 0;
		      delete this._events[type];
		    } else {
		      list.splice(position, 1);
		    }

		    if (this._events.removeListener)
		      this.emit('removeListener', type, listener);
		  }

		  return this;
		};

		EventEmitter.prototype.removeAllListeners = function(type) {
		  var key, listeners;

		  if (!this._events)
		    return this;

		  // not listening for removeListener, no need to emit
		  if (!this._events.removeListener) {
		    if (arguments.length === 0)
		      this._events = {};
		    else if (this._events[type])
		      delete this._events[type];
		    return this;
		  }

		  // emit removeListener for all listeners on all events
		  if (arguments.length === 0) {
		    for (key in this._events) {
		      if (key === 'removeListener') continue;
		      this.removeAllListeners(key);
		    }
		    this.removeAllListeners('removeListener');
		    this._events = {};
		    return this;
		  }

		  listeners = this._events[type];

		  if (isFunction(listeners)) {
		    this.removeListener(type, listeners);
		  } else if (listeners) {
		    // LIFO order
		    while (listeners.length)
		      this.removeListener(type, listeners[listeners.length - 1]);
		  }
		  delete this._events[type];

		  return this;
		};

		EventEmitter.prototype.listeners = function(type) {
		  var ret;
		  if (!this._events || !this._events[type])
		    ret = [];
		  else if (isFunction(this._events[type]))
		    ret = [this._events[type]];
		  else
		    ret = this._events[type].slice();
		  return ret;
		};

		EventEmitter.prototype.listenerCount = function(type) {
		  if (this._events) {
		    var evlistener = this._events[type];

		    if (isFunction(evlistener))
		      return 1;
		    else if (evlistener)
		      return evlistener.length;
		  }
		  return 0;
		};

		EventEmitter.listenerCount = function(emitter, type) {
		  return emitter.listenerCount(type);
		};

		function isFunction(arg) {
		  return typeof arg === 'function';
		}

		function isNumber(arg) {
		  return typeof arg === 'number';
		}

		function isObject(arg) {
		  return typeof arg === 'object' && arg !== null;
		}

		function isUndefined(arg) {
		  return arg === void 0;
		}


	/***/ }),
	/* 9 */
	/***/ (function(module, exports) {

		if (typeof Object.create === 'function') {
		  // implementation from standard node.js 'util' module
		  module.exports = function inherits(ctor, 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) {
		    ctor.super_ = superCtor
		    var TempCtor = function () {}
		    TempCtor.prototype = superCtor.prototype
		    ctor.prototype = new TempCtor()
		    ctor.prototype.constructor = ctor
		  }
		}


	/***/ }),
	/* 10 */
	/***/ (function(module, exports, __webpack_require__) {

		exports = module.exports = __webpack_require__(11);
		exports.Stream = exports;
		exports.Readable = exports;
		exports.Writable = __webpack_require__(21);
		exports.Duplex = __webpack_require__(20);
		exports.Transform = __webpack_require__(26);
		exports.PassThrough = __webpack_require__(27);


	/***/ }),
	/* 11 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(global, process) {// 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.

		'use strict';

		/*<replacement>*/

		var processNextTick = __webpack_require__(13);
		/*</replacement>*/

		module.exports = Readable;

		/*<replacement>*/
		var isArray = __webpack_require__(6);
		/*</replacement>*/

		/*<replacement>*/
		var Duplex;
		/*</replacement>*/

		Readable.ReadableState = ReadableState;

		/*<replacement>*/
		var EE = __webpack_require__(8).EventEmitter;

		var EElistenerCount = function (emitter, type) {
		  return emitter.listeners(type).length;
		};
		/*</replacement>*/

		/*<replacement>*/
		var Stream = __webpack_require__(14);
		/*</replacement>*/

		// TODO(bmeurer): Change this back to const once hole checks are
		// properly optimized away early in Ignition+TurboFan.
		/*<replacement>*/
		var Buffer = __webpack_require__(15).Buffer;
		var OurUint8Array = global.Uint8Array || function () {};
		function _uint8ArrayToBuffer(chunk) {
		  return Buffer.from(chunk);
		}
		function _isUint8Array(obj) {
		  return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
		}
		/*</replacement>*/

		/*<replacement>*/
		var util = __webpack_require__(16);
		util.inherits = __webpack_require__(9);
		/*</replacement>*/

		/*<replacement>*/
		var debugUtil = __webpack_require__(17);
		var debug = void 0;
		if (debugUtil && debugUtil.debuglog) {
		  debug = debugUtil.debuglog('stream');
		} else {
		  debug = function () {};
		}
		/*</replacement>*/

		var BufferList = __webpack_require__(18);
		var destroyImpl = __webpack_require__(19);
		var StringDecoder;

		util.inherits(Readable, Stream);

		var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];

		function prependListener(emitter, event, fn) {
		  // Sadly this is not cacheable as some libraries bundle their own
		  // event emitter implementation with them.
		  if (typeof emitter.prependListener === 'function') {
		    return emitter.prependListener(event, fn);
		  } else {
		    // This is a hack to make sure that our error handler is attached before any
		    // userland ones.  NEVER DO THIS. This is here only because this code needs
		    // to continue to work with older versions of Node.js that do not include
		    // the prependListener() method. The goal is to eventually remove this hack.
		    if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];
		  }
		}

		function ReadableState(options, stream) {
		  Duplex = Duplex || __webpack_require__(20);

		  options = options || {};

		  // object stream flag. Used to make read(n) ignore n and to
		  // make all the buffer merging and length checks go away
		  this.objectMode = !!options.objectMode;

		  if (stream instanceof Duplex) this.objectMode = this.objectMode || !!options.readableObjectMode;

		  // the point at which it stops calling _read() to fill the buffer
		  // Note: 0 is a valid value, means "don't call _read preemptively ever"
		  var hwm = options.highWaterMark;
		  var defaultHwm = this.objectMode ? 16 : 16 * 1024;
		  this.highWaterMark = hwm || hwm === 0 ? hwm : defaultHwm;

		  // cast to ints.
		  this.highWaterMark = Math.floor(this.highWaterMark);

		  // A linked list is used to store data chunks instead of an array because the
		  // linked list can remove elements from the beginning faster than
		  // array.shift()
		  this.buffer = new BufferList();
		  this.length = 0;
		  this.pipes = null;
		  this.pipesCount = 0;
		  this.flowing = null;
		  this.ended = false;
		  this.endEmitted = false;
		  this.reading = false;

		  // a flag to be able to tell if the event 'readable'/'data' is emitted
		  // immediately, or on a later tick.  We set this to true at first, because
		  // any actions that shouldn't happen until "later" should generally also
		  // not happen before the first read call.
		  this.sync = true;

		  // whenever we return null, then we set a flag to say
		  // that we're awaiting a 'readable' event emission.
		  this.needReadable = false;
		  this.emittedReadable = false;
		  this.readableListening = false;
		  this.resumeScheduled = false;

		  // has it been destroyed
		  this.destroyed = false;

		  // Crypto is kind of old and crusty.  Historically, its default string
		  // encoding is 'binary' so we have to make this configurable.
		  // Everything else in the universe uses 'utf8', though.
		  this.defaultEncoding = options.defaultEncoding || 'utf8';

		  // the number of writers that are awaiting a drain event in .pipe()s
		  this.awaitDrain = 0;

		  // if true, a maybeReadMore has been scheduled
		  this.readingMore = false;

		  this.decoder = null;
		  this.encoding = null;
		  if (options.encoding) {
		    if (!StringDecoder) StringDecoder = __webpack_require__(25).StringDecoder;
		    this.decoder = new StringDecoder(options.encoding);
		    this.encoding = options.encoding;
		  }
		}

		function Readable(options) {
		  Duplex = Duplex || __webpack_require__(20);

		  if (!(this instanceof Readable)) return new Readable(options);

		  this._readableState = new ReadableState(options, this);

		  // legacy
		  this.readable = true;

		  if (options) {
		    if (typeof options.read === 'function') this._read = options.read;

		    if (typeof options.destroy === 'function') this._destroy = options.destroy;
		  }

		  Stream.call(this);
		}

		Object.defineProperty(Readable.prototype, 'destroyed', {
		  get: function () {
		    if (this._readableState === undefined) {
		      return false;
		    }
		    return this._readableState.destroyed;
		  },
		  set: function (value) {
		    // we ignore the value if the stream
		    // has not been initialized yet
		    if (!this._readableState) {
		      return;
		    }

		    // backward compatibility, the user is explicitly
		    // managing destroyed
		    this._readableState.destroyed = value;
		  }
		});

		Readable.prototype.destroy = destroyImpl.destroy;
		Readable.prototype._undestroy = destroyImpl.undestroy;
		Readable.prototype._destroy = function (err, cb) {
		  this.push(null);
		  cb(err);
		};

		// Manually shove something into the read() buffer.
		// This returns true if the highWaterMark has not been hit yet,
		// similar to how Writable.write() returns true if you should
		// write() some more.
		Readable.prototype.push = function (chunk, encoding) {
		  var state = this._readableState;
		  var skipChunkCheck;

		  if (!state.objectMode) {
		    if (typeof chunk === 'string') {
		      encoding = encoding || state.defaultEncoding;
		      if (encoding !== state.encoding) {
		        chunk = Buffer.from(chunk, encoding);
		        encoding = '';
		      }
		      skipChunkCheck = true;
		    }
		  } else {
		    skipChunkCheck = true;
		  }

		  return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);
		};

		// Unshift should *always* be something directly out of read()
		Readable.prototype.unshift = function (chunk) {
		  return readableAddChunk(this, chunk, null, true, false);
		};

		function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {
		  var state = stream._readableState;
		  if (chunk === null) {
		    state.reading = false;
		    onEofChunk(stream, state);
		  } else {
		    var er;
		    if (!skipChunkCheck) er = chunkInvalid(state, chunk);
		    if (er) {
		      stream.emit('error', er);
		    } else if (state.objectMode || chunk && chunk.length > 0) {
		      if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {
		        chunk = _uint8ArrayToBuffer(chunk);
		      }

		      if (addToFront) {
		        if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true);
		      } else if (state.ended) {
		        stream.emit('error', new Error('stream.push() after EOF'));
		      } else {
		        state.reading = false;
		        if (state.decoder && !encoding) {
		          chunk = state.decoder.write(chunk);
		          if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);
		        } else {
		          addChunk(stream, state, chunk, false);
		        }
		      }
		    } else if (!addToFront) {
		      state.reading = false;
		    }
		  }

		  return needMoreData(state);
		}

		function addChunk(stream, state, chunk, addToFront) {
		  if (state.flowing && state.length === 0 && !state.sync) {
		    stream.emit('data', chunk);
		    stream.read(0);
		  } else {
		    // update the buffer info.
		    state.length += state.objectMode ? 1 : chunk.length;
		    if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);

		    if (state.needReadable) emitReadable(stream);
		  }
		  maybeReadMore(stream, state);
		}

		function chunkInvalid(state, chunk) {
		  var er;
		  if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {
		    er = new TypeError('Invalid non-string/buffer chunk');
		  }
		  return er;
		}

		// if it's past the high water mark, we can push in some more.
		// Also, if we have no data yet, we can stand some
		// more bytes.  This is to work around cases where hwm=0,
		// such as the repl.  Also, if the push() triggered a
		// readable event, and the user called read(largeNumber) such that
		// needReadable was set, then we ought to push more, so that another
		// 'readable' event will be triggered.
		function needMoreData(state) {
		  return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0);
		}

		Readable.prototype.isPaused = function () {
		  return this._readableState.flowing === false;
		};

		// backwards compatibility.
		Readable.prototype.setEncoding = function (enc) {
		  if (!StringDecoder) StringDecoder = __webpack_require__(25).StringDecoder;
		  this._readableState.decoder = new StringDecoder(enc);
		  this._readableState.encoding = enc;
		  return this;
		};

		// Don't raise the hwm > 8MB
		var MAX_HWM = 0x800000;
		function computeNewHighWaterMark(n) {
		  if (n >= MAX_HWM) {
		    n = MAX_HWM;
		  } else {
		    // Get the next highest power of 2 to prevent increasing hwm excessively in
		    // tiny amounts
		    n--;
		    n |= n >>> 1;
		    n |= n >>> 2;
		    n |= n >>> 4;
		    n |= n >>> 8;
		    n |= n >>> 16;
		    n++;
		  }
		  return n;
		}

		// This function is designed to be inlinable, so please take care when making
		// changes to the function body.
		function howMuchToRead(n, state) {
		  if (n <= 0 || state.length === 0 && state.ended) return 0;
		  if (state.objectMode) return 1;
		  if (n !== n) {
		    // Only flow one buffer at a time
		    if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;
		  }
		  // If we're asking for more than the current hwm, then raise the hwm.
		  if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);
		  if (n <= state.length) return n;
		  // Don't have enough
		  if (!state.ended) {
		    state.needReadable = true;
		    return 0;
		  }
		  return state.length;
		}

		// you can override either this method, or the async _read(n) below.
		Readable.prototype.read = function (n) {
		  debug('read', n);
		  n = parseInt(n, 10);
		  var state = this._readableState;
		  var nOrig = n;

		  if (n !== 0) state.emittedReadable = false;

		  // if we're doing read(0) to trigger a readable event, but we
		  // already have a bunch of data in the buffer, then just trigger
		  // the 'readable' event and move on.
		  if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) {
		    debug('read: emitReadable', state.length, state.ended);
		    if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);
		    return null;
		  }

		  n = howMuchToRead(n, state);

		  // if we've ended, and we're now clear, then finish it up.
		  if (n === 0 && state.ended) {
		    if (state.length === 0) endReadable(this);
		    return null;
		  }

		  // All the actual chunk generation logic needs to be
		  // *below* the call to _read.  The reason is that in certain
		  // synthetic stream cases, such as passthrough streams, _read
		  // may be a completely synchronous operation which may change
		  // the state of the read buffer, providing enough data when
		  // before there was *not* enough.
		  //
		  // So, the steps are:
		  // 1. Figure out what the state of things will be after we do
		  // a read from the buffer.
		  //
		  // 2. If that resulting state will trigger a _read, then call _read.
		  // Note that this may be asynchronous, or synchronous.  Yes, it is
		  // deeply ugly to write APIs this way, but that still doesn't mean
		  // that the Readable class should behave improperly, as streams are
		  // designed to be sync/async agnostic.
		  // Take note if the _read call is sync or async (ie, if the read call
		  // has returned yet), so that we know whether or not it's safe to emit
		  // 'readable' etc.
		  //
		  // 3. Actually pull the requested chunks out of the buffer and return.

		  // if we need a readable event, then we need to do some reading.
		  var doRead = state.needReadable;
		  debug('need readable', doRead);

		  // if we currently have less than the highWaterMark, then also read some
		  if (state.length === 0 || state.length - n < state.highWaterMark) {
		    doRead = true;
		    debug('length less than watermark', doRead);
		  }

		  // however, if we've ended, then there's no point, and if we're already
		  // reading, then it's unnecessary.
		  if (state.ended || state.reading) {
		    doRead = false;
		    debug('reading or ended', doRead);
		  } else if (doRead) {
		    debug('do read');
		    state.reading = true;
		    state.sync = true;
		    // if the length is currently zero, then we *need* a readable event.
		    if (state.length === 0) state.needReadable = true;
		    // call internal read method
		    this._read(state.highWaterMark);
		    state.sync = false;
		    // If _read pushed data synchronously, then `reading` will be false,
		    // and we need to re-evaluate how much data we can return to the user.
		    if (!state.reading) n = howMuchToRead(nOrig, state);
		  }

		  var ret;
		  if (n > 0) ret = fromList(n, state);else ret = null;

		  if (ret === null) {
		    state.needReadable = true;
		    n = 0;
		  } else {
		    state.length -= n;
		  }

		  if (state.length === 0) {
		    // If we have nothing in the buffer, then we want to know
		    // as soon as we *do* get something into the buffer.
		    if (!state.ended) state.needReadable = true;

		    // If we tried to read() past the EOF, then emit end on the next tick.
		    if (nOrig !== n && state.ended) endReadable(this);
		  }

		  if (ret !== null) this.emit('data', ret);

		  return ret;
		};

		function onEofChunk(stream, state) {
		  if (state.ended) return;
		  if (state.decoder) {
		    var chunk = state.decoder.end();
		    if (chunk && chunk.length) {
		      state.buffer.push(chunk);
		      state.length += state.objectMode ? 1 : chunk.length;
		    }
		  }
		  state.ended = true;

		  // emit 'readable' now to make sure it gets picked up.
		  emitReadable(stream);
		}

		// Don't emit readable right away in sync mode, because this can trigger
		// another read() call => stack overflow.  This way, it might trigger
		// a nextTick recursion warning, but that's not so bad.
		function emitReadable(stream) {
		  var state = stream._readableState;
		  state.needReadable = false;
		  if (!state.emittedReadable) {
		    debug('emitReadable', state.flowing);
		    state.emittedReadable = true;
		    if (state.sync) processNextTick(emitReadable_, stream);else emitReadable_(stream);
		  }
		}

		function emitReadable_(stream) {
		  debug('emit readable');
		  stream.emit('readable');
		  flow(stream);
		}

		// at this point, the user has presumably seen the 'readable' event,
		// and called read() to consume some data.  that may have triggered
		// in turn another _read(n) call, in which case reading = true if
		// it's in progress.
		// However, if we're not ended, or reading, and the length < hwm,
		// then go ahead and try to read some more preemptively.
		function maybeReadMore(stream, state) {
		  if (!state.readingMore) {
		    state.readingMore = true;
		    processNextTick(maybeReadMore_, stream, state);
		  }
		}

		function maybeReadMore_(stream, state) {
		  var len = state.length;
		  while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) {
		    debug('maybeReadMore read 0');
		    stream.read(0);
		    if (len === state.length)
		      // didn't get any data, stop spinning.
		      break;else len = state.length;
		  }
		  state.readingMore = false;
		}

		// abstract method.  to be overridden in specific implementation classes.
		// call cb(er, data) where data is <= n in length.
		// for virtual (non-string, non-buffer) streams, "length" is somewhat
		// arbitrary, and perhaps not very meaningful.
		Readable.prototype._read = function (n) {
		  this.emit('error', new Error('_read() is not implemented'));
		};

		Readable.prototype.pipe = function (dest, pipeOpts) {
		  var src = this;
		  var state = this._readableState;

		  switch (state.pipesCount) {
		    case 0:
		      state.pipes = dest;
		      break;
		    case 1:
		      state.pipes = [state.pipes, dest];
		      break;
		    default:
		      state.pipes.push(dest);
		      break;
		  }
		  state.pipesCount += 1;
		  debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);

		  var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;

		  var endFn = doEnd ? onend : unpipe;
		  if (state.endEmitted) processNextTick(endFn);else src.once('end', endFn);

		  dest.on('unpipe', onunpipe);
		  function onunpipe(readable, unpipeInfo) {
		    debug('onunpipe');
		    if (readable === src) {
		      if (unpipeInfo && unpipeInfo.hasUnpiped === false) {
		        unpipeInfo.hasUnpiped = true;
		        cleanup();
		      }
		    }
		  }

		  function onend() {
		    debug('onend');
		    dest.end();
		  }

		  // when the dest drains, it reduces the awaitDrain counter
		  // on the source.  This would be more elegant with a .once()
		  // handler in flow(), but adding and removing repeatedly is
		  // too slow.
		  var ondrain = pipeOnDrain(src);
		  dest.on('drain', ondrain);

		  var cleanedUp = false;
		  function cleanup() {
		    debug('cleanup');
		    // cleanup event handlers once the pipe is broken
		    dest.removeListener('close', onclose);
		    dest.removeListener('finish', onfinish);
		    dest.removeListener('drain', ondrain);
		    dest.removeListener('error', onerror);
		    dest.removeListener('unpipe', onunpipe);
		    src.removeListener('end', onend);
		    src.removeListener('end', unpipe);
		    src.removeListener('data', ondata);

		    cleanedUp = true;

		    // if the reader is waiting for a drain event from this
		    // specific writer, then it would cause it to never start
		    // flowing again.
		    // So, if this is awaiting a drain, then we just call it now.
		    // If we don't know, then assume that we are waiting for one.
		    if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();
		  }

		  // If the user pushes more data while we're writing to dest then we'll end up
		  // in ondata again. However, we only want to increase awaitDrain once because
		  // dest will only emit one 'drain' event for the multiple writes.
		  // => Introduce a guard on increasing awaitDrain.
		  var increasedAwaitDrain = false;
		  src.on('data', ondata);
		  function ondata(chunk) {
		    debug('ondata');
		    increasedAwaitDrain = false;
		    var ret = dest.write(chunk);
		    if (false === ret && !increasedAwaitDrain) {
		      // If the user unpiped during `dest.write()`, it is possible
		      // to get stuck in a permanently paused state if that write
		      // also returned false.
		      // => Check whether `dest` is still a piping destination.
		      if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {
		        debug('false write response, pause', src._readableState.awaitDrain);
		        src._readableState.awaitDrain++;
		        increasedAwaitDrain = true;
		      }
		      src.pause();
		    }
		  }

		  // if the dest has an error, then stop piping into it.
		  // however, don't suppress the throwing behavior for this.
		  function onerror(er) {
		    debug('onerror', er);
		    unpipe();
		    dest.removeListener('error', onerror);
		    if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er);
		  }

		  // Make sure our error handler is attached before userland ones.
		  prependListener(dest, 'error', onerror);

		  // Both close and finish should trigger unpipe, but only once.
		  function onclose() {
		    dest.removeListener('finish', onfinish);
		    unpipe();
		  }
		  dest.once('close', onclose);
		  function onfinish() {
		    debug('onfinish');
		    dest.removeListener('close', onclose);
		    unpipe();
		  }
		  dest.once('finish', onfinish);

		  function unpipe() {
		    debug('unpipe');
		    src.unpipe(dest);
		  }

		  // tell the dest that it's being piped to
		  dest.emit('pipe', src);

		  // start the flow if it hasn't been started already.
		  if (!state.flowing) {
		    debug('pipe resume');
		    src.resume();
		  }

		  return dest;
		};

		function pipeOnDrain(src) {
		  return function () {
		    var state = src._readableState;
		    debug('pipeOnDrain', state.awaitDrain);
		    if (state.awaitDrain) state.awaitDrain--;
		    if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {
		      state.flowing = true;
		      flow(src);
		    }
		  };
		}

		Readable.prototype.unpipe = function (dest) {
		  var state = this._readableState;
		  var unpipeInfo = { hasUnpiped: false };

		  // if we're not piping anywhere, then do nothing.
		  if (state.pipesCount === 0) return this;

		  // just one destination.  most common case.
		  if (state.pipesCount === 1) {
		    // passed in one, but it's not the right one.
		    if (dest && dest !== state.pipes) return this;

		    if (!dest) dest = state.pipes;

		    // got a match.
		    state.pipes = null;
		    state.pipesCount = 0;
		    state.flowing = false;
		    if (dest) dest.emit('unpipe', this, unpipeInfo);
		    return this;
		  }

		  // slow case. multiple pipe destinations.

		  if (!dest) {
		    // remove all.
		    var dests = state.pipes;
		    var len = state.pipesCount;
		    state.pipes = null;
		    state.pipesCount = 0;
		    state.flowing = false;

		    for (var i = 0; i < len; i++) {
		      dests[i].emit('unpipe', this, unpipeInfo);
		    }return this;
		  }

		  // try to find the right one.
		  var index = indexOf(state.pipes, dest);
		  if (index === -1) return this;

		  state.pipes.splice(index, 1);
		  state.pipesCount -= 1;
		  if (state.pipesCount === 1) state.pipes = state.pipes[0];

		  dest.emit('unpipe', this, unpipeInfo);

		  return this;
		};

		// set up data events if they are asked for
		// Ensure readable listeners eventually get something
		Readable.prototype.on = function (ev, fn) {
		  var res = Stream.prototype.on.call(this, ev, fn);

		  if (ev === 'data') {
		    // Start flowing on next tick if stream isn't explicitly paused
		    if (this._readableState.flowing !== false) this.resume();
		  } else if (ev === 'readable') {
		    var state = this._readableState;
		    if (!state.endEmitted && !state.readableListening) {
		      state.readableListening = state.needReadable = true;
		      state.emittedReadable = false;
		      if (!state.reading) {
		        processNextTick(nReadingNextTick, this);
		      } else if (state.length) {
		        emitReadable(this);
		      }
		    }
		  }

		  return res;
		};
		Readable.prototype.addListener = Readable.prototype.on;

		function nReadingNextTick(self) {
		  debug('readable nexttick read 0');
		  self.read(0);
		}

		// pause() and resume() are remnants of the legacy readable stream API
		// If the user uses them, then switch into old mode.
		Readable.prototype.resume = function () {
		  var state = this._readableState;
		  if (!state.flowing) {
		    debug('resume');
		    state.flowing = true;
		    resume(this, state);
		  }
		  return this;
		};

		function resume(stream, state) {
		  if (!state.resumeScheduled) {
		    state.resumeScheduled = true;
		    processNextTick(resume_, stream, state);
		  }
		}

		function resume_(stream, state) {
		  if (!state.reading) {
		    debug('resume read 0');
		    stream.read(0);
		  }

		  state.resumeScheduled = false;
		  state.awaitDrain = 0;
		  stream.emit('resume');
		  flow(stream);
		  if (state.flowing && !state.reading) stream.read(0);
		}

		Readable.prototype.pause = function () {
		  debug('call pause flowing=%j', this._readableState.flowing);
		  if (false !== this._readableState.flowing) {
		    debug('pause');
		    this._readableState.flowing = false;
		    this.emit('pause');
		  }
		  return this;
		};

		function flow(stream) {
		  var state = stream._readableState;
		  debug('flow', state.flowing);
		  while (state.flowing && stream.read() !== null) {}
		}

		// wrap an old-style stream as the async data source.
		// This is *not* part of the readable stream interface.
		// It is an ugly unfortunate mess of history.
		Readable.prototype.wrap = function (stream) {
		  var state = this._readableState;
		  var paused = false;

		  var self = this;
		  stream.on('end', function () {
		    debug('wrapped end');
		    if (state.decoder && !state.ended) {
		      var chunk = state.decoder.end();
		      if (chunk && chunk.length) self.push(chunk);
		    }

		    self.push(null);
		  });

		  stream.on('data', function (chunk) {
		    debug('wrapped data');
		    if (state.decoder) chunk = state.decoder.write(chunk);

		    // don't skip over falsy values in objectMode
		    if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;

		    var ret = self.push(chunk);
		    if (!ret) {
		      paused = true;
		      stream.pause();
		    }
		  });

		  // proxy all the other methods.
		  // important when wrapping filters and duplexes.
		  for (var i in stream) {
		    if (this[i] === undefined && typeof stream[i] === 'function') {
		      this[i] = function (method) {
		        return function () {
		          return stream[method].apply(stream, arguments);
		        };
		      }(i);
		    }
		  }

		  // proxy certain important events.
		  for (var n = 0; n < kProxyEvents.length; n++) {
		    stream.on(kProxyEvents[n], self.emit.bind(self, kProxyEvents[n]));
		  }

		  // when we try to consume some more bytes, simply unpause the
		  // underlying stream.
		  self._read = function (n) {
		    debug('wrapped _read', n);
		    if (paused) {
		      paused = false;
		      stream.resume();
		    }
		  };

		  return self;
		};

		// exposed for testing purposes only.
		Readable._fromList = fromList;

		// Pluck off n bytes from an array of buffers.
		// Length is the combined lengths of all the buffers in the list.
		// This function is designed to be inlinable, so please take care when making
		// changes to the function body.
		function fromList(n, state) {
		  // nothing buffered
		  if (state.length === 0) return null;

		  var ret;
		  if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {
		    // read it all, truncate the list
		    if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length);
		    state.buffer.clear();
		  } else {
		    // read part of list
		    ret = fromListPartial(n, state.buffer, state.decoder);
		  }

		  return ret;
		}

		// Extracts only enough buffered data to satisfy the amount requested.
		// This function is designed to be inlinable, so please take care when making
		// changes to the function body.
		function fromListPartial(n, list, hasStrings) {
		  var ret;
		  if (n < list.head.data.length) {
		    // slice is the same for buffers and strings
		    ret = list.head.data.slice(0, n);
		    list.head.data = list.head.data.slice(n);
		  } else if (n === list.head.data.length) {
		    // first chunk is a perfect match
		    ret = list.shift();
		  } else {
		    // result spans more than one buffer
		    ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list);
		  }
		  return ret;
		}

		// Copies a specified amount of characters from the list of buffered data
		// chunks.
		// This function is designed to be inlinable, so please take care when making
		// changes to the function body.
		function copyFromBufferString(n, list) {
		  var p = list.head;
		  var c = 1;
		  var ret = p.data;
		  n -= ret.length;
		  while (p = p.next) {
		    var str = p.data;
		    var nb = n > str.length ? str.length : n;
		    if (nb === str.length) ret += str;else ret += str.slice(0, n);
		    n -= nb;
		    if (n === 0) {
		      if (nb === str.length) {
		        ++c;
		        if (p.next) list.head = p.next;else list.head = list.tail = null;
		      } else {
		        list.head = p;
		        p.data = str.slice(nb);
		      }
		      break;
		    }
		    ++c;
		  }
		  list.length -= c;
		  return ret;
		}

		// Copies a specified amount of bytes from the list of buffered data chunks.
		// This function is designed to be inlinable, so please take care when making
		// changes to the function body.
		function copyFromBuffer(n, list) {
		  var ret = Buffer.allocUnsafe(n);
		  var p = list.head;
		  var c = 1;
		  p.data.copy(ret);
		  n -= p.data.length;
		  while (p = p.next) {
		    var buf = p.data;
		    var nb = n > buf.length ? buf.length : n;
		    buf.copy(ret, ret.length - n, 0, nb);
		    n -= nb;
		    if (n === 0) {
		      if (nb === buf.length) {
		        ++c;
		        if (p.next) list.head = p.next;else list.head = list.tail = null;
		      } else {
		        list.head = p;
		        p.data = buf.slice(nb);
		      }
		      break;
		    }
		    ++c;
		  }
		  list.length -= c;
		  return ret;
		}

		function endReadable(stream) {
		  var state = stream._readableState;

		  // If we get here before consuming all the bytes, then that is a
		  // bug in node.  Should never happen.
		  if (state.length > 0) throw new Error('"endReadable()" called on non-empty stream');

		  if (!state.endEmitted) {
		    state.ended = true;
		    processNextTick(endReadableNT, state, stream);
		  }
		}

		function endReadableNT(state, stream) {
		  // Check that we didn't get one last unshift.
		  if (!state.endEmitted && state.length === 0) {
		    state.endEmitted = true;
		    stream.readable = false;
		    stream.emit('end');
		  }
		}

		function forEach(xs, f) {
		  for (var i = 0, l = xs.length; i < l; i++) {
		    f(xs[i], i);
		  }
		}

		function indexOf(xs, x) {
		  for (var i = 0, l = xs.length; i < l; i++) {
		    if (xs[i] === x) return i;
		  }
		  return -1;
		}
		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(12)))

	/***/ }),
	/* 12 */
	/***/ (function(module, exports) {

		// shim for using process in browser
		var process = module.exports = {};

		// cached from whatever global is present so that test runners that stub it
		// don't break things.  But we need to wrap it in a try catch in case it is
		// wrapped in strict mode code which doesn't define any globals.  It's inside a
		// function because try/catches deoptimize in certain engines.

		var cachedSetTimeout;
		var cachedClearTimeout;

		function defaultSetTimout() {
		    throw new Error('setTimeout has not been defined');
		}
		function defaultClearTimeout () {
		    throw new Error('clearTimeout has not been defined');
		}
		(function () {
		    try {
		        if (typeof setTimeout === 'function') {
		            cachedSetTimeout = setTimeout;
		        } else {
		            cachedSetTimeout = defaultSetTimout;
		        }
		    } catch (e) {
		        cachedSetTimeout = defaultSetTimout;
		    }
		    try {
		        if (typeof clearTimeout === 'function') {
		            cachedClearTimeout = clearTimeout;
		        } else {
		            cachedClearTimeout = defaultClearTimeout;
		        }
		    } catch (e) {
		        cachedClearTimeout = defaultClearTimeout;
		    }
		} ())
		function runTimeout(fun) {
		    if (cachedSetTimeout === setTimeout) {
		        //normal enviroments in sane situations
		        return setTimeout(fun, 0);
		    }
		    // if setTimeout wasn't available but was latter defined
		    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
		        cachedSetTimeout = setTimeout;
		        return setTimeout(fun, 0);
		    }
		    try {
		        // when when somebody has screwed with setTimeout but no I.E. maddness
		        return cachedSetTimeout(fun, 0);
		    } catch(e){
		        try {
		            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
		            return cachedSetTimeout.call(null, fun, 0);
		        } catch(e){
		            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
		            return cachedSetTimeout.call(this, fun, 0);
		        }
		    }


		}
		function runClearTimeout(marker) {
		    if (cachedClearTimeout === clearTimeout) {
		        //normal enviroments in sane situations
		        return clearTimeout(marker);
		    }
		    // if clearTimeout wasn't available but was latter defined
		    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
		        cachedClearTimeout = clearTimeout;
		        return clearTimeout(marker);
		    }
		    try {
		        // when when somebody has screwed with setTimeout but no I.E. maddness
		        return cachedClearTimeout(marker);
		    } catch (e){
		        try {
		            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
		            return cachedClearTimeout.call(null, marker);
		        } catch (e){
		            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
		            // Some versions of I.E. have different rules for clearTimeout vs setTimeout
		            return cachedClearTimeout.call(this, marker);
		        }
		    }



		}
		var queue = [];
		var draining = false;
		var currentQueue;
		var queueIndex = -1;

		function cleanUpNextTick() {
		    if (!draining || !currentQueue) {
		        return;
		    }
		    draining = false;
		    if (currentQueue.length) {
		        queue = currentQueue.concat(queue);
		    } else {
		        queueIndex = -1;
		    }
		    if (queue.length) {
		        drainQueue();
		    }
		}

		function drainQueue() {
		    if (draining) {
		        return;
		    }
		    var timeout = runTimeout(cleanUpNextTick);
		    draining = true;

		    var len = queue.length;
		    while(len) {
		        currentQueue = queue;
		        queue = [];
		        while (++queueIndex < len) {
		            if (currentQueue) {
		                currentQueue[queueIndex].run();
		            }
		        }
		        queueIndex = -1;
		        len = queue.length;
		    }
		    currentQueue = null;
		    draining = false;
		    runClearTimeout(timeout);
		}

		process.nextTick = function (fun) {
		    var args = new Array(arguments.length - 1);
		    if (arguments.length > 1) {
		        for (var i = 1; i < arguments.length; i++) {
		            args[i - 1] = arguments[i];
		        }
		    }
		    queue.push(new Item(fun, args));
		    if (queue.length === 1 && !draining) {
		        runTimeout(drainQueue);
		    }
		};

		// v8 likes predictible objects
		function Item(fun, array) {
		    this.fun = fun;
		    this.array = array;
		}
		Item.prototype.run = function () {
		    this.fun.apply(null, this.array);
		};
		process.title = 'browser';
		process.browser = true;
		process.env = {};
		process.argv = [];
		process.version = ''; // empty string to avoid regexp issues
		process.versions = {};

		function noop() {}

		process.on = noop;
		process.addListener = noop;
		process.once = noop;
		process.off = noop;
		process.removeListener = noop;
		process.removeAllListeners = noop;
		process.emit = noop;
		process.prependListener = noop;
		process.prependOnceListener = noop;

		process.listeners = function (name) { return [] }

		process.binding = function (name) {
		    throw new Error('process.binding is not supported');
		};

		process.cwd = function () { return '/' };
		process.chdir = function (dir) {
		    throw new Error('process.chdir is not supported');
		};
		process.umask = function() { return 0; };


	/***/ }),
	/* 13 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(process) {'use strict';

		if (!process.version ||
		    process.version.indexOf('v0.') === 0 ||
		    process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) {
		  module.exports = nextTick;
		} else {
		  module.exports = process.nextTick;
		}

		function nextTick(fn, arg1, arg2, arg3) {
		  if (typeof fn !== 'function') {
		    throw new TypeError('"callback" argument must be a function');
		  }
		  var len = arguments.length;
		  var args, i;
		  switch (len) {
		  case 0:
		  case 1:
		    return process.nextTick(fn);
		  case 2:
		    return process.nextTick(function afterTickOne() {
		      fn.call(null, arg1);
		    });
		  case 3:
		    return process.nextTick(function afterTickTwo() {
		      fn.call(null, arg1, arg2);
		    });
		  case 4:
		    return process.nextTick(function afterTickThree() {
		      fn.call(null, arg1, arg2, arg3);
		    });
		  default:
		    args = new Array(len - 1);
		    i = 0;
		    while (i < args.length) {
		      args[i++] = arguments[i];
		    }
		    return process.nextTick(function afterTick() {
		      fn.apply(null, args);
		    });
		  }
		}

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(12)))

	/***/ }),
	/* 14 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(8).EventEmitter;


	/***/ }),
	/* 15 */
	/***/ (function(module, exports, __webpack_require__) {

		/* eslint-disable node/no-deprecated-api */
		var buffer = __webpack_require__(3)
		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)
		}

		// 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)
		}


	/***/ }),
	/* 16 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(Buffer) {// 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]';
		}
		exports.isArray = isArray;

		function isBoolean(arg) {
		  return typeof arg === 'boolean';
		}
		exports.isBoolean = isBoolean;

		function isNull(arg) {
		  return arg === null;
		}
		exports.isNull = isNull;

		function isNullOrUndefined(arg) {
		  return arg == null;
		}
		exports.isNullOrUndefined = isNullOrUndefined;

		function isNumber(arg) {
		  return typeof arg === 'number';
		}
		exports.isNumber = isNumber;

		function isString(arg) {
		  return typeof arg === 'string';
		}
		exports.isString = isString;

		function isSymbol(arg) {
		  return typeof arg === 'symbol';
		}
		exports.isSymbol = isSymbol;

		function isUndefined(arg) {
		  return arg === void 0;
		}
		exports.isUndefined = isUndefined;

		function isRegExp(re) {
		  return objectToString(re) === '[object RegExp]';
		}
		exports.isRegExp = isRegExp;

		function isObject(arg) {
		  return typeof arg === 'object' && arg !== null;
		}
		exports.isObject = isObject;

		function isDate(d) {
		  return objectToString(d) === '[object Date]';
		}
		exports.isDate = isDate;

		function isError(e) {
		  return (objectToString(e) === '[object Error]' || e instanceof Error);
		}
		exports.isError = isError;

		function isFunction(arg) {
		  return typeof arg === 'function';
		}
		exports.isFunction = isFunction;

		function isPrimitive(arg) {
		  return arg === null ||
		         typeof arg === 'boolean' ||
		         typeof arg === 'number' ||
		         typeof arg === 'string' ||
		         typeof arg === 'symbol' ||  // ES6 symbol
		         typeof arg === 'undefined';
		}
		exports.isPrimitive = isPrimitive;

		exports.isBuffer = Buffer.isBuffer;

		function objectToString(o) {
		  return Object.prototype.toString.call(o);
		}

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3).Buffer))

	/***/ }),
	/* 17 */
	/***/ (function(module, exports) {

		/* (ignored) */

	/***/ }),
	/* 18 */
	/***/ (function(module, exports, __webpack_require__) {

		'use strict';

		/*<replacement>*/

		function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

		var Buffer = __webpack_require__(15).Buffer;
		/*</replacement>*/

		function copyBuffer(src, target, offset) {
		  src.copy(target, offset);
		}

		module.exports = function () {
		  function BufferList() {
		    _classCallCheck(this, BufferList);

		    this.head = null;
		    this.tail = null;
		    this.length = 0;
		  }

		  BufferList.prototype.push = function push(v) {
		    var entry = { data: v, next: null };
		    if (this.length > 0) this.tail.next = entry;else this.head = entry;
		    this.tail = entry;
		    ++this.length;
		  };

		  BufferList.prototype.unshift = function unshift(v) {
		    var entry = { data: v, next: this.head };
		    if (this.length === 0) this.tail = entry;
		    this.head = entry;
		    ++this.length;
		  };

		  BufferList.prototype.shift = function shift() {
		    if (this.length === 0) return;
		    var ret = this.head.data;
		    if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;
		    --this.length;
		    return ret;
		  };

		  BufferList.prototype.clear = function clear() {
		    this.head = this.tail = null;
		    this.length = 0;
		  };

		  BufferList.prototype.join = function join(s) {
		    if (this.length === 0) return '';
		    var p = this.head;
		    var ret = '' + p.data;
		    while (p = p.next) {
		      ret += s + p.data;
		    }return ret;
		  };

		  BufferList.prototype.concat = function concat(n) {
		    if (this.length === 0) return Buffer.alloc(0);
		    if (this.length === 1) return this.head.data;
		    var ret = Buffer.allocUnsafe(n >>> 0);
		    var p = this.head;
		    var i = 0;
		    while (p) {
		      copyBuffer(p.data, ret, i);
		      i += p.data.length;
		      p = p.next;
		    }
		    return ret;
		  };

		  return BufferList;
		}();

	/***/ }),
	/* 19 */
	/***/ (function(module, exports, __webpack_require__) {

		'use strict';

		/*<replacement>*/

		var processNextTick = __webpack_require__(13);
		/*</replacement>*/

		// undocumented cb() API, needed for core, not for public API
		function destroy(err, cb) {
		  var _this = this;

		  var readableDestroyed = this._readableState && this._readableState.destroyed;
		  var writableDestroyed = this._writableState && this._writableState.destroyed;

		  if (readableDestroyed || writableDestroyed) {
		    if (cb) {
		      cb(err);
		    } else if (err && (!this._writableState || !this._writableState.errorEmitted)) {
		      processNextTick(emitErrorNT, this, err);
		    }
		    return;
		  }

		  // we set destroyed to true before firing error callbacks in order
		  // to make it re-entrance safe in case destroy() is called within callbacks

		  if (this._readableState) {
		    this._readableState.destroyed = true;
		  }

		  // if this is a duplex stream mark the writable part as destroyed as well
		  if (this._writableState) {
		    this._writableState.destroyed = true;
		  }

		  this._destroy(err || null, function (err) {
		    if (!cb && err) {
		      processNextTick(emitErrorNT, _this, err);
		      if (_this._writableState) {
		        _this._writableState.errorEmitted = true;
		      }
		    } else if (cb) {
		      cb(err);
		    }
		  });
		}

		function undestroy() {
		  if (this._readableState) {
		    this._readableState.destroyed = false;
		    this._readableState.reading = false;
		    this._readableState.ended = false;
		    this._readableState.endEmitted = false;
		  }

		  if (this._writableState) {
		    this._writableState.destroyed = false;
		    this._writableState.ended = false;
		    this._writableState.ending = false;
		    this._writableState.finished = false;
		    this._writableState.errorEmitted = false;
		  }
		}

		function emitErrorNT(self, err) {
		  self.emit('error', err);
		}

		module.exports = {
		  destroy: destroy,
		  undestroy: undestroy
		};

	/***/ }),
	/* 20 */
	/***/ (function(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.

		// a duplex stream is just a stream that is both readable and writable.
		// Since JS doesn't have multiple prototypal inheritance, this class
		// prototypally inherits from Readable, and then parasitically from
		// Writable.

		'use strict';

		/*<replacement>*/

		var processNextTick = __webpack_require__(13);
		/*</replacement>*/

		/*<replacement>*/
		var objectKeys = Object.keys || function (obj) {
		  var keys = [];
		  for (var key in obj) {
		    keys.push(key);
		  }return keys;
		};
		/*</replacement>*/

		module.exports = Duplex;

		/*<replacement>*/
		var util = __webpack_require__(16);
		util.inherits = __webpack_require__(9);
		/*</replacement>*/

		var Readable = __webpack_require__(11);
		var Writable = __webpack_require__(21);

		util.inherits(Duplex, Readable);

		var keys = objectKeys(Writable.prototype);
		for (var v = 0; v < keys.length; v++) {
		  var method = keys[v];
		  if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];
		}

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

		  Readable.call(this, options);
		  Writable.call(this, options);

		  if (options && options.readable === false) this.readable = false;

		  if (options && options.writable === false) this.writable = false;

		  this.allowHalfOpen = true;
		  if (options && options.allowHalfOpen === false) this.allowHalfOpen = false;

		  this.once('end', onend);
		}

		// the no-half-open enforcer
		function onend() {
		  // if we allow half-open state, or if the writable side ended,
		  // then we're ok.
		  if (this.allowHalfOpen || this._writableState.ended) return;

		  // no more data can be written.
		  // But allow more writes to happen in this tick.
		  processNextTick(onEndNT, this);
		}

		function onEndNT(self) {
		  self.end();
		}

		Object.defineProperty(Duplex.prototype, 'destroyed', {
		  get: function () {
		    if (this._readableState === undefined || this._writableState === undefined) {
		      return false;
		    }
		    return this._readableState.destroyed && this._writableState.destroyed;
		  },
		  set: function (value) {
		    // we ignore the value if the stream
		    // has not been initialized yet
		    if (this._readableState === undefined || this._writableState === undefined) {
		      return;
		    }

		    // backward compatibility, the user is explicitly
		    // managing destroyed
		    this._readableState.destroyed = value;
		    this._writableState.destroyed = value;
		  }
		});

		Duplex.prototype._destroy = function (err, cb) {
		  this.push(null);
		  this.end();

		  processNextTick(cb, err);
		};

		function forEach(xs, f) {
		  for (var i = 0, l = xs.length; i < l; i++) {
		    f(xs[i], i);
		  }
		}

	/***/ }),
	/* 21 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(process, setImmediate, global) {// 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.

		// A bit simpler than readable streams.
		// Implement an async ._write(chunk, encoding, cb), and it'll handle all
		// the drain event emission and buffering.

		'use strict';

		/*<replacement>*/

		var processNextTick = __webpack_require__(13);
		/*</replacement>*/

		module.exports = Writable;

		/* <replacement> */
		function WriteReq(chunk, encoding, cb) {
		  this.chunk = chunk;
		  this.encoding = encoding;
		  this.callback = cb;
		  this.next = null;
		}

		// It seems a linked list but it is not
		// there will be only 2 of these for each stream
		function CorkedRequest(state) {
		  var _this = this;

		  this.next = null;
		  this.entry = null;
		  this.finish = function () {
		    onCorkedFinish(_this, state);
		  };
		}
		/* </replacement> */

		/*<replacement>*/
		var asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : processNextTick;
		/*</replacement>*/

		/*<replacement>*/
		var Duplex;
		/*</replacement>*/

		Writable.WritableState = WritableState;

		/*<replacement>*/
		var util = __webpack_require__(16);
		util.inherits = __webpack_require__(9);
		/*</replacement>*/

		/*<replacement>*/
		var internalUtil = {
		  deprecate: __webpack_require__(24)
		};
		/*</replacement>*/

		/*<replacement>*/
		var Stream = __webpack_require__(14);
		/*</replacement>*/

		/*<replacement>*/
		var Buffer = __webpack_require__(15).Buffer;
		var OurUint8Array = global.Uint8Array || function () {};
		function _uint8ArrayToBuffer(chunk) {
		  return Buffer.from(chunk);
		}
		function _isUint8Array(obj) {
		  return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
		}
		/*</replacement>*/

		var destroyImpl = __webpack_require__(19);

		util.inherits(Writable, Stream);

		function nop() {}

		function WritableState(options, stream) {
		  Duplex = Duplex || __webpack_require__(20);

		  options = options || {};

		  // object stream flag to indicate whether or not this stream
		  // contains buffers or objects.
		  this.objectMode = !!options.objectMode;

		  if (stream instanceof Duplex) this.objectMode = this.objectMode || !!options.writableObjectMode;

		  // the point at which write() starts returning false
		  // Note: 0 is a valid value, means that we always return false if
		  // the entire buffer is not flushed immediately on write()
		  var hwm = options.highWaterMark;
		  var defaultHwm = this.objectMode ? 16 : 16 * 1024;
		  this.highWaterMark = hwm || hwm === 0 ? hwm : defaultHwm;

		  // cast to ints.
		  this.highWaterMark = Math.floor(this.highWaterMark);

		  // if _final has been called
		  this.finalCalled = false;

		  // drain event flag.
		  this.needDrain = false;
		  // at the start of calling end()
		  this.ending = false;
		  // when end() has been called, and returned
		  this.ended = false;
		  // when 'finish' is emitted
		  this.finished = false;

		  // has it been destroyed
		  this.destroyed = false;

		  // should we decode strings into buffers before passing to _write?
		  // this is here so that some node-core streams can optimize string
		  // handling at a lower level.
		  var noDecode = options.decodeStrings === false;
		  this.decodeStrings = !noDecode;

		  // Crypto is kind of old and crusty.  Historically, its default string
		  // encoding is 'binary' so we have to make this configurable.
		  // Everything else in the universe uses 'utf8', though.
		  this.defaultEncoding = options.defaultEncoding || 'utf8';

		  // not an actual buffer we keep track of, but a measurement
		  // of how much we're waiting to get pushed to some underlying
		  // socket or file.
		  this.length = 0;

		  // a flag to see when we're in the middle of a write.
		  this.writing = false;

		  // when true all writes will be buffered until .uncork() call
		  this.corked = 0;

		  // a flag to be able to tell if the onwrite cb is called immediately,
		  // or on a later tick.  We set this to true at first, because any
		  // actions that shouldn't happen until "later" should generally also
		  // not happen before the first write call.
		  this.sync = true;

		  // a flag to know if we're processing previously buffered items, which
		  // may call the _write() callback in the same tick, so that we don't
		  // end up in an overlapped onwrite situation.
		  this.bufferProcessing = false;

		  // the callback that's passed to _write(chunk,cb)
		  this.onwrite = function (er) {
		    onwrite(stream, er);
		  };

		  // the callback that the user supplies to write(chunk,encoding,cb)
		  this.writecb = null;

		  // the amount that is being written when _write is called.
		  this.writelen = 0;

		  this.bufferedRequest = null;
		  this.lastBufferedRequest = null;

		  // number of pending user-supplied write callbacks
		  // this must be 0 before 'finish' can be emitted
		  this.pendingcb = 0;

		  // emit prefinish if the only thing we're waiting for is _write cbs
		  // This is relevant for synchronous Transform streams
		  this.prefinished = false;

		  // True if the error was already emitted and should not be thrown again
		  this.errorEmitted = false;

		  // count buffered requests
		  this.bufferedRequestCount = 0;

		  // allocate the first CorkedRequest, there is always
		  // one allocated and free to use, and we maintain at most two
		  this.corkedRequestsFree = new CorkedRequest(this);
		}

		WritableState.prototype.getBuffer = function getBuffer() {
		  var current = this.bufferedRequest;
		  var out = [];
		  while (current) {
		    out.push(current);
		    current = current.next;
		  }
		  return out;
		};

		(function () {
		  try {
		    Object.defineProperty(WritableState.prototype, 'buffer', {
		      get: internalUtil.deprecate(function () {
		        return this.getBuffer();
		      }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')
		    });
		  } catch (_) {}
		})();

		// Test _writableState for inheritance to account for Duplex streams,
		// whose prototype chain only points to Readable.
		var realHasInstance;
		if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {
		  realHasInstance = Function.prototype[Symbol.hasInstance];
		  Object.defineProperty(Writable, Symbol.hasInstance, {
		    value: function (object) {
		      if (realHasInstance.call(this, object)) return true;

		      return object && object._writableState instanceof WritableState;
		    }
		  });
		} else {
		  realHasInstance = function (object) {
		    return object instanceof this;
		  };
		}

		function Writable(options) {
		  Duplex = Duplex || __webpack_require__(20);

		  // Writable ctor is applied to Duplexes, too.
		  // `realHasInstance` is necessary because using plain `instanceof`
		  // would return false, as no `_writableState` property is attached.

		  // Trying to use the custom `instanceof` for Writable here will also break the
		  // Node.js LazyTransform implementation, which has a non-trivial getter for
		  // `_writableState` that would lead to infinite recursion.
		  if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) {
		    return new Writable(options);
		  }

		  this._writableState = new WritableState(options, this);

		  // legacy.
		  this.writable = true;

		  if (options) {
		    if (typeof options.write === 'function') this._write = options.write;

		    if (typeof options.writev === 'function') this._writev = options.writev;

		    if (typeof options.destroy === 'function') this._destroy = options.destroy;

		    if (typeof options.final === 'function') this._final = options.final;
		  }

		  Stream.call(this);
		}

		// Otherwise people can pipe Writable streams, which is just wrong.
		Writable.prototype.pipe = function () {
		  this.emit('error', new Error('Cannot pipe, not readable'));
		};

		function writeAfterEnd(stream, cb) {
		  var er = new Error('write after end');
		  // TODO: defer error events consistently everywhere, not just the cb
		  stream.emit('error', er);
		  processNextTick(cb, er);
		}

		// Checks that a user-supplied chunk is valid, especially for the particular
		// mode the stream is in. Currently this means that `null` is never accepted
		// and undefined/non-string values are only allowed in object mode.
		function validChunk(stream, state, chunk, cb) {
		  var valid = true;
		  var er = false;

		  if (chunk === null) {
		    er = new TypeError('May not write null values to stream');
		  } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {
		    er = new TypeError('Invalid non-string/buffer chunk');
		  }
		  if (er) {
		    stream.emit('error', er);
		    processNextTick(cb, er);
		    valid = false;
		  }
		  return valid;
		}

		Writable.prototype.write = function (chunk, encoding, cb) {
		  var state = this._writableState;
		  var ret = false;
		  var isBuf = _isUint8Array(chunk) && !state.objectMode;

		  if (isBuf && !Buffer.isBuffer(chunk)) {
		    chunk = _uint8ArrayToBuffer(chunk);
		  }

		  if (typeof encoding === 'function') {
		    cb = encoding;
		    encoding = null;
		  }

		  if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;

		  if (typeof cb !== 'function') cb = nop;

		  if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {
		    state.pendingcb++;
		    ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);
		  }

		  return ret;
		};

		Writable.prototype.cork = function () {
		  var state = this._writableState;

		  state.corked++;
		};

		Writable.prototype.uncork = function () {
		  var state = this._writableState;

		  if (state.corked) {
		    state.corked--;

		    if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);
		  }
		};

		Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
		  // node::ParseEncoding() requires lower case.
		  if (typeof encoding === 'string') encoding = encoding.toLowerCase();
		  if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding);
		  this._writableState.defaultEncoding = encoding;
		  return this;
		};

		function decodeChunk(state, chunk, encoding) {
		  if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {
		    chunk = Buffer.from(chunk, encoding);
		  }
		  return chunk;
		}

		// if we're already writing something, then just put this
		// in the queue, and wait our turn.  Otherwise, call _write
		// If we return false, then we need a drain event, so set that flag.
		function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {
		  if (!isBuf) {
		    var newChunk = decodeChunk(state, chunk, encoding);
		    if (chunk !== newChunk) {
		      isBuf = true;
		      encoding = 'buffer';
		      chunk = newChunk;
		    }
		  }
		  var len = state.objectMode ? 1 : chunk.length;

		  state.length += len;

		  var ret = state.length < state.highWaterMark;
		  // we must ensure that previous needDrain will not be reset to false.
		  if (!ret) state.needDrain = true;

		  if (state.writing || state.corked) {
		    var last = state.lastBufferedRequest;
		    state.lastBufferedRequest = {
		      chunk: chunk,
		      encoding: encoding,
		      isBuf: isBuf,
		      callback: cb,
		      next: null
		    };
		    if (last) {
		      last.next = state.lastBufferedRequest;
		    } else {
		      state.bufferedRequest = state.lastBufferedRequest;
		    }
		    state.bufferedRequestCount += 1;
		  } else {
		    doWrite(stream, state, false, len, chunk, encoding, cb);
		  }

		  return ret;
		}

		function doWrite(stream, state, writev, len, chunk, encoding, cb) {
		  state.writelen = len;
		  state.writecb = cb;
		  state.writing = true;
		  state.sync = true;
		  if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);
		  state.sync = false;
		}

		function onwriteError(stream, state, sync, er, cb) {
		  --state.pendingcb;

		  if (sync) {
		    // defer the callback if we are being called synchronously
		    // to avoid piling up things on the stack
		    processNextTick(cb, er);
		    // this can emit finish, and it will always happen
		    // after error
		    processNextTick(finishMaybe, stream, state);
		    stream._writableState.errorEmitted = true;
		    stream.emit('error', er);
		  } else {
		    // the caller expect this to happen before if
		    // it is async
		    cb(er);
		    stream._writableState.errorEmitted = true;
		    stream.emit('error', er);
		    // this can emit finish, but finish must
		    // always follow error
		    finishMaybe(stream, state);
		  }
		}

		function onwriteStateUpdate(state) {
		  state.writing = false;
		  state.writecb = null;
		  state.length -= state.writelen;
		  state.writelen = 0;
		}

		function onwrite(stream, er) {
		  var state = stream._writableState;
		  var sync = state.sync;
		  var cb = state.writecb;

		  onwriteStateUpdate(state);

		  if (er) onwriteError(stream, state, sync, er, cb);else {
		    // Check if we're actually ready to finish, but don't emit yet
		    var finished = needFinish(state);

		    if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {
		      clearBuffer(stream, state);
		    }

		    if (sync) {
		      /*<replacement>*/
		      asyncWrite(afterWrite, stream, state, finished, cb);
		      /*</replacement>*/
		    } else {
		      afterWrite(stream, state, finished, cb);
		    }
		  }
		}

		function afterWrite(stream, state, finished, cb) {
		  if (!finished) onwriteDrain(stream, state);
		  state.pendingcb--;
		  cb();
		  finishMaybe(stream, state);
		}

		// Must force callback to be called on nextTick, so that we don't
		// emit 'drain' before the write() consumer gets the 'false' return
		// value, and has a chance to attach a 'drain' listener.
		function onwriteDrain(stream, state) {
		  if (state.length === 0 && state.needDrain) {
		    state.needDrain = false;
		    stream.emit('drain');
		  }
		}

		// if there's something in the buffer waiting, then process it
		function clearBuffer(stream, state) {
		  state.bufferProcessing = true;
		  var entry = state.bufferedRequest;

		  if (stream._writev && entry && entry.next) {
		    // Fast case, write everything using _writev()
		    var l = state.bufferedRequestCount;
		    var buffer = new Array(l);
		    var holder = state.corkedRequestsFree;
		    holder.entry = entry;

		    var count = 0;
		    var allBuffers = true;
		    while (entry) {
		      buffer[count] = entry;
		      if (!entry.isBuf) allBuffers = false;
		      entry = entry.next;
		      count += 1;
		    }
		    buffer.allBuffers = allBuffers;

		    doWrite(stream, state, true, state.length, buffer, '', holder.finish);

		    // doWrite is almost always async, defer these to save a bit of time
		    // as the hot path ends with doWrite
		    state.pendingcb++;
		    state.lastBufferedRequest = null;
		    if (holder.next) {
		      state.corkedRequestsFree = holder.next;
		      holder.next = null;
		    } else {
		      state.corkedRequestsFree = new CorkedRequest(state);
		    }
		  } else {
		    // Slow case, write chunks one-by-one
		    while (entry) {
		      var chunk = entry.chunk;
		      var encoding = entry.encoding;
		      var cb = entry.callback;
		      var len = state.objectMode ? 1 : chunk.length;

		      doWrite(stream, state, false, len, chunk, encoding, cb);
		      entry = entry.next;
		      // if we didn't call the onwrite immediately, then
		      // it means that we need to wait until it does.
		      // also, that means that the chunk and cb are currently
		      // being processed, so move the buffer counter past them.
		      if (state.writing) {
		        break;
		      }
		    }

		    if (entry === null) state.lastBufferedRequest = null;
		  }

		  state.bufferedRequestCount = 0;
		  state.bufferedRequest = entry;
		  state.bufferProcessing = false;
		}

		Writable.prototype._write = function (chunk, encoding, cb) {
		  cb(new Error('_write() is not implemented'));
		};

		Writable.prototype._writev = null;

		Writable.prototype.end = function (chunk, encoding, cb) {
		  var state = this._writableState;

		  if (typeof chunk === 'function') {
		    cb = chunk;
		    chunk = null;
		    encoding = null;
		  } else if (typeof encoding === 'function') {
		    cb = encoding;
		    encoding = null;
		  }

		  if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);

		  // .end() fully uncorks
		  if (state.corked) {
		    state.corked = 1;
		    this.uncork();
		  }

		  // ignore unnecessary end() calls.
		  if (!state.ending && !state.finished) endWritable(this, state, cb);
		};

		function needFinish(state) {
		  return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;
		}
		function callFinal(stream, state) {
		  stream._final(function (err) {
		    state.pendingcb--;
		    if (err) {
		      stream.emit('error', err);
		    }
		    state.prefinished = true;
		    stream.emit('prefinish');
		    finishMaybe(stream, state);
		  });
		}
		function prefinish(stream, state) {
		  if (!state.prefinished && !state.finalCalled) {
		    if (typeof stream._final === 'function') {
		      state.pendingcb++;
		      state.finalCalled = true;
		      processNextTick(callFinal, stream, state);
		    } else {
		      state.prefinished = true;
		      stream.emit('prefinish');
		    }
		  }
		}

		function finishMaybe(stream, state) {
		  var need = needFinish(state);
		  if (need) {
		    prefinish(stream, state);
		    if (state.pendingcb === 0) {
		      state.finished = true;
		      stream.emit('finish');
		    }
		  }
		  return need;
		}

		function endWritable(stream, state, cb) {
		  state.ending = true;
		  finishMaybe(stream, state);
		  if (cb) {
		    if (state.finished) processNextTick(cb);else stream.once('finish', cb);
		  }
		  state.ended = true;
		  stream.writable = false;
		}

		function onCorkedFinish(corkReq, state, err) {
		  var entry = corkReq.entry;
		  corkReq.entry = null;
		  while (entry) {
		    var cb = entry.callback;
		    state.pendingcb--;
		    cb(err);
		    entry = entry.next;
		  }
		  if (state.corkedRequestsFree) {
		    state.corkedRequestsFree.next = corkReq;
		  } else {
		    state.corkedRequestsFree = corkReq;
		  }
		}

		Object.defineProperty(Writable.prototype, 'destroyed', {
		  get: function () {
		    if (this._writableState === undefined) {
		      return false;
		    }
		    return this._writableState.destroyed;
		  },
		  set: function (value) {
		    // we ignore the value if the stream
		    // has not been initialized yet
		    if (!this._writableState) {
		      return;
		    }

		    // backward compatibility, the user is explicitly
		    // managing destroyed
		    this._writableState.destroyed = value;
		  }
		});

		Writable.prototype.destroy = destroyImpl.destroy;
		Writable.prototype._undestroy = destroyImpl.undestroy;
		Writable.prototype._destroy = function (err, cb) {
		  this.end();
		  cb(err);
		};
		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(12), __webpack_require__(22).setImmediate, (function() { return this; }())))

	/***/ }),
	/* 22 */
	/***/ (function(module, exports, __webpack_require__) {

		var apply = Function.prototype.apply;

		// DOM APIs, for completeness

		exports.setTimeout = function() {
		  return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);
		};
		exports.setInterval = function() {
		  return new Timeout(apply.call(setInterval, window, arguments), clearInterval);
		};
		exports.clearTimeout =
		exports.clearInterval = function(timeout) {
		  if (timeout) {
		    timeout.close();
		  }
		};

		function Timeout(id, clearFn) {
		  this._id = id;
		  this._clearFn = clearFn;
		}
		Timeout.prototype.unref = Timeout.prototype.ref = function() {};
		Timeout.prototype.close = function() {
		  this._clearFn.call(window, this._id);
		};

		// Does not start the time, just sets up the members needed.
		exports.enroll = function(item, msecs) {
		  clearTimeout(item._idleTimeoutId);
		  item._idleTimeout = msecs;
		};

		exports.unenroll = function(item) {
		  clearTimeout(item._idleTimeoutId);
		  item._idleTimeout = -1;
		};

		exports._unrefActive = exports.active = function(item) {
		  clearTimeout(item._idleTimeoutId);

		  var msecs = item._idleTimeout;
		  if (msecs >= 0) {
		    item._idleTimeoutId = setTimeout(function onTimeout() {
		      if (item._onTimeout)
		        item._onTimeout();
		    }, msecs);
		  }
		};

		// setimmediate attaches itself to the global object
		__webpack_require__(23);
		exports.setImmediate = setImmediate;
		exports.clearImmediate = clearImmediate;


	/***/ }),
	/* 23 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) {
		    "use strict";

		    if (global.setImmediate) {
		        return;
		    }

		    var nextHandle = 1; // Spec says greater than zero
		    var tasksByHandle = {};
		    var currentlyRunningATask = false;
		    var doc = global.document;
		    var registerImmediate;

		    function setImmediate(callback) {
		      // Callback can either be a function or a string
		      if (typeof callback !== "function") {
		        callback = new Function("" + callback);
		      }
		      // Copy function arguments
		      var args = new Array(arguments.length - 1);
		      for (var i = 0; i < args.length; i++) {
		          args[i] = arguments[i + 1];
		      }
		      // Store and register the task
		      var task = { callback: callback, args: args };
		      tasksByHandle[nextHandle] = task;
		      registerImmediate(nextHandle);
		      return nextHandle++;
		    }

		    function clearImmediate(handle) {
		        delete tasksByHandle[handle];
		    }

		    function run(task) {
		        var callback = task.callback;
		        var args = task.args;
		        switch (args.length) {
		        case 0:
		            callback();
		            break;
		        case 1:
		            callback(args[0]);
		            break;
		        case 2:
		            callback(args[0], args[1]);
		            break;
		        case 3:
		            callback(args[0], args[1], args[2]);
		            break;
		        default:
		            callback.apply(undefined, args);
		            break;
		        }
		    }

		    function runIfPresent(handle) {
		        // From the spec: "Wait until any invocations of this algorithm started before this one have completed."
		        // So if we're currently running a task, we'll need to delay this invocation.
		        if (currentlyRunningATask) {
		            // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a
		            // "too much recursion" error.
		            setTimeout(runIfPresent, 0, handle);
		        } else {
		            var task = tasksByHandle[handle];
		            if (task) {
		                currentlyRunningATask = true;
		                try {
		                    run(task);
		                } finally {
		                    clearImmediate(handle);
		                    currentlyRunningATask = false;
		                }
		            }
		        }
		    }

		    function installNextTickImplementation() {
		        registerImmediate = function(handle) {
		            process.nextTick(function () { runIfPresent(handle); });
		        };
		    }

		    function canUsePostMessage() {
		        // The test against `importScripts` prevents this implementation from being installed inside a web worker,
		        // where `global.postMessage` means something completely different and can't be used for this purpose.
		        if (global.postMessage && !global.importScripts) {
		            var postMessageIsAsynchronous = true;
		            var oldOnMessage = global.onmessage;
		            global.onmessage = function() {
		                postMessageIsAsynchronous = false;
		            };
		            global.postMessage("", "*");
		            global.onmessage = oldOnMessage;
		            return postMessageIsAsynchronous;
		        }
		    }

		    function installPostMessageImplementation() {
		        // Installs an event handler on `global` for the `message` event: see
		        // * https://developer.mozilla.org/en/DOM/window.postMessage
		        // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages

		        var messagePrefix = "setImmediate$" + Math.random() + "$";
		        var onGlobalMessage = function(event) {
		            if (event.source === global &&
		                typeof event.data === "string" &&
		                event.data.indexOf(messagePrefix) === 0) {
		                runIfPresent(+event.data.slice(messagePrefix.length));
		            }
		        };

		        if (global.addEventListener) {
		            global.addEventListener("message", onGlobalMessage, false);
		        } else {
		            global.attachEvent("onmessage", onGlobalMessage);
		        }

		        registerImmediate = function(handle) {
		            global.postMessage(messagePrefix + handle, "*");
		        };
		    }

		    function installMessageChannelImplementation() {
		        var channel = new MessageChannel();
		        channel.port1.onmessage = function(event) {
		            var handle = event.data;
		            runIfPresent(handle);
		        };

		        registerImmediate = function(handle) {
		            channel.port2.postMessage(handle);
		        };
		    }

		    function installReadyStateChangeImplementation() {
		        var html = doc.documentElement;
		        registerImmediate = function(handle) {
		            // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted
		            // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.
		            var script = doc.createElement("script");
		            script.onreadystatechange = function () {
		                runIfPresent(handle);
		                script.onreadystatechange = null;
		                html.removeChild(script);
		                script = null;
		            };
		            html.appendChild(script);
		        };
		    }

		    function installSetTimeoutImplementation() {
		        registerImmediate = function(handle) {
		            setTimeout(runIfPresent, 0, handle);
		        };
		    }

		    // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.
		    var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);
		    attachTo = attachTo && attachTo.setTimeout ? attachTo : global;

		    // Don't get fooled by e.g. browserify environments.
		    if ({}.toString.call(global.process) === "[object process]") {
		        // For Node.js before 0.9
		        installNextTickImplementation();

		    } else if (canUsePostMessage()) {
		        // For non-IE10 modern browsers
		        installPostMessageImplementation();

		    } else if (global.MessageChannel) {
		        // For web workers, where supported
		        installMessageChannelImplementation();

		    } else if (doc && "onreadystatechange" in doc.createElement("script")) {
		        // For IE 6–8
		        installReadyStateChangeImplementation();

		    } else {
		        // For older browsers
		        installSetTimeoutImplementation();
		    }

		    attachTo.setImmediate = setImmediate;
		    attachTo.clearImmediate = clearImmediate;
		}(typeof self === "undefined" ? typeof global === "undefined" ? this : global : self));

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(12)))

	/***/ }),
	/* 24 */
	/***/ (function(module, exports) {

		/* WEBPACK VAR INJECTION */(function(global) {
		/**
		 * Module exports.
		 */

		module.exports = deprecate;

		/**
		 * Mark that a method should not be used.
		 * Returns a modified function which warns once by default.
		 *
		 * If `localStorage.noDeprecation = true` is set, then it is a no-op.
		 *
		 * If `localStorage.throwDeprecation = true` is set, then deprecated functions
		 * will throw an Error when invoked.
		 *
		 * If `localStorage.traceDeprecation = true` is set, then deprecated functions
		 * will invoke `console.trace()` instead of `console.error()`.
		 *
		 * @param {Function} fn - the function to deprecate
		 * @param {String} msg - the string to print to the console when `fn` is invoked
		 * @returns {Function} a new "deprecated" version of `fn`
		 * @api public
		 */

		function deprecate (fn, msg) {
		  if (config('noDeprecation')) {
		    return fn;
		  }

		  var warned = false;
		  function deprecated() {
		    if (!warned) {
		      if (config('throwDeprecation')) {
		        throw new Error(msg);
		      } else if (config('traceDeprecation')) {
		        console.trace(msg);
		      } else {
		        console.warn(msg);
		      }
		      warned = true;
		    }
		    return fn.apply(this, arguments);
		  }

		  return deprecated;
		}

		/**
		 * Checks `localStorage` for boolean values for the given `name`.
		 *
		 * @param {String} name
		 * @returns {Boolean}
		 * @api private
		 */

		function config (name) {
		  // accessing global.localStorage can trigger a DOMException in sandboxed iframes
		  try {
		    if (!global.localStorage) return false;
		  } catch (_) {
		    return false;
		  }
		  var val = global.localStorage[name];
		  if (null == val) return false;
		  return String(val).toLowerCase() === 'true';
		}

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))

	/***/ }),
	/* 25 */
	/***/ (function(module, exports, __webpack_require__) {

		'use strict';

		var Buffer = __webpack_require__(15).Buffer;

		var isEncoding = Buffer.isEncoding || function (encoding) {
		  encoding = '' + encoding;
		  switch (encoding && encoding.toLowerCase()) {
		    case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':
		      return true;
		    default:
		      return false;
		  }
		};

		function _normalizeEncoding(enc) {
		  if (!enc) return 'utf8';
		  var retried;
		  while (true) {
		    switch (enc) {
		      case 'utf8':
		      case 'utf-8':
		        return 'utf8';
		      case 'ucs2':
		      case 'ucs-2':
		      case 'utf16le':
		      case 'utf-16le':
		        return 'utf16le';
		      case 'latin1':
		      case 'binary':
		        return 'latin1';
		      case 'base64':
		      case 'ascii':
		      case 'hex':
		        return enc;
		      default:
		        if (retried) return; // undefined
		        enc = ('' + enc).toLowerCase();
		        retried = true;
		    }
		  }
		};

		// Do not cache `Buffer.isEncoding` when checking encoding names as some
		// modules monkey-patch it to support additional encodings
		function normalizeEncoding(enc) {
		  var nenc = _normalizeEncoding(enc);
		  if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);
		  return nenc || enc;
		}

		// StringDecoder provides an interface for efficiently splitting a series of
		// buffers into a series of JS strings without breaking apart multi-byte
		// characters.
		exports.StringDecoder = StringDecoder;
		function StringDecoder(encoding) {
		  this.encoding = normalizeEncoding(encoding);
		  var nb;
		  switch (this.encoding) {
		    case 'utf16le':
		      this.text = utf16Text;
		      this.end = utf16End;
		      nb = 4;
		      break;
		    case 'utf8':
		      this.fillLast = utf8FillLast;
		      nb = 4;
		      break;
		    case 'base64':
		      this.text = base64Text;
		      this.end = base64End;
		      nb = 3;
		      break;
		    default:
		      this.write = simpleWrite;
		      this.end = simpleEnd;
		      return;
		  }
		  this.lastNeed = 0;
		  this.lastTotal = 0;
		  this.lastChar = Buffer.allocUnsafe(nb);
		}

		StringDecoder.prototype.write = function (buf) {
		  if (buf.length === 0) return '';
		  var r;
		  var i;
		  if (this.lastNeed) {
		    r = this.fillLast(buf);
		    if (r === undefined) return '';
		    i = this.lastNeed;
		    this.lastNeed = 0;
		  } else {
		    i = 0;
		  }
		  if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);
		  return r || '';
		};

		StringDecoder.prototype.end = utf8End;

		// Returns only complete characters in a Buffer
		StringDecoder.prototype.text = utf8Text;

		// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer
		StringDecoder.prototype.fillLast = function (buf) {
		  if (this.lastNeed <= buf.length) {
		    buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);
		    return this.lastChar.toString(this.encoding, 0, this.lastTotal);
		  }
		  buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);
		  this.lastNeed -= buf.length;
		};

		// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a
		// continuation byte.
		function utf8CheckByte(byte) {
		  if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;
		  return -1;
		}

		// Checks at most 3 bytes at the end of a Buffer in order to detect an
		// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)
		// needed to complete the UTF-8 character (if applicable) are returned.
		function utf8CheckIncomplete(self, buf, i) {
		  var j = buf.length - 1;
		  if (j < i) return 0;
		  var nb = utf8CheckByte(buf[j]);
		  if (nb >= 0) {
		    if (nb > 0) self.lastNeed = nb - 1;
		    return nb;
		  }
		  if (--j < i) return 0;
		  nb = utf8CheckByte(buf[j]);
		  if (nb >= 0) {
		    if (nb > 0) self.lastNeed = nb - 2;
		    return nb;
		  }
		  if (--j < i) return 0;
		  nb = utf8CheckByte(buf[j]);
		  if (nb >= 0) {
		    if (nb > 0) {
		      if (nb === 2) nb = 0;else self.lastNeed = nb - 3;
		    }
		    return nb;
		  }
		  return 0;
		}

		// Validates as many continuation bytes for a multi-byte UTF-8 character as
		// needed or are available. If we see a non-continuation byte where we expect
		// one, we "replace" the validated continuation bytes we've seen so far with
		// UTF-8 replacement characters ('\ufffd'), to match v8's UTF-8 decoding
		// behavior. The continuation byte check is included three times in the case
		// where all of the continuation bytes for a character exist in the same buffer.
		// It is also done this way as a slight performance increase instead of using a
		// loop.
		function utf8CheckExtraBytes(self, buf, p) {
		  if ((buf[0] & 0xC0) !== 0x80) {
		    self.lastNeed = 0;
		    return '\ufffd'.repeat(p);
		  }
		  if (self.lastNeed > 1 && buf.length > 1) {
		    if ((buf[1] & 0xC0) !== 0x80) {
		      self.lastNeed = 1;
		      return '\ufffd'.repeat(p + 1);
		    }
		    if (self.lastNeed > 2 && buf.length > 2) {
		      if ((buf[2] & 0xC0) !== 0x80) {
		        self.lastNeed = 2;
		        return '\ufffd'.repeat(p + 2);
		      }
		    }
		  }
		}

		// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.
		function utf8FillLast(buf) {
		  var p = this.lastTotal - this.lastNeed;
		  var r = utf8CheckExtraBytes(this, buf, p);
		  if (r !== undefined) return r;
		  if (this.lastNeed <= buf.length) {
		    buf.copy(this.lastChar, p, 0, this.lastNeed);
		    return this.lastChar.toString(this.encoding, 0, this.lastTotal);
		  }
		  buf.copy(this.lastChar, p, 0, buf.length);
		  this.lastNeed -= buf.length;
		}

		// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a
		// partial character, the character's bytes are buffered until the required
		// number of bytes are available.
		function utf8Text(buf, i) {
		  var total = utf8CheckIncomplete(this, buf, i);
		  if (!this.lastNeed) return buf.toString('utf8', i);
		  this.lastTotal = total;
		  var end = buf.length - (total - this.lastNeed);
		  buf.copy(this.lastChar, 0, end);
		  return buf.toString('utf8', i, end);
		}

		// For UTF-8, a replacement character for each buffered byte of a (partial)
		// character needs to be added to the output.
		function utf8End(buf) {
		  var r = buf && buf.length ? this.write(buf) : '';
		  if (this.lastNeed) return r + '\ufffd'.repeat(this.lastTotal - this.lastNeed);
		  return r;
		}

		// UTF-16LE typically needs two bytes per character, but even if we have an even
		// number of bytes available, we need to check if we end on a leading/high
		// surrogate. In that case, we need to wait for the next two bytes in order to
		// decode the last character properly.
		function utf16Text(buf, i) {
		  if ((buf.length - i) % 2 === 0) {
		    var r = buf.toString('utf16le', i);
		    if (r) {
		      var c = r.charCodeAt(r.length - 1);
		      if (c >= 0xD800 && c <= 0xDBFF) {
		        this.lastNeed = 2;
		        this.lastTotal = 4;
		        this.lastChar[0] = buf[buf.length - 2];
		        this.lastChar[1] = buf[buf.length - 1];
		        return r.slice(0, -1);
		      }
		    }
		    return r;
		  }
		  this.lastNeed = 1;
		  this.lastTotal = 2;
		  this.lastChar[0] = buf[buf.length - 1];
		  return buf.toString('utf16le', i, buf.length - 1);
		}

		// For UTF-16LE we do not explicitly append special replacement characters if we
		// end on a partial character, we simply let v8 handle that.
		function utf16End(buf) {
		  var r = buf && buf.length ? this.write(buf) : '';
		  if (this.lastNeed) {
		    var end = this.lastTotal - this.lastNeed;
		    return r + this.lastChar.toString('utf16le', 0, end);
		  }
		  return r;
		}

		function base64Text(buf, i) {
		  var n = (buf.length - i) % 3;
		  if (n === 0) return buf.toString('base64', i);
		  this.lastNeed = 3 - n;
		  this.lastTotal = 3;
		  if (n === 1) {
		    this.lastChar[0] = buf[buf.length - 1];
		  } else {
		    this.lastChar[0] = buf[buf.length - 2];
		    this.lastChar[1] = buf[buf.length - 1];
		  }
		  return buf.toString('base64', i, buf.length - n);
		}

		function base64End(buf) {
		  var r = buf && buf.length ? this.write(buf) : '';
		  if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);
		  return r;
		}

		// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)
		function simpleWrite(buf) {
		  return buf.toString(this.encoding);
		}

		function simpleEnd(buf) {
		  return buf && buf.length ? this.write(buf) : '';
		}

	/***/ }),
	/* 26 */
	/***/ (function(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.

		// a transform stream is a readable/writable stream where you do
		// something with the data.  Sometimes it's called a "filter",
		// but that's not a great name for it, since that implies a thing where
		// some bits pass through, and others are simply ignored.  (That would
		// be a valid example of a transform, of course.)
		//
		// While the output is causally related to the input, it's not a
		// necessarily symmetric or synchronous transformation.  For example,
		// a zlib stream might take multiple plain-text writes(), and then
		// emit a single compressed chunk some time in the future.
		//
		// Here's how this works:
		//
		// The Transform stream has all the aspects of the readable and writable
		// stream classes.  When you write(chunk), that calls _write(chunk,cb)
		// internally, and returns false if there's a lot of pending writes
		// buffered up.  When you call read(), that calls _read(n) until
		// there's enough pending readable data buffered up.
		//
		// In a transform stream, the written data is placed in a buffer.  When
		// _read(n) is called, it transforms the queued up data, calling the
		// buffered _write cb's as it consumes chunks.  If consuming a single
		// written chunk would result in multiple output chunks, then the first
		// outputted bit calls the readcb, and subsequent chunks just go into
		// the read buffer, and will cause it to emit 'readable' if necessary.
		//
		// This way, back-pressure is actually determined by the reading side,
		// since _read has to be called to start processing a new chunk.  However,
		// a pathological inflate type of transform can cause excessive buffering
		// here.  For example, imagine a stream where every byte of input is
		// interpreted as an integer from 0-255, and then results in that many
		// bytes of output.  Writing the 4 bytes {ff,ff,ff,ff} would result in
		// 1kb of data being output.  In this case, you could write a very small
		// amount of input, and end up with a very large amount of output.  In
		// such a pathological inflating mechanism, there'd be no way to tell
		// the system to stop doing the transform.  A single 4MB write could
		// cause the system to run out of memory.
		//
		// However, even in such a pathological case, only a single written chunk
		// would be consumed, and then the rest would wait (un-transformed) until
		// the results of the previous transformed chunk were consumed.

		'use strict';

		module.exports = Transform;

		var Duplex = __webpack_require__(20);

		/*<replacement>*/
		var util = __webpack_require__(16);
		util.inherits = __webpack_require__(9);
		/*</replacement>*/

		util.inherits(Transform, Duplex);

		function TransformState(stream) {
		  this.afterTransform = function (er, data) {
		    return afterTransform(stream, er, data);
		  };

		  this.needTransform = false;
		  this.transforming = false;
		  this.writecb = null;
		  this.writechunk = null;
		  this.writeencoding = null;
		}

		function afterTransform(stream, er, data) {
		  var ts = stream._transformState;
		  ts.transforming = false;

		  var cb = ts.writecb;

		  if (!cb) {
		    return stream.emit('error', new Error('write callback called multiple times'));
		  }

		  ts.writechunk = null;
		  ts.writecb = null;

		  if (data !== null && data !== undefined) stream.push(data);

		  cb(er);

		  var rs = stream._readableState;
		  rs.reading = false;
		  if (rs.needReadable || rs.length < rs.highWaterMark) {
		    stream._read(rs.highWaterMark);
		  }
		}

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

		  Duplex.call(this, options);

		  this._transformState = new TransformState(this);

		  var stream = this;

		  // start out asking for a readable event once data is transformed.
		  this._readableState.needReadable = true;

		  // we have implemented the _read method, and done the other things
		  // that Readable wants before the first _read call, so unset the
		  // sync guard flag.
		  this._readableState.sync = false;

		  if (options) {
		    if (typeof options.transform === 'function') this._transform = options.transform;

		    if (typeof options.flush === 'function') this._flush = options.flush;
		  }

		  // When the writable side finishes, then flush out anything remaining.
		  this.once('prefinish', function () {
		    if (typeof this._flush === 'function') this._flush(function (er, data) {
		      done(stream, er, data);
		    });else done(stream);
		  });
		}

		Transform.prototype.push = function (chunk, encoding) {
		  this._transformState.needTransform = false;
		  return Duplex.prototype.push.call(this, chunk, encoding);
		};

		// This is the part where you do stuff!
		// override this function in implementation classes.
		// 'chunk' is an input chunk.
		//
		// Call `push(newChunk)` to pass along transformed output
		// to the readable side.  You may call 'push' zero or more times.
		//
		// Call `cb(err)` when you are done with this chunk.  If you pass
		// an error, then that'll put the hurt on the whole operation.  If you
		// never call cb(), then you'll never get another chunk.
		Transform.prototype._transform = function (chunk, encoding, cb) {
		  throw new Error('_transform() is not implemented');
		};

		Transform.prototype._write = function (chunk, encoding, cb) {
		  var ts = this._transformState;
		  ts.writecb = cb;
		  ts.writechunk = chunk;
		  ts.writeencoding = encoding;
		  if (!ts.transforming) {
		    var rs = this._readableState;
		    if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);
		  }
		};

		// Doesn't matter what the args are here.
		// _transform does all the work.
		// That we got here means that the readable side wants more data.
		Transform.prototype._read = function (n) {
		  var ts = this._transformState;

		  if (ts.writechunk !== null && ts.writecb && !ts.transforming) {
		    ts.transforming = true;
		    this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);
		  } else {
		    // mark that we need a transform, so that any data that comes in
		    // will get processed, now that we've asked for it.
		    ts.needTransform = true;
		  }
		};

		Transform.prototype._destroy = function (err, cb) {
		  var _this = this;

		  Duplex.prototype._destroy.call(this, err, function (err2) {
		    cb(err2);
		    _this.emit('close');
		  });
		};

		function done(stream, er, data) {
		  if (er) return stream.emit('error', er);

		  if (data !== null && data !== undefined) stream.push(data);

		  // if there's nothing in the write buffer, then that means
		  // that nothing more will ever be provided
		  var ws = stream._writableState;
		  var ts = stream._transformState;

		  if (ws.length) throw new Error('Calling transform done when ws.length != 0');

		  if (ts.transforming) throw new Error('Calling transform done when still transforming');

		  return stream.push(null);
		}

	/***/ }),
	/* 27 */
	/***/ (function(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.

		// a passthrough stream.
		// basically just the most minimal sort of Transform stream.
		// Every written chunk gets output as-is.

		'use strict';

		module.exports = PassThrough;

		var Transform = __webpack_require__(26);

		/*<replacement>*/
		var util = __webpack_require__(16);
		util.inherits = __webpack_require__(9);
		/*</replacement>*/

		util.inherits(PassThrough, Transform);

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

		  Transform.call(this, options);
		}

		PassThrough.prototype._transform = function (chunk, encoding, cb) {
		  cb(null, chunk);
		};

	/***/ }),
	/* 28 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(21);


	/***/ }),
	/* 29 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(20);


	/***/ }),
	/* 30 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(10).Transform


	/***/ }),
	/* 31 */
	/***/ (function(module, exports, __webpack_require__) {

		module.exports = __webpack_require__(10).PassThrough


	/***/ }),
	/* 32 */
	/***/ (function(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 Buffer = __webpack_require__(3).Buffer;

		var isBufferEncoding = Buffer.isEncoding
		  || function(encoding) {
		       switch (encoding && encoding.toLowerCase()) {
		         case 'hex': case 'utf8': case 'utf-8': case 'ascii': case 'binary': case 'base64': case 'ucs2': case 'ucs-2': case 'utf16le': case 'utf-16le': case 'raw': return true;
		         default: return false;
		       }
		     }


		function assertEncoding(encoding) {
		  if (encoding && !isBufferEncoding(encoding)) {
		    throw new Error('Unknown encoding: ' + encoding);
		  }
		}

		// StringDecoder provides an interface for efficiently splitting a series of
		// buffers into a series of JS strings without breaking apart multi-byte
		// characters. CESU-8 is handled as part of the UTF-8 encoding.
		//
		// @TODO Handling all encodings inside a single object makes it very difficult
		// to reason about this code, so it should be split up in the future.
		// @TODO There should be a utf8-strict encoding that rejects invalid UTF-8 code
		// points as used by CESU-8.
		var StringDecoder = exports.StringDecoder = function(encoding) {
		  this.encoding = (encoding || 'utf8').toLowerCase().replace(/[-_]/, '');
		  assertEncoding(encoding);
		  switch (this.encoding) {
		    case 'utf8':
		      // CESU-8 represents each of Surrogate Pair by 3-bytes
		      this.surrogateSize = 3;
		      break;
		    case 'ucs2':
		    case 'utf16le':
		      // UTF-16 represents each of Surrogate Pair by 2-bytes
		      this.surrogateSize = 2;
		      this.detectIncompleteChar = utf16DetectIncompleteChar;
		      break;
		    case 'base64':
		      // Base-64 stores 3 bytes in 4 chars, and pads the remainder.
		      this.surrogateSize = 3;
		      this.detectIncompleteChar = base64DetectIncompleteChar;
		      break;
		    default:
		      this.write = passThroughWrite;
		      return;
		  }

		  // Enough space to store all bytes of a single character. UTF-8 needs 4
		  // bytes, but CESU-8 may require up to 6 (3 bytes per surrogate).
		  this.charBuffer = new Buffer(6);
		  // Number of bytes received for the current incomplete multi-byte character.
		  this.charReceived = 0;
		  // Number of bytes expected for the current incomplete multi-byte character.
		  this.charLength = 0;
		};


		// write decodes the given buffer and returns it as JS string that is
		// guaranteed to not contain any partial multi-byte characters. Any partial
		// character found at the end of the buffer is buffered up, and will be
		// returned when calling write again with the remaining bytes.
		//
		// Note: Converting a Buffer containing an orphan surrogate to a String
		// currently works, but converting a String to a Buffer (via `new Buffer`, or
		// Buffer#write) will replace incomplete surrogates with the unicode
		// replacement character. See https://codereview.chromium.org/121173009/ .
		StringDecoder.prototype.write = function(buffer) {
		  var charStr = '';
		  // if our last write ended with an incomplete multibyte character
		  while (this.charLength) {
		    // determine how many remaining bytes this buffer has to offer for this char
		    var available = (buffer.length >= this.charLength - this.charReceived) ?
		        this.charLength - this.charReceived :
		        buffer.length;

		    // add the new bytes to the char buffer
		    buffer.copy(this.charBuffer, this.charReceived, 0, available);
		    this.charReceived += available;

		    if (this.charReceived < this.charLength) {
		      // still not enough chars in this buffer? wait for more ...
		      return '';
		    }

		    // remove bytes belonging to the current character from the buffer
		    buffer = buffer.slice(available, buffer.length);

		    // get the character that was split
		    charStr = this.charBuffer.slice(0, this.charLength).toString(this.encoding);

		    // CESU-8: lead surrogate (D800-DBFF) is also the incomplete character
		    var charCode = charStr.charCodeAt(charStr.length - 1);
		    if (charCode >= 0xD800 && charCode <= 0xDBFF) {
		      this.charLength += this.surrogateSize;
		      charStr = '';
		      continue;
		    }
		    this.charReceived = this.charLength = 0;

		    // if there are no more bytes in this buffer, just emit our char
		    if (buffer.length === 0) {
		      return charStr;
		    }
		    break;
		  }

		  // determine and set charLength / charReceived
		  this.detectIncompleteChar(buffer);

		  var end = buffer.length;
		  if (this.charLength) {
		    // buffer the incomplete character bytes we got
		    buffer.copy(this.charBuffer, 0, buffer.length - this.charReceived, end);
		    end -= this.charReceived;
		  }

		  charStr += buffer.toString(this.encoding, 0, end);

		  var end = charStr.length - 1;
		  var charCode = charStr.charCodeAt(end);
		  // CESU-8: lead surrogate (D800-DBFF) is also the incomplete character
		  if (charCode >= 0xD800 && charCode <= 0xDBFF) {
		    var size = this.surrogateSize;
		    this.charLength += size;
		    this.charReceived += size;
		    this.charBuffer.copy(this.charBuffer, size, 0, size);
		    buffer.copy(this.charBuffer, 0, 0, size);
		    return charStr.substring(0, end);
		  }

		  // or just emit the charStr
		  return charStr;
		};

		// detectIncompleteChar determines if there is an incomplete UTF-8 character at
		// the end of the given buffer. If so, it sets this.charLength to the byte
		// length that character, and sets this.charReceived to the number of bytes
		// that are available for this character.
		StringDecoder.prototype.detectIncompleteChar = function(buffer) {
		  // determine how many bytes we have to check at the end of this buffer
		  var i = (buffer.length >= 3) ? 3 : buffer.length;

		  // Figure out if one of the last i bytes of our buffer announces an
		  // incomplete char.
		  for (; i > 0; i--) {
		    var c = buffer[buffer.length - i];

		    // See http://en.wikipedia.org/wiki/UTF-8#Description

		    // 110XXXXX
		    if (i == 1 && c >> 5 == 0x06) {
		      this.charLength = 2;
		      break;
		    }

		    // 1110XXXX
		    if (i <= 2 && c >> 4 == 0x0E) {
		      this.charLength = 3;
		      break;
		    }

		    // 11110XXX
		    if (i <= 3 && c >> 3 == 0x1E) {
		      this.charLength = 4;
		      break;
		    }
		  }
		  this.charReceived = i;
		};

		StringDecoder.prototype.end = function(buffer) {
		  var res = '';
		  if (buffer && buffer.length)
		    res = this.write(buffer);

		  if (this.charReceived) {
		    var cr = this.charReceived;
		    var buf = this.charBuffer;
		    var enc = this.encoding;
		    res += buf.slice(0, cr).toString(enc);
		  }

		  return res;
		};

		function passThroughWrite(buffer) {
		  return buffer.toString(this.encoding);
		}

		function utf16DetectIncompleteChar(buffer) {
		  this.charReceived = buffer.length % 2;
		  this.charLength = this.charReceived ? 2 : 0;
		}

		function base64DetectIncompleteChar(buffer) {
		  this.charReceived = buffer.length % 3;
		  this.charLength = this.charReceived ? 3 : 0;
		}


	/***/ }),
	/* 33 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLBuilder, assign;

		  assign = __webpack_require__(34);

		  XMLBuilder = __webpack_require__(85);

		  module.exports.create = function(name, xmldec, doctype, options) {
		    options = assign({}, xmldec, doctype, options);
		    return new XMLBuilder(name, options).root();
		  };

		}).call(this);


	/***/ }),
	/* 34 */
	/***/ (function(module, exports, __webpack_require__) {

		var assignValue = __webpack_require__(35),
		    copyObject = __webpack_require__(53),
		    createAssigner = __webpack_require__(54),
		    isArrayLike = __webpack_require__(64),
		    isPrototype = __webpack_require__(67),
		    keys = __webpack_require__(68);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Assigns own enumerable string keyed properties of source objects to the
		 * destination object. Source objects are applied from left to right.
		 * Subsequent sources overwrite property assignments of previous sources.
		 *
		 * **Note:** This method mutates `object` and is loosely based on
		 * [`Object.assign`](https://mdn.io/Object/assign).
		 *
		 * @static
		 * @memberOf _
		 * @since 0.10.0
		 * @category Object
		 * @param {Object} object The destination object.
		 * @param {...Object} [sources] The source objects.
		 * @returns {Object} Returns `object`.
		 * @see _.assignIn
		 * @example
		 *
		 * function Foo() {
		 *   this.a = 1;
		 * }
		 *
		 * function Bar() {
		 *   this.c = 3;
		 * }
		 *
		 * Foo.prototype.b = 2;
		 * Bar.prototype.d = 4;
		 *
		 * _.assign({ 'a': 0 }, new Foo, new Bar);
		 * // => { 'a': 1, 'c': 3 }
		 */
		var assign = createAssigner(function(object, source) {
		  if (isPrototype(source) || isArrayLike(source)) {
		    copyObject(source, keys(source), object);
		    return;
		  }
		  for (var key in source) {
		    if (hasOwnProperty.call(source, key)) {
		      assignValue(object, key, source[key]);
		    }
		  }
		});

		module.exports = assign;


	/***/ }),
	/* 35 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseAssignValue = __webpack_require__(36),
		    eq = __webpack_require__(52);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Assigns `value` to `key` of `object` if the existing value is not equivalent
		 * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
		 * for equality comparisons.
		 *
		 * @private
		 * @param {Object} object The object to modify.
		 * @param {string} key The key of the property to assign.
		 * @param {*} value The value to assign.
		 */
		function assignValue(object, key, value) {
		  var objValue = object[key];
		  if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
		      (value === undefined && !(key in object))) {
		    baseAssignValue(object, key, value);
		  }
		}

		module.exports = assignValue;


	/***/ }),
	/* 36 */
	/***/ (function(module, exports, __webpack_require__) {

		var defineProperty = __webpack_require__(37);

		/**
		 * The base implementation of `assignValue` and `assignMergeValue` without
		 * value checks.
		 *
		 * @private
		 * @param {Object} object The object to modify.
		 * @param {string} key The key of the property to assign.
		 * @param {*} value The value to assign.
		 */
		function baseAssignValue(object, key, value) {
		  if (key == '__proto__' && defineProperty) {
		    defineProperty(object, key, {
		      'configurable': true,
		      'enumerable': true,
		      'value': value,
		      'writable': true
		    });
		  } else {
		    object[key] = value;
		  }
		}

		module.exports = baseAssignValue;


	/***/ }),
	/* 37 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38);

		var defineProperty = (function() {
		  try {
		    var func = getNative(Object, 'defineProperty');
		    func({}, '', {});
		    return func;
		  } catch (e) {}
		}());

		module.exports = defineProperty;


	/***/ }),
	/* 38 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsNative = __webpack_require__(39),
		    getValue = __webpack_require__(51);

		/**
		 * Gets the native function at `key` of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {string} key The key of the method to get.
		 * @returns {*} Returns the function if it's native, else `undefined`.
		 */
		function getNative(object, key) {
		  var value = getValue(object, key);
		  return baseIsNative(value) ? value : undefined;
		}

		module.exports = getNative;


	/***/ }),
	/* 39 */
	/***/ (function(module, exports, __webpack_require__) {

		var isFunction = __webpack_require__(40),
		    isMasked = __webpack_require__(48),
		    isObject = __webpack_require__(47),
		    toSource = __webpack_require__(50);

		/**
		 * Used to match `RegExp`
		 * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
		 */
		var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;

		/** Used to detect host constructors (Safari). */
		var reIsHostCtor = /^\[object .+?Constructor\]$/;

		/** Used for built-in method references. */
		var funcProto = Function.prototype,
		    objectProto = Object.prototype;

		/** Used to resolve the decompiled source of functions. */
		var funcToString = funcProto.toString;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/** Used to detect if a method is native. */
		var reIsNative = RegExp('^' +
		  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
		  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
		);

		/**
		 * The base implementation of `_.isNative` without bad shim checks.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a native function,
		 *  else `false`.
		 */
		function baseIsNative(value) {
		  if (!isObject(value) || isMasked(value)) {
		    return false;
		  }
		  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
		  return pattern.test(toSource(value));
		}

		module.exports = baseIsNative;


	/***/ }),
	/* 40 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(41),
		    isObject = __webpack_require__(47);

		/** `Object#toString` result references. */
		var asyncTag = '[object AsyncFunction]',
		    funcTag = '[object Function]',
		    genTag = '[object GeneratorFunction]',
		    proxyTag = '[object Proxy]';

		/**
		 * Checks if `value` is classified as a `Function` object.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a function, else `false`.
		 * @example
		 *
		 * _.isFunction(_);
		 * // => true
		 *
		 * _.isFunction(/abc/);
		 * // => false
		 */
		function isFunction(value) {
		  if (!isObject(value)) {
		    return false;
		  }
		  // The use of `Object#toString` avoids issues with the `typeof` operator
		  // in Safari 9 which returns 'object' for typed arrays and other constructors.
		  var tag = baseGetTag(value);
		  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
		}

		module.exports = isFunction;


	/***/ }),
	/* 41 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(42),
		    getRawTag = __webpack_require__(45),
		    objectToString = __webpack_require__(46);

		/** `Object#toString` result references. */
		var nullTag = '[object Null]',
		    undefinedTag = '[object Undefined]';

		/** Built-in value references. */
		var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

		/**
		 * The base implementation of `getTag` without fallbacks for buggy environments.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @returns {string} Returns the `toStringTag`.
		 */
		function baseGetTag(value) {
		  if (value == null) {
		    return value === undefined ? undefinedTag : nullTag;
		  }
		  return (symToStringTag && symToStringTag in Object(value))
		    ? getRawTag(value)
		    : objectToString(value);
		}

		module.exports = baseGetTag;


	/***/ }),
	/* 42 */
	/***/ (function(module, exports, __webpack_require__) {

		var root = __webpack_require__(43);

		/** Built-in value references. */
		var Symbol = root.Symbol;

		module.exports = Symbol;


	/***/ }),
	/* 43 */
	/***/ (function(module, exports, __webpack_require__) {

		var freeGlobal = __webpack_require__(44);

		/** Detect free variable `self`. */
		var freeSelf = typeof self == 'object' && self && self.Object === Object && self;

		/** Used as a reference to the global object. */
		var root = freeGlobal || freeSelf || Function('return this')();

		module.exports = root;


	/***/ }),
	/* 44 */
	/***/ (function(module, exports) {

		/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
		var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;

		module.exports = freeGlobal;

		/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))

	/***/ }),
	/* 45 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(42);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Used to resolve the
		 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
		 * of values.
		 */
		var nativeObjectToString = objectProto.toString;

		/** Built-in value references. */
		var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

		/**
		 * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @returns {string} Returns the raw `toStringTag`.
		 */
		function getRawTag(value) {
		  var isOwn = hasOwnProperty.call(value, symToStringTag),
		      tag = value[symToStringTag];

		  try {
		    value[symToStringTag] = undefined;
		    var unmasked = true;
		  } catch (e) {}

		  var result = nativeObjectToString.call(value);
		  if (unmasked) {
		    if (isOwn) {
		      value[symToStringTag] = tag;
		    } else {
		      delete value[symToStringTag];
		    }
		  }
		  return result;
		}

		module.exports = getRawTag;


	/***/ }),
	/* 46 */
	/***/ (function(module, exports) {

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/**
		 * Used to resolve the
		 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
		 * of values.
		 */
		var nativeObjectToString = objectProto.toString;

		/**
		 * Converts `value` to a string using `Object.prototype.toString`.
		 *
		 * @private
		 * @param {*} value The value to convert.
		 * @returns {string} Returns the converted string.
		 */
		function objectToString(value) {
		  return nativeObjectToString.call(value);
		}

		module.exports = objectToString;


	/***/ }),
	/* 47 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is the
		 * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
		 * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an object, else `false`.
		 * @example
		 *
		 * _.isObject({});
		 * // => true
		 *
		 * _.isObject([1, 2, 3]);
		 * // => true
		 *
		 * _.isObject(_.noop);
		 * // => true
		 *
		 * _.isObject(null);
		 * // => false
		 */
		function isObject(value) {
		  var type = typeof value;
		  return value != null && (type == 'object' || type == 'function');
		}

		module.exports = isObject;


	/***/ }),
	/* 48 */
	/***/ (function(module, exports, __webpack_require__) {

		var coreJsData = __webpack_require__(49);

		/** Used to detect methods masquerading as native. */
		var maskSrcKey = (function() {
		  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
		  return uid ? ('Symbol(src)_1.' + uid) : '';
		}());

		/**
		 * Checks if `func` has its source masked.
		 *
		 * @private
		 * @param {Function} func The function to check.
		 * @returns {boolean} Returns `true` if `func` is masked, else `false`.
		 */
		function isMasked(func) {
		  return !!maskSrcKey && (maskSrcKey in func);
		}

		module.exports = isMasked;


	/***/ }),
	/* 49 */
	/***/ (function(module, exports, __webpack_require__) {

		var root = __webpack_require__(43);

		/** Used to detect overreaching core-js shims. */
		var coreJsData = root['__core-js_shared__'];

		module.exports = coreJsData;


	/***/ }),
	/* 50 */
	/***/ (function(module, exports) {

		/** Used for built-in method references. */
		var funcProto = Function.prototype;

		/** Used to resolve the decompiled source of functions. */
		var funcToString = funcProto.toString;

		/**
		 * Converts `func` to its source code.
		 *
		 * @private
		 * @param {Function} func The function to convert.
		 * @returns {string} Returns the source code.
		 */
		function toSource(func) {
		  if (func != null) {
		    try {
		      return funcToString.call(func);
		    } catch (e) {}
		    try {
		      return (func + '');
		    } catch (e) {}
		  }
		  return '';
		}

		module.exports = toSource;


	/***/ }),
	/* 51 */
	/***/ (function(module, exports) {

		/**
		 * Gets the value at `key` of `object`.
		 *
		 * @private
		 * @param {Object} [object] The object to query.
		 * @param {string} key The key of the property to get.
		 * @returns {*} Returns the property value.
		 */
		function getValue(object, key) {
		  return object == null ? undefined : object[key];
		}

		module.exports = getValue;


	/***/ }),
	/* 52 */
	/***/ (function(module, exports) {

		/**
		 * Performs a
		 * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
		 * comparison between two values to determine if they are equivalent.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to compare.
		 * @param {*} other The other value to compare.
		 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
		 * @example
		 *
		 * var object = { 'a': 1 };
		 * var other = { 'a': 1 };
		 *
		 * _.eq(object, object);
		 * // => true
		 *
		 * _.eq(object, other);
		 * // => false
		 *
		 * _.eq('a', 'a');
		 * // => true
		 *
		 * _.eq('a', Object('a'));
		 * // => false
		 *
		 * _.eq(NaN, NaN);
		 * // => true
		 */
		function eq(value, other) {
		  return value === other || (value !== value && other !== other);
		}

		module.exports = eq;


	/***/ }),
	/* 53 */
	/***/ (function(module, exports, __webpack_require__) {

		var assignValue = __webpack_require__(35),
		    baseAssignValue = __webpack_require__(36);

		/**
		 * Copies properties of `source` to `object`.
		 *
		 * @private
		 * @param {Object} source The object to copy properties from.
		 * @param {Array} props The property identifiers to copy.
		 * @param {Object} [object={}] The object to copy properties to.
		 * @param {Function} [customizer] The function to customize copied values.
		 * @returns {Object} Returns `object`.
		 */
		function copyObject(source, props, object, customizer) {
		  var isNew = !object;
		  object || (object = {});

		  var index = -1,
		      length = props.length;

		  while (++index < length) {
		    var key = props[index];

		    var newValue = customizer
		      ? customizer(object[key], source[key], key, object, source)
		      : undefined;

		    if (newValue === undefined) {
		      newValue = source[key];
		    }
		    if (isNew) {
		      baseAssignValue(object, key, newValue);
		    } else {
		      assignValue(object, key, newValue);
		    }
		  }
		  return object;
		}

		module.exports = copyObject;


	/***/ }),
	/* 54 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseRest = __webpack_require__(55),
		    isIterateeCall = __webpack_require__(63);

		/**
		 * Creates a function like `_.assign`.
		 *
		 * @private
		 * @param {Function} assigner The function to assign values.
		 * @returns {Function} Returns the new assigner function.
		 */
		function createAssigner(assigner) {
		  return baseRest(function(object, sources) {
		    var index = -1,
		        length = sources.length,
		        customizer = length > 1 ? sources[length - 1] : undefined,
		        guard = length > 2 ? sources[2] : undefined;

		    customizer = (assigner.length > 3 && typeof customizer == 'function')
		      ? (length--, customizer)
		      : undefined;

		    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
		      customizer = length < 3 ? undefined : customizer;
		      length = 1;
		    }
		    object = Object(object);
		    while (++index < length) {
		      var source = sources[index];
		      if (source) {
		        assigner(object, source, index, customizer);
		      }
		    }
		    return object;
		  });
		}

		module.exports = createAssigner;


	/***/ }),
	/* 55 */
	/***/ (function(module, exports, __webpack_require__) {

		var identity = __webpack_require__(56),
		    overRest = __webpack_require__(57),
		    setToString = __webpack_require__(59);

		/**
		 * The base implementation of `_.rest` which doesn't validate or coerce arguments.
		 *
		 * @private
		 * @param {Function} func The function to apply a rest parameter to.
		 * @param {number} [start=func.length-1] The start position of the rest parameter.
		 * @returns {Function} Returns the new function.
		 */
		function baseRest(func, start) {
		  return setToString(overRest(func, start, identity), func + '');
		}

		module.exports = baseRest;


	/***/ }),
	/* 56 */
	/***/ (function(module, exports) {

		/**
		 * This method returns the first argument it receives.
		 *
		 * @static
		 * @since 0.1.0
		 * @memberOf _
		 * @category Util
		 * @param {*} value Any value.
		 * @returns {*} Returns `value`.
		 * @example
		 *
		 * var object = { 'a': 1 };
		 *
		 * console.log(_.identity(object) === object);
		 * // => true
		 */
		function identity(value) {
		  return value;
		}

		module.exports = identity;


	/***/ }),
	/* 57 */
	/***/ (function(module, exports, __webpack_require__) {

		var apply = __webpack_require__(58);

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeMax = Math.max;

		/**
		 * A specialized version of `baseRest` which transforms the rest array.
		 *
		 * @private
		 * @param {Function} func The function to apply a rest parameter to.
		 * @param {number} [start=func.length-1] The start position of the rest parameter.
		 * @param {Function} transform The rest array transform.
		 * @returns {Function} Returns the new function.
		 */
		function overRest(func, start, transform) {
		  start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
		  return function() {
		    var args = arguments,
		        index = -1,
		        length = nativeMax(args.length - start, 0),
		        array = Array(length);

		    while (++index < length) {
		      array[index] = args[start + index];
		    }
		    index = -1;
		    var otherArgs = Array(start + 1);
		    while (++index < start) {
		      otherArgs[index] = args[index];
		    }
		    otherArgs[start] = transform(array);
		    return apply(func, this, otherArgs);
		  };
		}

		module.exports = overRest;


	/***/ }),
	/* 58 */
	/***/ (function(module, exports) {

		/**
		 * A faster alternative to `Function#apply`, this function invokes `func`
		 * with the `this` binding of `thisArg` and the arguments of `args`.
		 *
		 * @private
		 * @param {Function} func The function to invoke.
		 * @param {*} thisArg The `this` binding of `func`.
		 * @param {Array} args The arguments to invoke `func` with.
		 * @returns {*} Returns the result of `func`.
		 */
		function apply(func, thisArg, args) {
		  switch (args.length) {
		    case 0: return func.call(thisArg);
		    case 1: return func.call(thisArg, args[0]);
		    case 2: return func.call(thisArg, args[0], args[1]);
		    case 3: return func.call(thisArg, args[0], args[1], args[2]);
		  }
		  return func.apply(thisArg, args);
		}

		module.exports = apply;


	/***/ }),
	/* 59 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseSetToString = __webpack_require__(60),
		    shortOut = __webpack_require__(62);

		/**
		 * Sets the `toString` method of `func` to return `string`.
		 *
		 * @private
		 * @param {Function} func The function to modify.
		 * @param {Function} string The `toString` result.
		 * @returns {Function} Returns `func`.
		 */
		var setToString = shortOut(baseSetToString);

		module.exports = setToString;


	/***/ }),
	/* 60 */
	/***/ (function(module, exports, __webpack_require__) {

		var constant = __webpack_require__(61),
		    defineProperty = __webpack_require__(37),
		    identity = __webpack_require__(56);

		/**
		 * The base implementation of `setToString` without support for hot loop shorting.
		 *
		 * @private
		 * @param {Function} func The function to modify.
		 * @param {Function} string The `toString` result.
		 * @returns {Function} Returns `func`.
		 */
		var baseSetToString = !defineProperty ? identity : function(func, string) {
		  return defineProperty(func, 'toString', {
		    'configurable': true,
		    'enumerable': false,
		    'value': constant(string),
		    'writable': true
		  });
		};

		module.exports = baseSetToString;


	/***/ }),
	/* 61 */
	/***/ (function(module, exports) {

		/**
		 * Creates a function that returns `value`.
		 *
		 * @static
		 * @memberOf _
		 * @since 2.4.0
		 * @category Util
		 * @param {*} value The value to return from the new function.
		 * @returns {Function} Returns the new constant function.
		 * @example
		 *
		 * var objects = _.times(2, _.constant({ 'a': 1 }));
		 *
		 * console.log(objects);
		 * // => [{ 'a': 1 }, { 'a': 1 }]
		 *
		 * console.log(objects[0] === objects[1]);
		 * // => true
		 */
		function constant(value) {
		  return function() {
		    return value;
		  };
		}

		module.exports = constant;


	/***/ }),
	/* 62 */
	/***/ (function(module, exports) {

		/** Used to detect hot functions by number of calls within a span of milliseconds. */
		var HOT_COUNT = 800,
		    HOT_SPAN = 16;

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeNow = Date.now;

		/**
		 * Creates a function that'll short out and invoke `identity` instead
		 * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
		 * milliseconds.
		 *
		 * @private
		 * @param {Function} func The function to restrict.
		 * @returns {Function} Returns the new shortable function.
		 */
		function shortOut(func) {
		  var count = 0,
		      lastCalled = 0;

		  return function() {
		    var stamp = nativeNow(),
		        remaining = HOT_SPAN - (stamp - lastCalled);

		    lastCalled = stamp;
		    if (remaining > 0) {
		      if (++count >= HOT_COUNT) {
		        return arguments[0];
		      }
		    } else {
		      count = 0;
		    }
		    return func.apply(undefined, arguments);
		  };
		}

		module.exports = shortOut;


	/***/ }),
	/* 63 */
	/***/ (function(module, exports, __webpack_require__) {

		var eq = __webpack_require__(52),
		    isArrayLike = __webpack_require__(64),
		    isIndex = __webpack_require__(66),
		    isObject = __webpack_require__(47);

		/**
		 * Checks if the given arguments are from an iteratee call.
		 *
		 * @private
		 * @param {*} value The potential iteratee value argument.
		 * @param {*} index The potential iteratee index or key argument.
		 * @param {*} object The potential iteratee object argument.
		 * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
		 *  else `false`.
		 */
		function isIterateeCall(value, index, object) {
		  if (!isObject(object)) {
		    return false;
		  }
		  var type = typeof index;
		  if (type == 'number'
		        ? (isArrayLike(object) && isIndex(index, object.length))
		        : (type == 'string' && index in object)
		      ) {
		    return eq(object[index], value);
		  }
		  return false;
		}

		module.exports = isIterateeCall;


	/***/ }),
	/* 64 */
	/***/ (function(module, exports, __webpack_require__) {

		var isFunction = __webpack_require__(40),
		    isLength = __webpack_require__(65);

		/**
		 * Checks if `value` is array-like. A value is considered array-like if it's
		 * not a function and has a `value.length` that's an integer greater than or
		 * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
		 * @example
		 *
		 * _.isArrayLike([1, 2, 3]);
		 * // => true
		 *
		 * _.isArrayLike(document.body.children);
		 * // => true
		 *
		 * _.isArrayLike('abc');
		 * // => true
		 *
		 * _.isArrayLike(_.noop);
		 * // => false
		 */
		function isArrayLike(value) {
		  return value != null && isLength(value.length) && !isFunction(value);
		}

		module.exports = isArrayLike;


	/***/ }),
	/* 65 */
	/***/ (function(module, exports) {

		/** Used as references for various `Number` constants. */
		var MAX_SAFE_INTEGER = 9007199254740991;

		/**
		 * Checks if `value` is a valid array-like length.
		 *
		 * **Note:** This method is loosely based on
		 * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
		 * @example
		 *
		 * _.isLength(3);
		 * // => true
		 *
		 * _.isLength(Number.MIN_VALUE);
		 * // => false
		 *
		 * _.isLength(Infinity);
		 * // => false
		 *
		 * _.isLength('3');
		 * // => false
		 */
		function isLength(value) {
		  return typeof value == 'number' &&
		    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
		}

		module.exports = isLength;


	/***/ }),
	/* 66 */
	/***/ (function(module, exports) {

		/** Used as references for various `Number` constants. */
		var MAX_SAFE_INTEGER = 9007199254740991;

		/** Used to detect unsigned integer values. */
		var reIsUint = /^(?:0|[1-9]\d*)$/;

		/**
		 * Checks if `value` is a valid array-like index.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
		 * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
		 */
		function isIndex(value, length) {
		  length = length == null ? MAX_SAFE_INTEGER : length;
		  return !!length &&
		    (typeof value == 'number' || reIsUint.test(value)) &&
		    (value > -1 && value % 1 == 0 && value < length);
		}

		module.exports = isIndex;


	/***/ }),
	/* 67 */
	/***/ (function(module, exports) {

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/**
		 * Checks if `value` is likely a prototype object.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
		 */
		function isPrototype(value) {
		  var Ctor = value && value.constructor,
		      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;

		  return value === proto;
		}

		module.exports = isPrototype;


	/***/ }),
	/* 68 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayLikeKeys = __webpack_require__(69),
		    baseKeys = __webpack_require__(82),
		    isArrayLike = __webpack_require__(64);

		/**
		 * Creates an array of the own enumerable property names of `object`.
		 *
		 * **Note:** Non-object values are coerced to objects. See the
		 * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
		 * for more details.
		 *
		 * @static
		 * @since 0.1.0
		 * @memberOf _
		 * @category Object
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of property names.
		 * @example
		 *
		 * function Foo() {
		 *   this.a = 1;
		 *   this.b = 2;
		 * }
		 *
		 * Foo.prototype.c = 3;
		 *
		 * _.keys(new Foo);
		 * // => ['a', 'b'] (iteration order is not guaranteed)
		 *
		 * _.keys('hi');
		 * // => ['0', '1']
		 */
		function keys(object) {
		  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
		}

		module.exports = keys;


	/***/ }),
	/* 69 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseTimes = __webpack_require__(70),
		    isArguments = __webpack_require__(71),
		    isArray = __webpack_require__(74),
		    isBuffer = __webpack_require__(75),
		    isIndex = __webpack_require__(66),
		    isTypedArray = __webpack_require__(78);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Creates an array of the enumerable property names of the array-like `value`.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @param {boolean} inherited Specify returning inherited property names.
		 * @returns {Array} Returns the array of property names.
		 */
		function arrayLikeKeys(value, inherited) {
		  var isArr = isArray(value),
		      isArg = !isArr && isArguments(value),
		      isBuff = !isArr && !isArg && isBuffer(value),
		      isType = !isArr && !isArg && !isBuff && isTypedArray(value),
		      skipIndexes = isArr || isArg || isBuff || isType,
		      result = skipIndexes ? baseTimes(value.length, String) : [],
		      length = result.length;

		  for (var key in value) {
		    if ((inherited || hasOwnProperty.call(value, key)) &&
		        !(skipIndexes && (
		           // Safari 9 has enumerable `arguments.length` in strict mode.
		           key == 'length' ||
		           // Node.js 0.10 has enumerable non-index properties on buffers.
		           (isBuff && (key == 'offset' || key == 'parent')) ||
		           // PhantomJS 2 has enumerable non-index properties on typed arrays.
		           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
		           // Skip index properties.
		           isIndex(key, length)
		        ))) {
		      result.push(key);
		    }
		  }
		  return result;
		}

		module.exports = arrayLikeKeys;


	/***/ }),
	/* 70 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.times` without support for iteratee shorthands
		 * or max array length checks.
		 *
		 * @private
		 * @param {number} n The number of times to invoke `iteratee`.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Array} Returns the array of results.
		 */
		function baseTimes(n, iteratee) {
		  var index = -1,
		      result = Array(n);

		  while (++index < n) {
		    result[index] = iteratee(index);
		  }
		  return result;
		}

		module.exports = baseTimes;


	/***/ }),
	/* 71 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsArguments = __webpack_require__(72),
		    isObjectLike = __webpack_require__(73);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/** Built-in value references. */
		var propertyIsEnumerable = objectProto.propertyIsEnumerable;

		/**
		 * Checks if `value` is likely an `arguments` object.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
		 *  else `false`.
		 * @example
		 *
		 * _.isArguments(function() { return arguments; }());
		 * // => true
		 *
		 * _.isArguments([1, 2, 3]);
		 * // => false
		 */
		var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
		  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
		    !propertyIsEnumerable.call(value, 'callee');
		};

		module.exports = isArguments;


	/***/ }),
	/* 72 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(41),
		    isObjectLike = __webpack_require__(73);

		/** `Object#toString` result references. */
		var argsTag = '[object Arguments]';

		/**
		 * The base implementation of `_.isArguments`.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
		 */
		function baseIsArguments(value) {
		  return isObjectLike(value) && baseGetTag(value) == argsTag;
		}

		module.exports = baseIsArguments;


	/***/ }),
	/* 73 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is object-like. A value is object-like if it's not `null`
		 * and has a `typeof` result of "object".
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
		 * @example
		 *
		 * _.isObjectLike({});
		 * // => true
		 *
		 * _.isObjectLike([1, 2, 3]);
		 * // => true
		 *
		 * _.isObjectLike(_.noop);
		 * // => false
		 *
		 * _.isObjectLike(null);
		 * // => false
		 */
		function isObjectLike(value) {
		  return value != null && typeof value == 'object';
		}

		module.exports = isObjectLike;


	/***/ }),
	/* 74 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is classified as an `Array` object.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is an array, else `false`.
		 * @example
		 *
		 * _.isArray([1, 2, 3]);
		 * // => true
		 *
		 * _.isArray(document.body.children);
		 * // => false
		 *
		 * _.isArray('abc');
		 * // => false
		 *
		 * _.isArray(_.noop);
		 * // => false
		 */
		var isArray = Array.isArray;

		module.exports = isArray;


	/***/ }),
	/* 75 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(43),
		    stubFalse = __webpack_require__(77);

		/** Detect free variable `exports`. */
		var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;

		/** Detect free variable `module`. */
		var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

		/** Detect the popular CommonJS extension `module.exports`. */
		var moduleExports = freeModule && freeModule.exports === freeExports;

		/** Built-in value references. */
		var Buffer = moduleExports ? root.Buffer : undefined;

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;

		/**
		 * Checks if `value` is a buffer.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.3.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
		 * @example
		 *
		 * _.isBuffer(new Buffer(2));
		 * // => true
		 *
		 * _.isBuffer(new Uint8Array(2));
		 * // => false
		 */
		var isBuffer = nativeIsBuffer || stubFalse;

		module.exports = isBuffer;

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(76)(module)))

	/***/ }),
	/* 76 */
	/***/ (function(module, exports) {

		module.exports = function(module) {
			if(!module.webpackPolyfill) {
				module.deprecate = function() {};
				module.paths = [];
				// module.parent = undefined by default
				module.children = [];
				module.webpackPolyfill = 1;
			}
			return module;
		}


	/***/ }),
	/* 77 */
	/***/ (function(module, exports) {

		/**
		 * This method returns `false`.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.13.0
		 * @category Util
		 * @returns {boolean} Returns `false`.
		 * @example
		 *
		 * _.times(2, _.stubFalse);
		 * // => [false, false]
		 */
		function stubFalse() {
		  return false;
		}

		module.exports = stubFalse;


	/***/ }),
	/* 78 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsTypedArray = __webpack_require__(79),
		    baseUnary = __webpack_require__(80),
		    nodeUtil = __webpack_require__(81);

		/* Node.js helper references. */
		var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;

		/**
		 * Checks if `value` is classified as a typed array.
		 *
		 * @static
		 * @memberOf _
		 * @since 3.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
		 * @example
		 *
		 * _.isTypedArray(new Uint8Array);
		 * // => true
		 *
		 * _.isTypedArray([]);
		 * // => false
		 */
		var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;

		module.exports = isTypedArray;


	/***/ }),
	/* 79 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(41),
		    isLength = __webpack_require__(65),
		    isObjectLike = __webpack_require__(73);

		/** `Object#toString` result references. */
		var argsTag = '[object Arguments]',
		    arrayTag = '[object Array]',
		    boolTag = '[object Boolean]',
		    dateTag = '[object Date]',
		    errorTag = '[object Error]',
		    funcTag = '[object Function]',
		    mapTag = '[object Map]',
		    numberTag = '[object Number]',
		    objectTag = '[object Object]',
		    regexpTag = '[object RegExp]',
		    setTag = '[object Set]',
		    stringTag = '[object String]',
		    weakMapTag = '[object WeakMap]';

		var arrayBufferTag = '[object ArrayBuffer]',
		    dataViewTag = '[object DataView]',
		    float32Tag = '[object Float32Array]',
		    float64Tag = '[object Float64Array]',
		    int8Tag = '[object Int8Array]',
		    int16Tag = '[object Int16Array]',
		    int32Tag = '[object Int32Array]',
		    uint8Tag = '[object Uint8Array]',
		    uint8ClampedTag = '[object Uint8ClampedArray]',
		    uint16Tag = '[object Uint16Array]',
		    uint32Tag = '[object Uint32Array]';

		/** Used to identify `toStringTag` values of typed arrays. */
		var typedArrayTags = {};
		typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
		typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
		typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
		typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
		typedArrayTags[uint32Tag] = true;
		typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
		typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
		typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
		typedArrayTags[errorTag] = typedArrayTags[funcTag] =
		typedArrayTags[mapTag] = typedArrayTags[numberTag] =
		typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
		typedArrayTags[setTag] = typedArrayTags[stringTag] =
		typedArrayTags[weakMapTag] = false;

		/**
		 * The base implementation of `_.isTypedArray` without Node.js optimizations.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
		 */
		function baseIsTypedArray(value) {
		  return isObjectLike(value) &&
		    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
		}

		module.exports = baseIsTypedArray;


	/***/ }),
	/* 80 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.unary` without support for storing metadata.
		 *
		 * @private
		 * @param {Function} func The function to cap arguments for.
		 * @returns {Function} Returns the new capped function.
		 */
		function baseUnary(func) {
		  return function(value) {
		    return func(value);
		  };
		}

		module.exports = baseUnary;


	/***/ }),
	/* 81 */
	/***/ (function(module, exports, __webpack_require__) {

		/* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__(44);

		/** Detect free variable `exports`. */
		var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;

		/** Detect free variable `module`. */
		var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

		/** Detect the popular CommonJS extension `module.exports`. */
		var moduleExports = freeModule && freeModule.exports === freeExports;

		/** Detect free variable `process` from Node.js. */
		var freeProcess = moduleExports && freeGlobal.process;

		/** Used to access faster Node.js helpers. */
		var nodeUtil = (function() {
		  try {
		    return freeProcess && freeProcess.binding && freeProcess.binding('util');
		  } catch (e) {}
		}());

		module.exports = nodeUtil;

		/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(76)(module)))

	/***/ }),
	/* 82 */
	/***/ (function(module, exports, __webpack_require__) {

		var isPrototype = __webpack_require__(67),
		    nativeKeys = __webpack_require__(83);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of property names.
		 */
		function baseKeys(object) {
		  if (!isPrototype(object)) {
		    return nativeKeys(object);
		  }
		  var result = [];
		  for (var key in Object(object)) {
		    if (hasOwnProperty.call(object, key) && key != 'constructor') {
		      result.push(key);
		    }
		  }
		  return result;
		}

		module.exports = baseKeys;


	/***/ }),
	/* 83 */
	/***/ (function(module, exports, __webpack_require__) {

		var overArg = __webpack_require__(84);

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeKeys = overArg(Object.keys, Object);

		module.exports = nativeKeys;


	/***/ }),
	/* 84 */
	/***/ (function(module, exports) {

		/**
		 * Creates a unary function that invokes `func` with its argument transformed.
		 *
		 * @private
		 * @param {Function} func The function to wrap.
		 * @param {Function} transform The argument transform.
		 * @returns {Function} Returns the new function.
		 */
		function overArg(func, transform) {
		  return function(arg) {
		    return func(transform(arg));
		  };
		}

		module.exports = overArg;


	/***/ }),
	/* 85 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLBuilder, XMLDeclaration, XMLDocType, XMLElement, XMLStringifier;

		  XMLStringifier = __webpack_require__(86);

		  XMLDeclaration = __webpack_require__(87);

		  XMLDocType = __webpack_require__(184);

		  XMLElement = __webpack_require__(99);

		  module.exports = XMLBuilder = (function() {
		    function XMLBuilder(name, options) {
		      var root, temp;
		      if (name == null) {
		        throw new Error("Root element needs a name");
		      }
		      if (options == null) {
		        options = {};
		      }
		      this.options = options;
		      this.stringify = new XMLStringifier(options);
		      temp = new XMLElement(this, 'doc');
		      root = temp.element(name);
		      root.isRoot = true;
		      root.documentObject = this;
		      this.rootObject = root;
		      if (!options.headless) {
		        root.declaration(options);
		        if ((options.pubID != null) || (options.sysID != null)) {
		          root.doctype(options);
		        }
		      }
		    }

		    XMLBuilder.prototype.root = function() {
		      return this.rootObject;
		    };

		    XMLBuilder.prototype.end = function(options) {
		      return this.toString(options);
		    };

		    XMLBuilder.prototype.toString = function(options) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      r = '';
		      if (this.xmldec != null) {
		        r += this.xmldec.toString(options);
		      }
		      if (this.doctype != null) {
		        r += this.doctype.toString(options);
		      }
		      r += this.rootObject.toString(options);
		      if (pretty && r.slice(-newline.length) === newline) {
		        r = r.slice(0, -newline.length);
		      }
		      return r;
		    };

		    return XMLBuilder;

		  })();

		}).call(this);


	/***/ }),
	/* 86 */
	/***/ (function(module, exports) {

		// Generated by CoffeeScript 1.9.1
		(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;
		      this.allowSurrogateChars = options != null ? options.allowSurrogateChars : void 0;
		      this.noDoubleEncoding = options != null ? options.noDoubleEncoding : void 0;
		      ref = (options != null ? options.stringify : void 0) || {};
		      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 || '';
		      if (val.match(/]]>/)) {
		        throw new Error("Invalid CDATA text: " + val);
		      }
		      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 || '';
		    };

		    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 chars, chr;
		      if (this.allowSurrogateChars) {
		        chars = /[\u0000-\u0008\u000B-\u000C\u000E-\u001F\uFFFE-\uFFFF]/;
		      } else {
		        chars = /[\u0000-\u0008\u000B-\u000C\u000E-\u001F\uD800-\uDFFF\uFFFE-\uFFFF]/;
		      }
		      chr = str.match(chars);
		      if (chr) {
		        throw new Error("Invalid character (" + chr + ") in string: " + str + " at index " + chr.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;');
		    };

		    return XMLStringifier;

		  })();

		}).call(this);


	/***/ }),
	/* 87 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDeclaration, XMLNode, create, 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;

		  create = __webpack_require__(88);

		  isObject = __webpack_require__(47);

		  XMLNode = __webpack_require__(91);

		  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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<?xml';
		      r += ' version="' + this.version + '"';
		      if (this.encoding != null) {
		        r += ' encoding="' + this.encoding + '"';
		      }
		      if (this.standalone != null) {
		        r += ' standalone="' + this.standalone + '"';
		      }
		      r += '?>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDeclaration;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 88 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseAssign = __webpack_require__(89),
		    baseCreate = __webpack_require__(90);

		/**
		 * Creates an object that inherits from the `prototype` object. If a
		 * `properties` object is given, its own enumerable string keyed properties
		 * are assigned to the created object.
		 *
		 * @static
		 * @memberOf _
		 * @since 2.3.0
		 * @category Object
		 * @param {Object} prototype The object to inherit from.
		 * @param {Object} [properties] The properties to assign to the object.
		 * @returns {Object} Returns the new object.
		 * @example
		 *
		 * function Shape() {
		 *   this.x = 0;
		 *   this.y = 0;
		 * }
		 *
		 * function Circle() {
		 *   Shape.call(this);
		 * }
		 *
		 * Circle.prototype = _.create(Shape.prototype, {
		 *   'constructor': Circle
		 * });
		 *
		 * var circle = new Circle;
		 * circle instanceof Circle;
		 * // => true
		 *
		 * circle instanceof Shape;
		 * // => true
		 */
		function create(prototype, properties) {
		  var result = baseCreate(prototype);
		  return properties == null ? result : baseAssign(result, properties);
		}

		module.exports = create;


	/***/ }),
	/* 89 */
	/***/ (function(module, exports, __webpack_require__) {

		var copyObject = __webpack_require__(53),
		    keys = __webpack_require__(68);

		/**
		 * The base implementation of `_.assign` without support for multiple sources
		 * or `customizer` functions.
		 *
		 * @private
		 * @param {Object} object The destination object.
		 * @param {Object} source The source object.
		 * @returns {Object} Returns `object`.
		 */
		function baseAssign(object, source) {
		  return object && copyObject(source, keys(source), object);
		}

		module.exports = baseAssign;


	/***/ }),
	/* 90 */
	/***/ (function(module, exports, __webpack_require__) {

		var isObject = __webpack_require__(47);

		/** Built-in value references. */
		var objectCreate = Object.create;

		/**
		 * The base implementation of `_.create` without support for assigning
		 * properties to the created object.
		 *
		 * @private
		 * @param {Object} proto The object to inherit from.
		 * @returns {Object} Returns the new object.
		 */
		var baseCreate = (function() {
		  function object() {}
		  return function(proto) {
		    if (!isObject(proto)) {
		      return {};
		    }
		    if (objectCreate) {
		      return objectCreate(proto);
		    }
		    object.prototype = proto;
		    var result = new object;
		    object.prototype = undefined;
		    return result;
		  };
		}());

		module.exports = baseCreate;


	/***/ }),
	/* 91 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLElement, XMLNode, XMLRaw, XMLText, isEmpty, isFunction, isObject,
		    hasProp = {}.hasOwnProperty;

		  isObject = __webpack_require__(47);

		  isFunction = __webpack_require__(40);

		  isEmpty = __webpack_require__(92);

		  XMLElement = null;

		  XMLCData = null;

		  XMLComment = null;

		  XMLDeclaration = null;

		  XMLDocType = null;

		  XMLRaw = null;

		  XMLText = null;

		  module.exports = XMLNode = (function() {
		    function XMLNode(parent) {
		      this.parent = parent;
		      this.options = this.parent.options;
		      this.stringify = this.parent.stringify;
		      if (XMLElement === null) {
		        XMLElement = __webpack_require__(99);
		        XMLCData = __webpack_require__(182);
		        XMLComment = __webpack_require__(183);
		        XMLDeclaration = __webpack_require__(87);
		        XMLDocType = __webpack_require__(184);
		        XMLRaw = __webpack_require__(189);
		        XMLText = __webpack_require__(190);
		      }
		    }

		    XMLNode.prototype.element = function(name, attributes, text) {
		      var childNode, item, j, k, key, lastChild, len, len1, ref, val;
		      lastChild = null;
		      if (attributes == null) {
		        attributes = {};
		      }
		      attributes = attributes.valueOf();
		      if (!isObject(attributes)) {
		        ref = [attributes, text], text = ref[0], attributes = ref[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.ignoreDecorators && this.stringify.convertPIKey && key.indexOf(this.stringify.convertPIKey) === 0) {
		            lastChild = this.instruction(key.substr(this.stringify.convertPIKey.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 {
		          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, ref;
		      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(ref = [])), ref;
		      return this.parent;
		    };

		    XMLNode.prototype.node = function(name, attributes, text) {
		      var child, ref;
		      if (name != null) {
		        name = name.valueOf();
		      }
		      if (attributes == null) {
		        attributes = {};
		      }
		      attributes = attributes.valueOf();
		      if (!isObject(attributes)) {
		        ref = [attributes, text], text = ref[0], attributes = ref[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.raw = function(value) {
		      var child;
		      child = new XMLRaw(this, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLNode.prototype.declaration = function(version, encoding, standalone) {
		      var doc, xmldec;
		      doc = this.document();
		      xmldec = new XMLDeclaration(doc, version, encoding, standalone);
		      doc.xmldec = xmldec;
		      return doc.root();
		    };

		    XMLNode.prototype.doctype = function(pubID, sysID) {
		      var doc, doctype;
		      doc = this.document();
		      doctype = new XMLDocType(doc, pubID, sysID);
		      doc.doctype = 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 child;
		      if (this.isRoot) {
		        return this;
		      }
		      child = this.parent;
		      while (!child.isRoot) {
		        child = child.parent;
		      }
		      return child;
		    };

		    XMLNode.prototype.document = function() {
		      return this.root().documentObject;
		    };

		    XMLNode.prototype.end = function(options) {
		      return this.document().toString(options);
		    };

		    XMLNode.prototype.prev = function() {
		      var i;
		      if (this.isRoot) {
		        throw new Error("Root node has no siblings");
		      }
		      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;
		      if (this.isRoot) {
		        throw new Error("Root node has no siblings");
		      }
		      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.importXMLBuilder = function(xmlbuilder) {
		      var clonedRoot;
		      clonedRoot = xmlbuilder.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.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.u = function() {
		      return this.up();
		    };

		    return XMLNode;

		  })();

		}).call(this);


	/***/ }),
	/* 92 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseKeys = __webpack_require__(82),
		    getTag = __webpack_require__(93),
		    isArguments = __webpack_require__(71),
		    isArray = __webpack_require__(74),
		    isArrayLike = __webpack_require__(64),
		    isBuffer = __webpack_require__(75),
		    isPrototype = __webpack_require__(67),
		    isTypedArray = __webpack_require__(78);

		/** `Object#toString` result references. */
		var mapTag = '[object Map]',
		    setTag = '[object Set]';

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Checks if `value` is an empty object, collection, map, or set.
		 *
		 * Objects are considered empty if they have no own enumerable string keyed
		 * properties.
		 *
		 * Array-like values such as `arguments` objects, arrays, buffers, strings, or
		 * jQuery-like collections are considered empty if they have a `length` of `0`.
		 * Similarly, maps and sets are considered empty if they have a `size` of `0`.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is empty, else `false`.
		 * @example
		 *
		 * _.isEmpty(null);
		 * // => true
		 *
		 * _.isEmpty(true);
		 * // => true
		 *
		 * _.isEmpty(1);
		 * // => true
		 *
		 * _.isEmpty([1, 2, 3]);
		 * // => false
		 *
		 * _.isEmpty({ 'a': 1 });
		 * // => false
		 */
		function isEmpty(value) {
		  if (value == null) {
		    return true;
		  }
		  if (isArrayLike(value) &&
		      (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||
		        isBuffer(value) || isTypedArray(value) || isArguments(value))) {
		    return !value.length;
		  }
		  var tag = getTag(value);
		  if (tag == mapTag || tag == setTag) {
		    return !value.size;
		  }
		  if (isPrototype(value)) {
		    return !baseKeys(value).length;
		  }
		  for (var key in value) {
		    if (hasOwnProperty.call(value, key)) {
		      return false;
		    }
		  }
		  return true;
		}

		module.exports = isEmpty;


	/***/ }),
	/* 93 */
	/***/ (function(module, exports, __webpack_require__) {

		var DataView = __webpack_require__(94),
		    Map = __webpack_require__(95),
		    Promise = __webpack_require__(96),
		    Set = __webpack_require__(97),
		    WeakMap = __webpack_require__(98),
		    baseGetTag = __webpack_require__(41),
		    toSource = __webpack_require__(50);

		/** `Object#toString` result references. */
		var mapTag = '[object Map]',
		    objectTag = '[object Object]',
		    promiseTag = '[object Promise]',
		    setTag = '[object Set]',
		    weakMapTag = '[object WeakMap]';

		var dataViewTag = '[object DataView]';

		/** Used to detect maps, sets, and weakmaps. */
		var dataViewCtorString = toSource(DataView),
		    mapCtorString = toSource(Map),
		    promiseCtorString = toSource(Promise),
		    setCtorString = toSource(Set),
		    weakMapCtorString = toSource(WeakMap);

		/**
		 * Gets the `toStringTag` of `value`.
		 *
		 * @private
		 * @param {*} value The value to query.
		 * @returns {string} Returns the `toStringTag`.
		 */
		var getTag = baseGetTag;

		// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
		if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
		    (Map && getTag(new Map) != mapTag) ||
		    (Promise && getTag(Promise.resolve()) != promiseTag) ||
		    (Set && getTag(new Set) != setTag) ||
		    (WeakMap && getTag(new WeakMap) != weakMapTag)) {
		  getTag = function(value) {
		    var result = baseGetTag(value),
		        Ctor = result == objectTag ? value.constructor : undefined,
		        ctorString = Ctor ? toSource(Ctor) : '';

		    if (ctorString) {
		      switch (ctorString) {
		        case dataViewCtorString: return dataViewTag;
		        case mapCtorString: return mapTag;
		        case promiseCtorString: return promiseTag;
		        case setCtorString: return setTag;
		        case weakMapCtorString: return weakMapTag;
		      }
		    }
		    return result;
		  };
		}

		module.exports = getTag;


	/***/ }),
	/* 94 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38),
		    root = __webpack_require__(43);

		/* Built-in method references that are verified to be native. */
		var DataView = getNative(root, 'DataView');

		module.exports = DataView;


	/***/ }),
	/* 95 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38),
		    root = __webpack_require__(43);

		/* Built-in method references that are verified to be native. */
		var Map = getNative(root, 'Map');

		module.exports = Map;


	/***/ }),
	/* 96 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38),
		    root = __webpack_require__(43);

		/* Built-in method references that are verified to be native. */
		var Promise = getNative(root, 'Promise');

		module.exports = Promise;


	/***/ }),
	/* 97 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38),
		    root = __webpack_require__(43);

		/* Built-in method references that are verified to be native. */
		var Set = getNative(root, 'Set');

		module.exports = Set;


	/***/ }),
	/* 98 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38),
		    root = __webpack_require__(43);

		/* Built-in method references that are verified to be native. */
		var WeakMap = getNative(root, 'WeakMap');

		module.exports = WeakMap;


	/***/ }),
	/* 99 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLAttribute, XMLElement, XMLNode, XMLProcessingInstruction, create, every, isFunction, 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;

		  create = __webpack_require__(88);

		  isObject = __webpack_require__(47);

		  isFunction = __webpack_require__(40);

		  every = __webpack_require__(100);

		  XMLNode = __webpack_require__(91);

		  XMLAttribute = __webpack_require__(180);

		  XMLProcessingInstruction = __webpack_require__(181);

		  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.children = [];
		      this.instructions = [];
		      this.attributes = {};
		      if (attributes != null) {
		        this.attribute(attributes);
		      }
		    }

		    XMLElement.prototype.clone = function() {
		      var att, attName, clonedSelf, i, len, pi, ref, ref1;
		      clonedSelf = create(XMLElement.prototype, this);
		      if (clonedSelf.isRoot) {
		        clonedSelf.documentObject = null;
		      }
		      clonedSelf.attributes = {};
		      ref = this.attributes;
		      for (attName in ref) {
		        if (!hasProp.call(ref, attName)) continue;
		        att = ref[attName];
		        clonedSelf.attributes[attName] = att.clone();
		      }
		      clonedSelf.instructions = [];
		      ref1 = this.instructions;
		      for (i = 0, len = ref1.length; i < len; i++) {
		        pi = ref1[i];
		        clonedSelf.instructions.push(pi.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.instruction = function(target, value) {
		      var i, insTarget, insValue, instruction, len;
		      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();
		        }
		        instruction = new XMLProcessingInstruction(this, target, value);
		        this.instructions.push(instruction);
		      }
		      return this;
		    };

		    XMLElement.prototype.toString = function(options, level) {
		      var att, child, i, indent, instruction, j, len, len1, name, newline, offset, pretty, r, ref, ref1, ref2, ref3, ref4, ref5, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      ref3 = this.instructions;
		      for (i = 0, len = ref3.length; i < len; i++) {
		        instruction = ref3[i];
		        r += instruction.toString(options, level);
		      }
		      if (pretty) {
		        r += space;
		      }
		      r += '<' + this.name;
		      ref4 = this.attributes;
		      for (name in ref4) {
		        if (!hasProp.call(ref4, name)) continue;
		        att = ref4[name];
		        r += att.toString(options);
		      }
		      if (this.children.length === 0 || every(this.children, function(e) {
		        return e.value === '';
		      })) {
		        r += '/>';
		        if (pretty) {
		          r += newline;
		        }
		      } else if (pretty && this.children.length === 1 && (this.children[0].value != null)) {
		        r += '>';
		        r += this.children[0].value;
		        r += '</' + this.name + '>';
		        r += newline;
		      } else {
		        r += '>';
		        if (pretty) {
		          r += newline;
		        }
		        ref5 = this.children;
		        for (j = 0, len1 = ref5.length; j < len1; j++) {
		          child = ref5[j];
		          r += child.toString(options, level + 1);
		        }
		        if (pretty) {
		          r += space;
		        }
		        r += '</' + this.name + '>';
		        if (pretty) {
		          r += newline;
		        }
		      }
		      return r;
		    };

		    XMLElement.prototype.att = function(name, value) {
		      return this.attribute(name, value);
		    };

		    XMLElement.prototype.ins = function(target, value) {
		      return this.instruction(target, value);
		    };

		    XMLElement.prototype.a = function(name, value) {
		      return this.attribute(name, value);
		    };

		    XMLElement.prototype.i = function(target, value) {
		      return this.instruction(target, value);
		    };

		    return XMLElement;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 100 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayEvery = __webpack_require__(101),
		    baseEvery = __webpack_require__(102),
		    baseIteratee = __webpack_require__(108),
		    isArray = __webpack_require__(74),
		    isIterateeCall = __webpack_require__(63);

		/**
		 * Checks if `predicate` returns truthy for **all** elements of `collection`.
		 * Iteration is stopped once `predicate` returns falsey. The predicate is
		 * invoked with three arguments: (value, index|key, collection).
		 *
		 * **Note:** This method returns `true` for
		 * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because
		 * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of
		 * elements of empty collections.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Collection
		 * @param {Array|Object} collection The collection to iterate over.
		 * @param {Function} [predicate=_.identity] The function invoked per iteration.
		 * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
		 * @returns {boolean} Returns `true` if all elements pass the predicate check,
		 *  else `false`.
		 * @example
		 *
		 * _.every([true, 1, null, 'yes'], Boolean);
		 * // => false
		 *
		 * var users = [
		 *   { 'user': 'barney', 'age': 36, 'active': false },
		 *   { 'user': 'fred',   'age': 40, 'active': false }
		 * ];
		 *
		 * // The `_.matches` iteratee shorthand.
		 * _.every(users, { 'user': 'barney', 'active': false });
		 * // => false
		 *
		 * // The `_.matchesProperty` iteratee shorthand.
		 * _.every(users, ['active', false]);
		 * // => true
		 *
		 * // The `_.property` iteratee shorthand.
		 * _.every(users, 'active');
		 * // => false
		 */
		function every(collection, predicate, guard) {
		  var func = isArray(collection) ? arrayEvery : baseEvery;
		  if (guard && isIterateeCall(collection, predicate, guard)) {
		    predicate = undefined;
		  }
		  return func(collection, baseIteratee(predicate, 3));
		}

		module.exports = every;


	/***/ }),
	/* 101 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.every` for arrays without support for
		 * iteratee shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {boolean} Returns `true` if all elements pass the predicate check,
		 *  else `false`.
		 */
		function arrayEvery(array, predicate) {
		  var index = -1,
		      length = array == null ? 0 : array.length;

		  while (++index < length) {
		    if (!predicate(array[index], index, array)) {
		      return false;
		    }
		  }
		  return true;
		}

		module.exports = arrayEvery;


	/***/ }),
	/* 102 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseEach = __webpack_require__(103);

		/**
		 * The base implementation of `_.every` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Array|Object} collection The collection to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {boolean} Returns `true` if all elements pass the predicate check,
		 *  else `false`
		 */
		function baseEvery(collection, predicate) {
		  var result = true;
		  baseEach(collection, function(value, index, collection) {
		    result = !!predicate(value, index, collection);
		    return result;
		  });
		  return result;
		}

		module.exports = baseEvery;


	/***/ }),
	/* 103 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseForOwn = __webpack_require__(104),
		    createBaseEach = __webpack_require__(107);

		/**
		 * The base implementation of `_.forEach` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Array|Object} collection The collection to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Array|Object} Returns `collection`.
		 */
		var baseEach = createBaseEach(baseForOwn);

		module.exports = baseEach;


	/***/ }),
	/* 104 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseFor = __webpack_require__(105),
		    keys = __webpack_require__(68);

		/**
		 * The base implementation of `_.forOwn` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Object} object The object to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Object} Returns `object`.
		 */
		function baseForOwn(object, iteratee) {
		  return object && baseFor(object, iteratee, keys);
		}

		module.exports = baseForOwn;


	/***/ }),
	/* 105 */
	/***/ (function(module, exports, __webpack_require__) {

		var createBaseFor = __webpack_require__(106);

		/**
		 * The base implementation of `baseForOwn` which iterates over `object`
		 * properties returned by `keysFunc` and invokes `iteratee` for each property.
		 * Iteratee functions may exit iteration early by explicitly returning `false`.
		 *
		 * @private
		 * @param {Object} object The object to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @param {Function} keysFunc The function to get the keys of `object`.
		 * @returns {Object} Returns `object`.
		 */
		var baseFor = createBaseFor();

		module.exports = baseFor;


	/***/ }),
	/* 106 */
	/***/ (function(module, exports) {

		/**
		 * Creates a base function for methods like `_.forIn` and `_.forOwn`.
		 *
		 * @private
		 * @param {boolean} [fromRight] Specify iterating from right to left.
		 * @returns {Function} Returns the new base function.
		 */
		function createBaseFor(fromRight) {
		  return function(object, iteratee, keysFunc) {
		    var index = -1,
		        iterable = Object(object),
		        props = keysFunc(object),
		        length = props.length;

		    while (length--) {
		      var key = props[fromRight ? length : ++index];
		      if (iteratee(iterable[key], key, iterable) === false) {
		        break;
		      }
		    }
		    return object;
		  };
		}

		module.exports = createBaseFor;


	/***/ }),
	/* 107 */
	/***/ (function(module, exports, __webpack_require__) {

		var isArrayLike = __webpack_require__(64);

		/**
		 * Creates a `baseEach` or `baseEachRight` function.
		 *
		 * @private
		 * @param {Function} eachFunc The function to iterate over a collection.
		 * @param {boolean} [fromRight] Specify iterating from right to left.
		 * @returns {Function} Returns the new base function.
		 */
		function createBaseEach(eachFunc, fromRight) {
		  return function(collection, iteratee) {
		    if (collection == null) {
		      return collection;
		    }
		    if (!isArrayLike(collection)) {
		      return eachFunc(collection, iteratee);
		    }
		    var length = collection.length,
		        index = fromRight ? length : -1,
		        iterable = Object(collection);

		    while ((fromRight ? index-- : ++index < length)) {
		      if (iteratee(iterable[index], index, iterable) === false) {
		        break;
		      }
		    }
		    return collection;
		  };
		}

		module.exports = createBaseEach;


	/***/ }),
	/* 108 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseMatches = __webpack_require__(109),
		    baseMatchesProperty = __webpack_require__(161),
		    identity = __webpack_require__(56),
		    isArray = __webpack_require__(74),
		    property = __webpack_require__(177);

		/**
		 * The base implementation of `_.iteratee`.
		 *
		 * @private
		 * @param {*} [value=_.identity] The value to convert to an iteratee.
		 * @returns {Function} Returns the iteratee.
		 */
		function baseIteratee(value) {
		  // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
		  // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
		  if (typeof value == 'function') {
		    return value;
		  }
		  if (value == null) {
		    return identity;
		  }
		  if (typeof value == 'object') {
		    return isArray(value)
		      ? baseMatchesProperty(value[0], value[1])
		      : baseMatches(value);
		  }
		  return property(value);
		}

		module.exports = baseIteratee;


	/***/ }),
	/* 109 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsMatch = __webpack_require__(110),
		    getMatchData = __webpack_require__(158),
		    matchesStrictComparable = __webpack_require__(160);

		/**
		 * The base implementation of `_.matches` which doesn't clone `source`.
		 *
		 * @private
		 * @param {Object} source The object of property values to match.
		 * @returns {Function} Returns the new spec function.
		 */
		function baseMatches(source) {
		  var matchData = getMatchData(source);
		  if (matchData.length == 1 && matchData[0][2]) {
		    return matchesStrictComparable(matchData[0][0], matchData[0][1]);
		  }
		  return function(object) {
		    return object === source || baseIsMatch(object, source, matchData);
		  };
		}

		module.exports = baseMatches;


	/***/ }),
	/* 110 */
	/***/ (function(module, exports, __webpack_require__) {

		var Stack = __webpack_require__(111),
		    baseIsEqual = __webpack_require__(139);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/**
		 * The base implementation of `_.isMatch` without support for iteratee shorthands.
		 *
		 * @private
		 * @param {Object} object The object to inspect.
		 * @param {Object} source The object of property values to match.
		 * @param {Array} matchData The property names, values, and compare flags to match.
		 * @param {Function} [customizer] The function to customize comparisons.
		 * @returns {boolean} Returns `true` if `object` is a match, else `false`.
		 */
		function baseIsMatch(object, source, matchData, customizer) {
		  var index = matchData.length,
		      length = index,
		      noCustomizer = !customizer;

		  if (object == null) {
		    return !length;
		  }
		  object = Object(object);
		  while (index--) {
		    var data = matchData[index];
		    if ((noCustomizer && data[2])
		          ? data[1] !== object[data[0]]
		          : !(data[0] in object)
		        ) {
		      return false;
		    }
		  }
		  while (++index < length) {
		    data = matchData[index];
		    var key = data[0],
		        objValue = object[key],
		        srcValue = data[1];

		    if (noCustomizer && data[2]) {
		      if (objValue === undefined && !(key in object)) {
		        return false;
		      }
		    } else {
		      var stack = new Stack;
		      if (customizer) {
		        var result = customizer(objValue, srcValue, key, object, source, stack);
		      }
		      if (!(result === undefined
		            ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
		            : result
		          )) {
		        return false;
		      }
		    }
		  }
		  return true;
		}

		module.exports = baseIsMatch;


	/***/ }),
	/* 111 */
	/***/ (function(module, exports, __webpack_require__) {

		var ListCache = __webpack_require__(112),
		    stackClear = __webpack_require__(119),
		    stackDelete = __webpack_require__(120),
		    stackGet = __webpack_require__(121),
		    stackHas = __webpack_require__(122),
		    stackSet = __webpack_require__(123);

		/**
		 * Creates a stack cache object to store key-value pairs.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function Stack(entries) {
		  var data = this.__data__ = new ListCache(entries);
		  this.size = data.size;
		}

		// Add methods to `Stack`.
		Stack.prototype.clear = stackClear;
		Stack.prototype['delete'] = stackDelete;
		Stack.prototype.get = stackGet;
		Stack.prototype.has = stackHas;
		Stack.prototype.set = stackSet;

		module.exports = Stack;


	/***/ }),
	/* 112 */
	/***/ (function(module, exports, __webpack_require__) {

		var listCacheClear = __webpack_require__(113),
		    listCacheDelete = __webpack_require__(114),
		    listCacheGet = __webpack_require__(116),
		    listCacheHas = __webpack_require__(117),
		    listCacheSet = __webpack_require__(118);

		/**
		 * Creates an list cache object.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function ListCache(entries) {
		  var index = -1,
		      length = entries == null ? 0 : entries.length;

		  this.clear();
		  while (++index < length) {
		    var entry = entries[index];
		    this.set(entry[0], entry[1]);
		  }
		}

		// Add methods to `ListCache`.
		ListCache.prototype.clear = listCacheClear;
		ListCache.prototype['delete'] = listCacheDelete;
		ListCache.prototype.get = listCacheGet;
		ListCache.prototype.has = listCacheHas;
		ListCache.prototype.set = listCacheSet;

		module.exports = ListCache;


	/***/ }),
	/* 113 */
	/***/ (function(module, exports) {

		/**
		 * Removes all key-value entries from the list cache.
		 *
		 * @private
		 * @name clear
		 * @memberOf ListCache
		 */
		function listCacheClear() {
		  this.__data__ = [];
		  this.size = 0;
		}

		module.exports = listCacheClear;


	/***/ }),
	/* 114 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(115);

		/** Used for built-in method references. */
		var arrayProto = Array.prototype;

		/** Built-in value references. */
		var splice = arrayProto.splice;

		/**
		 * Removes `key` and its value from the list cache.
		 *
		 * @private
		 * @name delete
		 * @memberOf ListCache
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function listCacheDelete(key) {
		  var data = this.__data__,
		      index = assocIndexOf(data, key);

		  if (index < 0) {
		    return false;
		  }
		  var lastIndex = data.length - 1;
		  if (index == lastIndex) {
		    data.pop();
		  } else {
		    splice.call(data, index, 1);
		  }
		  --this.size;
		  return true;
		}

		module.exports = listCacheDelete;


	/***/ }),
	/* 115 */
	/***/ (function(module, exports, __webpack_require__) {

		var eq = __webpack_require__(52);

		/**
		 * Gets the index at which the `key` is found in `array` of key-value pairs.
		 *
		 * @private
		 * @param {Array} array The array to inspect.
		 * @param {*} key The key to search for.
		 * @returns {number} Returns the index of the matched value, else `-1`.
		 */
		function assocIndexOf(array, key) {
		  var length = array.length;
		  while (length--) {
		    if (eq(array[length][0], key)) {
		      return length;
		    }
		  }
		  return -1;
		}

		module.exports = assocIndexOf;


	/***/ }),
	/* 116 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(115);

		/**
		 * Gets the list cache value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf ListCache
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function listCacheGet(key) {
		  var data = this.__data__,
		      index = assocIndexOf(data, key);

		  return index < 0 ? undefined : data[index][1];
		}

		module.exports = listCacheGet;


	/***/ }),
	/* 117 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(115);

		/**
		 * Checks if a list cache value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf ListCache
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function listCacheHas(key) {
		  return assocIndexOf(this.__data__, key) > -1;
		}

		module.exports = listCacheHas;


	/***/ }),
	/* 118 */
	/***/ (function(module, exports, __webpack_require__) {

		var assocIndexOf = __webpack_require__(115);

		/**
		 * Sets the list cache `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf ListCache
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the list cache instance.
		 */
		function listCacheSet(key, value) {
		  var data = this.__data__,
		      index = assocIndexOf(data, key);

		  if (index < 0) {
		    ++this.size;
		    data.push([key, value]);
		  } else {
		    data[index][1] = value;
		  }
		  return this;
		}

		module.exports = listCacheSet;


	/***/ }),
	/* 119 */
	/***/ (function(module, exports, __webpack_require__) {

		var ListCache = __webpack_require__(112);

		/**
		 * Removes all key-value entries from the stack.
		 *
		 * @private
		 * @name clear
		 * @memberOf Stack
		 */
		function stackClear() {
		  this.__data__ = new ListCache;
		  this.size = 0;
		}

		module.exports = stackClear;


	/***/ }),
	/* 120 */
	/***/ (function(module, exports) {

		/**
		 * Removes `key` and its value from the stack.
		 *
		 * @private
		 * @name delete
		 * @memberOf Stack
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function stackDelete(key) {
		  var data = this.__data__,
		      result = data['delete'](key);

		  this.size = data.size;
		  return result;
		}

		module.exports = stackDelete;


	/***/ }),
	/* 121 */
	/***/ (function(module, exports) {

		/**
		 * Gets the stack value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf Stack
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function stackGet(key) {
		  return this.__data__.get(key);
		}

		module.exports = stackGet;


	/***/ }),
	/* 122 */
	/***/ (function(module, exports) {

		/**
		 * Checks if a stack value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf Stack
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function stackHas(key) {
		  return this.__data__.has(key);
		}

		module.exports = stackHas;


	/***/ }),
	/* 123 */
	/***/ (function(module, exports, __webpack_require__) {

		var ListCache = __webpack_require__(112),
		    Map = __webpack_require__(95),
		    MapCache = __webpack_require__(124);

		/** Used as the size to enable large array optimizations. */
		var LARGE_ARRAY_SIZE = 200;

		/**
		 * Sets the stack `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf Stack
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the stack cache instance.
		 */
		function stackSet(key, value) {
		  var data = this.__data__;
		  if (data instanceof ListCache) {
		    var pairs = data.__data__;
		    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
		      pairs.push([key, value]);
		      this.size = ++data.size;
		      return this;
		    }
		    data = this.__data__ = new MapCache(pairs);
		  }
		  data.set(key, value);
		  this.size = data.size;
		  return this;
		}

		module.exports = stackSet;


	/***/ }),
	/* 124 */
	/***/ (function(module, exports, __webpack_require__) {

		var mapCacheClear = __webpack_require__(125),
		    mapCacheDelete = __webpack_require__(133),
		    mapCacheGet = __webpack_require__(136),
		    mapCacheHas = __webpack_require__(137),
		    mapCacheSet = __webpack_require__(138);

		/**
		 * Creates a map cache object to store key-value pairs.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function MapCache(entries) {
		  var index = -1,
		      length = entries == null ? 0 : entries.length;

		  this.clear();
		  while (++index < length) {
		    var entry = entries[index];
		    this.set(entry[0], entry[1]);
		  }
		}

		// Add methods to `MapCache`.
		MapCache.prototype.clear = mapCacheClear;
		MapCache.prototype['delete'] = mapCacheDelete;
		MapCache.prototype.get = mapCacheGet;
		MapCache.prototype.has = mapCacheHas;
		MapCache.prototype.set = mapCacheSet;

		module.exports = MapCache;


	/***/ }),
	/* 125 */
	/***/ (function(module, exports, __webpack_require__) {

		var Hash = __webpack_require__(126),
		    ListCache = __webpack_require__(112),
		    Map = __webpack_require__(95);

		/**
		 * Removes all key-value entries from the map.
		 *
		 * @private
		 * @name clear
		 * @memberOf MapCache
		 */
		function mapCacheClear() {
		  this.size = 0;
		  this.__data__ = {
		    'hash': new Hash,
		    'map': new (Map || ListCache),
		    'string': new Hash
		  };
		}

		module.exports = mapCacheClear;


	/***/ }),
	/* 126 */
	/***/ (function(module, exports, __webpack_require__) {

		var hashClear = __webpack_require__(127),
		    hashDelete = __webpack_require__(129),
		    hashGet = __webpack_require__(130),
		    hashHas = __webpack_require__(131),
		    hashSet = __webpack_require__(132);

		/**
		 * Creates a hash object.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [entries] The key-value pairs to cache.
		 */
		function Hash(entries) {
		  var index = -1,
		      length = entries == null ? 0 : entries.length;

		  this.clear();
		  while (++index < length) {
		    var entry = entries[index];
		    this.set(entry[0], entry[1]);
		  }
		}

		// Add methods to `Hash`.
		Hash.prototype.clear = hashClear;
		Hash.prototype['delete'] = hashDelete;
		Hash.prototype.get = hashGet;
		Hash.prototype.has = hashHas;
		Hash.prototype.set = hashSet;

		module.exports = Hash;


	/***/ }),
	/* 127 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(128);

		/**
		 * Removes all key-value entries from the hash.
		 *
		 * @private
		 * @name clear
		 * @memberOf Hash
		 */
		function hashClear() {
		  this.__data__ = nativeCreate ? nativeCreate(null) : {};
		  this.size = 0;
		}

		module.exports = hashClear;


	/***/ }),
	/* 128 */
	/***/ (function(module, exports, __webpack_require__) {

		var getNative = __webpack_require__(38);

		/* Built-in method references that are verified to be native. */
		var nativeCreate = getNative(Object, 'create');

		module.exports = nativeCreate;


	/***/ }),
	/* 129 */
	/***/ (function(module, exports) {

		/**
		 * Removes `key` and its value from the hash.
		 *
		 * @private
		 * @name delete
		 * @memberOf Hash
		 * @param {Object} hash The hash to modify.
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function hashDelete(key) {
		  var result = this.has(key) && delete this.__data__[key];
		  this.size -= result ? 1 : 0;
		  return result;
		}

		module.exports = hashDelete;


	/***/ }),
	/* 130 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(128);

		/** Used to stand-in for `undefined` hash values. */
		var HASH_UNDEFINED = '__lodash_hash_undefined__';

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Gets the hash value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf Hash
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function hashGet(key) {
		  var data = this.__data__;
		  if (nativeCreate) {
		    var result = data[key];
		    return result === HASH_UNDEFINED ? undefined : result;
		  }
		  return hasOwnProperty.call(data, key) ? data[key] : undefined;
		}

		module.exports = hashGet;


	/***/ }),
	/* 131 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(128);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * Checks if a hash value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf Hash
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function hashHas(key) {
		  var data = this.__data__;
		  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
		}

		module.exports = hashHas;


	/***/ }),
	/* 132 */
	/***/ (function(module, exports, __webpack_require__) {

		var nativeCreate = __webpack_require__(128);

		/** Used to stand-in for `undefined` hash values. */
		var HASH_UNDEFINED = '__lodash_hash_undefined__';

		/**
		 * Sets the hash `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf Hash
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the hash instance.
		 */
		function hashSet(key, value) {
		  var data = this.__data__;
		  this.size += this.has(key) ? 0 : 1;
		  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
		  return this;
		}

		module.exports = hashSet;


	/***/ }),
	/* 133 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(134);

		/**
		 * Removes `key` and its value from the map.
		 *
		 * @private
		 * @name delete
		 * @memberOf MapCache
		 * @param {string} key The key of the value to remove.
		 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
		 */
		function mapCacheDelete(key) {
		  var result = getMapData(this, key)['delete'](key);
		  this.size -= result ? 1 : 0;
		  return result;
		}

		module.exports = mapCacheDelete;


	/***/ }),
	/* 134 */
	/***/ (function(module, exports, __webpack_require__) {

		var isKeyable = __webpack_require__(135);

		/**
		 * Gets the data for `map`.
		 *
		 * @private
		 * @param {Object} map The map to query.
		 * @param {string} key The reference key.
		 * @returns {*} Returns the map data.
		 */
		function getMapData(map, key) {
		  var data = map.__data__;
		  return isKeyable(key)
		    ? data[typeof key == 'string' ? 'string' : 'hash']
		    : data.map;
		}

		module.exports = getMapData;


	/***/ }),
	/* 135 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is suitable for use as unique object key.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
		 */
		function isKeyable(value) {
		  var type = typeof value;
		  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
		    ? (value !== '__proto__')
		    : (value === null);
		}

		module.exports = isKeyable;


	/***/ }),
	/* 136 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(134);

		/**
		 * Gets the map value for `key`.
		 *
		 * @private
		 * @name get
		 * @memberOf MapCache
		 * @param {string} key The key of the value to get.
		 * @returns {*} Returns the entry value.
		 */
		function mapCacheGet(key) {
		  return getMapData(this, key).get(key);
		}

		module.exports = mapCacheGet;


	/***/ }),
	/* 137 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(134);

		/**
		 * Checks if a map value for `key` exists.
		 *
		 * @private
		 * @name has
		 * @memberOf MapCache
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function mapCacheHas(key) {
		  return getMapData(this, key).has(key);
		}

		module.exports = mapCacheHas;


	/***/ }),
	/* 138 */
	/***/ (function(module, exports, __webpack_require__) {

		var getMapData = __webpack_require__(134);

		/**
		 * Sets the map `key` to `value`.
		 *
		 * @private
		 * @name set
		 * @memberOf MapCache
		 * @param {string} key The key of the value to set.
		 * @param {*} value The value to set.
		 * @returns {Object} Returns the map cache instance.
		 */
		function mapCacheSet(key, value) {
		  var data = getMapData(this, key),
		      size = data.size;

		  data.set(key, value);
		  this.size += data.size == size ? 0 : 1;
		  return this;
		}

		module.exports = mapCacheSet;


	/***/ }),
	/* 139 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsEqualDeep = __webpack_require__(140),
		    isObjectLike = __webpack_require__(73);

		/**
		 * The base implementation of `_.isEqual` which supports partial comparisons
		 * and tracks traversed objects.
		 *
		 * @private
		 * @param {*} value The value to compare.
		 * @param {*} other The other value to compare.
		 * @param {boolean} bitmask The bitmask flags.
		 *  1 - Unordered comparison
		 *  2 - Partial comparison
		 * @param {Function} [customizer] The function to customize comparisons.
		 * @param {Object} [stack] Tracks traversed `value` and `other` objects.
		 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
		 */
		function baseIsEqual(value, other, bitmask, customizer, stack) {
		  if (value === other) {
		    return true;
		  }
		  if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
		    return value !== value && other !== other;
		  }
		  return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
		}

		module.exports = baseIsEqual;


	/***/ }),
	/* 140 */
	/***/ (function(module, exports, __webpack_require__) {

		var Stack = __webpack_require__(111),
		    equalArrays = __webpack_require__(141),
		    equalByTag = __webpack_require__(147),
		    equalObjects = __webpack_require__(151),
		    getTag = __webpack_require__(93),
		    isArray = __webpack_require__(74),
		    isBuffer = __webpack_require__(75),
		    isTypedArray = __webpack_require__(78);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1;

		/** `Object#toString` result references. */
		var argsTag = '[object Arguments]',
		    arrayTag = '[object Array]',
		    objectTag = '[object Object]';

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * A specialized version of `baseIsEqual` for arrays and objects which performs
		 * deep comparisons and tracks traversed objects enabling objects with circular
		 * references to be compared.
		 *
		 * @private
		 * @param {Object} object The object to compare.
		 * @param {Object} other The other object to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} [stack] Tracks traversed `object` and `other` objects.
		 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
		 */
		function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
		  var objIsArr = isArray(object),
		      othIsArr = isArray(other),
		      objTag = objIsArr ? arrayTag : getTag(object),
		      othTag = othIsArr ? arrayTag : getTag(other);

		  objTag = objTag == argsTag ? objectTag : objTag;
		  othTag = othTag == argsTag ? objectTag : othTag;

		  var objIsObj = objTag == objectTag,
		      othIsObj = othTag == objectTag,
		      isSameTag = objTag == othTag;

		  if (isSameTag && isBuffer(object)) {
		    if (!isBuffer(other)) {
		      return false;
		    }
		    objIsArr = true;
		    objIsObj = false;
		  }
		  if (isSameTag && !objIsObj) {
		    stack || (stack = new Stack);
		    return (objIsArr || isTypedArray(object))
		      ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
		      : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
		  }
		  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
		    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
		        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');

		    if (objIsWrapped || othIsWrapped) {
		      var objUnwrapped = objIsWrapped ? object.value() : object,
		          othUnwrapped = othIsWrapped ? other.value() : other;

		      stack || (stack = new Stack);
		      return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
		    }
		  }
		  if (!isSameTag) {
		    return false;
		  }
		  stack || (stack = new Stack);
		  return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
		}

		module.exports = baseIsEqualDeep;


	/***/ }),
	/* 141 */
	/***/ (function(module, exports, __webpack_require__) {

		var SetCache = __webpack_require__(142),
		    arraySome = __webpack_require__(145),
		    cacheHas = __webpack_require__(146);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/**
		 * A specialized version of `baseIsEqualDeep` for arrays with support for
		 * partial deep comparisons.
		 *
		 * @private
		 * @param {Array} array The array to compare.
		 * @param {Array} other The other array to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} stack Tracks traversed `array` and `other` objects.
		 * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
		 */
		function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
		  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
		      arrLength = array.length,
		      othLength = other.length;

		  if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
		    return false;
		  }
		  // Assume cyclic values are equal.
		  var stacked = stack.get(array);
		  if (stacked && stack.get(other)) {
		    return stacked == other;
		  }
		  var index = -1,
		      result = true,
		      seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;

		  stack.set(array, other);
		  stack.set(other, array);

		  // Ignore non-index properties.
		  while (++index < arrLength) {
		    var arrValue = array[index],
		        othValue = other[index];

		    if (customizer) {
		      var compared = isPartial
		        ? customizer(othValue, arrValue, index, other, array, stack)
		        : customizer(arrValue, othValue, index, array, other, stack);
		    }
		    if (compared !== undefined) {
		      if (compared) {
		        continue;
		      }
		      result = false;
		      break;
		    }
		    // Recursively compare arrays (susceptible to call stack limits).
		    if (seen) {
		      if (!arraySome(other, function(othValue, othIndex) {
		            if (!cacheHas(seen, othIndex) &&
		                (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
		              return seen.push(othIndex);
		            }
		          })) {
		        result = false;
		        break;
		      }
		    } else if (!(
		          arrValue === othValue ||
		            equalFunc(arrValue, othValue, bitmask, customizer, stack)
		        )) {
		      result = false;
		      break;
		    }
		  }
		  stack['delete'](array);
		  stack['delete'](other);
		  return result;
		}

		module.exports = equalArrays;


	/***/ }),
	/* 142 */
	/***/ (function(module, exports, __webpack_require__) {

		var MapCache = __webpack_require__(124),
		    setCacheAdd = __webpack_require__(143),
		    setCacheHas = __webpack_require__(144);

		/**
		 *
		 * Creates an array cache object to store unique values.
		 *
		 * @private
		 * @constructor
		 * @param {Array} [values] The values to cache.
		 */
		function SetCache(values) {
		  var index = -1,
		      length = values == null ? 0 : values.length;

		  this.__data__ = new MapCache;
		  while (++index < length) {
		    this.add(values[index]);
		  }
		}

		// Add methods to `SetCache`.
		SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
		SetCache.prototype.has = setCacheHas;

		module.exports = SetCache;


	/***/ }),
	/* 143 */
	/***/ (function(module, exports) {

		/** Used to stand-in for `undefined` hash values. */
		var HASH_UNDEFINED = '__lodash_hash_undefined__';

		/**
		 * Adds `value` to the array cache.
		 *
		 * @private
		 * @name add
		 * @memberOf SetCache
		 * @alias push
		 * @param {*} value The value to cache.
		 * @returns {Object} Returns the cache instance.
		 */
		function setCacheAdd(value) {
		  this.__data__.set(value, HASH_UNDEFINED);
		  return this;
		}

		module.exports = setCacheAdd;


	/***/ }),
	/* 144 */
	/***/ (function(module, exports) {

		/**
		 * Checks if `value` is in the array cache.
		 *
		 * @private
		 * @name has
		 * @memberOf SetCache
		 * @param {*} value The value to search for.
		 * @returns {number} Returns `true` if `value` is found, else `false`.
		 */
		function setCacheHas(value) {
		  return this.__data__.has(value);
		}

		module.exports = setCacheHas;


	/***/ }),
	/* 145 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.some` for arrays without support for iteratee
		 * shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {boolean} Returns `true` if any element passes the predicate check,
		 *  else `false`.
		 */
		function arraySome(array, predicate) {
		  var index = -1,
		      length = array == null ? 0 : array.length;

		  while (++index < length) {
		    if (predicate(array[index], index, array)) {
		      return true;
		    }
		  }
		  return false;
		}

		module.exports = arraySome;


	/***/ }),
	/* 146 */
	/***/ (function(module, exports) {

		/**
		 * Checks if a `cache` value for `key` exists.
		 *
		 * @private
		 * @param {Object} cache The cache to query.
		 * @param {string} key The key of the entry to check.
		 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
		 */
		function cacheHas(cache, key) {
		  return cache.has(key);
		}

		module.exports = cacheHas;


	/***/ }),
	/* 147 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(42),
		    Uint8Array = __webpack_require__(148),
		    eq = __webpack_require__(52),
		    equalArrays = __webpack_require__(141),
		    mapToArray = __webpack_require__(149),
		    setToArray = __webpack_require__(150);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/** `Object#toString` result references. */
		var boolTag = '[object Boolean]',
		    dateTag = '[object Date]',
		    errorTag = '[object Error]',
		    mapTag = '[object Map]',
		    numberTag = '[object Number]',
		    regexpTag = '[object RegExp]',
		    setTag = '[object Set]',
		    stringTag = '[object String]',
		    symbolTag = '[object Symbol]';

		var arrayBufferTag = '[object ArrayBuffer]',
		    dataViewTag = '[object DataView]';

		/** Used to convert symbols to primitives and strings. */
		var symbolProto = Symbol ? Symbol.prototype : undefined,
		    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;

		/**
		 * A specialized version of `baseIsEqualDeep` for comparing objects of
		 * the same `toStringTag`.
		 *
		 * **Note:** This function only supports comparing values with tags of
		 * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
		 *
		 * @private
		 * @param {Object} object The object to compare.
		 * @param {Object} other The other object to compare.
		 * @param {string} tag The `toStringTag` of the objects to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} stack Tracks traversed `object` and `other` objects.
		 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
		 */
		function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
		  switch (tag) {
		    case dataViewTag:
		      if ((object.byteLength != other.byteLength) ||
		          (object.byteOffset != other.byteOffset)) {
		        return false;
		      }
		      object = object.buffer;
		      other = other.buffer;

		    case arrayBufferTag:
		      if ((object.byteLength != other.byteLength) ||
		          !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
		        return false;
		      }
		      return true;

		    case boolTag:
		    case dateTag:
		    case numberTag:
		      // Coerce booleans to `1` or `0` and dates to milliseconds.
		      // Invalid dates are coerced to `NaN`.
		      return eq(+object, +other);

		    case errorTag:
		      return object.name == other.name && object.message == other.message;

		    case regexpTag:
		    case stringTag:
		      // Coerce regexes to strings and treat strings, primitives and objects,
		      // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
		      // for more details.
		      return object == (other + '');

		    case mapTag:
		      var convert = mapToArray;

		    case setTag:
		      var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
		      convert || (convert = setToArray);

		      if (object.size != other.size && !isPartial) {
		        return false;
		      }
		      // Assume cyclic values are equal.
		      var stacked = stack.get(object);
		      if (stacked) {
		        return stacked == other;
		      }
		      bitmask |= COMPARE_UNORDERED_FLAG;

		      // Recursively compare objects (susceptible to call stack limits).
		      stack.set(object, other);
		      var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
		      stack['delete'](object);
		      return result;

		    case symbolTag:
		      if (symbolValueOf) {
		        return symbolValueOf.call(object) == symbolValueOf.call(other);
		      }
		  }
		  return false;
		}

		module.exports = equalByTag;


	/***/ }),
	/* 148 */
	/***/ (function(module, exports, __webpack_require__) {

		var root = __webpack_require__(43);

		/** Built-in value references. */
		var Uint8Array = root.Uint8Array;

		module.exports = Uint8Array;


	/***/ }),
	/* 149 */
	/***/ (function(module, exports) {

		/**
		 * Converts `map` to its key-value pairs.
		 *
		 * @private
		 * @param {Object} map The map to convert.
		 * @returns {Array} Returns the key-value pairs.
		 */
		function mapToArray(map) {
		  var index = -1,
		      result = Array(map.size);

		  map.forEach(function(value, key) {
		    result[++index] = [key, value];
		  });
		  return result;
		}

		module.exports = mapToArray;


	/***/ }),
	/* 150 */
	/***/ (function(module, exports) {

		/**
		 * Converts `set` to an array of its values.
		 *
		 * @private
		 * @param {Object} set The set to convert.
		 * @returns {Array} Returns the values.
		 */
		function setToArray(set) {
		  var index = -1,
		      result = Array(set.size);

		  set.forEach(function(value) {
		    result[++index] = value;
		  });
		  return result;
		}

		module.exports = setToArray;


	/***/ }),
	/* 151 */
	/***/ (function(module, exports, __webpack_require__) {

		var getAllKeys = __webpack_require__(152);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1;

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Used to check objects for own properties. */
		var hasOwnProperty = objectProto.hasOwnProperty;

		/**
		 * A specialized version of `baseIsEqualDeep` for objects with support for
		 * partial deep comparisons.
		 *
		 * @private
		 * @param {Object} object The object to compare.
		 * @param {Object} other The other object to compare.
		 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
		 * @param {Function} customizer The function to customize comparisons.
		 * @param {Function} equalFunc The function to determine equivalents of values.
		 * @param {Object} stack Tracks traversed `object` and `other` objects.
		 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
		 */
		function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
		  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
		      objProps = getAllKeys(object),
		      objLength = objProps.length,
		      othProps = getAllKeys(other),
		      othLength = othProps.length;

		  if (objLength != othLength && !isPartial) {
		    return false;
		  }
		  var index = objLength;
		  while (index--) {
		    var key = objProps[index];
		    if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {
		      return false;
		    }
		  }
		  // Assume cyclic values are equal.
		  var stacked = stack.get(object);
		  if (stacked && stack.get(other)) {
		    return stacked == other;
		  }
		  var result = true;
		  stack.set(object, other);
		  stack.set(other, object);

		  var skipCtor = isPartial;
		  while (++index < objLength) {
		    key = objProps[index];
		    var objValue = object[key],
		        othValue = other[key];

		    if (customizer) {
		      var compared = isPartial
		        ? customizer(othValue, objValue, key, other, object, stack)
		        : customizer(objValue, othValue, key, object, other, stack);
		    }
		    // Recursively compare objects (susceptible to call stack limits).
		    if (!(compared === undefined
		          ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))
		          : compared
		        )) {
		      result = false;
		      break;
		    }
		    skipCtor || (skipCtor = key == 'constructor');
		  }
		  if (result && !skipCtor) {
		    var objCtor = object.constructor,
		        othCtor = other.constructor;

		    // Non `Object` object instances with different constructors are not equal.
		    if (objCtor != othCtor &&
		        ('constructor' in object && 'constructor' in other) &&
		        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
		          typeof othCtor == 'function' && othCtor instanceof othCtor)) {
		      result = false;
		    }
		  }
		  stack['delete'](object);
		  stack['delete'](other);
		  return result;
		}

		module.exports = equalObjects;


	/***/ }),
	/* 152 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetAllKeys = __webpack_require__(153),
		    getSymbols = __webpack_require__(155),
		    keys = __webpack_require__(68);

		/**
		 * Creates an array of own enumerable property names and symbols of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of property names and symbols.
		 */
		function getAllKeys(object) {
		  return baseGetAllKeys(object, keys, getSymbols);
		}

		module.exports = getAllKeys;


	/***/ }),
	/* 153 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayPush = __webpack_require__(154),
		    isArray = __webpack_require__(74);

		/**
		 * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
		 * `keysFunc` and `symbolsFunc` to get the enumerable property names and
		 * symbols of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {Function} keysFunc The function to get the keys of `object`.
		 * @param {Function} symbolsFunc The function to get the symbols of `object`.
		 * @returns {Array} Returns the array of property names and symbols.
		 */
		function baseGetAllKeys(object, keysFunc, symbolsFunc) {
		  var result = keysFunc(object);
		  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
		}

		module.exports = baseGetAllKeys;


	/***/ }),
	/* 154 */
	/***/ (function(module, exports) {

		/**
		 * Appends the elements of `values` to `array`.
		 *
		 * @private
		 * @param {Array} array The array to modify.
		 * @param {Array} values The values to append.
		 * @returns {Array} Returns `array`.
		 */
		function arrayPush(array, values) {
		  var index = -1,
		      length = values.length,
		      offset = array.length;

		  while (++index < length) {
		    array[offset + index] = values[index];
		  }
		  return array;
		}

		module.exports = arrayPush;


	/***/ }),
	/* 155 */
	/***/ (function(module, exports, __webpack_require__) {

		var arrayFilter = __webpack_require__(156),
		    stubArray = __webpack_require__(157);

		/** Used for built-in method references. */
		var objectProto = Object.prototype;

		/** Built-in value references. */
		var propertyIsEnumerable = objectProto.propertyIsEnumerable;

		/* Built-in method references for those with the same name as other `lodash` methods. */
		var nativeGetSymbols = Object.getOwnPropertySymbols;

		/**
		 * Creates an array of the own enumerable symbols of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the array of symbols.
		 */
		var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
		  if (object == null) {
		    return [];
		  }
		  object = Object(object);
		  return arrayFilter(nativeGetSymbols(object), function(symbol) {
		    return propertyIsEnumerable.call(object, symbol);
		  });
		};

		module.exports = getSymbols;


	/***/ }),
	/* 156 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.filter` for arrays without support for
		 * iteratee shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} predicate The function invoked per iteration.
		 * @returns {Array} Returns the new filtered array.
		 */
		function arrayFilter(array, predicate) {
		  var index = -1,
		      length = array == null ? 0 : array.length,
		      resIndex = 0,
		      result = [];

		  while (++index < length) {
		    var value = array[index];
		    if (predicate(value, index, array)) {
		      result[resIndex++] = value;
		    }
		  }
		  return result;
		}

		module.exports = arrayFilter;


	/***/ }),
	/* 157 */
	/***/ (function(module, exports) {

		/**
		 * This method returns a new empty array.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.13.0
		 * @category Util
		 * @returns {Array} Returns the new empty array.
		 * @example
		 *
		 * var arrays = _.times(2, _.stubArray);
		 *
		 * console.log(arrays);
		 * // => [[], []]
		 *
		 * console.log(arrays[0] === arrays[1]);
		 * // => false
		 */
		function stubArray() {
		  return [];
		}

		module.exports = stubArray;


	/***/ }),
	/* 158 */
	/***/ (function(module, exports, __webpack_require__) {

		var isStrictComparable = __webpack_require__(159),
		    keys = __webpack_require__(68);

		/**
		 * Gets the property names, values, and compare flags of `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @returns {Array} Returns the match data of `object`.
		 */
		function getMatchData(object) {
		  var result = keys(object),
		      length = result.length;

		  while (length--) {
		    var key = result[length],
		        value = object[key];

		    result[length] = [key, value, isStrictComparable(value)];
		  }
		  return result;
		}

		module.exports = getMatchData;


	/***/ }),
	/* 159 */
	/***/ (function(module, exports, __webpack_require__) {

		var isObject = __webpack_require__(47);

		/**
		 * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` if suitable for strict
		 *  equality comparisons, else `false`.
		 */
		function isStrictComparable(value) {
		  return value === value && !isObject(value);
		}

		module.exports = isStrictComparable;


	/***/ }),
	/* 160 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `matchesProperty` for source values suitable
		 * for strict equality comparisons, i.e. `===`.
		 *
		 * @private
		 * @param {string} key The key of the property to get.
		 * @param {*} srcValue The value to match.
		 * @returns {Function} Returns the new spec function.
		 */
		function matchesStrictComparable(key, srcValue) {
		  return function(object) {
		    if (object == null) {
		      return false;
		    }
		    return object[key] === srcValue &&
		      (srcValue !== undefined || (key in Object(object)));
		  };
		}

		module.exports = matchesStrictComparable;


	/***/ }),
	/* 161 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseIsEqual = __webpack_require__(139),
		    get = __webpack_require__(162),
		    hasIn = __webpack_require__(174),
		    isKey = __webpack_require__(165),
		    isStrictComparable = __webpack_require__(159),
		    matchesStrictComparable = __webpack_require__(160),
		    toKey = __webpack_require__(173);

		/** Used to compose bitmasks for value comparisons. */
		var COMPARE_PARTIAL_FLAG = 1,
		    COMPARE_UNORDERED_FLAG = 2;

		/**
		 * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
		 *
		 * @private
		 * @param {string} path The path of the property to get.
		 * @param {*} srcValue The value to match.
		 * @returns {Function} Returns the new spec function.
		 */
		function baseMatchesProperty(path, srcValue) {
		  if (isKey(path) && isStrictComparable(srcValue)) {
		    return matchesStrictComparable(toKey(path), srcValue);
		  }
		  return function(object) {
		    var objValue = get(object, path);
		    return (objValue === undefined && objValue === srcValue)
		      ? hasIn(object, path)
		      : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
		  };
		}

		module.exports = baseMatchesProperty;


	/***/ }),
	/* 162 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGet = __webpack_require__(163);

		/**
		 * Gets the value at `path` of `object`. If the resolved value is
		 * `undefined`, the `defaultValue` is returned in its place.
		 *
		 * @static
		 * @memberOf _
		 * @since 3.7.0
		 * @category Object
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path of the property to get.
		 * @param {*} [defaultValue] The value returned for `undefined` resolved values.
		 * @returns {*} Returns the resolved value.
		 * @example
		 *
		 * var object = { 'a': [{ 'b': { 'c': 3 } }] };
		 *
		 * _.get(object, 'a[0].b.c');
		 * // => 3
		 *
		 * _.get(object, ['a', '0', 'b', 'c']);
		 * // => 3
		 *
		 * _.get(object, 'a.b.c', 'default');
		 * // => 'default'
		 */
		function get(object, path, defaultValue) {
		  var result = object == null ? undefined : baseGet(object, path);
		  return result === undefined ? defaultValue : result;
		}

		module.exports = get;


	/***/ }),
	/* 163 */
	/***/ (function(module, exports, __webpack_require__) {

		var castPath = __webpack_require__(164),
		    toKey = __webpack_require__(173);

		/**
		 * The base implementation of `_.get` without support for default values.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path of the property to get.
		 * @returns {*} Returns the resolved value.
		 */
		function baseGet(object, path) {
		  path = castPath(path, object);

		  var index = 0,
		      length = path.length;

		  while (object != null && index < length) {
		    object = object[toKey(path[index++])];
		  }
		  return (index && index == length) ? object : undefined;
		}

		module.exports = baseGet;


	/***/ }),
	/* 164 */
	/***/ (function(module, exports, __webpack_require__) {

		var isArray = __webpack_require__(74),
		    isKey = __webpack_require__(165),
		    stringToPath = __webpack_require__(167),
		    toString = __webpack_require__(170);

		/**
		 * Casts `value` to a path array if it's not one.
		 *
		 * @private
		 * @param {*} value The value to inspect.
		 * @param {Object} [object] The object to query keys on.
		 * @returns {Array} Returns the cast property path array.
		 */
		function castPath(value, object) {
		  if (isArray(value)) {
		    return value;
		  }
		  return isKey(value, object) ? [value] : stringToPath(toString(value));
		}

		module.exports = castPath;


	/***/ }),
	/* 165 */
	/***/ (function(module, exports, __webpack_require__) {

		var isArray = __webpack_require__(74),
		    isSymbol = __webpack_require__(166);

		/** Used to match property names within property paths. */
		var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
		    reIsPlainProp = /^\w*$/;

		/**
		 * Checks if `value` is a property name and not a property path.
		 *
		 * @private
		 * @param {*} value The value to check.
		 * @param {Object} [object] The object to query keys on.
		 * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
		 */
		function isKey(value, object) {
		  if (isArray(value)) {
		    return false;
		  }
		  var type = typeof value;
		  if (type == 'number' || type == 'symbol' || type == 'boolean' ||
		      value == null || isSymbol(value)) {
		    return true;
		  }
		  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
		    (object != null && value in Object(object));
		}

		module.exports = isKey;


	/***/ }),
	/* 166 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGetTag = __webpack_require__(41),
		    isObjectLike = __webpack_require__(73);

		/** `Object#toString` result references. */
		var symbolTag = '[object Symbol]';

		/**
		 * Checks if `value` is classified as a `Symbol` primitive or object.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to check.
		 * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
		 * @example
		 *
		 * _.isSymbol(Symbol.iterator);
		 * // => true
		 *
		 * _.isSymbol('abc');
		 * // => false
		 */
		function isSymbol(value) {
		  return typeof value == 'symbol' ||
		    (isObjectLike(value) && baseGetTag(value) == symbolTag);
		}

		module.exports = isSymbol;


	/***/ }),
	/* 167 */
	/***/ (function(module, exports, __webpack_require__) {

		var memoizeCapped = __webpack_require__(168);

		/** Used to match property names within property paths. */
		var reLeadingDot = /^\./,
		    rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;

		/** Used to match backslashes in property paths. */
		var reEscapeChar = /\\(\\)?/g;

		/**
		 * Converts `string` to a property path array.
		 *
		 * @private
		 * @param {string} string The string to convert.
		 * @returns {Array} Returns the property path array.
		 */
		var stringToPath = memoizeCapped(function(string) {
		  var result = [];
		  if (reLeadingDot.test(string)) {
		    result.push('');
		  }
		  string.replace(rePropName, function(match, number, quote, string) {
		    result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
		  });
		  return result;
		});

		module.exports = stringToPath;


	/***/ }),
	/* 168 */
	/***/ (function(module, exports, __webpack_require__) {

		var memoize = __webpack_require__(169);

		/** Used as the maximum memoize cache size. */
		var MAX_MEMOIZE_SIZE = 500;

		/**
		 * A specialized version of `_.memoize` which clears the memoized function's
		 * cache when it exceeds `MAX_MEMOIZE_SIZE`.
		 *
		 * @private
		 * @param {Function} func The function to have its output memoized.
		 * @returns {Function} Returns the new memoized function.
		 */
		function memoizeCapped(func) {
		  var result = memoize(func, function(key) {
		    if (cache.size === MAX_MEMOIZE_SIZE) {
		      cache.clear();
		    }
		    return key;
		  });

		  var cache = result.cache;
		  return result;
		}

		module.exports = memoizeCapped;


	/***/ }),
	/* 169 */
	/***/ (function(module, exports, __webpack_require__) {

		var MapCache = __webpack_require__(124);

		/** Error message constants. */
		var FUNC_ERROR_TEXT = 'Expected a function';

		/**
		 * Creates a function that memoizes the result of `func`. If `resolver` is
		 * provided, it determines the cache key for storing the result based on the
		 * arguments provided to the memoized function. By default, the first argument
		 * provided to the memoized function is used as the map cache key. The `func`
		 * is invoked with the `this` binding of the memoized function.
		 *
		 * **Note:** The cache is exposed as the `cache` property on the memoized
		 * function. Its creation may be customized by replacing the `_.memoize.Cache`
		 * constructor with one whose instances implement the
		 * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
		 * method interface of `clear`, `delete`, `get`, `has`, and `set`.
		 *
		 * @static
		 * @memberOf _
		 * @since 0.1.0
		 * @category Function
		 * @param {Function} func The function to have its output memoized.
		 * @param {Function} [resolver] The function to resolve the cache key.
		 * @returns {Function} Returns the new memoized function.
		 * @example
		 *
		 * var object = { 'a': 1, 'b': 2 };
		 * var other = { 'c': 3, 'd': 4 };
		 *
		 * var values = _.memoize(_.values);
		 * values(object);
		 * // => [1, 2]
		 *
		 * values(other);
		 * // => [3, 4]
		 *
		 * object.a = 2;
		 * values(object);
		 * // => [1, 2]
		 *
		 * // Modify the result cache.
		 * values.cache.set(object, ['a', 'b']);
		 * values(object);
		 * // => ['a', 'b']
		 *
		 * // Replace `_.memoize.Cache`.
		 * _.memoize.Cache = WeakMap;
		 */
		function memoize(func, resolver) {
		  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
		    throw new TypeError(FUNC_ERROR_TEXT);
		  }
		  var memoized = function() {
		    var args = arguments,
		        key = resolver ? resolver.apply(this, args) : args[0],
		        cache = memoized.cache;

		    if (cache.has(key)) {
		      return cache.get(key);
		    }
		    var result = func.apply(this, args);
		    memoized.cache = cache.set(key, result) || cache;
		    return result;
		  };
		  memoized.cache = new (memoize.Cache || MapCache);
		  return memoized;
		}

		// Expose `MapCache`.
		memoize.Cache = MapCache;

		module.exports = memoize;


	/***/ }),
	/* 170 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseToString = __webpack_require__(171);

		/**
		 * Converts `value` to a string. An empty string is returned for `null`
		 * and `undefined` values. The sign of `-0` is preserved.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Lang
		 * @param {*} value The value to convert.
		 * @returns {string} Returns the converted string.
		 * @example
		 *
		 * _.toString(null);
		 * // => ''
		 *
		 * _.toString(-0);
		 * // => '-0'
		 *
		 * _.toString([1, 2, 3]);
		 * // => '1,2,3'
		 */
		function toString(value) {
		  return value == null ? '' : baseToString(value);
		}

		module.exports = toString;


	/***/ }),
	/* 171 */
	/***/ (function(module, exports, __webpack_require__) {

		var Symbol = __webpack_require__(42),
		    arrayMap = __webpack_require__(172),
		    isArray = __webpack_require__(74),
		    isSymbol = __webpack_require__(166);

		/** Used as references for various `Number` constants. */
		var INFINITY = 1 / 0;

		/** Used to convert symbols to primitives and strings. */
		var symbolProto = Symbol ? Symbol.prototype : undefined,
		    symbolToString = symbolProto ? symbolProto.toString : undefined;

		/**
		 * The base implementation of `_.toString` which doesn't convert nullish
		 * values to empty strings.
		 *
		 * @private
		 * @param {*} value The value to process.
		 * @returns {string} Returns the string.
		 */
		function baseToString(value) {
		  // Exit early for strings to avoid a performance hit in some environments.
		  if (typeof value == 'string') {
		    return value;
		  }
		  if (isArray(value)) {
		    // Recursively convert values (susceptible to call stack limits).
		    return arrayMap(value, baseToString) + '';
		  }
		  if (isSymbol(value)) {
		    return symbolToString ? symbolToString.call(value) : '';
		  }
		  var result = (value + '');
		  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
		}

		module.exports = baseToString;


	/***/ }),
	/* 172 */
	/***/ (function(module, exports) {

		/**
		 * A specialized version of `_.map` for arrays without support for iteratee
		 * shorthands.
		 *
		 * @private
		 * @param {Array} [array] The array to iterate over.
		 * @param {Function} iteratee The function invoked per iteration.
		 * @returns {Array} Returns the new mapped array.
		 */
		function arrayMap(array, iteratee) {
		  var index = -1,
		      length = array == null ? 0 : array.length,
		      result = Array(length);

		  while (++index < length) {
		    result[index] = iteratee(array[index], index, array);
		  }
		  return result;
		}

		module.exports = arrayMap;


	/***/ }),
	/* 173 */
	/***/ (function(module, exports, __webpack_require__) {

		var isSymbol = __webpack_require__(166);

		/** Used as references for various `Number` constants. */
		var INFINITY = 1 / 0;

		/**
		 * Converts `value` to a string key if it's not a string or symbol.
		 *
		 * @private
		 * @param {*} value The value to inspect.
		 * @returns {string|symbol} Returns the key.
		 */
		function toKey(value) {
		  if (typeof value == 'string' || isSymbol(value)) {
		    return value;
		  }
		  var result = (value + '');
		  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
		}

		module.exports = toKey;


	/***/ }),
	/* 174 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseHasIn = __webpack_require__(175),
		    hasPath = __webpack_require__(176);

		/**
		 * Checks if `path` is a direct or inherited property of `object`.
		 *
		 * @static
		 * @memberOf _
		 * @since 4.0.0
		 * @category Object
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path to check.
		 * @returns {boolean} Returns `true` if `path` exists, else `false`.
		 * @example
		 *
		 * var object = _.create({ 'a': _.create({ 'b': 2 }) });
		 *
		 * _.hasIn(object, 'a');
		 * // => true
		 *
		 * _.hasIn(object, 'a.b');
		 * // => true
		 *
		 * _.hasIn(object, ['a', 'b']);
		 * // => true
		 *
		 * _.hasIn(object, 'b');
		 * // => false
		 */
		function hasIn(object, path) {
		  return object != null && hasPath(object, path, baseHasIn);
		}

		module.exports = hasIn;


	/***/ }),
	/* 175 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.hasIn` without support for deep paths.
		 *
		 * @private
		 * @param {Object} [object] The object to query.
		 * @param {Array|string} key The key to check.
		 * @returns {boolean} Returns `true` if `key` exists, else `false`.
		 */
		function baseHasIn(object, key) {
		  return object != null && key in Object(object);
		}

		module.exports = baseHasIn;


	/***/ }),
	/* 176 */
	/***/ (function(module, exports, __webpack_require__) {

		var castPath = __webpack_require__(164),
		    isArguments = __webpack_require__(71),
		    isArray = __webpack_require__(74),
		    isIndex = __webpack_require__(66),
		    isLength = __webpack_require__(65),
		    toKey = __webpack_require__(173);

		/**
		 * Checks if `path` exists on `object`.
		 *
		 * @private
		 * @param {Object} object The object to query.
		 * @param {Array|string} path The path to check.
		 * @param {Function} hasFunc The function to check properties.
		 * @returns {boolean} Returns `true` if `path` exists, else `false`.
		 */
		function hasPath(object, path, hasFunc) {
		  path = castPath(path, object);

		  var index = -1,
		      length = path.length,
		      result = false;

		  while (++index < length) {
		    var key = toKey(path[index]);
		    if (!(result = object != null && hasFunc(object, key))) {
		      break;
		    }
		    object = object[key];
		  }
		  if (result || ++index != length) {
		    return result;
		  }
		  length = object == null ? 0 : object.length;
		  return !!length && isLength(length) && isIndex(key, length) &&
		    (isArray(object) || isArguments(object));
		}

		module.exports = hasPath;


	/***/ }),
	/* 177 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseProperty = __webpack_require__(178),
		    basePropertyDeep = __webpack_require__(179),
		    isKey = __webpack_require__(165),
		    toKey = __webpack_require__(173);

		/**
		 * Creates a function that returns the value at `path` of a given object.
		 *
		 * @static
		 * @memberOf _
		 * @since 2.4.0
		 * @category Util
		 * @param {Array|string} path The path of the property to get.
		 * @returns {Function} Returns the new accessor function.
		 * @example
		 *
		 * var objects = [
		 *   { 'a': { 'b': 2 } },
		 *   { 'a': { 'b': 1 } }
		 * ];
		 *
		 * _.map(objects, _.property('a.b'));
		 * // => [2, 1]
		 *
		 * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
		 * // => [1, 2]
		 */
		function property(path) {
		  return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
		}

		module.exports = property;


	/***/ }),
	/* 178 */
	/***/ (function(module, exports) {

		/**
		 * The base implementation of `_.property` without support for deep paths.
		 *
		 * @private
		 * @param {string} key The key of the property to get.
		 * @returns {Function} Returns the new accessor function.
		 */
		function baseProperty(key) {
		  return function(object) {
		    return object == null ? undefined : object[key];
		  };
		}

		module.exports = baseProperty;


	/***/ }),
	/* 179 */
	/***/ (function(module, exports, __webpack_require__) {

		var baseGet = __webpack_require__(163);

		/**
		 * A specialized version of `baseProperty` which supports deep paths.
		 *
		 * @private
		 * @param {Array|string} path The path of the property to get.
		 * @returns {Function} Returns the new accessor function.
		 */
		function basePropertyDeep(path) {
		  return function(object) {
		    return baseGet(object, path);
		  };
		}

		module.exports = basePropertyDeep;


	/***/ }),
	/* 180 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLAttribute, create;

		  create = __webpack_require__(88);

		  module.exports = XMLAttribute = (function() {
		    function XMLAttribute(parent, name, value) {
		      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 create(XMLAttribute.prototype, this);
		    };

		    XMLAttribute.prototype.toString = function(options, level) {
		      return ' ' + this.name + '="' + this.value + '"';
		    };

		    return XMLAttribute;

		  })();

		}).call(this);


	/***/ }),
	/* 181 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLProcessingInstruction, create;

		  create = __webpack_require__(88);

		  module.exports = XMLProcessingInstruction = (function() {
		    function XMLProcessingInstruction(parent, target, value) {
		      this.stringify = parent.stringify;
		      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 create(XMLProcessingInstruction.prototype, this);
		    };

		    XMLProcessingInstruction.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<?';
		      r += this.target;
		      if (this.value) {
		        r += ' ' + this.value;
		      }
		      r += '?>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLProcessingInstruction;

		  })();

		}).call(this);


	/***/ }),
	/* 182 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLCData, XMLNode, create,
		    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;

		  create = __webpack_require__(88);

		  XMLNode = __webpack_require__(91);

		  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 create(XMLCData.prototype, this);
		    };

		    XMLCData.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<![CDATA[' + this.text + ']]>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLCData;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 183 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLComment, XMLNode, create,
		    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;

		  create = __webpack_require__(88);

		  XMLNode = __webpack_require__(91);

		  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 create(XMLComment.prototype, this);
		    };

		    XMLComment.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!-- ' + this.text + ' -->';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLComment;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 184 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLProcessingInstruction, create, isObject;

		  create = __webpack_require__(88);

		  isObject = __webpack_require__(47);

		  XMLCData = __webpack_require__(182);

		  XMLComment = __webpack_require__(183);

		  XMLDTDAttList = __webpack_require__(185);

		  XMLDTDEntity = __webpack_require__(186);

		  XMLDTDElement = __webpack_require__(187);

		  XMLDTDNotation = __webpack_require__(188);

		  XMLProcessingInstruction = __webpack_require__(181);

		  module.exports = XMLDocType = (function() {
		    function XMLDocType(parent, pubID, sysID) {
		      var ref, ref1;
		      this.documentObject = parent;
		      this.stringify = this.documentObject.stringify;
		      this.children = [];
		      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.cdata = function(value) {
		      var child;
		      child = new XMLCData(this, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLDocType.prototype.comment = function(value) {
		      var child;
		      child = new XMLComment(this, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLDocType.prototype.instruction = function(target, value) {
		      var child;
		      child = new XMLProcessingInstruction(this, target, value);
		      this.children.push(child);
		      return this;
		    };

		    XMLDocType.prototype.root = function() {
		      return this.documentObject.root();
		    };

		    XMLDocType.prototype.document = function() {
		      return this.documentObject;
		    };

		    XMLDocType.prototype.toString = function(options, level) {
		      var child, i, indent, len, newline, offset, pretty, r, ref, ref1, ref2, ref3, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!DOCTYPE ' + this.root().name;
		      if (this.pubID && this.sysID) {
		        r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
		      } else if (this.sysID) {
		        r += ' SYSTEM "' + this.sysID + '"';
		      }
		      if (this.children.length > 0) {
		        r += ' [';
		        if (pretty) {
		          r += newline;
		        }
		        ref3 = this.children;
		        for (i = 0, len = ref3.length; i < len; i++) {
		          child = ref3[i];
		          r += child.toString(options, level + 1);
		        }
		        r += ']';
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    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.dat = function(value) {
		      return this.cdata(value);
		    };

		    XMLDocType.prototype.com = function(value) {
		      return this.comment(value);
		    };

		    XMLDocType.prototype.ins = function(target, value) {
		      return this.instruction(target, value);
		    };

		    XMLDocType.prototype.up = function() {
		      return this.root();
		    };

		    XMLDocType.prototype.doc = function() {
		      return this.document();
		    };

		    return XMLDocType;

		  })();

		}).call(this);


	/***/ }),
	/* 185 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDAttList, create;

		  create = __webpack_require__(88);

		  module.exports = XMLDTDAttList = (function() {
		    function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!ATTLIST ' + this.elementName + ' ' + this.attributeName + ' ' + this.attributeType;
		      if (this.defaultValueType !== '#DEFAULT') {
		        r += ' ' + this.defaultValueType;
		      }
		      if (this.defaultValue) {
		        r += ' "' + this.defaultValue + '"';
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDAttList;

		  })();

		}).call(this);


	/***/ }),
	/* 186 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDEntity, create, isObject;

		  create = __webpack_require__(88);

		  isObject = __webpack_require__(47);

		  module.exports = XMLDTDEntity = (function() {
		    function XMLDTDEntity(parent, pe, name, value) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!ENTITY';
		      if (this.pe) {
		        r += ' %';
		      }
		      r += ' ' + this.name;
		      if (this.value) {
		        r += ' "' + this.value + '"';
		      } else {
		        if (this.pubID && this.sysID) {
		          r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
		        } else if (this.sysID) {
		          r += ' SYSTEM "' + this.sysID + '"';
		        }
		        if (this.nData) {
		          r += ' NDATA ' + this.nData;
		        }
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDEntity;

		  })();

		}).call(this);


	/***/ }),
	/* 187 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDElement, create;

		  create = __webpack_require__(88);

		  module.exports = XMLDTDElement = (function() {
		    function XMLDTDElement(parent, name, value) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!ELEMENT ' + this.name + ' ' + this.value + '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDElement;

		  })();

		}).call(this);


	/***/ }),
	/* 188 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLDTDNotation, create;

		  create = __webpack_require__(88);

		  module.exports = XMLDTDNotation = (function() {
		    function XMLDTDNotation(parent, name, value) {
		      this.stringify = parent.stringify;
		      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, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += '<!NOTATION ' + this.name;
		      if (this.pubID && this.sysID) {
		        r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
		      } else if (this.pubID) {
		        r += ' PUBLIC "' + this.pubID + '"';
		      } else if (this.sysID) {
		        r += ' SYSTEM "' + this.sysID + '"';
		      }
		      r += '>';
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLDTDNotation;

		  })();

		}).call(this);


	/***/ }),
	/* 189 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLNode, XMLRaw, create,
		    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;

		  create = __webpack_require__(88);

		  XMLNode = __webpack_require__(91);

		  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 create(XMLRaw.prototype, this);
		    };

		    XMLRaw.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += this.value;
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLRaw;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 190 */
	/***/ (function(module, exports, __webpack_require__) {

		// Generated by CoffeeScript 1.9.1
		(function() {
		  var XMLNode, XMLText, create,
		    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;

		  create = __webpack_require__(88);

		  XMLNode = __webpack_require__(91);

		  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 create(XMLText.prototype, this);
		    };

		    XMLText.prototype.toString = function(options, level) {
		      var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
		      pretty = (options != null ? options.pretty : void 0) || false;
		      indent = (ref = options != null ? options.indent : void 0) != null ? ref : '  ';
		      offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
		      newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
		      level || (level = 0);
		      space = new Array(level + offset + 1).join(indent);
		      r = '';
		      if (pretty) {
		        r += space;
		      }
		      r += this.value;
		      if (pretty) {
		        r += newline;
		      }
		      return r;
		    };

		    return XMLText;

		  })(XMLNode);

		}).call(this);


	/***/ }),
	/* 191 */
	/***/ (function(module, exports) {

		// Generated by CoffeeScript 1.10.0
		(function() {
		  "use strict";
		  exports.stripBOM = function(str) {
		    if (str[0] === '\uFEFF') {
		      return str.substring(1);
		    } else {
		      return str;
		    }
		  };

		}).call(this);


	/***/ }),
	/* 192 */
	/***/ (function(module, exports) {

		// Generated by CoffeeScript 1.10.0
		(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);


	/***/ })
	/******/ ]);
	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(6).Buffer, __webpack_require__(37).setImmediate, __webpack_require__(37).clearImmediate))

/***/ }),
/* 37 */
/***/ (function(module, exports, __webpack_require__) {

	var apply = Function.prototype.apply;

	// DOM APIs, for completeness

	exports.setTimeout = function() {
	  return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);
	};
	exports.setInterval = function() {
	  return new Timeout(apply.call(setInterval, window, arguments), clearInterval);
	};
	exports.clearTimeout =
	exports.clearInterval = function(timeout) {
	  if (timeout) {
	    timeout.close();
	  }
	};

	function Timeout(id, clearFn) {
	  this._id = id;
	  this._clearFn = clearFn;
	}
	Timeout.prototype.unref = Timeout.prototype.ref = function() {};
	Timeout.prototype.close = function() {
	  this._clearFn.call(window, this._id);
	};

	// Does not start the time, just sets up the members needed.
	exports.enroll = function(item, msecs) {
	  clearTimeout(item._idleTimeoutId);
	  item._idleTimeout = msecs;
	};

	exports.unenroll = function(item) {
	  clearTimeout(item._idleTimeoutId);
	  item._idleTimeout = -1;
	};

	exports._unrefActive = exports.active = function(item) {
	  clearTimeout(item._idleTimeoutId);

	  var msecs = item._idleTimeout;
	  if (msecs >= 0) {
	    item._idleTimeoutId = setTimeout(function onTimeout() {
	      if (item._onTimeout)
	        item._onTimeout();
	    }, msecs);
	  }
	};

	// setimmediate attaches itself to the global object
	__webpack_require__(38);
	exports.setImmediate = setImmediate;
	exports.clearImmediate = clearImmediate;


/***/ }),
/* 38 */
/***/ (function(module, exports, __webpack_require__) {

	/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) {
	    "use strict";

	    if (global.setImmediate) {
	        return;
	    }

	    var nextHandle = 1; // Spec says greater than zero
	    var tasksByHandle = {};
	    var currentlyRunningATask = false;
	    var doc = global.document;
	    var registerImmediate;

	    function setImmediate(callback) {
	      // Callback can either be a function or a string
	      if (typeof callback !== "function") {
	        callback = new Function("" + callback);
	      }
	      // Copy function arguments
	      var args = new Array(arguments.length - 1);
	      for (var i = 0; i < args.length; i++) {
	          args[i] = arguments[i + 1];
	      }
	      // Store and register the task
	      var task = { callback: callback, args: args };
	      tasksByHandle[nextHandle] = task;
	      registerImmediate(nextHandle);
	      return nextHandle++;
	    }

	    function clearImmediate(handle) {
	        delete tasksByHandle[handle];
	    }

	    function run(task) {
	        var callback = task.callback;
	        var args = task.args;
	        switch (args.length) {
	        case 0:
	            callback();
	            break;
	        case 1:
	            callback(args[0]);
	            break;
	        case 2:
	            callback(args[0], args[1]);
	            break;
	        case 3:
	            callback(args[0], args[1], args[2]);
	            break;
	        default:
	            callback.apply(undefined, args);
	            break;
	        }
	    }

	    function runIfPresent(handle) {
	        // From the spec: "Wait until any invocations of this algorithm started before this one have completed."
	        // So if we're currently running a task, we'll need to delay this invocation.
	        if (currentlyRunningATask) {
	            // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a
	            // "too much recursion" error.
	            setTimeout(runIfPresent, 0, handle);
	        } else {
	            var task = tasksByHandle[handle];
	            if (task) {
	                currentlyRunningATask = true;
	                try {
	                    run(task);
	                } finally {
	                    clearImmediate(handle);
	                    currentlyRunningATask = false;
	                }
	            }
	        }
	    }

	    function installNextTickImplementation() {
	        registerImmediate = function(handle) {
	            process.nextTick(function () { runIfPresent(handle); });
	        };
	    }

	    function canUsePostMessage() {
	        // The test against `importScripts` prevents this implementation from being installed inside a web worker,
	        // where `global.postMessage` means something completely different and can't be used for this purpose.
	        if (global.postMessage && !global.importScripts) {
	            var postMessageIsAsynchronous = true;
	            var oldOnMessage = global.onmessage;
	            global.onmessage = function() {
	                postMessageIsAsynchronous = false;
	            };
	            global.postMessage("", "*");
	            global.onmessage = oldOnMessage;
	            return postMessageIsAsynchronous;
	        }
	    }

	    function installPostMessageImplementation() {
	        // Installs an event handler on `global` for the `message` event: see
	        // * https://developer.mozilla.org/en/DOM/window.postMessage
	        // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages

	        var messagePrefix = "setImmediate$" + Math.random() + "$";
	        var onGlobalMessage = function(event) {
	            if (event.source === global &&
	                typeof event.data === "string" &&
	                event.data.indexOf(messagePrefix) === 0) {
	                runIfPresent(+event.data.slice(messagePrefix.length));
	            }
	        };

	        if (global.addEventListener) {
	            global.addEventListener("message", onGlobalMessage, false);
	        } else {
	            global.attachEvent("onmessage", onGlobalMessage);
	        }

	        registerImmediate = function(handle) {
	            global.postMessage(messagePrefix + handle, "*");
	        };
	    }

	    function installMessageChannelImplementation() {
	        var channel = new MessageChannel();
	        channel.port1.onmessage = function(event) {
	            var handle = event.data;
	            runIfPresent(handle);
	        };

	        registerImmediate = function(handle) {
	            channel.port2.postMessage(handle);
	        };
	    }

	    function installReadyStateChangeImplementation() {
	        var html = doc.documentElement;
	        registerImmediate = function(handle) {
	            // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted
	            // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.
	            var script = doc.createElement("script");
	            script.onreadystatechange = function () {
	                runIfPresent(handle);
	                script.onreadystatechange = null;
	                html.removeChild(script);
	                script = null;
	            };
	            html.appendChild(script);
	        };
	    }

	    function installSetTimeoutImplementation() {
	        registerImmediate = function(handle) {
	            setTimeout(runIfPresent, 0, handle);
	        };
	    }

	    // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.
	    var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);
	    attachTo = attachTo && attachTo.setTimeout ? attachTo : global;

	    // Don't get fooled by e.g. browserify environments.
	    if ({}.toString.call(global.process) === "[object process]") {
	        // For Node.js before 0.9
	        installNextTickImplementation();

	    } else if (canUsePostMessage()) {
	        // For non-IE10 modern browsers
	        installPostMessageImplementation();

	    } else if (global.MessageChannel) {
	        // For web workers, where supported
	        installMessageChannelImplementation();

	    } else if (doc && "onreadystatechange" in doc.createElement("script")) {
	        // For IE 6–8
	        installReadyStateChangeImplementation();

	    } else {
	        // For older browsers
	        installSetTimeoutImplementation();
	    }

	    attachTo.setImmediate = setImmediate;
	    attachTo.clearImmediate = clearImmediate;
	}(typeof self === "undefined" ? typeof global === "undefined" ? this : global : self));

	/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(3)))

/***/ }),
/* 39 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var EventEmitter = __webpack_require__(40).EventEmitter;
	__webpack_require__(41);

	/**
	 * @api private
	 */
	AWS.XHRClient = AWS.util.inherit({
	  handleRequest: function handleRequest(httpRequest, httpOptions, callback, errCallback) {
	    var self = this;
	    var endpoint = httpRequest.endpoint;
	    var emitter = new EventEmitter();
	    var href = endpoint.protocol + '//' + endpoint.hostname;
	    if (endpoint.port !== 80 && endpoint.port !== 443) {
	      href += ':' + endpoint.port;
	    }
	    href += httpRequest.path;

	    var xhr = new XMLHttpRequest(), headersEmitted = false;
	    httpRequest.stream = xhr;

	    xhr.addEventListener('readystatechange', function() {
	      try {
	        if (xhr.status === 0) return; // 0 code is invalid
	      } catch (e) { return; }

	      if (this.readyState >= this.HEADERS_RECEIVED && !headersEmitted) {
	        emitter.statusCode = xhr.status;
	        emitter.headers = self.parseHeaders(xhr.getAllResponseHeaders());
	        emitter.emit(
	          'headers',
	          emitter.statusCode,
	          emitter.headers,
	          xhr.statusText
	        );
	        headersEmitted = true;
	      }
	      if (this.readyState === this.DONE) {
	        self.finishRequest(xhr, emitter);
	      }
	    }, false);
	    xhr.upload.addEventListener('progress', function (evt) {
	      emitter.emit('sendProgress', evt);
	    });
	    xhr.addEventListener('progress', function (evt) {
	      emitter.emit('receiveProgress', evt);
	    }, false);
	    xhr.addEventListener('timeout', function () {
	      errCallback(AWS.util.error(new Error('Timeout'), {code: 'TimeoutError'}));
	    }, false);
	    xhr.addEventListener('error', function () {
	      errCallback(AWS.util.error(new Error('Network Failure'), {
	        code: 'NetworkingError'
	      }));
	    }, false);
	    xhr.addEventListener('abort', function () {
	      errCallback(AWS.util.error(new Error('Request aborted'), {
	        code: 'RequestAbortedError'
	      }));
	    }, false);

	    callback(emitter);
	    xhr.open(httpRequest.method, href, httpOptions.xhrAsync !== false);
	    AWS.util.each(httpRequest.headers, function (key, value) {
	      if (key !== 'Content-Length' && key !== 'User-Agent' && key !== 'Host') {
	        xhr.setRequestHeader(key, value);
	      }
	    });

	    if (httpOptions.timeout && httpOptions.xhrAsync !== false) {
	      xhr.timeout = httpOptions.timeout;
	    }

	    if (httpOptions.xhrWithCredentials) {
	      xhr.withCredentials = true;
	    }
	    try { xhr.responseType = 'arraybuffer'; } catch (e) {}

	    try {
	      if (httpRequest.body) {
	        xhr.send(httpRequest.body);
	      } else {
	        xhr.send();
	      }
	    } catch (err) {
	      if (httpRequest.body && typeof httpRequest.body.buffer === 'object') {
	        xhr.send(httpRequest.body.buffer); // send ArrayBuffer directly
	      } else {
	        throw err;
	      }
	    }

	    return emitter;
	  },

	  parseHeaders: function parseHeaders(rawHeaders) {
	    var headers = {};
	    AWS.util.arrayEach(rawHeaders.split(/\r?\n/), function (line) {
	      var key = line.split(':', 1)[0];
	      var value = line.substring(key.length + 2);
	      if (key.length > 0) headers[key.toLowerCase()] = value;
	    });
	    return headers;
	  },

	  finishRequest: function finishRequest(xhr, emitter) {
	    var buffer;
	    if (xhr.responseType === 'arraybuffer' && xhr.response) {
	      var ab = xhr.response;
	      buffer = new AWS.util.Buffer(ab.byteLength);
	      var view = new Uint8Array(ab);
	      for (var i = 0; i < buffer.length; ++i) {
	        buffer[i] = view[i];
	      }
	    }

	    try {
	      if (!buffer && typeof xhr.responseText === 'string') {
	        buffer = new AWS.util.Buffer(xhr.responseText);
	      }
	    } catch (e) {}

	    if (buffer) emitter.emit('data', buffer);
	    emitter.emit('end');
	  }
	});

	/**
	 * @api private
	 */
	AWS.HttpClient.prototype = AWS.XHRClient.prototype;

	/**
	 * @api private
	 */
	AWS.HttpClient.streamsApiVersion = 1;


/***/ }),
/* 40 */
/***/ (function(module, exports) {

	// 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.

	function EventEmitter() {
	  this._events = this._events || {};
	  this._maxListeners = this._maxListeners || undefined;
	}
	module.exports = EventEmitter;

	// Backwards-compat with node 0.10.x
	EventEmitter.EventEmitter = EventEmitter;

	EventEmitter.prototype._events = undefined;
	EventEmitter.prototype._maxListeners = undefined;

	// By default EventEmitters will print a warning if more than 10 listeners are
	// added to it. This is a useful default which helps finding memory leaks.
	EventEmitter.defaultMaxListeners = 10;

	// Obviously not all Emitters should be limited to 10. This function allows
	// that to be increased. Set to zero for unlimited.
	EventEmitter.prototype.setMaxListeners = function(n) {
	  if (!isNumber(n) || n < 0 || isNaN(n))
	    throw TypeError('n must be a positive number');
	  this._maxListeners = n;
	  return this;
	};

	EventEmitter.prototype.emit = function(type) {
	  var er, handler, len, args, i, listeners;

	  if (!this._events)
	    this._events = {};

	  // If there is no 'error' event listener then throw.
	  if (type === 'error') {
	    if (!this._events.error ||
	        (isObject(this._events.error) && !this._events.error.length)) {
	      er = arguments[1];
	      if (er instanceof Error) {
	        throw er; // Unhandled 'error' event
	      } else {
	        // At least give some kind of context to the user
	        var err = new Error('Uncaught, unspecified "error" event. (' + er + ')');
	        err.context = er;
	        throw err;
	      }
	    }
	  }

	  handler = this._events[type];

	  if (isUndefined(handler))
	    return false;

	  if (isFunction(handler)) {
	    switch (arguments.length) {
	      // fast cases
	      case 1:
	        handler.call(this);
	        break;
	      case 2:
	        handler.call(this, arguments[1]);
	        break;
	      case 3:
	        handler.call(this, arguments[1], arguments[2]);
	        break;
	      // slower
	      default:
	        args = Array.prototype.slice.call(arguments, 1);
	        handler.apply(this, args);
	    }
	  } else if (isObject(handler)) {
	    args = Array.prototype.slice.call(arguments, 1);
	    listeners = handler.slice();
	    len = listeners.length;
	    for (i = 0; i < len; i++)
	      listeners[i].apply(this, args);
	  }

	  return true;
	};

	EventEmitter.prototype.addListener = function(type, listener) {
	  var m;

	  if (!isFunction(listener))
	    throw TypeError('listener must be a function');

	  if (!this._events)
	    this._events = {};

	  // To avoid recursion in the case that type === "newListener"! Before
	  // adding it to the listeners, first emit "newListener".
	  if (this._events.newListener)
	    this.emit('newListener', type,
	              isFunction(listener.listener) ?
	              listener.listener : listener);

	  if (!this._events[type])
	    // Optimize the case of one listener. Don't need the extra array object.
	    this._events[type] = listener;
	  else if (isObject(this._events[type]))
	    // If we've already got an array, just append.
	    this._events[type].push(listener);
	  else
	    // Adding the second element, need to change to array.
	    this._events[type] = [this._events[type], listener];

	  // Check for listener leak
	  if (isObject(this._events[type]) && !this._events[type].warned) {
	    if (!isUndefined(this._maxListeners)) {
	      m = this._maxListeners;
	    } else {
	      m = EventEmitter.defaultMaxListeners;
	    }

	    if (m && m > 0 && this._events[type].length > m) {
	      this._events[type].warned = true;
	      console.error('(node) warning: possible EventEmitter memory ' +
	                    'leak detected. %d listeners added. ' +
	                    'Use emitter.setMaxListeners() to increase limit.',
	                    this._events[type].length);
	      if (typeof console.trace === 'function') {
	        // not supported in IE 10
	        console.trace();
	      }
	    }
	  }

	  return this;
	};

	EventEmitter.prototype.on = EventEmitter.prototype.addListener;

	EventEmitter.prototype.once = function(type, listener) {
	  if (!isFunction(listener))
	    throw TypeError('listener must be a function');

	  var fired = false;

	  function g() {
	    this.removeListener(type, g);

	    if (!fired) {
	      fired = true;
	      listener.apply(this, arguments);
	    }
	  }

	  g.listener = listener;
	  this.on(type, g);

	  return this;
	};

	// emits a 'removeListener' event iff the listener was removed
	EventEmitter.prototype.removeListener = function(type, listener) {
	  var list, position, length, i;

	  if (!isFunction(listener))
	    throw TypeError('listener must be a function');

	  if (!this._events || !this._events[type])
	    return this;

	  list = this._events[type];
	  length = list.length;
	  position = -1;

	  if (list === listener ||
	      (isFunction(list.listener) && list.listener === listener)) {
	    delete this._events[type];
	    if (this._events.removeListener)
	      this.emit('removeListener', type, listener);

	  } else if (isObject(list)) {
	    for (i = length; i-- > 0;) {
	      if (list[i] === listener ||
	          (list[i].listener && list[i].listener === listener)) {
	        position = i;
	        break;
	      }
	    }

	    if (position < 0)
	      return this;

	    if (list.length === 1) {
	      list.length = 0;
	      delete this._events[type];
	    } else {
	      list.splice(position, 1);
	    }

	    if (this._events.removeListener)
	      this.emit('removeListener', type, listener);
	  }

	  return this;
	};

	EventEmitter.prototype.removeAllListeners = function(type) {
	  var key, listeners;

	  if (!this._events)
	    return this;

	  // not listening for removeListener, no need to emit
	  if (!this._events.removeListener) {
	    if (arguments.length === 0)
	      this._events = {};
	    else if (this._events[type])
	      delete this._events[type];
	    return this;
	  }

	  // emit removeListener for all listeners on all events
	  if (arguments.length === 0) {
	    for (key in this._events) {
	      if (key === 'removeListener') continue;
	      this.removeAllListeners(key);
	    }
	    this.removeAllListeners('removeListener');
	    this._events = {};
	    return this;
	  }

	  listeners = this._events[type];

	  if (isFunction(listeners)) {
	    this.removeListener(type, listeners);
	  } else if (listeners) {
	    // LIFO order
	    while (listeners.length)
	      this.removeListener(type, listeners[listeners.length - 1]);
	  }
	  delete this._events[type];

	  return this;
	};

	EventEmitter.prototype.listeners = function(type) {
	  var ret;
	  if (!this._events || !this._events[type])
	    ret = [];
	  else if (isFunction(this._events[type]))
	    ret = [this._events[type]];
	  else
	    ret = this._events[type].slice();
	  return ret;
	};

	EventEmitter.prototype.listenerCount = function(type) {
	  if (this._events) {
	    var evlistener = this._events[type];

	    if (isFunction(evlistener))
	      return 1;
	    else if (evlistener)
	      return evlistener.length;
	  }
	  return 0;
	};

	EventEmitter.listenerCount = function(emitter, type) {
	  return emitter.listenerCount(type);
	};

	function isFunction(arg) {
	  return typeof arg === 'function';
	}

	function isNumber(arg) {
	  return typeof arg === 'number';
	}

	function isObject(arg) {
	  return typeof arg === 'object' && arg !== null;
	}

	function isUndefined(arg) {
	  return arg === void 0;
	}


/***/ }),
/* 41 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	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 '';
	  }

	});

	/**
	 * 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;
	};


/***/ }),
/* 42 */
/***/ (function(module, exports) {

	function addContentType(req) {
	  var httpRequest = req.httpRequest || {};
	  var headers = httpRequest.headers;
	  // We don't want to force a content type on presigned urls
	  if (headers && !req.isPresigned()) {
	    if (httpRequest.body && !headers['Content-Type']) {
	      // React Native's android XHR requires Content-Type to be defined if there is a body
	      headers['Content-Type'] = '';
	    }
	  }
	}

	module.exports = {
	    addContentType: addContentType
	};

/***/ }),
/* 43 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	module.exports = {
	  ACM: __webpack_require__(44),
	  APIGateway: __webpack_require__(47),
	  ApplicationAutoScaling: __webpack_require__(51),
	  AppStream: __webpack_require__(54),
	  AutoScaling: __webpack_require__(58),
	  Batch: __webpack_require__(61),
	  Budgets: __webpack_require__(64),
	  CloudDirectory: __webpack_require__(67),
	  CloudFormation: __webpack_require__(70),
	  CloudFront: __webpack_require__(74),
	  CloudHSM: __webpack_require__(83),
	  CloudSearch: __webpack_require__(85),
	  CloudSearchDomain: __webpack_require__(90),
	  CloudTrail: __webpack_require__(93),
	  CloudWatch: __webpack_require__(96),
	  CloudWatchEvents: __webpack_require__(100),
	  CloudWatchLogs: __webpack_require__(103),
	  CodeBuild: __webpack_require__(106),
	  CodeCommit: __webpack_require__(109),
	  CodeDeploy: __webpack_require__(112),
	  CodePipeline: __webpack_require__(116),
	  CognitoIdentity: __webpack_require__(30),
	  CognitoIdentityServiceProvider: __webpack_require__(119),
	  CognitoSync: __webpack_require__(122),
	  ConfigService: __webpack_require__(124),
	  CUR: __webpack_require__(127),
	  DataPipeline: __webpack_require__(130),
	  DeviceFarm: __webpack_require__(133),
	  DirectConnect: __webpack_require__(136),
	  DirectoryService: __webpack_require__(139),
	  Discovery: __webpack_require__(142),
	  DMS: __webpack_require__(145),
	  DynamoDB: __webpack_require__(148),
	  DynamoDBStreams: __webpack_require__(161),
	  EC2: __webpack_require__(164),
	  ECR: __webpack_require__(169),
	  ECS: __webpack_require__(172),
	  EFS: __webpack_require__(176),
	  ElastiCache: __webpack_require__(178),
	  ElasticBeanstalk: __webpack_require__(182),
	  ELB: __webpack_require__(185),
	  ELBv2: __webpack_require__(189),
	  EMR: __webpack_require__(193),
	  ES: __webpack_require__(197),
	  ElasticTranscoder: __webpack_require__(200),
	  Firehose: __webpack_require__(204),
	  GameLift: __webpack_require__(206),
	  Glacier: __webpack_require__(209),
	  Health: __webpack_require__(214),
	  IAM: __webpack_require__(217),
	  ImportExport: __webpack_require__(221),
	  Inspector: __webpack_require__(224),
	  Iot: __webpack_require__(227),
	  IotData: __webpack_require__(230),
	  Kinesis: __webpack_require__(233),
	  KinesisAnalytics: __webpack_require__(237),
	  KMS: __webpack_require__(240),
	  Lambda: __webpack_require__(243),
	  LexRuntime: __webpack_require__(249),
	  Lightsail: __webpack_require__(252),
	  MachineLearning: __webpack_require__(255),
	  MarketplaceCommerceAnalytics: __webpack_require__(260),
	  MarketplaceMetering: __webpack_require__(263),
	  MTurk: __webpack_require__(265),
	  MobileAnalytics: __webpack_require__(268),
	  OpsWorks: __webpack_require__(270),
	  OpsWorksCM: __webpack_require__(274),
	  Organizations: __webpack_require__(277),
	  Pinpoint: __webpack_require__(280),
	  Polly: __webpack_require__(282),
	  RDS: __webpack_require__(287),
	  Redshift: __webpack_require__(302),
	  Rekognition: __webpack_require__(306),
	  ResourceGroupsTaggingAPI: __webpack_require__(309),
	  Route53: __webpack_require__(312),
	  Route53Domains: __webpack_require__(317),
	  S3: __webpack_require__(320),
	  ServiceCatalog: __webpack_require__(327),
	  SES: __webpack_require__(330),
	  Shield: __webpack_require__(334),
	  SimpleDB: __webpack_require__(336),
	  SMS: __webpack_require__(339),
	  Snowball: __webpack_require__(342),
	  SNS: __webpack_require__(345),
	  SQS: __webpack_require__(348),
	  SSM: __webpack_require__(352),
	  StorageGateway: __webpack_require__(355),
	  StepFunctions: __webpack_require__(358),
	  STS: __webpack_require__(24),
	  Support: __webpack_require__(361),
	  SWF: __webpack_require__(364),
	  XRay: __webpack_require__(368),
	  WAF: __webpack_require__(371),
	  WAFRegional: __webpack_require__(374),
	  WorkDocs: __webpack_require__(377),
	  WorkSpaces: __webpack_require__(380),
	  CodeStar: __webpack_require__(383),
	  LexModelBuildingService: __webpack_require__(386),
	  MarketplaceEntitlementService: __webpack_require__(389),
	  Athena: __webpack_require__(392),
	  Greengrass: __webpack_require__(395),
	  DAX: __webpack_require__(397)
	};

/***/ }),
/* 44 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(45);
	    model.paginators = __webpack_require__(46).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ACM;


/***/ }),
/* 45 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-12-08","endpointPrefix":"acm","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"ACM","serviceFullName":"AWS Certificate Manager","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"],"members":{"RenewalStatus":{},"DomainValidationOptions":{"shape":"Sd"}}}}}}}},"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"}}},"output":{"type":"structure","members":{"CertificateArn":{}}}},"ListCertificates":{"input":{"type":"structure","members":{"CertificateStatuses":{"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"}}}},"RemoveTagsFromCertificate":{"input":{"type":"structure","required":["CertificateArn","Tags"],"members":{"CertificateArn":{},"Tags":{"shape":"S3"}}}},"RequestCertificate":{"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{},"SubjectAlternativeNames":{"shape":"Sc"},"IdempotencyToken":{},"DomainValidationOptions":{"type":"list","member":{"type":"structure","required":["DomainName","ValidationDomain"],"members":{"DomainName":{},"ValidationDomain":{}}}}}},"output":{"type":"structure","members":{"CertificateArn":{}}}},"ResendValidationEmail":{"input":{"type":"structure","required":["CertificateArn","Domain","ValidationDomain"],"members":{"CertificateArn":{},"Domain":{},"ValidationDomain":{}}}}},"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":{}}}}}}

/***/ }),
/* 46 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListCertificates":{"input_token":"NextToken","limit_key":"MaxItems","output_token":"NextToken","result_key":"CertificateSummaryList"}}}

/***/ }),
/* 47 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['apigateway'] = {};
	AWS.APIGateway = Service.defineService('apigateway', ['2015-07-09']);
	__webpack_require__(48);
	Object.defineProperty(apiLoader.services['apigateway'], '2015-07-09', {
	  get: function get() {
	    var model = __webpack_require__(49);
	    model.paginators = __webpack_require__(50).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.APIGateway;


/***/ }),
/* 48 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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);
	      }
	    }
	  }
	});



/***/ }),
/* 49 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-07-09","endpointPrefix":"apigateway","protocol":"rest-json","serviceFullName":"Amazon 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":{}}},"output":{"shape":"S6"}},"CreateAuthorizer":{"http":{"requestUri":"/restapis/{restapi_id}/authorizers","responseCode":201},"input":{"type":"structure","required":["restApiId","name","type","identitySource"],"members":{"restApiId":{"location":"uri","locationName":"restapi_id"},"name":{},"type":{},"providerARNs":{"shape":"Sb"},"authType":{},"authorizerUri":{},"authorizerCredentials":{},"identitySource":{},"identityValidationExpression":{},"authorizerResultTtlInSeconds":{"type":"integer"}}},"output":{"shape":"Se"}},"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":"Sg"}},"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":"Sk"}}},"output":{"shape":"Sl"}},"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":"Sq"},"properties":{}}},"output":{"shape":"St"}},"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":"Sv"}},"CreateDomainName":{"http":{"requestUri":"/domainnames","responseCode":201},"input":{"type":"structure","required":["domainName"],"members":{"domainName":{},"certificateName":{},"certificateBody":{},"certificatePrivateKey":{},"certificateChain":{},"certificateArn":{}}},"output":{"shape":"Sx"}},"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":"Sz"}},"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":"S11"}},"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":"S13"}},"CreateRestApi":{"http":{"requestUri":"/restapis","responseCode":201},"input":{"type":"structure","required":["name"],"members":{"name":{},"description":{},"version":{},"cloneFrom":{},"binaryMediaTypes":{"shape":"S8"}}},"output":{"shape":"S1g"}},"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":"Sk"},"documentationVersion":{}}},"output":{"shape":"S1i"}},"CreateUsagePlan":{"http":{"requestUri":"/usageplans","responseCode":201},"input":{"type":"structure","required":["name"],"members":{"name":{},"description":{},"apiStages":{"shape":"S1q"},"throttle":{"shape":"S1s"},"quota":{"shape":"S1t"}}},"output":{"shape":"S1v"}},"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":"S1x"}},"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"}}}},"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":{}}},"output":{"shape":"S2m"}},"GetAccount":{"http":{"method":"GET","requestUri":"/account"},"input":{"type":"structure","members":{}},"output":{"shape":"S2o"}},"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":"S6"}},"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":"S8"},"position":{},"items":{"locationName":"item","type":"list","member":{"shape":"S6"}}}}},"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":"Se"}},"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":"Se"}}}}},"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":"Sg"}},"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":"Sg"}}}}},"GetClientCertificate":{"http":{"method":"GET","requestUri":"/clientcertificates/{clientcertificate_id}"},"input":{"type":"structure","required":["clientCertificateId"],"members":{"clientCertificateId":{"location":"uri","locationName":"clientcertificate_id"}}},"output":{"shape":"S2m"}},"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":"S2m"}}}}},"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":"S8","location":"querystring","locationName":"embed"}}},"output":{"shape":"Sl"}},"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":"Sl"}}}}},"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":"St"}},"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"}}},"output":{"type":"structure","members":{"position":{},"items":{"locationName":"item","type":"list","member":{"shape":"St"}}}}},"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":"Sv"}},"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":"Sv"}}}}},"GetDomainName":{"http":{"method":"GET","requestUri":"/domainnames/{domain_name}"},"input":{"type":"structure","required":["domainName"],"members":{"domainName":{"location":"uri","locationName":"domain_name"}}},"output":{"shape":"Sx"}},"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":"Sx"}}}}},"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":"Sk","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":"S3p"}},"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":"S3p"}}}}},"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":"S1a"}},"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":"S1e"}},"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":"S15"}},"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":"S18"}},"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":"Sz"}},"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":"Sz"}}}}},"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":"S11"}},"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":"S11"}}}}},"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":"S8","location":"querystring","locationName":"embed"}}},"output":{"shape":"S13"}},"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":"S8","location":"querystring","locationName":"embed"}}},"output":{"type":"structure","members":{"position":{},"items":{"locationName":"item","type":"list","member":{"shape":"S13"}}}}},"GetRestApi":{"http":{"method":"GET","requestUri":"/restapis/{restapi_id}"},"input":{"type":"structure","required":["restApiId"],"members":{"restApiId":{"location":"uri","locationName":"restapi_id"}}},"output":{"shape":"S1g"}},"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":"S1g"}}}}},"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":"Sk","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":"S4i"}},"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":"S4i"}}}}},"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":"S1i"}},"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":"S1i"}}}}},"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":"S4t"}},"GetUsagePlan":{"http":{"method":"GET","requestUri":"/usageplans/{usageplanId}"},"input":{"type":"structure","required":["usagePlanId"],"members":{"usagePlanId":{"location":"uri","locationName":"usageplanId"}}},"output":{"shape":"S1v"}},"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":"S1x"}},"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":"S1x"}}}}},"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":"S1v"}}}}},"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":"S8"},"warnings":{"shape":"S8"}}}},"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":"S8"},"warnings":{"shape":"S8"}}}},"ImportRestApi":{"http":{"requestUri":"/restapis?mode=import","responseCode":201},"input":{"type":"structure","required":["body"],"members":{"failOnWarnings":{"location":"querystring","locationName":"failonwarnings","type":"boolean"},"parameters":{"shape":"Sk","location":"querystring"},"body":{"type":"blob"}},"payload":"body"},"output":{"shape":"S1g"}},"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":"Sk"},"responseTemplates":{"shape":"Sk"}}},"output":{"shape":"S3p"}},"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":{},"credentials":{},"requestParameters":{"shape":"Sk"},"requestTemplates":{"shape":"Sk"},"passthroughBehavior":{},"cacheNamespace":{},"cacheKeyParameters":{"shape":"S8"},"contentHandling":{}}},"output":{"shape":"S1a"}},"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":"Sk"},"responseTemplates":{"shape":"Sk"},"contentHandling":{}}},"output":{"shape":"S1e"}},"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":"S16"},"requestModels":{"shape":"Sk"},"requestValidatorId":{}}},"output":{"shape":"S15"}},"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":"S16"},"responseModels":{"shape":"Sk"}}},"output":{"shape":"S18"}},"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":"Sk","location":"querystring"},"body":{"type":"blob"}},"payload":"body"},"output":{"shape":"S1g"}},"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":"S5k"},"pathWithQueryString":{},"body":{},"stageVariables":{"shape":"Sk"},"additionalContext":{"shape":"Sk"}}},"output":{"type":"structure","members":{"clientStatus":{"type":"integer"},"log":{},"latency":{"type":"long"},"principalId":{},"policy":{},"authorization":{"type":"map","key":{},"value":{"shape":"S8"}},"claims":{"shape":"Sk"}}}},"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":"S5k"},"clientCertificateId":{},"stageVariables":{"shape":"Sk"}}},"output":{"type":"structure","members":{"status":{"type":"integer"},"body":{},"headers":{"shape":"S5k"},"log":{},"latency":{"type":"long"}}}},"UpdateAccount":{"http":{"method":"PATCH","requestUri":"/account"},"input":{"type":"structure","members":{"patchOperations":{"shape":"S5q"}}},"output":{"shape":"S2o"}},"UpdateApiKey":{"http":{"method":"PATCH","requestUri":"/apikeys/{api_Key}"},"input":{"type":"structure","required":["apiKey"],"members":{"apiKey":{"location":"uri","locationName":"api_Key"},"patchOperations":{"shape":"S5q"}}},"output":{"shape":"S6"}},"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":"S5q"}}},"output":{"shape":"Se"}},"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":"S5q"}}},"output":{"shape":"Sg"}},"UpdateClientCertificate":{"http":{"method":"PATCH","requestUri":"/clientcertificates/{clientcertificate_id}"},"input":{"type":"structure","required":["clientCertificateId"],"members":{"clientCertificateId":{"location":"uri","locationName":"clientcertificate_id"},"patchOperations":{"shape":"S5q"}}},"output":{"shape":"S2m"}},"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":"S5q"}}},"output":{"shape":"Sl"}},"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":"S5q"}}},"output":{"shape":"St"}},"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":"S5q"}}},"output":{"shape":"Sv"}},"UpdateDomainName":{"http":{"method":"PATCH","requestUri":"/domainnames/{domain_name}"},"input":{"type":"structure","required":["domainName"],"members":{"domainName":{"location":"uri","locationName":"domain_name"},"patchOperations":{"shape":"S5q"}}},"output":{"shape":"Sx"}},"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":"S5q"}}},"output":{"shape":"S3p"}},"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":"S5q"}}},"output":{"shape":"S1a"}},"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":"S5q"}}},"output":{"shape":"S1e"}},"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":"S5q"}}},"output":{"shape":"S15"}},"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":"S5q"}}},"output":{"shape":"S18"}},"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":"S5q"}}},"output":{"shape":"Sz"}},"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":"S5q"}}},"output":{"shape":"S11"}},"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":"S5q"}}},"output":{"shape":"S13"}},"UpdateRestApi":{"http":{"method":"PATCH","requestUri":"/restapis/{restapi_id}"},"input":{"type":"structure","required":["restApiId"],"members":{"restApiId":{"location":"uri","locationName":"restapi_id"},"patchOperations":{"shape":"S5q"}}},"output":{"shape":"S1g"}},"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":"S5q"}}},"output":{"shape":"S1i"}},"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":"S5q"}}},"output":{"shape":"S4t"}},"UpdateUsagePlan":{"http":{"method":"PATCH","requestUri":"/usageplans/{usageplanId}"},"input":{"type":"structure","required":["usagePlanId"],"members":{"usagePlanId":{"location":"uri","locationName":"usageplanId"},"patchOperations":{"shape":"S5q"}}},"output":{"shape":"S1v"}}},"shapes":{"S6":{"type":"structure","members":{"id":{},"value":{},"name":{},"customerId":{},"description":{},"enabled":{"type":"boolean"},"createdDate":{"type":"timestamp"},"lastUpdatedDate":{"type":"timestamp"},"stageKeys":{"shape":"S8"}}},"S8":{"type":"list","member":{}},"Sb":{"type":"list","member":{}},"Se":{"type":"structure","members":{"id":{},"name":{},"type":{},"providerARNs":{"shape":"Sb"},"authType":{},"authorizerUri":{},"authorizerCredentials":{},"identitySource":{},"identityValidationExpression":{},"authorizerResultTtlInSeconds":{"type":"integer"}}},"Sg":{"type":"structure","members":{"basePath":{},"restApiId":{},"stage":{}}},"Sk":{"type":"map","key":{},"value":{}},"Sl":{"type":"structure","members":{"id":{},"description":{},"createdDate":{"type":"timestamp"},"apiSummary":{"type":"map","key":{},"value":{"type":"map","key":{},"value":{"type":"structure","members":{"authorizationType":{},"apiKeyRequired":{"type":"boolean"}}}}}}},"Sq":{"type":"structure","required":["type"],"members":{"type":{},"path":{},"method":{},"statusCode":{},"name":{}}},"St":{"type":"structure","members":{"id":{},"location":{"shape":"Sq"},"properties":{}}},"Sv":{"type":"structure","members":{"version":{},"createdDate":{"type":"timestamp"},"description":{}}},"Sx":{"type":"structure","members":{"domainName":{},"certificateName":{},"certificateArn":{},"certificateUploadDate":{"type":"timestamp"},"distributionDomainName":{}}},"Sz":{"type":"structure","members":{"id":{},"name":{},"description":{},"schema":{},"contentType":{}}},"S11":{"type":"structure","members":{"id":{},"name":{},"validateRequestBody":{"type":"boolean"},"validateRequestParameters":{"type":"boolean"}}},"S13":{"type":"structure","members":{"id":{},"parentId":{},"pathPart":{},"path":{},"resourceMethods":{"type":"map","key":{},"value":{"shape":"S15"}}}},"S15":{"type":"structure","members":{"httpMethod":{},"authorizationType":{},"authorizerId":{},"apiKeyRequired":{"type":"boolean"},"requestValidatorId":{},"operationName":{},"requestParameters":{"shape":"S16"},"requestModels":{"shape":"Sk"},"methodResponses":{"type":"map","key":{},"value":{"shape":"S18"}},"methodIntegration":{"shape":"S1a"}}},"S16":{"type":"map","key":{},"value":{"type":"boolean"}},"S18":{"type":"structure","members":{"statusCode":{},"responseParameters":{"shape":"S16"},"responseModels":{"shape":"Sk"}}},"S1a":{"type":"structure","members":{"type":{},"httpMethod":{},"uri":{},"credentials":{},"requestParameters":{"shape":"Sk"},"requestTemplates":{"shape":"Sk"},"passthroughBehavior":{},"contentHandling":{},"cacheNamespace":{},"cacheKeyParameters":{"shape":"S8"},"integrationResponses":{"type":"map","key":{},"value":{"shape":"S1e"}}}},"S1e":{"type":"structure","members":{"statusCode":{},"selectionPattern":{},"responseParameters":{"shape":"Sk"},"responseTemplates":{"shape":"Sk"},"contentHandling":{}}},"S1g":{"type":"structure","members":{"id":{},"name":{},"description":{},"createdDate":{"type":"timestamp"},"version":{},"warnings":{"shape":"S8"},"binaryMediaTypes":{"shape":"S8"}}},"S1i":{"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":"Sk"},"documentationVersion":{},"createdDate":{"type":"timestamp"},"lastUpdatedDate":{"type":"timestamp"}}},"S1q":{"type":"list","member":{"type":"structure","members":{"apiId":{},"stage":{}}}},"S1s":{"type":"structure","members":{"burstLimit":{"type":"integer"},"rateLimit":{"type":"double"}}},"S1t":{"type":"structure","members":{"limit":{"type":"integer"},"offset":{"type":"integer"},"period":{}}},"S1v":{"type":"structure","members":{"id":{},"name":{},"description":{},"apiStages":{"shape":"S1q"},"throttle":{"shape":"S1s"},"quota":{"shape":"S1t"},"productCode":{}}},"S1x":{"type":"structure","members":{"id":{},"type":{},"value":{},"name":{}}},"S2m":{"type":"structure","members":{"clientCertificateId":{},"description":{},"pemEncodedCertificate":{},"createdDate":{"type":"timestamp"},"expirationDate":{"type":"timestamp"}}},"S2o":{"type":"structure","members":{"cloudwatchRoleArn":{},"throttleSettings":{"shape":"S1s"},"features":{"shape":"S8"},"apiKeyVersion":{}}},"S3p":{"type":"structure","members":{"responseType":{},"statusCode":{},"responseParameters":{"shape":"Sk"},"responseTemplates":{"shape":"Sk"},"defaultResponse":{"type":"boolean"}}},"S4i":{"type":"structure","members":{"id":{},"friendlyName":{},"description":{},"configurationProperties":{"type":"list","member":{"type":"structure","members":{"name":{},"friendlyName":{},"description":{},"required":{"type":"boolean"},"defaultValue":{}}}}}},"S4t":{"type":"structure","members":{"usagePlanId":{},"startDate":{},"endDate":{},"position":{},"items":{"locationName":"values","type":"map","key":{},"value":{"type":"list","member":{"type":"list","member":{"type":"long"}}}}}},"S5k":{"type":"map","key":{},"value":{}},"S5q":{"type":"list","member":{"type":"structure","members":{"op":{},"path":{},"value":{},"from":{}}}}}}

/***/ }),
/* 50 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 51 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(52);
	    model.paginators = __webpack_require__(53).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ApplicationAutoScaling;


/***/ }),
/* 52 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-02-06","endpointPrefix":"autoscaling","jsonVersion":"1.1","protocol":"json","serviceFullName":"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":{}}},"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":"S9"},"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"}}}},"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":"S9"},"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":"St"},"TargetTrackingScalingPolicyConfiguration":{"shape":"S12"},"Alarms":{"shape":"S1f"},"CreationTime":{"type":"timestamp"}}}},"NextToken":{}}}},"PutScalingPolicy":{"input":{"type":"structure","required":["PolicyName","ServiceNamespace","ResourceId","ScalableDimension"],"members":{"PolicyName":{},"ServiceNamespace":{},"ResourceId":{},"ScalableDimension":{},"PolicyType":{},"StepScalingPolicyConfiguration":{"shape":"St"},"TargetTrackingScalingPolicyConfiguration":{"shape":"S12"}}},"output":{"type":"structure","required":["PolicyARN"],"members":{"PolicyARN":{},"Alarms":{"shape":"S1f"}}}},"RegisterScalableTarget":{"input":{"type":"structure","required":["ServiceNamespace","ResourceId","ScalableDimension"],"members":{"ServiceNamespace":{},"ResourceId":{},"ScalableDimension":{},"MinCapacity":{"type":"integer"},"MaxCapacity":{"type":"integer"},"RoleARN":{}}},"output":{"type":"structure","members":{}}}},"shapes":{"S9":{"type":"list","member":{}},"St":{"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":{}}},"S12":{"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"}}},"S1f":{"type":"list","member":{"type":"structure","required":["AlarmName","AlarmARN"],"members":{"AlarmName":{},"AlarmARN":{}}}}}}

/***/ }),
/* 53 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 54 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(55);
	    model.paginators = __webpack_require__(56).pagination;
	    model.waiters = __webpack_require__(57).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.AppStream;


/***/ }),
/* 55 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-12-01","endpointPrefix":"appstream2","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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":{}}},"CreateDirectoryConfig":{"input":{"type":"structure","required":["DirectoryName","OrganizationalUnitDistinguishedNames","ServiceAccountCredentials"],"members":{"DirectoryName":{},"OrganizationalUnitDistinguishedNames":{"shape":"S6"},"ServiceAccountCredentials":{"shape":"S8"}}},"output":{"type":"structure","members":{"DirectoryConfig":{"shape":"Sc"}}}},"CreateFleet":{"input":{"type":"structure","required":["Name","ImageName","InstanceType","ComputeCapacity"],"members":{"Name":{},"ImageName":{},"InstanceType":{},"ComputeCapacity":{"shape":"Sg"},"VpcConfig":{"shape":"Si"},"MaxUserDurationInSeconds":{"type":"integer"},"DisconnectTimeoutInSeconds":{"type":"integer"},"Description":{},"DisplayName":{},"EnableDefaultInternetAccess":{"type":"boolean"},"DomainJoinInfo":{"shape":"So"}}},"output":{"type":"structure","members":{"Fleet":{"shape":"Sq"}}}},"CreateStack":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"Description":{},"DisplayName":{},"StorageConnectors":{"shape":"Sy"}}},"output":{"type":"structure","members":{"Stack":{"shape":"S13"}}}},"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"}}}},"DeleteDirectoryConfig":{"input":{"type":"structure","required":["DirectoryName"],"members":{"DirectoryName":{}}},"output":{"type":"structure","members":{}}},"DeleteFleet":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{}}},"DeleteStack":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"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":"Sc"}},"NextToken":{}}}},"DescribeFleets":{"input":{"type":"structure","members":{"Names":{"shape":"S1m"},"NextToken":{}}},"output":{"type":"structure","members":{"Fleets":{"type":"list","member":{"shape":"Sq"}},"NextToken":{}}}},"DescribeImages":{"input":{"type":"structure","members":{"Names":{"shape":"S1m"}}},"output":{"type":"structure","members":{"Images":{"type":"list","member":{"type":"structure","required":["Name"],"members":{"Name":{},"Arn":{},"BaseImageArn":{},"DisplayName":{},"State":{},"Visibility":{},"ImageBuilderSupported":{"type":"boolean"},"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"}}}}}}},"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":{},"AuthenticationType":{}}}},"NextToken":{}}}},"DescribeStacks":{"input":{"type":"structure","members":{"Names":{"shape":"S1m"},"NextToken":{}}},"output":{"type":"structure","members":{"Stacks":{"type":"list","member":{"shape":"S13"}},"NextToken":{}}}},"DisassociateFleet":{"input":{"type":"structure","required":["FleetName","StackName"],"members":{"FleetName":{},"StackName":{}}},"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":"S1m"},"NextToken":{}}}},"ListAssociatedStacks":{"input":{"type":"structure","required":["FleetName"],"members":{"FleetName":{},"NextToken":{}}},"output":{"type":"structure","members":{"Names":{"shape":"S1m"},"NextToken":{}}}},"StartFleet":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{}}},"StopFleet":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{}}},"UpdateDirectoryConfig":{"input":{"type":"structure","required":["DirectoryName"],"members":{"DirectoryName":{},"OrganizationalUnitDistinguishedNames":{"shape":"S6"},"ServiceAccountCredentials":{"shape":"S8"}}},"output":{"type":"structure","members":{"DirectoryConfig":{"shape":"Sc"}}}},"UpdateFleet":{"input":{"type":"structure","required":["Name"],"members":{"ImageName":{},"Name":{},"InstanceType":{},"ComputeCapacity":{"shape":"Sg"},"VpcConfig":{"shape":"Si"},"MaxUserDurationInSeconds":{"type":"integer"},"DisconnectTimeoutInSeconds":{"type":"integer"},"DeleteVpcConfig":{"deprecated":true,"type":"boolean"},"Description":{},"DisplayName":{},"EnableDefaultInternetAccess":{"type":"boolean"},"DomainJoinInfo":{"shape":"So"},"AttributesToDelete":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"Fleet":{"shape":"Sq"}}}},"UpdateStack":{"input":{"type":"structure","required":["Name"],"members":{"DisplayName":{},"Description":{},"Name":{},"StorageConnectors":{"shape":"Sy"},"DeleteStorageConnectors":{"type":"boolean"}}},"output":{"type":"structure","members":{"Stack":{"shape":"S13"}}}}},"shapes":{"S6":{"type":"list","member":{}},"S8":{"type":"structure","required":["AccountName","AccountPassword"],"members":{"AccountName":{"type":"string","sensitive":true},"AccountPassword":{"type":"string","sensitive":true}}},"Sc":{"type":"structure","required":["DirectoryName"],"members":{"DirectoryName":{},"OrganizationalUnitDistinguishedNames":{"shape":"S6"},"ServiceAccountCredentials":{"shape":"S8"},"CreatedTime":{"type":"timestamp"}}},"Sg":{"type":"structure","required":["DesiredInstances"],"members":{"DesiredInstances":{"type":"integer"}}},"Si":{"type":"structure","members":{"SubnetIds":{"type":"list","member":{}},"SecurityGroupIds":{"type":"list","member":{}}}},"So":{"type":"structure","members":{"DirectoryName":{},"OrganizationalUnitDistinguishedName":{}}},"Sq":{"type":"structure","required":["Arn","Name","ImageName","InstanceType","ComputeCapacityStatus","State"],"members":{"Arn":{},"Name":{},"DisplayName":{},"Description":{},"ImageName":{},"InstanceType":{},"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":"Si"},"CreatedTime":{"type":"timestamp"},"FleetErrors":{"type":"list","member":{"type":"structure","members":{"ErrorCode":{},"ErrorMessage":{}}}},"EnableDefaultInternetAccess":{"type":"boolean"},"DomainJoinInfo":{"shape":"So"}}},"Sy":{"type":"list","member":{"type":"structure","required":["ConnectorType"],"members":{"ConnectorType":{},"ResourceIdentifier":{}}}},"S13":{"type":"structure","required":["Name"],"members":{"Arn":{},"Name":{},"Description":{},"DisplayName":{},"CreatedTime":{"type":"timestamp"},"StorageConnectors":{"shape":"Sy"},"StackErrors":{"type":"list","member":{"type":"structure","members":{"ErrorCode":{},"ErrorMessage":{}}}}}},"S1m":{"type":"list","member":{}}}}

/***/ }),
/* 56 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 57 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 58 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(59);
	    model.paginators = __webpack_require__(60).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.AutoScaling;


/***/ }),
/* 59 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2011-01-01","endpointPrefix":"autoscaling","protocol":"query","serviceFullName":"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":{}}},"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":{},"InstanceId":{},"MinSize":{"type":"integer"},"MaxSize":{"type":"integer"},"DesiredCapacity":{"type":"integer"},"DefaultCooldown":{"type":"integer"},"AvailabilityZones":{"shape":"Sn"},"LoadBalancerNames":{"shape":"Sa"},"TargetGroupARNs":{"shape":"S6"},"HealthCheckType":{},"HealthCheckGracePeriod":{"type":"integer"},"PlacementGroup":{},"VPCZoneIdentifier":{},"TerminationPolicies":{"shape":"Sr"},"NewInstancesProtectedFromScaleIn":{"type":"boolean"},"Tags":{"shape":"Su"}}}},"CreateLaunchConfiguration":{"input":{"type":"structure","required":["LaunchConfigurationName"],"members":{"LaunchConfigurationName":{},"ImageId":{},"KeyName":{},"SecurityGroups":{"shape":"S11"},"ClassicLinkVPCId":{},"ClassicLinkVPCSecurityGroups":{"shape":"S12"},"UserData":{},"InstanceId":{},"InstanceType":{},"KernelId":{},"RamdiskId":{},"BlockDeviceMappings":{"shape":"S14"},"InstanceMonitoring":{"shape":"S1d"},"SpotPrice":{},"IamInstanceProfile":{},"EbsOptimized":{"type":"boolean"},"AssociatePublicIpAddress":{"type":"boolean"},"PlacementTenancy":{}}}},"CreateOrUpdateTags":{"input":{"type":"structure","required":["Tags"],"members":{"Tags":{"shape":"Su"}}}},"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":"Su"}}}},"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":"S22"},"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":{},"MinSize":{"type":"integer"},"MaxSize":{"type":"integer"},"DesiredCapacity":{"type":"integer"},"DefaultCooldown":{"type":"integer"},"AvailabilityZones":{"shape":"Sn"},"LoadBalancerNames":{"shape":"Sa"},"TargetGroupARNs":{"shape":"S6"},"HealthCheckType":{},"HealthCheckGracePeriod":{"type":"integer"},"Instances":{"type":"list","member":{"type":"structure","required":["InstanceId","AvailabilityZone","LifecycleState","HealthStatus","LaunchConfigurationName","ProtectedFromScaleIn"],"members":{"InstanceId":{},"AvailabilityZone":{},"LifecycleState":{},"HealthStatus":{},"LaunchConfigurationName":{},"ProtectedFromScaleIn":{"type":"boolean"}}}},"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":"S2f"},"TerminationPolicies":{"shape":"Sr"},"NewInstancesProtectedFromScaleIn":{"type":"boolean"}}}},"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","LaunchConfigurationName","ProtectedFromScaleIn"],"members":{"InstanceId":{},"AutoScalingGroupName":{},"AvailabilityZone":{},"LifecycleState":{},"HealthStatus":{},"LaunchConfigurationName":{},"ProtectedFromScaleIn":{"type":"boolean"}}}},"NextToken":{}}}},"DescribeAutoScalingNotificationTypes":{"output":{"resultWrapper":"DescribeAutoScalingNotificationTypesResult","type":"structure","members":{"AutoScalingNotificationTypes":{"shape":"S2m"}}}},"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":"S11"},"ClassicLinkVPCId":{},"ClassicLinkVPCSecurityGroups":{"shape":"S12"},"UserData":{},"InstanceType":{},"KernelId":{},"RamdiskId":{},"BlockDeviceMappings":{"shape":"S14"},"InstanceMonitoring":{"shape":"S1d"},"SpotPrice":{},"IamInstanceProfile":{},"CreatedTime":{"type":"timestamp"},"EbsOptimized":{"type":"boolean"},"AssociatePublicIpAddress":{"type":"boolean"},"PlacementTenancy":{}}}},"NextToken":{}}}},"DescribeLifecycleHookTypes":{"output":{"resultWrapper":"DescribeLifecycleHookTypesResult","type":"structure","members":{"LifecycleHookTypes":{"shape":"S2m"}}}},"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":"S22"},"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":"S3p"},"MinAdjustmentMagnitude":{"type":"integer"},"ScalingAdjustment":{"type":"integer"},"Cooldown":{"type":"integer"},"StepAdjustments":{"shape":"S3s"},"MetricAggregationType":{},"EstimatedInstanceWarmup":{"type":"integer"},"Alarms":{"shape":"S3w"},"TargetTrackingConfiguration":{"shape":"S3y"}}}},"NextToken":{}}}},"DescribeScalingActivities":{"input":{"type":"structure","members":{"ActivityIds":{"type":"list","member":{}},"AutoScalingGroupName":{},"MaxRecords":{"type":"integer"},"NextToken":{}}},"output":{"resultWrapper":"DescribeScalingActivitiesResult","type":"structure","required":["Activities"],"members":{"Activities":{"shape":"S4e"},"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":{"type":"list","member":{}},"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"}}}},"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":"S2f"},"NextToken":{}}}},"DescribeTerminationPolicyTypes":{"output":{"resultWrapper":"DescribeTerminationPolicyTypesResult","type":"structure","members":{"TerminationPolicyTypes":{"shape":"Sr"}}}},"DetachInstances":{"input":{"type":"structure","required":["AutoScalingGroupName","ShouldDecrementDesiredCapacity"],"members":{"InstanceIds":{"shape":"S2"},"AutoScalingGroupName":{},"ShouldDecrementDesiredCapacity":{"type":"boolean"}}},"output":{"resultWrapper":"DetachInstancesResult","type":"structure","members":{"Activities":{"shape":"S4e"}}}},"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":"S54"}}}},"EnableMetricsCollection":{"input":{"type":"structure","required":["AutoScalingGroupName","Granularity"],"members":{"AutoScalingGroupName":{},"Metrics":{"shape":"S54"},"Granularity":{}}}},"EnterStandby":{"input":{"type":"structure","required":["AutoScalingGroupName","ShouldDecrementDesiredCapacity"],"members":{"InstanceIds":{"shape":"S2"},"AutoScalingGroupName":{},"ShouldDecrementDesiredCapacity":{"type":"boolean"}}},"output":{"resultWrapper":"EnterStandbyResult","type":"structure","members":{"Activities":{"shape":"S4e"}}}},"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":"S4e"}}}},"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":"S2m"}}}},"PutScalingPolicy":{"input":{"type":"structure","required":["AutoScalingGroupName","PolicyName"],"members":{"AutoScalingGroupName":{},"PolicyName":{},"PolicyType":{},"AdjustmentType":{},"MinAdjustmentStep":{"shape":"S3p"},"MinAdjustmentMagnitude":{"type":"integer"},"ScalingAdjustment":{"type":"integer"},"Cooldown":{"type":"integer"},"MetricAggregationType":{},"StepAdjustments":{"shape":"S3s"},"EstimatedInstanceWarmup":{"type":"integer"},"TargetTrackingConfiguration":{"shape":"S3y"}}},"output":{"resultWrapper":"PutScalingPolicyResult","type":"structure","members":{"PolicyARN":{},"Alarms":{"shape":"S3w"}}}},"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"}}}},"RecordLifecycleActionHeartbeat":{"input":{"type":"structure","required":["LifecycleHookName","AutoScalingGroupName"],"members":{"LifecycleHookName":{},"AutoScalingGroupName":{},"LifecycleActionToken":{},"InstanceId":{}}},"output":{"resultWrapper":"RecordLifecycleActionHeartbeatResult","type":"structure","members":{}}},"ResumeProcesses":{"input":{"shape":"S5l"}},"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":{}}},"SuspendProcesses":{"input":{"shape":"S5l"}},"TerminateInstanceInAutoScalingGroup":{"input":{"type":"structure","required":["InstanceId","ShouldDecrementDesiredCapacity"],"members":{"InstanceId":{},"ShouldDecrementDesiredCapacity":{"type":"boolean"}}},"output":{"resultWrapper":"TerminateInstanceInAutoScalingGroupResult","type":"structure","members":{"Activity":{"shape":"S4f"}}}},"UpdateAutoScalingGroup":{"input":{"type":"structure","required":["AutoScalingGroupName"],"members":{"AutoScalingGroupName":{},"LaunchConfigurationName":{},"MinSize":{"type":"integer"},"MaxSize":{"type":"integer"},"DesiredCapacity":{"type":"integer"},"DefaultCooldown":{"type":"integer"},"AvailabilityZones":{"shape":"Sn"},"HealthCheckType":{},"HealthCheckGracePeriod":{"type":"integer"},"PlacementGroup":{},"VPCZoneIdentifier":{},"TerminationPolicies":{"shape":"Sr"},"NewInstancesProtectedFromScaleIn":{"type":"boolean"}}}}},"shapes":{"S2":{"type":"list","member":{}},"S6":{"type":"list","member":{}},"Sa":{"type":"list","member":{}},"Sn":{"type":"list","member":{}},"Sr":{"type":"list","member":{}},"Su":{"type":"list","member":{"type":"structure","required":["Key"],"members":{"ResourceId":{},"ResourceType":{},"Key":{},"Value":{},"PropagateAtLaunch":{"type":"boolean"}}}},"S11":{"type":"list","member":{}},"S12":{"type":"list","member":{}},"S14":{"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"}}}},"S1d":{"type":"structure","members":{"Enabled":{"type":"boolean"}}},"S22":{"type":"list","member":{}},"S2f":{"type":"list","member":{"type":"structure","members":{"ResourceId":{},"ResourceType":{},"Key":{},"Value":{},"PropagateAtLaunch":{"type":"boolean"}}}},"S2m":{"type":"list","member":{}},"S3p":{"type":"integer","deprecated":true},"S3s":{"type":"list","member":{"type":"structure","required":["ScalingAdjustment"],"members":{"MetricIntervalLowerBound":{"type":"double"},"MetricIntervalUpperBound":{"type":"double"},"ScalingAdjustment":{"type":"integer"}}}},"S3w":{"type":"list","member":{"type":"structure","members":{"AlarmName":{},"AlarmARN":{}}}},"S3y":{"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"}}},"S4e":{"type":"list","member":{"shape":"S4f"}},"S4f":{"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":{}}},"S54":{"type":"list","member":{}},"S5l":{"type":"structure","required":["AutoScalingGroupName"],"members":{"AutoScalingGroupName":{},"ScalingProcesses":{"type":"list","member":{}}}}}}

/***/ }),
/* 60 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 61 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(62);
	    model.paginators = __webpack_require__(63).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Batch;


/***/ }),
/* 62 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-08-10","endpointPrefix":"batch","jsonVersion":"1.1","protocol":"rest-json","serviceAbbreviation":"AWS Batch","serviceFullName":"AWS 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","serviceRole"],"members":{"computeEnvironmentName":{},"type":{},"state":{},"computeResources":{"shape":"S7"},"serviceRole":{}}},"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":"Sf"}}},"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":"Sa"},"maxResults":{"type":"integer"},"nextToken":{}}},"output":{"type":"structure","members":{"computeEnvironments":{"type":"list","member":{"type":"structure","required":["computeEnvironmentName","computeEnvironmentArn","ecsClusterArn"],"members":{"computeEnvironmentName":{},"computeEnvironmentArn":{},"ecsClusterArn":{},"type":{},"state":{},"status":{},"statusReason":{},"computeResources":{"shape":"S7"},"serviceRole":{}}}},"nextToken":{}}}},"DescribeJobDefinitions":{"http":{"requestUri":"/v1/describejobdefinitions"},"input":{"type":"structure","members":{"jobDefinitions":{"shape":"Sa"},"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":"Sx"},"retryStrategy":{"shape":"Sy"},"containerProperties":{"shape":"Sz"}}}},"nextToken":{}}}},"DescribeJobQueues":{"http":{"requestUri":"/v1/describejobqueues"},"input":{"type":"structure","members":{"jobQueues":{"shape":"Sa"},"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":"Sf"}}}},"nextToken":{}}}},"DescribeJobs":{"http":{"requestUri":"/v1/describejobs"},"input":{"type":"structure","required":["jobs"],"members":{"jobs":{"shape":"Sa"}}},"output":{"type":"structure","members":{"jobs":{"type":"list","member":{"type":"structure","required":["jobName","jobId","jobQueue","status","startedAt","jobDefinition"],"members":{"jobName":{},"jobId":{},"jobQueue":{},"status":{},"attempts":{"type":"list","member":{"type":"structure","members":{"container":{"type":"structure","members":{"containerInstanceArn":{},"taskArn":{},"exitCode":{"type":"integer"},"reason":{}}},"startedAt":{"type":"long"},"stoppedAt":{"type":"long"},"statusReason":{}}}},"statusReason":{},"createdAt":{"type":"long"},"retryStrategy":{"shape":"Sy"},"startedAt":{"type":"long"},"stoppedAt":{"type":"long"},"dependsOn":{"shape":"S1o"},"jobDefinition":{},"parameters":{"shape":"Sx"},"container":{"type":"structure","members":{"image":{},"vcpus":{"type":"integer"},"memory":{"type":"integer"},"command":{"shape":"Sa"},"jobRoleArn":{},"volumes":{"shape":"S10"},"environment":{"shape":"S13"},"mountPoints":{"shape":"S15"},"readonlyRootFilesystem":{"type":"boolean"},"ulimits":{"shape":"S18"},"privileged":{"type":"boolean"},"user":{},"exitCode":{"type":"integer"},"reason":{},"containerInstanceArn":{},"taskArn":{}}}}}}}}},"ListJobs":{"http":{"requestUri":"/v1/listjobs"},"input":{"type":"structure","required":["jobQueue"],"members":{"jobQueue":{},"jobStatus":{},"maxResults":{"type":"integer"},"nextToken":{}}},"output":{"type":"structure","required":["jobSummaryList"],"members":{"jobSummaryList":{"type":"list","member":{"type":"structure","required":["jobId","jobName"],"members":{"jobId":{},"jobName":{}}}},"nextToken":{}}}},"RegisterJobDefinition":{"http":{"requestUri":"/v1/registerjobdefinition"},"input":{"type":"structure","required":["jobDefinitionName","type"],"members":{"jobDefinitionName":{},"type":{},"parameters":{"shape":"Sx"},"containerProperties":{"shape":"Sz"},"retryStrategy":{"shape":"Sy"}}},"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":{},"dependsOn":{"shape":"S1o"},"jobDefinition":{},"parameters":{"shape":"Sx"},"containerOverrides":{"type":"structure","members":{"vcpus":{"type":"integer"},"memory":{"type":"integer"},"command":{"shape":"Sa"},"environment":{"shape":"S13"}}},"retryStrategy":{"shape":"Sy"}}},"output":{"type":"structure","required":["jobName","jobId"],"members":{"jobName":{},"jobId":{}}}},"TerminateJob":{"http":{"requestUri":"/v1/terminatejob"},"input":{"type":"structure","required":["jobId","reason"],"members":{"jobId":{},"reason":{}}},"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"}}},"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":"Sf"}}},"output":{"type":"structure","members":{"jobQueueName":{},"jobQueueArn":{}}}}},"shapes":{"S7":{"type":"structure","required":["type","minvCpus","maxvCpus","instanceTypes","subnets","securityGroupIds","instanceRole"],"members":{"type":{},"minvCpus":{"type":"integer"},"maxvCpus":{"type":"integer"},"desiredvCpus":{"type":"integer"},"instanceTypes":{"shape":"Sa"},"imageId":{},"subnets":{"shape":"Sa"},"securityGroupIds":{"shape":"Sa"},"ec2KeyPair":{},"instanceRole":{},"tags":{"type":"map","key":{},"value":{}},"bidPercentage":{"type":"integer"},"spotIamFleetRole":{}}},"Sa":{"type":"list","member":{}},"Sf":{"type":"list","member":{"type":"structure","required":["order","computeEnvironment"],"members":{"order":{"type":"integer"},"computeEnvironment":{}}}},"Sx":{"type":"map","key":{},"value":{}},"Sy":{"type":"structure","members":{"attempts":{"type":"integer"}}},"Sz":{"type":"structure","required":["image","vcpus","memory"],"members":{"image":{},"vcpus":{"type":"integer"},"memory":{"type":"integer"},"command":{"shape":"Sa"},"jobRoleArn":{},"volumes":{"shape":"S10"},"environment":{"shape":"S13"},"mountPoints":{"shape":"S15"},"readonlyRootFilesystem":{"type":"boolean"},"privileged":{"type":"boolean"},"ulimits":{"shape":"S18"},"user":{}}},"S10":{"type":"list","member":{"type":"structure","members":{"host":{"type":"structure","members":{"sourcePath":{}}},"name":{}}}},"S13":{"type":"list","member":{"type":"structure","members":{"name":{},"value":{}}}},"S15":{"type":"list","member":{"type":"structure","members":{"containerPath":{},"readOnly":{"type":"boolean"},"sourceVolume":{}}}},"S18":{"type":"list","member":{"type":"structure","required":["hardLimit","name","softLimit"],"members":{"hardLimit":{"type":"integer"},"name":{},"softLimit":{"type":"integer"}}}},"S1o":{"type":"list","member":{"type":"structure","members":{"jobId":{}}}}}}

/***/ }),
/* 63 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 64 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(65);
	    model.paginators = __webpack_require__(66).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Budgets;


/***/ }),
/* 65 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-10-20","endpointPrefix":"budgets","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"AWSBudgets","serviceFullName":"AWS 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":"Sk"},"Subscribers":{"shape":"So"}}}}}},"output":{"type":"structure","members":{}}},"CreateNotification":{"input":{"type":"structure","required":["AccountId","BudgetName","Notification","Subscribers"],"members":{"AccountId":{},"BudgetName":{},"Notification":{"shape":"Sk"},"Subscribers":{"shape":"So"}}},"output":{"type":"structure","members":{}}},"CreateSubscriber":{"input":{"type":"structure","required":["AccountId","BudgetName","Notification","Subscriber"],"members":{"AccountId":{},"BudgetName":{},"Notification":{"shape":"Sk"},"Subscriber":{"shape":"Sp"}}},"output":{"type":"structure","members":{}}},"DeleteBudget":{"input":{"type":"structure","required":["AccountId","BudgetName"],"members":{"AccountId":{},"BudgetName":{}}},"output":{"type":"structure","members":{}}},"DeleteNotification":{"input":{"type":"structure","required":["AccountId","BudgetName","Notification"],"members":{"AccountId":{},"BudgetName":{},"Notification":{"shape":"Sk"}}},"output":{"type":"structure","members":{}}},"DeleteSubscriber":{"input":{"type":"structure","required":["AccountId","BudgetName","Notification","Subscriber"],"members":{"AccountId":{},"BudgetName":{},"Notification":{"shape":"Sk"},"Subscriber":{"shape":"Sp"}}},"output":{"type":"structure","members":{}}},"DescribeBudget":{"input":{"type":"structure","required":["AccountId","BudgetName"],"members":{"AccountId":{},"BudgetName":{}}},"output":{"type":"structure","members":{"Budget":{"shape":"S3"}}}},"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":"Sk"}},"NextToken":{}}}},"DescribeSubscribersForNotification":{"input":{"type":"structure","required":["AccountId","BudgetName","Notification"],"members":{"AccountId":{},"BudgetName":{},"Notification":{"shape":"Sk"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Subscribers":{"shape":"So"},"NextToken":{}}}},"UpdateBudget":{"input":{"type":"structure","required":["AccountId","NewBudget"],"members":{"AccountId":{},"NewBudget":{"shape":"S3"}}},"output":{"type":"structure","members":{}}},"UpdateNotification":{"input":{"type":"structure","required":["AccountId","BudgetName","OldNotification","NewNotification"],"members":{"AccountId":{},"BudgetName":{},"OldNotification":{"shape":"Sk"},"NewNotification":{"shape":"Sk"}}},"output":{"type":"structure","members":{}}},"UpdateSubscriber":{"input":{"type":"structure","required":["AccountId","BudgetName","Notification","OldSubscriber","NewSubscriber"],"members":{"AccountId":{},"BudgetName":{},"Notification":{"shape":"Sk"},"OldSubscriber":{"shape":"Sp"},"NewSubscriber":{"shape":"Sp"}}},"output":{"type":"structure","members":{}}}},"shapes":{"S3":{"type":"structure","required":["BudgetName","BudgetLimit","CostTypes","TimeUnit","TimePeriod","BudgetType"],"members":{"BudgetName":{},"BudgetLimit":{"shape":"S5"},"CostFilters":{"type":"map","key":{},"value":{"type":"list","member":{}}},"CostTypes":{"type":"structure","required":["IncludeTax","IncludeSubscription","UseBlended"],"members":{"IncludeTax":{"type":"boolean"},"IncludeSubscription":{"type":"boolean"},"UseBlended":{"type":"boolean"}}},"TimeUnit":{},"TimePeriod":{"type":"structure","required":["Start","End"],"members":{"Start":{"type":"timestamp"},"End":{"type":"timestamp"}}},"CalculatedSpend":{"type":"structure","required":["ActualSpend"],"members":{"ActualSpend":{"shape":"S5"},"ForecastedSpend":{"shape":"S5"}}},"BudgetType":{}}},"S5":{"type":"structure","required":["Amount","Unit"],"members":{"Amount":{},"Unit":{}}},"Sk":{"type":"structure","required":["NotificationType","ComparisonOperator","Threshold"],"members":{"NotificationType":{},"ComparisonOperator":{},"Threshold":{"type":"double"}}},"So":{"type":"list","member":{"shape":"Sp"}},"Sp":{"type":"structure","required":["SubscriptionType","Address"],"members":{"SubscriptionType":{},"Address":{}}}}}

/***/ }),
/* 66 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 67 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['clouddirectory'] = {};
	AWS.CloudDirectory = Service.defineService('clouddirectory', ['2016-05-10']);
	Object.defineProperty(apiLoader.services['clouddirectory'], '2016-05-10', {
	  get: function get() {
	    var model = __webpack_require__(68);
	    model.paginators = __webpack_require__(69).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudDirectory;


/***/ }),
/* 68 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-05-10","endpointPrefix":"clouddirectory","protocol":"rest-json","serviceFullName":"Amazon 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":["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"}}},"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":"S1d"},"IndexReference":{"shape":"Sf"},"MaxResults":{"type":"integer"},"NextToken":{}}},"ListOutgoingTypedLinks":{"type":"structure","required":["ObjectReference"],"members":{"ObjectReference":{"shape":"Sf"},"FilterAttributeRanges":{"shape":"S1i"},"FilterTypedLink":{"shape":"St"},"NextToken":{},"MaxResults":{"type":"integer"}}},"ListIncomingTypedLinks":{"type":"structure","required":["ObjectReference"],"members":{"ObjectReference":{"shape":"Sf"},"FilterAttributeRanges":{"shape":"S1i"},"FilterTypedLink":{"shape":"St"},"NextToken":{},"MaxResults":{"type":"integer"}}}}}},"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":"S1s"},"NextToken":{}}},"GetObjectInformation":{"type":"structure","members":{"SchemaFacets":{"shape":"S1u"},"ObjectIdentifier":{}}},"ListAttachedIndices":{"type":"structure","members":{"IndexAttachments":{"shape":"S1w"},"NextToken":{}}},"ListObjectParentPaths":{"type":"structure","members":{"PathToObjectIdentifiersList":{"shape":"S1z"},"NextToken":{}}},"ListObjectPolicies":{"type":"structure","members":{"AttachedPolicyIds":{"shape":"S22"},"NextToken":{}}},"ListPolicyAttachments":{"type":"structure","members":{"ObjectIdentifiers":{"shape":"S22"},"NextToken":{}}},"LookupPolicy":{"type":"structure","members":{"PolicyToPathList":{"shape":"S26"},"NextToken":{}}},"ListIndex":{"type":"structure","members":{"IndexAttachments":{"shape":"S1w"},"NextToken":{}}},"ListOutgoingTypedLinks":{"type":"structure","members":{"TypedLinkSpecifiers":{"shape":"S2d"},"NextToken":{}}},"ListIncomingTypedLinks":{"type":"structure","members":{"LinkSpecifiers":{"shape":"S2d"},"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","ParentReference","LinkName","BatchReferenceName"],"members":{"SchemaFacet":{"shape":"S1u"},"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","BatchReferenceName"],"members":{"ParentReference":{"shape":"Sf"},"LinkName":{},"BatchReferenceName":{}}},"UpdateObjectAttributes":{"type":"structure","required":["ObjectReference","AttributeUpdates"],"members":{"ObjectReference":{"shape":"Sf"},"AttributeUpdates":{"shape":"S2q"}}},"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"}}},"CreateIndex":{"type":"structure","required":["OrderedIndexedAttributeList","IsUnique"],"members":{"OrderedIndexedAttributeList":{"shape":"S2z"},"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"}}}}}}}},"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":{}},"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":{}}}}}}}},"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":"S3q"},"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":"S2z"},"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":"S1u"},"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":"S4e"},"IdentityAttributeOrder":{"shape":"S4g"}}}}},"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":{}}}},"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":"S55"}}}},"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":{}}}}}},"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":"S1u"},"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":"S4g"}}}},"ListAppliedSchemaArns":{"http":{"requestUri":"/amazonclouddirectory/2017-01-11/schema/applied","responseCode":200},"input":{"type":"structure","required":["DirectoryArn"],"members":{"DirectoryArn":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"SchemaArns":{"shape":"S5k"},"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":"S1w"},"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":"S5k"},"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":"S55"}},"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":"S3q"},"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":"S1i"},"FilterTypedLink":{"shape":"St"},"NextToken":{},"MaxResults":{"type":"integer"},"ConsistencyLevel":{}}},"output":{"type":"structure","members":{"LinkSpecifiers":{"shape":"S2d"},"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":"S1d"},"IndexReference":{"shape":"Sf"},"MaxResults":{"type":"integer"},"NextToken":{},"ConsistencyLevel":{"location":"header","locationName":"x-amz-consistency-level"}}},"output":{"type":"structure","members":{"IndexAttachments":{"shape":"S1w"},"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":"S1s"},"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":"S1z"},"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":"S22"},"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":"S1i"},"FilterTypedLink":{"shape":"St"},"NextToken":{},"MaxResults":{"type":"integer"},"ConsistencyLevel":{}}},"output":{"type":"structure","members":{"TypedLinkSpecifiers":{"shape":"S2d"},"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":"S22"},"NextToken":{}}}},"ListPublishedSchemaArns":{"http":{"requestUri":"/amazonclouddirectory/2017-01-11/schema/published","responseCode":200},"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"SchemaArns":{"shape":"S5k"},"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":"S6l"},"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":"S4e"},"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":"S26"},"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":{},"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":"S6l"}}},"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":"S3r"},"Action":{}}}},"ObjectType":{}}},"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":"S2q"}}},"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":"S4f"},"Action":{}}}},"IdentityAttributeOrder":{"shape":"S4g"}}},"output":{"type":"structure","members":{}}}},"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"}}},"S1d":{"type":"list","member":{"type":"structure","members":{"AttributeKey":{"shape":"S7"},"Range":{"shape":"S1f"}}}},"S1f":{"type":"structure","required":["StartMode","EndMode"],"members":{"StartMode":{},"StartValue":{"shape":"S9"},"EndMode":{},"EndValue":{"shape":"S9"}}},"S1i":{"type":"list","member":{"type":"structure","required":["Range"],"members":{"AttributeName":{},"Range":{"shape":"S1f"}}}},"S1s":{"type":"map","key":{},"value":{}},"S1u":{"type":"list","member":{"shape":"S3"}},"S1w":{"type":"list","member":{"type":"structure","members":{"IndexedAttributes":{"shape":"S5"},"ObjectIdentifier":{}}}},"S1z":{"type":"list","member":{"type":"structure","members":{"Path":{},"ObjectIdentifiers":{"shape":"S22"}}}},"S22":{"type":"list","member":{}},"S26":{"type":"list","member":{"type":"structure","members":{"Path":{},"Policies":{"type":"list","member":{"type":"structure","members":{"PolicyId":{},"ObjectIdentifier":{},"PolicyType":{}}}}}}},"S2d":{"type":"list","member":{"shape":"Sy"}},"S2q":{"type":"list","member":{"type":"structure","members":{"ObjectAttributeKey":{"shape":"S7"},"ObjectAttributeAction":{"type":"structure","members":{"ObjectAttributeActionType":{},"ObjectAttributeUpdateValue":{"shape":"S9"}}}}}},"S2z":{"type":"list","member":{"shape":"S7"}},"S3q":{"type":"list","member":{"shape":"S3r"}},"S3r":{"type":"structure","required":["Name"],"members":{"Name":{},"AttributeDefinition":{"type":"structure","required":["Type"],"members":{"Type":{},"DefaultValue":{"shape":"S9"},"IsImmutable":{"type":"boolean"},"Rules":{"shape":"S3u"}}},"AttributeReference":{"type":"structure","required":["TargetFacetName","TargetAttributeName"],"members":{"TargetFacetName":{},"TargetAttributeName":{}}},"RequiredBehavior":{}}},"S3u":{"type":"map","key":{},"value":{"type":"structure","members":{"Type":{},"Parameters":{"type":"map","key":{},"value":{}}}}},"S4e":{"type":"list","member":{"shape":"S4f"}},"S4f":{"type":"structure","required":["Name","Type","RequiredBehavior"],"members":{"Name":{},"Type":{},"DefaultValue":{"shape":"S9"},"IsImmutable":{"type":"boolean"},"Rules":{"shape":"S3u"},"RequiredBehavior":{}}},"S4g":{"type":"list","member":{}},"S55":{"type":"structure","members":{"Name":{},"DirectoryArn":{},"State":{},"CreationDateTime":{"type":"timestamp"}}},"S5k":{"type":"list","member":{}},"S6l":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}}}}

/***/ }),
/* 69 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 70 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(71);
	    model.paginators = __webpack_require__(72).pagination;
	    model.waiters = __webpack_require__(73).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudFormation;


/***/ }),
/* 71 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2010-05-15","endpointPrefix":"cloudformation","protocol":"query","serviceFullName":"AWS 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":{},"NotificationARNs":{"shape":"Sn"},"Tags":{"shape":"Sp"},"ChangeSetName":{},"ClientToken":{},"Description":{},"ChangeSetType":{}}},"output":{"resultWrapper":"CreateChangeSetResult","type":"structure","members":{"Id":{},"StackId":{}}}},"CreateStack":{"input":{"type":"structure","required":["StackName"],"members":{"StackName":{},"TemplateBody":{},"TemplateURL":{},"Parameters":{"shape":"Se"},"DisableRollback":{"type":"boolean"},"TimeoutInMinutes":{"type":"integer"},"NotificationARNs":{"shape":"Sn"},"Capabilities":{"shape":"Sj"},"ResourceTypes":{"shape":"Sl"},"RoleARN":{},"OnFailure":{},"StackPolicyBody":{},"StackPolicyURL":{},"Tags":{"shape":"Sp"},"ClientRequestToken":{}}},"output":{"resultWrapper":"CreateStackResult","type":"structure","members":{"StackId":{}}}},"CreateStackInstances":{"input":{"type":"structure","required":["StackSetName","Accounts","Regions"],"members":{"StackSetName":{},"Accounts":{"shape":"S19"},"Regions":{"shape":"S1b"},"OperationPreferences":{"shape":"S1d"},"OperationId":{"idempotencyToken":true}}},"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":"Sp"},"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","Accounts","Regions","RetainStacks"],"members":{"StackSetName":{},"Accounts":{"shape":"S19"},"Regions":{"shape":"S1b"},"OperationPreferences":{"shape":"S1d"},"RetainStacks":{"type":"boolean"},"OperationId":{"idempotencyToken":true}}},"output":{"resultWrapper":"DeleteStackInstancesResult","type":"structure","members":{"OperationId":{}}}},"DeleteStackSet":{"input":{"type":"structure","required":["StackSetName"],"members":{"StackSetName":{}}},"output":{"resultWrapper":"DeleteStackSetResult","type":"structure","members":{}}},"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":"Sn"},"Capabilities":{"shape":"Sj"},"Tags":{"shape":"Sp"},"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":{}}}}}}}}},"NextToken":{}}}},"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":{}}},"output":{"resultWrapper":"DescribeStackInstanceResult","type":"structure","members":{"StackInstance":{"type":"structure","members":{"StackSetId":{},"Region":{},"Account":{},"StackId":{},"Status":{},"StatusReason":{}}}}}},"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":{}}}}}},"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":{}}}}}}},"DescribeStackSet":{"input":{"type":"structure","required":["StackSetName"],"members":{"StackSetName":{}}},"output":{"resultWrapper":"DescribeStackSetResult","type":"structure","members":{"StackSet":{"type":"structure","members":{"StackSetName":{},"StackSetId":{},"Description":{},"Status":{},"TemplateBody":{},"Parameters":{"shape":"Se"},"Capabilities":{"shape":"Sj"},"Tags":{"shape":"Sp"}}}}}},"DescribeStackSetOperation":{"input":{"type":"structure","required":["StackSetName","OperationId"],"members":{"StackSetName":{},"OperationId":{}}},"output":{"resultWrapper":"DescribeStackSetOperationResult","type":"structure","members":{"StackSetOperation":{"type":"structure","members":{"OperationId":{},"StackSetId":{},"Action":{},"Status":{},"OperationPreferences":{"shape":"S1d"},"RetainStacks":{"type":"boolean"},"CreationTimestamp":{"type":"timestamp"},"EndTimestamp":{"type":"timestamp"}}}}}},"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"},"LastUpdatedTime":{"type":"timestamp"},"StackStatus":{},"StackStatusReason":{},"DisableRollback":{"type":"boolean"},"NotificationARNs":{"shape":"Sn"},"TimeoutInMinutes":{"type":"integer"},"Capabilities":{"shape":"Sj"},"Outputs":{"type":"list","member":{"type":"structure","members":{"OutputKey":{},"OutputValue":{},"Description":{},"ExportName":{}}}},"RoleARN":{},"Tags":{"shape":"Sp"}}}},"NextToken":{}}}},"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":"S4m"}}}},"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":{}}}},"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"},"StackInstanceAccount":{},"StackInstanceRegion":{}}},"output":{"resultWrapper":"ListStackInstancesResult","type":"structure","members":{"Summaries":{"type":"list","member":{"type":"structure","members":{"StackSetId":{},"Region":{},"Account":{},"StackId":{},"Status":{},"StatusReason":{}}}},"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":{}}}},"NextToken":{}}}},"ListStackSetOperationResults":{"input":{"type":"structure","required":["StackSetName","OperationId"],"members":{"StackSetName":{},"OperationId":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"resultWrapper":"ListStackSetOperationResultsResult","type":"structure","members":{"Summaries":{"type":"list","member":{"type":"structure","members":{"Account":{},"Region":{},"Status":{},"StatusReason":{},"AccountGateResult":{"type":"structure","members":{"Status":{},"StatusReason":{}}}}}},"NextToken":{}}}},"ListStackSetOperations":{"input":{"type":"structure","required":["StackSetName"],"members":{"StackSetName":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"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":{}}},"output":{"resultWrapper":"ListStackSetsResult","type":"structure","members":{"Summaries":{"type":"list","member":{"type":"structure","members":{"StackSetName":{},"StackSetId":{},"Description":{},"Status":{}}}},"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":{}}}},"NextToken":{}}}},"SetStackPolicy":{"input":{"type":"structure","required":["StackName"],"members":{"StackName":{},"StackPolicyBody":{},"StackPolicyURL":{}}}},"SignalResource":{"input":{"type":"structure","required":["StackName","LogicalResourceId","UniqueId","Status"],"members":{"StackName":{},"LogicalResourceId":{},"UniqueId":{},"Status":{}}}},"StopStackSetOperation":{"input":{"type":"structure","required":["StackSetName","OperationId"],"members":{"StackSetName":{},"OperationId":{}}},"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":{},"StackPolicyBody":{},"StackPolicyURL":{},"NotificationARNs":{"shape":"Sn"},"Tags":{"shape":"Sp"},"ClientRequestToken":{}}},"output":{"resultWrapper":"UpdateStackResult","type":"structure","members":{"StackId":{}}}},"UpdateStackSet":{"input":{"type":"structure","required":["StackSetName"],"members":{"StackSetName":{},"Description":{},"TemplateBody":{},"TemplateURL":{},"UsePreviousTemplate":{"type":"boolean"},"Parameters":{"shape":"Se"},"Capabilities":{"shape":"Sj"},"Tags":{"shape":"Sp"},"OperationPreferences":{"shape":"S1d"},"OperationId":{"idempotencyToken":true}}},"output":{"resultWrapper":"UpdateStackSetResult","type":"structure","members":{"OperationId":{}}}},"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":"S4m"}}}}},"shapes":{"Se":{"type":"list","member":{"type":"structure","members":{"ParameterKey":{},"ParameterValue":{},"UsePreviousValue":{"type":"boolean"}}}},"Sj":{"type":"list","member":{}},"Sl":{"type":"list","member":{}},"Sn":{"type":"list","member":{}},"Sp":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"S19":{"type":"list","member":{}},"S1b":{"type":"list","member":{}},"S1d":{"type":"structure","members":{"RegionOrder":{"shape":"S1b"},"FailureToleranceCount":{"type":"integer"},"FailureTolerancePercentage":{"type":"integer"},"MaxConcurrentCount":{"type":"integer"},"MaxConcurrentPercentage":{"type":"integer"}}},"S4m":{"type":"list","member":{}}}}

/***/ }),
/* 72 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeStackEvents":{"input_token":"NextToken","output_token":"NextToken","result_key":"StackEvents"},"DescribeStackResources":{"result_key":"StackResources"},"DescribeStacks":{"input_token":"NextToken","output_token":"NextToken","result_key":"Stacks"},"ListExports":{"input_token":"NextToken","output_token":"NextToken","result_key":"Exports"},"ListImports":{"input_token":"NextToken","output_token":"NextToken","result_key":"Imports"},"ListStackResources":{"input_token":"NextToken","output_token":"NextToken","result_key":"StackResourceSummaries"},"ListStacks":{"input_token":"NextToken","output_token":"NextToken","result_key":"StackSummaries"}}}

/***/ }),
/* 73 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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_FAILED","matcher":"pathAny","state":"failure"},{"argument":"Stacks[].StackStatus","expected":"UPDATE_ROLLBACK_IN_PROGRESS","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"}]},"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"}]}}}

/***/ }),
/* 74 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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']);
	__webpack_require__(75);
	Object.defineProperty(apiLoader.services['cloudfront'], '2016-11-25', {
	  get: function get() {
	    var model = __webpack_require__(77);
	    model.paginators = __webpack_require__(78).pagination;
	    model.waiters = __webpack_require__(79).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['cloudfront'], '2017-03-25', {
	  get: function get() {
	    var model = __webpack_require__(80);
	    model.paginators = __webpack_require__(81).pagination;
	    model.waiters = __webpack_require__(82).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudFront;


/***/ }),
/* 75 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	// pull in CloudFront signer
	__webpack_require__(76);

	AWS.util.update(AWS.CloudFront.prototype, {

	  setupRequestListeners: function setupRequestListeners(request) {
	    request.addListener('extractData', AWS.util.hoistPayloadMember);
	  }

	});


/***/ }),
/* 76 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4),
	    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, policy);

	    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. 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);
	    }
	});

	module.exports = AWS.CloudFront.Signer;


/***/ }),
/* 77 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-25","endpointPrefix":"cloudfront","globalEndpoint":"cloudfront.amazonaws.com","protocol":"rest-xml","serviceAbbreviation":"CloudFront","serviceFullName":"Amazon 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"}}}}}}}}

/***/ }),
/* 78 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 79 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 80 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-03-25","endpointPrefix":"cloudfront","globalEndpoint":"cloudfront.amazonaws.com","protocol":"rest-xml","serviceAbbreviation":"CloudFront","serviceFullName":"Amazon 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"}}}},"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":"S3a"}},"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":"S3a"}},"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"}}},"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"}}}}}}}}

/***/ }),
/* 81 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 82 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 83 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(84);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudHSM;


/***/ }),
/* 84 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-05-30","endpointPrefix":"cloudhsm","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"CloudHSM","serviceFullName":"Amazon 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":{"locationName":"SubnetId"},"SshKey":{"locationName":"SshKey"},"EniIp":{"locationName":"EniIp"},"IamRoleArn":{"locationName":"IamRoleArn"},"ExternalId":{"locationName":"ExternalId"},"SubscriptionType":{"locationName":"SubscriptionType"},"ClientToken":{"locationName":"ClientToken"},"SyslogIp":{"locationName":"SyslogIp"}},"locationName":"CreateHsmRequest"},"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":{"locationName":"HsmArn"}},"locationName":"DeleteHsmRequest"},"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":{"locationName":"HsmArn"},"SubnetId":{"locationName":"SubnetId"},"EniIp":{"locationName":"EniIp"},"IamRoleArn":{"locationName":"IamRoleArn"},"ExternalId":{"locationName":"ExternalId"},"SyslogIp":{"locationName":"SyslogIp"}},"locationName":"ModifyHsmRequest"},"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":{}}}}

/***/ }),
/* 85 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(86);
	    model.paginators = __webpack_require__(87).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['cloudsearch'], '2013-01-01', {
	  get: function get() {
	    var model = __webpack_require__(88);
	    model.paginators = __webpack_require__(89).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudSearch;


/***/ }),
/* 86 */
/***/ (function(module, exports) {

	module.exports = {"metadata":{"apiVersion":"2011-02-01","endpointPrefix":"cloudsearch","serviceFullName":"Amazon 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"}}}}}

/***/ }),
/* 87 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeDomains":{"result_key":"DomainStatusList"},"DescribeIndexFields":{"result_key":"IndexFields"},"DescribeRankExpressions":{"result_key":"RankExpressions"}}}

/***/ }),
/* 88 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-01-01","endpointPrefix":"cloudsearch","serviceFullName":"Amazon CloudSearch","signatureVersion":"v4","xmlNamespace":"http://cloudsearch.amazonaws.com/doc/2013-01-01/","protocol":"query","uid":"cloudsearch-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"}}}},"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":"S2p"}}}},"DescribeServiceAccessPolicies":{"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{},"Deployed":{"type":"boolean"}}},"output":{"resultWrapper":"DescribeServiceAccessPoliciesResult","type":"structure","required":["AccessPolicies"],"members":{"AccessPolicies":{"shape":"S2u"}}}},"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"}}}},"UpdateScalingParameters":{"input":{"type":"structure","required":["DomainName","ScalingParameters"],"members":{"DomainName":{},"ScalingParameters":{"shape":"S2q"}}},"output":{"resultWrapper":"UpdateScalingParametersResult","type":"structure","required":["ScalingParameters"],"members":{"ScalingParameters":{"shape":"S2p"}}}},"UpdateServiceAccessPolicies":{"input":{"type":"structure","required":["DomainName","AccessPolicies"],"members":{"DomainName":{},"AccessPolicies":{}}},"output":{"resultWrapper":"UpdateServiceAccessPoliciesResult","type":"structure","required":["AccessPolicies"],"members":{"AccessPolicies":{"shape":"S2u"}}}}},"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"}}},"S2p":{"type":"structure","required":["Options","Status"],"members":{"Options":{"shape":"S2q"},"Status":{"shape":"St"}}},"S2q":{"type":"structure","members":{"DesiredInstanceType":{},"DesiredReplicationCount":{"type":"integer"},"DesiredPartitionCount":{"type":"integer"}}},"S2u":{"type":"structure","required":["Options","Status"],"members":{"Options":{},"Status":{"shape":"St"}}}}}

/***/ }),
/* 89 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeAnalysisSchemes":{"result_key":"AnalysisSchemes"},"DescribeDomains":{"result_key":"DomainStatusList"},"DescribeExpressions":{"result_key":"Expressions"},"DescribeIndexFields":{"result_key":"IndexFields"},"DescribeSuggesters":{"result_key":"Suggesters"}}}

/***/ }),
/* 90 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['cloudsearchdomain'] = {};
	AWS.CloudSearchDomain = Service.defineService('cloudsearchdomain', ['2013-01-01']);
	__webpack_require__(91);
	Object.defineProperty(apiLoader.services['cloudsearchdomain'], '2013-01-01', {
	  get: function get() {
	    var model = __webpack_require__(92);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudSearchDomain;


/***/ }),
/* 91 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	/**
	 * 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;
	  }

	});


/***/ }),
/* 92 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-01-01","endpointPrefix":"cloudsearchdomain","jsonVersion":"1.1","protocol":"rest-json","serviceFullName":"Amazon 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":{}}

/***/ }),
/* 93 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(94);
	    model.paginators = __webpack_require__(95).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudTrail;


/***/ }),
/* 94 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-11-01","endpointPrefix":"cloudtrail","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"CloudTrail","serviceFullName":"AWS 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":{}}},"output":{"type":"structure","members":{"Name":{},"S3BucketName":{},"S3KeyPrefix":{},"SnsTopicName":{"deprecated":true},"SnsTopicARN":{},"IncludeGlobalServiceEvents":{"type":"boolean"},"IsMultiRegionTrail":{"type":"boolean"},"TrailARN":{},"LogFileValidationEnabled":{"type":"boolean"},"CloudWatchLogsLogGroupArn":{},"CloudWatchLogsRoleArn":{},"KmsKeyId":{}}},"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":{"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"}}}}}},"idempotent":true},"GetEventSelectors":{"input":{"type":"structure","required":["TrailName"],"members":{"TrailName":{}}},"output":{"type":"structure","members":{"TrailARN":{},"EventSelectors":{"shape":"Si"}}},"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},"LookupEvents":{"input":{"type":"structure","members":{"LookupAttributes":{"type":"list","member":{"type":"structure","required":["AttributeKey","AttributeValue"],"members":{"AttributeKey":{},"AttributeValue":{}}}},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Events":{"type":"list","member":{"type":"structure","members":{"EventId":{},"EventName":{},"EventTime":{"type":"timestamp"},"EventSource":{},"Username":{},"Resources":{"type":"list","member":{"type":"structure","members":{"ResourceType":{},"ResourceName":{}}}},"CloudTrailEvent":{}}}},"NextToken":{}}},"idempotent":true},"PutEventSelectors":{"input":{"type":"structure","required":["TrailName","EventSelectors"],"members":{"TrailName":{},"EventSelectors":{"shape":"Si"}}},"output":{"type":"structure","members":{"TrailARN":{},"EventSelectors":{"shape":"Si"}}},"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":{}}},"output":{"type":"structure","members":{"Name":{},"S3BucketName":{},"S3KeyPrefix":{},"SnsTopicName":{"deprecated":true},"SnsTopicARN":{},"IncludeGlobalServiceEvents":{"type":"boolean"},"IsMultiRegionTrail":{"type":"boolean"},"TrailARN":{},"LogFileValidationEnabled":{"type":"boolean"},"CloudWatchLogsLogGroupArn":{},"CloudWatchLogsRoleArn":{},"KmsKeyId":{}}},"idempotent":true}},"shapes":{"S3":{"type":"list","member":{"type":"structure","required":["Key"],"members":{"Key":{},"Value":{}}}},"Si":{"type":"list","member":{"type":"structure","members":{"ReadWriteType":{},"IncludeManagementEvents":{"type":"boolean"},"DataResources":{"type":"list","member":{"type":"structure","members":{"Type":{},"Values":{"type":"list","member":{}}}}}}}}}}

/***/ }),
/* 95 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeTrails":{"result_key":"trailList"},"LookupEvents":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"Events"}}}

/***/ }),
/* 96 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(97);
	    model.paginators = __webpack_require__(98).pagination;
	    model.waiters = __webpack_require__(99).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudWatch;


/***/ }),
/* 97 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2010-08-01","endpointPrefix":"monitoring","protocol":"query","serviceAbbreviation":"CloudWatch","serviceFullName":"Amazon 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"}}}},"DeleteDashboards":{"input":{"type":"structure","members":{"DashboardNames":{"type":"list","member":{}}}},"output":{"resultWrapper":"DeleteDashboardsResult","type":"structure","members":{}}},"DescribeAlarmHistory":{"input":{"type":"structure","members":{"AlarmName":{},"HistoryItemType":{},"StartDate":{"type":"timestamp"},"EndDate":{"type":"timestamp"},"MaxRecords":{"type":"integer"},"NextToken":{}}},"output":{"resultWrapper":"DescribeAlarmHistoryResult","type":"structure","members":{"AlarmHistoryItems":{"type":"list","member":{"type":"structure","members":{"AlarmName":{},"Timestamp":{"type":"timestamp"},"HistoryItemType":{},"HistorySummary":{},"HistoryData":{}}}},"NextToken":{}}}},"DescribeAlarms":{"input":{"type":"structure","members":{"AlarmNames":{"shape":"S2"},"AlarmNamePrefix":{},"StateValue":{},"ActionPrefix":{},"MaxRecords":{"type":"integer"},"NextToken":{}}},"output":{"resultWrapper":"DescribeAlarmsResult","type":"structure","members":{"MetricAlarms":{"shape":"Sn"},"NextToken":{}}}},"DescribeAlarmsForMetric":{"input":{"type":"structure","required":["MetricName","Namespace"],"members":{"MetricName":{},"Namespace":{},"Statistic":{},"ExtendedStatistic":{},"Dimensions":{"shape":"S10"},"Period":{"type":"integer"},"Unit":{}}},"output":{"resultWrapper":"DescribeAlarmsForMetricResult","type":"structure","members":{"MetricAlarms":{"shape":"Sn"}}}},"DisableAlarmActions":{"input":{"type":"structure","required":["AlarmNames"],"members":{"AlarmNames":{"shape":"S2"}}}},"EnableAlarmActions":{"input":{"type":"structure","required":["AlarmNames"],"members":{"AlarmNames":{"shape":"S2"}}}},"GetDashboard":{"input":{"type":"structure","members":{"DashboardName":{}}},"output":{"resultWrapper":"GetDashboardResult","type":"structure","members":{"DashboardArn":{},"DashboardBody":{},"DashboardName":{}}}},"GetMetricStatistics":{"input":{"type":"structure","required":["Namespace","MetricName","StartTime","EndTime","Period"],"members":{"Namespace":{},"MetricName":{},"Dimensions":{"shape":"S10"},"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"]}}}}},"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":{}}}},"ListMetrics":{"input":{"type":"structure","members":{"Namespace":{},"MetricName":{},"Dimensions":{"type":"list","member":{"type":"structure","required":["Name"],"members":{"Name":{},"Value":{}}}},"NextToken":{}}},"output":{"resultWrapper":"ListMetricsResult","type":"structure","members":{"Metrics":{"type":"list","member":{"type":"structure","members":{"Namespace":{},"MetricName":{},"Dimensions":{"shape":"S10"}},"xmlOrder":["Namespace","MetricName","Dimensions"]}},"NextToken":{}},"xmlOrder":["Metrics","NextToken"]}},"PutDashboard":{"input":{"type":"structure","members":{"DashboardName":{},"DashboardBody":{}}},"output":{"resultWrapper":"PutDashboardResult","type":"structure","members":{"DashboardValidationMessages":{"type":"list","member":{"type":"structure","members":{"DataPath":{},"Message":{}}}}}}},"PutMetricAlarm":{"input":{"type":"structure","required":["AlarmName","MetricName","Namespace","Period","EvaluationPeriods","Threshold","ComparisonOperator"],"members":{"AlarmName":{},"AlarmDescription":{},"ActionsEnabled":{"type":"boolean"},"OKActions":{"shape":"Ss"},"AlarmActions":{"shape":"Ss"},"InsufficientDataActions":{"shape":"Ss"},"MetricName":{},"Namespace":{},"Statistic":{},"ExtendedStatistic":{},"Dimensions":{"shape":"S10"},"Period":{"type":"integer"},"Unit":{},"EvaluationPeriods":{"type":"integer"},"Threshold":{"type":"double"},"ComparisonOperator":{},"TreatMissingData":{},"EvaluateLowSampleCountPercentile":{}}}},"PutMetricData":{"input":{"type":"structure","required":["Namespace","MetricData"],"members":{"Namespace":{},"MetricData":{"type":"list","member":{"type":"structure","required":["MetricName"],"members":{"MetricName":{},"Dimensions":{"shape":"S10"},"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"}}},"Unit":{},"StorageResolution":{"type":"integer"}}}}}}},"SetAlarmState":{"input":{"type":"structure","required":["AlarmName","StateValue","StateReason"],"members":{"AlarmName":{},"StateValue":{},"StateReason":{},"StateReasonData":{}}}}},"shapes":{"S2":{"type":"list","member":{}},"Sn":{"type":"list","member":{"type":"structure","members":{"AlarmName":{},"AlarmArn":{},"AlarmDescription":{},"AlarmConfigurationUpdatedTimestamp":{"type":"timestamp"},"ActionsEnabled":{"type":"boolean"},"OKActions":{"shape":"Ss"},"AlarmActions":{"shape":"Ss"},"InsufficientDataActions":{"shape":"Ss"},"StateValue":{},"StateReason":{},"StateReasonData":{},"StateUpdatedTimestamp":{"type":"timestamp"},"MetricName":{},"Namespace":{},"Statistic":{},"ExtendedStatistic":{},"Dimensions":{"shape":"S10"},"Period":{"type":"integer"},"Unit":{},"EvaluationPeriods":{"type":"integer"},"Threshold":{"type":"double"},"ComparisonOperator":{},"TreatMissingData":{},"EvaluateLowSampleCountPercentile":{}},"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"]}},"Ss":{"type":"list","member":{}},"S10":{"type":"list","member":{"type":"structure","required":["Name","Value"],"members":{"Name":{},"Value":{}},"xmlOrder":["Name","Value"]}}}}

/***/ }),
/* 98 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"DescribeAlarmsForMetric":{"result_key":"MetricAlarms"},"ListMetrics":{"input_token":"NextToken","output_token":"NextToken","result_key":"Metrics"}}}

/***/ }),
/* 99 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"AlarmExists":{"delay":5,"maxAttempts":40,"operation":"DescribeAlarms","acceptors":[{"matcher":"path","expected":true,"argument":"length(MetricAlarms[]) > `0`","state":"success"}]}}}

/***/ }),
/* 100 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(101);
	    model.paginators = __webpack_require__(102).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudWatchEvents;


/***/ }),
/* 101 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-10-07","endpointPrefix":"events","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon CloudWatch Events","signatureVersion":"v4","targetPrefix":"AWSEvents","uid":"events-2015-10-07"},"operations":{"DeleteRule":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}}},"DescribeEventBus":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"Name":{},"Arn":{},"Policy":{}}}},"DescribeRule":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{"Name":{},"Arn":{},"EventPattern":{},"ScheduleExpression":{},"State":{},"Description":{},"RoleArn":{}}}},"DisableRule":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}}},"EnableRule":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}}},"ListRuleNamesByTarget":{"input":{"type":"structure","required":["TargetArn"],"members":{"TargetArn":{},"NextToken":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"RuleNames":{"type":"list","member":{}},"NextToken":{}}}},"ListRules":{"input":{"type":"structure","members":{"NamePrefix":{},"NextToken":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"Rules":{"type":"list","member":{"type":"structure","members":{"Name":{},"Arn":{},"EventPattern":{},"State":{},"Description":{},"ScheduleExpression":{},"RoleArn":{}}}},"NextToken":{}}}},"ListTargetsByRule":{"input":{"type":"structure","required":["Rule"],"members":{"Rule":{},"NextToken":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"Targets":{"shape":"Ss"},"NextToken":{}}}},"PutEvents":{"input":{"type":"structure","required":["Entries"],"members":{"Entries":{"type":"list","member":{"type":"structure","members":{"Time":{"type":"timestamp"},"Source":{},"Resources":{"type":"list","member":{}},"DetailType":{},"Detail":{}}}}}},"output":{"type":"structure","members":{"FailedEntryCount":{"type":"integer"},"Entries":{"type":"list","member":{"type":"structure","members":{"EventId":{},"ErrorCode":{},"ErrorMessage":{}}}}}}},"PutPermission":{"input":{"type":"structure","required":["Action","Principal","StatementId"],"members":{"Action":{},"Principal":{},"StatementId":{}}}},"PutRule":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"ScheduleExpression":{},"EventPattern":{},"State":{},"Description":{},"RoleArn":{}}},"output":{"type":"structure","members":{"RuleArn":{}}}},"PutTargets":{"input":{"type":"structure","required":["Rule","Targets"],"members":{"Rule":{},"Targets":{"shape":"Ss"}}},"output":{"type":"structure","members":{"FailedEntryCount":{"type":"integer"},"FailedEntries":{"type":"list","member":{"type":"structure","members":{"TargetId":{},"ErrorCode":{},"ErrorMessage":{}}}}}}},"RemovePermission":{"input":{"type":"structure","required":["StatementId"],"members":{"StatementId":{}}}},"RemoveTargets":{"input":{"type":"structure","required":["Rule","Ids"],"members":{"Rule":{},"Ids":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"FailedEntryCount":{"type":"integer"},"FailedEntries":{"type":"list","member":{"type":"structure","members":{"TargetId":{},"ErrorCode":{},"ErrorMessage":{}}}}}}},"TestEventPattern":{"input":{"type":"structure","required":["EventPattern","Event"],"members":{"EventPattern":{},"Event":{}}},"output":{"type":"structure","members":{"Result":{"type":"boolean"}}}}},"shapes":{"Ss":{"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"}}}}}}}}

/***/ }),
/* 102 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 103 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(104);
	    model.paginators = __webpack_require__(105).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CloudWatchLogs;


/***/ }),
/* 104 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-03-28","endpointPrefix":"logs","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon CloudWatch Logs","signatureVersion":"v4","targetPrefix":"Logs_20140328","uid":"logs-2014-03-28"},"operations":{"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":{},"tags":{"shape":"Sc"}}}},"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":{}}}},"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":"St"}},"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"}}}},"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":{"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":"S1r"},"creationTime":{"type":"long"},"logGroupName":{}}}},"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":{}}}},"FilterLogEvents":{"input":{"type":"structure","required":["logGroupName"],"members":{"logGroupName":{},"logStreamNames":{"type":"list","member":{}},"startTime":{"type":"long"},"endTime":{"type":"long"},"filterPattern":{},"nextToken":{},"limit":{"type":"integer"},"interleaved":{"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":{}}}},"ListTagsLogGroup":{"input":{"type":"structure","required":["logGroupName"],"members":{"logGroupName":{}}},"output":{"type":"structure","members":{"tags":{"shape":"Sc"}}}},"PutDestination":{"input":{"type":"structure","required":["destinationName","targetArn","roleArn"],"members":{"destinationName":{},"targetArn":{},"roleArn":{}}},"output":{"type":"structure","members":{"destination":{"shape":"St"}}}},"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":"S1r"}}}},"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":{}}}},"TagLogGroup":{"input":{"type":"structure","required":["logGroupName","tags"],"members":{"logGroupName":{},"tags":{"shape":"Sc"}}}},"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":{"Sc":{"type":"map","key":{},"value":{}},"St":{"type":"structure","members":{"destinationName":{},"targetArn":{},"roleArn":{},"accessPolicy":{},"arn":{},"creationTime":{"type":"long"}}},"S1r":{"type":"list","member":{"type":"structure","required":["metricName","metricNamespace","metricValue"],"members":{"metricName":{},"metricNamespace":{},"metricValue":{},"defaultValue":{"type":"double"}}}}}}

/***/ }),
/* 105 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 106 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(107);
	    model.paginators = __webpack_require__(108).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CodeBuild;


/***/ }),
/* 107 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-10-06","endpointPrefix":"codebuild","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS CodeBuild","signatureVersion":"v4","targetPrefix":"CodeBuild_20161006","uid":"codebuild-2016-10-06"},"operations":{"BatchGetBuilds":{"input":{"type":"structure","required":["ids"],"members":{"ids":{"shape":"S2"}}},"output":{"type":"structure","members":{"builds":{"type":"list","member":{"shape":"S6"}},"buildsNotFound":{"shape":"S2"}}}},"BatchGetProjects":{"input":{"type":"structure","required":["names"],"members":{"names":{"shape":"Sv"}}},"output":{"type":"structure","members":{"projects":{"type":"list","member":{"shape":"Sy"}},"projectsNotFound":{"shape":"Sv"}}}},"CreateProject":{"input":{"type":"structure","required":["name","source","artifacts","environment"],"members":{"name":{},"description":{},"source":{"shape":"Sg"},"artifacts":{"shape":"S11"},"environment":{"shape":"Sl"},"serviceRole":{},"timeoutInMinutes":{"type":"integer"},"encryptionKey":{},"tags":{"shape":"S16"}}},"output":{"type":"structure","members":{"project":{"shape":"Sy"}}}},"DeleteProject":{"input":{"type":"structure","required":["name"],"members":{"name":{}}},"output":{"type":"structure","members":{}}},"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":{}}}}}}}}}}}}},"ListProjects":{"input":{"type":"structure","members":{"sortBy":{},"sortOrder":{},"nextToken":{}}},"output":{"type":"structure","members":{"nextToken":{},"projects":{"shape":"Sv"}}}},"StartBuild":{"input":{"type":"structure","required":["projectName"],"members":{"projectName":{},"sourceVersion":{},"artifactsOverride":{"shape":"S11"},"environmentVariablesOverride":{"shape":"So"},"buildspecOverride":{},"timeoutInMinutesOverride":{"type":"integer"}}},"output":{"type":"structure","members":{"build":{"shape":"S6"}}}},"StopBuild":{"input":{"type":"structure","required":["id"],"members":{"id":{}}},"output":{"type":"structure","members":{"build":{"shape":"S6"}}}},"UpdateProject":{"input":{"type":"structure","required":["name"],"members":{"name":{},"description":{},"source":{"shape":"Sg"},"artifacts":{"shape":"S11"},"environment":{"shape":"Sl"},"serviceRole":{},"timeoutInMinutes":{"type":"integer"},"encryptionKey":{},"tags":{"shape":"S16"}}},"output":{"type":"structure","members":{"project":{"shape":"Sy"}}}}},"shapes":{"S2":{"type":"list","member":{}},"S6":{"type":"structure","members":{"id":{},"arn":{},"startTime":{"type":"timestamp"},"endTime":{"type":"timestamp"},"currentPhase":{},"buildStatus":{},"sourceVersion":{},"projectName":{},"phases":{"type":"list","member":{"type":"structure","members":{"phaseType":{},"phaseStatus":{},"startTime":{"type":"timestamp"},"endTime":{"type":"timestamp"},"durationInSeconds":{"type":"long"},"contexts":{"type":"list","member":{"type":"structure","members":{"statusCode":{},"message":{}}}}}}},"source":{"shape":"Sg"},"artifacts":{"type":"structure","members":{"location":{},"sha256sum":{},"md5sum":{}}},"environment":{"shape":"Sl"},"logs":{"type":"structure","members":{"groupName":{},"streamName":{},"deepLink":{}}},"timeoutInMinutes":{"type":"integer"},"buildComplete":{"type":"boolean"},"initiator":{}}},"Sg":{"type":"structure","required":["type"],"members":{"type":{},"location":{},"buildspec":{},"auth":{"type":"structure","required":["type"],"members":{"type":{},"resource":{}}}}},"Sl":{"type":"structure","required":["type","image","computeType"],"members":{"type":{},"image":{},"computeType":{},"environmentVariables":{"shape":"So"},"privilegedMode":{"type":"boolean"}}},"So":{"type":"list","member":{"type":"structure","required":["name","value"],"members":{"name":{},"value":{}}}},"Sv":{"type":"list","member":{}},"Sy":{"type":"structure","members":{"name":{},"arn":{},"description":{},"source":{"shape":"Sg"},"artifacts":{"shape":"S11"},"environment":{"shape":"Sl"},"serviceRole":{},"timeoutInMinutes":{"type":"integer"},"encryptionKey":{},"tags":{"shape":"S16"},"created":{"type":"timestamp"},"lastModified":{"type":"timestamp"}}},"S11":{"type":"structure","required":["type"],"members":{"type":{},"location":{},"path":{},"namespaceType":{},"name":{},"packaging":{}}},"S16":{"type":"list","member":{"type":"structure","members":{"key":{},"value":{}}}}}}

/***/ }),
/* 108 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 109 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(110);
	    model.paginators = __webpack_require__(111).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CodeCommit;


/***/ }),
/* 110 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-04-13","endpointPrefix":"codecommit","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"CodeCommit","serviceFullName":"AWS CodeCommit","signatureVersion":"v4","targetPrefix":"CodeCommit_20150413","uid":"codecommit-2015-04-13"},"operations":{"BatchGetRepositories":{"input":{"type":"structure","required":["repositoryNames"],"members":{"repositoryNames":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"repositories":{"type":"list","member":{"shape":"S6"}},"repositoriesNotFound":{"type":"list","member":{}}}}},"CreateBranch":{"input":{"type":"structure","required":["repositoryName","branchName","commitId"],"members":{"repositoryName":{},"branchName":{},"commitId":{}}}},"CreateRepository":{"input":{"type":"structure","required":["repositoryName"],"members":{"repositoryName":{},"repositoryDescription":{}}},"output":{"type":"structure","members":{"repositoryMetadata":{"shape":"S6"}}}},"DeleteRepository":{"input":{"type":"structure","required":["repositoryName"],"members":{"repositoryName":{}}},"output":{"type":"structure","members":{"repositoryId":{}}}},"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":{"type":"structure","members":{"branchName":{},"commitId":{}}}}}},"GetCommit":{"input":{"type":"structure","required":["repositoryName","commitId"],"members":{"repositoryName":{},"commitId":{}}},"output":{"type":"structure","required":["commit"],"members":{"commit":{"type":"structure","members":{"treeId":{},"parents":{"type":"list","member":{}},"message":{},"author":{"shape":"Sz"},"committer":{"shape":"Sz"},"additionalData":{}}}}}},"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":"S1c"},"afterBlob":{"shape":"S1c"},"changeType":{}}}},"NextToken":{}}}},"GetRepository":{"input":{"type":"structure","required":["repositoryName"],"members":{"repositoryName":{}}},"output":{"type":"structure","members":{"repositoryMetadata":{"shape":"S6"}}}},"GetRepositoryTriggers":{"input":{"type":"structure","required":["repositoryName"],"members":{"repositoryName":{}}},"output":{"type":"structure","members":{"configurationId":{},"triggers":{"shape":"S1k"}}}},"ListBranches":{"input":{"type":"structure","required":["repositoryName"],"members":{"repositoryName":{},"nextToken":{}}},"output":{"type":"structure","members":{"branches":{"shape":"S1o"},"nextToken":{}}}},"ListRepositories":{"input":{"type":"structure","members":{"nextToken":{},"sortBy":{},"order":{}}},"output":{"type":"structure","members":{"repositories":{"type":"list","member":{"type":"structure","members":{"repositoryName":{},"repositoryId":{}}}},"nextToken":{}}}},"PutRepositoryTriggers":{"input":{"type":"structure","required":["repositoryName","triggers"],"members":{"repositoryName":{},"triggers":{"shape":"S1k"}}},"output":{"type":"structure","members":{"configurationId":{}}}},"TestRepositoryTriggers":{"input":{"type":"structure","required":["repositoryName","triggers"],"members":{"repositoryName":{},"triggers":{"shape":"S1k"}}},"output":{"type":"structure","members":{"successfulExecutions":{"type":"list","member":{}},"failedExecutions":{"type":"list","member":{"type":"structure","members":{"trigger":{},"failureMessage":{}}}}}}},"UpdateDefaultBranch":{"input":{"type":"structure","required":["repositoryName","defaultBranchName"],"members":{"repositoryName":{},"defaultBranchName":{}}}},"UpdateRepositoryDescription":{"input":{"type":"structure","required":["repositoryName"],"members":{"repositoryName":{},"repositoryDescription":{}}}},"UpdateRepositoryName":{"input":{"type":"structure","required":["oldName","newName"],"members":{"oldName":{},"newName":{}}}}},"shapes":{"S6":{"type":"structure","members":{"accountId":{},"repositoryId":{},"repositoryName":{},"repositoryDescription":{},"defaultBranch":{},"lastModifiedDate":{"type":"timestamp"},"creationDate":{"type":"timestamp"},"cloneUrlHttp":{},"cloneUrlSsh":{},"Arn":{}}},"Sz":{"type":"structure","members":{"name":{},"email":{},"date":{}}},"S1c":{"type":"structure","members":{"blobId":{},"path":{},"mode":{}}},"S1k":{"type":"list","member":{"type":"structure","required":["name","destinationArn","events"],"members":{"name":{},"destinationArn":{},"customData":{},"branches":{"shape":"S1o"},"events":{"type":"list","member":{}}}}},"S1o":{"type":"list","member":{}}}}

/***/ }),
/* 111 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"GetDifferences":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken"},"ListBranches":{"input_token":"nextToken","output_token":"nextToken","result_key":"branches"},"ListRepositories":{"input_token":"nextToken","output_token":"nextToken","result_key":"repositories"}}}

/***/ }),
/* 112 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(113);
	    model.paginators = __webpack_require__(114).pagination;
	    model.waiters = __webpack_require__(115).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CodeDeploy;


/***/ }),
/* 113 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-10-06","endpointPrefix":"codedeploy","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"CodeDeploy","serviceFullName":"AWS CodeDeploy","signatureVersion":"v4","targetPrefix":"CodeDeploy_20141006","timestampFormat":"unixTimestamp","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":"Sq"}}}}}}},"BatchGetApplications":{"input":{"type":"structure","members":{"applicationNames":{"shape":"Sw"}}},"output":{"type":"structure","members":{"applicationsInfo":{"type":"list","member":{"shape":"Sz"}}}}},"BatchGetDeploymentGroups":{"input":{"type":"structure","required":["applicationName","deploymentGroupNames"],"members":{"applicationName":{},"deploymentGroupNames":{"shape":"Ss"}}},"output":{"type":"structure","members":{"deploymentGroupsInfo":{"type":"list","member":{"shape":"S16"}},"errorMessage":{}}}},"BatchGetDeploymentInstances":{"input":{"type":"structure","required":["deploymentId","instanceIds"],"members":{"deploymentId":{},"instanceIds":{"shape":"S2g"}}},"output":{"type":"structure","members":{"instancesSummary":{"type":"list","member":{"shape":"S2k"}},"errorMessage":{}}}},"BatchGetDeployments":{"input":{"type":"structure","members":{"deploymentIds":{"shape":"S2x"}}},"output":{"type":"structure","members":{"deploymentsInfo":{"type":"list","member":{"shape":"S30"}}}}},"BatchGetOnPremisesInstances":{"input":{"type":"structure","members":{"instanceNames":{"shape":"S6"}}},"output":{"type":"structure","members":{"instanceInfos":{"type":"list","member":{"shape":"S3e"}}}}},"ContinueDeployment":{"input":{"type":"structure","members":{"deploymentId":{}}}},"CreateApplication":{"input":{"type":"structure","required":["applicationName"],"members":{"applicationName":{}}},"output":{"type":"structure","members":{"applicationId":{}}}},"CreateDeployment":{"input":{"type":"structure","required":["applicationName"],"members":{"applicationName":{},"deploymentGroupName":{},"revision":{"shape":"Sb"},"deploymentConfigName":{},"description":{},"ignoreApplicationStopFailures":{"type":"boolean"},"targetInstances":{"shape":"S37"},"autoRollbackConfiguration":{"shape":"S1u"},"updateOutdatedInstancesOnly":{"type":"boolean"},"fileExistsBehavior":{}}},"output":{"type":"structure","members":{"deploymentId":{}}}},"CreateDeploymentConfig":{"input":{"type":"structure","required":["deploymentConfigName"],"members":{"deploymentConfigName":{},"minimumHealthyHosts":{"shape":"S3o"}}},"output":{"type":"structure","members":{"deploymentConfigId":{}}}},"CreateDeploymentGroup":{"input":{"type":"structure","required":["applicationName","deploymentGroupName","serviceRoleArn"],"members":{"applicationName":{},"deploymentGroupName":{},"deploymentConfigName":{},"ec2TagFilters":{"shape":"S19"},"onPremisesInstanceTagFilters":{"shape":"S1c"},"autoScalingGroups":{"shape":"S38"},"serviceRoleArn":{},"triggerConfigurations":{"shape":"S1k"},"alarmConfiguration":{"shape":"S1q"},"autoRollbackConfiguration":{"shape":"S1u"},"deploymentStyle":{"shape":"S1x"},"blueGreenDeploymentConfiguration":{"shape":"S20"},"loadBalancerInfo":{"shape":"S28"}}},"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":"S1f"}}}},"DeregisterOnPremisesInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}}},"GetApplication":{"input":{"type":"structure","required":["applicationName"],"members":{"applicationName":{}}},"output":{"type":"structure","members":{"application":{"shape":"Sz"}}}},"GetApplicationRevision":{"input":{"type":"structure","required":["applicationName","revision"],"members":{"applicationName":{},"revision":{"shape":"Sb"}}},"output":{"type":"structure","members":{"applicationName":{},"revision":{"shape":"Sb"},"revisionInfo":{"shape":"Sq"}}}},"GetDeployment":{"input":{"type":"structure","required":["deploymentId"],"members":{"deploymentId":{}}},"output":{"type":"structure","members":{"deploymentInfo":{"shape":"S30"}}}},"GetDeploymentConfig":{"input":{"type":"structure","required":["deploymentConfigName"],"members":{"deploymentConfigName":{}}},"output":{"type":"structure","members":{"deploymentConfigInfo":{"type":"structure","members":{"deploymentConfigId":{},"deploymentConfigName":{},"minimumHealthyHosts":{"shape":"S3o"},"createTime":{"type":"timestamp"}}}}}},"GetDeploymentGroup":{"input":{"type":"structure","required":["applicationName","deploymentGroupName"],"members":{"applicationName":{},"deploymentGroupName":{}}},"output":{"type":"structure","members":{"deploymentGroupInfo":{"shape":"S16"}}}},"GetDeploymentInstance":{"input":{"type":"structure","required":["deploymentId","instanceId"],"members":{"deploymentId":{},"instanceId":{}}},"output":{"type":"structure","members":{"instanceSummary":{"shape":"S2k"}}}},"GetOnPremisesInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"output":{"type":"structure","members":{"instanceInfo":{"shape":"S3e"}}}},"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":"Sw"},"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":"Ss"},"nextToken":{}}}},"ListDeploymentInstances":{"input":{"type":"structure","required":["deploymentId"],"members":{"deploymentId":{},"nextToken":{},"instanceStatusFilter":{"type":"list","member":{}},"instanceTypeFilter":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"instancesList":{"shape":"S2g"},"nextToken":{}}}},"ListDeployments":{"input":{"type":"structure","members":{"applicationName":{},"deploymentGroupName":{},"includeOnlyStatuses":{"type":"list","member":{}},"createTimeRange":{"type":"structure","members":{"start":{"type":"timestamp"},"end":{"type":"timestamp"}}},"nextToken":{}}},"output":{"type":"structure","members":{"deployments":{"shape":"S2x"},"nextToken":{}}}},"ListGitHubAccountTokenNames":{"input":{"type":"structure","members":{"nextToken":{}}},"output":{"type":"structure","members":{"tokenNameList":{"type":"list","member":{}},"nextToken":{}}}},"ListOnPremisesInstances":{"input":{"type":"structure","members":{"registrationStatus":{},"tagFilters":{"shape":"S1c"},"nextToken":{}}},"output":{"type":"structure","members":{"instanceNames":{"shape":"S6"},"nextToken":{}}}},"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":{}}}},"StopDeployment":{"input":{"type":"structure","required":["deploymentId"],"members":{"deploymentId":{},"autoRollbackEnabled":{"type":"boolean"}}},"output":{"type":"structure","members":{"status":{},"statusMessage":{}}}},"UpdateApplication":{"input":{"type":"structure","members":{"applicationName":{},"newApplicationName":{}}}},"UpdateDeploymentGroup":{"input":{"type":"structure","required":["applicationName","currentDeploymentGroupName"],"members":{"applicationName":{},"currentDeploymentGroupName":{},"newDeploymentGroupName":{},"deploymentConfigName":{},"ec2TagFilters":{"shape":"S19"},"onPremisesInstanceTagFilters":{"shape":"S1c"},"autoScalingGroups":{"shape":"S38"},"serviceRoleArn":{},"triggerConfigurations":{"shape":"S1k"},"alarmConfiguration":{"shape":"S1q"},"autoRollbackConfiguration":{"shape":"S1u"},"deploymentStyle":{"shape":"S1x"},"blueGreenDeploymentConfiguration":{"shape":"S20"},"loadBalancerInfo":{"shape":"S28"}}},"output":{"type":"structure","members":{"hooksNotCleanedUp":{"shape":"S1f"}}}}},"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":{}}}}},"Sq":{"type":"structure","members":{"description":{},"deploymentGroups":{"shape":"Ss"},"firstUsedTime":{"type":"timestamp"},"lastUsedTime":{"type":"timestamp"},"registerTime":{"type":"timestamp"}}},"Ss":{"type":"list","member":{}},"Sw":{"type":"list","member":{}},"Sz":{"type":"structure","members":{"applicationId":{},"applicationName":{},"createTime":{"type":"timestamp"},"linkedToGitHub":{"type":"boolean"},"gitHubAccountName":{}}},"S16":{"type":"structure","members":{"applicationName":{},"deploymentGroupId":{},"deploymentGroupName":{},"deploymentConfigName":{},"ec2TagFilters":{"shape":"S19"},"onPremisesInstanceTagFilters":{"shape":"S1c"},"autoScalingGroups":{"shape":"S1f"},"serviceRoleArn":{},"targetRevision":{"shape":"Sb"},"triggerConfigurations":{"shape":"S1k"},"alarmConfiguration":{"shape":"S1q"},"autoRollbackConfiguration":{"shape":"S1u"},"deploymentStyle":{"shape":"S1x"},"blueGreenDeploymentConfiguration":{"shape":"S20"},"loadBalancerInfo":{"shape":"S28"},"lastSuccessfulDeployment":{"shape":"S2c"},"lastAttemptedDeployment":{"shape":"S2c"}}},"S19":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{},"Type":{}}}},"S1c":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{},"Type":{}}}},"S1f":{"type":"list","member":{"type":"structure","members":{"name":{},"hook":{}}}},"S1k":{"type":"list","member":{"type":"structure","members":{"triggerName":{},"triggerTargetArn":{},"triggerEvents":{"type":"list","member":{}}}}},"S1q":{"type":"structure","members":{"enabled":{"type":"boolean"},"ignorePollAlarmFailure":{"type":"boolean"},"alarms":{"type":"list","member":{"type":"structure","members":{"name":{}}}}}},"S1u":{"type":"structure","members":{"enabled":{"type":"boolean"},"events":{"type":"list","member":{}}}},"S1x":{"type":"structure","members":{"deploymentType":{},"deploymentOption":{}}},"S20":{"type":"structure","members":{"terminateBlueInstancesOnDeploymentSuccess":{"type":"structure","members":{"action":{},"terminationWaitTimeInMinutes":{"type":"integer"}}},"deploymentReadyOption":{"type":"structure","members":{"actionOnTimeout":{},"waitTimeInMinutes":{"type":"integer"}}},"greenFleetProvisioningOption":{"type":"structure","members":{"action":{}}}}},"S28":{"type":"structure","members":{"elbInfoList":{"type":"list","member":{"type":"structure","members":{"name":{}}}}}},"S2c":{"type":"structure","members":{"deploymentId":{},"status":{},"endTime":{"type":"timestamp"},"createTime":{"type":"timestamp"}}},"S2g":{"type":"list","member":{}},"S2k":{"type":"structure","members":{"deploymentId":{},"instanceId":{},"status":{},"lastUpdatedAt":{"type":"timestamp"},"lifecycleEvents":{"type":"list","member":{"type":"structure","members":{"lifecycleEventName":{},"diagnostics":{"type":"structure","members":{"errorCode":{},"scriptName":{},"message":{},"logTail":{}}},"startTime":{"type":"timestamp"},"endTime":{"type":"timestamp"},"status":{}}}},"instanceType":{}}},"S2x":{"type":"list","member":{}},"S30":{"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":"S1u"},"updateOutdatedInstancesOnly":{"type":"boolean"},"rollbackInfo":{"type":"structure","members":{"rollbackDeploymentId":{},"rollbackTriggeringDeploymentId":{},"rollbackMessage":{}}},"deploymentStyle":{"shape":"S1x"},"targetInstances":{"shape":"S37"},"instanceTerminationWaitTimeStarted":{"type":"boolean"},"blueGreenDeploymentConfiguration":{"shape":"S20"},"loadBalancerInfo":{"shape":"S28"},"additionalDeploymentStatusInfo":{},"fileExistsBehavior":{}}},"S37":{"type":"structure","members":{"tagFilters":{"shape":"S19"},"autoScalingGroups":{"shape":"S38"}}},"S38":{"type":"list","member":{}},"S3e":{"type":"structure","members":{"instanceName":{},"iamSessionArn":{},"iamUserArn":{},"instanceArn":{},"registerTime":{"type":"timestamp"},"deregisterTime":{"type":"timestamp"},"tags":{"shape":"S2"}}},"S3o":{"type":"structure","members":{"value":{"type":"integer"},"type":{}}}}}

/***/ }),
/* 114 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 115 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 116 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(117);
	    model.paginators = __webpack_require__(118).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CodePipeline;


/***/ }),
/* 117 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-07-09","endpointPrefix":"codepipeline","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"CodePipeline","serviceFullName":"AWS 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"}}},"output":{"type":"structure","required":["actionType"],"members":{"actionType":{"shape":"Sr"}}}},"CreatePipeline":{"input":{"type":"structure","required":["pipeline"],"members":{"pipeline":{"shape":"Sv"}}},"output":{"type":"structure","members":{"pipeline":{"shape":"Sv"}}}},"DeleteCustomActionType":{"input":{"type":"structure","required":["category","provider","version"],"members":{"category":{},"provider":{},"version":{}}}},"DeletePipeline":{"input":{"type":"structure","required":["name"],"members":{"name":{}}}},"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":{}}}},"GetJobDetails":{"input":{"type":"structure","required":["jobId"],"members":{"jobId":{}}},"output":{"type":"structure","members":{"jobDetails":{"type":"structure","members":{"id":{},"data":{"shape":"S1x"},"accountId":{}}}}}},"GetPipeline":{"input":{"type":"structure","required":["name"],"members":{"name":{},"version":{"type":"integer"}}},"output":{"type":"structure","members":{"pipeline":{"shape":"Sv"}}}},"GetPipelineExecution":{"input":{"type":"structure","required":["pipelineName","pipelineExecutionId"],"members":{"pipelineName":{},"pipelineExecutionId":{}}},"output":{"type":"structure","members":{"pipelineExecution":{"type":"structure","members":{"pipelineName":{},"pipelineVersion":{"type":"integer"},"pipelineExecutionId":{},"status":{},"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":{},"inboundTransitionState":{"type":"structure","members":{"enabled":{"type":"boolean"},"lastChangedBy":{},"lastChangedAt":{"type":"timestamp"},"disabledReason":{}}},"actionStates":{"type":"list","member":{"type":"structure","members":{"actionName":{},"currentRevision":{"shape":"S32"},"latestExecution":{"type":"structure","members":{"status":{},"summary":{},"lastStatusChange":{"type":"timestamp"},"token":{},"lastUpdatedBy":{},"externalExecutionId":{},"externalExecutionUrl":{},"percentComplete":{"type":"integer"},"errorDetails":{"type":"structure","members":{"code":{},"message":{}}}}},"entityUrl":{},"revisionUrl":{}}}},"latestExecution":{"type":"structure","required":["pipelineExecutionId","status"],"members":{"pipelineExecutionId":{},"status":{}}}}}},"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":"Ss"},"actionConfiguration":{"shape":"S1y"},"pipelineContext":{"shape":"S1z"},"inputArtifacts":{"shape":"S22"},"outputArtifacts":{"shape":"S22"},"artifactCredentials":{"shape":"S2a"},"continuationToken":{},"encryptionKey":{"shape":"S11"}}},"nonce":{}}}}}},"ListActionTypes":{"input":{"type":"structure","members":{"actionOwnerFilter":{},"nextToken":{}}},"output":{"type":"structure","required":["actionTypes"],"members":{"actionTypes":{"type":"list","member":{"shape":"Sr"}},"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"}}}},"nextToken":{}}}},"ListPipelines":{"input":{"type":"structure","members":{"nextToken":{}}},"output":{"type":"structure","members":{"pipelines":{"type":"list","member":{"type":"structure","members":{"name":{},"version":{"type":"integer"},"created":{"type":"timestamp"},"updated":{"type":"timestamp"}}}},"nextToken":{}}}},"PollForJobs":{"input":{"type":"structure","required":["actionTypeId"],"members":{"actionTypeId":{"shape":"Ss"},"maxBatchSize":{"type":"integer"},"queryParam":{"type":"map","key":{},"value":{}}}},"output":{"type":"structure","members":{"jobs":{"type":"list","member":{"type":"structure","members":{"id":{},"data":{"shape":"S1x"},"nonce":{},"accountId":{}}}}}}},"PollForThirdPartyJobs":{"input":{"type":"structure","required":["actionTypeId"],"members":{"actionTypeId":{"shape":"Ss"},"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":"S32"}}},"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":"S4h"}}}},"PutJobSuccessResult":{"input":{"type":"structure","required":["jobId"],"members":{"jobId":{},"currentRevision":{"shape":"S4k"},"continuationToken":{},"executionDetails":{"shape":"S4m"}}}},"PutThirdPartyJobFailureResult":{"input":{"type":"structure","required":["jobId","clientToken","failureDetails"],"members":{"jobId":{},"clientToken":{},"failureDetails":{"shape":"S4h"}}}},"PutThirdPartyJobSuccessResult":{"input":{"type":"structure","required":["jobId","clientToken"],"members":{"jobId":{},"clientToken":{},"currentRevision":{"shape":"S4k"},"continuationToken":{},"executionDetails":{"shape":"S4m"}}}},"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":{}}},"output":{"type":"structure","members":{"pipelineExecutionId":{}}}},"UpdatePipeline":{"input":{"type":"structure","required":["pipeline"],"members":{"pipeline":{"shape":"Sv"}}},"output":{"type":"structure","members":{"pipeline":{"shape":"Sv"}}}}},"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"}}},"Sr":{"type":"structure","required":["id","inputArtifactDetails","outputArtifactDetails"],"members":{"id":{"shape":"Ss"},"settings":{"shape":"Se"},"actionConfigurationProperties":{"shape":"Sh"},"inputArtifactDetails":{"shape":"Sn"},"outputArtifactDetails":{"shape":"Sn"}}},"Ss":{"type":"structure","required":["category","owner","provider","version"],"members":{"category":{},"owner":{},"provider":{},"version":{}}},"Sv":{"type":"structure","required":["name","roleArn","artifactStore","stages"],"members":{"name":{},"roleArn":{},"artifactStore":{"type":"structure","required":["type","location"],"members":{"type":{},"location":{},"encryptionKey":{"shape":"S11"}}},"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":"Ss"},"runOrder":{"type":"integer"},"configuration":{"shape":"S1f"},"outputArtifacts":{"type":"list","member":{"type":"structure","required":["name"],"members":{"name":{}}}},"inputArtifacts":{"type":"list","member":{"type":"structure","required":["name"],"members":{"name":{}}}},"roleArn":{}}}}}}},"version":{"type":"integer"}}},"S11":{"type":"structure","required":["id","type"],"members":{"id":{},"type":{}}},"S1f":{"type":"map","key":{},"value":{}},"S1x":{"type":"structure","members":{"actionTypeId":{"shape":"Ss"},"actionConfiguration":{"shape":"S1y"},"pipelineContext":{"shape":"S1z"},"inputArtifacts":{"shape":"S22"},"outputArtifacts":{"shape":"S22"},"artifactCredentials":{"shape":"S2a"},"continuationToken":{},"encryptionKey":{"shape":"S11"}}},"S1y":{"type":"structure","members":{"configuration":{"shape":"S1f"}}},"S1z":{"type":"structure","members":{"pipelineName":{},"stage":{"type":"structure","members":{"name":{}}},"action":{"type":"structure","members":{"name":{}}}}},"S22":{"type":"list","member":{"type":"structure","members":{"name":{},"revision":{},"location":{"type":"structure","members":{"type":{},"s3Location":{"type":"structure","required":["bucketName","objectKey"],"members":{"bucketName":{},"objectKey":{}}}}}}}},"S2a":{"type":"structure","required":["accessKeyId","secretAccessKey","sessionToken"],"members":{"accessKeyId":{},"secretAccessKey":{},"sessionToken":{}},"sensitive":true},"S32":{"type":"structure","required":["revisionId","revisionChangeId","created"],"members":{"revisionId":{},"revisionChangeId":{},"created":{"type":"timestamp"}}},"S4h":{"type":"structure","required":["type","message"],"members":{"type":{},"message":{},"externalExecutionId":{}}},"S4k":{"type":"structure","required":["revision","changeIdentifier"],"members":{"revision":{},"changeIdentifier":{},"created":{"type":"timestamp"},"revisionSummary":{}}},"S4m":{"type":"structure","members":{"summary":{},"externalExecutionId":{},"percentComplete":{"type":"integer"}}}}}

/***/ }),
/* 118 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 119 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(120);
	    model.paginators = __webpack_require__(121).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CognitoIdentityServiceProvider;


/***/ }),
/* 120 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-04-18","endpointPrefix":"cognito-idp","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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"}}},"output":{"type":"structure","members":{}}},"AdminCreateUser":{"input":{"type":"structure","required":["UserPoolId","Username"],"members":{"UserPoolId":{},"Username":{"shape":"Sd"},"UserAttributes":{"shape":"Si"},"ValidationData":{"shape":"Si"},"TemporaryPassword":{"shape":"Sm"},"ForceAliasCreation":{"type":"boolean"},"MessageAction":{},"DesiredDeliveryMediums":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"User":{"shape":"Ss"}}}},"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":"Sz"}}},"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":"S19"}}}},"AdminGetUser":{"input":{"type":"structure","required":["UserPoolId","Username"],"members":{"UserPoolId":{},"Username":{"shape":"Sd"}}},"output":{"type":"structure","required":["Username"],"members":{"Username":{"shape":"Sd"},"UserAttributes":{"shape":"Si"},"UserCreateDate":{"type":"timestamp"},"UserLastModifiedDate":{"type":"timestamp"},"Enabled":{"type":"boolean"},"UserStatus":{},"MFAOptions":{"shape":"Sv"}}}},"AdminInitiateAuth":{"input":{"type":"structure","required":["UserPoolId","ClientId","AuthFlow"],"members":{"UserPoolId":{},"ClientId":{"shape":"S1d"},"AuthFlow":{},"AuthParameters":{"shape":"S1f"},"ClientMetadata":{"shape":"S1g"}}},"output":{"type":"structure","members":{"ChallengeName":{},"Session":{},"ChallengeParameters":{"shape":"S1k"},"AuthenticationResult":{"shape":"S1l"}}}},"AdminListDevices":{"input":{"type":"structure","required":["UserPoolId","Username"],"members":{"UserPoolId":{},"Username":{"shape":"Sd"},"Limit":{"type":"integer"},"PaginationToken":{}}},"output":{"type":"structure","members":{"Devices":{"shape":"S1t"},"PaginationToken":{}}}},"AdminListGroupsForUser":{"input":{"type":"structure","required":["Username","UserPoolId"],"members":{"Username":{"shape":"Sd"},"UserPoolId":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Groups":{"shape":"S1x"},"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"}}},"output":{"type":"structure","members":{}}},"AdminRespondToAuthChallenge":{"input":{"type":"structure","required":["UserPoolId","ClientId","ChallengeName"],"members":{"UserPoolId":{},"ClientId":{"shape":"S1d"},"ChallengeName":{},"ChallengeResponses":{"shape":"S26"},"Session":{}}},"output":{"type":"structure","members":{"ChallengeName":{},"Session":{},"ChallengeParameters":{"shape":"S1k"},"AuthenticationResult":{"shape":"S1l"}}}},"AdminSetUserSettings":{"input":{"type":"structure","required":["UserPoolId","Username","MFAOptions"],"members":{"UserPoolId":{},"Username":{"shape":"Sd"},"MFAOptions":{"shape":"Sv"}}},"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":"Si"}}},"output":{"type":"structure","members":{}}},"AdminUserGlobalSignOut":{"input":{"type":"structure","required":["UserPoolId","Username"],"members":{"UserPoolId":{},"Username":{"shape":"Sd"}}},"output":{"type":"structure","members":{}}},"ChangePassword":{"input":{"type":"structure","required":["PreviousPassword","ProposedPassword","AccessToken"],"members":{"PreviousPassword":{"shape":"Sm"},"ProposedPassword":{"shape":"Sm"},"AccessToken":{"shape":"S1m"}}},"output":{"type":"structure","members":{}},"authtype":"none"},"ConfirmDevice":{"input":{"type":"structure","required":["AccessToken","DeviceKey"],"members":{"AccessToken":{"shape":"S1m"},"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":"S1d"},"SecretHash":{"shape":"S2o"},"Username":{"shape":"Sd"},"ConfirmationCode":{},"Password":{"shape":"Sm"}}},"output":{"type":"structure","members":{}},"authtype":"none"},"ConfirmSignUp":{"input":{"type":"structure","required":["ClientId","Username","ConfirmationCode"],"members":{"ClientId":{"shape":"S1d"},"SecretHash":{"shape":"S2o"},"Username":{"shape":"Sd"},"ConfirmationCode":{},"ForceAliasCreation":{"type":"boolean"}}},"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":"S1y"}}}},"CreateIdentityProvider":{"input":{"type":"structure","required":["UserPoolId","ProviderName","ProviderType","ProviderDetails"],"members":{"UserPoolId":{},"ProviderName":{},"ProviderType":{},"ProviderDetails":{"shape":"S2y"},"AttributeMapping":{"shape":"S2z"},"IdpIdentifiers":{"shape":"S30"}}},"output":{"type":"structure","required":["IdentityProvider"],"members":{"IdentityProvider":{"shape":"S33"}}}},"CreateUserImportJob":{"input":{"type":"structure","required":["JobName","UserPoolId","CloudWatchLogsRoleArn"],"members":{"JobName":{},"UserPoolId":{},"CloudWatchLogsRoleArn":{}}},"output":{"type":"structure","members":{"UserImportJob":{"shape":"S37"}}}},"CreateUserPool":{"input":{"type":"structure","required":["PoolName"],"members":{"PoolName":{},"Policies":{"shape":"S3f"},"LambdaConfig":{"shape":"S3i"},"AutoVerifiedAttributes":{"shape":"S3j"},"AliasAttributes":{"shape":"S3l"},"UsernameAttributes":{"shape":"S3n"},"SmsVerificationMessage":{},"EmailVerificationMessage":{},"EmailVerificationSubject":{},"SmsAuthenticationMessage":{},"MfaConfiguration":{},"DeviceConfiguration":{"shape":"S3t"},"EmailConfiguration":{"shape":"S3u"},"SmsConfiguration":{"shape":"S3w"},"UserPoolTags":{"shape":"S3x"},"AdminCreateUserConfig":{"shape":"S3y"},"Schema":{"shape":"S41"}}},"output":{"type":"structure","members":{"UserPool":{"shape":"S43"}}}},"CreateUserPoolClient":{"input":{"type":"structure","required":["UserPoolId","ClientName"],"members":{"UserPoolId":{},"ClientName":{},"GenerateSecret":{"type":"boolean"},"RefreshTokenValidity":{"type":"integer"},"ReadAttributes":{"shape":"S49"},"WriteAttributes":{"shape":"S49"},"ExplicitAuthFlows":{"shape":"S4b"},"SupportedIdentityProviders":{"shape":"S4d"},"CallbackURLs":{"shape":"S4e"},"LogoutURLs":{"shape":"S4g"},"DefaultRedirectURI":{},"AllowedOAuthFlows":{"shape":"S4h"},"AllowedOAuthScopes":{"shape":"S4j"},"AllowedOAuthFlowsUserPoolClient":{"type":"boolean"}}},"output":{"type":"structure","members":{"UserPoolClient":{"shape":"S4m"}}}},"CreateUserPoolDomain":{"input":{"type":"structure","required":["Domain","UserPoolId"],"members":{"Domain":{},"UserPoolId":{}}},"output":{"type":"structure","members":{}}},"DeleteGroup":{"input":{"type":"structure","required":["GroupName","UserPoolId"],"members":{"GroupName":{},"UserPoolId":{}}}},"DeleteIdentityProvider":{"input":{"type":"structure","required":["UserPoolId","ProviderName"],"members":{"UserPoolId":{},"ProviderName":{}}}},"DeleteUser":{"input":{"type":"structure","required":["AccessToken"],"members":{"AccessToken":{"shape":"S1m"}}},"authtype":"none"},"DeleteUserAttributes":{"input":{"type":"structure","required":["UserAttributeNames","AccessToken"],"members":{"UserAttributeNames":{"shape":"Sz"},"AccessToken":{"shape":"S1m"}}},"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":"S1d"}}}},"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":"S33"}}}},"DescribeUserImportJob":{"input":{"type":"structure","required":["UserPoolId","JobId"],"members":{"UserPoolId":{},"JobId":{}}},"output":{"type":"structure","members":{"UserImportJob":{"shape":"S37"}}}},"DescribeUserPool":{"input":{"type":"structure","required":["UserPoolId"],"members":{"UserPoolId":{}}},"output":{"type":"structure","members":{"UserPool":{"shape":"S43"}}}},"DescribeUserPoolClient":{"input":{"type":"structure","required":["UserPoolId","ClientId"],"members":{"UserPoolId":{},"ClientId":{"shape":"S1d"}}},"output":{"type":"structure","members":{"UserPoolClient":{"shape":"S4m"}}}},"DescribeUserPoolDomain":{"input":{"type":"structure","required":["Domain"],"members":{"Domain":{}}},"output":{"type":"structure","members":{"DomainDescription":{"type":"structure","members":{"UserPoolId":{},"AWSAccountId":{},"Domain":{},"S3Bucket":{},"CloudFrontDistribution":{},"Version":{},"Status":{}}}}}},"ForgetDevice":{"input":{"type":"structure","required":["DeviceKey"],"members":{"AccessToken":{"shape":"S1m"},"DeviceKey":{}}}},"ForgotPassword":{"input":{"type":"structure","required":["ClientId","Username"],"members":{"ClientId":{"shape":"S1d"},"SecretHash":{"shape":"S2o"},"Username":{"shape":"Sd"}}},"output":{"type":"structure","members":{"CodeDeliveryDetails":{"shape":"S5i"}}},"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":"S1m"}}},"output":{"type":"structure","required":["Device"],"members":{"Device":{"shape":"S19"}}}},"GetGroup":{"input":{"type":"structure","required":["GroupName","UserPoolId"],"members":{"GroupName":{},"UserPoolId":{}}},"output":{"type":"structure","members":{"Group":{"shape":"S1y"}}}},"GetIdentityProviderByIdentifier":{"input":{"type":"structure","required":["UserPoolId","IdpIdentifier"],"members":{"UserPoolId":{},"IdpIdentifier":{}}},"output":{"type":"structure","required":["IdentityProvider"],"members":{"IdentityProvider":{"shape":"S33"}}}},"GetUser":{"input":{"type":"structure","required":["AccessToken"],"members":{"AccessToken":{"shape":"S1m"}}},"output":{"type":"structure","required":["Username","UserAttributes"],"members":{"Username":{"shape":"Sd"},"UserAttributes":{"shape":"Si"},"MFAOptions":{"shape":"Sv"}}},"authtype":"none"},"GetUserAttributeVerificationCode":{"input":{"type":"structure","required":["AccessToken","AttributeName"],"members":{"AccessToken":{"shape":"S1m"},"AttributeName":{}}},"output":{"type":"structure","members":{"CodeDeliveryDetails":{"shape":"S5i"}}},"authtype":"none"},"GlobalSignOut":{"input":{"type":"structure","required":["AccessToken"],"members":{"AccessToken":{"shape":"S1m"}}},"output":{"type":"structure","members":{}}},"InitiateAuth":{"input":{"type":"structure","required":["AuthFlow","ClientId"],"members":{"AuthFlow":{},"AuthParameters":{"shape":"S1f"},"ClientMetadata":{"shape":"S1g"},"ClientId":{"shape":"S1d"}}},"output":{"type":"structure","members":{"ChallengeName":{},"Session":{},"ChallengeParameters":{"shape":"S1k"},"AuthenticationResult":{"shape":"S1l"}}}},"ListDevices":{"input":{"type":"structure","required":["AccessToken"],"members":{"AccessToken":{"shape":"S1m"},"Limit":{"type":"integer"},"PaginationToken":{}}},"output":{"type":"structure","members":{"Devices":{"shape":"S1t"},"PaginationToken":{}}}},"ListGroups":{"input":{"type":"structure","required":["UserPoolId"],"members":{"UserPoolId":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Groups":{"shape":"S1x"},"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":{}}}},"ListUserImportJobs":{"input":{"type":"structure","required":["UserPoolId","MaxResults"],"members":{"UserPoolId":{},"MaxResults":{"type":"integer"},"PaginationToken":{}}},"output":{"type":"structure","members":{"UserImportJobs":{"type":"list","member":{"shape":"S37"}},"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":"S1d"},"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":"S3i"},"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":"S6r"},"PaginationToken":{}}}},"ListUsersInGroup":{"input":{"type":"structure","required":["UserPoolId","GroupName"],"members":{"UserPoolId":{},"GroupName":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Users":{"shape":"S6r"},"NextToken":{}}}},"ResendConfirmationCode":{"input":{"type":"structure","required":["ClientId","Username"],"members":{"ClientId":{"shape":"S1d"},"SecretHash":{"shape":"S2o"},"Username":{"shape":"Sd"}}},"output":{"type":"structure","members":{"CodeDeliveryDetails":{"shape":"S5i"}}},"authtype":"none"},"RespondToAuthChallenge":{"input":{"type":"structure","required":["ClientId","ChallengeName"],"members":{"ClientId":{"shape":"S1d"},"ChallengeName":{},"Session":{},"ChallengeResponses":{"shape":"S26"}}},"output":{"type":"structure","members":{"ChallengeName":{},"Session":{},"ChallengeParameters":{"shape":"S1k"},"AuthenticationResult":{"shape":"S1l"}}}},"SetUserSettings":{"input":{"type":"structure","required":["AccessToken","MFAOptions"],"members":{"AccessToken":{"shape":"S1m"},"MFAOptions":{"shape":"Sv"}}},"output":{"type":"structure","members":{}},"authtype":"none"},"SignUp":{"input":{"type":"structure","required":["ClientId","Username","Password"],"members":{"ClientId":{"shape":"S1d"},"SecretHash":{"shape":"S2o"},"Username":{"shape":"Sd"},"Password":{"shape":"Sm"},"UserAttributes":{"shape":"Si"},"ValidationData":{"shape":"Si"}}},"output":{"type":"structure","required":["UserConfirmed","UserSub"],"members":{"UserConfirmed":{"type":"boolean"},"CodeDeliveryDetails":{"shape":"S5i"},"UserSub":{}}},"authtype":"none"},"StartUserImportJob":{"input":{"type":"structure","required":["UserPoolId","JobId"],"members":{"UserPoolId":{},"JobId":{}}},"output":{"type":"structure","members":{"UserImportJob":{"shape":"S37"}}}},"StopUserImportJob":{"input":{"type":"structure","required":["UserPoolId","JobId"],"members":{"UserPoolId":{},"JobId":{}}},"output":{"type":"structure","members":{"UserImportJob":{"shape":"S37"}}}},"UpdateDeviceStatus":{"input":{"type":"structure","required":["AccessToken","DeviceKey"],"members":{"AccessToken":{"shape":"S1m"},"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":"S1y"}}}},"UpdateIdentityProvider":{"input":{"type":"structure","required":["UserPoolId","ProviderName"],"members":{"UserPoolId":{},"ProviderName":{},"ProviderDetails":{"shape":"S2y"},"AttributeMapping":{"shape":"S2z"},"IdpIdentifiers":{"shape":"S30"}}},"output":{"type":"structure","required":["IdentityProvider"],"members":{"IdentityProvider":{"shape":"S33"}}}},"UpdateUserAttributes":{"input":{"type":"structure","required":["UserAttributes","AccessToken"],"members":{"UserAttributes":{"shape":"Si"},"AccessToken":{"shape":"S1m"}}},"output":{"type":"structure","members":{"CodeDeliveryDetailsList":{"type":"list","member":{"shape":"S5i"}}}},"authtype":"none"},"UpdateUserPool":{"input":{"type":"structure","required":["UserPoolId"],"members":{"UserPoolId":{},"Policies":{"shape":"S3f"},"LambdaConfig":{"shape":"S3i"},"AutoVerifiedAttributes":{"shape":"S3j"},"SmsVerificationMessage":{},"EmailVerificationMessage":{},"EmailVerificationSubject":{},"SmsAuthenticationMessage":{},"MfaConfiguration":{},"DeviceConfiguration":{"shape":"S3t"},"EmailConfiguration":{"shape":"S3u"},"SmsConfiguration":{"shape":"S3w"},"UserPoolTags":{"shape":"S3x"},"AdminCreateUserConfig":{"shape":"S3y"}}},"output":{"type":"structure","members":{}}},"UpdateUserPoolClient":{"input":{"type":"structure","required":["UserPoolId","ClientId"],"members":{"UserPoolId":{},"ClientId":{"shape":"S1d"},"ClientName":{},"RefreshTokenValidity":{"type":"integer"},"ReadAttributes":{"shape":"S49"},"WriteAttributes":{"shape":"S49"},"ExplicitAuthFlows":{"shape":"S4b"},"SupportedIdentityProviders":{"shape":"S4d"},"CallbackURLs":{"shape":"S4e"},"LogoutURLs":{"shape":"S4g"},"DefaultRedirectURI":{},"AllowedOAuthFlows":{"shape":"S4h"},"AllowedOAuthScopes":{"shape":"S4j"},"AllowedOAuthFlowsUserPoolClient":{"type":"boolean"}}},"output":{"type":"structure","members":{"UserPoolClient":{"shape":"S4m"}}}},"VerifyUserAttribute":{"input":{"type":"structure","required":["AccessToken","AttributeName","Code"],"members":{"AccessToken":{"shape":"S1m"},"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},"Si":{"type":"list","member":{"type":"structure","required":["Name"],"members":{"Name":{},"Value":{"type":"string","sensitive":true}}}},"Sm":{"type":"string","sensitive":true},"Ss":{"type":"structure","members":{"Username":{"shape":"Sd"},"Attributes":{"shape":"Si"},"UserCreateDate":{"type":"timestamp"},"UserLastModifiedDate":{"type":"timestamp"},"Enabled":{"type":"boolean"},"UserStatus":{},"MFAOptions":{"shape":"Sv"}}},"Sv":{"type":"list","member":{"type":"structure","members":{"DeliveryMedium":{},"AttributeName":{}}}},"Sz":{"type":"list","member":{}},"S19":{"type":"structure","members":{"DeviceKey":{},"DeviceAttributes":{"shape":"Si"},"DeviceCreateDate":{"type":"timestamp"},"DeviceLastModifiedDate":{"type":"timestamp"},"DeviceLastAuthenticatedDate":{"type":"timestamp"}}},"S1d":{"type":"string","sensitive":true},"S1f":{"type":"map","key":{},"value":{}},"S1g":{"type":"map","key":{},"value":{}},"S1k":{"type":"map","key":{},"value":{}},"S1l":{"type":"structure","members":{"AccessToken":{"shape":"S1m"},"ExpiresIn":{"type":"integer"},"TokenType":{},"RefreshToken":{"shape":"S1m"},"IdToken":{"shape":"S1m"},"NewDeviceMetadata":{"type":"structure","members":{"DeviceKey":{},"DeviceGroupKey":{}}}}},"S1m":{"type":"string","sensitive":true},"S1t":{"type":"list","member":{"shape":"S19"}},"S1x":{"type":"list","member":{"shape":"S1y"}},"S1y":{"type":"structure","members":{"GroupName":{},"UserPoolId":{},"Description":{},"RoleArn":{},"Precedence":{"type":"integer"},"LastModifiedDate":{"type":"timestamp"},"CreationDate":{"type":"timestamp"}}},"S26":{"type":"map","key":{},"value":{}},"S2o":{"type":"string","sensitive":true},"S2y":{"type":"map","key":{},"value":{}},"S2z":{"type":"map","key":{},"value":{}},"S30":{"type":"list","member":{}},"S33":{"type":"structure","members":{"UserPoolId":{},"ProviderName":{},"ProviderType":{},"ProviderDetails":{"shape":"S2y"},"AttributeMapping":{"shape":"S2z"},"IdpIdentifiers":{"shape":"S30"},"LastModifiedDate":{"type":"timestamp"},"CreationDate":{"type":"timestamp"}}},"S37":{"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":{}}},"S3f":{"type":"structure","members":{"PasswordPolicy":{"type":"structure","members":{"MinimumLength":{"type":"integer"},"RequireUppercase":{"type":"boolean"},"RequireLowercase":{"type":"boolean"},"RequireNumbers":{"type":"boolean"},"RequireSymbols":{"type":"boolean"}}}}},"S3i":{"type":"structure","members":{"PreSignUp":{},"CustomMessage":{},"PostConfirmation":{},"PreAuthentication":{},"PostAuthentication":{},"DefineAuthChallenge":{},"CreateAuthChallenge":{},"VerifyAuthChallengeResponse":{}}},"S3j":{"type":"list","member":{}},"S3l":{"type":"list","member":{}},"S3n":{"type":"list","member":{}},"S3t":{"type":"structure","members":{"ChallengeRequiredOnNewDevice":{"type":"boolean"},"DeviceOnlyRememberedOnUserPrompt":{"type":"boolean"}}},"S3u":{"type":"structure","members":{"SourceArn":{},"ReplyToEmailAddress":{}}},"S3w":{"type":"structure","required":["SnsCallerArn"],"members":{"SnsCallerArn":{},"ExternalId":{}}},"S3x":{"type":"map","key":{},"value":{}},"S3y":{"type":"structure","members":{"AllowAdminCreateUserOnly":{"type":"boolean"},"UnusedAccountValidityDays":{"type":"integer"},"InviteMessageTemplate":{"type":"structure","members":{"SMSMessage":{},"EmailMessage":{},"EmailSubject":{}}}}},"S41":{"type":"list","member":{"shape":"S4"}},"S43":{"type":"structure","members":{"Id":{},"Name":{},"Policies":{"shape":"S3f"},"LambdaConfig":{"shape":"S3i"},"Status":{},"LastModifiedDate":{"type":"timestamp"},"CreationDate":{"type":"timestamp"},"SchemaAttributes":{"shape":"S41"},"AutoVerifiedAttributes":{"shape":"S3j"},"AliasAttributes":{"shape":"S3l"},"UsernameAttributes":{"shape":"S3n"},"SmsVerificationMessage":{},"EmailVerificationMessage":{},"EmailVerificationSubject":{},"SmsAuthenticationMessage":{},"MfaConfiguration":{},"DeviceConfiguration":{"shape":"S3t"},"EstimatedNumberOfUsers":{"type":"integer"},"EmailConfiguration":{"shape":"S3u"},"SmsConfiguration":{"shape":"S3w"},"UserPoolTags":{"shape":"S3x"},"SmsConfigurationFailure":{},"EmailConfigurationFailure":{},"AdminCreateUserConfig":{"shape":"S3y"}}},"S49":{"type":"list","member":{}},"S4b":{"type":"list","member":{}},"S4d":{"type":"list","member":{}},"S4e":{"type":"list","member":{}},"S4g":{"type":"list","member":{}},"S4h":{"type":"list","member":{}},"S4j":{"type":"list","member":{}},"S4m":{"type":"structure","members":{"UserPoolId":{},"ClientName":{},"ClientId":{"shape":"S1d"},"ClientSecret":{"type":"string","sensitive":true},"LastModifiedDate":{"type":"timestamp"},"CreationDate":{"type":"timestamp"},"RefreshTokenValidity":{"type":"integer"},"ReadAttributes":{"shape":"S49"},"WriteAttributes":{"shape":"S49"},"ExplicitAuthFlows":{"shape":"S4b"},"SupportedIdentityProviders":{"shape":"S4d"},"CallbackURLs":{"shape":"S4e"},"LogoutURLs":{"shape":"S4g"},"DefaultRedirectURI":{},"AllowedOAuthFlows":{"shape":"S4h"},"AllowedOAuthScopes":{"shape":"S4j"},"AllowedOAuthFlowsUserPoolClient":{"type":"boolean"}}},"S5i":{"type":"structure","members":{"Destination":{},"DeliveryMedium":{},"AttributeName":{}}},"S6r":{"type":"list","member":{"shape":"Ss"}}}}

/***/ }),
/* 121 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 122 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(123);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CognitoSync;


/***/ }),
/* 123 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-06-30","endpointPrefix":"cognito-sync","jsonVersion":"1.1","serviceFullName":"Amazon Cognito Sync","signatureVersion":"v4","protocol":"rest-json","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"}}}}},"examples":{}}

/***/ }),
/* 124 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(125);
	    model.paginators = __webpack_require__(126).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ConfigService;


/***/ }),
/* 125 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-11-12","endpointPrefix":"config","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Config Service","serviceFullName":"AWS Config","signatureVersion":"v4","targetPrefix":"StarlingDoveService","uid":"config-2014-11-12"},"operations":{"DeleteConfigRule":{"input":{"type":"structure","required":["ConfigRuleName"],"members":{"ConfigRuleName":{}}}},"DeleteConfigurationRecorder":{"input":{"type":"structure","required":["ConfigurationRecorderName"],"members":{"ConfigurationRecorderName":{}}}},"DeleteDeliveryChannel":{"input":{"type":"structure","required":["DeliveryChannelName"],"members":{"DeliveryChannelName":{}}}},"DeleteEvaluationResults":{"input":{"type":"structure","required":["ConfigRuleName"],"members":{"ConfigRuleName":{}}},"output":{"type":"structure","members":{}}},"DeliverConfigSnapshot":{"input":{"type":"structure","required":["deliveryChannelName"],"members":{"deliveryChannelName":{}}},"output":{"type":"structure","members":{"configSnapshotId":{}}}},"DescribeComplianceByConfigRule":{"input":{"type":"structure","members":{"ConfigRuleNames":{"shape":"Sd"},"ComplianceTypes":{"shape":"Se"},"NextToken":{}}},"output":{"type":"structure","members":{"ComplianceByConfigRules":{"type":"list","member":{"type":"structure","members":{"ConfigRuleName":{},"Compliance":{"shape":"Sj"}}}},"NextToken":{}}}},"DescribeComplianceByResource":{"input":{"type":"structure","members":{"ResourceType":{},"ResourceId":{},"ComplianceTypes":{"shape":"Se"},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"ComplianceByResources":{"type":"list","member":{"type":"structure","members":{"ResourceType":{},"ResourceId":{},"Compliance":{"shape":"Sj"}}}},"NextToken":{}}}},"DescribeConfigRuleEvaluationStatus":{"input":{"type":"structure","members":{"ConfigRuleNames":{"shape":"Sd"},"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"},"LastErrorCode":{},"LastErrorMessage":{},"FirstEvaluationStarted":{"type":"boolean"}}}},"NextToken":{}}}},"DescribeConfigRules":{"input":{"type":"structure","members":{"ConfigRuleNames":{"shape":"Sd"},"NextToken":{}}},"output":{"type":"structure","members":{"ConfigRules":{"type":"list","member":{"shape":"S13"}},"NextToken":{}}}},"DescribeConfigurationRecorderStatus":{"input":{"type":"structure","members":{"ConfigurationRecorderNames":{"shape":"S1i"}}},"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":"S1i"}}},"output":{"type":"structure","members":{"ConfigurationRecorders":{"type":"list","member":{"shape":"S1q"}}}}},"DescribeDeliveryChannelStatus":{"input":{"type":"structure","members":{"DeliveryChannelNames":{"shape":"S1x"}}},"output":{"type":"structure","members":{"DeliveryChannelsStatus":{"type":"list","member":{"type":"structure","members":{"name":{},"configSnapshotDeliveryInfo":{"shape":"S21"},"configHistoryDeliveryInfo":{"shape":"S21"},"configStreamDeliveryInfo":{"type":"structure","members":{"lastStatus":{},"lastErrorCode":{},"lastErrorMessage":{},"lastStatusChangeTime":{"type":"timestamp"}}}}}}}}},"DescribeDeliveryChannels":{"input":{"type":"structure","members":{"DeliveryChannelNames":{"shape":"S1x"}}},"output":{"type":"structure","members":{"DeliveryChannels":{"type":"list","member":{"shape":"S27"}}}}},"GetComplianceDetailsByConfigRule":{"input":{"type":"structure","required":["ConfigRuleName"],"members":{"ConfigRuleName":{},"ComplianceTypes":{"shape":"Se"},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"EvaluationResults":{"shape":"S2b"},"NextToken":{}}}},"GetComplianceDetailsByResource":{"input":{"type":"structure","required":["ResourceType","ResourceId"],"members":{"ResourceType":{},"ResourceId":{},"ComplianceTypes":{"shape":"Se"},"NextToken":{}}},"output":{"type":"structure","members":{"EvaluationResults":{"shape":"S2b"},"NextToken":{}}}},"GetComplianceSummaryByConfigRule":{"output":{"type":"structure","members":{"ComplianceSummary":{"shape":"S2i"}}}},"GetComplianceSummaryByResourceType":{"input":{"type":"structure","members":{"ResourceTypes":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"ComplianceSummariesByResourceType":{"type":"list","member":{"type":"structure","members":{"ResourceType":{},"ComplianceSummary":{"shape":"S2i"}}}}}}},"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":{"type":"structure","members":{"version":{},"accountId":{},"configurationItemCaptureTime":{"type":"timestamp"},"configurationItemStatus":{},"configurationStateId":{},"configurationItemMD5Hash":{},"arn":{},"resourceType":{},"resourceId":{},"resourceName":{},"awsRegion":{},"availabilityZone":{},"resourceCreationTime":{"type":"timestamp"},"tags":{"type":"map","key":{},"value":{}},"relatedEvents":{"type":"list","member":{}},"relationships":{"type":"list","member":{"type":"structure","members":{"resourceType":{},"resourceId":{},"resourceName":{},"relationshipName":{}}}},"configuration":{},"supplementaryConfiguration":{"type":"map","key":{},"value":{}}}}},"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":{}}}},"PutConfigRule":{"input":{"type":"structure","required":["ConfigRule"],"members":{"ConfigRule":{"shape":"S13"}}}},"PutConfigurationRecorder":{"input":{"type":"structure","required":["ConfigurationRecorder"],"members":{"ConfigurationRecorder":{"shape":"S1q"}}}},"PutDeliveryChannel":{"input":{"type":"structure","required":["DeliveryChannel"],"members":{"DeliveryChannel":{"shape":"S27"}}}},"PutEvaluations":{"input":{"type":"structure","required":["ResultToken"],"members":{"Evaluations":{"shape":"S3t"},"ResultToken":{},"TestMode":{"type":"boolean"}}},"output":{"type":"structure","members":{"FailedEvaluations":{"shape":"S3t"}}}},"StartConfigRulesEvaluation":{"input":{"type":"structure","members":{"ConfigRuleNames":{"type":"list","member":{}}}},"output":{"type":"structure","members":{}}},"StartConfigurationRecorder":{"input":{"type":"structure","required":["ConfigurationRecorderName"],"members":{"ConfigurationRecorderName":{}}}},"StopConfigurationRecorder":{"input":{"type":"structure","required":["ConfigurationRecorderName"],"members":{"ConfigurationRecorderName":{}}}}},"shapes":{"Sd":{"type":"list","member":{}},"Se":{"type":"list","member":{}},"Sj":{"type":"structure","members":{"ComplianceType":{},"ComplianceContributorCount":{"shape":"Sk"}}},"Sk":{"type":"structure","members":{"CappedCount":{"type":"integer"},"CapExceeded":{"type":"boolean"}}},"S13":{"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":{}}},"S1i":{"type":"list","member":{}},"S1q":{"type":"structure","members":{"name":{},"roleARN":{},"recordingGroup":{"type":"structure","members":{"allSupported":{"type":"boolean"},"includeGlobalResourceTypes":{"type":"boolean"},"resourceTypes":{"type":"list","member":{}}}}}},"S1x":{"type":"list","member":{}},"S21":{"type":"structure","members":{"lastStatus":{},"lastErrorCode":{},"lastErrorMessage":{},"lastAttemptTime":{"type":"timestamp"},"lastSuccessfulTime":{"type":"timestamp"},"nextDeliveryTime":{"type":"timestamp"}}},"S27":{"type":"structure","members":{"name":{},"s3BucketName":{},"s3KeyPrefix":{},"snsTopicARN":{},"configSnapshotDeliveryProperties":{"type":"structure","members":{"deliveryFrequency":{}}}}},"S2b":{"type":"list","member":{"type":"structure","members":{"EvaluationResultIdentifier":{"type":"structure","members":{"EvaluationResultQualifier":{"type":"structure","members":{"ConfigRuleName":{},"ResourceType":{},"ResourceId":{}}},"OrderingTimestamp":{"type":"timestamp"}}},"ComplianceType":{},"ResultRecordedTime":{"type":"timestamp"},"ConfigRuleInvokedTime":{"type":"timestamp"},"Annotation":{},"ResultToken":{}}}},"S2i":{"type":"structure","members":{"CompliantResourceCount":{"shape":"Sk"},"NonCompliantResourceCount":{"shape":"Sk"},"ComplianceSummaryTimestamp":{"type":"timestamp"}}},"S3t":{"type":"list","member":{"type":"structure","required":["ComplianceResourceType","ComplianceResourceId","ComplianceType","OrderingTimestamp"],"members":{"ComplianceResourceType":{},"ComplianceResourceId":{},"ComplianceType":{},"Annotation":{},"OrderingTimestamp":{"type":"timestamp"}}}}}}

/***/ }),
/* 126 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"GetResourceConfigHistory":{"input_token":"nextToken","limit_key":"limit","output_token":"nextToken","result_key":"configurationItems"}}}

/***/ }),
/* 127 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(128);
	    model.paginators = __webpack_require__(129).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CUR;


/***/ }),
/* 128 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-01-06","endpointPrefix":"cur","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}}},"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":{}}}}}}

/***/ }),
/* 129 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeReportDefinitions":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"}}}

/***/ }),
/* 130 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(131);
	    model.paginators = __webpack_require__(132).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DataPipeline;


/***/ }),
/* 131 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-10-29","endpointPrefix":"datapipeline","jsonVersion":"1.1","serviceFullName":"AWS Data Pipeline","signatureVersion":"v4","targetPrefix":"DataPipeline","protocol":"json","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":{}}}}

/***/ }),
/* 132 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListPipelines":{"input_token":"marker","output_token":"marker","more_results":"hasMoreResults","result_key":"pipelineIdList"},"DescribeObjects":{"input_token":"marker","output_token":"marker","more_results":"hasMoreResults","result_key":"pipelineObjects"},"DescribePipelines":{"result_key":"pipelineDescriptionList"},"QueryObjects":{"input_token":"marker","output_token":"marker","more_results":"hasMoreResults","limit_key":"limit","result_key":"ids"}}}

/***/ }),
/* 133 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(134);
	    model.paginators = __webpack_require__(135).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DeviceFarm;


/***/ }),
/* 134 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-06-23","endpointPrefix":"devicefarm","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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"}}},"output":{"type":"structure","members":{"devicePool":{"shape":"Sb"}}}},"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":"Si"}}}},"CreateProject":{"input":{"type":"structure","required":["name"],"members":{"name":{},"defaultJobTimeoutMinutes":{"type":"integer"}}},"output":{"type":"structure","members":{"project":{"shape":"Sm"}}}},"CreateRemoteAccessSession":{"input":{"type":"structure","required":["projectArn","deviceArn"],"members":{"projectArn":{},"deviceArn":{},"name":{},"configuration":{"type":"structure","members":{"billingMethod":{}}}}},"output":{"type":"structure","members":{"remoteAccessSession":{"shape":"Ss"}}}},"CreateUpload":{"input":{"type":"structure","required":["projectArn","name","type"],"members":{"projectArn":{},"name":{},"type":{},"contentType":{}}},"output":{"type":"structure","members":{"upload":{"shape":"S18"}}}},"DeleteDevicePool":{"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":{}}},"DeleteUpload":{"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":"S1s"},"unmeteredRemoteAccessDevices":{"shape":"S1s"},"maxJobTimeoutMinutes":{"type":"integer"},"trialMinutes":{"type":"structure","members":{"total":{"type":"double"},"remaining":{"type":"double"}}},"maxSlots":{"type":"map","key":{},"value":{"type":"integer"}},"defaultJobTimeoutMinutes":{"type":"integer"}}}}}},"GetDevice":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"device":{"shape":"Sv"}}}},"GetDevicePool":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"devicePool":{"shape":"Sb"}}}},"GetDevicePoolCompatibility":{"input":{"type":"structure","required":["devicePoolArn"],"members":{"devicePoolArn":{},"appArn":{},"testType":{},"test":{"shape":"S21"}}},"output":{"type":"structure","members":{"compatibleDevices":{"shape":"S25"},"incompatibleDevices":{"shape":"S25"}}}},"GetJob":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"job":{"shape":"S2b"}}}},"GetNetworkProfile":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"networkProfile":{"shape":"Si"}}}},"GetOfferingStatus":{"input":{"type":"structure","members":{"nextToken":{}}},"output":{"type":"structure","members":{"current":{"shape":"S2i"},"nextPeriod":{"shape":"S2i"},"nextToken":{}}}},"GetProject":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"project":{"shape":"Sm"}}}},"GetRemoteAccessSession":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"remoteAccessSession":{"shape":"Ss"}}}},"GetRun":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"run":{"shape":"S2z"}}}},"GetSuite":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"suite":{"shape":"S32"}}}},"GetTest":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"test":{"shape":"S35"}}}},"GetUpload":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"upload":{"shape":"S18"}}}},"InstallToRemoteAccessSession":{"input":{"type":"structure","required":["remoteAccessSessionArn","appArn"],"members":{"remoteAccessSessionArn":{},"appArn":{}}},"output":{"type":"structure","members":{"appUpload":{"shape":"S18"}}}},"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":{}}}},"ListDevicePools":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"type":{},"nextToken":{}}},"output":{"type":"structure","members":{"devicePools":{"type":"list","member":{"shape":"Sb"}},"nextToken":{}}}},"ListDevices":{"input":{"type":"structure","members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"devices":{"type":"list","member":{"shape":"Sv"}},"nextToken":{}}}},"ListJobs":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"jobs":{"type":"list","member":{"shape":"S2b"}},"nextToken":{}}}},"ListNetworkProfiles":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"type":{},"nextToken":{}}},"output":{"type":"structure","members":{"networkProfiles":{"type":"list","member":{"shape":"Si"}},"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":"S40"}},"nextToken":{}}}},"ListOfferings":{"input":{"type":"structure","members":{"nextToken":{}}},"output":{"type":"structure","members":{"offerings":{"type":"list","member":{"shape":"S2m"}},"nextToken":{}}}},"ListProjects":{"input":{"type":"structure","members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"projects":{"type":"list","member":{"shape":"Sm"}},"nextToken":{}}}},"ListRemoteAccessSessions":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"remoteAccessSessions":{"type":"list","member":{"shape":"Ss"}},"nextToken":{}}}},"ListRuns":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"runs":{"type":"list","member":{"shape":"S2z"}},"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":"S32"}},"nextToken":{}}}},"ListTests":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"tests":{"type":"list","member":{"shape":"S35"}},"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":"S4w"},"job":{"shape":"S4w"},"suite":{"shape":"S4w"},"test":{"shape":"S4w"},"device":{"shape":"Sv"},"result":{},"message":{}}}}}}}},"nextToken":{}}}},"ListUploads":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"nextToken":{}}},"output":{"type":"structure","members":{"uploads":{"type":"list","member":{"shape":"S18"}},"nextToken":{}}}},"PurchaseOffering":{"input":{"type":"structure","members":{"offeringId":{},"quantity":{"type":"integer"},"offeringPromotionId":{}}},"output":{"type":"structure","members":{"offeringTransaction":{"shape":"S40"}}}},"RenewOffering":{"input":{"type":"structure","members":{"offeringId":{},"quantity":{"type":"integer"}}},"output":{"type":"structure","members":{"offeringTransaction":{"shape":"S40"}}}},"ScheduleRun":{"input":{"type":"structure","required":["projectArn","devicePoolArn","test"],"members":{"projectArn":{},"appArn":{},"devicePoolArn":{},"name":{},"test":{"shape":"S21"},"configuration":{"type":"structure","members":{"extraDataPackageArn":{},"networkProfileArn":{},"locale":{},"location":{"type":"structure","required":["latitude","longitude"],"members":{"latitude":{"type":"double"},"longitude":{"type":"double"}}},"radios":{"type":"structure","members":{"wifi":{"type":"boolean"},"bluetooth":{"type":"boolean"},"nfc":{"type":"boolean"},"gps":{"type":"boolean"}}},"auxiliaryApps":{"type":"list","member":{}},"billingMethod":{}}},"executionConfiguration":{"type":"structure","members":{"jobTimeoutMinutes":{"type":"integer"},"accountsCleanup":{"type":"boolean"},"appPackagesCleanup":{"type":"boolean"}}}}},"output":{"type":"structure","members":{"run":{"shape":"S2z"}}}},"StopRemoteAccessSession":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"remoteAccessSession":{"shape":"Ss"}}}},"StopRun":{"input":{"type":"structure","required":["arn"],"members":{"arn":{}}},"output":{"type":"structure","members":{"run":{"shape":"S2z"}}}},"UpdateDevicePool":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"name":{},"description":{},"rules":{"shape":"S5"}}},"output":{"type":"structure","members":{"devicePool":{"shape":"Sb"}}}},"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":"Si"}}}},"UpdateProject":{"input":{"type":"structure","required":["arn"],"members":{"arn":{},"name":{},"defaultJobTimeoutMinutes":{"type":"integer"}}},"output":{"type":"structure","members":{"project":{"shape":"Sm"}}}}},"shapes":{"S5":{"type":"list","member":{"type":"structure","members":{"attribute":{},"operator":{},"value":{}}}},"Sb":{"type":"structure","members":{"arn":{},"name":{},"description":{},"type":{},"rules":{"shape":"S5"}}},"Si":{"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"}}},"Sm":{"type":"structure","members":{"arn":{},"name":{},"defaultJobTimeoutMinutes":{"type":"integer"},"created":{"type":"timestamp"}}},"Ss":{"type":"structure","members":{"arn":{},"name":{},"created":{"type":"timestamp"},"status":{},"result":{},"message":{},"started":{"type":"timestamp"},"stopped":{"type":"timestamp"},"device":{"shape":"Sv"},"billingMethod":{},"deviceMinutes":{"shape":"S13"},"endpoint":{}}},"Sv":{"type":"structure","members":{"arn":{},"name":{},"manufacturer":{},"model":{},"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"},"fleetType":{},"fleetName":{}}},"S13":{"type":"structure","members":{"total":{"type":"double"},"metered":{"type":"double"},"unmetered":{"type":"double"}}},"S18":{"type":"structure","members":{"arn":{},"name":{},"created":{"type":"timestamp"},"type":{},"status":{},"url":{},"metadata":{},"contentType":{},"message":{}}},"S1s":{"type":"map","key":{},"value":{"type":"integer"}},"S21":{"type":"structure","required":["type"],"members":{"type":{},"testPackageArn":{},"filter":{},"parameters":{"type":"map","key":{},"value":{}}}},"S25":{"type":"list","member":{"type":"structure","members":{"device":{"shape":"Sv"},"compatible":{"type":"boolean"},"incompatibilityMessages":{"type":"list","member":{"type":"structure","members":{"message":{},"type":{}}}}}}},"S2b":{"type":"structure","members":{"arn":{},"name":{},"type":{},"created":{"type":"timestamp"},"status":{},"result":{},"started":{"type":"timestamp"},"stopped":{"type":"timestamp"},"counters":{"shape":"S2c"},"message":{},"device":{"shape":"Sv"},"deviceMinutes":{"shape":"S13"}}},"S2c":{"type":"structure","members":{"total":{"type":"integer"},"passed":{"type":"integer"},"failed":{"type":"integer"},"warned":{"type":"integer"},"errored":{"type":"integer"},"stopped":{"type":"integer"},"skipped":{"type":"integer"}}},"S2i":{"type":"map","key":{},"value":{"shape":"S2k"}},"S2k":{"type":"structure","members":{"type":{},"offering":{"shape":"S2m"},"quantity":{"type":"integer"},"effectiveOn":{"type":"timestamp"}}},"S2m":{"type":"structure","members":{"id":{},"description":{},"type":{},"platform":{},"recurringCharges":{"type":"list","member":{"type":"structure","members":{"cost":{"shape":"S2q"},"frequency":{}}}}}},"S2q":{"type":"structure","members":{"amount":{"type":"double"},"currencyCode":{}}},"S2z":{"type":"structure","members":{"arn":{},"name":{},"type":{},"platform":{},"created":{"type":"timestamp"},"status":{},"result":{},"started":{"type":"timestamp"},"stopped":{"type":"timestamp"},"counters":{"shape":"S2c"},"message":{},"totalJobs":{"type":"integer"},"completedJobs":{"type":"integer"},"billingMethod":{},"deviceMinutes":{"shape":"S13"},"networkProfile":{"shape":"Si"}}},"S32":{"type":"structure","members":{"arn":{},"name":{},"type":{},"created":{"type":"timestamp"},"status":{},"result":{},"started":{"type":"timestamp"},"stopped":{"type":"timestamp"},"counters":{"shape":"S2c"},"message":{},"deviceMinutes":{"shape":"S13"}}},"S35":{"type":"structure","members":{"arn":{},"name":{},"type":{},"created":{"type":"timestamp"},"status":{},"result":{},"started":{"type":"timestamp"},"stopped":{"type":"timestamp"},"counters":{"shape":"S2c"},"message":{},"deviceMinutes":{"shape":"S13"}}},"S40":{"type":"structure","members":{"offeringStatus":{"shape":"S2k"},"transactionId":{},"offeringPromotionId":{},"createdOn":{"type":"timestamp"},"cost":{"shape":"S2q"}}},"S4w":{"type":"structure","members":{"arn":{},"name":{}}}}}

/***/ }),
/* 135 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"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"}}}

/***/ }),
/* 136 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(137);
	    model.paginators = __webpack_require__(138).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DirectConnect;


/***/ }),
/* 137 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-10-25","endpointPrefix":"directconnect","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS Direct Connect","signatureVersion":"v4","targetPrefix":"OvertureService","uid":"directconnect-2012-10-25"},"operations":{"AllocateConnectionOnInterconnect":{"input":{"type":"structure","required":["bandwidth","connectionName","ownerAccount","interconnectId","vlan"],"members":{"bandwidth":{},"connectionName":{},"ownerAccount":{},"interconnectId":{},"vlan":{"type":"integer"}}},"output":{"shape":"S7"},"deprecated":true},"AllocateHostedConnection":{"input":{"type":"structure","required":["connectionId","ownerAccount","bandwidth","connectionName","vlan"],"members":{"connectionId":{},"ownerAccount":{},"bandwidth":{},"connectionName":{},"vlan":{"type":"integer"}}},"output":{"shape":"S7"}},"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"},"authKey":{},"amazonAddress":{},"addressFamily":{},"customerAddress":{}}}}},"output":{"shape":"Sp"}},"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":"Sv"}}}}},"output":{"shape":"Sp"}},"AssociateConnectionWithLag":{"input":{"type":"structure","required":["connectionId","lagId"],"members":{"connectionId":{},"lagId":{}}},"output":{"shape":"S7"}},"AssociateHostedConnection":{"input":{"type":"structure","required":["connectionId","parentConnectionId"],"members":{"connectionId":{},"parentConnectionId":{}}},"output":{"shape":"S7"}},"AssociateVirtualInterface":{"input":{"type":"structure","required":["virtualInterfaceId","connectionId"],"members":{"virtualInterfaceId":{},"connectionId":{}}},"output":{"shape":"Sp"}},"ConfirmConnection":{"input":{"type":"structure","required":["connectionId"],"members":{"connectionId":{}}},"output":{"type":"structure","members":{"connectionState":{}}}},"ConfirmPrivateVirtualInterface":{"input":{"type":"structure","required":["virtualInterfaceId","virtualGatewayId"],"members":{"virtualInterfaceId":{},"virtualGatewayId":{}}},"output":{"type":"structure","members":{"virtualInterfaceState":{}}}},"ConfirmPublicVirtualInterface":{"input":{"type":"structure","required":["virtualInterfaceId"],"members":{"virtualInterfaceId":{}}},"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":"Sp"}}}},"CreateConnection":{"input":{"type":"structure","required":["location","bandwidth","connectionName"],"members":{"location":{},"bandwidth":{},"connectionName":{},"lagId":{}}},"output":{"shape":"S7"}},"CreateInterconnect":{"input":{"type":"structure","required":["interconnectName","bandwidth","location"],"members":{"interconnectName":{},"bandwidth":{},"location":{},"lagId":{}}},"output":{"shape":"S1j"}},"CreateLag":{"input":{"type":"structure","required":["numberOfConnections","location","connectionsBandwidth","lagName"],"members":{"numberOfConnections":{"type":"integer"},"location":{},"connectionsBandwidth":{},"lagName":{},"connectionId":{}}},"output":{"shape":"S1o"}},"CreatePrivateVirtualInterface":{"input":{"type":"structure","required":["connectionId","newPrivateVirtualInterface"],"members":{"connectionId":{},"newPrivateVirtualInterface":{"type":"structure","required":["virtualInterfaceName","vlan","asn","virtualGatewayId"],"members":{"virtualInterfaceName":{},"vlan":{"type":"integer"},"asn":{"type":"integer"},"authKey":{},"amazonAddress":{},"customerAddress":{},"addressFamily":{},"virtualGatewayId":{}}}}},"output":{"shape":"Sp"}},"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":"Sv"}}}}},"output":{"shape":"Sp"}},"DeleteBGPPeer":{"input":{"type":"structure","members":{"virtualInterfaceId":{},"asn":{"type":"integer"},"customerAddress":{}}},"output":{"type":"structure","members":{"virtualInterface":{"shape":"Sp"}}}},"DeleteConnection":{"input":{"type":"structure","required":["connectionId"],"members":{"connectionId":{}}},"output":{"shape":"S7"}},"DeleteInterconnect":{"input":{"type":"structure","required":["interconnectId"],"members":{"interconnectId":{}}},"output":{"type":"structure","members":{"interconnectState":{}}}},"DeleteLag":{"input":{"type":"structure","required":["lagId"],"members":{"lagId":{}}},"output":{"shape":"S1o"}},"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":"S28"}}},"deprecated":true},"DescribeConnections":{"input":{"type":"structure","members":{"connectionId":{}}},"output":{"shape":"S2b"}},"DescribeConnectionsOnInterconnect":{"input":{"type":"structure","required":["interconnectId"],"members":{"interconnectId":{}}},"output":{"shape":"S2b"},"deprecated":true},"DescribeHostedConnections":{"input":{"type":"structure","required":["connectionId"],"members":{"connectionId":{}}},"output":{"shape":"S2b"}},"DescribeInterconnectLoa":{"input":{"type":"structure","required":["interconnectId"],"members":{"interconnectId":{},"providerName":{},"loaContentType":{}}},"output":{"type":"structure","members":{"loa":{"shape":"S28"}}},"deprecated":true},"DescribeInterconnects":{"input":{"type":"structure","members":{"interconnectId":{}}},"output":{"type":"structure","members":{"interconnects":{"type":"list","member":{"shape":"S1j"}}}}},"DescribeLags":{"input":{"type":"structure","members":{"lagId":{}}},"output":{"type":"structure","members":{"lags":{"type":"list","member":{"shape":"S1o"}}}}},"DescribeLoa":{"input":{"type":"structure","required":["connectionId"],"members":{"connectionId":{},"providerName":{},"loaContentType":{}}},"output":{"shape":"S28"}},"DescribeLocations":{"output":{"type":"structure","members":{"locations":{"type":"list","member":{"type":"structure","members":{"locationCode":{},"locationName":{}}}}}}},"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":"S2x"}}}}}}},"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":"Sp"}}}}},"DisassociateConnectionFromLag":{"input":{"type":"structure","required":["connectionId","lagId"],"members":{"connectionId":{},"lagId":{}}},"output":{"shape":"S7"}},"TagResource":{"input":{"type":"structure","required":["resourceArn","tags"],"members":{"resourceArn":{},"tags":{"shape":"S2x"}}},"output":{"type":"structure","members":{}}},"UntagResource":{"input":{"type":"structure","required":["resourceArn","tagKeys"],"members":{"resourceArn":{},"tagKeys":{"type":"list","member":{}}}},"output":{"type":"structure","members":{}}},"UpdateLag":{"input":{"type":"structure","required":["lagId"],"members":{"lagId":{},"lagName":{},"minimumLinks":{"type":"integer"}}},"output":{"shape":"S1o"}}},"shapes":{"S7":{"type":"structure","members":{"ownerAccount":{},"connectionId":{},"connectionName":{},"connectionState":{},"region":{},"location":{},"bandwidth":{},"vlan":{"type":"integer"},"partnerName":{},"loaIssueTime":{"type":"timestamp"},"lagId":{},"awsDevice":{}}},"Sp":{"type":"structure","members":{"ownerAccount":{},"virtualInterfaceId":{},"location":{},"connectionId":{},"virtualInterfaceType":{},"virtualInterfaceName":{},"vlan":{"type":"integer"},"asn":{"type":"integer"},"authKey":{},"amazonAddress":{},"customerAddress":{},"addressFamily":{},"virtualInterfaceState":{},"customerRouterConfig":{},"virtualGatewayId":{},"routeFilterPrefixes":{"shape":"Sv"},"bgpPeers":{"type":"list","member":{"type":"structure","members":{"asn":{"type":"integer"},"authKey":{},"addressFamily":{},"amazonAddress":{},"customerAddress":{},"bgpPeerState":{},"bgpStatus":{}}}}}},"Sv":{"type":"list","member":{"type":"structure","members":{"cidr":{}}}},"S1j":{"type":"structure","members":{"interconnectId":{},"interconnectName":{},"interconnectState":{},"region":{},"location":{},"bandwidth":{},"loaIssueTime":{"type":"timestamp"},"lagId":{},"awsDevice":{}}},"S1o":{"type":"structure","members":{"connectionsBandwidth":{},"numberOfConnections":{"type":"integer"},"lagId":{},"ownerAccount":{},"lagName":{},"lagState":{},"location":{},"region":{},"minimumLinks":{"type":"integer"},"awsDevice":{},"connections":{"shape":"S1q"},"allowsHostedConnections":{"type":"boolean"}}},"S1q":{"type":"list","member":{"shape":"S7"}},"S28":{"type":"structure","members":{"loaContent":{"type":"blob"},"loaContentType":{}}},"S2b":{"type":"structure","members":{"connections":{"shape":"S1q"}}},"S2x":{"type":"list","member":{"type":"structure","required":["key"],"members":{"key":{},"value":{}}}}}}

/***/ }),
/* 138 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeConnections":{"result_key":"connections"},"DescribeConnectionsOnInterconnect":{"result_key":"connections"},"DescribeInterconnects":{"result_key":"interconnects"},"DescribeLocations":{"result_key":"locations"},"DescribeVirtualGateways":{"result_key":"virtualGateways"},"DescribeVirtualInterfaces":{"result_key":"virtualInterfaces"}}}

/***/ }),
/* 139 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(140);
	    model.paginators = __webpack_require__(141).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DirectoryService;


/***/ }),
/* 140 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-04-16","endpointPrefix":"ds","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Directory Service","serviceFullName":"AWS Directory Service","signatureVersion":"v4","targetPrefix":"DirectoryService_20150416","uid":"ds-2015-04-16"},"operations":{"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":{}}},"AddTagsToResource":{"input":{"type":"structure","required":["ResourceId","Tags"],"members":{"ResourceId":{},"Tags":{"shape":"Sb"}}},"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":"Sm"},"Description":{},"Size":{},"ConnectSettings":{"type":"structure","required":["VpcId","SubnetIds","CustomerDnsIps","CustomerUserName"],"members":{"VpcId":{},"SubnetIds":{"shape":"Sq"},"CustomerDnsIps":{"shape":"Ss"},"CustomerUserName":{}}}}},"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":"S13"}}},"output":{"type":"structure","members":{"Computer":{"type":"structure","members":{"ComputerId":{},"ComputerName":{},"ComputerAttributes":{"shape":"S13"}}}}}},"CreateConditionalForwarder":{"input":{"type":"structure","required":["DirectoryId","RemoteDomainName","DnsIpAddrs"],"members":{"DirectoryId":{},"RemoteDomainName":{},"DnsIpAddrs":{"shape":"Ss"}}},"output":{"type":"structure","members":{}}},"CreateDirectory":{"input":{"type":"structure","required":["Name","Password","Size"],"members":{"Name":{},"ShortName":{},"Password":{"shape":"S1e"},"Description":{},"Size":{},"VpcSettings":{"shape":"S1f"}}},"output":{"type":"structure","members":{"DirectoryId":{}}}},"CreateMicrosoftAD":{"input":{"type":"structure","required":["Name","Password","VpcSettings"],"members":{"Name":{},"ShortName":{},"Password":{"shape":"S1e"},"Description":{},"VpcSettings":{"shape":"S1f"}}},"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":"Ss"}}},"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":{}}}},"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":{}}}},"DeregisterEventTopic":{"input":{"type":"structure","required":["DirectoryId","TopicName"],"members":{"DirectoryId":{},"TopicName":{}}},"output":{"type":"structure","members":{}}},"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":"Ss"},"ReplicationScope":{}}}}}}},"DescribeDirectories":{"input":{"type":"structure","members":{"DirectoryIds":{"type":"list","member":{}},"NextToken":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"DirectoryDescriptions":{"type":"list","member":{"type":"structure","members":{"DirectoryId":{},"Name":{},"ShortName":{},"Size":{},"Alias":{},"AccessUrl":{},"Description":{},"DnsIpAddrs":{"shape":"Ss"},"Stage":{},"LaunchTime":{"type":"timestamp"},"StageLastUpdatedDateTime":{"type":"timestamp"},"Type":{},"VpcSettings":{"type":"structure","members":{"VpcId":{},"SubnetIds":{"shape":"Sq"},"SecurityGroupId":{},"AvailabilityZones":{"shape":"S2p"}}},"ConnectSettings":{"type":"structure","members":{"VpcId":{},"SubnetIds":{"shape":"Sq"},"CustomerUserName":{},"SecurityGroupId":{},"AvailabilityZones":{"shape":"S2p"},"ConnectIps":{"type":"list","member":{}}}},"RadiusSettings":{"shape":"S2t"},"RadiusStatus":{},"StageReason":{},"SsoEnabled":{"type":"boolean"},"DesiredNumberOfDomainControllers":{"type":"integer"}}}},"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":{}}}}}}},"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":{}}}},"NextToken":{}}}},"DisableRadius":{"input":{"type":"structure","required":["DirectoryId"],"members":{"DirectoryId":{}}},"output":{"type":"structure","members":{}}},"DisableSso":{"input":{"type":"structure","required":["DirectoryId"],"members":{"DirectoryId":{},"UserName":{},"Password":{"shape":"Sm"}}},"output":{"type":"structure","members":{}}},"EnableRadius":{"input":{"type":"structure","required":["DirectoryId","RadiusSettings"],"members":{"DirectoryId":{},"RadiusSettings":{"shape":"S2t"}}},"output":{"type":"structure","members":{}}},"EnableSso":{"input":{"type":"structure","required":["DirectoryId"],"members":{"DirectoryId":{},"UserName":{},"Password":{"shape":"Sm"}}},"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"}}}}}},"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":{}}}},"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":"Sb"},"NextToken":{}}}},"RegisterEventTopic":{"input":{"type":"structure","required":["DirectoryId","TopicName"],"members":{"DirectoryId":{},"TopicName":{}}},"output":{"type":"structure","members":{}}},"RemoveIpRoutes":{"input":{"type":"structure","required":["DirectoryId","CidrIps"],"members":{"DirectoryId":{},"CidrIps":{"type":"list","member":{}}}},"output":{"type":"structure","members":{}}},"RemoveTagsFromResource":{"input":{"type":"structure","required":["ResourceId","TagKeys"],"members":{"ResourceId":{},"TagKeys":{"type":"list","member":{}}}},"output":{"type":"structure","members":{}}},"RestoreFromSnapshot":{"input":{"type":"structure","required":["SnapshotId"],"members":{"SnapshotId":{}}},"output":{"type":"structure","members":{}}},"StartSchemaExtension":{"input":{"type":"structure","required":["DirectoryId","CreateSnapshotBeforeSchemaExtension","LdifContent","Description"],"members":{"DirectoryId":{},"CreateSnapshotBeforeSchemaExtension":{"type":"boolean"},"LdifContent":{},"Description":{}}},"output":{"type":"structure","members":{"SchemaExtensionId":{}}}},"UpdateConditionalForwarder":{"input":{"type":"structure","required":["DirectoryId","RemoteDomainName","DnsIpAddrs"],"members":{"DirectoryId":{},"RemoteDomainName":{},"DnsIpAddrs":{"shape":"Ss"}}},"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":"S2t"}}},"output":{"type":"structure","members":{}}},"VerifyTrust":{"input":{"type":"structure","required":["TrustId"],"members":{"TrustId":{}}},"output":{"type":"structure","members":{"TrustId":{}}}}},"shapes":{"Sb":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"Sm":{"type":"string","sensitive":true},"Sq":{"type":"list","member":{}},"Ss":{"type":"list","member":{}},"S13":{"type":"list","member":{"type":"structure","members":{"Name":{},"Value":{}}}},"S1e":{"type":"string","sensitive":true},"S1f":{"type":"structure","required":["VpcId","SubnetIds"],"members":{"VpcId":{},"SubnetIds":{"shape":"Sq"}}},"S2p":{"type":"list","member":{}},"S2t":{"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"}}}}}

/***/ }),
/* 141 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeDomainControllers":{"input_token":"NextToken","output_token":"NextToken","limit_key":"Limit"}}}

/***/ }),
/* 142 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(143);
	    model.paginators = __webpack_require__(144).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Discovery;


/***/ }),
/* 143 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-11-01","endpointPrefix":"discovery","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}},"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":"Sa"}}},"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":"Sa"}}},"output":{"type":"structure","members":{}}},"DescribeAgents":{"input":{"type":"structure","members":{"agentIds":{"shape":"Sl"},"filters":{"shape":"Sn"},"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":{}}}}}},"DescribeExportConfigurations":{"input":{"type":"structure","members":{"exportIds":{"shape":"S15"},"maxResults":{"type":"integer"},"nextToken":{}}},"output":{"type":"structure","members":{"exportsInfo":{"shape":"S18"},"nextToken":{}}},"deprecated":true},"DescribeExportTasks":{"input":{"type":"structure","members":{"exportIds":{"shape":"S15"},"filters":{"shape":"S1h"},"maxResults":{"type":"integer"},"nextToken":{}}},"output":{"type":"structure","members":{"exportsInfo":{"shape":"S18"},"nextToken":{}}}},"DescribeTags":{"input":{"type":"structure","members":{"filters":{"type":"list","member":{"type":"structure","required":["name","values"],"members":{"name":{},"values":{"shape":"Sp"}}}},"maxResults":{"type":"integer"},"nextToken":{}}},"output":{"type":"structure","members":{"tags":{"type":"list","member":{"locationName":"item","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":"Sn"},"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"}}}},"StartDataCollectionByAgentIds":{"input":{"type":"structure","required":["agentIds"],"members":{"agentIds":{"shape":"Sl"}}},"output":{"type":"structure","members":{"agentsConfigurationStatus":{"shape":"S2e"}}}},"StartExportTask":{"input":{"type":"structure","members":{"exportDataFormat":{"type":"list","member":{}},"filters":{"shape":"S1h"},"startTime":{"type":"timestamp"},"endTime":{"type":"timestamp"}}},"output":{"type":"structure","members":{"exportId":{}}}},"StopDataCollectionByAgentIds":{"input":{"type":"structure","required":["agentIds"],"members":{"agentIds":{"shape":"Sl"}}},"output":{"type":"structure","members":{"agentsConfigurationStatus":{"shape":"S2e"}}}},"UpdateApplication":{"input":{"type":"structure","required":["configurationId"],"members":{"configurationId":{},"name":{},"description":{}}},"output":{"type":"structure","members":{}}}},"shapes":{"S3":{"type":"list","member":{}},"Sa":{"type":"list","member":{"locationName":"item","type":"structure","required":["key","value"],"members":{"key":{},"value":{}}}},"Sl":{"type":"list","member":{}},"Sn":{"type":"list","member":{"type":"structure","required":["name","values","condition"],"members":{"name":{},"values":{"shape":"Sp"},"condition":{}}}},"Sp":{"type":"list","member":{"locationName":"item"}},"S15":{"type":"list","member":{}},"S18":{"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"}}}},"S1h":{"type":"list","member":{"type":"structure","required":["name","values","condition"],"members":{"name":{},"values":{"shape":"Sp"},"condition":{}}}},"S2e":{"type":"list","member":{"type":"structure","members":{"agentId":{},"operationSucceeded":{"type":"boolean"},"description":{}}}}}}

/***/ }),
/* 144 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 145 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(146);
	    model.paginators = __webpack_require__(147).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DMS;


/***/ }),
/* 146 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-01-01","endpointPrefix":"dms","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}},"CreateEndpoint":{"input":{"type":"structure","required":["EndpointIdentifier","EndpointType","EngineName"],"members":{"EndpointIdentifier":{},"EndpointType":{},"EngineName":{},"Username":{},"Password":{"shape":"S8"},"ServerName":{},"Port":{"type":"integer"},"DatabaseName":{},"ExtraConnectionAttributes":{},"KmsKeyId":{},"Tags":{"shape":"S3"},"CertificateArn":{},"SslMode":{},"DynamoDbSettings":{"shape":"Sb"},"S3Settings":{"shape":"Sc"},"MongoDbSettings":{"shape":"Se"}}},"output":{"type":"structure","members":{"Endpoint":{"shape":"Sj"}}}},"CreateEventSubscription":{"input":{"type":"structure","required":["SubscriptionName","SnsTopicArn"],"members":{"SubscriptionName":{},"SnsTopicArn":{},"SourceType":{},"EventCategories":{"shape":"Sl"},"SourceIds":{"shape":"Sm"},"Enabled":{"type":"boolean"},"Tags":{"shape":"S3"}}},"output":{"type":"structure","members":{"EventSubscription":{"shape":"Sp"}}}},"CreateReplicationInstance":{"input":{"type":"structure","required":["ReplicationInstanceIdentifier","ReplicationInstanceClass"],"members":{"ReplicationInstanceIdentifier":{},"AllocatedStorage":{"type":"integer"},"ReplicationInstanceClass":{},"VpcSecurityGroupIds":{"shape":"Ss"},"AvailabilityZone":{},"ReplicationSubnetGroupIdentifier":{},"PreferredMaintenanceWindow":{},"MultiAZ":{"type":"boolean"},"EngineVersion":{},"AutoMinorVersionUpgrade":{"type":"boolean"},"Tags":{"shape":"S3"},"KmsKeyId":{},"PubliclyAccessible":{"type":"boolean"}}},"output":{"type":"structure","members":{"ReplicationInstance":{"shape":"Su"}}}},"CreateReplicationSubnetGroup":{"input":{"type":"structure","required":["ReplicationSubnetGroupIdentifier","ReplicationSubnetGroupDescription","SubnetIds"],"members":{"ReplicationSubnetGroupIdentifier":{},"ReplicationSubnetGroupDescription":{},"SubnetIds":{"shape":"S17"},"Tags":{"shape":"S3"}}},"output":{"type":"structure","members":{"ReplicationSubnetGroup":{"shape":"Sz"}}}},"CreateReplicationTask":{"input":{"type":"structure","required":["ReplicationTaskIdentifier","SourceEndpointArn","TargetEndpointArn","ReplicationInstanceArn","MigrationType","TableMappings"],"members":{"ReplicationTaskIdentifier":{},"SourceEndpointArn":{},"TargetEndpointArn":{},"ReplicationInstanceArn":{},"MigrationType":{},"TableMappings":{},"ReplicationTaskSettings":{},"CdcStartTime":{"type":"timestamp"},"Tags":{"shape":"S3"}}},"output":{"type":"structure","members":{"ReplicationTask":{"shape":"S1c"}}}},"DeleteCertificate":{"input":{"type":"structure","required":["CertificateArn"],"members":{"CertificateArn":{}}},"output":{"type":"structure","members":{"Certificate":{"shape":"S1h"}}}},"DeleteEndpoint":{"input":{"type":"structure","required":["EndpointArn"],"members":{"EndpointArn":{}}},"output":{"type":"structure","members":{"Endpoint":{"shape":"Sj"}}}},"DeleteEventSubscription":{"input":{"type":"structure","required":["SubscriptionName"],"members":{"SubscriptionName":{}}},"output":{"type":"structure","members":{"EventSubscription":{"shape":"Sp"}}}},"DeleteReplicationInstance":{"input":{"type":"structure","required":["ReplicationInstanceArn"],"members":{"ReplicationInstanceArn":{}}},"output":{"type":"structure","members":{"ReplicationInstance":{"shape":"Su"}}}},"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":"S1c"}}}},"DescribeAccountAttributes":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"AccountQuotas":{"type":"list","member":{"locationName":"AccountQuota","type":"structure","members":{"AccountQuotaName":{},"Used":{"type":"long"},"Max":{"type":"long"}}}}}}},"DescribeCertificates":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"Certificates":{"type":"list","member":{"shape":"S1h","locationName":"Certificate"}}}}},"DescribeConnections":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"Connections":{"type":"list","member":{"shape":"S26","locationName":"Connection"}}}}},"DescribeEndpointTypes":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"SupportedEndpointTypes":{"type":"list","member":{"locationName":"SupportedEndpointType","type":"structure","members":{"EngineName":{},"SupportsCDC":{"type":"boolean"},"EndpointType":{}}}}}}},"DescribeEndpoints":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"Endpoints":{"type":"list","member":{"shape":"Sj","locationName":"Endpoint"}}}}},"DescribeEventCategories":{"input":{"type":"structure","members":{"SourceType":{},"Filters":{"shape":"S1y"}}},"output":{"type":"structure","members":{"EventCategoryGroupList":{"type":"list","member":{"locationName":"EventCategoryGroup","type":"structure","members":{"SourceType":{},"EventCategories":{"shape":"Sl"}}}}}}},"DescribeEventSubscriptions":{"input":{"type":"structure","members":{"SubscriptionName":{},"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"EventSubscriptionsList":{"type":"list","member":{"shape":"Sp","locationName":"EventSubscription"}}}}},"DescribeEvents":{"input":{"type":"structure","members":{"SourceIdentifier":{},"SourceType":{},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"Duration":{"type":"integer"},"EventCategories":{"shape":"Sl"},"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"Events":{"type":"list","member":{"locationName":"Event","type":"structure","members":{"SourceIdentifier":{},"SourceType":{},"Message":{},"EventCategories":{"shape":"Sl"},"Date":{"type":"timestamp"}}}}}}},"DescribeOrderableReplicationInstances":{"input":{"type":"structure","members":{"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"OrderableReplicationInstances":{"type":"list","member":{"locationName":"OrderableReplicationInstance","type":"structure","members":{"EngineVersion":{},"ReplicationInstanceClass":{},"StorageType":{},"MinAllocatedStorage":{"type":"integer"},"MaxAllocatedStorage":{"type":"integer"},"DefaultAllocatedStorage":{"type":"integer"},"IncludedAllocatedStorage":{"type":"integer"}}}},"Marker":{}}}},"DescribeRefreshSchemasStatus":{"input":{"type":"structure","required":["EndpointArn"],"members":{"EndpointArn":{}}},"output":{"type":"structure","members":{"RefreshSchemasStatus":{"shape":"S2w"}}}},"DescribeReplicationInstances":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"ReplicationInstances":{"type":"list","member":{"shape":"Su","locationName":"ReplicationInstance"}}}}},"DescribeReplicationSubnetGroups":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"ReplicationSubnetGroups":{"type":"list","member":{"shape":"Sz","locationName":"ReplicationSubnetGroup"}}}}},"DescribeReplicationTasks":{"input":{"type":"structure","members":{"Filters":{"shape":"S1y"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"ReplicationTasks":{"type":"list","member":{"shape":"S1c","locationName":"ReplicationTask"}}}}},"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":{}}},"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"},"LastUpdateTime":{"type":"timestamp"},"TableState":{}}}},"Marker":{}}}},"ImportCertificate":{"input":{"type":"structure","required":["CertificateIdentifier"],"members":{"CertificateIdentifier":{},"CertificatePem":{},"CertificateWallet":{"type":"blob"},"Tags":{"shape":"S3"}}},"output":{"type":"structure","members":{"Certificate":{"shape":"S1h"}}}},"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":"S8"},"ServerName":{},"Port":{"type":"integer"},"DatabaseName":{},"ExtraConnectionAttributes":{},"CertificateArn":{},"SslMode":{},"DynamoDbSettings":{"shape":"Sb"},"S3Settings":{"shape":"Sc"},"MongoDbSettings":{"shape":"Se"}}},"output":{"type":"structure","members":{"Endpoint":{"shape":"Sj"}}}},"ModifyEventSubscription":{"input":{"type":"structure","required":["SubscriptionName"],"members":{"SubscriptionName":{},"SnsTopicArn":{},"SourceType":{},"EventCategories":{"shape":"Sl"},"Enabled":{"type":"boolean"}}},"output":{"type":"structure","members":{"EventSubscription":{"shape":"Sp"}}}},"ModifyReplicationInstance":{"input":{"type":"structure","required":["ReplicationInstanceArn"],"members":{"ReplicationInstanceArn":{},"AllocatedStorage":{"type":"integer"},"ApplyImmediately":{"type":"boolean"},"ReplicationInstanceClass":{},"VpcSecurityGroupIds":{"shape":"Ss"},"PreferredMaintenanceWindow":{},"MultiAZ":{"type":"boolean"},"EngineVersion":{},"AllowMajorVersionUpgrade":{"type":"boolean"},"AutoMinorVersionUpgrade":{"type":"boolean"},"ReplicationInstanceIdentifier":{}}},"output":{"type":"structure","members":{"ReplicationInstance":{"shape":"Su"}}}},"ModifyReplicationSubnetGroup":{"input":{"type":"structure","required":["ReplicationSubnetGroupIdentifier","SubnetIds"],"members":{"ReplicationSubnetGroupIdentifier":{},"ReplicationSubnetGroupDescription":{},"SubnetIds":{"shape":"S17"}}},"output":{"type":"structure","members":{"ReplicationSubnetGroup":{"shape":"Sz"}}}},"ModifyReplicationTask":{"input":{"type":"structure","required":["ReplicationTaskArn"],"members":{"ReplicationTaskArn":{},"ReplicationTaskIdentifier":{},"MigrationType":{},"TableMappings":{},"ReplicationTaskSettings":{},"CdcStartTime":{"type":"timestamp"}}},"output":{"type":"structure","members":{"ReplicationTask":{"shape":"S1c"}}}},"RefreshSchemas":{"input":{"type":"structure","required":["EndpointArn","ReplicationInstanceArn"],"members":{"EndpointArn":{},"ReplicationInstanceArn":{}}},"output":{"type":"structure","members":{"RefreshSchemasStatus":{"shape":"S2w"}}}},"ReloadTables":{"input":{"type":"structure","required":["ReplicationTaskArn","TablesToReload"],"members":{"ReplicationTaskArn":{},"TablesToReload":{"type":"list","member":{"type":"structure","members":{"SchemaName":{},"TableName":{}}}}}},"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"}}},"output":{"type":"structure","members":{"ReplicationTask":{"shape":"S1c"}}}},"StopReplicationTask":{"input":{"type":"structure","required":["ReplicationTaskArn"],"members":{"ReplicationTaskArn":{}}},"output":{"type":"structure","members":{"ReplicationTask":{"shape":"S1c"}}}},"TestConnection":{"input":{"type":"structure","required":["ReplicationInstanceArn","EndpointArn"],"members":{"ReplicationInstanceArn":{},"EndpointArn":{}}},"output":{"type":"structure","members":{"Connection":{"shape":"S26"}}}}},"shapes":{"S3":{"type":"list","member":{"locationName":"Tag","type":"structure","members":{"Key":{},"Value":{}}}},"S8":{"type":"string","sensitive":true},"Sb":{"type":"structure","required":["ServiceAccessRoleArn"],"members":{"ServiceAccessRoleArn":{}}},"Sc":{"type":"structure","members":{"ServiceAccessRoleArn":{},"ExternalTableDefinition":{},"CsvRowDelimiter":{},"CsvDelimiter":{},"BucketFolder":{},"BucketName":{},"CompressionType":{}}},"Se":{"type":"structure","members":{"Username":{},"Password":{"shape":"S8"},"ServerName":{},"Port":{"type":"integer"},"DatabaseName":{},"AuthType":{},"AuthMechanism":{},"NestingLevel":{},"ExtractDocId":{},"DocsToInvestigate":{},"AuthSource":{}}},"Sj":{"type":"structure","members":{"EndpointIdentifier":{},"EndpointType":{},"EngineName":{},"Username":{},"ServerName":{},"Port":{"type":"integer"},"DatabaseName":{},"ExtraConnectionAttributes":{},"Status":{},"KmsKeyId":{},"EndpointArn":{},"CertificateArn":{},"SslMode":{},"ExternalId":{},"DynamoDbSettings":{"shape":"Sb"},"S3Settings":{"shape":"Sc"},"MongoDbSettings":{"shape":"Se"}}},"Sl":{"type":"list","member":{"locationName":"EventCategory"}},"Sm":{"type":"list","member":{"locationName":"SourceId"}},"Sp":{"type":"structure","members":{"CustomerAwsId":{},"CustSubscriptionId":{},"SnsTopicArn":{},"Status":{},"SubscriptionCreationTime":{},"SourceType":{},"SourceIdsList":{"shape":"Sm"},"EventCategoriesList":{"shape":"Sl"},"Enabled":{"type":"boolean"}}},"Ss":{"type":"list","member":{"locationName":"VpcSecurityGroupId"}},"Su":{"type":"structure","members":{"ReplicationInstanceIdentifier":{},"ReplicationInstanceClass":{},"ReplicationInstanceStatus":{},"AllocatedStorage":{"type":"integer"},"InstanceCreateTime":{"type":"timestamp"},"VpcSecurityGroups":{"type":"list","member":{"locationName":"VpcSecurityGroupMembership","type":"structure","members":{"VpcSecurityGroupId":{},"Status":{}}}},"AvailabilityZone":{},"ReplicationSubnetGroup":{"shape":"Sz"},"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":{}}},"Sz":{"type":"structure","members":{"ReplicationSubnetGroupIdentifier":{},"ReplicationSubnetGroupDescription":{},"VpcId":{},"SubnetGroupStatus":{},"Subnets":{"type":"list","member":{"locationName":"Subnet","type":"structure","members":{"SubnetIdentifier":{},"SubnetAvailabilityZone":{"type":"structure","members":{"Name":{}}},"SubnetStatus":{}}}}}},"S17":{"type":"list","member":{"locationName":"SubnetIdentifier"}},"S1c":{"type":"structure","members":{"ReplicationTaskIdentifier":{},"SourceEndpointArn":{},"TargetEndpointArn":{},"ReplicationInstanceArn":{},"MigrationType":{},"TableMappings":{},"ReplicationTaskSettings":{},"Status":{},"LastFailureMessage":{},"StopReason":{},"ReplicationTaskCreationDate":{"type":"timestamp"},"ReplicationTaskStartDate":{"type":"timestamp"},"ReplicationTaskArn":{},"ReplicationTaskStats":{"type":"structure","members":{"FullLoadProgressPercent":{"type":"integer"},"ElapsedTimeMillis":{"type":"long"},"TablesLoaded":{"type":"integer"},"TablesLoading":{"type":"integer"},"TablesQueued":{"type":"integer"},"TablesErrored":{"type":"integer"}}}}},"S1h":{"type":"structure","members":{"CertificateIdentifier":{},"CertificateCreationDate":{"type":"timestamp"},"CertificatePem":{},"CertificateWallet":{"type":"blob"},"CertificateArn":{},"CertificateOwner":{},"ValidFromDate":{"type":"timestamp"},"ValidToDate":{"type":"timestamp"},"SigningAlgorithm":{},"KeyLength":{"type":"integer"}}},"S1y":{"type":"list","member":{"locationName":"Filter","type":"structure","required":["Name","Values"],"members":{"Name":{},"Values":{"type":"list","member":{"locationName":"Value"}}}}},"S26":{"type":"structure","members":{"ReplicationInstanceArn":{},"EndpointArn":{},"Status":{},"LastFailureMessage":{},"EndpointIdentifier":{},"ReplicationInstanceIdentifier":{}}},"S2w":{"type":"structure","members":{"EndpointArn":{},"ReplicationInstanceArn":{},"Status":{},"LastRefreshDate":{"type":"timestamp"},"LastFailureMessage":{}}}}}

/***/ }),
/* 147 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeCertificates":{"input_token":"Marker","output_token":"Marker","limit_key":"MaxRecords"},"DescribeConnections":{"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"},"DescribeReplicationInstances":{"input_token":"Marker","output_token":"Marker","limit_key":"MaxRecords"},"DescribeReplicationSubnetGroups":{"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"}}}

/***/ }),
/* 148 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['dynamodb'] = {};
	AWS.DynamoDB = Service.defineService('dynamodb', ['2011-12-05', '2012-08-10']);
	__webpack_require__(149);
	Object.defineProperty(apiLoader.services['dynamodb'], '2011-12-05', {
	  get: function get() {
	    var model = __webpack_require__(155);
	    model.paginators = __webpack_require__(156).pagination;
	    model.waiters = __webpack_require__(157).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['dynamodb'], '2012-08-10', {
	  get: function get() {
	    var model = __webpack_require__(158);
	    model.paginators = __webpack_require__(159).pagination;
	    model.waiters = __webpack_require__(160).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DynamoDB;


/***/ }),
/* 149 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	__webpack_require__(150);

	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) {
	    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);
	    return delay;
	  }
	});


/***/ }),
/* 150 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var Translator = __webpack_require__(151);
	var DynamoDBSet = __webpack_require__(154);

	/**
	 * 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({

	  /**
	   * @api private
	   */
	  operations: {
	    batchGetItem: 'batchGet',
	    batchWriteItem: 'batchWrite',
	    putItem: 'put',
	    getItem: 'get',
	    deleteItem: 'delete',
	    updateItem: 'update',
	    scan: 'scan',
	    query: 'query'
	  },

	  /**
	   * 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.
	   * @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);
	    }
	  },

	  /**
	   * 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 self = this;
	    var request = self.service.batchGetItem(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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 self = this;
	    var request = self.service.batchWriteItem(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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 self = this;
	    var request = self.service.deleteItem(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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 self = this;
	    var request = self.service.getItem(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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 put(params, callback) {
	    var self = this;
	    var request = self.service.putItem(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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 self = this;
	    var request = self.service.updateItem(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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 self = this;
	    var request = self.service.scan(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	   /**
	    * 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 self = this;
	    var request = self.service.query(params);
	    self.setupRequest(request);
	    self.setupResponse(request);
	    if (typeof callback === 'function') {
	      request.send(callback);
	    }
	    return request;
	  },

	  /**
	   * 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);
	      }
	    };
	  }

	});

	module.exports = AWS.DynamoDB.DocumentClient;


/***/ }),
/* 151 */
/***/ (function(module, exports, __webpack_require__) {

	var util = __webpack_require__(4).util;
	var convert = __webpack_require__(152);

	var Translator = function(options) {
	  options = options || {};
	  this.attrValue = options.attrValue;
	  this.convertEmptyValues = Boolean(options.convertEmptyValues);
	};

	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});
	  }
	  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);
	};

	module.exports = Translator;


/***/ }),
/* 152 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var util = AWS.util;
	var typeOf = __webpack_require__(153).typeOf;
	var DynamoDBSet = __webpack_require__(154);

	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`
	   * @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') {
	      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`
	   *
	   * @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
	   *
	   * @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) {
	    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]);
	        }
	        return map;
	      } else if (type === 'L') {
	        list = [];
	        for (i = 0; i < values.length; i++) {
	          list.push(convertOutput(values[i]));
	        }
	        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(Number(values[i]));
	        }
	        return new DynamoDBSet(list);
	      } else if (type === 'BS') {
	        list = [];
	        for (i = 0; i < values.length; i++) {
	          list.push(new util.Buffer(values[i]));
	        }
	        return new DynamoDBSet(list);
	      } else if (type === 'S') {
	        return values + '';
	      } else if (type === 'N') {
	        return Number(values);
	      } else if (type === 'B') {
	        return new util.Buffer(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
	   *
	   * @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) {
	    return AWS.DynamoDB.Converter.output({M: data});
	  }
	};

	/**
	 * @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 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;
	}

	module.exports = AWS.DynamoDB.Converter;


/***/ }),
/* 153 */
/***/ (function(module, exports, __webpack_require__) {

	var util = __webpack_require__(4).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 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;
	}

	module.exports = {
	  typeOf: typeOf,
	  isBinary: isBinary
	};


/***/ }),
/* 154 */
/***/ (function(module, exports, __webpack_require__) {

	var util = __webpack_require__(4).util;
	var typeOf = __webpack_require__(153).typeOf;

	/**
	 * @api private
	 */
	var DynamoDBSet = util.inherit({

	  constructor: function Set(list, options) {
	    options = options || {};
	    this.initialize(list, options.validate);
	  },

	  initialize: function(list, validate) {
	    var self = this;
	    self.values = [].concat(list);
	    self.detectType();
	    if (validate) {
	      self.validate();
	    }
	  },

	  detectType: function() {
	    var self = this;
	    var value = self.values[0];
	    if (typeOf(value) === 'String') {
	      self.type = 'String';
	    } else if (typeOf(value) === 'Number') {
	      self.type = 'Number';
	    } else if (typeOf(value) === 'Binary') {
	      self.type = 'Binary';
	    } else {
	      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 (typeOf(values[i]) !== self.type) {
	        throw util.error(new Error(), {
	          code: 'InvalidType',
	          message: self.type + ' Set contains ' + typeOf(values[i]) + ' value'
	        });
	      }
	    }
	  }

	});

	module.exports = DynamoDBSet;


/***/ }),
/* 155 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2011-12-05","endpointPrefix":"dynamodb","jsonVersion":"1.0","protocol":"json","serviceAbbreviation":"DynamoDB","serviceFullName":"Amazon 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":{}}}}}

/***/ }),
/* 156 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 157 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 158 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-08-10","endpointPrefix":"dynamodb","jsonVersion":"1.0","protocol":"json","serviceAbbreviation":"DynamoDB","serviceFullName":"Amazon DynamoDB","signatureVersion":"v4","targetPrefix":"DynamoDB_20120810","uid":"dynamodb-2012-08-10"},"operations":{"BatchGetItem":{"input":{"type":"structure","required":["RequestItems"],"members":{"RequestItems":{"shape":"S2"},"ReturnConsumedCapacity":{}}},"output":{"type":"structure","members":{"Responses":{"type":"map","key":{},"value":{"shape":"Sr"}},"UnprocessedKeys":{"shape":"S2"},"ConsumedCapacity":{"shape":"St"}}}},"BatchWriteItem":{"input":{"type":"structure","required":["RequestItems"],"members":{"RequestItems":{"shape":"S10"},"ReturnConsumedCapacity":{},"ReturnItemCollectionMetrics":{}}},"output":{"type":"structure","members":{"UnprocessedItems":{"shape":"S10"},"ItemCollectionMetrics":{"type":"map","key":{},"value":{"type":"list","member":{"shape":"S1a"}}},"ConsumedCapacity":{"shape":"St"}}}},"CreateTable":{"input":{"type":"structure","required":["AttributeDefinitions","TableName","KeySchema","ProvisionedThroughput"],"members":{"AttributeDefinitions":{"shape":"S1f"},"TableName":{},"KeySchema":{"shape":"S1j"},"LocalSecondaryIndexes":{"type":"list","member":{"type":"structure","required":["IndexName","KeySchema","Projection"],"members":{"IndexName":{},"KeySchema":{"shape":"S1j"},"Projection":{"shape":"S1o"}}}},"GlobalSecondaryIndexes":{"type":"list","member":{"type":"structure","required":["IndexName","KeySchema","Projection","ProvisionedThroughput"],"members":{"IndexName":{},"KeySchema":{"shape":"S1j"},"Projection":{"shape":"S1o"},"ProvisionedThroughput":{"shape":"S1u"}}}},"ProvisionedThroughput":{"shape":"S1u"},"StreamSpecification":{"shape":"S1w"}}},"output":{"type":"structure","members":{"TableDescription":{"shape":"S20"}}}},"DeleteItem":{"input":{"type":"structure","required":["TableName","Key"],"members":{"TableName":{},"Key":{"shape":"S6"},"Expected":{"shape":"S2e"},"ConditionalOperator":{},"ReturnValues":{},"ReturnConsumedCapacity":{},"ReturnItemCollectionMetrics":{},"ConditionExpression":{},"ExpressionAttributeNames":{"shape":"Sm"},"ExpressionAttributeValues":{"shape":"S2m"}}},"output":{"type":"structure","members":{"Attributes":{"shape":"Ss"},"ConsumedCapacity":{"shape":"Su"},"ItemCollectionMetrics":{"shape":"S1a"}}}},"DeleteTable":{"input":{"type":"structure","required":["TableName"],"members":{"TableName":{}}},"output":{"type":"structure","members":{"TableDescription":{"shape":"S20"}}}},"DescribeLimits":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"AccountMaxReadCapacityUnits":{"type":"long"},"AccountMaxWriteCapacityUnits":{"type":"long"},"TableMaxReadCapacityUnits":{"type":"long"},"TableMaxWriteCapacityUnits":{"type":"long"}}}},"DescribeTable":{"input":{"type":"structure","required":["TableName"],"members":{"TableName":{}}},"output":{"type":"structure","members":{"Table":{"shape":"S20"}}}},"DescribeTimeToLive":{"input":{"type":"structure","required":["TableName"],"members":{"TableName":{}}},"output":{"type":"structure","members":{"TimeToLiveDescription":{"type":"structure","members":{"TimeToLiveStatus":{},"AttributeName":{}}}}}},"GetItem":{"input":{"type":"structure","required":["TableName","Key"],"members":{"TableName":{},"Key":{"shape":"S6"},"AttributesToGet":{"shape":"Sj"},"ConsistentRead":{"type":"boolean"},"ReturnConsumedCapacity":{},"ProjectionExpression":{},"ExpressionAttributeNames":{"shape":"Sm"}}},"output":{"type":"structure","members":{"Item":{"shape":"Ss"},"ConsumedCapacity":{"shape":"Su"}}}},"ListTables":{"input":{"type":"structure","members":{"ExclusiveStartTableName":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"TableNames":{"type":"list","member":{}},"LastEvaluatedTableName":{}}}},"ListTagsOfResource":{"input":{"type":"structure","required":["ResourceArn"],"members":{"ResourceArn":{},"NextToken":{}}},"output":{"type":"structure","members":{"Tags":{"shape":"S3a"},"NextToken":{}}}},"PutItem":{"input":{"type":"structure","required":["TableName","Item"],"members":{"TableName":{},"Item":{"shape":"S14"},"Expected":{"shape":"S2e"},"ReturnValues":{},"ReturnConsumedCapacity":{},"ReturnItemCollectionMetrics":{},"ConditionalOperator":{},"ConditionExpression":{},"ExpressionAttributeNames":{"shape":"Sm"},"ExpressionAttributeValues":{"shape":"S2m"}}},"output":{"type":"structure","members":{"Attributes":{"shape":"Ss"},"ConsumedCapacity":{"shape":"Su"},"ItemCollectionMetrics":{"shape":"S1a"}}}},"Query":{"input":{"type":"structure","required":["TableName"],"members":{"TableName":{},"IndexName":{},"Select":{},"AttributesToGet":{"shape":"Sj"},"Limit":{"type":"integer"},"ConsistentRead":{"type":"boolean"},"KeyConditions":{"type":"map","key":{},"value":{"shape":"S3k"}},"QueryFilter":{"shape":"S3l"},"ConditionalOperator":{},"ScanIndexForward":{"type":"boolean"},"ExclusiveStartKey":{"shape":"S6"},"ReturnConsumedCapacity":{},"ProjectionExpression":{},"FilterExpression":{},"KeyConditionExpression":{},"ExpressionAttributeNames":{"shape":"Sm"},"ExpressionAttributeValues":{"shape":"S2m"}}},"output":{"type":"structure","members":{"Items":{"shape":"Sr"},"Count":{"type":"integer"},"ScannedCount":{"type":"integer"},"LastEvaluatedKey":{"shape":"S6"},"ConsumedCapacity":{"shape":"Su"}}}},"Scan":{"input":{"type":"structure","required":["TableName"],"members":{"TableName":{},"IndexName":{},"AttributesToGet":{"shape":"Sj"},"Limit":{"type":"integer"},"Select":{},"ScanFilter":{"shape":"S3l"},"ConditionalOperator":{},"ExclusiveStartKey":{"shape":"S6"},"ReturnConsumedCapacity":{},"TotalSegments":{"type":"integer"},"Segment":{"type":"integer"},"ProjectionExpression":{},"FilterExpression":{},"ExpressionAttributeNames":{"shape":"Sm"},"ExpressionAttributeValues":{"shape":"S2m"},"ConsistentRead":{"type":"boolean"}}},"output":{"type":"structure","members":{"Items":{"shape":"Sr"},"Count":{"type":"integer"},"ScannedCount":{"type":"integer"},"LastEvaluatedKey":{"shape":"S6"},"ConsumedCapacity":{"shape":"Su"}}}},"TagResource":{"input":{"type":"structure","required":["ResourceArn","Tags"],"members":{"ResourceArn":{},"Tags":{"shape":"S3a"}}}},"UntagResource":{"input":{"type":"structure","required":["ResourceArn","TagKeys"],"members":{"ResourceArn":{},"TagKeys":{"type":"list","member":{}}}}},"UpdateItem":{"input":{"type":"structure","required":["TableName","Key"],"members":{"TableName":{},"Key":{"shape":"S6"},"AttributeUpdates":{"type":"map","key":{},"value":{"type":"structure","members":{"Value":{"shape":"S8"},"Action":{}}}},"Expected":{"shape":"S2e"},"ConditionalOperator":{},"ReturnValues":{},"ReturnConsumedCapacity":{},"ReturnItemCollectionMetrics":{},"UpdateExpression":{},"ConditionExpression":{},"ExpressionAttributeNames":{"shape":"Sm"},"ExpressionAttributeValues":{"shape":"S2m"}}},"output":{"type":"structure","members":{"Attributes":{"shape":"Ss"},"ConsumedCapacity":{"shape":"Su"},"ItemCollectionMetrics":{"shape":"S1a"}}}},"UpdateTable":{"input":{"type":"structure","required":["TableName"],"members":{"AttributeDefinitions":{"shape":"S1f"},"TableName":{},"ProvisionedThroughput":{"shape":"S1u"},"GlobalSecondaryIndexUpdates":{"type":"list","member":{"type":"structure","members":{"Update":{"type":"structure","required":["IndexName","ProvisionedThroughput"],"members":{"IndexName":{},"ProvisionedThroughput":{"shape":"S1u"}}},"Create":{"type":"structure","required":["IndexName","KeySchema","Projection","ProvisionedThroughput"],"members":{"IndexName":{},"KeySchema":{"shape":"S1j"},"Projection":{"shape":"S1o"},"ProvisionedThroughput":{"shape":"S1u"}}},"Delete":{"type":"structure","required":["IndexName"],"members":{"IndexName":{}}}}}},"StreamSpecification":{"shape":"S1w"}}},"output":{"type":"structure","members":{"TableDescription":{"shape":"S20"}}}},"UpdateTimeToLive":{"input":{"type":"structure","required":["TableName","TimeToLiveSpecification"],"members":{"TableName":{},"TimeToLiveSpecification":{"shape":"S4a"}}},"output":{"type":"structure","members":{"TimeToLiveSpecification":{"shape":"S4a"}}}}},"shapes":{"S2":{"type":"map","key":{},"value":{"type":"structure","required":["Keys"],"members":{"Keys":{"type":"list","member":{"shape":"S6"}},"AttributesToGet":{"shape":"Sj"},"ConsistentRead":{"type":"boolean"},"ProjectionExpression":{},"ExpressionAttributeNames":{"shape":"Sm"}}}},"S6":{"type":"map","key":{},"value":{"shape":"S8"}},"S8":{"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":"S8"}},"L":{"type":"list","member":{"shape":"S8"}},"NULL":{"type":"boolean"},"BOOL":{"type":"boolean"}}},"Sj":{"type":"list","member":{}},"Sm":{"type":"map","key":{},"value":{}},"Sr":{"type":"list","member":{"shape":"Ss"}},"Ss":{"type":"map","key":{},"value":{"shape":"S8"}},"St":{"type":"list","member":{"shape":"Su"}},"Su":{"type":"structure","members":{"TableName":{},"CapacityUnits":{"type":"double"},"Table":{"shape":"Sw"},"LocalSecondaryIndexes":{"shape":"Sx"},"GlobalSecondaryIndexes":{"shape":"Sx"}}},"Sw":{"type":"structure","members":{"CapacityUnits":{"type":"double"}}},"Sx":{"type":"map","key":{},"value":{"shape":"Sw"}},"S10":{"type":"map","key":{},"value":{"type":"list","member":{"type":"structure","members":{"PutRequest":{"type":"structure","required":["Item"],"members":{"Item":{"shape":"S14"}}},"DeleteRequest":{"type":"structure","required":["Key"],"members":{"Key":{"shape":"S6"}}}}}}},"S14":{"type":"map","key":{},"value":{"shape":"S8"}},"S1a":{"type":"structure","members":{"ItemCollectionKey":{"type":"map","key":{},"value":{"shape":"S8"}},"SizeEstimateRangeGB":{"type":"list","member":{"type":"double"}}}},"S1f":{"type":"list","member":{"type":"structure","required":["AttributeName","AttributeType"],"members":{"AttributeName":{},"AttributeType":{}}}},"S1j":{"type":"list","member":{"type":"structure","required":["AttributeName","KeyType"],"members":{"AttributeName":{},"KeyType":{}}}},"S1o":{"type":"structure","members":{"ProjectionType":{},"NonKeyAttributes":{"type":"list","member":{}}}},"S1u":{"type":"structure","required":["ReadCapacityUnits","WriteCapacityUnits"],"members":{"ReadCapacityUnits":{"type":"long"},"WriteCapacityUnits":{"type":"long"}}},"S1w":{"type":"structure","members":{"StreamEnabled":{"type":"boolean"},"StreamViewType":{}}},"S20":{"type":"structure","members":{"AttributeDefinitions":{"shape":"S1f"},"TableName":{},"KeySchema":{"shape":"S1j"},"TableStatus":{},"CreationDateTime":{"type":"timestamp"},"ProvisionedThroughput":{"shape":"S23"},"TableSizeBytes":{"type":"long"},"ItemCount":{"type":"long"},"TableArn":{},"LocalSecondaryIndexes":{"type":"list","member":{"type":"structure","members":{"IndexName":{},"KeySchema":{"shape":"S1j"},"Projection":{"shape":"S1o"},"IndexSizeBytes":{"type":"long"},"ItemCount":{"type":"long"},"IndexArn":{}}}},"GlobalSecondaryIndexes":{"type":"list","member":{"type":"structure","members":{"IndexName":{},"KeySchema":{"shape":"S1j"},"Projection":{"shape":"S1o"},"IndexStatus":{},"Backfilling":{"type":"boolean"},"ProvisionedThroughput":{"shape":"S23"},"IndexSizeBytes":{"type":"long"},"ItemCount":{"type":"long"},"IndexArn":{}}}},"StreamSpecification":{"shape":"S1w"},"LatestStreamLabel":{},"LatestStreamArn":{}}},"S23":{"type":"structure","members":{"LastIncreaseDateTime":{"type":"timestamp"},"LastDecreaseDateTime":{"type":"timestamp"},"NumberOfDecreasesToday":{"type":"long"},"ReadCapacityUnits":{"type":"long"},"WriteCapacityUnits":{"type":"long"}}},"S2e":{"type":"map","key":{},"value":{"type":"structure","members":{"Value":{"shape":"S8"},"Exists":{"type":"boolean"},"ComparisonOperator":{},"AttributeValueList":{"shape":"S2i"}}}},"S2i":{"type":"list","member":{"shape":"S8"}},"S2m":{"type":"map","key":{},"value":{"shape":"S8"}},"S3a":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"S3k":{"type":"structure","required":["ComparisonOperator"],"members":{"AttributeValueList":{"shape":"S2i"},"ComparisonOperator":{}}},"S3l":{"type":"map","key":{},"value":{"shape":"S3k"}},"S4a":{"type":"structure","required":["Enabled","AttributeName"],"members":{"Enabled":{"type":"boolean"},"AttributeName":{}}}}}

/***/ }),
/* 159 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 160 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 161 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(162);
	    model.paginators = __webpack_require__(163).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DynamoDBStreams;


/***/ }),
/* 162 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-08-10","endpointPrefix":"streams.dynamodb","jsonVersion":"1.0","protocol":"json","serviceFullName":"Amazon 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"}}}}}

/***/ }),
/* 163 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 164 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(165);
	Object.defineProperty(apiLoader.services['ec2'], '2016-11-15', {
	  get: function get() {
	    var model = __webpack_require__(166);
	    model.paginators = __webpack_require__(167).pagination;
	    model.waiters = __webpack_require__(168).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.EC2;


/***/ }),
/* 165 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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;
	  }
	});


/***/ }),
/* 166 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-15","endpointPrefix":"ec2","protocol":"ec2","serviceAbbreviation":"Amazon EC2","serviceFullName":"Amazon Elastic Compute Cloud","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"}}}},"AcceptVpcPeeringConnection":{"input":{"type":"structure","members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"VpcPeeringConnectionId":{"locationName":"vpcPeeringConnectionId"}}},"output":{"type":"structure","members":{"VpcPeeringConnection":{"shape":"Sb","locationName":"vpcPeeringConnection"}}}},"AllocateAddress":{"input":{"type":"structure","members":{"Domain":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"PublicIp":{"locationName":"publicIp"},"AllocationId":{"locationName":"allocationId"},"Domain":{"locationName":"domain"}}}},"AllocateHosts":{"input":{"type":"structure","required":["AvailabilityZone","InstanceType","Quantity"],"members":{"AutoPlacement":{"locationName":"autoPlacement"},"AvailabilityZone":{"locationName":"availabilityZone"},"ClientToken":{"locationName":"clientToken"},"InstanceType":{"locationName":"instanceType"},"Quantity":{"locationName":"quantity","type":"integer"}}},"output":{"type":"structure","members":{"HostIds":{"shape":"Sr","locationName":"hostIdSet"}}}},"AssignIpv6Addresses":{"input":{"type":"structure","required":["NetworkInterfaceId"],"members":{"Ipv6AddressCount":{"locationName":"ipv6AddressCount","type":"integer"},"Ipv6Addresses":{"shape":"St","locationName":"ipv6Addresses"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"}}},"output":{"type":"structure","members":{"AssignedIpv6Addresses":{"shape":"St","locationName":"assignedIpv6Addresses"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"}}}},"AssignPrivateIpAddresses":{"input":{"type":"structure","required":["NetworkInterfaceId"],"members":{"AllowReassignment":{"locationName":"allowReassignment","type":"boolean"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"PrivateIpAddresses":{"shape":"Sw","locationName":"privateIpAddress"},"SecondaryPrivateIpAddressCount":{"locationName":"secondaryPrivateIpAddressCount","type":"integer"}}}},"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"}}}},"AssociateDhcpOptions":{"input":{"type":"structure","required":["DhcpOptionsId","VpcId"],"members":{"DhcpOptionsId":{},"VpcId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"AssociateIamInstanceProfile":{"input":{"type":"structure","required":["IamInstanceProfile","InstanceId"],"members":{"IamInstanceProfile":{"shape":"S11"},"InstanceId":{}}},"output":{"type":"structure","members":{"IamInstanceProfileAssociation":{"shape":"S13","locationName":"iamInstanceProfileAssociation"}}}},"AssociateRouteTable":{"input":{"type":"structure","required":["RouteTableId","SubnetId"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"RouteTableId":{"locationName":"routeTableId"},"SubnetId":{"locationName":"subnetId"}}},"output":{"type":"structure","members":{"AssociationId":{"locationName":"associationId"}}}},"AssociateSubnetCidrBlock":{"input":{"type":"structure","required":["Ipv6CidrBlock","SubnetId"],"members":{"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"},"SubnetId":{"locationName":"subnetId"}}},"output":{"type":"structure","members":{"Ipv6CidrBlockAssociation":{"shape":"S1a","locationName":"ipv6CidrBlockAssociation"},"SubnetId":{"locationName":"subnetId"}}}},"AssociateVpcCidrBlock":{"input":{"type":"structure","required":["VpcId"],"members":{"AmazonProvidedIpv6CidrBlock":{"locationName":"amazonProvidedIpv6CidrBlock","type":"boolean"},"VpcId":{"locationName":"vpcId"}}},"output":{"type":"structure","members":{"Ipv6CidrBlockAssociation":{"shape":"S1f","locationName":"ipv6CidrBlockAssociation"},"VpcId":{"locationName":"vpcId"}}}},"AttachClassicLinkVpc":{"input":{"type":"structure","required":["Groups","InstanceId","VpcId"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"Groups":{"shape":"S1j","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"}}},"output":{"type":"structure","members":{"AttachmentId":{"locationName":"attachmentId"}}}},"AttachVolume":{"input":{"type":"structure","required":["Device","InstanceId","VolumeId"],"members":{"Device":{},"InstanceId":{},"VolumeId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"shape":"S1p"}},"AttachVpnGateway":{"input":{"type":"structure","required":["VpcId","VpnGatewayId"],"members":{"VpcId":{},"VpnGatewayId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"VpcAttachment":{"shape":"S1t","locationName":"attachment"}}}},"AuthorizeSecurityGroupEgress":{"input":{"type":"structure","required":["GroupId"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"GroupId":{"locationName":"groupId"},"IpPermissions":{"shape":"S1w","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":"S1w"},"IpProtocol":{},"SourceSecurityGroupName":{},"SourceSecurityGroupOwnerId":{},"ToPort":{"type":"integer"},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"BundleInstance":{"input":{"type":"structure","required":["InstanceId","Storage"],"members":{"InstanceId":{},"Storage":{"shape":"S28"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"BundleTask":{"shape":"S2c","locationName":"bundleInstanceTask"}}}},"CancelBundleTask":{"input":{"type":"structure","required":["BundleId"],"members":{"BundleId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"BundleTask":{"shape":"S2c","locationName":"bundleInstanceTask"}}}},"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":"S2n","locationName":"reservedInstancesListingsSet"}}}},"CancelSpotFleetRequests":{"input":{"type":"structure","required":["SpotFleetRequestIds","TerminateInstances"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"SpotFleetRequestIds":{"shape":"S2z","locationName":"spotFleetRequestId"},"TerminateInstances":{"locationName":"terminateInstances","type":"boolean"}}},"output":{"type":"structure","members":{"SuccessfulFleetRequests":{"locationName":"successfulFleetRequestSet","type":"list","member":{"locationName":"item","type":"structure","required":["CurrentSpotFleetRequestState","PreviousSpotFleetRequestState","SpotFleetRequestId"],"members":{"CurrentSpotFleetRequestState":{"locationName":"currentSpotFleetRequestState"},"PreviousSpotFleetRequestState":{"locationName":"previousSpotFleetRequestState"},"SpotFleetRequestId":{"locationName":"spotFleetRequestId"}}}},"UnsuccessfulFleetRequests":{"locationName":"unsuccessfulFleetRequestSet","type":"list","member":{"locationName":"item","type":"structure","required":["Error","SpotFleetRequestId"],"members":{"Error":{"locationName":"error","type":"structure","required":["Code","Message"],"members":{"Code":{"locationName":"code"},"Message":{"locationName":"message"}}},"SpotFleetRequestId":{"locationName":"spotFleetRequestId"}}}}}}},"CancelSpotInstanceRequests":{"input":{"type":"structure","required":["SpotInstanceRequestIds"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"SpotInstanceRequestIds":{"shape":"S39","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"}}}},"CopyImage":{"input":{"type":"structure","required":["Name","SourceImageId","SourceRegion"],"members":{"ClientToken":{},"Description":{},"Encrypted":{"locationName":"encrypted","type":"boolean"},"KmsKeyId":{"locationName":"kmsKeyId"},"Name":{},"SourceImageId":{},"SourceRegion":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"ImageId":{"locationName":"imageId"}}}},"CopySnapshot":{"input":{"type":"structure","required":["SourceRegion","SourceSnapshotId"],"members":{"Description":{},"DestinationRegion":{"locationName":"destinationRegion"},"Encrypted":{"locationName":"encrypted","type":"boolean"},"KmsKeyId":{"locationName":"kmsKeyId"},"PresignedUrl":{"locationName":"presignedUrl"},"SourceRegion":{},"SourceSnapshotId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"SnapshotId":{"locationName":"snapshotId"}}}},"CreateCustomerGateway":{"input":{"type":"structure","required":["BgpAsn","PublicIp","Type"],"members":{"BgpAsn":{"type":"integer"},"PublicIp":{"locationName":"IpAddress"},"Type":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"CustomerGateway":{"shape":"S3n","locationName":"customerGateway"}}}},"CreateDefaultVpc":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"}}},"output":{"type":"structure","members":{"Vpc":{"shape":"S3q","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":"S2z","locationName":"Value"}}}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"DhcpOptions":{"shape":"S3y","locationName":"dhcpOptions"}}}},"CreateEgressOnlyInternetGateway":{"input":{"type":"structure","required":["VpcId"],"members":{"ClientToken":{},"DryRun":{"type":"boolean"},"VpcId":{}}},"output":{"type":"structure","members":{"ClientToken":{"locationName":"clientToken"},"EgressOnlyInternetGateway":{"shape":"S45","locationName":"egressOnlyInternetGateway"}}}},"CreateFlowLogs":{"input":{"type":"structure","required":["DeliverLogsPermissionArn","LogGroupName","ResourceIds","ResourceType","TrafficType"],"members":{"ClientToken":{},"DeliverLogsPermissionArn":{},"LogGroupName":{},"ResourceIds":{"shape":"S2z","locationName":"ResourceId"},"ResourceType":{},"TrafficType":{}}},"output":{"type":"structure","members":{"ClientToken":{"locationName":"clientToken"},"FlowLogIds":{"shape":"S2z","locationName":"flowLogIdSet"},"Unsuccessful":{"shape":"S4d","locationName":"unsuccessful"}}}},"CreateFpgaImage":{"input":{"type":"structure","required":["InputStorageLocation"],"members":{"DryRun":{"type":"boolean"},"InputStorageLocation":{"shape":"S4h"},"LogsStorageLocation":{"shape":"S4h"},"Description":{},"Name":{},"ClientToken":{}}},"output":{"type":"structure","members":{"FpgaImageId":{"locationName":"fpgaImageId"},"FpgaImageGlobalId":{"locationName":"fpgaImageGlobalId"}}}},"CreateImage":{"input":{"type":"structure","required":["InstanceId","Name"],"members":{"BlockDeviceMappings":{"shape":"S4k","locationName":"blockDeviceMapping"},"Description":{"locationName":"description"},"DryRun":{"locationName":"dryRun","type":"boolean"},"InstanceId":{"locationName":"instanceId"},"Name":{"locationName":"name"},"NoReboot":{"locationName":"noReboot","type":"boolean"}}},"output":{"type":"structure","members":{"ImageId":{"locationName":"imageId"}}}},"CreateInstanceExportTask":{"input":{"type":"structure","required":["InstanceId"],"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"}}},"output":{"type":"structure","members":{"ExportTask":{"shape":"S4v","locationName":"exportTask"}}}},"CreateInternetGateway":{"input":{"type":"structure","members":{"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"InternetGateway":{"shape":"S51","locationName":"internetGateway"}}}},"CreateKeyPair":{"input":{"type":"structure","required":["KeyName"],"members":{"KeyName":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"KeyFingerprint":{"locationName":"keyFingerprint"},"KeyMaterial":{"locationName":"keyMaterial"},"KeyName":{"locationName":"keyName"}}}},"CreateNatGateway":{"input":{"type":"structure","required":["AllocationId","SubnetId"],"members":{"AllocationId":{},"ClientToken":{},"SubnetId":{}}},"output":{"type":"structure","members":{"ClientToken":{"locationName":"clientToken"},"NatGateway":{"shape":"S56","locationName":"natGateway"}}}},"CreateNetworkAcl":{"input":{"type":"structure","required":["VpcId"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"VpcId":{"locationName":"vpcId"}}},"output":{"type":"structure","members":{"NetworkAcl":{"shape":"S5d","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":"S5i","locationName":"Icmp"},"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"},"NetworkAclId":{"locationName":"networkAclId"},"PortRange":{"shape":"S5j","locationName":"portRange"},"Protocol":{"locationName":"protocol"},"RuleAction":{"locationName":"ruleAction"},"RuleNumber":{"locationName":"ruleNumber","type":"integer"}}}},"CreateNetworkInterface":{"input":{"type":"structure","required":["SubnetId"],"members":{"Description":{"locationName":"description"},"DryRun":{"locationName":"dryRun","type":"boolean"},"Groups":{"shape":"S5n","locationName":"SecurityGroupId"},"Ipv6AddressCount":{"locationName":"ipv6AddressCount","type":"integer"},"Ipv6Addresses":{"shape":"S5o","locationName":"ipv6Addresses"},"PrivateIpAddress":{"locationName":"privateIpAddress"},"PrivateIpAddresses":{"shape":"S5q","locationName":"privateIpAddresses"},"SecondaryPrivateIpAddressCount":{"locationName":"secondaryPrivateIpAddressCount","type":"integer"},"SubnetId":{"locationName":"subnetId"}}},"output":{"type":"structure","members":{"NetworkInterface":{"shape":"S5t","locationName":"networkInterface"}}}},"CreateNetworkInterfacePermission":{"input":{"type":"structure","required":["NetworkInterfaceId","Permission"],"members":{"NetworkInterfaceId":{},"AwsAccountId":{},"AwsService":{},"Permission":{},"DryRun":{"type":"boolean"}}},"output":{"type":"structure","members":{"InterfacePermission":{"shape":"S67","locationName":"interfacePermission"}}}},"CreatePlacementGroup":{"input":{"type":"structure","required":["GroupName","Strategy"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"GroupName":{"locationName":"groupName"},"Strategy":{"locationName":"strategy"}}}},"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":"S2n","locationName":"reservedInstancesListingsSet"}}}},"CreateRoute":{"input":{"type":"structure","required":["RouteTableId"],"members":{"DestinationCidrBlock":{"locationName":"destinationCidrBlock"},"DestinationIpv6CidrBlock":{"locationName":"destinationIpv6CidrBlock"},"DryRun":{"locationName":"dryRun","type":"boolean"},"EgressOnlyInternetGatewayId":{"locationName":"egressOnlyInternetGatewayId"},"GatewayId":{"locationName":"gatewayId"},"InstanceId":{"locationName":"instanceId"},"NatGatewayId":{"locationName":"natGatewayId"},"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"}}},"output":{"type":"structure","members":{"RouteTable":{"shape":"S6k","locationName":"routeTable"}}}},"CreateSecurityGroup":{"input":{"type":"structure","required":["Description","GroupName"],"members":{"Description":{"locationName":"GroupDescription"},"GroupName":{},"VpcId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"GroupId":{"locationName":"groupId"}}}},"CreateSnapshot":{"input":{"type":"structure","required":["VolumeId"],"members":{"Description":{},"VolumeId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"shape":"S6w"}},"CreateSpotDatafeedSubscription":{"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"locationName":"bucket"},"DryRun":{"locationName":"dryRun","type":"boolean"},"Prefix":{"locationName":"prefix"}}},"output":{"type":"structure","members":{"SpotDatafeedSubscription":{"shape":"S70","locationName":"spotDatafeedSubscription"}}}},"CreateSubnet":{"input":{"type":"structure","required":["CidrBlock","VpcId"],"members":{"AvailabilityZone":{},"CidrBlock":{},"Ipv6CidrBlock":{},"VpcId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"Subnet":{"shape":"S75","locationName":"subnet"}}}},"CreateTags":{"input":{"type":"structure","required":["Resources","Tags"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"Resources":{"shape":"S79","locationName":"ResourceId"},"Tags":{"shape":"Sj","locationName":"Tag"}}}},"CreateVolume":{"input":{"type":"structure","required":["AvailabilityZone"],"members":{"AvailabilityZone":{},"Encrypted":{"locationName":"encrypted","type":"boolean"},"Iops":{"type":"integer"},"KmsKeyId":{},"Size":{"type":"integer"},"SnapshotId":{},"VolumeType":{},"DryRun":{"locationName":"dryRun","type":"boolean"},"TagSpecifications":{"shape":"S7b","locationName":"TagSpecification"}}},"output":{"shape":"S7e"}},"CreateVpc":{"input":{"type":"structure","required":["CidrBlock"],"members":{"CidrBlock":{},"AmazonProvidedIpv6CidrBlock":{"locationName":"amazonProvidedIpv6CidrBlock","type":"boolean"},"DryRun":{"locationName":"dryRun","type":"boolean"},"InstanceTenancy":{"locationName":"instanceTenancy"}}},"output":{"type":"structure","members":{"Vpc":{"shape":"S3q","locationName":"vpc"}}}},"CreateVpcEndpoint":{"input":{"type":"structure","required":["ServiceName","VpcId"],"members":{"ClientToken":{},"DryRun":{"type":"boolean"},"PolicyDocument":{},"RouteTableIds":{"shape":"S2z","locationName":"RouteTableId"},"ServiceName":{},"VpcId":{}}},"output":{"type":"structure","members":{"ClientToken":{"locationName":"clientToken"},"VpcEndpoint":{"shape":"S7l","locationName":"vpcEndpoint"}}}},"CreateVpcPeeringConnection":{"input":{"type":"structure","members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"PeerOwnerId":{"locationName":"peerOwnerId"},"PeerVpcId":{"locationName":"peerVpcId"},"VpcId":{"locationName":"vpcId"}}},"output":{"type":"structure","members":{"VpcPeeringConnection":{"shape":"Sb","locationName":"vpcPeeringConnection"}}}},"CreateVpnConnection":{"input":{"type":"structure","required":["CustomerGatewayId","Type","VpnGatewayId"],"members":{"CustomerGatewayId":{},"Type":{},"VpnGatewayId":{},"DryRun":{"locationName":"dryRun","type":"boolean"},"Options":{"locationName":"options","type":"structure","members":{"StaticRoutesOnly":{"locationName":"staticRoutesOnly","type":"boolean"}}}}},"output":{"type":"structure","members":{"VpnConnection":{"shape":"S7s","locationName":"vpnConnection"}}}},"CreateVpnConnectionRoute":{"input":{"type":"structure","required":["DestinationCidrBlock","VpnConnectionId"],"members":{"DestinationCidrBlock":{},"VpnConnectionId":{}}}},"CreateVpnGateway":{"input":{"type":"structure","required":["Type"],"members":{"AvailabilityZone":{},"Type":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"VpnGateway":{"shape":"S84","locationName":"vpnGateway"}}}},"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"}}}},"DeleteFlowLogs":{"input":{"type":"structure","required":["FlowLogIds"],"members":{"FlowLogIds":{"shape":"S2z","locationName":"FlowLogId"}}},"output":{"type":"structure","members":{"Unsuccessful":{"shape":"S4d","locationName":"unsuccessful"}}}},"DeleteInternetGateway":{"input":{"type":"structure","required":["InternetGatewayId"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"InternetGatewayId":{"locationName":"internetGatewayId"}}}},"DeleteKeyPair":{"input":{"type":"structure","required":["KeyName"],"members":{"KeyName":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"DeleteNatGateway":{"input":{"type":"structure","required":["NatGatewayId"],"members":{"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"}}}},"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"}}}},"DeleteRoute":{"input":{"type":"structure","required":["RouteTableId"],"members":{"DestinationCidrBlock":{"locationName":"destinationCidrBlock"},"DestinationIpv6CidrBlock":{"locationName":"destinationIpv6CidrBlock"},"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":"S79","locationName":"resourceId"},"Tags":{"shape":"Sj","locationName":"tag"}}}},"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"}}}},"DeleteVpcEndpoints":{"input":{"type":"structure","required":["VpcEndpointIds"],"members":{"DryRun":{"type":"boolean"},"VpcEndpointIds":{"shape":"S2z","locationName":"VpcEndpointId"}}},"output":{"type":"structure","members":{"Unsuccessful":{"shape":"S4d","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"}}}},"DeregisterImage":{"input":{"type":"structure","required":["ImageId"],"members":{"ImageId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"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":"S9c","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"}}}}}}},"DescribeAvailabilityZones":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"ZoneNames":{"locationName":"ZoneName","type":"list","member":{"locationName":"ZoneName"}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"AvailabilityZones":{"locationName":"availabilityZoneInfo","type":"list","member":{"locationName":"item","type":"structure","members":{"State":{"locationName":"zoneState"},"Messages":{"locationName":"messageSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Message":{"locationName":"message"}}}},"RegionName":{"locationName":"regionName"},"ZoneName":{"locationName":"zoneName"}}}}}}},"DescribeBundleTasks":{"input":{"type":"structure","members":{"BundleIds":{"locationName":"BundleId","type":"list","member":{"locationName":"BundleId"}},"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"BundleTasks":{"locationName":"bundleInstanceTasksSet","type":"list","member":{"shape":"S2c","locationName":"item"}}}}},"DescribeClassicLinkInstances":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"InstanceIds":{"shape":"S9w","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":"S5w","locationName":"groupSet"},"InstanceId":{"locationName":"instanceId"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VpcId":{"locationName":"vpcId"}}}},"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":"Sa4","locationName":"item"}}}}},"DescribeCustomerGateways":{"input":{"type":"structure","members":{"CustomerGatewayIds":{"locationName":"CustomerGatewayId","type":"list","member":{"locationName":"CustomerGatewayId"}},"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"CustomerGateways":{"locationName":"customerGatewaySet","type":"list","member":{"shape":"S3n","locationName":"item"}}}}},"DescribeDhcpOptions":{"input":{"type":"structure","members":{"DhcpOptionsIds":{"locationName":"DhcpOptionsId","type":"list","member":{"locationName":"DhcpOptionsId"}},"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"DhcpOptions":{"locationName":"dhcpOptionsSet","type":"list","member":{"shape":"S3y","locationName":"item"}}}}},"DescribeEgressOnlyInternetGateways":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"EgressOnlyInternetGatewayIds":{"locationName":"EgressOnlyInternetGatewayId","type":"list","member":{"locationName":"item"}},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"EgressOnlyInternetGateways":{"locationName":"egressOnlyInternetGatewaySet","type":"list","member":{"shape":"S45","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeElasticGpus":{"input":{"type":"structure","members":{"ElasticGpuIds":{"locationName":"ElasticGpuId","type":"list","member":{"locationName":"item"}},"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c","locationName":"Filter"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"ElasticGpuSet":{"locationName":"elasticGpuSet","type":"list","member":{"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"}}}},"MaxResults":{"locationName":"maxResults","type":"integer"},"NextToken":{"locationName":"nextToken"}}}},"DescribeExportTasks":{"input":{"type":"structure","members":{"ExportTaskIds":{"locationName":"exportTaskId","type":"list","member":{"locationName":"ExportTaskId"}}}},"output":{"type":"structure","members":{"ExportTasks":{"locationName":"exportTaskSet","type":"list","member":{"shape":"S4v","locationName":"item"}}}}},"DescribeFlowLogs":{"input":{"type":"structure","members":{"Filter":{"shape":"S9c"},"FlowLogIds":{"shape":"S2z","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"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeFpgaImages":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"FpgaImageIds":{"locationName":"FpgaImageId","type":"list","member":{"locationName":"item"}},"Owners":{"shape":"Sb7","locationName":"Owner"},"Filters":{"shape":"S9c","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":"Sbg","locationName":"productCodes"},"Tags":{"shape":"Sj","locationName":"tags"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeHostReservationOfferings":{"input":{"type":"structure","members":{"Filter":{"shape":"S9c"},"MaxDuration":{"type":"integer"},"MaxResults":{"type":"integer"},"MinDuration":{"type":"integer"},"NextToken":{},"OfferingId":{}}},"output":{"type":"structure","members":{"NextToken":{"locationName":"nextToken"},"OfferingSet":{"locationName":"offeringSet","type":"list","member":{"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":"S9c"},"HostReservationIdSet":{"type":"list","member":{"locationName":"item"}},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"HostReservationSet":{"locationName":"hostReservationSet","type":"list","member":{"type":"structure","members":{"Count":{"locationName":"count","type":"integer"},"CurrencyCode":{"locationName":"currencyCode"},"Duration":{"locationName":"duration","type":"integer"},"End":{"locationName":"end","type":"timestamp"},"HostIdSet":{"shape":"Sbt","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"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeHosts":{"input":{"type":"structure","members":{"Filter":{"shape":"S9c","locationName":"filter"},"HostIds":{"shape":"Sbw","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"},"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"}}}},"State":{"locationName":"state"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeIamInstanceProfileAssociations":{"input":{"type":"structure","members":{"AssociationIds":{"locationName":"AssociationId","type":"list","member":{"locationName":"AssociationId"}},"Filters":{"shape":"S9c","locationName":"Filter"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"IamInstanceProfileAssociations":{"locationName":"iamInstanceProfileAssociationSet","type":"list","member":{"shape":"S13","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeIdFormat":{"input":{"type":"structure","members":{"Resource":{}}},"output":{"type":"structure","members":{"Statuses":{"shape":"Scd","locationName":"statusSet"}}}},"DescribeIdentityIdFormat":{"input":{"type":"structure","required":["PrincipalArn"],"members":{"PrincipalArn":{"locationName":"principalArn"},"Resource":{"locationName":"resource"}}},"output":{"type":"structure","members":{"Statuses":{"shape":"Scd","locationName":"statusSet"}}}},"DescribeImageAttribute":{"input":{"type":"structure","required":["Attribute","ImageId"],"members":{"Attribute":{},"ImageId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"BlockDeviceMappings":{"shape":"Sck","locationName":"blockDeviceMapping"},"ImageId":{"locationName":"imageId"},"LaunchPermissions":{"shape":"Scl","locationName":"launchPermission"},"ProductCodes":{"shape":"Sbg","locationName":"productCodes"},"Description":{"shape":"S42","locationName":"description"},"KernelId":{"shape":"S42","locationName":"kernel"},"RamdiskId":{"shape":"S42","locationName":"ramdisk"},"SriovNetSupport":{"shape":"S42","locationName":"sriovNetSupport"}}}},"DescribeImages":{"input":{"type":"structure","members":{"ExecutableUsers":{"locationName":"ExecutableBy","type":"list","member":{"locationName":"ExecutableBy"}},"Filters":{"shape":"S9c","locationName":"Filter"},"ImageIds":{"locationName":"ImageId","type":"list","member":{"locationName":"ImageId"}},"Owners":{"shape":"Sb7","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"},"ProductCodes":{"shape":"Sbg","locationName":"productCodes"},"RamdiskId":{"locationName":"ramdiskId"},"State":{"locationName":"imageState"},"BlockDeviceMappings":{"shape":"Sck","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":"Scz","locationName":"stateReason"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VirtualizationType":{"locationName":"virtualizationType"}}}}}}},"DescribeImportImageTasks":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c"},"ImportTaskIds":{"shape":"Sd2","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"},"Hypervisor":{"locationName":"hypervisor"},"ImageId":{"locationName":"imageId"},"ImportTaskId":{"locationName":"importTaskId"},"LicenseType":{"locationName":"licenseType"},"Platform":{"locationName":"platform"},"Progress":{"locationName":"progress"},"SnapshotDetails":{"shape":"Sd6","locationName":"snapshotDetailSet"},"Status":{"locationName":"status"},"StatusMessage":{"locationName":"statusMessage"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeImportSnapshotTasks":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c"},"ImportTaskIds":{"shape":"Sd2","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":"Sdd","locationName":"snapshotTaskDetail"}}}},"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":"S5w","locationName":"groupSet"},"BlockDeviceMappings":{"shape":"Sdh","locationName":"blockDeviceMapping"},"DisableApiTermination":{"shape":"Sdk","locationName":"disableApiTermination"},"EnaSupport":{"shape":"Sdk","locationName":"enaSupport"},"EbsOptimized":{"shape":"Sdk","locationName":"ebsOptimized"},"InstanceId":{"locationName":"instanceId"},"InstanceInitiatedShutdownBehavior":{"shape":"S42","locationName":"instanceInitiatedShutdownBehavior"},"InstanceType":{"shape":"S42","locationName":"instanceType"},"KernelId":{"shape":"S42","locationName":"kernel"},"ProductCodes":{"shape":"Sbg","locationName":"productCodes"},"RamdiskId":{"shape":"S42","locationName":"ramdisk"},"RootDeviceName":{"shape":"S42","locationName":"rootDeviceName"},"SourceDestCheck":{"shape":"Sdk","locationName":"sourceDestCheck"},"SriovNetSupport":{"shape":"S42","locationName":"sriovNetSupport"},"UserData":{"shape":"S42","locationName":"userData"}}}},"DescribeInstanceStatus":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"InstanceIds":{"shape":"S9w","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"},"Events":{"locationName":"eventsSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Code":{"locationName":"code"},"Description":{"locationName":"description"},"NotAfter":{"locationName":"notAfter","type":"timestamp"},"NotBefore":{"locationName":"notBefore","type":"timestamp"}}}},"InstanceId":{"locationName":"instanceId"},"InstanceState":{"shape":"Sds","locationName":"instanceState"},"InstanceStatus":{"shape":"Sdu","locationName":"instanceStatus"},"SystemStatus":{"shape":"Sdu","locationName":"systemStatus"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeInstances":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"InstanceIds":{"shape":"S9w","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":"Se3","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeInternetGateways":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"InternetGatewayIds":{"shape":"S2z","locationName":"internetGatewayId"}}},"output":{"type":"structure","members":{"InternetGateways":{"locationName":"internetGatewaySet","type":"list","member":{"shape":"S51","locationName":"item"}}}}},"DescribeKeyPairs":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"KeyNames":{"locationName":"KeyName","type":"list","member":{"locationName":"KeyName"}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"KeyPairs":{"locationName":"keySet","type":"list","member":{"locationName":"item","type":"structure","members":{"KeyFingerprint":{"locationName":"keyFingerprint"},"KeyName":{"locationName":"keyName"}}}}}}},"DescribeMovingAddresses":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"MaxResults":{"locationName":"maxResults","type":"integer"},"NextToken":{"locationName":"nextToken"},"PublicIps":{"shape":"S2z","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":{"Filter":{"shape":"S9c"},"MaxResults":{"type":"integer"},"NatGatewayIds":{"shape":"S2z","locationName":"NatGatewayId"},"NextToken":{}}},"output":{"type":"structure","members":{"NatGateways":{"locationName":"natGatewaySet","type":"list","member":{"shape":"S56","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeNetworkAcls":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"NetworkAclIds":{"shape":"S2z","locationName":"NetworkAclId"}}},"output":{"type":"structure","members":{"NetworkAcls":{"locationName":"networkAclSet","type":"list","member":{"shape":"S5d","locationName":"item"}}}}},"DescribeNetworkInterfaceAttribute":{"input":{"type":"structure","required":["NetworkInterfaceId"],"members":{"Attribute":{"locationName":"attribute"},"DryRun":{"locationName":"dryRun","type":"boolean"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"}}},"output":{"type":"structure","members":{"Attachment":{"shape":"S5v","locationName":"attachment"},"Description":{"shape":"S42","locationName":"description"},"Groups":{"shape":"S5w","locationName":"groupSet"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"SourceDestCheck":{"shape":"Sdk","locationName":"sourceDestCheck"}}}},"DescribeNetworkInterfacePermissions":{"input":{"type":"structure","members":{"NetworkInterfacePermissionIds":{"locationName":"NetworkInterfacePermissionId","type":"list","member":{}},"Filters":{"shape":"S9c","locationName":"Filter"},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"NetworkInterfacePermissions":{"locationName":"networkInterfacePermissions","type":"list","member":{"shape":"S67","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeNetworkInterfaces":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"NetworkInterfaceIds":{"locationName":"NetworkInterfaceId","type":"list","member":{"locationName":"item"}}}},"output":{"type":"structure","members":{"NetworkInterfaces":{"locationName":"networkInterfaceSet","type":"list","member":{"shape":"S5t","locationName":"item"}}}}},"DescribePlacementGroups":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"GroupNames":{"locationName":"groupName","type":"list","member":{}}}},"output":{"type":"structure","members":{"PlacementGroups":{"locationName":"placementGroupSet","type":"list","member":{"locationName":"item","type":"structure","members":{"GroupName":{"locationName":"groupName"},"State":{"locationName":"state"},"Strategy":{"locationName":"strategy"}}}}}}},"DescribePrefixLists":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c","locationName":"Filter"},"MaxResults":{"type":"integer"},"NextToken":{},"PrefixListIds":{"shape":"S2z","locationName":"PrefixListId"}}},"output":{"type":"structure","members":{"NextToken":{"locationName":"nextToken"},"PrefixLists":{"locationName":"prefixListSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Cidrs":{"shape":"S2z","locationName":"cidrSet"},"PrefixListId":{"locationName":"prefixListId"},"PrefixListName":{"locationName":"prefixListName"}}}}}}},"DescribeRegions":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"RegionNames":{"locationName":"RegionName","type":"list","member":{"locationName":"RegionName"}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"Regions":{"locationName":"regionInfo","type":"list","member":{"locationName":"item","type":"structure","members":{"Endpoint":{"locationName":"regionEndpoint"},"RegionName":{"locationName":"regionName"}}}}}}},"DescribeReservedInstances":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"OfferingClass":{},"ReservedInstancesIds":{"shape":"Sfu","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":"Sg2","locationName":"recurringCharges"},"Scope":{"locationName":"scope"},"Tags":{"shape":"Sj","locationName":"tagSet"}}}}}}},"DescribeReservedInstancesListings":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"ReservedInstancesId":{"locationName":"reservedInstancesId"},"ReservedInstancesListingId":{"locationName":"reservedInstancesListingId"}}},"output":{"type":"structure","members":{"ReservedInstancesListings":{"shape":"S2n","locationName":"reservedInstancesListingsSet"}}}},"DescribeReservedInstancesModifications":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","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":"Sgf","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":"S9c","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":"Sg2","locationName":"recurringCharges"},"Scope":{"locationName":"scope"}}}},"NextToken":{"locationName":"nextToken"}}}},"DescribeRouteTables":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"RouteTableIds":{"shape":"S2z","locationName":"RouteTableId"}}},"output":{"type":"structure","members":{"RouteTables":{"locationName":"routeTableSet","type":"list","member":{"shape":"S6k","locationName":"item"}}}}},"DescribeScheduledInstanceAvailability":{"input":{"type":"structure","required":["FirstSlotStartTimeRange","Recurrence"],"members":{"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c","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":"Sgz","locationName":"recurrence"},"SlotDurationInHours":{"locationName":"slotDurationInHours","type":"integer"},"TotalScheduledInstanceHours":{"locationName":"totalScheduledInstanceHours","type":"integer"}}}}}}},"DescribeScheduledInstances":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c","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":"Sh6","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","required":["GroupId","ReferencingVpcId"],"members":{"GroupId":{"locationName":"groupId"},"ReferencingVpcId":{"locationName":"referencingVpcId"},"VpcPeeringConnectionId":{"locationName":"vpcPeeringConnectionId"}}}}}}},"DescribeSecurityGroups":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"GroupIds":{"shape":"S1j","locationName":"GroupId"},"GroupNames":{"shape":"Shd","locationName":"GroupName"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"SecurityGroups":{"locationName":"securityGroupInfo","type":"list","member":{"locationName":"item","type":"structure","members":{"Description":{"locationName":"groupDescription"},"GroupName":{"locationName":"groupName"},"IpPermissions":{"shape":"S1w","locationName":"ipPermissions"},"OwnerId":{"locationName":"ownerId"},"GroupId":{"locationName":"groupId"},"IpPermissionsEgress":{"shape":"S1w","locationName":"ipPermissionsEgress"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VpcId":{"locationName":"vpcId"}}}}}}},"DescribeSnapshotAttribute":{"input":{"type":"structure","required":["Attribute","SnapshotId"],"members":{"Attribute":{},"SnapshotId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"CreateVolumePermissions":{"shape":"Shk","locationName":"createVolumePermission"},"ProductCodes":{"shape":"Sbg","locationName":"productCodes"},"SnapshotId":{"locationName":"snapshotId"}}}},"DescribeSnapshots":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"MaxResults":{"type":"integer"},"NextToken":{},"OwnerIds":{"shape":"Sb7","locationName":"Owner"},"RestorableByUserIds":{"locationName":"RestorableBy","type":"list","member":{}},"SnapshotIds":{"locationName":"SnapshotId","type":"list","member":{"locationName":"SnapshotId"}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"Snapshots":{"locationName":"snapshotSet","type":"list","member":{"shape":"S6w","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeSpotDatafeedSubscription":{"input":{"type":"structure","members":{"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"SpotDatafeedSubscription":{"shape":"S70","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","required":["ActiveInstances","SpotFleetRequestId"],"members":{"ActiveInstances":{"locationName":"activeInstanceSet","type":"list","member":{"locationName":"item","type":"structure","members":{"InstanceId":{"locationName":"instanceId"},"InstanceType":{"locationName":"instanceType"},"SpotInstanceRequestId":{"locationName":"spotInstanceRequestId"},"InstanceHealth":{"locationName":"instanceHealth"}}}},"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","required":["HistoryRecords","LastEvaluatedTime","SpotFleetRequestId","StartTime"],"members":{"HistoryRecords":{"locationName":"historyRecordSet","type":"list","member":{"locationName":"item","type":"structure","required":["EventInformation","EventType","Timestamp"],"members":{"EventInformation":{"locationName":"eventInformation","type":"structure","members":{"EventDescription":{"locationName":"eventDescription"},"EventSubType":{"locationName":"eventSubType"},"InstanceId":{"locationName":"instanceId"}}},"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":"S2z","locationName":"spotFleetRequestId"}}},"output":{"type":"structure","required":["SpotFleetRequestConfigs"],"members":{"NextToken":{"locationName":"nextToken"},"SpotFleetRequestConfigs":{"locationName":"spotFleetRequestConfigSet","type":"list","member":{"locationName":"item","type":"structure","required":["CreateTime","SpotFleetRequestConfig","SpotFleetRequestId","SpotFleetRequestState"],"members":{"ActivityStatus":{"locationName":"activityStatus"},"CreateTime":{"locationName":"createTime","type":"timestamp"},"SpotFleetRequestConfig":{"shape":"Si9","locationName":"spotFleetRequestConfig"},"SpotFleetRequestId":{"locationName":"spotFleetRequestId"},"SpotFleetRequestState":{"locationName":"spotFleetRequestState"}}}}}}},"DescribeSpotInstanceRequests":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"SpotInstanceRequestIds":{"shape":"S39","locationName":"SpotInstanceRequestId"}}},"output":{"type":"structure","members":{"SpotInstanceRequests":{"shape":"Sin","locationName":"spotInstanceRequestSet"}}}},"DescribeSpotPriceHistory":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","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","required":["GroupId"],"members":{"Description":{"locationName":"description"},"GroupId":{"locationName":"groupId"},"GroupName":{"locationName":"groupName"},"StaleIpPermissions":{"shape":"Sj4","locationName":"staleIpPermissions"},"StaleIpPermissionsEgress":{"shape":"Sj4","locationName":"staleIpPermissionsEgress"},"VpcId":{"locationName":"vpcId"}}}}}}},"DescribeSubnets":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"SubnetIds":{"locationName":"SubnetId","type":"list","member":{"locationName":"SubnetId"}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"Subnets":{"locationName":"subnetSet","type":"list","member":{"shape":"S75","locationName":"item"}}}}},"DescribeTags":{"input":{"type":"structure","members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"Filters":{"shape":"S9c","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"}}}}}}},"DescribeVolumeAttribute":{"input":{"type":"structure","required":["VolumeId"],"members":{"Attribute":{},"VolumeId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"AutoEnableIO":{"shape":"Sdk","locationName":"autoEnableIO"},"ProductCodes":{"shape":"Sbg","locationName":"productCodes"},"VolumeId":{"locationName":"volumeId"}}}},"DescribeVolumeStatus":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"MaxResults":{"type":"integer"},"NextToken":{},"VolumeIds":{"shape":"Sjl","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"},"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"}}}},"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"}}}}}}}}},"DescribeVolumes":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"VolumeIds":{"shape":"Sjl","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":"S7e","locationName":"item"}},"NextToken":{"locationName":"nextToken"}}}},"DescribeVolumesModifications":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"VolumeIds":{"shape":"Sjl","locationName":"VolumeId"},"Filters":{"shape":"S9c","locationName":"Filter"},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"VolumesModifications":{"locationName":"volumeModificationSet","type":"list","member":{"shape":"Sk4","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":"Sdk","locationName":"enableDnsHostnames"},"EnableDnsSupport":{"shape":"Sdk","locationName":"enableDnsSupport"}}}},"DescribeVpcClassicLink":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"VpcIds":{"shape":"Ska","locationName":"VpcId"}}},"output":{"type":"structure","members":{"Vpcs":{"locationName":"vpcSet","type":"list","member":{"locationName":"item","type":"structure","members":{"ClassicLinkEnabled":{"locationName":"classicLinkEnabled","type":"boolean"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VpcId":{"locationName":"vpcId"}}}}}}},"DescribeVpcClassicLinkDnsSupport":{"input":{"type":"structure","members":{"MaxResults":{"locationName":"maxResults","type":"integer"},"NextToken":{"locationName":"nextToken"},"VpcIds":{"shape":"Ska"}}},"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"}}}}}}},"DescribeVpcEndpointServices":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"NextToken":{"locationName":"nextToken"},"ServiceNames":{"shape":"S2z","locationName":"serviceNameSet"}}}},"DescribeVpcEndpoints":{"input":{"type":"structure","members":{"DryRun":{"type":"boolean"},"Filters":{"shape":"S9c","locationName":"Filter"},"MaxResults":{"type":"integer"},"NextToken":{},"VpcEndpointIds":{"shape":"S2z","locationName":"VpcEndpointId"}}},"output":{"type":"structure","members":{"NextToken":{"locationName":"nextToken"},"VpcEndpoints":{"locationName":"vpcEndpointSet","type":"list","member":{"shape":"S7l","locationName":"item"}}}}},"DescribeVpcPeeringConnections":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"DryRun":{"locationName":"dryRun","type":"boolean"},"VpcPeeringConnectionIds":{"shape":"S2z","locationName":"VpcPeeringConnectionId"}}},"output":{"type":"structure","members":{"VpcPeeringConnections":{"locationName":"vpcPeeringConnectionSet","type":"list","member":{"shape":"Sb","locationName":"item"}}}}},"DescribeVpcs":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","locationName":"Filter"},"VpcIds":{"locationName":"VpcId","type":"list","member":{"locationName":"VpcId"}},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"Vpcs":{"locationName":"vpcSet","type":"list","member":{"shape":"S3q","locationName":"item"}}}}},"DescribeVpnConnections":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","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":"S7s","locationName":"item"}}}}},"DescribeVpnGateways":{"input":{"type":"structure","members":{"Filters":{"shape":"S9c","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":"S84","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":"S1p"}},"DetachVpnGateway":{"input":{"type":"structure","required":["VpcId","VpnGatewayId"],"members":{"VpcId":{},"VpnGatewayId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"DisableVgwRoutePropagation":{"input":{"type":"structure","required":["GatewayId","RouteTableId"],"members":{"GatewayId":{},"RouteTableId":{}}}},"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"}}}},"DisassociateIamInstanceProfile":{"input":{"type":"structure","required":["AssociationId"],"members":{"AssociationId":{}}},"output":{"type":"structure","members":{"IamInstanceProfileAssociation":{"shape":"S13","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":"S1a","locationName":"ipv6CidrBlockAssociation"},"SubnetId":{"locationName":"subnetId"}}}},"DisassociateVpcCidrBlock":{"input":{"type":"structure","required":["AssociationId"],"members":{"AssociationId":{"locationName":"associationId"}}},"output":{"type":"structure","members":{"Ipv6CidrBlockAssociation":{"shape":"S1f","locationName":"ipv6CidrBlockAssociation"},"VpcId":{"locationName":"vpcId"}}}},"EnableVgwRoutePropagation":{"input":{"type":"structure","required":["GatewayId","RouteTableId"],"members":{"GatewayId":{},"RouteTableId":{}}}},"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"}}}},"GetConsoleOutput":{"input":{"type":"structure","required":["InstanceId"],"members":{"InstanceId":{},"DryRun":{"locationName":"dryRun","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"}}}},"GetHostReservationPurchasePreview":{"input":{"type":"structure","required":["HostIdSet","OfferingId"],"members":{"HostIdSet":{"shape":"Slw"},"OfferingId":{}}},"output":{"type":"structure","members":{"CurrencyCode":{"locationName":"currencyCode"},"Purchase":{"shape":"Sly","locationName":"purchase"},"TotalHourlyPrice":{"locationName":"totalHourlyPrice"},"TotalUpfrontPrice":{"locationName":"totalUpfrontPrice"}}}},"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":"Sm4","locationName":"reservedInstanceValueRollup"},"ReservedInstanceValueSet":{"locationName":"reservedInstanceValueSet","type":"list","member":{"locationName":"item","type":"structure","members":{"ReservationValue":{"shape":"Sm4","locationName":"reservationValue"},"ReservedInstanceId":{"locationName":"reservedInstanceId"}}}},"TargetConfigurationValueRollup":{"shape":"Sm4","locationName":"targetConfigurationValueRollup"},"TargetConfigurationValueSet":{"locationName":"targetConfigurationValueSet","type":"list","member":{"locationName":"item","type":"structure","members":{"ReservationValue":{"shape":"Sm4","locationName":"reservationValue"},"TargetConfiguration":{"locationName":"targetConfiguration","type":"structure","members":{"InstanceCount":{"locationName":"instanceCount","type":"integer"},"OfferingId":{"locationName":"offeringId"}}}}}},"ValidationFailureReason":{"locationName":"validationFailureReason"}}}},"ImportImage":{"input":{"type":"structure","members":{"Architecture":{},"ClientData":{"shape":"Smb"},"ClientToken":{},"Description":{},"DiskContainers":{"locationName":"DiskContainer","type":"list","member":{"locationName":"item","type":"structure","members":{"Description":{},"DeviceName":{},"Format":{},"SnapshotId":{},"Url":{},"UserBucket":{"shape":"Sme"}}}},"DryRun":{"type":"boolean"},"Hypervisor":{},"LicenseType":{},"Platform":{},"RoleName":{}}},"output":{"type":"structure","members":{"Architecture":{"locationName":"architecture"},"Description":{"locationName":"description"},"Hypervisor":{"locationName":"hypervisor"},"ImageId":{"locationName":"imageId"},"ImportTaskId":{"locationName":"importTaskId"},"LicenseType":{"locationName":"licenseType"},"Platform":{"locationName":"platform"},"Progress":{"locationName":"progress"},"SnapshotDetails":{"shape":"Sd6","locationName":"snapshotDetailSet"},"Status":{"locationName":"status"},"StatusMessage":{"locationName":"statusMessage"}}}},"ImportInstance":{"input":{"type":"structure","required":["Platform"],"members":{"Description":{"locationName":"description"},"DiskImages":{"locationName":"diskImage","type":"list","member":{"type":"structure","members":{"Description":{},"Image":{"shape":"Smj"},"Volume":{"shape":"Smk"}}}},"DryRun":{"locationName":"dryRun","type":"boolean"},"LaunchSpecification":{"locationName":"launchSpecification","type":"structure","members":{"AdditionalInfo":{"locationName":"additionalInfo"},"Architecture":{"locationName":"architecture"},"GroupIds":{"shape":"S5n","locationName":"GroupId"},"GroupNames":{"shape":"Smm","locationName":"GroupName"},"InstanceInitiatedShutdownBehavior":{"locationName":"instanceInitiatedShutdownBehavior"},"InstanceType":{"locationName":"instanceType"},"Monitoring":{"locationName":"monitoring","type":"boolean"},"Placement":{"shape":"Se9","locationName":"placement"},"PrivateIpAddress":{"locationName":"privateIpAddress"},"SubnetId":{"locationName":"subnetId"},"UserData":{"locationName":"userData","type":"structure","members":{"Data":{"locationName":"data"}}}}},"Platform":{"locationName":"platform"}}},"output":{"type":"structure","members":{"ConversionTask":{"shape":"Sa4","locationName":"conversionTask"}}}},"ImportKeyPair":{"input":{"type":"structure","required":["KeyName","PublicKeyMaterial"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"KeyName":{"locationName":"keyName"},"PublicKeyMaterial":{"locationName":"publicKeyMaterial","type":"blob"}}},"output":{"type":"structure","members":{"KeyFingerprint":{"locationName":"keyFingerprint"},"KeyName":{"locationName":"keyName"}}}},"ImportSnapshot":{"input":{"type":"structure","members":{"ClientData":{"shape":"Smb"},"ClientToken":{},"Description":{},"DiskContainer":{"type":"structure","members":{"Description":{},"Format":{},"Url":{},"UserBucket":{"shape":"Sme"}}},"DryRun":{"type":"boolean"},"RoleName":{}}},"output":{"type":"structure","members":{"Description":{"locationName":"description"},"ImportTaskId":{"locationName":"importTaskId"},"SnapshotTaskDetail":{"shape":"Sdd","locationName":"snapshotTaskDetail"}}}},"ImportVolume":{"input":{"type":"structure","required":["AvailabilityZone","Image","Volume"],"members":{"AvailabilityZone":{"locationName":"availabilityZone"},"Description":{"locationName":"description"},"DryRun":{"locationName":"dryRun","type":"boolean"},"Image":{"shape":"Smj","locationName":"image"},"Volume":{"shape":"Smk","locationName":"volume"}}},"output":{"type":"structure","members":{"ConversionTask":{"shape":"Sa4","locationName":"conversionTask"}}}},"ModifyHosts":{"input":{"type":"structure","required":["AutoPlacement","HostIds"],"members":{"AutoPlacement":{"locationName":"autoPlacement"},"HostIds":{"shape":"Sbw","locationName":"hostId"}}},"output":{"type":"structure","members":{"Successful":{"shape":"Sr","locationName":"successful"},"Unsuccessful":{"shape":"Smz","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":"S42"},"ImageId":{},"LaunchPermission":{"type":"structure","members":{"Add":{"shape":"Scl"},"Remove":{"shape":"Scl"}}},"OperationType":{},"ProductCodes":{"locationName":"ProductCode","type":"list","member":{"locationName":"ProductCode"}},"UserGroups":{"locationName":"UserGroup","type":"list","member":{"locationName":"UserGroup"}},"UserIds":{"shape":"Sn7","locationName":"UserId"},"Value":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"ModifyInstanceAttribute":{"input":{"type":"structure","required":["InstanceId"],"members":{"SourceDestCheck":{"shape":"Sdk"},"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":"Sdk","locationName":"disableApiTermination"},"DryRun":{"locationName":"dryRun","type":"boolean"},"EbsOptimized":{"shape":"Sdk","locationName":"ebsOptimized"},"EnaSupport":{"shape":"Sdk","locationName":"enaSupport"},"Groups":{"shape":"S1j","locationName":"GroupId"},"InstanceId":{"locationName":"instanceId"},"InstanceInitiatedShutdownBehavior":{"shape":"S42","locationName":"instanceInitiatedShutdownBehavior"},"InstanceType":{"shape":"S42","locationName":"instanceType"},"Kernel":{"shape":"S42","locationName":"kernel"},"Ramdisk":{"shape":"S42","locationName":"ramdisk"},"SriovNetSupport":{"shape":"S42","locationName":"sriovNetSupport"},"UserData":{"locationName":"userData","type":"structure","members":{"Value":{"locationName":"value","type":"blob"}}},"Value":{"locationName":"value"}}}},"ModifyInstancePlacement":{"input":{"type":"structure","required":["InstanceId"],"members":{"Affinity":{"locationName":"affinity"},"HostId":{"locationName":"hostId"},"InstanceId":{"locationName":"instanceId"},"Tenancy":{"locationName":"tenancy"}}},"output":{"type":"structure","members":{"Return":{"locationName":"return","type":"boolean"}}}},"ModifyNetworkInterfaceAttribute":{"input":{"type":"structure","required":["NetworkInterfaceId"],"members":{"Attachment":{"locationName":"attachment","type":"structure","members":{"AttachmentId":{"locationName":"attachmentId"},"DeleteOnTermination":{"locationName":"deleteOnTermination","type":"boolean"}}},"Description":{"shape":"S42","locationName":"description"},"DryRun":{"locationName":"dryRun","type":"boolean"},"Groups":{"shape":"S5n","locationName":"SecurityGroupId"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"SourceDestCheck":{"shape":"Sdk","locationName":"sourceDestCheck"}}}},"ModifyReservedInstances":{"input":{"type":"structure","required":["ReservedInstancesIds","TargetConfigurations"],"members":{"ReservedInstancesIds":{"shape":"Sfu","locationName":"ReservedInstancesId"},"ClientToken":{"locationName":"clientToken"},"TargetConfigurations":{"locationName":"ReservedInstancesConfigurationSetItemType","type":"list","member":{"shape":"Sgf","locationName":"item"}}}},"output":{"type":"structure","members":{"ReservedInstancesModificationId":{"locationName":"reservedInstancesModificationId"}}}},"ModifySnapshotAttribute":{"input":{"type":"structure","required":["SnapshotId"],"members":{"Attribute":{},"CreateVolumePermission":{"type":"structure","members":{"Add":{"shape":"Shk"},"Remove":{"shape":"Shk"}}},"GroupNames":{"shape":"Shd","locationName":"UserGroup"},"OperationType":{},"SnapshotId":{},"UserIds":{"shape":"Sn7","locationName":"UserId"},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"ModifySpotFleetRequest":{"input":{"type":"structure","required":["SpotFleetRequestId"],"members":{"ExcessCapacityTerminationPolicy":{"locationName":"excessCapacityTerminationPolicy"},"SpotFleetRequestId":{"locationName":"spotFleetRequestId"},"TargetCapacity":{"locationName":"targetCapacity","type":"integer"}}},"output":{"type":"structure","members":{"Return":{"locationName":"return","type":"boolean"}}}},"ModifySubnetAttribute":{"input":{"type":"structure","required":["SubnetId"],"members":{"AssignIpv6AddressOnCreation":{"shape":"Sdk"},"MapPublicIpOnLaunch":{"shape":"Sdk"},"SubnetId":{"locationName":"subnetId"}}}},"ModifyVolume":{"input":{"type":"structure","required":["VolumeId"],"members":{"DryRun":{"type":"boolean"},"VolumeId":{},"Size":{"type":"integer"},"VolumeType":{},"Iops":{"type":"integer"}}},"output":{"type":"structure","members":{"VolumeModification":{"shape":"Sk4","locationName":"volumeModification"}}}},"ModifyVolumeAttribute":{"input":{"type":"structure","required":["VolumeId"],"members":{"AutoEnableIO":{"shape":"Sdk"},"VolumeId":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"ModifyVpcAttribute":{"input":{"type":"structure","required":["VpcId"],"members":{"EnableDnsHostnames":{"shape":"Sdk"},"EnableDnsSupport":{"shape":"Sdk"},"VpcId":{"locationName":"vpcId"}}}},"ModifyVpcEndpoint":{"input":{"type":"structure","required":["VpcEndpointId"],"members":{"AddRouteTableIds":{"shape":"S2z","locationName":"AddRouteTableId"},"DryRun":{"type":"boolean"},"PolicyDocument":{},"RemoveRouteTableIds":{"shape":"S2z","locationName":"RemoveRouteTableId"},"ResetPolicy":{"type":"boolean"},"VpcEndpointId":{}}},"output":{"type":"structure","members":{"Return":{"locationName":"return","type":"boolean"}}}},"ModifyVpcPeeringConnectionOptions":{"input":{"type":"structure","required":["VpcPeeringConnectionId"],"members":{"AccepterPeeringConnectionOptions":{"shape":"Sny"},"DryRun":{"type":"boolean"},"RequesterPeeringConnectionOptions":{"shape":"Sny"},"VpcPeeringConnectionId":{}}},"output":{"type":"structure","members":{"AccepterPeeringConnectionOptions":{"shape":"So0","locationName":"accepterPeeringConnectionOptions"},"RequesterPeeringConnectionOptions":{"shape":"So0","locationName":"requesterPeeringConnectionOptions"}}}},"MonitorInstances":{"input":{"type":"structure","required":["InstanceIds"],"members":{"InstanceIds":{"shape":"S9w","locationName":"InstanceId"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"InstanceMonitorings":{"shape":"So3","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"}}}},"PurchaseHostReservation":{"input":{"type":"structure","required":["HostIdSet","OfferingId"],"members":{"ClientToken":{},"CurrencyCode":{},"HostIdSet":{"shape":"Slw"},"LimitPrice":{},"OfferingId":{}}},"output":{"type":"structure","members":{"ClientToken":{"locationName":"clientToken"},"CurrencyCode":{"locationName":"currencyCode"},"Purchase":{"shape":"Sly","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"}}}}},"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":"Sh6","locationName":"item"}}}}},"RebootInstances":{"input":{"type":"structure","required":["InstanceIds"],"members":{"InstanceIds":{"shape":"S9w","locationName":"InstanceId"},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"RegisterImage":{"input":{"type":"structure","required":["Name"],"members":{"ImageLocation":{},"Architecture":{"locationName":"architecture"},"BlockDeviceMappings":{"shape":"S4k","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"}}},"output":{"type":"structure","members":{"ImageId":{"locationName":"imageId"}}}},"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":{},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"ReleaseHosts":{"input":{"type":"structure","required":["HostIds"],"members":{"HostIds":{"shape":"Sbw","locationName":"hostId"}}},"output":{"type":"structure","members":{"Successful":{"shape":"Sr","locationName":"successful"},"Unsuccessful":{"shape":"Smz","locationName":"unsuccessful"}}}},"ReplaceIamInstanceProfileAssociation":{"input":{"type":"structure","required":["IamInstanceProfile","AssociationId"],"members":{"IamInstanceProfile":{"shape":"S11"},"AssociationId":{}}},"output":{"type":"structure","members":{"IamInstanceProfileAssociation":{"shape":"S13","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":"S5i","locationName":"Icmp"},"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"},"NetworkAclId":{"locationName":"networkAclId"},"PortRange":{"shape":"S5j","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"},"DryRun":{"locationName":"dryRun","type":"boolean"},"EgressOnlyInternetGatewayId":{"locationName":"egressOnlyInternetGatewayId"},"GatewayId":{"locationName":"gatewayId"},"InstanceId":{"locationName":"instanceId"},"NatGatewayId":{"locationName":"natGatewayId"},"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"}}}},"ReportInstanceStatus":{"input":{"type":"structure","required":["Instances","ReasonCodes","Status"],"members":{"Description":{"locationName":"description"},"DryRun":{"locationName":"dryRun","type":"boolean"},"EndTime":{"locationName":"endTime","type":"timestamp"},"Instances":{"shape":"S9w","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":"Si9","locationName":"spotFleetRequestConfig"}}},"output":{"type":"structure","required":["SpotFleetRequestId"],"members":{"SpotFleetRequestId":{"locationName":"spotFleetRequestId"}}}},"RequestSpotInstances":{"input":{"type":"structure","required":["SpotPrice"],"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":{"shape":"S2z","locationName":"SecurityGroupId"},"SecurityGroups":{"shape":"S2z","locationName":"SecurityGroup"},"AddressingType":{"locationName":"addressingType"},"BlockDeviceMappings":{"shape":"Sck","locationName":"blockDeviceMapping"},"EbsOptimized":{"locationName":"ebsOptimized","type":"boolean"},"IamInstanceProfile":{"shape":"S11","locationName":"iamInstanceProfile"},"ImageId":{"locationName":"imageId"},"InstanceType":{"locationName":"instanceType"},"KernelId":{"locationName":"kernelId"},"KeyName":{"locationName":"keyName"},"Monitoring":{"shape":"Siq","locationName":"monitoring"},"NetworkInterfaces":{"shape":"Sif","locationName":"NetworkInterface"},"Placement":{"shape":"Sih","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"}}},"output":{"type":"structure","members":{"SpotInstanceRequests":{"shape":"Sin","locationName":"spotInstanceRequestSet"}}}},"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"}}}},"RevokeSecurityGroupEgress":{"input":{"type":"structure","required":["GroupId"],"members":{"DryRun":{"locationName":"dryRun","type":"boolean"},"GroupId":{"locationName":"groupId"},"IpPermissions":{"shape":"S1w","locationName":"ipPermissions"},"CidrIp":{"locationName":"cidrIp"},"FromPort":{"locationName":"fromPort","type":"integer"},"IpProtocol":{"locationName":"ipProtocol"},"ToPort":{"locationName":"toPort","type":"integer"},"SourceSecurityGroupName":{"locationName":"sourceSecurityGroupName"},"SourceSecurityGroupOwnerId":{"locationName":"sourceSecurityGroupOwnerId"}}}},"RevokeSecurityGroupIngress":{"input":{"type":"structure","members":{"CidrIp":{},"FromPort":{"type":"integer"},"GroupId":{},"GroupName":{},"IpPermissions":{"shape":"S1w"},"IpProtocol":{},"SourceSecurityGroupName":{},"SourceSecurityGroupOwnerId":{},"ToPort":{"type":"integer"},"DryRun":{"locationName":"dryRun","type":"boolean"}}}},"RunInstances":{"input":{"type":"structure","required":["ImageId","MaxCount","MinCount"],"members":{"BlockDeviceMappings":{"shape":"S4k","locationName":"BlockDeviceMapping"},"ImageId":{},"InstanceType":{},"Ipv6AddressCount":{"type":"integer"},"Ipv6Addresses":{"shape":"S5o","locationName":"Ipv6Address"},"KernelId":{},"KeyName":{},"MaxCount":{"type":"integer"},"MinCount":{"type":"integer"},"Monitoring":{"shape":"Siq"},"Placement":{"shape":"Se9"},"RamdiskId":{},"SecurityGroupIds":{"shape":"S5n","locationName":"SecurityGroupId"},"SecurityGroups":{"shape":"Smm","locationName":"SecurityGroup"},"SubnetId":{},"UserData":{},"AdditionalInfo":{"locationName":"additionalInfo"},"ClientToken":{"locationName":"clientToken"},"DisableApiTermination":{"locationName":"disableApiTermination","type":"boolean"},"DryRun":{"locationName":"dryRun","type":"boolean"},"EbsOptimized":{"locationName":"ebsOptimized","type":"boolean"},"IamInstanceProfile":{"shape":"S11","locationName":"iamInstanceProfile"},"InstanceInitiatedShutdownBehavior":{"locationName":"instanceInitiatedShutdownBehavior"},"NetworkInterfaces":{"shape":"Sif","locationName":"networkInterface"},"PrivateIpAddress":{"locationName":"privateIpAddress"},"ElasticGpuSpecification":{"type":"list","member":{"locationName":"item","type":"structure","required":["Type"],"members":{"Type":{}}}},"TagSpecifications":{"shape":"S7b","locationName":"TagSpecification"}}},"output":{"shape":"Se3"}},"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":"Spt","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":"Spt","locationName":"SecurityGroupId"},"SubnetId":{},"UserData":{}}},"ScheduledInstanceId":{}}},"output":{"type":"structure","members":{"InstanceIdSet":{"locationName":"instanceIdSet","type":"list","member":{"locationName":"item"}}}}},"StartInstances":{"input":{"type":"structure","required":["InstanceIds"],"members":{"InstanceIds":{"shape":"S9w","locationName":"InstanceId"},"AdditionalInfo":{"locationName":"additionalInfo"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"StartingInstances":{"shape":"Sq4","locationName":"instancesSet"}}}},"StopInstances":{"input":{"type":"structure","required":["InstanceIds"],"members":{"InstanceIds":{"shape":"S9w","locationName":"InstanceId"},"DryRun":{"locationName":"dryRun","type":"boolean"},"Force":{"locationName":"force","type":"boolean"}}},"output":{"type":"structure","members":{"StoppingInstances":{"shape":"Sq4","locationName":"instancesSet"}}}},"TerminateInstances":{"input":{"type":"structure","required":["InstanceIds"],"members":{"InstanceIds":{"shape":"S9w","locationName":"InstanceId"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"TerminatingInstances":{"shape":"Sq4","locationName":"instancesSet"}}}},"UnassignIpv6Addresses":{"input":{"type":"structure","required":["Ipv6Addresses","NetworkInterfaceId"],"members":{"Ipv6Addresses":{"shape":"St","locationName":"ipv6Addresses"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"}}},"output":{"type":"structure","members":{"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"UnassignedIpv6Addresses":{"shape":"St","locationName":"unassignedIpv6Addresses"}}}},"UnassignPrivateIpAddresses":{"input":{"type":"structure","required":["NetworkInterfaceId","PrivateIpAddresses"],"members":{"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"PrivateIpAddresses":{"shape":"Sw","locationName":"privateIpAddress"}}}},"UnmonitorInstances":{"input":{"type":"structure","required":["InstanceIds"],"members":{"InstanceIds":{"shape":"S9w","locationName":"InstanceId"},"DryRun":{"locationName":"dryRun","type":"boolean"}}},"output":{"type":"structure","members":{"InstanceMonitorings":{"shape":"So3","locationName":"instancesSet"}}}}},"shapes":{"S3":{"type":"list","member":{"locationName":"ReservedInstanceId"}},"S5":{"type":"list","member":{"locationName":"TargetConfigurationRequest","type":"structure","required":["OfferingId"],"members":{"InstanceCount":{"type":"integer"},"OfferingId":{}}}},"Sb":{"type":"structure","members":{"AccepterVpcInfo":{"shape":"Sc","locationName":"accepterVpcInfo"},"ExpirationTime":{"locationName":"expirationTime","type":"timestamp"},"RequesterVpcInfo":{"shape":"Sc","locationName":"requesterVpcInfo"},"Status":{"locationName":"status","type":"structure","members":{"Code":{"locationName":"code"},"Message":{"locationName":"message"}}},"Tags":{"shape":"Sj","locationName":"tagSet"},"VpcPeeringConnectionId":{"locationName":"vpcPeeringConnectionId"}}},"Sc":{"type":"structure","members":{"CidrBlock":{"locationName":"cidrBlock"},"Ipv6CidrBlockSet":{"locationName":"ipv6CidrBlockSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"}}}},"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"}}},"Sj":{"type":"list","member":{"locationName":"item","type":"structure","members":{"Key":{"locationName":"key"},"Value":{"locationName":"value"}}}},"Sr":{"type":"list","member":{"locationName":"item"}},"St":{"type":"list","member":{"locationName":"item"}},"Sw":{"type":"list","member":{"locationName":"PrivateIpAddress"}},"S11":{"type":"structure","members":{"Arn":{"locationName":"arn"},"Name":{"locationName":"name"}}},"S13":{"type":"structure","members":{"AssociationId":{"locationName":"associationId"},"InstanceId":{"locationName":"instanceId"},"IamInstanceProfile":{"shape":"S14","locationName":"iamInstanceProfile"},"State":{"locationName":"state"},"Timestamp":{"locationName":"timestamp","type":"timestamp"}}},"S14":{"type":"structure","members":{"Arn":{"locationName":"arn"},"Id":{"locationName":"id"}}},"S1a":{"type":"structure","members":{"AssociationId":{"locationName":"associationId"},"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"},"Ipv6CidrBlockState":{"locationName":"ipv6CidrBlockState","type":"structure","members":{"State":{"locationName":"state"},"StatusMessage":{"locationName":"statusMessage"}}}}},"S1f":{"type":"structure","members":{"AssociationId":{"locationName":"associationId"},"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"},"Ipv6CidrBlockState":{"locationName":"ipv6CidrBlockState","type":"structure","members":{"State":{"locationName":"state"},"StatusMessage":{"locationName":"statusMessage"}}}}},"S1j":{"type":"list","member":{"locationName":"groupId"}},"S1p":{"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"}}},"S1t":{"type":"structure","members":{"State":{"locationName":"state"},"VpcId":{"locationName":"vpcId"}}},"S1w":{"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"}}}},"Ipv6Ranges":{"locationName":"ipv6Ranges","type":"list","member":{"locationName":"item","type":"structure","members":{"CidrIpv6":{"locationName":"cidrIpv6"}}}},"PrefixListIds":{"locationName":"prefixListIds","type":"list","member":{"locationName":"item","type":"structure","members":{"PrefixListId":{"locationName":"prefixListId"}}}},"ToPort":{"locationName":"toPort","type":"integer"},"UserIdGroupPairs":{"locationName":"groups","type":"list","member":{"shape":"S25","locationName":"item"}}}}},"S25":{"type":"structure","members":{"GroupId":{"locationName":"groupId"},"GroupName":{"locationName":"groupName"},"PeeringStatus":{"locationName":"peeringStatus"},"UserId":{"locationName":"userId"},"VpcId":{"locationName":"vpcId"},"VpcPeeringConnectionId":{"locationName":"vpcPeeringConnectionId"}}},"S28":{"type":"structure","members":{"S3":{"type":"structure","members":{"AWSAccessKeyId":{},"Bucket":{"locationName":"bucket"},"Prefix":{"locationName":"prefix"},"UploadPolicy":{"locationName":"uploadPolicy","type":"blob"},"UploadPolicySignature":{"locationName":"uploadPolicySignature"}}}}},"S2c":{"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":"S28","locationName":"storage"},"UpdateTime":{"locationName":"updateTime","type":"timestamp"}}},"S2n":{"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":"Sj","locationName":"tagSet"},"UpdateDate":{"locationName":"updateDate","type":"timestamp"}}}},"S2z":{"type":"list","member":{"locationName":"item"}},"S39":{"type":"list","member":{"locationName":"SpotInstanceRequestId"}},"S3n":{"type":"structure","members":{"BgpAsn":{"locationName":"bgpAsn"},"CustomerGatewayId":{"locationName":"customerGatewayId"},"IpAddress":{"locationName":"ipAddress"},"State":{"locationName":"state"},"Type":{"locationName":"type"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S3q":{"type":"structure","members":{"CidrBlock":{"locationName":"cidrBlock"},"DhcpOptionsId":{"locationName":"dhcpOptionsId"},"State":{"locationName":"state"},"VpcId":{"locationName":"vpcId"},"InstanceTenancy":{"locationName":"instanceTenancy"},"Ipv6CidrBlockAssociationSet":{"locationName":"ipv6CidrBlockAssociationSet","type":"list","member":{"shape":"S1f","locationName":"item"}},"IsDefault":{"locationName":"isDefault","type":"boolean"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S3y":{"type":"structure","members":{"DhcpConfigurations":{"locationName":"dhcpConfigurationSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Key":{"locationName":"key"},"Values":{"locationName":"valueSet","type":"list","member":{"shape":"S42","locationName":"item"}}}}},"DhcpOptionsId":{"locationName":"dhcpOptionsId"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S42":{"type":"structure","members":{"Value":{"locationName":"value"}}},"S45":{"type":"structure","members":{"Attachments":{"shape":"S46","locationName":"attachmentSet"},"EgressOnlyInternetGatewayId":{"locationName":"egressOnlyInternetGatewayId"}}},"S46":{"type":"list","member":{"locationName":"item","type":"structure","members":{"State":{"locationName":"state"},"VpcId":{"locationName":"vpcId"}}}},"S4d":{"type":"list","member":{"shape":"S4e","locationName":"item"}},"S4e":{"type":"structure","required":["Error"],"members":{"Error":{"locationName":"error","type":"structure","required":["Code","Message"],"members":{"Code":{"locationName":"code"},"Message":{"locationName":"message"}}},"ResourceId":{"locationName":"resourceId"}}},"S4h":{"type":"structure","members":{"Bucket":{},"Key":{}}},"S4k":{"type":"list","member":{"shape":"S4l","locationName":"BlockDeviceMapping"}},"S4l":{"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"},"SnapshotId":{"locationName":"snapshotId"},"VolumeSize":{"locationName":"volumeSize","type":"integer"},"VolumeType":{"locationName":"volumeType"}}},"NoDevice":{"locationName":"noDevice"}}},"S4v":{"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"}}},"S51":{"type":"structure","members":{"Attachments":{"shape":"S46","locationName":"attachmentSet"},"InternetGatewayId":{"locationName":"internetGatewayId"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S56":{"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"}}},"S5d":{"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":"S5i","locationName":"icmpTypeCode"},"Ipv6CidrBlock":{"locationName":"ipv6CidrBlock"},"PortRange":{"shape":"S5j","locationName":"portRange"},"Protocol":{"locationName":"protocol"},"RuleAction":{"locationName":"ruleAction"},"RuleNumber":{"locationName":"ruleNumber","type":"integer"}}}},"IsDefault":{"locationName":"default","type":"boolean"},"NetworkAclId":{"locationName":"networkAclId"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VpcId":{"locationName":"vpcId"}}},"S5i":{"type":"structure","members":{"Code":{"locationName":"code","type":"integer"},"Type":{"locationName":"type","type":"integer"}}},"S5j":{"type":"structure","members":{"From":{"locationName":"from","type":"integer"},"To":{"locationName":"to","type":"integer"}}},"S5n":{"type":"list","member":{"locationName":"SecurityGroupId"}},"S5o":{"type":"list","member":{"locationName":"item","type":"structure","members":{"Ipv6Address":{"locationName":"ipv6Address"}}}},"S5q":{"type":"list","member":{"locationName":"item","type":"structure","required":["PrivateIpAddress"],"members":{"Primary":{"locationName":"primary","type":"boolean"},"PrivateIpAddress":{"locationName":"privateIpAddress"}}}},"S5t":{"type":"structure","members":{"Association":{"shape":"S5u","locationName":"association"},"Attachment":{"shape":"S5v","locationName":"attachment"},"AvailabilityZone":{"locationName":"availabilityZone"},"Description":{"locationName":"description"},"Groups":{"shape":"S5w","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"},"OwnerId":{"locationName":"ownerId"},"PrivateDnsName":{"locationName":"privateDnsName"},"PrivateIpAddress":{"locationName":"privateIpAddress"},"PrivateIpAddresses":{"locationName":"privateIpAddressesSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Association":{"shape":"S5u","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":"Sj","locationName":"tagSet"},"VpcId":{"locationName":"vpcId"}}},"S5u":{"type":"structure","members":{"AllocationId":{"locationName":"allocationId"},"AssociationId":{"locationName":"associationId"},"IpOwnerId":{"locationName":"ipOwnerId"},"PublicDnsName":{"locationName":"publicDnsName"},"PublicIp":{"locationName":"publicIp"}}},"S5v":{"type":"structure","members":{"AttachTime":{"locationName":"attachTime","type":"timestamp"},"AttachmentId":{"locationName":"attachmentId"},"DeleteOnTermination":{"locationName":"deleteOnTermination","type":"boolean"},"DeviceIndex":{"locationName":"deviceIndex","type":"integer"},"InstanceId":{"locationName":"instanceId"},"InstanceOwnerId":{"locationName":"instanceOwnerId"},"Status":{"locationName":"status"}}},"S5w":{"type":"list","member":{"locationName":"item","type":"structure","members":{"GroupName":{"locationName":"groupName"},"GroupId":{"locationName":"groupId"}}}},"S67":{"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"}}}}},"S6k":{"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"}}}},"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"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"Origin":{"locationName":"origin"},"State":{"locationName":"state"},"VpcPeeringConnectionId":{"locationName":"vpcPeeringConnectionId"}}}},"Tags":{"shape":"Sj","locationName":"tagSet"},"VpcId":{"locationName":"vpcId"}}},"S6w":{"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"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S70":{"type":"structure","members":{"Bucket":{"locationName":"bucket"},"Fault":{"shape":"S71","locationName":"fault"},"OwnerId":{"locationName":"ownerId"},"Prefix":{"locationName":"prefix"},"State":{"locationName":"state"}}},"S71":{"type":"structure","members":{"Code":{"locationName":"code"},"Message":{"locationName":"message"}}},"S75":{"type":"structure","members":{"AvailabilityZone":{"locationName":"availabilityZone"},"AvailableIpAddressCount":{"locationName":"availableIpAddressCount","type":"integer"},"CidrBlock":{"locationName":"cidrBlock"},"DefaultForAz":{"locationName":"defaultForAz","type":"boolean"},"MapPublicIpOnLaunch":{"locationName":"mapPublicIpOnLaunch","type":"boolean"},"State":{"locationName":"state"},"SubnetId":{"locationName":"subnetId"},"VpcId":{"locationName":"vpcId"},"AssignIpv6AddressOnCreation":{"locationName":"assignIpv6AddressOnCreation","type":"boolean"},"Ipv6CidrBlockAssociationSet":{"locationName":"ipv6CidrBlockAssociationSet","type":"list","member":{"shape":"S1a","locationName":"item"}},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S79":{"type":"list","member":{}},"S7b":{"type":"list","member":{"locationName":"item","type":"structure","members":{"ResourceType":{"locationName":"resourceType"},"Tags":{"shape":"Sj","locationName":"Tag"}}}},"S7e":{"type":"structure","members":{"Attachments":{"locationName":"attachmentSet","type":"list","member":{"shape":"S1p","locationName":"item"}},"AvailabilityZone":{"locationName":"availabilityZone"},"CreateTime":{"locationName":"createTime","type":"timestamp"},"Encrypted":{"locationName":"encrypted","type":"boolean"},"KmsKeyId":{"locationName":"kmsKeyId"},"Size":{"locationName":"size","type":"integer"},"SnapshotId":{"locationName":"snapshotId"},"State":{"locationName":"status"},"VolumeId":{"locationName":"volumeId"},"Iops":{"locationName":"iops","type":"integer"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VolumeType":{"locationName":"volumeType"}}},"S7l":{"type":"structure","members":{"CreationTimestamp":{"locationName":"creationTimestamp","type":"timestamp"},"PolicyDocument":{"locationName":"policyDocument"},"RouteTableIds":{"shape":"S2z","locationName":"routeTableIdSet"},"ServiceName":{"locationName":"serviceName"},"State":{"locationName":"state"},"VpcEndpointId":{"locationName":"vpcEndpointId"},"VpcId":{"locationName":"vpcId"}}},"S7s":{"type":"structure","members":{"CustomerGatewayConfiguration":{"locationName":"customerGatewayConfiguration"},"CustomerGatewayId":{"locationName":"customerGatewayId"},"State":{"locationName":"state"},"Type":{"locationName":"type"},"VpnConnectionId":{"locationName":"vpnConnectionId"},"VpnGatewayId":{"locationName":"vpnGatewayId"},"Options":{"locationName":"options","type":"structure","members":{"StaticRoutesOnly":{"locationName":"staticRoutesOnly","type":"boolean"}}},"Routes":{"locationName":"routes","type":"list","member":{"locationName":"item","type":"structure","members":{"DestinationCidrBlock":{"locationName":"destinationCidrBlock"},"Source":{"locationName":"source"},"State":{"locationName":"state"}}}},"Tags":{"shape":"Sj","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"}}}}}},"S84":{"type":"structure","members":{"AvailabilityZone":{"locationName":"availabilityZone"},"State":{"locationName":"state"},"Type":{"locationName":"type"},"VpcAttachments":{"locationName":"attachments","type":"list","member":{"shape":"S1t","locationName":"item"}},"VpnGatewayId":{"locationName":"vpnGatewayId"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"S9c":{"type":"list","member":{"locationName":"Filter","type":"structure","members":{"Name":{},"Values":{"shape":"S2z","locationName":"Value"}}}},"S9w":{"type":"list","member":{"locationName":"InstanceId"}},"Sa4":{"type":"structure","required":["ConversionTaskId","State"],"members":{"ConversionTaskId":{"locationName":"conversionTaskId"},"ExpirationTime":{"locationName":"expirationTime"},"ImportInstance":{"locationName":"importInstance","type":"structure","required":["Volumes"],"members":{"Description":{"locationName":"description"},"InstanceId":{"locationName":"instanceId"},"Platform":{"locationName":"platform"},"Volumes":{"locationName":"volumes","type":"list","member":{"locationName":"item","type":"structure","required":["AvailabilityZone","BytesConverted","Image","Status","Volume"],"members":{"AvailabilityZone":{"locationName":"availabilityZone"},"BytesConverted":{"locationName":"bytesConverted","type":"long"},"Description":{"locationName":"description"},"Image":{"shape":"Sa9","locationName":"image"},"Status":{"locationName":"status"},"StatusMessage":{"locationName":"statusMessage"},"Volume":{"shape":"Saa","locationName":"volume"}}}}}},"ImportVolume":{"locationName":"importVolume","type":"structure","required":["AvailabilityZone","BytesConverted","Image","Volume"],"members":{"AvailabilityZone":{"locationName":"availabilityZone"},"BytesConverted":{"locationName":"bytesConverted","type":"long"},"Description":{"locationName":"description"},"Image":{"shape":"Sa9","locationName":"image"},"Volume":{"shape":"Saa","locationName":"volume"}}},"State":{"locationName":"state"},"StatusMessage":{"locationName":"statusMessage"},"Tags":{"shape":"Sj","locationName":"tagSet"}}},"Sa9":{"type":"structure","required":["Format","ImportManifestUrl","Size"],"members":{"Checksum":{"locationName":"checksum"},"Format":{"locationName":"format"},"ImportManifestUrl":{"locationName":"importManifestUrl"},"Size":{"locationName":"size","type":"long"}}},"Saa":{"type":"structure","required":["Id"],"members":{"Id":{"locationName":"id"},"Size":{"locationName":"size","type":"long"}}},"Sb7":{"type":"list","member":{"locationName":"Owner"}},"Sbg":{"type":"list","member":{"locationName":"item","type":"structure","members":{"ProductCodeId":{"locationName":"productCode"},"ProductCodeType":{"locationName":"type"}}}},"Sbt":{"type":"list","member":{"locationName":"item"}},"Sbw":{"type":"list","member":{"locationName":"item"}},"Scd":{"type":"list","member":{"locationName":"item","type":"structure","members":{"Deadline":{"locationName":"deadline","type":"timestamp"},"Resource":{"locationName":"resource"},"UseLongIds":{"locationName":"useLongIds","type":"boolean"}}}},"Sck":{"type":"list","member":{"shape":"S4l","locationName":"item"}},"Scl":{"type":"list","member":{"locationName":"item","type":"structure","members":{"Group":{"locationName":"group"},"UserId":{"locationName":"userId"}}}},"Scz":{"type":"structure","members":{"Code":{"locationName":"code"},"Message":{"locationName":"message"}}},"Sd2":{"type":"list","member":{"locationName":"ImportTaskId"}},"Sd6":{"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":"Sd8","locationName":"userBucket"}}}},"Sd8":{"type":"structure","members":{"S3Bucket":{"locationName":"s3Bucket"},"S3Key":{"locationName":"s3Key"}}},"Sdd":{"type":"structure","members":{"Description":{"locationName":"description"},"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":"Sd8","locationName":"userBucket"}}},"Sdh":{"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"}}}}}},"Sdk":{"type":"structure","members":{"Value":{"locationName":"value","type":"boolean"}}},"Sds":{"type":"structure","members":{"Code":{"locationName":"code","type":"integer"},"Name":{"locationName":"name"}}},"Sdu":{"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"}}},"Se3":{"type":"structure","members":{"Groups":{"shape":"S5w","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":"Se7","locationName":"monitoring"},"Placement":{"shape":"Se9","locationName":"placement"},"Platform":{"locationName":"platform"},"PrivateDnsName":{"locationName":"privateDnsName"},"PrivateIpAddress":{"locationName":"privateIpAddress"},"ProductCodes":{"shape":"Sbg","locationName":"productCodes"},"PublicDnsName":{"locationName":"dnsName"},"PublicIpAddress":{"locationName":"ipAddress"},"RamdiskId":{"locationName":"ramdiskId"},"State":{"shape":"Sds","locationName":"instanceState"},"StateTransitionReason":{"locationName":"reason"},"SubnetId":{"locationName":"subnetId"},"VpcId":{"locationName":"vpcId"},"Architecture":{"locationName":"architecture"},"BlockDeviceMappings":{"shape":"Sdh","locationName":"blockDeviceMapping"},"ClientToken":{"locationName":"clientToken"},"EbsOptimized":{"locationName":"ebsOptimized","type":"boolean"},"EnaSupport":{"locationName":"enaSupport","type":"boolean"},"Hypervisor":{"locationName":"hypervisor"},"IamInstanceProfile":{"shape":"S14","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"}}}},"NetworkInterfaces":{"locationName":"networkInterfaceSet","type":"list","member":{"locationName":"item","type":"structure","members":{"Association":{"shape":"Sef","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"}}},"Description":{"locationName":"description"},"Groups":{"shape":"S5w","locationName":"groupSet"},"Ipv6Addresses":{"shape":"S5o","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":"Sef","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"}}}},"RootDeviceName":{"locationName":"rootDeviceName"},"RootDeviceType":{"locationName":"rootDeviceType"},"SecurityGroups":{"shape":"S5w","locationName":"groupSet"},"SourceDestCheck":{"locationName":"sourceDestCheck","type":"boolean"},"SpotInstanceRequestId":{"locationName":"spotInstanceRequestId"},"SriovNetSupport":{"locationName":"sriovNetSupport"},"StateReason":{"shape":"Scz","locationName":"stateReason"},"Tags":{"shape":"Sj","locationName":"tagSet"},"VirtualizationType":{"locationName":"virtualizationType"}}}},"OwnerId":{"locationName":"ownerId"},"RequesterId":{"locationName":"requesterId"},"ReservationId":{"locationName":"reservationId"}}},"Se7":{"type":"structure","members":{"State":{"locationName":"state"}}},"Se9":{"type":"structure","members":{"AvailabilityZone":{"locationName":"availabilityZone"},"Affinity":{"locationName":"affinity"},"GroupName":{"locationName":"groupName"},"HostId":{"locationName":"hostId"},"Tenancy":{"locationName":"tenancy"},"SpreadDomain":{"locationName":"spreadDomain"}}},"Sef":{"type":"structure","members":{"IpOwnerId":{"locationName":"ipOwnerId"},"PublicDnsName":{"locationName":"publicDnsName"},"PublicIp":{"locationName":"publicIp"}}},"Sfu":{"type":"list","member":{"locationName":"ReservedInstancesId"}},"Sg2":{"type":"list","member":{"locationName":"item","type":"structure","members":{"Amount":{"locationName":"amount","type":"double"},"Frequency":{"locationName":"frequency"}}}},"Sgf":{"type":"structure","members":{"AvailabilityZone":{"locationName":"availabilityZone"},"InstanceCount":{"locationName":"instanceCount","type":"integer"},"InstanceType":{"locationName":"instanceType"},"Platform":{"locationName":"platform"},"Scope":{"locationName":"scope"}}},"Sgz":{"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"}}},"Sh6":{"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":"Sgz","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"}}},"Shd":{"type":"list","member":{"locationName":"GroupName"}},"Shk":{"type":"list","member":{"locationName":"item","type":"structure","members":{"Group":{"locationName":"group"},"UserId":{"locationName":"userId"}}}},"Si9":{"type":"structure","required":["IamFleetRole","LaunchSpecifications","SpotPrice","TargetCapacity"],"members":{"AllocationStrategy":{"locationName":"allocationStrategy"},"ClientToken":{"locationName":"clientToken"},"ExcessCapacityTerminationPolicy":{"locationName":"excessCapacityTerminationPolicy"},"FulfilledCapacity":{"locationName":"fulfilledCapacity","type":"double"},"IamFleetRole":{"locationName":"iamFleetRole"},"LaunchSpecifications":{"locationName":"launchSpecifications","type":"list","member":{"locationName":"item","type":"structure","members":{"SecurityGroups":{"shape":"S5w","locationName":"groupSet"},"AddressingType":{"locationName":"addressingType"},"BlockDeviceMappings":{"shape":"Sck","locationName":"blockDeviceMapping"},"EbsOptimized":{"locationName":"ebsOptimized","type":"boolean"},"IamInstanceProfile":{"shape":"S11","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":"Sif","locationName":"networkInterfaceSet"},"Placement":{"shape":"Sih","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":"Sj","locationName":"tag"}}}}}}},"SpotPrice":{"locationName":"spotPrice"},"TargetCapacity":{"locationName":"targetCapacity","type":"integer"},"TerminateInstancesWithExpiration":{"locationName":"terminateInstancesWithExpiration","type":"boolean"},"Type":{"locationName":"type"},"ValidFrom":{"locationName":"validFrom","type":"timestamp"},"ValidUntil":{"locationName":"validUntil","type":"timestamp"},"ReplaceUnhealthyInstances":{"locationName":"replaceUnhealthyInstances","type":"boolean"}}},"Sif":{"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":"S5n","locationName":"SecurityGroupId"},"Ipv6AddressCount":{"locationName":"ipv6AddressCount","type":"integer"},"Ipv6Addresses":{"shape":"S5o","locationName":"ipv6AddressesSet","queryName":"Ipv6Addresses"},"NetworkInterfaceId":{"locationName":"networkInterfaceId"},"PrivateIpAddress":{"locationName":"privateIpAddress"},"PrivateIpAddresses":{"shape":"S5q","locationName":"privateIpAddressesSet","queryName":"PrivateIpAddresses"},"SecondaryPrivateIpAddressCount":{"locationName":"secondaryPrivateIpAddressCount","type":"integer"},"SubnetId":{"locationName":"subnetId"}}}},"Sih":{"type":"structure","members":{"AvailabilityZone":{"locationName":"availabilityZone"},"GroupName":{"locationName":"groupName"},"Tenancy":{"locationName":"tenancy"}}},"Sin":{"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":"S71","locationName":"fault"},"InstanceId":{"locationName":"instanceId"},"LaunchGroup":{"locationName":"launchGroup"},"LaunchSpecification":{"locationName":"launchSpecification","type":"structure","members":{"UserData":{"locationName":"userData"},"SecurityGroups":{"shape":"S5w","locationName":"groupSet"},"AddressingType":{"locationName":"addressingType"},"BlockDeviceMappings":{"shape":"Sck","locationName":"blockDeviceMapping"},"EbsOptimized":{"locationName":"ebsOptimized","type":"boolean"},"IamInstanceProfile":{"shape":"S11","locationName":"iamInstanceProfile"},"ImageId":{"locationName":"imageId"},"InstanceType":{"locationName":"instanceType"},"KernelId":{"locationName":"kernelId"},"KeyName":{"locationName":"keyName"},"NetworkInterfaces":{"shape":"Sif","locationName":"networkInterfaceSet"},"Placement":{"shape":"Sih","locationName":"placement"},"RamdiskId":{"locationName":"ramdiskId"},"SubnetId":{"locationName":"subnetId"},"Monitoring":{"shape":"Siq","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":"Sj","locationName":"tagSet"},"Type":{"locationName":"type"},"ValidFrom":{"locationName":"validFrom","type":"timestamp"},"ValidUntil":{"locationName":"validUntil","type":"timestamp"}}}},"Siq":{"type":"structure","required":["Enabled"],"members":{"Enabled":{"locationName":"enabled","type":"boolean"}}},"Sj4":{"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":"S25","locationName":"item"}}}}},"Sjl":{"type":"list","member":{"locationName":"VolumeId"}},"Sk4":{"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"},"OriginalSize":{"locationName":"originalSize","type":"integer"},"OriginalIops":{"locationName":"originalIops","type":"integer"},"OriginalVolumeType":{"locationName":"originalVolumeType"},"Progress":{"locationName":"progress","type":"long"},"StartTime":{"locationName":"startTime","type":"timestamp"},"EndTime":{"locationName":"endTime","type":"timestamp"}}},"Ska":{"type":"list","member":{"locationName":"VpcId"}},"Slw":{"type":"list","member":{"locationName":"item"}},"Sly":{"type":"list","member":{"type":"structure","members":{"CurrencyCode":{"locationName":"currencyCode"},"Duration":{"locationName":"duration","type":"integer"},"HostIdSet":{"shape":"Sbt","locationName":"hostIdSet"},"HostReservationId":{"locationName":"hostReservationId"},"HourlyPrice":{"locationName":"hourlyPrice"},"InstanceFamily":{"locationName":"instanceFamily"},"PaymentOption":{"locationName":"paymentOption"},"UpfrontPrice":{"locationName":"upfrontPrice"}}}},"Sm4":{"type":"structure","members":{"HourlyPrice":{"locationName":"hourlyPrice"},"RemainingTotalValue":{"locationName":"remainingTotalValue"},"RemainingUpfrontValue":{"locationName":"remainingUpfrontValue"}}},"Smb":{"type":"structure","members":{"Comment":{},"UploadEnd":{"type":"timestamp"},"UploadSize":{"type":"double"},"UploadStart":{"type":"timestamp"}}},"Sme":{"type":"structure","members":{"S3Bucket":{},"S3Key":{}}},"Smj":{"type":"structure","required":["Bytes","Format","ImportManifestUrl"],"members":{"Bytes":{"locationName":"bytes","type":"long"},"Format":{"locationName":"format"},"ImportManifestUrl":{"locationName":"importManifestUrl"}}},"Smk":{"type":"structure","required":["Size"],"members":{"Size":{"locationName":"size","type":"long"}}},"Smm":{"type":"list","member":{"locationName":"SecurityGroup"}},"Smz":{"type":"list","member":{"shape":"S4e","locationName":"item"}},"Sn7":{"type":"list","member":{"locationName":"UserId"}},"Sny":{"type":"structure","members":{"AllowDnsResolutionFromRemoteVpc":{"type":"boolean"},"AllowEgressFromLocalClassicLinkToRemoteVpc":{"type":"boolean"},"AllowEgressFromLocalVpcToRemoteClassicLink":{"type":"boolean"}}},"So0":{"type":"structure","members":{"AllowDnsResolutionFromRemoteVpc":{"locationName":"allowDnsResolutionFromRemoteVpc","type":"boolean"},"AllowEgressFromLocalClassicLinkToRemoteVpc":{"locationName":"allowEgressFromLocalClassicLinkToRemoteVpc","type":"boolean"},"AllowEgressFromLocalVpcToRemoteClassicLink":{"locationName":"allowEgressFromLocalVpcToRemoteClassicLink","type":"boolean"}}},"So3":{"type":"list","member":{"locationName":"item","type":"structure","members":{"InstanceId":{"locationName":"instanceId"},"Monitoring":{"shape":"Se7","locationName":"monitoring"}}}},"Spt":{"type":"list","member":{"locationName":"SecurityGroupId"}},"Sq4":{"type":"list","member":{"locationName":"item","type":"structure","members":{"CurrentState":{"shape":"Sds","locationName":"currentState"},"InstanceId":{"locationName":"instanceId"},"PreviousState":{"shape":"Sds","locationName":"previousState"}}}}}}

/***/ }),
/* 167 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeAccountAttributes":{"result_key":"AccountAttributes"},"DescribeAddresses":{"result_key":"Addresses"},"DescribeAvailabilityZones":{"result_key":"AvailabilityZones"},"DescribeBundleTasks":{"result_key":"BundleTasks"},"DescribeConversionTasks":{"result_key":"ConversionTasks"},"DescribeCustomerGateways":{"result_key":"CustomerGateways"},"DescribeDhcpOptions":{"result_key":"DhcpOptions"},"DescribeExportTasks":{"result_key":"ExportTasks"},"DescribeImages":{"result_key":"Images"},"DescribeInstanceStatus":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"InstanceStatuses"},"DescribeInstances":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"Reservations"},"DescribeInternetGateways":{"result_key":"InternetGateways"},"DescribeKeyPairs":{"result_key":"KeyPairs"},"DescribeNatGateways":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"NatGateways"},"DescribeNetworkAcls":{"result_key":"NetworkAcls"},"DescribeNetworkInterfaces":{"result_key":"NetworkInterfaces"},"DescribePlacementGroups":{"result_key":"PlacementGroups"},"DescribeRegions":{"result_key":"Regions"},"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":{"result_key":"RouteTables"},"DescribeSecurityGroups":{"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":{"result_key":"SpotInstanceRequests"},"DescribeSpotPriceHistory":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"SpotPriceHistory"},"DescribeSubnets":{"result_key":"Subnets"},"DescribeTags":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"Tags"},"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"},"DescribeVpcPeeringConnections":{"result_key":"VpcPeeringConnections"},"DescribeVpcs":{"result_key":"Vpcs"},"DescribeVpnConnections":{"result_key":"VpnConnections"},"DescribeVpnGateways":{"result_key":"VpnGateways"}}}

/***/ }),
/* 168 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]},"SpotInstanceRequestFulfilled":{"operation":"DescribeSpotInstanceRequests","maxAttempts":40,"delay":15,"acceptors":[{"state":"success","matcher":"pathAll","argument":"SpotInstanceRequests[].Status.Code","expected":"fulfilled"},{"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"}]},"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"}]}}}

/***/ }),
/* 169 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(170);
	    model.paginators = __webpack_require__(171).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ECR;


/***/ }),
/* 170 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"ecr-2015-09-21","apiVersion":"2015-09-21","endpointPrefix":"ecr","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon ECR","serviceFullName":"Amazon EC2 Container Registry","signatureVersion":"v4","targetPrefix":"AmazonEC2ContainerRegistry_V20150921"},"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":{}}},"output":{"type":"structure","members":{"repository":{"shape":"S13"}}}},"DeleteRepository":{"input":{"type":"structure","required":["repositoryName"],"members":{"registryId":{},"repositoryName":{},"force":{"type":"boolean"}}},"output":{"type":"structure","members":{"repository":{"shape":"S13"}}}},"DeleteRepositoryPolicy":{"input":{"type":"structure","required":["repositoryName"],"members":{"registryId":{},"repositoryName":{}}},"output":{"type":"structure","members":{"registryId":{},"repositoryName":{},"policyText":{}}}},"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":{"type":"list","member":{}},"imageSizeInBytes":{"type":"long"},"imagePushedAt":{"type":"timestamp"}}}},"nextToken":{}}}},"DescribeRepositories":{"input":{"type":"structure","members":{"registryId":{},"repositoryNames":{"type":"list","member":{}},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"repositories":{"type":"list","member":{"shape":"S13"}},"nextToken":{}}}},"GetAuthorizationToken":{"input":{"type":"structure","members":{"registryIds":{"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":{}}}},"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":{}}}},"PutImage":{"input":{"type":"structure","required":["repositoryName","imageManifest"],"members":{"registryId":{},"repositoryName":{},"imageManifest":{},"imageTag":{}}},"output":{"type":"structure","members":{"image":{"shape":"Sv"}}}},"SetRepositoryPolicy":{"input":{"type":"structure","required":["repositoryName","policyText"],"members":{"registryId":{},"repositoryName":{},"policyText":{},"force":{"type":"boolean"}}},"output":{"type":"structure","members":{"registryId":{},"repositoryName":{},"policyText":{}}}},"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":{}}},"S13":{"type":"structure","members":{"repositoryArn":{},"registryId":{},"repositoryName":{},"repositoryUri":{},"createdAt":{"type":"timestamp"}}}}}

/***/ }),
/* 171 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListImages":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"imageIds"},"DescribeImages":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"imageDetails"},"DescribeRepositories":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"repositories"}}}

/***/ }),
/* 172 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(173);
	    model.paginators = __webpack_require__(174).pagination;
	    model.waiters = __webpack_require__(175).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ECS;


/***/ }),
/* 173 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-11-13","endpointPrefix":"ecs","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon ECS","serviceFullName":"Amazon EC2 Container Service","signatureVersion":"v4","targetPrefix":"AmazonEC2ContainerServiceV20141113","uid":"ecs-2014-11-13"},"operations":{"CreateCluster":{"input":{"type":"structure","members":{"clusterName":{}}},"output":{"type":"structure","members":{"cluster":{"shape":"S4"}}}},"CreateService":{"input":{"type":"structure","required":["serviceName","taskDefinition","desiredCount"],"members":{"cluster":{},"serviceName":{},"taskDefinition":{},"loadBalancers":{"shape":"S7"},"desiredCount":{"type":"integer"},"clientToken":{},"role":{},"deploymentConfiguration":{"shape":"Sa"},"placementConstraints":{"shape":"Sb"},"placementStrategy":{"shape":"Se"}}},"output":{"type":"structure","members":{"service":{"shape":"Si"}}}},"DeleteAttributes":{"input":{"type":"structure","required":["attributes"],"members":{"cluster":{},"attributes":{"shape":"Sp"}}},"output":{"type":"structure","members":{"attributes":{"shape":"Sp"}}}},"DeleteCluster":{"input":{"type":"structure","required":["cluster"],"members":{"cluster":{}}},"output":{"type":"structure","members":{"cluster":{"shape":"S4"}}}},"DeleteService":{"input":{"type":"structure","required":["service"],"members":{"cluster":{},"service":{}}},"output":{"type":"structure","members":{"service":{"shape":"Si"}}}},"DeregisterContainerInstance":{"input":{"type":"structure","required":["containerInstance"],"members":{"cluster":{},"containerInstance":{},"force":{"type":"boolean"}}},"output":{"type":"structure","members":{"containerInstance":{"shape":"S10"}}}},"DeregisterTaskDefinition":{"input":{"type":"structure","required":["taskDefinition"],"members":{"taskDefinition":{}}},"output":{"type":"structure","members":{"taskDefinition":{"shape":"S1b"}}}},"DescribeClusters":{"input":{"type":"structure","members":{"clusters":{"shape":"S16"}}},"output":{"type":"structure","members":{"clusters":{"type":"list","member":{"shape":"S4"}},"failures":{"shape":"S28"}}}},"DescribeContainerInstances":{"input":{"type":"structure","required":["containerInstances"],"members":{"cluster":{},"containerInstances":{"shape":"S16"}}},"output":{"type":"structure","members":{"containerInstances":{"shape":"S2c"},"failures":{"shape":"S28"}}}},"DescribeServices":{"input":{"type":"structure","required":["services"],"members":{"cluster":{},"services":{"shape":"S16"}}},"output":{"type":"structure","members":{"services":{"type":"list","member":{"shape":"Si"}},"failures":{"shape":"S28"}}}},"DescribeTaskDefinition":{"input":{"type":"structure","required":["taskDefinition"],"members":{"taskDefinition":{}}},"output":{"type":"structure","members":{"taskDefinition":{"shape":"S1b"}}}},"DescribeTasks":{"input":{"type":"structure","required":["tasks"],"members":{"cluster":{},"tasks":{"shape":"S16"}}},"output":{"type":"structure","members":{"tasks":{"shape":"S2k"},"failures":{"shape":"S28"}}}},"DiscoverPollEndpoint":{"input":{"type":"structure","members":{"containerInstance":{},"cluster":{}}},"output":{"type":"structure","members":{"endpoint":{},"telemetryEndpoint":{}}}},"ListAttributes":{"input":{"type":"structure","required":["targetType"],"members":{"cluster":{},"targetType":{},"attributeName":{},"attributeValue":{},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"attributes":{"shape":"Sp"},"nextToken":{}}}},"ListClusters":{"input":{"type":"structure","members":{"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"clusterArns":{"shape":"S16"},"nextToken":{}}}},"ListContainerInstances":{"input":{"type":"structure","members":{"cluster":{},"filter":{},"nextToken":{},"maxResults":{"type":"integer"},"status":{}}},"output":{"type":"structure","members":{"containerInstanceArns":{"shape":"S16"},"nextToken":{}}}},"ListServices":{"input":{"type":"structure","members":{"cluster":{},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"serviceArns":{"shape":"S16"},"nextToken":{}}}},"ListTaskDefinitionFamilies":{"input":{"type":"structure","members":{"familyPrefix":{},"status":{},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"families":{"shape":"S16"},"nextToken":{}}}},"ListTaskDefinitions":{"input":{"type":"structure","members":{"familyPrefix":{},"status":{},"sort":{},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"taskDefinitionArns":{"shape":"S16"},"nextToken":{}}}},"ListTasks":{"input":{"type":"structure","members":{"cluster":{},"containerInstance":{},"family":{},"nextToken":{},"maxResults":{"type":"integer"},"startedBy":{},"serviceName":{},"desiredStatus":{}}},"output":{"type":"structure","members":{"taskArns":{"shape":"S16"},"nextToken":{}}}},"PutAttributes":{"input":{"type":"structure","required":["attributes"],"members":{"cluster":{},"attributes":{"shape":"Sp"}}},"output":{"type":"structure","members":{"attributes":{"shape":"Sp"}}}},"RegisterContainerInstance":{"input":{"type":"structure","members":{"cluster":{},"instanceIdentityDocument":{},"instanceIdentityDocumentSignature":{},"totalResources":{"shape":"S13"},"versionInfo":{"shape":"S12"},"containerInstanceArn":{},"attributes":{"shape":"Sp"}}},"output":{"type":"structure","members":{"containerInstance":{"shape":"S10"}}}},"RegisterTaskDefinition":{"input":{"type":"structure","required":["family","containerDefinitions"],"members":{"family":{},"taskRoleArn":{},"networkMode":{},"containerDefinitions":{"shape":"S1c"},"volumes":{"shape":"S1x"},"placementConstraints":{"shape":"S22"}}},"output":{"type":"structure","members":{"taskDefinition":{"shape":"S1b"}}}},"RunTask":{"input":{"type":"structure","required":["taskDefinition"],"members":{"cluster":{},"taskDefinition":{},"overrides":{"shape":"S2m"},"count":{"type":"integer"},"startedBy":{},"group":{},"placementConstraints":{"shape":"Sb"},"placementStrategy":{"shape":"Se"}}},"output":{"type":"structure","members":{"tasks":{"shape":"S2k"},"failures":{"shape":"S28"}}}},"StartTask":{"input":{"type":"structure","required":["taskDefinition","containerInstances"],"members":{"cluster":{},"taskDefinition":{},"overrides":{"shape":"S2m"},"containerInstances":{"shape":"S16"},"startedBy":{},"group":{}}},"output":{"type":"structure","members":{"tasks":{"shape":"S2k"},"failures":{"shape":"S28"}}}},"StopTask":{"input":{"type":"structure","required":["task"],"members":{"cluster":{},"task":{},"reason":{}}},"output":{"type":"structure","members":{"task":{"shape":"S2l"}}}},"SubmitContainerStateChange":{"input":{"type":"structure","members":{"cluster":{},"task":{},"containerName":{},"status":{},"exitCode":{"type":"integer"},"reason":{},"networkBindings":{"shape":"S2r"}}},"output":{"type":"structure","members":{"acknowledgment":{}}}},"SubmitTaskStateChange":{"input":{"type":"structure","members":{"cluster":{},"task":{},"status":{},"reason":{}}},"output":{"type":"structure","members":{"acknowledgment":{}}}},"UpdateContainerAgent":{"input":{"type":"structure","required":["containerInstance"],"members":{"cluster":{},"containerInstance":{}}},"output":{"type":"structure","members":{"containerInstance":{"shape":"S10"}}}},"UpdateContainerInstancesState":{"input":{"type":"structure","required":["containerInstances","status"],"members":{"cluster":{},"containerInstances":{"shape":"S16"},"status":{}}},"output":{"type":"structure","members":{"containerInstances":{"shape":"S2c"},"failures":{"shape":"S28"}}}},"UpdateService":{"input":{"type":"structure","required":["service"],"members":{"cluster":{},"service":{},"desiredCount":{"type":"integer"},"taskDefinition":{},"deploymentConfiguration":{"shape":"Sa"}}},"output":{"type":"structure","members":{"service":{"shape":"Si"}}}}},"shapes":{"S4":{"type":"structure","members":{"clusterArn":{},"clusterName":{},"status":{},"registeredContainerInstancesCount":{"type":"integer"},"runningTasksCount":{"type":"integer"},"pendingTasksCount":{"type":"integer"},"activeServicesCount":{"type":"integer"}}},"S7":{"type":"list","member":{"type":"structure","members":{"targetGroupArn":{},"loadBalancerName":{},"containerName":{},"containerPort":{"type":"integer"}}}},"Sa":{"type":"structure","members":{"maximumPercent":{"type":"integer"},"minimumHealthyPercent":{"type":"integer"}}},"Sb":{"type":"list","member":{"type":"structure","members":{"type":{},"expression":{}}}},"Se":{"type":"list","member":{"type":"structure","members":{"type":{},"field":{}}}},"Si":{"type":"structure","members":{"serviceArn":{},"serviceName":{},"clusterArn":{},"loadBalancers":{"shape":"S7"},"status":{},"desiredCount":{"type":"integer"},"runningCount":{"type":"integer"},"pendingCount":{"type":"integer"},"taskDefinition":{},"deploymentConfiguration":{"shape":"Sa"},"deployments":{"type":"list","member":{"type":"structure","members":{"id":{},"status":{},"taskDefinition":{},"desiredCount":{"type":"integer"},"pendingCount":{"type":"integer"},"runningCount":{"type":"integer"},"createdAt":{"type":"timestamp"},"updatedAt":{"type":"timestamp"}}}},"roleArn":{},"events":{"type":"list","member":{"type":"structure","members":{"id":{},"createdAt":{"type":"timestamp"},"message":{}}}},"createdAt":{"type":"timestamp"},"placementConstraints":{"shape":"Sb"},"placementStrategy":{"shape":"Se"}}},"Sp":{"type":"list","member":{"shape":"Sq"}},"Sq":{"type":"structure","required":["name"],"members":{"name":{},"value":{},"targetType":{},"targetId":{}}},"S10":{"type":"structure","members":{"containerInstanceArn":{},"ec2InstanceId":{},"version":{"type":"long"},"versionInfo":{"shape":"S12"},"remainingResources":{"shape":"S13"},"registeredResources":{"shape":"S13"},"status":{},"agentConnected":{"type":"boolean"},"runningTasksCount":{"type":"integer"},"pendingTasksCount":{"type":"integer"},"agentUpdateStatus":{},"attributes":{"shape":"Sp"},"registeredAt":{"type":"timestamp"}}},"S12":{"type":"structure","members":{"agentVersion":{},"agentHash":{},"dockerVersion":{}}},"S13":{"type":"list","member":{"type":"structure","members":{"name":{},"type":{},"doubleValue":{"type":"double"},"longValue":{"type":"long"},"integerValue":{"type":"integer"},"stringSetValue":{"shape":"S16"}}}},"S16":{"type":"list","member":{}},"S1b":{"type":"structure","members":{"taskDefinitionArn":{},"containerDefinitions":{"shape":"S1c"},"family":{},"taskRoleArn":{},"networkMode":{},"revision":{"type":"integer"},"volumes":{"shape":"S1x"},"status":{},"requiresAttributes":{"type":"list","member":{"shape":"Sq"}},"placementConstraints":{"shape":"S22"}}},"S1c":{"type":"list","member":{"type":"structure","members":{"name":{},"image":{},"cpu":{"type":"integer"},"memory":{"type":"integer"},"memoryReservation":{"type":"integer"},"links":{"shape":"S16"},"portMappings":{"type":"list","member":{"type":"structure","members":{"containerPort":{"type":"integer"},"hostPort":{"type":"integer"},"protocol":{}}}},"essential":{"type":"boolean"},"entryPoint":{"shape":"S16"},"command":{"shape":"S16"},"environment":{"shape":"S1h"},"mountPoints":{"type":"list","member":{"type":"structure","members":{"sourceVolume":{},"containerPath":{},"readOnly":{"type":"boolean"}}}},"volumesFrom":{"type":"list","member":{"type":"structure","members":{"sourceContainer":{},"readOnly":{"type":"boolean"}}}},"hostname":{},"user":{},"workingDirectory":{},"disableNetworking":{"type":"boolean"},"privileged":{"type":"boolean"},"readonlyRootFilesystem":{"type":"boolean"},"dnsServers":{"shape":"S16"},"dnsSearchDomains":{"shape":"S16"},"extraHosts":{"type":"list","member":{"type":"structure","required":["hostname","ipAddress"],"members":{"hostname":{},"ipAddress":{}}}},"dockerSecurityOptions":{"shape":"S16"},"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":{}}}}}}},"S1h":{"type":"list","member":{"type":"structure","members":{"name":{},"value":{}}}},"S1x":{"type":"list","member":{"type":"structure","members":{"name":{},"host":{"type":"structure","members":{"sourcePath":{}}}}}},"S22":{"type":"list","member":{"type":"structure","members":{"type":{},"expression":{}}}},"S28":{"type":"list","member":{"type":"structure","members":{"arn":{},"reason":{}}}},"S2c":{"type":"list","member":{"shape":"S10"}},"S2k":{"type":"list","member":{"shape":"S2l"}},"S2l":{"type":"structure","members":{"taskArn":{},"clusterArn":{},"taskDefinitionArn":{},"containerInstanceArn":{},"overrides":{"shape":"S2m"},"lastStatus":{},"desiredStatus":{},"containers":{"type":"list","member":{"type":"structure","members":{"containerArn":{},"taskArn":{},"name":{},"lastStatus":{},"exitCode":{"type":"integer"},"reason":{},"networkBindings":{"shape":"S2r"}}}},"startedBy":{},"version":{"type":"long"},"stoppedReason":{},"createdAt":{"type":"timestamp"},"startedAt":{"type":"timestamp"},"stoppedAt":{"type":"timestamp"},"group":{}}},"S2m":{"type":"structure","members":{"containerOverrides":{"type":"list","member":{"type":"structure","members":{"name":{},"command":{"shape":"S16"},"environment":{"shape":"S1h"},"cpu":{"type":"integer"},"memory":{"type":"integer"},"memoryReservation":{"type":"integer"}}}},"taskRoleArn":{}}},"S2r":{"type":"list","member":{"type":"structure","members":{"bindIP":{},"containerPort":{"type":"integer"},"hostPort":{"type":"integer"},"protocol":{}}}}}}

/***/ }),
/* 174 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 175 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 176 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(177);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.EFS;


/***/ }),
/* 177 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-02-01","endpointPrefix":"elasticfilesystem","protocol":"rest-json","serviceAbbreviation":"EFS","serviceFullName":"Amazon Elastic File System","signatureVersion":"v4","uid":"elasticfilesystem-2015-02-01"},"operations":{"CreateFileSystem":{"http":{"requestUri":"/2015-02-01/file-systems","responseCode":201},"input":{"type":"structure","required":["CreationToken"],"members":{"CreationToken":{},"PerformanceMode":{}}},"output":{"shape":"S4"}},"CreateMountTarget":{"http":{"requestUri":"/2015-02-01/mount-targets","responseCode":200},"input":{"type":"structure","required":["FileSystemId","SubnetId"],"members":{"FileSystemId":{},"SubnetId":{},"IpAddress":{},"SecurityGroups":{"shape":"Sg"}}},"output":{"shape":"Si"}},"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":"Sm"}}}},"DeleteFileSystem":{"http":{"method":"DELETE","requestUri":"/2015-02-01/file-systems/{FileSystemId}","responseCode":204},"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":{"type":"list","member":{}}}}},"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":"S4"}},"NextMarker":{}}}},"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":"Sg"}}}},"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"}}},"output":{"type":"structure","members":{"Marker":{},"MountTargets":{"type":"list","member":{"shape":"Si"}},"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":"Sm"},"NextMarker":{}}}},"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":"Sg"}}}}},"shapes":{"S4":{"type":"structure","required":["OwnerId","CreationToken","FileSystemId","CreationTime","LifeCycleState","NumberOfMountTargets","SizeInBytes","PerformanceMode"],"members":{"OwnerId":{},"CreationToken":{},"FileSystemId":{},"CreationTime":{"type":"timestamp"},"LifeCycleState":{},"Name":{},"NumberOfMountTargets":{"type":"integer"},"SizeInBytes":{"type":"structure","required":["Value"],"members":{"Value":{"type":"long"},"Timestamp":{"type":"timestamp"}}},"PerformanceMode":{}}},"Sg":{"type":"list","member":{}},"Si":{"type":"structure","required":["MountTargetId","FileSystemId","SubnetId","LifeCycleState"],"members":{"OwnerId":{},"MountTargetId":{},"FileSystemId":{},"SubnetId":{},"LifeCycleState":{},"IpAddress":{},"NetworkInterfaceId":{}}},"Sm":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}}}}

/***/ }),
/* 178 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(179);
	    model.paginators = __webpack_require__(180).pagination;
	    model.waiters = __webpack_require__(181).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ElastiCache;


/***/ }),
/* 179 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-02-02","endpointPrefix":"elasticache","protocol":"query","serviceFullName":"Amazon 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"}}}},"CopySnapshot":{"input":{"type":"structure","required":["SourceSnapshotName","TargetSnapshotName"],"members":{"SourceSnapshotName":{},"TargetSnapshotName":{},"TargetBucket":{}}},"output":{"resultWrapper":"CopySnapshotResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"CreateCacheCluster":{"input":{"type":"structure","required":["CacheClusterId"],"members":{"CacheClusterId":{},"ReplicationGroupId":{},"AZMode":{},"PreferredAvailabilityZone":{},"PreferredAvailabilityZones":{"shape":"So"},"NumCacheNodes":{"type":"integer"},"CacheNodeType":{},"Engine":{},"EngineVersion":{},"CacheParameterGroupName":{},"CacheSubnetGroupName":{},"CacheSecurityGroupNames":{"shape":"Sp"},"SecurityGroupIds":{"shape":"Sq"},"Tags":{"shape":"S3"},"SnapshotArns":{"shape":"Sr"},"SnapshotName":{},"PreferredMaintenanceWindow":{},"Port":{"type":"integer"},"NotificationTopicArn":{},"AutoMinorVersionUpgrade":{"type":"boolean"},"SnapshotRetentionLimit":{"type":"integer"},"SnapshotWindow":{},"AuthToken":{}}},"output":{"resultWrapper":"CreateCacheClusterResult","type":"structure","members":{"CacheCluster":{"shape":"Su"}}}},"CreateCacheParameterGroup":{"input":{"type":"structure","required":["CacheParameterGroupName","CacheParameterGroupFamily","Description"],"members":{"CacheParameterGroupName":{},"CacheParameterGroupFamily":{},"Description":{}}},"output":{"resultWrapper":"CreateCacheParameterGroupResult","type":"structure","members":{"CacheParameterGroup":{"shape":"S19"}}}},"CreateCacheSecurityGroup":{"input":{"type":"structure","required":["CacheSecurityGroupName","Description"],"members":{"CacheSecurityGroupName":{},"Description":{}}},"output":{"resultWrapper":"CreateCacheSecurityGroupResult","type":"structure","members":{"CacheSecurityGroup":{"shape":"S8"}}}},"CreateCacheSubnetGroup":{"input":{"type":"structure","required":["CacheSubnetGroupName","CacheSubnetGroupDescription","SubnetIds"],"members":{"CacheSubnetGroupName":{},"CacheSubnetGroupDescription":{},"SubnetIds":{"shape":"S1d"}}},"output":{"resultWrapper":"CreateCacheSubnetGroupResult","type":"structure","members":{"CacheSubnetGroup":{"shape":"S1f"}}}},"CreateReplicationGroup":{"input":{"type":"structure","required":["ReplicationGroupId","ReplicationGroupDescription"],"members":{"ReplicationGroupId":{},"ReplicationGroupDescription":{},"PrimaryClusterId":{},"AutomaticFailoverEnabled":{"type":"boolean"},"NumCacheClusters":{"type":"integer"},"PreferredCacheClusterAZs":{"shape":"Sl"},"NumNodeGroups":{"type":"integer"},"ReplicasPerNodeGroup":{"type":"integer"},"NodeGroupConfiguration":{"type":"list","member":{"shape":"Sk","locationName":"NodeGroupConfiguration"}},"CacheNodeType":{},"Engine":{},"EngineVersion":{},"CacheParameterGroupName":{},"CacheSubnetGroupName":{},"CacheSecurityGroupNames":{"shape":"Sp"},"SecurityGroupIds":{"shape":"Sq"},"Tags":{"shape":"S3"},"SnapshotArns":{"shape":"Sr"},"SnapshotName":{},"PreferredMaintenanceWindow":{},"Port":{"type":"integer"},"NotificationTopicArn":{},"AutoMinorVersionUpgrade":{"type":"boolean"},"SnapshotRetentionLimit":{"type":"integer"},"SnapshotWindow":{},"AuthToken":{}}},"output":{"resultWrapper":"CreateReplicationGroupResult","type":"structure","members":{"ReplicationGroup":{"shape":"S1m"}}}},"CreateSnapshot":{"input":{"type":"structure","required":["SnapshotName"],"members":{"ReplicationGroupId":{},"CacheClusterId":{},"SnapshotName":{}}},"output":{"resultWrapper":"CreateSnapshotResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"DeleteCacheCluster":{"input":{"type":"structure","required":["CacheClusterId"],"members":{"CacheClusterId":{},"FinalSnapshotIdentifier":{}}},"output":{"resultWrapper":"DeleteCacheClusterResult","type":"structure","members":{"CacheCluster":{"shape":"Su"}}}},"DeleteCacheParameterGroup":{"input":{"type":"structure","required":["CacheParameterGroupName"],"members":{"CacheParameterGroupName":{}}}},"DeleteCacheSecurityGroup":{"input":{"type":"structure","required":["CacheSecurityGroupName"],"members":{"CacheSecurityGroupName":{}}}},"DeleteCacheSubnetGroup":{"input":{"type":"structure","required":["CacheSubnetGroupName"],"members":{"CacheSubnetGroupName":{}}}},"DeleteReplicationGroup":{"input":{"type":"structure","required":["ReplicationGroupId"],"members":{"ReplicationGroupId":{},"RetainPrimaryCluster":{"type":"boolean"},"FinalSnapshotIdentifier":{}}},"output":{"resultWrapper":"DeleteReplicationGroupResult","type":"structure","members":{"ReplicationGroup":{"shape":"S1m"}}}},"DeleteSnapshot":{"input":{"type":"structure","required":["SnapshotName"],"members":{"SnapshotName":{}}},"output":{"resultWrapper":"DeleteSnapshotResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"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":"Su","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":"S19","locationName":"CacheParameterGroup"}}}}},"DescribeCacheParameters":{"input":{"type":"structure","required":["CacheParameterGroupName"],"members":{"CacheParameterGroupName":{},"Source":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeCacheParametersResult","type":"structure","members":{"Marker":{},"Parameters":{"shape":"S2h"},"CacheNodeTypeSpecificParameters":{"shape":"S2k"}}}},"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":"S1f","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":"S2h"},"CacheNodeTypeSpecificParameters":{"shape":"S2k"}},"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"}}}}}}},"DescribeReplicationGroups":{"input":{"type":"structure","members":{"ReplicationGroupId":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeReplicationGroupsResult","type":"structure","members":{"Marker":{},"ReplicationGroups":{"type":"list","member":{"shape":"S1m","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":"S38","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":"S3a"}},"wrapper":true}}}}},"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":"Sd","locationName":"Snapshot"}}}}},"ListAllowedNodeTypeModifications":{"input":{"type":"structure","members":{"CacheClusterId":{},"ReplicationGroupId":{}}},"output":{"resultWrapper":"ListAllowedNodeTypeModificationsResult","type":"structure","members":{"ScaleUpModifications":{"type":"list","member":{}}}}},"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":"Sy"},"AZMode":{},"NewAvailabilityZones":{"shape":"So"},"CacheSecurityGroupNames":{"shape":"Sp"},"SecurityGroupIds":{"shape":"Sq"},"PreferredMaintenanceWindow":{},"NotificationTopicArn":{},"CacheParameterGroupName":{},"NotificationTopicStatus":{},"ApplyImmediately":{"type":"boolean"},"EngineVersion":{},"AutoMinorVersionUpgrade":{"type":"boolean"},"SnapshotRetentionLimit":{"type":"integer"},"SnapshotWindow":{},"CacheNodeType":{}}},"output":{"resultWrapper":"ModifyCacheClusterResult","type":"structure","members":{"CacheCluster":{"shape":"Su"}}}},"ModifyCacheParameterGroup":{"input":{"type":"structure","required":["CacheParameterGroupName","ParameterNameValues"],"members":{"CacheParameterGroupName":{},"ParameterNameValues":{"shape":"S3q"}}},"output":{"shape":"S3s","resultWrapper":"ModifyCacheParameterGroupResult"}},"ModifyCacheSubnetGroup":{"input":{"type":"structure","required":["CacheSubnetGroupName"],"members":{"CacheSubnetGroupName":{},"CacheSubnetGroupDescription":{},"SubnetIds":{"shape":"S1d"}}},"output":{"resultWrapper":"ModifyCacheSubnetGroupResult","type":"structure","members":{"CacheSubnetGroup":{"shape":"S1f"}}}},"ModifyReplicationGroup":{"input":{"type":"structure","required":["ReplicationGroupId"],"members":{"ReplicationGroupId":{},"ReplicationGroupDescription":{},"PrimaryClusterId":{},"SnapshottingClusterId":{},"AutomaticFailoverEnabled":{"type":"boolean"},"CacheSecurityGroupNames":{"shape":"Sp"},"SecurityGroupIds":{"shape":"Sq"},"PreferredMaintenanceWindow":{},"NotificationTopicArn":{},"CacheParameterGroupName":{},"NotificationTopicStatus":{},"ApplyImmediately":{"type":"boolean"},"EngineVersion":{},"AutoMinorVersionUpgrade":{"type":"boolean"},"SnapshotRetentionLimit":{"type":"integer"},"SnapshotWindow":{},"CacheNodeType":{},"NodeGroupId":{}}},"output":{"resultWrapper":"ModifyReplicationGroupResult","type":"structure","members":{"ReplicationGroup":{"shape":"S1m"}}}},"PurchaseReservedCacheNodesOffering":{"input":{"type":"structure","required":["ReservedCacheNodesOfferingId"],"members":{"ReservedCacheNodesOfferingId":{},"ReservedCacheNodeId":{},"CacheNodeCount":{"type":"integer"}}},"output":{"resultWrapper":"PurchaseReservedCacheNodesOfferingResult","type":"structure","members":{"ReservedCacheNode":{"shape":"S38"}}}},"RebootCacheCluster":{"input":{"type":"structure","required":["CacheClusterId","CacheNodeIdsToReboot"],"members":{"CacheClusterId":{},"CacheNodeIdsToReboot":{"shape":"Sy"}}},"output":{"resultWrapper":"RebootCacheClusterResult","type":"structure","members":{"CacheCluster":{"shape":"Su"}}}},"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":"S3q"}}},"output":{"shape":"S3s","resultWrapper":"ResetCacheParameterGroupResult"}},"RevokeCacheSecurityGroupIngress":{"input":{"type":"structure","required":["CacheSecurityGroupName","EC2SecurityGroupName","EC2SecurityGroupOwnerId"],"members":{"CacheSecurityGroupName":{},"EC2SecurityGroupName":{},"EC2SecurityGroupOwnerId":{}}},"output":{"resultWrapper":"RevokeCacheSecurityGroupIngressResult","type":"structure","members":{"CacheSecurityGroup":{"shape":"S8"}}}},"TestFailover":{"input":{"type":"structure","required":["ReplicationGroupId","NodeGroupId"],"members":{"ReplicationGroupId":{},"NodeGroupId":{}}},"output":{"resultWrapper":"TestFailoverResult","type":"structure","members":{"ReplicationGroup":{"shape":"S1m"}}}}},"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":{}}}}},"wrapper":true},"Sd":{"type":"structure","members":{"SnapshotName":{},"ReplicationGroupId":{},"ReplicationGroupDescription":{},"CacheClusterId":{},"SnapshotStatus":{},"SnapshotSource":{},"CacheNodeType":{},"Engine":{},"EngineVersion":{},"NumCacheNodes":{"type":"integer"},"PreferredAvailabilityZone":{},"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":"Sk"},"CacheSize":{},"CacheNodeCreateTime":{"type":"timestamp"},"SnapshotCreateTime":{"type":"timestamp"}},"wrapper":true}}},"wrapper":true},"Sk":{"type":"structure","members":{"Slots":{},"ReplicaCount":{"type":"integer"},"PrimaryAvailabilityZone":{},"ReplicaAvailabilityZones":{"shape":"Sl"}}},"Sl":{"type":"list","member":{"locationName":"AvailabilityZone"}},"So":{"type":"list","member":{"locationName":"PreferredAvailabilityZone"}},"Sp":{"type":"list","member":{"locationName":"CacheSecurityGroupName"}},"Sq":{"type":"list","member":{"locationName":"SecurityGroupId"}},"Sr":{"type":"list","member":{"locationName":"SnapshotArn"}},"Su":{"type":"structure","members":{"CacheClusterId":{},"ConfigurationEndpoint":{"shape":"Sv"},"ClientDownloadLandingPage":{},"CacheNodeType":{},"Engine":{},"EngineVersion":{},"CacheClusterStatus":{},"NumCacheNodes":{"type":"integer"},"PreferredAvailabilityZone":{},"CacheClusterCreateTime":{"type":"timestamp"},"PreferredMaintenanceWindow":{},"PendingModifiedValues":{"type":"structure","members":{"NumCacheNodes":{"type":"integer"},"CacheNodeIdsToRemove":{"shape":"Sy"},"EngineVersion":{},"CacheNodeType":{}}},"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":"Sy"}}},"CacheSubnetGroupName":{},"CacheNodes":{"type":"list","member":{"locationName":"CacheNode","type":"structure","members":{"CacheNodeId":{},"CacheNodeStatus":{},"CacheNodeCreateTime":{"type":"timestamp"},"Endpoint":{"shape":"Sv"},"ParameterGroupStatus":{},"SourceCacheNodeId":{},"CustomerAvailabilityZone":{}}}},"AutoMinorVersionUpgrade":{"type":"boolean"},"SecurityGroups":{"type":"list","member":{"type":"structure","members":{"SecurityGroupId":{},"Status":{}}}},"ReplicationGroupId":{},"SnapshotRetentionLimit":{"type":"integer"},"SnapshotWindow":{}},"wrapper":true},"Sv":{"type":"structure","members":{"Address":{},"Port":{"type":"integer"}}},"Sy":{"type":"list","member":{"locationName":"CacheNodeId"}},"S19":{"type":"structure","members":{"CacheParameterGroupName":{},"CacheParameterGroupFamily":{},"Description":{}},"wrapper":true},"S1d":{"type":"list","member":{"locationName":"SubnetIdentifier"}},"S1f":{"type":"structure","members":{"CacheSubnetGroupName":{},"CacheSubnetGroupDescription":{},"VpcId":{},"Subnets":{"type":"list","member":{"locationName":"Subnet","type":"structure","members":{"SubnetIdentifier":{},"SubnetAvailabilityZone":{"type":"structure","members":{"Name":{}},"wrapper":true}}}}},"wrapper":true},"S1m":{"type":"structure","members":{"ReplicationGroupId":{},"Description":{},"Status":{},"PendingModifiedValues":{"type":"structure","members":{"PrimaryClusterId":{},"AutomaticFailoverStatus":{}}},"MemberClusters":{"type":"list","member":{"locationName":"ClusterId"}},"NodeGroups":{"type":"list","member":{"locationName":"NodeGroup","type":"structure","members":{"NodeGroupId":{},"Status":{},"PrimaryEndpoint":{"shape":"Sv"},"Slots":{},"NodeGroupMembers":{"type":"list","member":{"locationName":"NodeGroupMember","type":"structure","members":{"CacheClusterId":{},"CacheNodeId":{},"ReadEndpoint":{"shape":"Sv"},"PreferredAvailabilityZone":{},"CurrentRole":{}}}}}}},"SnapshottingClusterId":{},"AutomaticFailover":{},"ConfigurationEndpoint":{"shape":"Sv"},"SnapshotRetentionLimit":{"type":"integer"},"SnapshotWindow":{},"ClusterEnabled":{"type":"boolean"},"CacheNodeType":{}},"wrapper":true},"S2h":{"type":"list","member":{"locationName":"Parameter","type":"structure","members":{"ParameterName":{},"ParameterValue":{},"Description":{},"Source":{},"DataType":{},"AllowedValues":{},"IsModifiable":{"type":"boolean"},"MinimumEngineVersion":{},"ChangeType":{}}}},"S2k":{"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":{}}}},"S38":{"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":"S3a"}},"wrapper":true},"S3a":{"type":"list","member":{"locationName":"RecurringCharge","type":"structure","members":{"RecurringChargeAmount":{"type":"double"},"RecurringChargeFrequency":{}},"wrapper":true}},"S3q":{"type":"list","member":{"locationName":"ParameterNameValue","type":"structure","members":{"ParameterName":{},"ParameterValue":{}}}},"S3s":{"type":"structure","members":{"CacheParameterGroupName":{}}}}}

/***/ }),
/* 180 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"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"},"DescribeSnapshots":{"input_token":"Marker","limit_key":"MaxRecords","output_token":"Marker","result_key":"Snapshots"}}}

/***/ }),
/* 181 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}}}

/***/ }),
/* 182 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(183);
	    model.paginators = __webpack_require__(184).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ElasticBeanstalk;


/***/ }),
/* 183 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2010-12-01","endpointPrefix":"elasticbeanstalk","protocol":"query","serviceAbbreviation":"Elastic Beanstalk","serviceFullName":"AWS 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":{}}}},"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":"Si","resultWrapper":"ComposeEnvironmentsResult"}},"CreateApplication":{"input":{"type":"structure","required":["ApplicationName"],"members":{"ApplicationName":{},"Description":{},"ResourceLifecycleConfig":{"shape":"S15"}}},"output":{"shape":"S1b","resultWrapper":"CreateApplicationResult"}},"CreateApplicationVersion":{"input":{"type":"structure","required":["ApplicationName","VersionLabel"],"members":{"ApplicationName":{},"VersionLabel":{},"Description":{},"SourceBuildInformation":{"shape":"S1g"},"SourceBundle":{"shape":"S1k"},"BuildConfiguration":{"type":"structure","required":["CodeBuildServiceRole","Image"],"members":{"ArtifactName":{},"CodeBuildServiceRole":{},"ComputeType":{},"Image":{},"TimeoutInMinutes":{"type":"integer"}}},"AutoCreateApplication":{"type":"boolean"},"Process":{"type":"boolean"}}},"output":{"shape":"S1s","resultWrapper":"CreateApplicationVersionResult"}},"CreateConfigurationTemplate":{"input":{"type":"structure","required":["ApplicationName","TemplateName"],"members":{"ApplicationName":{},"TemplateName":{},"SolutionStackName":{},"PlatformArn":{},"SourceConfiguration":{"type":"structure","members":{"ApplicationName":{},"TemplateName":{}}},"EnvironmentId":{},"Description":{},"OptionSettings":{"shape":"S1x"}}},"output":{"shape":"S23","resultWrapper":"CreateConfigurationTemplateResult"}},"CreateEnvironment":{"input":{"type":"structure","required":["ApplicationName"],"members":{"ApplicationName":{},"EnvironmentName":{},"GroupName":{},"Description":{},"CNAMEPrefix":{},"Tier":{"shape":"S11"},"Tags":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}},"VersionLabel":{},"TemplateName":{},"SolutionStackName":{},"PlatformArn":{},"OptionSettings":{"shape":"S1x"},"OptionsToRemove":{"shape":"S2a"}}},"output":{"shape":"Sk","resultWrapper":"CreateEnvironmentResult"}},"CreatePlatformVersion":{"input":{"type":"structure","required":["PlatformName","PlatformVersion","PlatformDefinitionBundle"],"members":{"PlatformName":{},"PlatformVersion":{},"PlatformDefinitionBundle":{"shape":"S1k"},"EnvironmentName":{},"OptionSettings":{"shape":"S1x"}}},"output":{"resultWrapper":"CreatePlatformVersionResult","type":"structure","members":{"PlatformSummary":{"shape":"S2g"},"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":"S2g"}}}},"DescribeApplicationVersions":{"input":{"type":"structure","members":{"ApplicationName":{},"VersionLabels":{"shape":"S1d"},"MaxRecords":{"type":"integer"},"NextToken":{}}},"output":{"resultWrapper":"DescribeApplicationVersionsResult","type":"structure","members":{"ApplicationVersions":{"type":"list","member":{"shape":"S1t"}},"NextToken":{}}}},"DescribeApplications":{"input":{"type":"structure","members":{"ApplicationNames":{"type":"list","member":{}}}},"output":{"resultWrapper":"DescribeApplicationsResult","type":"structure","members":{"Applications":{"type":"list","member":{"shape":"S1c"}}}}},"DescribeConfigurationOptions":{"input":{"type":"structure","members":{"ApplicationName":{},"TemplateName":{},"EnvironmentName":{},"SolutionStackName":{},"PlatformArn":{},"Options":{"shape":"S2a"}}},"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":"S23"}}}}},"DescribeEnvironmentHealth":{"input":{"type":"structure","members":{"EnvironmentName":{},"EnvironmentId":{},"AttributeNames":{"type":"list","member":{}}}},"output":{"resultWrapper":"DescribeEnvironmentHealthResult","type":"structure","members":{"EnvironmentName":{},"HealthStatus":{},"Status":{},"Color":{},"Causes":{"shape":"S3x"},"ApplicationMetrics":{"shape":"S3z"},"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":{}}}},"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"}}},"output":{"shape":"Si","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":"S3x"},"LaunchedAt":{"type":"timestamp"},"ApplicationMetrics":{"shape":"S3z"},"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"}}},"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":"S2m"},"SupportedAddonList":{"shape":"S2o"}}}}}},"ListAvailableSolutionStacks":{"output":{"resultWrapper":"ListAvailableSolutionStacksResult","type":"structure","members":{"SolutionStacks":{"type":"list","member":{}},"SolutionStackDetails":{"type":"list","member":{"type":"structure","members":{"SolutionStackName":{},"PermittedFileTypes":{"type":"list","member":{}}}}}}}},"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":"S2g"}},"NextToken":{}}}},"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":"Sk","resultWrapper":"TerminateEnvironmentResult"}},"UpdateApplication":{"input":{"type":"structure","required":["ApplicationName"],"members":{"ApplicationName":{},"Description":{}}},"output":{"shape":"S1b","resultWrapper":"UpdateApplicationResult"}},"UpdateApplicationResourceLifecycle":{"input":{"type":"structure","required":["ApplicationName","ResourceLifecycleConfig"],"members":{"ApplicationName":{},"ResourceLifecycleConfig":{"shape":"S15"}}},"output":{"resultWrapper":"UpdateApplicationResourceLifecycleResult","type":"structure","members":{"ApplicationName":{},"ResourceLifecycleConfig":{"shape":"S15"}}}},"UpdateApplicationVersion":{"input":{"type":"structure","required":["ApplicationName","VersionLabel"],"members":{"ApplicationName":{},"VersionLabel":{},"Description":{}}},"output":{"shape":"S1s","resultWrapper":"UpdateApplicationVersionResult"}},"UpdateConfigurationTemplate":{"input":{"type":"structure","required":["ApplicationName","TemplateName"],"members":{"ApplicationName":{},"TemplateName":{},"Description":{},"OptionSettings":{"shape":"S1x"},"OptionsToRemove":{"shape":"S2a"}}},"output":{"shape":"S23","resultWrapper":"UpdateConfigurationTemplateResult"}},"UpdateEnvironment":{"input":{"type":"structure","members":{"ApplicationName":{},"EnvironmentId":{},"EnvironmentName":{},"GroupName":{},"Description":{},"Tier":{"shape":"S11"},"VersionLabel":{},"TemplateName":{},"SolutionStackName":{},"PlatformArn":{},"OptionSettings":{"shape":"S1x"},"OptionsToRemove":{"shape":"S2a"}}},"output":{"shape":"Sk","resultWrapper":"UpdateEnvironmentResult"}},"ValidateConfigurationSettings":{"input":{"type":"structure","required":["ApplicationName","OptionSettings"],"members":{"ApplicationName":{},"TemplateName":{},"EnvironmentName":{},"OptionSettings":{"shape":"S1x"}}},"output":{"resultWrapper":"ValidateConfigurationSettingsResult","type":"structure","members":{"Messages":{"type":"list","member":{"type":"structure","members":{"Message":{},"Severity":{},"Namespace":{},"OptionName":{}}}}}}}},"shapes":{"Si":{"type":"structure","members":{"Environments":{"type":"list","member":{"shape":"Sk"}}}},"Sk":{"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":"S11"},"EnvironmentLinks":{"type":"list","member":{"type":"structure","members":{"LinkName":{},"EnvironmentName":{}}}}}},"S11":{"type":"structure","members":{"Name":{},"Type":{},"Version":{}}},"S15":{"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"}}}}}}},"S1b":{"type":"structure","members":{"Application":{"shape":"S1c"}}},"S1c":{"type":"structure","members":{"ApplicationName":{},"Description":{},"DateCreated":{"type":"timestamp"},"DateUpdated":{"type":"timestamp"},"Versions":{"shape":"S1d"},"ConfigurationTemplates":{"type":"list","member":{}},"ResourceLifecycleConfig":{"shape":"S15"}}},"S1d":{"type":"list","member":{}},"S1g":{"type":"structure","required":["SourceType","SourceRepository","SourceLocation"],"members":{"SourceType":{},"SourceRepository":{},"SourceLocation":{}}},"S1k":{"type":"structure","members":{"S3Bucket":{},"S3Key":{}}},"S1s":{"type":"structure","members":{"ApplicationVersion":{"shape":"S1t"}}},"S1t":{"type":"structure","members":{"ApplicationName":{},"Description":{},"VersionLabel":{},"SourceBuildInformation":{"shape":"S1g"},"BuildArn":{},"SourceBundle":{"shape":"S1k"},"DateCreated":{"type":"timestamp"},"DateUpdated":{"type":"timestamp"},"Status":{}}},"S1x":{"type":"list","member":{"type":"structure","members":{"ResourceName":{},"Namespace":{},"OptionName":{},"Value":{}}}},"S23":{"type":"structure","members":{"SolutionStackName":{},"PlatformArn":{},"ApplicationName":{},"TemplateName":{},"Description":{},"EnvironmentName":{},"DeploymentStatus":{},"DateCreated":{"type":"timestamp"},"DateUpdated":{"type":"timestamp"},"OptionSettings":{"shape":"S1x"}}},"S2a":{"type":"list","member":{"type":"structure","members":{"ResourceName":{},"Namespace":{},"OptionName":{}}}},"S2g":{"type":"structure","members":{"PlatformArn":{},"PlatformOwner":{},"PlatformStatus":{},"PlatformCategory":{},"OperatingSystemName":{},"OperatingSystemVersion":{},"SupportedTierList":{"shape":"S2m"},"SupportedAddonList":{"shape":"S2o"}}},"S2m":{"type":"list","member":{}},"S2o":{"type":"list","member":{}},"S3x":{"type":"list","member":{}},"S3z":{"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"}}}}}}}

/***/ }),
/* 184 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeApplicationVersions":{"result_key":"ApplicationVersions"},"DescribeApplications":{"result_key":"Applications"},"DescribeConfigurationOptions":{"result_key":"Options"},"DescribeEnvironments":{"result_key":"Environments"},"DescribeEvents":{"input_token":"NextToken","limit_key":"MaxRecords","output_token":"NextToken","result_key":"Events"},"ListAvailableSolutionStacks":{"result_key":"SolutionStacks"}}}

/***/ }),
/* 185 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(186);
	    model.paginators = __webpack_require__(187).pagination;
	    model.waiters = __webpack_require__(188).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ELB;


/***/ }),
/* 186 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-06-01","endpointPrefix":"elasticloadbalancing","protocol":"query","serviceFullName":"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":{}}}}

/***/ }),
/* 187 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeInstanceHealth":{"result_key":"InstanceStates"},"DescribeLoadBalancerPolicies":{"result_key":"PolicyDescriptions"},"DescribeLoadBalancerPolicyTypes":{"result_key":"PolicyTypeDescriptions"},"DescribeLoadBalancers":{"input_token":"Marker","output_token":"NextMarker","result_key":"LoadBalancerDescriptions"}}}

/***/ }),
/* 188 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}}}

/***/ }),
/* 189 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(190);
	    model.paginators = __webpack_require__(191).pagination;
	    model.waiters = __webpack_require__(192).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ELBv2;


/***/ }),
/* 190 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-12-01","endpointPrefix":"elasticloadbalancing","protocol":"query","serviceAbbreviation":"Elastic Load Balancing v2","serviceFullName":"Elastic Load Balancing","signatureVersion":"v4","uid":"elasticloadbalancingv2-2015-12-01","xmlNamespace":"http://elasticloadbalancing.amazonaws.com/doc/2015-12-01/"},"operations":{"AddTags":{"input":{"type":"structure","required":["ResourceArns","Tags"],"members":{"ResourceArns":{"shape":"S2"},"Tags":{"shape":"S4"}}},"output":{"resultWrapper":"AddTagsResult","type":"structure","members":{}}},"CreateListener":{"input":{"type":"structure","required":["LoadBalancerArn","Protocol","Port","DefaultActions"],"members":{"LoadBalancerArn":{},"Protocol":{},"Port":{"type":"integer"},"SslPolicy":{},"Certificates":{"shape":"Se"},"DefaultActions":{"shape":"Sh"}}},"output":{"resultWrapper":"CreateListenerResult","type":"structure","members":{"Listeners":{"shape":"Sm"}}}},"CreateLoadBalancer":{"input":{"type":"structure","required":["Name","Subnets"],"members":{"Name":{},"Subnets":{"shape":"Sr"},"SecurityGroups":{"shape":"St"},"Scheme":{},"Tags":{"shape":"S4"},"IpAddressType":{}}},"output":{"resultWrapper":"CreateLoadBalancerResult","type":"structure","members":{"LoadBalancers":{"shape":"Sy"}}}},"CreateRule":{"input":{"type":"structure","required":["ListenerArn","Conditions","Priority","Actions"],"members":{"ListenerArn":{},"Conditions":{"shape":"S1c"},"Priority":{"type":"integer"},"Actions":{"shape":"Sh"}}},"output":{"resultWrapper":"CreateRuleResult","type":"structure","members":{"Rules":{"shape":"S1j"}}}},"CreateTargetGroup":{"input":{"type":"structure","required":["Name","Protocol","Port","VpcId"],"members":{"Name":{},"Protocol":{},"Port":{"type":"integer"},"VpcId":{},"HealthCheckProtocol":{},"HealthCheckPort":{},"HealthCheckPath":{},"HealthCheckIntervalSeconds":{"type":"integer"},"HealthCheckTimeoutSeconds":{"type":"integer"},"HealthyThresholdCount":{"type":"integer"},"UnhealthyThresholdCount":{"type":"integer"},"Matcher":{"shape":"S1v"}}},"output":{"resultWrapper":"CreateTargetGroupResult","type":"structure","members":{"TargetGroups":{"shape":"S1y"}}}},"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":"S2a"}}},"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":{}}}},"DescribeListeners":{"input":{"type":"structure","members":{"LoadBalancerArn":{},"ListenerArns":{"type":"list","member":{}},"Marker":{},"PageSize":{"type":"integer"}}},"output":{"resultWrapper":"DescribeListenersResult","type":"structure","members":{"Listeners":{"shape":"Sm"},"NextMarker":{}}}},"DescribeLoadBalancerAttributes":{"input":{"type":"structure","required":["LoadBalancerArn"],"members":{"LoadBalancerArn":{}}},"output":{"resultWrapper":"DescribeLoadBalancerAttributesResult","type":"structure","members":{"Attributes":{"shape":"S2r"}}}},"DescribeLoadBalancers":{"input":{"type":"structure","members":{"LoadBalancerArns":{"shape":"S20"},"Names":{"type":"list","member":{}},"Marker":{},"PageSize":{"type":"integer"}}},"output":{"resultWrapper":"DescribeLoadBalancersResult","type":"structure","members":{"LoadBalancers":{"shape":"Sy"},"NextMarker":{}}}},"DescribeRules":{"input":{"type":"structure","members":{"ListenerArn":{},"RuleArns":{"type":"list","member":{}},"Marker":{},"PageSize":{"type":"integer"}}},"output":{"resultWrapper":"DescribeRulesResult","type":"structure","members":{"Rules":{"shape":"S1j"},"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":"S2"}}},"output":{"resultWrapper":"DescribeTagsResult","type":"structure","members":{"TagDescriptions":{"type":"list","member":{"type":"structure","members":{"ResourceArn":{},"Tags":{"shape":"S4"}}}}}}},"DescribeTargetGroupAttributes":{"input":{"type":"structure","required":["TargetGroupArn"],"members":{"TargetGroupArn":{}}},"output":{"resultWrapper":"DescribeTargetGroupAttributesResult","type":"structure","members":{"Attributes":{"shape":"S3i"}}}},"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":"S1y"},"NextMarker":{}}}},"DescribeTargetHealth":{"input":{"type":"structure","required":["TargetGroupArn"],"members":{"TargetGroupArn":{},"Targets":{"shape":"S2a"}}},"output":{"resultWrapper":"DescribeTargetHealthResult","type":"structure","members":{"TargetHealthDescriptions":{"type":"list","member":{"type":"structure","members":{"Target":{"shape":"S2b"},"HealthCheckPort":{},"TargetHealth":{"type":"structure","members":{"State":{},"Reason":{},"Description":{}}}}}}}}},"ModifyListener":{"input":{"type":"structure","required":["ListenerArn"],"members":{"ListenerArn":{},"Port":{"type":"integer"},"Protocol":{},"SslPolicy":{},"Certificates":{"shape":"Se"},"DefaultActions":{"shape":"Sh"}}},"output":{"resultWrapper":"ModifyListenerResult","type":"structure","members":{"Listeners":{"shape":"Sm"}}}},"ModifyLoadBalancerAttributes":{"input":{"type":"structure","required":["LoadBalancerArn","Attributes"],"members":{"LoadBalancerArn":{},"Attributes":{"shape":"S2r"}}},"output":{"resultWrapper":"ModifyLoadBalancerAttributesResult","type":"structure","members":{"Attributes":{"shape":"S2r"}}}},"ModifyRule":{"input":{"type":"structure","required":["RuleArn"],"members":{"RuleArn":{},"Conditions":{"shape":"S1c"},"Actions":{"shape":"Sh"}}},"output":{"resultWrapper":"ModifyRuleResult","type":"structure","members":{"Rules":{"shape":"S1j"}}}},"ModifyTargetGroup":{"input":{"type":"structure","required":["TargetGroupArn"],"members":{"TargetGroupArn":{},"HealthCheckProtocol":{},"HealthCheckPort":{},"HealthCheckPath":{},"HealthCheckIntervalSeconds":{"type":"integer"},"HealthCheckTimeoutSeconds":{"type":"integer"},"HealthyThresholdCount":{"type":"integer"},"UnhealthyThresholdCount":{"type":"integer"},"Matcher":{"shape":"S1v"}}},"output":{"resultWrapper":"ModifyTargetGroupResult","type":"structure","members":{"TargetGroups":{"shape":"S1y"}}}},"ModifyTargetGroupAttributes":{"input":{"type":"structure","required":["TargetGroupArn","Attributes"],"members":{"TargetGroupArn":{},"Attributes":{"shape":"S3i"}}},"output":{"resultWrapper":"ModifyTargetGroupAttributesResult","type":"structure","members":{"Attributes":{"shape":"S3i"}}}},"RegisterTargets":{"input":{"type":"structure","required":["TargetGroupArn","Targets"],"members":{"TargetGroupArn":{},"Targets":{"shape":"S2a"}}},"output":{"resultWrapper":"RegisterTargetsResult","type":"structure","members":{}}},"RemoveTags":{"input":{"type":"structure","required":["ResourceArns","TagKeys"],"members":{"ResourceArns":{"shape":"S2"},"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":"S1j"}}}},"SetSecurityGroups":{"input":{"type":"structure","required":["LoadBalancerArn","SecurityGroups"],"members":{"LoadBalancerArn":{},"SecurityGroups":{"shape":"St"}}},"output":{"resultWrapper":"SetSecurityGroupsResult","type":"structure","members":{"SecurityGroupIds":{"shape":"St"}}}},"SetSubnets":{"input":{"type":"structure","required":["LoadBalancerArn","Subnets"],"members":{"LoadBalancerArn":{},"Subnets":{"shape":"Sr"}}},"output":{"resultWrapper":"SetSubnetsResult","type":"structure","members":{"AvailabilityZones":{"shape":"S18"}}}}},"shapes":{"S2":{"type":"list","member":{}},"S4":{"type":"list","member":{"type":"structure","required":["Key"],"members":{"Key":{},"Value":{}}}},"Se":{"type":"list","member":{"type":"structure","members":{"CertificateArn":{}}}},"Sh":{"type":"list","member":{"type":"structure","required":["Type","TargetGroupArn"],"members":{"Type":{},"TargetGroupArn":{}}}},"Sm":{"type":"list","member":{"type":"structure","members":{"ListenerArn":{},"LoadBalancerArn":{},"Port":{"type":"integer"},"Protocol":{},"Certificates":{"shape":"Se"},"SslPolicy":{},"DefaultActions":{"shape":"Sh"}}}},"Sr":{"type":"list","member":{}},"St":{"type":"list","member":{}},"Sy":{"type":"list","member":{"type":"structure","members":{"LoadBalancerArn":{},"DNSName":{},"CanonicalHostedZoneId":{},"CreatedTime":{"type":"timestamp"},"LoadBalancerName":{},"Scheme":{},"VpcId":{},"State":{"type":"structure","members":{"Code":{},"Reason":{}}},"Type":{},"AvailabilityZones":{"shape":"S18"},"SecurityGroups":{"shape":"St"},"IpAddressType":{}}}},"S18":{"type":"list","member":{"type":"structure","members":{"ZoneName":{},"SubnetId":{}}}},"S1c":{"type":"list","member":{"type":"structure","members":{"Field":{},"Values":{"type":"list","member":{}}}}},"S1j":{"type":"list","member":{"type":"structure","members":{"RuleArn":{},"Priority":{},"Conditions":{"shape":"S1c"},"Actions":{"shape":"Sh"},"IsDefault":{"type":"boolean"}}}},"S1v":{"type":"structure","required":["HttpCode"],"members":{"HttpCode":{}}},"S1y":{"type":"list","member":{"type":"structure","members":{"TargetGroupArn":{},"TargetGroupName":{},"Protocol":{},"Port":{"type":"integer"},"VpcId":{},"HealthCheckProtocol":{},"HealthCheckPort":{},"HealthCheckIntervalSeconds":{"type":"integer"},"HealthCheckTimeoutSeconds":{"type":"integer"},"HealthyThresholdCount":{"type":"integer"},"UnhealthyThresholdCount":{"type":"integer"},"HealthCheckPath":{},"Matcher":{"shape":"S1v"},"LoadBalancerArns":{"shape":"S20"}}}},"S20":{"type":"list","member":{}},"S2a":{"type":"list","member":{"shape":"S2b"}},"S2b":{"type":"structure","required":["Id"],"members":{"Id":{},"Port":{"type":"integer"}}},"S2r":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}},"S3i":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}}}}

/***/ }),
/* 191 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 192 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 193 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(194);
	    model.paginators = __webpack_require__(195).pagination;
	    model.waiters = __webpack_require__(196).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.EMR;


/***/ }),
/* 194 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2009-03-31","endpointPrefix":"elasticmapreduce","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon EMR","serviceFullName":"Amazon Elastic MapReduce","signatureVersion":"v4","targetPrefix":"ElasticMapReduce","timestampFormat":"unixTimestamp","uid":"elasticmapreduce-2009-03-31"},"operations":{"AddInstanceFleet":{"input":{"type":"structure","required":["ClusterId","InstanceFleet"],"members":{"ClusterId":{},"InstanceFleet":{"shape":"S3"}}},"output":{"type":"structure","members":{"ClusterId":{},"InstanceFleetId":{}}}},"AddInstanceGroups":{"input":{"type":"structure","required":["InstanceGroups","JobFlowId"],"members":{"InstanceGroups":{"shape":"Sq"},"JobFlowId":{}}},"output":{"type":"structure","members":{"JobFlowId":{},"InstanceGroupIds":{"type":"list","member":{}}}}},"AddJobFlowSteps":{"input":{"type":"structure","required":["JobFlowId","Steps"],"members":{"JobFlowId":{},"Steps":{"shape":"S1b"}}},"output":{"type":"structure","members":{"StepIds":{"shape":"S1k"}}}},"AddTags":{"input":{"type":"structure","required":["ResourceId","Tags"],"members":{"ResourceId":{},"Tags":{"shape":"S1n"}}},"output":{"type":"structure","members":{}}},"CancelSteps":{"input":{"type":"structure","members":{"ClusterId":{},"StepIds":{"shape":"S1k"}}},"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"}}}},"DeleteSecurityConfiguration":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{}}},"DescribeCluster":{"input":{"type":"structure","required":["ClusterId"],"members":{"ClusterId":{}}},"output":{"type":"structure","members":{"Cluster":{"type":"structure","members":{"Id":{},"Name":{},"Status":{"shape":"S25"},"Ec2InstanceAttributes":{"type":"structure","members":{"Ec2KeyName":{},"Ec2SubnetId":{},"RequestedEc2SubnetIds":{"shape":"S2b"},"Ec2AvailabilityZone":{},"RequestedEc2AvailabilityZones":{"shape":"S2b"},"IamInstanceProfile":{},"EmrManagedMasterSecurityGroup":{},"EmrManagedSlaveSecurityGroup":{},"ServiceAccessSecurityGroup":{},"AdditionalMasterSecurityGroups":{"shape":"S2c"},"AdditionalSlaveSecurityGroups":{"shape":"S2c"}}},"InstanceCollectionType":{},"LogUri":{},"RequestedAmiVersion":{},"RunningAmiVersion":{},"ReleaseLabel":{},"AutoTerminate":{"type":"boolean"},"TerminationProtected":{"type":"boolean"},"VisibleToAllUsers":{"type":"boolean"},"Applications":{"shape":"S2f"},"Tags":{"shape":"S1n"},"ServiceRole":{},"NormalizedInstanceHours":{"type":"integer"},"MasterPublicDnsName":{},"Configurations":{"shape":"Sh"},"SecurityConfiguration":{},"AutoScalingRole":{},"ScaleDownBehavior":{},"CustomAmiId":{},"EbsRootVolumeSize":{"type":"integer"},"RepoUpgradeOnBoot":{}}}}}},"DescribeJobFlows":{"input":{"type":"structure","members":{"CreatedAfter":{"type":"timestamp"},"CreatedBefore":{"type":"timestamp"},"JobFlowIds":{"shape":"S1i"},"JobFlowStates":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"JobFlows":{"type":"list","member":{"type":"structure","required":["JobFlowId","Name","ExecutionStatusDetail","Instances"],"members":{"JobFlowId":{},"Name":{},"LogUri":{},"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":"S2u"},"KeepJobFlowAliveWhenNoSteps":{"type":"boolean"},"TerminationProtected":{"type":"boolean"},"HadoopVersion":{}}},"Steps":{"type":"list","member":{"type":"structure","required":["StepConfig","ExecutionStatusDetail"],"members":{"StepConfig":{"shape":"S1c"},"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":"S31"}}}},"SupportedProducts":{"shape":"S33"},"VisibleToAllUsers":{"type":"boolean"},"JobFlowRole":{},"ServiceRole":{},"AutoScalingRole":{},"ScaleDownBehavior":{}}}}}},"deprecated":true},"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":"S39"},"ActionOnFailure":{},"Status":{"shape":"S3a"}}}}}},"ListBootstrapActions":{"input":{"type":"structure","required":["ClusterId"],"members":{"ClusterId":{},"Marker":{}}},"output":{"type":"structure","members":{"BootstrapActions":{"type":"list","member":{"type":"structure","members":{"Name":{},"ScriptPath":{},"Args":{"shape":"S2c"}}}},"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":"S25"},"NormalizedInstanceHours":{"type":"integer"}}}},"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":"S41"},"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"},"EbsBlockDevices":{"shape":"S41"},"EbsOptimized":{"type":"boolean"},"ShrinkPolicy":{"shape":"S4d"},"AutoScalingPolicy":{"shape":"S4h"}}}},"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":{}}}},"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":"S1i"},"Marker":{}}},"output":{"type":"structure","members":{"Steps":{"type":"list","member":{"type":"structure","members":{"Id":{},"Name":{},"Config":{"shape":"S39"},"ActionOnFailure":{},"Status":{"shape":"S3a"}}}},"Marker":{}}}},"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":"S4d"}}}}}}},"PutAutoScalingPolicy":{"input":{"type":"structure","required":["ClusterId","InstanceGroupId","AutoScalingPolicy"],"members":{"ClusterId":{},"InstanceGroupId":{},"AutoScalingPolicy":{"shape":"Su"}}},"output":{"type":"structure","members":{"ClusterId":{},"InstanceGroupId":{},"AutoScalingPolicy":{"shape":"S4h"}}}},"RemoveAutoScalingPolicy":{"input":{"type":"structure","required":["ClusterId","InstanceGroupId"],"members":{"ClusterId":{},"InstanceGroupId":{}}},"output":{"type":"structure","members":{}}},"RemoveTags":{"input":{"type":"structure","required":["ResourceId","TagKeys"],"members":{"ResourceId":{},"TagKeys":{"shape":"S2c"}}},"output":{"type":"structure","members":{}}},"RunJobFlow":{"input":{"type":"structure","required":["Name","Instances"],"members":{"Name":{},"LogUri":{},"AdditionalInfo":{},"AmiVersion":{},"ReleaseLabel":{},"Instances":{"type":"structure","members":{"MasterInstanceType":{},"SlaveInstanceType":{},"InstanceCount":{"type":"integer"},"InstanceGroups":{"shape":"Sq"},"InstanceFleets":{"type":"list","member":{"shape":"S3"}},"Ec2KeyName":{},"Placement":{"shape":"S2u"},"KeepJobFlowAliveWhenNoSteps":{"type":"boolean"},"TerminationProtected":{"type":"boolean"},"HadoopVersion":{},"Ec2SubnetId":{},"Ec2SubnetIds":{"shape":"S2b"},"EmrManagedMasterSecurityGroup":{},"EmrManagedSlaveSecurityGroup":{},"ServiceAccessSecurityGroup":{},"AdditionalMasterSecurityGroups":{"shape":"S5n"},"AdditionalSlaveSecurityGroups":{"shape":"S5n"}}},"Steps":{"shape":"S1b"},"BootstrapActions":{"type":"list","member":{"shape":"S31"}},"SupportedProducts":{"shape":"S33"},"NewSupportedProducts":{"type":"list","member":{"type":"structure","members":{"Name":{},"Args":{"shape":"S1i"}}}},"Applications":{"shape":"S2f"},"Configurations":{"shape":"Sh"},"VisibleToAllUsers":{"type":"boolean"},"JobFlowRole":{},"ServiceRole":{},"Tags":{"shape":"S1n"},"SecurityConfiguration":{},"AutoScalingRole":{},"ScaleDownBehavior":{},"CustomAmiId":{},"EbsRootVolumeSize":{"type":"integer"},"RepoUpgradeOnBoot":{}}},"output":{"type":"structure","members":{"JobFlowId":{}}}},"SetTerminationProtection":{"input":{"type":"structure","required":["JobFlowIds","TerminationProtected"],"members":{"JobFlowIds":{"shape":"S1i"},"TerminationProtected":{"type":"boolean"}}}},"SetVisibleToAllUsers":{"input":{"type":"structure","required":["JobFlowIds","VisibleToAllUsers"],"members":{"JobFlowIds":{"shape":"S1i"},"VisibleToAllUsers":{"type":"boolean"}}}},"TerminateJobFlows":{"input":{"type":"structure","required":["JobFlowIds"],"members":{"JobFlowIds":{"shape":"S1i"}}}}},"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","required":["SpotSpecification"],"members":{"SpotSpecification":{"type":"structure","required":["TimeoutDurationMinutes","TimeoutAction"],"members":{"TimeoutDurationMinutes":{"type":"integer"},"TimeoutAction":{},"BlockDurationMinutes":{"type":"integer"}}}}},"Sq":{"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":"Su"}}}},"Su":{"type":"structure","required":["Constraints","Rules"],"members":{"Constraints":{"shape":"Sv"},"Rules":{"shape":"Sw"}}},"Sv":{"type":"structure","required":["MinCapacity","MaxCapacity"],"members":{"MinCapacity":{"type":"integer"},"MaxCapacity":{"type":"integer"}}},"Sw":{"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":{}}}}}}}}}}},"S1b":{"type":"list","member":{"shape":"S1c"}},"S1c":{"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":"S1i"}}}}},"S1i":{"type":"list","member":{}},"S1k":{"type":"list","member":{}},"S1n":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}},"S25":{"type":"structure","members":{"State":{},"StateChangeReason":{"type":"structure","members":{"Code":{},"Message":{}}},"Timeline":{"type":"structure","members":{"CreationDateTime":{"type":"timestamp"},"ReadyDateTime":{"type":"timestamp"},"EndDateTime":{"type":"timestamp"}}}}},"S2b":{"type":"list","member":{}},"S2c":{"type":"list","member":{}},"S2f":{"type":"list","member":{"type":"structure","members":{"Name":{},"Version":{},"Args":{"shape":"S2c"},"AdditionalInfo":{"shape":"Sj"}}}},"S2u":{"type":"structure","members":{"AvailabilityZone":{},"AvailabilityZones":{"shape":"S2b"}}},"S31":{"type":"structure","required":["Name","ScriptBootstrapAction"],"members":{"Name":{},"ScriptBootstrapAction":{"type":"structure","required":["Path"],"members":{"Path":{},"Args":{"shape":"S1i"}}}}},"S33":{"type":"list","member":{}},"S39":{"type":"structure","members":{"Jar":{},"Properties":{"shape":"Sj"},"MainClass":{},"Args":{"shape":"S2c"}}},"S3a":{"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"}}}}},"S41":{"type":"list","member":{"type":"structure","members":{"VolumeSpecification":{"shape":"Sd"},"Device":{}}}},"S4d":{"type":"structure","members":{"DecommissionTimeout":{"type":"integer"},"InstanceResizePolicy":{"type":"structure","members":{"InstancesToTerminate":{"shape":"S4f"},"InstancesToProtect":{"shape":"S4f"},"InstanceTerminationTimeout":{"type":"integer"}}}}},"S4f":{"type":"list","member":{}},"S4h":{"type":"structure","members":{"Status":{"type":"structure","members":{"State":{},"StateChangeReason":{"type":"structure","members":{"Code":{},"Message":{}}}}},"Constraints":{"shape":"Sv"},"Rules":{"shape":"Sw"}}},"S5n":{"type":"list","member":{}}}}

/***/ }),
/* 195 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"ListSteps":{"input_token":"Marker","output_token":"Marker","result_key":"Steps"}}}

/***/ }),
/* 196 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 197 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(198);
	    model.paginators = __webpack_require__(199).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ES;


/***/ }),
/* 198 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-01-01","endpointPrefix":"es","protocol":"rest-json","serviceFullName":"Amazon Elasticsearch Service","signatureVersion":"v4","uid":"es-2015-01-01"},"operations":{"AddTags":{"http":{"requestUri":"/2015-01-01/tags"},"input":{"type":"structure","required":["ARN","TagList"],"members":{"ARN":{},"TagList":{"shape":"S3"}}}},"CreateElasticsearchDomain":{"http":{"requestUri":"/2015-01-01/es/domain"},"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{},"ElasticsearchVersion":{},"ElasticsearchClusterConfig":{"shape":"Sa"},"EBSOptions":{"shape":"Se"},"AccessPolicies":{},"SnapshotOptions":{"shape":"Sh"},"AdvancedOptions":{"shape":"Si"}}},"output":{"type":"structure","members":{"DomainStatus":{"shape":"Sl"}}}},"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":"Sl"}}}},"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":"Sl"}}}},"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":"Su"}}}},"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":"Sl"}}}}},"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":"S1l"}}}}}}},"InstanceLimits":{"type":"structure","members":{"InstanceCountLimits":{"type":"structure","members":{"MinimumInstanceCount":{"type":"integer"},"MaximumInstanceCount":{"type":"integer"}}}}},"AdditionalLimits":{"type":"list","member":{"type":"structure","members":{"LimitName":{},"LimitValues":{"shape":"S1l"}}}}}}}}}},"ListDomainNames":{"http":{"method":"GET","requestUri":"/2015-01-01/domain"},"output":{"type":"structure","members":{"DomainNames":{"type":"list","member":{"type":"structure","members":{"DomainName":{}}}}}}},"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":{"type":"list","member":{}},"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":"S3"}}}},"RemoveTags":{"http":{"requestUri":"/2015-01-01/tags-removal"},"input":{"type":"structure","required":["ARN","TagKeys"],"members":{"ARN":{},"TagKeys":{"type":"list","member":{}}}}},"UpdateElasticsearchDomainConfig":{"http":{"requestUri":"/2015-01-01/es/domain/{DomainName}/config"},"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{"location":"uri","locationName":"DomainName"},"ElasticsearchClusterConfig":{"shape":"Sa"},"EBSOptions":{"shape":"Se"},"SnapshotOptions":{"shape":"Sh"},"AdvancedOptions":{"shape":"Si"},"AccessPolicies":{}}},"output":{"type":"structure","required":["DomainConfig"],"members":{"DomainConfig":{"shape":"Su"}}}}},"shapes":{"S3":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"Sa":{"type":"structure","members":{"InstanceType":{},"InstanceCount":{"type":"integer"},"DedicatedMasterEnabled":{"type":"boolean"},"ZoneAwarenessEnabled":{"type":"boolean"},"DedicatedMasterType":{},"DedicatedMasterCount":{"type":"integer"}}},"Se":{"type":"structure","members":{"EBSEnabled":{"type":"boolean"},"VolumeType":{},"VolumeSize":{"type":"integer"},"Iops":{"type":"integer"}}},"Sh":{"type":"structure","members":{"AutomatedSnapshotStartHour":{"type":"integer"}}},"Si":{"type":"map","key":{},"value":{}},"Sl":{"type":"structure","required":["DomainId","DomainName","ARN","ElasticsearchClusterConfig"],"members":{"DomainId":{},"DomainName":{},"ARN":{},"Created":{"type":"boolean"},"Deleted":{"type":"boolean"},"Endpoint":{},"Processing":{"type":"boolean"},"ElasticsearchVersion":{},"ElasticsearchClusterConfig":{"shape":"Sa"},"EBSOptions":{"shape":"Se"},"AccessPolicies":{},"SnapshotOptions":{"shape":"Sh"},"AdvancedOptions":{"shape":"Si"}}},"Su":{"type":"structure","members":{"ElasticsearchVersion":{"type":"structure","required":["Options","Status"],"members":{"Options":{},"Status":{"shape":"Sw"}}},"ElasticsearchClusterConfig":{"type":"structure","required":["Options","Status"],"members":{"Options":{"shape":"Sa"},"Status":{"shape":"Sw"}}},"EBSOptions":{"type":"structure","required":["Options","Status"],"members":{"Options":{"shape":"Se"},"Status":{"shape":"Sw"}}},"AccessPolicies":{"type":"structure","required":["Options","Status"],"members":{"Options":{},"Status":{"shape":"Sw"}}},"SnapshotOptions":{"type":"structure","required":["Options","Status"],"members":{"Options":{"shape":"Sh"},"Status":{"shape":"Sw"}}},"AdvancedOptions":{"type":"structure","required":["Options","Status"],"members":{"Options":{"shape":"Si"},"Status":{"shape":"Sw"}}}}},"Sw":{"type":"structure","required":["CreationDate","UpdateDate","State"],"members":{"CreationDate":{"type":"timestamp"},"UpdateDate":{"type":"timestamp"},"UpdateVersion":{"type":"integer"},"State":{},"PendingDeletion":{"type":"boolean"}}},"S1l":{"type":"list","member":{}}}}

/***/ }),
/* 199 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListElasticsearchInstanceTypes":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListElasticsearchVersions":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"}}}

/***/ }),
/* 200 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(201);
	    model.paginators = __webpack_require__(202).pagination;
	    model.waiters = __webpack_require__(203).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ElasticTranscoder;


/***/ }),
/* 201 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"elastictranscoder-2012-09-25","apiVersion":"2012-09-25","endpointPrefix":"elastictranscoder","protocol":"rest-json","serviceFullName":"Amazon Elastic Transcoder","signatureVersion":"v4"},"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"}}}}

/***/ }),
/* 202 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 203 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 204 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(205);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Firehose;


/***/ }),
/* 205 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-08-04","endpointPrefix":"firehose","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Firehose","serviceFullName":"Amazon Kinesis Firehose","signatureVersion":"v4","targetPrefix":"Firehose_20150804","uid":"firehose-2015-08-04"},"operations":{"CreateDeliveryStream":{"input":{"type":"structure","required":["DeliveryStreamName"],"members":{"DeliveryStreamName":{},"S3DestinationConfiguration":{"shape":"S3","deprecated":true},"ExtendedS3DestinationConfiguration":{"type":"structure","required":["RoleARN","BucketARN"],"members":{"RoleARN":{},"BucketARN":{},"Prefix":{},"BufferingHints":{"shape":"S7"},"CompressionFormat":{},"EncryptionConfiguration":{"shape":"Sb"},"CloudWatchLoggingOptions":{"shape":"Sf"},"ProcessingConfiguration":{"shape":"Sk"},"S3BackupMode":{},"S3BackupConfiguration":{"shape":"S3"}}},"RedshiftDestinationConfiguration":{"type":"structure","required":["RoleARN","ClusterJDBCURL","CopyCommand","Username","Password","S3Configuration"],"members":{"RoleARN":{},"ClusterJDBCURL":{},"CopyCommand":{"shape":"Sv"},"Username":{"shape":"Sz"},"Password":{"shape":"S10"},"RetryOptions":{"shape":"S11"},"S3Configuration":{"shape":"S3"},"ProcessingConfiguration":{"shape":"Sk"},"S3BackupMode":{},"S3BackupConfiguration":{"shape":"S3"},"CloudWatchLoggingOptions":{"shape":"Sf"}}},"ElasticsearchDestinationConfiguration":{"type":"structure","required":["RoleARN","DomainARN","IndexName","TypeName","S3Configuration"],"members":{"RoleARN":{},"DomainARN":{},"IndexName":{},"TypeName":{},"IndexRotationPeriod":{},"BufferingHints":{"shape":"S19"},"RetryOptions":{"shape":"S1c"},"S3BackupMode":{},"S3Configuration":{"shape":"S3"},"ProcessingConfiguration":{"shape":"Sk"},"CloudWatchLoggingOptions":{"shape":"Sf"}}}}},"output":{"type":"structure","members":{"DeliveryStreamARN":{}}}},"DeleteDeliveryStream":{"input":{"type":"structure","required":["DeliveryStreamName"],"members":{"DeliveryStreamName":{}}},"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","VersionId","Destinations","HasMoreDestinations"],"members":{"DeliveryStreamName":{},"DeliveryStreamARN":{},"DeliveryStreamStatus":{},"VersionId":{},"CreateTimestamp":{"type":"timestamp"},"LastUpdateTimestamp":{"type":"timestamp"},"Destinations":{"type":"list","member":{"type":"structure","required":["DestinationId"],"members":{"DestinationId":{},"S3DestinationDescription":{"shape":"S1t"},"ExtendedS3DestinationDescription":{"type":"structure","required":["RoleARN","BucketARN","BufferingHints","CompressionFormat","EncryptionConfiguration"],"members":{"RoleARN":{},"BucketARN":{},"Prefix":{},"BufferingHints":{"shape":"S7"},"CompressionFormat":{},"EncryptionConfiguration":{"shape":"Sb"},"CloudWatchLoggingOptions":{"shape":"Sf"},"ProcessingConfiguration":{"shape":"Sk"},"S3BackupMode":{},"S3BackupDescription":{"shape":"S1t"}}},"RedshiftDestinationDescription":{"type":"structure","required":["RoleARN","ClusterJDBCURL","CopyCommand","Username","S3DestinationDescription"],"members":{"RoleARN":{},"ClusterJDBCURL":{},"CopyCommand":{"shape":"Sv"},"Username":{"shape":"Sz"},"RetryOptions":{"shape":"S11"},"S3DestinationDescription":{"shape":"S1t"},"ProcessingConfiguration":{"shape":"Sk"},"S3BackupMode":{},"S3BackupDescription":{"shape":"S1t"},"CloudWatchLoggingOptions":{"shape":"Sf"}}},"ElasticsearchDestinationDescription":{"type":"structure","members":{"RoleARN":{},"DomainARN":{},"IndexName":{},"TypeName":{},"IndexRotationPeriod":{},"BufferingHints":{"shape":"S19"},"RetryOptions":{"shape":"S1c"},"S3BackupMode":{},"S3DestinationDescription":{"shape":"S1t"},"ProcessingConfiguration":{"shape":"Sk"},"CloudWatchLoggingOptions":{"shape":"Sf"}}}}}},"HasMoreDestinations":{"type":"boolean"}}}}}},"ListDeliveryStreams":{"input":{"type":"structure","members":{"Limit":{"type":"integer"},"ExclusiveStartDeliveryStreamName":{}}},"output":{"type":"structure","required":["DeliveryStreamNames","HasMoreDeliveryStreams"],"members":{"DeliveryStreamNames":{"type":"list","member":{}},"HasMoreDeliveryStreams":{"type":"boolean"}}}},"PutRecord":{"input":{"type":"structure","required":["DeliveryStreamName","Record"],"members":{"DeliveryStreamName":{},"Record":{"shape":"S22"}}},"output":{"type":"structure","required":["RecordId"],"members":{"RecordId":{}}}},"PutRecordBatch":{"input":{"type":"structure","required":["DeliveryStreamName","Records"],"members":{"DeliveryStreamName":{},"Records":{"type":"list","member":{"shape":"S22"}}}},"output":{"type":"structure","required":["FailedPutCount","RequestResponses"],"members":{"FailedPutCount":{"type":"integer"},"RequestResponses":{"type":"list","member":{"type":"structure","members":{"RecordId":{},"ErrorCode":{},"ErrorMessage":{}}}}}}},"UpdateDestination":{"input":{"type":"structure","required":["DeliveryStreamName","CurrentDeliveryStreamVersionId","DestinationId"],"members":{"DeliveryStreamName":{},"CurrentDeliveryStreamVersionId":{},"DestinationId":{},"S3DestinationUpdate":{"shape":"S2f","deprecated":true},"ExtendedS3DestinationUpdate":{"type":"structure","members":{"RoleARN":{},"BucketARN":{},"Prefix":{},"BufferingHints":{"shape":"S7"},"CompressionFormat":{},"EncryptionConfiguration":{"shape":"Sb"},"CloudWatchLoggingOptions":{"shape":"Sf"},"ProcessingConfiguration":{"shape":"Sk"},"S3BackupMode":{},"S3BackupUpdate":{"shape":"S2f"}}},"RedshiftDestinationUpdate":{"type":"structure","members":{"RoleARN":{},"ClusterJDBCURL":{},"CopyCommand":{"shape":"Sv"},"Username":{"shape":"Sz"},"Password":{"shape":"S10"},"RetryOptions":{"shape":"S11"},"S3Update":{"shape":"S2f"},"ProcessingConfiguration":{"shape":"Sk"},"S3BackupMode":{},"S3BackupUpdate":{"shape":"S2f"},"CloudWatchLoggingOptions":{"shape":"Sf"}}},"ElasticsearchDestinationUpdate":{"type":"structure","members":{"RoleARN":{},"DomainARN":{},"IndexName":{},"TypeName":{},"IndexRotationPeriod":{},"BufferingHints":{"shape":"S19"},"RetryOptions":{"shape":"S1c"},"S3Update":{"shape":"S2f"},"ProcessingConfiguration":{"shape":"Sk"},"CloudWatchLoggingOptions":{"shape":"Sf"}}}}},"output":{"type":"structure","members":{}}}},"shapes":{"S3":{"type":"structure","required":["RoleARN","BucketARN"],"members":{"RoleARN":{},"BucketARN":{},"Prefix":{},"BufferingHints":{"shape":"S7"},"CompressionFormat":{},"EncryptionConfiguration":{"shape":"Sb"},"CloudWatchLoggingOptions":{"shape":"Sf"}}},"S7":{"type":"structure","members":{"SizeInMBs":{"type":"integer"},"IntervalInSeconds":{"type":"integer"}}},"Sb":{"type":"structure","members":{"NoEncryptionConfig":{},"KMSEncryptionConfig":{"type":"structure","required":["AWSKMSKeyARN"],"members":{"AWSKMSKeyARN":{}}}}},"Sf":{"type":"structure","members":{"Enabled":{"type":"boolean"},"LogGroupName":{},"LogStreamName":{}}},"Sk":{"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":{}}}}}}}}},"Sv":{"type":"structure","required":["DataTableName"],"members":{"DataTableName":{},"DataTableColumns":{},"CopyOptions":{}}},"Sz":{"type":"string","sensitive":true},"S10":{"type":"string","sensitive":true},"S11":{"type":"structure","members":{"DurationInSeconds":{"type":"integer"}}},"S19":{"type":"structure","members":{"IntervalInSeconds":{"type":"integer"},"SizeInMBs":{"type":"integer"}}},"S1c":{"type":"structure","members":{"DurationInSeconds":{"type":"integer"}}},"S1t":{"type":"structure","required":["RoleARN","BucketARN","BufferingHints","CompressionFormat","EncryptionConfiguration"],"members":{"RoleARN":{},"BucketARN":{},"Prefix":{},"BufferingHints":{"shape":"S7"},"CompressionFormat":{},"EncryptionConfiguration":{"shape":"Sb"},"CloudWatchLoggingOptions":{"shape":"Sf"}}},"S22":{"type":"structure","required":["Data"],"members":{"Data":{"type":"blob"}}},"S2f":{"type":"structure","members":{"RoleARN":{},"BucketARN":{},"Prefix":{},"BufferingHints":{"shape":"S7"},"CompressionFormat":{},"EncryptionConfiguration":{"shape":"Sb"},"CloudWatchLoggingOptions":{"shape":"Sf"}}}}}

/***/ }),
/* 206 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(207);
	    model.paginators = __webpack_require__(208).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.GameLift;


/***/ }),
/* 207 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-10-01","endpointPrefix":"gamelift","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon GameLift","signatureVersion":"v4","targetPrefix":"GameLift","uid":"gamelift-2015-10-01"},"operations":{"CreateAlias":{"input":{"type":"structure","required":["Name","RoutingStrategy"],"members":{"Name":{},"Description":{},"RoutingStrategy":{"shape":"S4"}}},"output":{"type":"structure","members":{"Alias":{"shape":"S9"}}}},"CreateBuild":{"input":{"type":"structure","members":{"Name":{},"Version":{},"StorageLocation":{"shape":"Se"},"OperatingSystem":{}}},"output":{"type":"structure","members":{"Build":{"shape":"Si"},"UploadCredentials":{"shape":"Sm"},"StorageLocation":{"shape":"Se"}}}},"CreateFleet":{"input":{"type":"structure","required":["Name","BuildId","EC2InstanceType"],"members":{"Name":{},"Description":{},"BuildId":{},"ServerLaunchPath":{},"ServerLaunchParameters":{},"LogPaths":{"shape":"So"},"EC2InstanceType":{},"EC2InboundPermissions":{"shape":"Sq"},"NewGameSessionProtectionPolicy":{},"RuntimeConfiguration":{"shape":"Sw"},"ResourceCreationLimitPolicy":{"shape":"S12"},"MetricGroups":{"shape":"S14"}}},"output":{"type":"structure","members":{"FleetAttributes":{"shape":"S17"}}}},"CreateGameSession":{"input":{"type":"structure","required":["MaximumPlayerSessionCount"],"members":{"FleetId":{},"AliasId":{},"MaximumPlayerSessionCount":{"type":"integer"},"Name":{},"GameProperties":{"shape":"S1a"},"CreatorId":{},"GameSessionId":{},"IdempotencyToken":{}}},"output":{"type":"structure","members":{"GameSession":{"shape":"S1g"}}}},"CreateGameSessionQueue":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"TimeoutInSeconds":{"type":"integer"},"PlayerLatencyPolicies":{"shape":"S1m"},"Destinations":{"shape":"S1o"}}},"output":{"type":"structure","members":{"GameSessionQueue":{"shape":"S1r"}}}},"CreatePlayerSession":{"input":{"type":"structure","required":["GameSessionId","PlayerId"],"members":{"GameSessionId":{},"PlayerId":{},"PlayerData":{}}},"output":{"type":"structure","members":{"PlayerSession":{"shape":"S1v"}}}},"CreatePlayerSessions":{"input":{"type":"structure","required":["GameSessionId","PlayerIds"],"members":{"GameSessionId":{},"PlayerIds":{"type":"list","member":{}},"PlayerDataMap":{"type":"map","key":{},"value":{}}}},"output":{"type":"structure","members":{"PlayerSessions":{"shape":"S22"}}}},"DeleteAlias":{"input":{"type":"structure","required":["AliasId"],"members":{"AliasId":{}}}},"DeleteBuild":{"input":{"type":"structure","required":["BuildId"],"members":{"BuildId":{}}}},"DeleteFleet":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{}}}},"DeleteGameSessionQueue":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{}}},"DeleteScalingPolicy":{"input":{"type":"structure","required":["Name","FleetId"],"members":{"Name":{},"FleetId":{}}}},"DescribeAlias":{"input":{"type":"structure","required":["AliasId"],"members":{"AliasId":{}}},"output":{"type":"structure","members":{"Alias":{"shape":"S9"}}}},"DescribeBuild":{"input":{"type":"structure","required":["BuildId"],"members":{"BuildId":{}}},"output":{"type":"structure","members":{"Build":{"shape":"Si"}}}},"DescribeEC2InstanceLimits":{"input":{"type":"structure","members":{"EC2InstanceType":{}}},"output":{"type":"structure","members":{"EC2InstanceLimits":{"type":"list","member":{"type":"structure","members":{"EC2InstanceType":{},"CurrentInstances":{"type":"integer"},"InstanceLimit":{"type":"integer"}}}}}}},"DescribeFleetAttributes":{"input":{"type":"structure","members":{"FleetIds":{"shape":"S2i"},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"FleetAttributes":{"type":"list","member":{"shape":"S17"}},"NextToken":{}}}},"DescribeFleetCapacity":{"input":{"type":"structure","members":{"FleetIds":{"shape":"S2i"},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"FleetCapacity":{"type":"list","member":{"type":"structure","members":{"FleetId":{},"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"}}}}}},"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":{}}}},"DescribeFleetPortSettings":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{}}},"output":{"type":"structure","members":{"InboundPermissions":{"shape":"Sq"}}}},"DescribeFleetUtilization":{"input":{"type":"structure","members":{"FleetIds":{"shape":"S2i"},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"FleetUtilization":{"type":"list","member":{"type":"structure","members":{"FleetId":{},"ActiveServerProcessCount":{"type":"integer"},"ActiveGameSessionCount":{"type":"integer"},"CurrentPlayerSessionCount":{"type":"integer"},"MaximumPlayerSessionCount":{"type":"integer"}}}},"NextToken":{}}}},"DescribeGameSessionDetails":{"input":{"type":"structure","members":{"FleetId":{},"GameSessionId":{},"AliasId":{},"StatusFilter":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"GameSessionDetails":{"type":"list","member":{"type":"structure","members":{"GameSession":{"shape":"S1g"},"ProtectionPolicy":{}}}},"NextToken":{}}}},"DescribeGameSessionPlacement":{"input":{"type":"structure","required":["PlacementId"],"members":{"PlacementId":{}}},"output":{"type":"structure","members":{"GameSessionPlacement":{"shape":"S37"}}}},"DescribeGameSessionQueues":{"input":{"type":"structure","members":{"Names":{"type":"list","member":{}},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"GameSessionQueues":{"type":"list","member":{"shape":"S1r"}},"NextToken":{}}}},"DescribeGameSessions":{"input":{"type":"structure","members":{"FleetId":{},"GameSessionId":{},"AliasId":{},"StatusFilter":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"GameSessions":{"shape":"S3k"},"NextToken":{}}}},"DescribeInstances":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{},"InstanceId":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Instances":{"type":"list","member":{"type":"structure","members":{"FleetId":{},"InstanceId":{},"IpAddress":{},"OperatingSystem":{},"Type":{},"Status":{},"CreationTime":{"type":"timestamp"}}}},"NextToken":{}}}},"DescribePlayerSessions":{"input":{"type":"structure","members":{"GameSessionId":{},"PlayerId":{},"PlayerSessionId":{},"PlayerSessionStatusFilter":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"PlayerSessions":{"shape":"S22"},"NextToken":{}}}},"DescribeRuntimeConfiguration":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{}}},"output":{"type":"structure","members":{"RuntimeConfiguration":{"shape":"Sw"}}}},"DescribeScalingPolicies":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{},"StatusFilter":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"ScalingPolicies":{"type":"list","member":{"type":"structure","members":{"FleetId":{},"Name":{},"Status":{},"ScalingAdjustment":{"type":"integer"},"ScalingAdjustmentType":{},"ComparisonOperator":{},"Threshold":{"type":"double"},"EvaluationPeriods":{"type":"integer"},"MetricName":{}}}},"NextToken":{}}}},"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":"S9"}},"NextToken":{}}}},"ListBuilds":{"input":{"type":"structure","members":{"Status":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Builds":{"type":"list","member":{"shape":"Si"}},"NextToken":{}}}},"ListFleets":{"input":{"type":"structure","members":{"BuildId":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"FleetIds":{"shape":"S2i"},"NextToken":{}}}},"PutScalingPolicy":{"input":{"type":"structure","required":["Name","FleetId","ScalingAdjustment","ScalingAdjustmentType","Threshold","ComparisonOperator","EvaluationPeriods","MetricName"],"members":{"Name":{},"FleetId":{},"ScalingAdjustment":{"type":"integer"},"ScalingAdjustmentType":{},"Threshold":{"type":"double"},"ComparisonOperator":{},"EvaluationPeriods":{"type":"integer"},"MetricName":{}}},"output":{"type":"structure","members":{"Name":{}}}},"RequestUploadCredentials":{"input":{"type":"structure","required":["BuildId"],"members":{"BuildId":{}}},"output":{"type":"structure","members":{"UploadCredentials":{"shape":"Sm"},"StorageLocation":{"shape":"Se"}}}},"ResolveAlias":{"input":{"type":"structure","required":["AliasId"],"members":{"AliasId":{}}},"output":{"type":"structure","members":{"FleetId":{}}}},"SearchGameSessions":{"input":{"type":"structure","members":{"FleetId":{},"AliasId":{},"FilterExpression":{},"SortExpression":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"GameSessions":{"shape":"S3k"},"NextToken":{}}}},"StartGameSessionPlacement":{"input":{"type":"structure","required":["PlacementId","GameSessionQueueName","MaximumPlayerSessionCount"],"members":{"PlacementId":{},"GameSessionQueueName":{},"GameProperties":{"shape":"S1a"},"MaximumPlayerSessionCount":{"type":"integer"},"GameSessionName":{},"PlayerLatencies":{"shape":"S39"},"DesiredPlayerSessions":{"type":"list","member":{"type":"structure","members":{"PlayerId":{},"PlayerData":{}}}}}},"output":{"type":"structure","members":{"GameSessionPlacement":{"shape":"S37"}}}},"StopGameSessionPlacement":{"input":{"type":"structure","required":["PlacementId"],"members":{"PlacementId":{}}},"output":{"type":"structure","members":{"GameSessionPlacement":{"shape":"S37"}}}},"UpdateAlias":{"input":{"type":"structure","required":["AliasId"],"members":{"AliasId":{},"Name":{},"Description":{},"RoutingStrategy":{"shape":"S4"}}},"output":{"type":"structure","members":{"Alias":{"shape":"S9"}}}},"UpdateBuild":{"input":{"type":"structure","required":["BuildId"],"members":{"BuildId":{},"Name":{},"Version":{}}},"output":{"type":"structure","members":{"Build":{"shape":"Si"}}}},"UpdateFleetAttributes":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{},"Name":{},"Description":{},"NewGameSessionProtectionPolicy":{},"ResourceCreationLimitPolicy":{"shape":"S12"},"MetricGroups":{"shape":"S14"}}},"output":{"type":"structure","members":{"FleetId":{}}}},"UpdateFleetCapacity":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{},"DesiredInstances":{"type":"integer"},"MinSize":{"type":"integer"},"MaxSize":{"type":"integer"}}},"output":{"type":"structure","members":{"FleetId":{}}}},"UpdateFleetPortSettings":{"input":{"type":"structure","required":["FleetId"],"members":{"FleetId":{},"InboundPermissionAuthorizations":{"shape":"Sq"},"InboundPermissionRevocations":{"shape":"Sq"}}},"output":{"type":"structure","members":{"FleetId":{}}}},"UpdateGameSession":{"input":{"type":"structure","required":["GameSessionId"],"members":{"GameSessionId":{},"MaximumPlayerSessionCount":{"type":"integer"},"Name":{},"PlayerSessionCreationPolicy":{},"ProtectionPolicy":{}}},"output":{"type":"structure","members":{"GameSession":{"shape":"S1g"}}}},"UpdateGameSessionQueue":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"TimeoutInSeconds":{"type":"integer"},"PlayerLatencyPolicies":{"shape":"S1m"},"Destinations":{"shape":"S1o"}}},"output":{"type":"structure","members":{"GameSessionQueue":{"shape":"S1r"}}}},"UpdateRuntimeConfiguration":{"input":{"type":"structure","required":["FleetId","RuntimeConfiguration"],"members":{"FleetId":{},"RuntimeConfiguration":{"shape":"Sw"}}},"output":{"type":"structure","members":{"RuntimeConfiguration":{"shape":"Sw"}}}}},"shapes":{"S4":{"type":"structure","members":{"Type":{},"FleetId":{},"Message":{}}},"S9":{"type":"structure","members":{"AliasId":{},"Name":{},"AliasArn":{},"Description":{},"RoutingStrategy":{"shape":"S4"},"CreationTime":{"type":"timestamp"},"LastUpdatedTime":{"type":"timestamp"}}},"Se":{"type":"structure","members":{"Bucket":{},"Key":{},"RoleArn":{}}},"Si":{"type":"structure","members":{"BuildId":{},"Name":{},"Version":{},"Status":{},"SizeOnDisk":{"type":"long"},"OperatingSystem":{},"CreationTime":{"type":"timestamp"}}},"Sm":{"type":"structure","members":{"AccessKeyId":{},"SecretAccessKey":{},"SessionToken":{}},"sensitive":true},"So":{"type":"list","member":{}},"Sq":{"type":"list","member":{"type":"structure","required":["FromPort","ToPort","IpRange","Protocol"],"members":{"FromPort":{"type":"integer"},"ToPort":{"type":"integer"},"IpRange":{},"Protocol":{}}}},"Sw":{"type":"structure","members":{"ServerProcesses":{"type":"list","member":{"type":"structure","required":["LaunchPath","ConcurrentExecutions"],"members":{"LaunchPath":{},"Parameters":{},"ConcurrentExecutions":{"type":"integer"}}}},"MaxConcurrentGameSessionActivations":{"type":"integer"},"GameSessionActivationTimeoutSeconds":{"type":"integer"}}},"S12":{"type":"structure","members":{"NewGameSessionsPerCreator":{"type":"integer"},"PolicyPeriodInMinutes":{"type":"integer"}}},"S14":{"type":"list","member":{}},"S17":{"type":"structure","members":{"FleetId":{},"FleetArn":{},"Description":{},"Name":{},"CreationTime":{"type":"timestamp"},"TerminationTime":{"type":"timestamp"},"Status":{},"BuildId":{},"ServerLaunchPath":{},"ServerLaunchParameters":{},"LogPaths":{"shape":"So"},"NewGameSessionProtectionPolicy":{},"OperatingSystem":{},"ResourceCreationLimitPolicy":{"shape":"S12"},"MetricGroups":{"shape":"S14"}}},"S1a":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"S1g":{"type":"structure","members":{"GameSessionId":{},"Name":{},"FleetId":{},"CreationTime":{"type":"timestamp"},"TerminationTime":{"type":"timestamp"},"CurrentPlayerSessionCount":{"type":"integer"},"MaximumPlayerSessionCount":{"type":"integer"},"Status":{},"GameProperties":{"shape":"S1a"},"IpAddress":{},"Port":{"type":"integer"},"PlayerSessionCreationPolicy":{},"CreatorId":{}}},"S1m":{"type":"list","member":{"type":"structure","members":{"MaximumIndividualPlayerLatencyMilliseconds":{"type":"integer"},"PolicyDurationSeconds":{"type":"integer"}}}},"S1o":{"type":"list","member":{"type":"structure","members":{"DestinationArn":{}}}},"S1r":{"type":"structure","members":{"Name":{},"GameSessionQueueArn":{},"TimeoutInSeconds":{"type":"integer"},"PlayerLatencyPolicies":{"shape":"S1m"},"Destinations":{"shape":"S1o"}}},"S1v":{"type":"structure","members":{"PlayerSessionId":{},"PlayerId":{},"GameSessionId":{},"FleetId":{},"CreationTime":{"type":"timestamp"},"TerminationTime":{"type":"timestamp"},"Status":{},"IpAddress":{},"Port":{"type":"integer"},"PlayerData":{}}},"S22":{"type":"list","member":{"shape":"S1v"}},"S2i":{"type":"list","member":{}},"S37":{"type":"structure","members":{"PlacementId":{},"GameSessionQueueName":{},"Status":{},"GameProperties":{"shape":"S1a"},"MaximumPlayerSessionCount":{"type":"integer"},"GameSessionName":{},"GameSessionId":{},"GameSessionArn":{},"GameSessionRegion":{},"PlayerLatencies":{"shape":"S39"},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"IpAddress":{},"Port":{"type":"integer"},"PlacedPlayerSessions":{"type":"list","member":{"type":"structure","members":{"PlayerId":{},"PlayerSessionId":{}}}}}},"S39":{"type":"list","member":{"type":"structure","members":{"PlayerId":{},"RegionIdentifier":{},"LatencyInMilliseconds":{"type":"float"}}}},"S3k":{"type":"list","member":{"shape":"S1g"}}}}

/***/ }),
/* 208 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 209 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['glacier'] = {};
	AWS.Glacier = Service.defineService('glacier', ['2012-06-01']);
	__webpack_require__(210);
	Object.defineProperty(apiLoader.services['glacier'], '2012-06-01', {
	  get: function get() {
	    var model = __webpack_require__(211);
	    model.paginators = __webpack_require__(212).pagination;
	    model.waiters = __webpack_require__(213).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Glacier;


/***/ }),
/* 210 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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 = new Buffer(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 = new AWS.util.Buffer(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 = new AWS.util.Buffer(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]);
	  }
	});


/***/ }),
/* 211 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-06-01","checksumFormat":"sha256","endpointPrefix":"glacier","protocol":"rest-json","serviceFullName":"Amazon 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":"Sq"}},"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":"Su"}}}},"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":"S10"},"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":"S14"}},"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":"S19"}},"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":{}}}}}},"payload":"jobParameters"},"output":{"type":"structure","members":{"location":{"location":"header","locationName":"Location"},"jobId":{"location":"header","locationName":"x-amz-job-id"}}}},"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":"Sq"}},"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":"Su"}}}},"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":"S14"}},"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":"S19"}},"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":"S10"}},"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":"S10"}},"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":{}}}}},"Sq":{"type":"structure","members":{"VaultARN":{},"VaultName":{},"CreationDate":{},"LastInventoryDate":{},"NumberOfArchives":{"type":"long"},"SizeInBytes":{"type":"long"}}},"Su":{"type":"structure","members":{"Rules":{"type":"list","member":{"type":"structure","members":{"Strategy":{},"BytesPerHour":{"type":"long"}}}}}},"S10":{"type":"blob","streaming":true},"S14":{"type":"structure","members":{"Policy":{}}},"S19":{"type":"structure","members":{"SNSTopic":{},"Events":{"type":"list","member":{}}}}}}

/***/ }),
/* 212 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 213 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 214 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(215);
	    model.paginators = __webpack_require__(216).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Health;


/***/ }),
/* 215 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-08-04","endpointPrefix":"health","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"AWSHealth","serviceFullName":"AWS Health APIs and Notifications","signatureVersion":"v4","targetPrefix":"AWSHealth_20160804","uid":"health-2016-08-04"},"operations":{"DescribeAffectedEntities":{"input":{"type":"structure","required":["filter"],"members":{"filter":{"type":"structure","required":["eventArns"],"members":{"eventArns":{"shape":"S3"},"entityArns":{"shape":"S5"},"entityValues":{"shape":"S7"},"lastUpdatedTimes":{"shape":"S9"},"tags":{"shape":"Sc"},"statusCodes":{"type":"list","member":{}}}},"locale":{},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"entities":{"type":"list","member":{"type":"structure","members":{"entityArn":{},"eventArn":{},"entityValue":{},"awsAccountId":{},"lastUpdatedTime":{"type":"timestamp"},"statusCode":{},"tags":{"shape":"Sd"}}}},"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":"Sw"},"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":"S3"},"locale":{}}},"output":{"type":"structure","members":{"successfulSet":{"type":"list","member":{"type":"structure","members":{"event":{"shape":"S1i"},"eventDescription":{"type":"structure","members":{"latestDescription":{}}},"eventMetadata":{"type":"map","key":{},"value":{}}}}},"failedSet":{"type":"list","member":{"type":"structure","members":{"eventArn":{},"errorName":{},"errorMessage":{}}}}}},"idempotent":true},"DescribeEventTypes":{"input":{"type":"structure","members":{"filter":{"type":"structure","members":{"eventTypeCodes":{"type":"list","member":{}},"services":{"shape":"Sz"},"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":"Sw"},"nextToken":{},"maxResults":{"type":"integer"},"locale":{}}},"output":{"type":"structure","members":{"events":{"type":"list","member":{"shape":"S1i"}},"nextToken":{}}},"idempotent":true}},"shapes":{"S3":{"type":"list","member":{}},"S5":{"type":"list","member":{}},"S7":{"type":"list","member":{}},"S9":{"type":"list","member":{"type":"structure","members":{"from":{"type":"timestamp"},"to":{"type":"timestamp"}}}},"Sc":{"type":"list","member":{"shape":"Sd"}},"Sd":{"type":"map","key":{},"value":{}},"Sw":{"type":"structure","members":{"eventArns":{"shape":"S3"},"eventTypeCodes":{"type":"list","member":{}},"services":{"shape":"Sz"},"regions":{"type":"list","member":{}},"availabilityZones":{"type":"list","member":{}},"startTimes":{"shape":"S9"},"endTimes":{"shape":"S9"},"lastUpdatedTimes":{"shape":"S9"},"entityArns":{"shape":"S5"},"entityValues":{"shape":"S7"},"eventTypeCategories":{"type":"list","member":{}},"tags":{"shape":"Sc"},"eventStatusCodes":{"type":"list","member":{}}}},"Sz":{"type":"list","member":{}},"S1i":{"type":"structure","members":{"arn":{},"service":{},"eventTypeCode":{},"eventTypeCategory":{},"region":{},"availabilityZone":{},"startTime":{"type":"timestamp"},"endTime":{"type":"timestamp"},"lastUpdatedTime":{"type":"timestamp"},"statusCode":{}}}}}

/***/ }),
/* 216 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeAffectedEntities":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"entities"},"DescribeEntityAggregates":{"result_key":"entityAggregates"},"DescribeEventAggregates":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"eventAggregates"},"DescribeEvents":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"events"},"DescribeEventTypes":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"eventTypes"}}}

/***/ }),
/* 217 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(218);
	    model.paginators = __webpack_require__(219).pagination;
	    model.waiters = __webpack_require__(220).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.IAM;


/***/ }),
/* 218 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2010-05-08","endpointPrefix":"iam","globalEndpoint":"iam.amazonaws.com","protocol":"query","serviceAbbreviation":"IAM","serviceFullName":"AWS Identity and Access Management","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":{}}},"output":{"resultWrapper":"CreateInstanceProfileResult","type":"structure","required":["InstanceProfile"],"members":{"InstanceProfile":{"shape":"Sw"}}}},"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":"S14"}}}},"CreateOpenIDConnectProvider":{"input":{"type":"structure","required":["Url","ThumbprintList"],"members":{"Url":{},"ClientIDList":{"shape":"S17"},"ThumbprintList":{"shape":"S18"}}},"output":{"resultWrapper":"CreateOpenIDConnectProviderResult","type":"structure","members":{"OpenIDConnectProviderArn":{}}}},"CreatePolicy":{"input":{"type":"structure","required":["PolicyName","PolicyDocument"],"members":{"PolicyName":{},"Path":{},"PolicyDocument":{},"Description":{}}},"output":{"resultWrapper":"CreatePolicyResult","type":"structure","members":{"Policy":{"shape":"S1g"}}}},"CreatePolicyVersion":{"input":{"type":"structure","required":["PolicyArn","PolicyDocument"],"members":{"PolicyArn":{},"PolicyDocument":{},"SetAsDefault":{"type":"boolean"}}},"output":{"resultWrapper":"CreatePolicyVersionResult","type":"structure","members":{"PolicyVersion":{"shape":"S1l"}}}},"CreateRole":{"input":{"type":"structure","required":["RoleName","AssumeRolePolicyDocument"],"members":{"Path":{},"RoleName":{},"AssumeRolePolicyDocument":{},"Description":{}}},"output":{"resultWrapper":"CreateRoleResult","type":"structure","required":["Role"],"members":{"Role":{"shape":"Sy"}}}},"CreateSAMLProvider":{"input":{"type":"structure","required":["SAMLMetadataDocument","Name"],"members":{"SAMLMetadataDocument":{},"Name":{}}},"output":{"resultWrapper":"CreateSAMLProviderResult","type":"structure","members":{"SAMLProviderArn":{}}}},"CreateServiceLinkedRole":{"input":{"type":"structure","required":["AWSServiceName"],"members":{"AWSServiceName":{},"Description":{},"CustomSuffix":{}}},"output":{"resultWrapper":"CreateServiceLinkedRoleResult","type":"structure","members":{"Role":{"shape":"Sy"}}}},"CreateServiceSpecificCredential":{"input":{"type":"structure","required":["UserName","ServiceName"],"members":{"UserName":{},"ServiceName":{}}},"output":{"resultWrapper":"CreateServiceSpecificCredentialResult","type":"structure","members":{"ServiceSpecificCredential":{"shape":"S1y"}}}},"CreateUser":{"input":{"type":"structure","required":["UserName"],"members":{"Path":{},"UserName":{}}},"output":{"resultWrapper":"CreateUserResult","type":"structure","members":{"User":{"shape":"S24"}}}},"CreateVirtualMFADevice":{"input":{"type":"structure","required":["VirtualMFADeviceName"],"members":{"Path":{},"VirtualMFADeviceName":{}}},"output":{"resultWrapper":"CreateVirtualMFADeviceResult","type":"structure","required":["VirtualMFADevice"],"members":{"VirtualMFADevice":{"shape":"S28"}}}},"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":{}}}},"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":{}}}},"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":{}}}},"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":{}}}},"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":"S3i"},"GroupList":{"type":"list","member":{}},"AttachedManagedPolicies":{"shape":"S3l"}}}},"GroupDetailList":{"type":"list","member":{"type":"structure","members":{"Path":{},"GroupName":{},"GroupId":{},"Arn":{},"CreateDate":{"type":"timestamp"},"GroupPolicyList":{"shape":"S3i"},"AttachedManagedPolicies":{"shape":"S3l"}}}},"RoleDetailList":{"type":"list","member":{"type":"structure","members":{"Path":{},"RoleName":{},"RoleId":{},"Arn":{},"CreateDate":{"type":"timestamp"},"AssumeRolePolicyDocument":{},"InstanceProfileList":{"shape":"S3r"},"RolePolicyList":{"shape":"S3i"},"AttachedManagedPolicies":{"shape":"S3l"}}}},"Policies":{"type":"list","member":{"type":"structure","members":{"PolicyName":{},"PolicyId":{},"Arn":{},"Path":{},"DefaultVersionId":{},"AttachmentCount":{"type":"integer"},"IsAttachable":{"type":"boolean"},"Description":{},"CreateDate":{"type":"timestamp"},"UpdateDate":{"type":"timestamp"},"PolicyVersionList":{"shape":"S3u"}}}},"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":"S46"}}},"output":{"shape":"S47","resultWrapper":"GetContextKeysForCustomPolicyResult"}},"GetContextKeysForPrincipalPolicy":{"input":{"type":"structure","required":["PolicySourceArn"],"members":{"PolicySourceArn":{},"PolicyInputList":{"shape":"S46"}}},"output":{"shape":"S47","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":"S4g"},"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":"Sw"}}}},"GetLoginProfile":{"input":{"type":"structure","required":["UserName"],"members":{"UserName":{}}},"output":{"resultWrapper":"GetLoginProfileResult","type":"structure","required":["LoginProfile"],"members":{"LoginProfile":{"shape":"S14"}}}},"GetOpenIDConnectProvider":{"input":{"type":"structure","required":["OpenIDConnectProviderArn"],"members":{"OpenIDConnectProviderArn":{}}},"output":{"resultWrapper":"GetOpenIDConnectProviderResult","type":"structure","members":{"Url":{},"ClientIDList":{"shape":"S17"},"ThumbprintList":{"shape":"S18"},"CreateDate":{"type":"timestamp"}}}},"GetPolicy":{"input":{"type":"structure","required":["PolicyArn"],"members":{"PolicyArn":{}}},"output":{"resultWrapper":"GetPolicyResult","type":"structure","members":{"Policy":{"shape":"S1g"}}}},"GetPolicyVersion":{"input":{"type":"structure","required":["PolicyArn","VersionId"],"members":{"PolicyArn":{},"VersionId":{}}},"output":{"resultWrapper":"GetPolicyVersionResult","type":"structure","members":{"PolicyVersion":{"shape":"S1l"}}}},"GetRole":{"input":{"type":"structure","required":["RoleName"],"members":{"RoleName":{}}},"output":{"resultWrapper":"GetRoleResult","type":"structure","required":["Role"],"members":{"Role":{"shape":"Sy"}}}},"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"}}}},"GetSSHPublicKey":{"input":{"type":"structure","required":["UserName","SSHPublicKeyId","Encoding"],"members":{"UserName":{},"SSHPublicKeyId":{},"Encoding":{}}},"output":{"resultWrapper":"GetSSHPublicKeyResult","type":"structure","members":{"SSHPublicKey":{"shape":"S52"}}}},"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":"S58"},"CertificateBody":{},"CertificateChain":{}}}}}},"GetUser":{"input":{"type":"structure","members":{"UserName":{}}},"output":{"resultWrapper":"GetUserResult","type":"structure","required":["User"],"members":{"User":{"shape":"S24"}}}},"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":"S3l"},"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":"S3l"},"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":"S3l"},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"ListEntitiesForPolicy":{"input":{"type":"structure","required":["PolicyArn"],"members":{"PolicyArn":{},"EntityFilter":{},"PathPrefix":{},"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":"S62"},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"ListGroups":{"input":{"type":"structure","members":{"PathPrefix":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListGroupsResult","type":"structure","required":["Groups"],"members":{"Groups":{"shape":"S66"},"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":"S66"},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"ListInstanceProfiles":{"input":{"type":"structure","members":{"PathPrefix":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListInstanceProfilesResult","type":"structure","required":["InstanceProfiles"],"members":{"InstanceProfiles":{"shape":"S3r"},"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":"S3r"},"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":{}}}},"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":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListPoliciesResult","type":"structure","members":{"Policies":{"type":"list","member":{"shape":"S1g"}},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"ListPolicyVersions":{"input":{"type":"structure","required":["PolicyArn"],"members":{"PolicyArn":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListPolicyVersionsResult","type":"structure","members":{"Versions":{"shape":"S3u"},"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":"S62"},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"ListRoles":{"input":{"type":"structure","members":{"PathPrefix":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListRolesResult","type":"structure","required":["Roles"],"members":{"Roles":{"shape":"Sx"},"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":{}}}},"ListServerCertificates":{"input":{"type":"structure","members":{"PathPrefix":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListServerCertificatesResult","type":"structure","required":["ServerCertificateMetadataList"],"members":{"ServerCertificateMetadataList":{"type":"list","member":{"shape":"S58"}},"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":"S7d"}},"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":"S62"},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"ListUsers":{"input":{"type":"structure","members":{"PathPrefix":{},"Marker":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListUsersResult","type":"structure","required":["Users"],"members":{"Users":{"shape":"S4g"},"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":"S28"}},"IsTruncated":{"type":"boolean"},"Marker":{}}}},"PutGroupPolicy":{"input":{"type":"structure","required":["GroupName","PolicyName","PolicyDocument"],"members":{"GroupName":{},"PolicyName":{},"PolicyDocument":{}}}},"PutRolePolicy":{"input":{"type":"structure","required":["RoleName","PolicyName","PolicyDocument"],"members":{"RoleName":{},"PolicyName":{},"PolicyDocument":{}}}},"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":"S1y"}}}},"ResyncMFADevice":{"input":{"type":"structure","required":["UserName","SerialNumber","AuthenticationCode1","AuthenticationCode2"],"members":{"UserName":{},"SerialNumber":{},"AuthenticationCode1":{},"AuthenticationCode2":{}}}},"SetDefaultPolicyVersion":{"input":{"type":"structure","required":["PolicyArn","VersionId"],"members":{"PolicyArn":{},"VersionId":{}}}},"SimulateCustomPolicy":{"input":{"type":"structure","required":["PolicyInputList","ActionNames"],"members":{"PolicyInputList":{"shape":"S46"},"ActionNames":{"shape":"S7x"},"ResourceArns":{"shape":"S7z"},"ResourcePolicy":{},"ResourceOwner":{},"CallerArn":{},"ContextEntries":{"shape":"S81"},"ResourceHandlingOption":{},"MaxItems":{"type":"integer"},"Marker":{}}},"output":{"shape":"S87","resultWrapper":"SimulateCustomPolicyResult"}},"SimulatePrincipalPolicy":{"input":{"type":"structure","required":["PolicySourceArn","ActionNames"],"members":{"PolicySourceArn":{},"PolicyInputList":{"shape":"S46"},"ActionNames":{"shape":"S7x"},"ResourceArns":{"shape":"S7z"},"ResourcePolicy":{},"ResourceOwner":{},"CallerArn":{},"ContextEntries":{"shape":"S81"},"ResourceHandlingOption":{},"MaxItems":{"type":"integer"},"Marker":{}}},"output":{"shape":"S87","resultWrapper":"SimulatePrincipalPolicyResult"}},"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":"S18"}}}},"UpdateRoleDescription":{"input":{"type":"structure","required":["RoleName","Description"],"members":{"RoleName":{},"Description":{}}},"output":{"resultWrapper":"UpdateRoleDescriptionResult","type":"structure","members":{"Role":{"shape":"Sy"}}}},"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":"S52"}}}},"UploadServerCertificate":{"input":{"type":"structure","required":["ServerCertificateName","CertificateBody","PrivateKey"],"members":{"Path":{},"ServerCertificateName":{},"CertificateBody":{},"PrivateKey":{"type":"string","sensitive":true},"CertificateChain":{}}},"output":{"resultWrapper":"UploadServerCertificateResult","type":"structure","members":{"ServerCertificateMetadata":{"shape":"S58"}}}},"UploadSigningCertificate":{"input":{"type":"structure","required":["CertificateBody"],"members":{"UserName":{},"CertificateBody":{}}},"output":{"resultWrapper":"UploadSigningCertificateResult","type":"structure","required":["Certificate"],"members":{"Certificate":{"shape":"S7d"}}}}},"shapes":{"Sf":{"type":"string","sensitive":true},"Ss":{"type":"structure","required":["Path","GroupName","GroupId","Arn","CreateDate"],"members":{"Path":{},"GroupName":{},"GroupId":{},"Arn":{},"CreateDate":{"type":"timestamp"}}},"Sw":{"type":"structure","required":["Path","InstanceProfileName","InstanceProfileId","Arn","CreateDate","Roles"],"members":{"Path":{},"InstanceProfileName":{},"InstanceProfileId":{},"Arn":{},"CreateDate":{"type":"timestamp"},"Roles":{"shape":"Sx"}}},"Sx":{"type":"list","member":{"shape":"Sy"}},"Sy":{"type":"structure","required":["Path","RoleName","RoleId","Arn","CreateDate"],"members":{"Path":{},"RoleName":{},"RoleId":{},"Arn":{},"CreateDate":{"type":"timestamp"},"AssumeRolePolicyDocument":{},"Description":{}}},"S14":{"type":"structure","required":["UserName","CreateDate"],"members":{"UserName":{},"CreateDate":{"type":"timestamp"},"PasswordResetRequired":{"type":"boolean"}}},"S17":{"type":"list","member":{}},"S18":{"type":"list","member":{}},"S1g":{"type":"structure","members":{"PolicyName":{},"PolicyId":{},"Arn":{},"Path":{},"DefaultVersionId":{},"AttachmentCount":{"type":"integer"},"IsAttachable":{"type":"boolean"},"Description":{},"CreateDate":{"type":"timestamp"},"UpdateDate":{"type":"timestamp"}}},"S1l":{"type":"structure","members":{"Document":{},"VersionId":{},"IsDefaultVersion":{"type":"boolean"},"CreateDate":{"type":"timestamp"}}},"S1y":{"type":"structure","required":["CreateDate","ServiceName","ServiceUserName","ServicePassword","ServiceSpecificCredentialId","UserName","Status"],"members":{"CreateDate":{"type":"timestamp"},"ServiceName":{},"ServiceUserName":{},"ServicePassword":{"type":"string","sensitive":true},"ServiceSpecificCredentialId":{},"UserName":{},"Status":{}}},"S24":{"type":"structure","required":["Path","UserName","UserId","Arn","CreateDate"],"members":{"Path":{},"UserName":{},"UserId":{},"Arn":{},"CreateDate":{"type":"timestamp"},"PasswordLastUsed":{"type":"timestamp"}}},"S28":{"type":"structure","required":["SerialNumber"],"members":{"SerialNumber":{},"Base32StringSeed":{"shape":"S2a"},"QRCodePNG":{"shape":"S2a"},"User":{"shape":"S24"},"EnableDate":{"type":"timestamp"}}},"S2a":{"type":"blob","sensitive":true},"S3i":{"type":"list","member":{"type":"structure","members":{"PolicyName":{},"PolicyDocument":{}}}},"S3l":{"type":"list","member":{"type":"structure","members":{"PolicyName":{},"PolicyArn":{}}}},"S3r":{"type":"list","member":{"shape":"Sw"}},"S3u":{"type":"list","member":{"shape":"S1l"}},"S46":{"type":"list","member":{}},"S47":{"type":"structure","members":{"ContextKeyNames":{"shape":"S48"}}},"S48":{"type":"list","member":{}},"S4g":{"type":"list","member":{"shape":"S24"}},"S52":{"type":"structure","required":["UserName","SSHPublicKeyId","Fingerprint","SSHPublicKeyBody","Status"],"members":{"UserName":{},"SSHPublicKeyId":{},"Fingerprint":{},"SSHPublicKeyBody":{},"Status":{},"UploadDate":{"type":"timestamp"}}},"S58":{"type":"structure","required":["Path","ServerCertificateName","ServerCertificateId","Arn"],"members":{"Path":{},"ServerCertificateName":{},"ServerCertificateId":{},"Arn":{},"UploadDate":{"type":"timestamp"},"Expiration":{"type":"timestamp"}}},"S62":{"type":"list","member":{}},"S66":{"type":"list","member":{"shape":"Ss"}},"S7d":{"type":"structure","required":["UserName","CertificateId","CertificateBody","Status"],"members":{"UserName":{},"CertificateId":{},"CertificateBody":{},"Status":{},"UploadDate":{"type":"timestamp"}}},"S7x":{"type":"list","member":{}},"S7z":{"type":"list","member":{}},"S81":{"type":"list","member":{"type":"structure","members":{"ContextKeyName":{},"ContextKeyValues":{"type":"list","member":{}},"ContextKeyType":{}}}},"S87":{"type":"structure","members":{"EvaluationResults":{"type":"list","member":{"type":"structure","required":["EvalActionName","EvalDecision"],"members":{"EvalActionName":{},"EvalResourceName":{},"EvalDecision":{},"MatchedStatements":{"shape":"S8b"},"MissingContextValues":{"shape":"S48"},"OrganizationsDecisionDetail":{"type":"structure","members":{"AllowedByOrganizations":{"type":"boolean"}}},"EvalDecisionDetails":{"shape":"S8j"},"ResourceSpecificResults":{"type":"list","member":{"type":"structure","required":["EvalResourceName","EvalResourceDecision"],"members":{"EvalResourceName":{},"EvalResourceDecision":{},"MatchedStatements":{"shape":"S8b"},"MissingContextValues":{"shape":"S48"},"EvalDecisionDetails":{"shape":"S8j"}}}}}}},"IsTruncated":{"type":"boolean"},"Marker":{}}},"S8b":{"type":"list","member":{"type":"structure","members":{"SourcePolicyId":{},"SourcePolicyType":{},"StartPosition":{"shape":"S8f"},"EndPosition":{"shape":"S8f"}}}},"S8f":{"type":"structure","members":{"Line":{"type":"integer"},"Column":{"type":"integer"}}},"S8j":{"type":"map","key":{},"value":{}}}}

/***/ }),
/* 219 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 220 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 221 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(222);
	    model.paginators = __webpack_require__(223).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ImportExport;


/***/ }),
/* 222 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"importexport-2010-06-01","apiVersion":"2010-06-01","endpointPrefix":"importexport","globalEndpoint":"importexport.amazonaws.com","serviceFullName":"AWS Import/Export","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":{}}

/***/ }),
/* 223 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListJobs":{"input_token":"Marker","output_token":"Jobs[-1].JobId","more_results":"IsTruncated","limit_key":"MaxJobs","result_key":"Jobs"}}}

/***/ }),
/* 224 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(225);
	    model.paginators = __webpack_require__(226).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Inspector;


/***/ }),
/* 225 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-02-16","endpointPrefix":"inspector","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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","resourceGroupArn"],"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":{}}}},"CreateResourceGroup":{"input":{"type":"structure","required":["resourceGroupTags"],"members":{"resourceGroupTags":{"shape":"Sm"}}},"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":"Sv"}}},"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":"Sv"}}},"output":{"type":"structure","required":["assessmentTargets","failedItems"],"members":{"assessmentTargets":{"type":"list","member":{"type":"structure","required":["arn","name","resourceGroupArn","createdAt","updatedAt"],"members":{"arn":{},"name":{},"resourceGroupArn":{},"createdAt":{"type":"timestamp"},"updatedAt":{"type":"timestamp"}}}},"failedItems":{"shape":"S9"}}}},"DescribeAssessmentTemplates":{"input":{"type":"structure","required":["assessmentTemplateArns"],"members":{"assessmentTemplateArns":{"shape":"Sv"}}},"output":{"type":"structure","required":["assessmentTemplates","failedItems"],"members":{"assessmentTemplates":{"type":"list","member":{"type":"structure","required":["arn","name","assessmentTargetArn","durationInSeconds","rulesPackageArns","userAttributesForFindings","createdAt"],"members":{"arn":{},"name":{},"assessmentTargetArn":{},"durationInSeconds":{"type":"integer"},"rulesPackageArns":{"shape":"Sj"},"userAttributesForFindings":{"shape":"S4"},"createdAt":{"type":"timestamp"}}}},"failedItems":{"shape":"S9"}}}},"DescribeCrossAccountAccessRole":{"output":{"type":"structure","required":["roleArn","valid","registeredAt"],"members":{"roleArn":{},"valid":{"type":"boolean"},"registeredAt":{"type":"timestamp"}}}},"DescribeFindings":{"input":{"type":"structure","required":["findingArns"],"members":{"findingArns":{"shape":"Sv"},"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":{}}}},"id":{},"title":{},"description":{},"recommendation":{},"severity":{},"numericSeverity":{"type":"double"},"confidence":{"type":"integer"},"indicatorOfCompromise":{"type":"boolean"},"attributes":{"shape":"S26"},"userAttributes":{"shape":"S4"},"createdAt":{"type":"timestamp"},"updatedAt":{"type":"timestamp"}}}},"failedItems":{"shape":"S9"}}}},"DescribeResourceGroups":{"input":{"type":"structure","required":["resourceGroupArns"],"members":{"resourceGroupArns":{"shape":"Sv"}}},"output":{"type":"structure","required":["resourceGroups","failedItems"],"members":{"resourceGroups":{"type":"list","member":{"type":"structure","required":["arn","tags","createdAt"],"members":{"arn":{},"tags":{"shape":"Sm"},"createdAt":{"type":"timestamp"}}}},"failedItems":{"shape":"S9"}}}},"DescribeRulesPackages":{"input":{"type":"structure","required":["rulesPackageArns"],"members":{"rulesPackageArns":{"shape":"Sv"},"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":{}}}},"GetTelemetryMetadata":{"input":{"type":"structure","required":["assessmentRunArn"],"members":{"assessmentRunArn":{}}},"output":{"type":"structure","required":["telemetryMetadata"],"members":{"telemetryMetadata":{"shape":"S2q"}}}},"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":"S2q"}}}},"nextToken":{}}}},"ListAssessmentRuns":{"input":{"type":"structure","members":{"assessmentTemplateArns":{"shape":"S36"},"filter":{"type":"structure","members":{"namePattern":{},"states":{"type":"list","member":{}},"durationRange":{"shape":"S3a"},"rulesPackageArns":{"shape":"S3b"},"startTimeRange":{"shape":"S3c"},"completionTimeRange":{"shape":"S3c"},"stateChangeTimeRange":{"shape":"S3c"}}},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","required":["assessmentRunArns"],"members":{"assessmentRunArns":{"shape":"S3e"},"nextToken":{}}}},"ListAssessmentTargets":{"input":{"type":"structure","members":{"filter":{"type":"structure","members":{"assessmentTargetNamePattern":{}}},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","required":["assessmentTargetArns"],"members":{"assessmentTargetArns":{"shape":"S3e"},"nextToken":{}}}},"ListAssessmentTemplates":{"input":{"type":"structure","members":{"assessmentTargetArns":{"shape":"S36"},"filter":{"type":"structure","members":{"namePattern":{},"durationRange":{"shape":"S3a"},"rulesPackageArns":{"shape":"S3b"}}},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","required":["assessmentTemplateArns"],"members":{"assessmentTemplateArns":{"shape":"S3e"},"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":{}}}},"ListFindings":{"input":{"type":"structure","members":{"assessmentRunArns":{"shape":"S36"},"filter":{"type":"structure","members":{"agentIds":{"type":"list","member":{}},"autoScalingGroups":{"type":"list","member":{}},"ruleNames":{"type":"list","member":{}},"severities":{"type":"list","member":{}},"rulesPackageArns":{"shape":"S3b"},"attributes":{"shape":"S26"},"userAttributes":{"shape":"S26"},"creationTimeRange":{"shape":"S3c"}}},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","required":["findingArns"],"members":{"findingArns":{"shape":"S3e"},"nextToken":{}}}},"ListRulesPackages":{"input":{"type":"structure","members":{"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","required":["rulesPackageArns"],"members":{"rulesPackageArns":{"shape":"S3e"},"nextToken":{}}}},"ListTagsForResource":{"input":{"type":"structure","required":["resourceArn"],"members":{"resourceArn":{}}},"output":{"type":"structure","required":["tags"],"members":{"tags":{"shape":"S44"}}}},"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":{"agentId":{},"autoScalingGroup":{}}}},"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":"S44"}}}},"StartAssessmentRun":{"input":{"type":"structure","required":["assessmentTemplateArn"],"members":{"assessmentTemplateArn":{},"assessmentRunName":{}}},"output":{"type":"structure","required":["assessmentRunArn"],"members":{"assessmentRunArn":{}}}},"StopAssessmentRun":{"input":{"type":"structure","required":["assessmentRunArn"],"members":{"assessmentRunArn":{}}}},"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","resourceGroupArn"],"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":{}},"Sm":{"type":"list","member":{"type":"structure","required":["key"],"members":{"key":{},"value":{}}}},"Sv":{"type":"list","member":{}},"S26":{"type":"list","member":{"shape":"S5"}},"S2q":{"type":"list","member":{"type":"structure","required":["messageType","count"],"members":{"messageType":{},"count":{"type":"long"},"dataSize":{"type":"long"}}}},"S36":{"type":"list","member":{}},"S3a":{"type":"structure","members":{"minSeconds":{"type":"integer"},"maxSeconds":{"type":"integer"}}},"S3b":{"type":"list","member":{}},"S3c":{"type":"structure","members":{"beginDate":{"type":"timestamp"},"endDate":{"type":"timestamp"}}},"S3e":{"type":"list","member":{}},"S44":{"type":"list","member":{"type":"structure","required":["key"],"members":{"key":{},"value":{}}}}}}

/***/ }),
/* 226 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 227 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(228);
	    model.paginators = __webpack_require__(229).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Iot;


/***/ }),
/* 228 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-05-28","endpointPrefix":"iot","protocol":"rest-json","serviceFullName":"AWS 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"}}}},"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"}}}},"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":{}}},"CancelCertificateTransfer":{"http":{"method":"PATCH","requestUri":"/cancel-certificate-transfer/{certificateId}"},"input":{"type":"structure","required":["certificateId"],"members":{"certificateId":{"location":"uri","locationName":"certificateId"}}}},"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":{}}}},"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":{"type":"structure","members":{"PublicKey":{},"PrivateKey":{"type":"string","sensitive":true}}}}}},"CreatePolicy":{"http":{"requestUri":"/policies/{policyName}"},"input":{"type":"structure","required":["policyName","policyDocument"],"members":{"policyName":{"location":"uri","locationName":"policyName"},"policyDocument":{}}},"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"}}}},"CreateThing":{"http":{"requestUri":"/things/{thingName}"},"input":{"type":"structure","required":["thingName"],"members":{"thingName":{"location":"uri","locationName":"thingName"},"thingTypeName":{},"attributePayload":{"shape":"Sw"}}},"output":{"type":"structure","members":{"thingName":{},"thingArn":{}}}},"CreateThingType":{"http":{"requestUri":"/thing-types/{thingTypeName}"},"input":{"type":"structure","required":["thingTypeName"],"members":{"thingTypeName":{"location":"uri","locationName":"thingTypeName"},"thingTypeProperties":{"shape":"S14"}}},"output":{"type":"structure","members":{"thingTypeName":{},"thingTypeArn":{}}}},"CreateTopicRule":{"http":{"requestUri":"/rules/{ruleName}"},"input":{"type":"structure","required":["ruleName","topicRulePayload"],"members":{"ruleName":{"location":"uri","locationName":"ruleName"},"topicRulePayload":{"shape":"S1b"}},"payload":"topicRulePayload"}},"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"}}}},"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"}}}},"DeleteRegistrationCode":{"http":{"method":"DELETE","requestUri":"/registrationcode"},"input":{"type":"structure","members":{}},"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":{}}},"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"}}}},"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":{}}},"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":{}}}}}},"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"},"transferData":{"type":"structure","members":{"transferMessage":{},"rejectReason":{},"transferDate":{"type":"timestamp"},"acceptDate":{"type":"timestamp"},"rejectDate":{"type":"timestamp"}}}}}}}},"DescribeEndpoint":{"http":{"method":"GET","requestUri":"/endpoint"},"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"endpointAddress":{}}}},"DescribeThing":{"http":{"method":"GET","requestUri":"/things/{thingName}"},"input":{"type":"structure","required":["thingName"],"members":{"thingName":{"location":"uri","locationName":"thingName"}}},"output":{"type":"structure","members":{"defaultClientId":{},"thingName":{},"thingTypeName":{},"attributes":{"shape":"Sx"},"version":{"type":"long"}}}},"DescribeThingType":{"http":{"method":"GET","requestUri":"/thing-types/{thingTypeName}"},"input":{"type":"structure","required":["thingTypeName"],"members":{"thingTypeName":{"location":"uri","locationName":"thingTypeName"}}},"output":{"type":"structure","members":{"thingTypeName":{},"thingTypeProperties":{"shape":"S14"},"thingTypeMetadata":{"shape":"S3x"}}}},"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"}}}},"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"}}}},"GetLoggingOptions":{"http":{"method":"GET","requestUri":"/loggingOptions"},"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"roleArn":{},"logLevel":{}}}},"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":{}}}},"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"}}}},"GetRegistrationCode":{"http":{"method":"GET","requestUri":"/registrationcode"},"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"registrationCode":{}}}},"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":"S1e"},"ruleDisabled":{"type":"boolean"},"awsIotSqlVersion":{}}}}}},"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":"S4u"},"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":"S4u"},"nextMarker":{}}}},"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":"S54"},"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":"S58"},"nextMarker":{}}}},"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":"S54"},"nextMarker":{}}}},"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":{"type":"list","member":{}},"nextToken":{}}}},"ListThingPrincipals":{"http":{"method":"GET","requestUri":"/things/{thingName}/principals"},"input":{"type":"structure","required":["thingName"],"members":{"thingName":{"location":"uri","locationName":"thingName"}}},"output":{"type":"structure","members":{"principals":{"shape":"S58"}}}},"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":{},"thingTypeProperties":{"shape":"S14"},"thingTypeMetadata":{"shape":"S3x"}}}},"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"}}},"output":{"type":"structure","members":{"things":{"type":"list","member":{"type":"structure","members":{"thingName":{},"thingTypeName":{},"attributes":{"shape":"Sx"},"version":{"type":"long"}}}},"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":{}}}},"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"}}},"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":{}}}},"RejectCertificateTransfer":{"http":{"method":"PATCH","requestUri":"/reject-certificate-transfer/{certificateId}"},"input":{"type":"structure","required":["certificateId"],"members":{"certificateId":{"location":"uri","locationName":"certificateId"},"rejectReason":{}}}},"ReplaceTopicRule":{"http":{"method":"PATCH","requestUri":"/rules/{ruleName}"},"input":{"type":"structure","required":["ruleName","topicRulePayload"],"members":{"ruleName":{"location":"uri","locationName":"ruleName"},"topicRulePayload":{"shape":"S1b"}},"payload":"topicRulePayload"}},"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"}},"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":{}}}},"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"}}}},"UpdateCertificate":{"http":{"method":"PUT","requestUri":"/certificates/{certificateId}"},"input":{"type":"structure","required":["certificateId","newStatus"],"members":{"certificateId":{"location":"uri","locationName":"certificateId"},"newStatus":{"location":"querystring","locationName":"newStatus"}}}},"UpdateThing":{"http":{"method":"PATCH","requestUri":"/things/{thingName}"},"input":{"type":"structure","required":["thingName"],"members":{"thingName":{"location":"uri","locationName":"thingName"},"thingTypeName":{},"attributePayload":{"shape":"Sw"},"expectedVersion":{"type":"long"},"removeThingType":{"type":"boolean"}}},"output":{"type":"structure","members":{}}}},"shapes":{"Sw":{"type":"structure","members":{"attributes":{"shape":"Sx"},"merge":{"type":"boolean"}}},"Sx":{"type":"map","key":{},"value":{}},"S14":{"type":"structure","members":{"thingTypeDescription":{},"searchableAttributes":{"type":"list","member":{}}}},"S1b":{"type":"structure","required":["sql","actions"],"members":{"sql":{},"description":{},"actions":{"shape":"S1e"},"ruleDisabled":{"type":"boolean"},"awsIotSqlVersion":{}}},"S1e":{"type":"list","member":{"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","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":{}}},"s3":{"type":"structure","required":["roleArn","bucketName","key"],"members":{"roleArn":{},"bucketName":{},"key":{},"cannedAcl":{}}},"firehose":{"type":"structure","required":["roleArn","deliveryStreamName"],"members":{"roleArn":{},"deliveryStreamName":{},"separator":{}}},"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":{}}},"elasticsearch":{"type":"structure","required":["roleArn","endpoint","index","type","id"],"members":{"roleArn":{},"endpoint":{},"index":{},"type":{},"id":{}}},"salesforce":{"type":"structure","required":["token","url"],"members":{"token":{},"url":{}}}}}},"S3x":{"type":"structure","members":{"deprecated":{"type":"boolean"},"deprecationDate":{"type":"timestamp"},"creationDate":{"type":"timestamp"}}},"S4u":{"type":"list","member":{"type":"structure","members":{"certificateArn":{},"certificateId":{},"status":{},"creationDate":{"type":"timestamp"}}}},"S54":{"type":"list","member":{"type":"structure","members":{"policyName":{},"policyArn":{}}}},"S58":{"type":"list","member":{}}}}

/***/ }),
/* 229 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 230 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['iotdata'] = {};
	AWS.IotData = Service.defineService('iotdata', ['2015-05-28']);
	__webpack_require__(231);
	Object.defineProperty(apiLoader.services['iotdata'], '2015-05-28', {
	  get: function get() {
	    var model = __webpack_require__(232);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.IotData;


/***/ }),
/* 231 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	/**
	 * @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 = '';
	        }
	    }

	});


/***/ }),
/* 232 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"iot-data-2015-05-28","apiVersion":"2015-05-28","endpointPrefix":"data.iot","protocol":"rest-json","serviceFullName":"AWS IoT Data Plane","signatureVersion":"v4","signingName":"iotdata"},"operations":{"DeleteThingShadow":{"http":{"method":"DELETE","requestUri":"/things/{thingName}/shadow"},"input":{"type":"structure","required":["thingName"],"members":{"thingName":{"location":"uri","locationName":"thingName"}}},"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"}}},"output":{"type":"structure","members":{"payload":{"type":"blob"}},"payload":"payload"}},"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"},"payload":{"type":"blob"}},"payload":"payload"},"output":{"type":"structure","members":{"payload":{"type":"blob"}},"payload":"payload"}}},"shapes":{}}

/***/ }),
/* 233 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(234);
	    model.paginators = __webpack_require__(235).pagination;
	    model.waiters = __webpack_require__(236).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Kinesis;


/***/ }),
/* 234 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-12-02","endpointPrefix":"kinesis","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Kinesis","serviceFullName":"Amazon 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":{}}}},"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":{"type":"list","member":{"type":"structure","required":["ShardId","HashKeyRange","SequenceNumberRange"],"members":{"ShardId":{},"ParentShardId":{},"AdjacentParentShardId":{},"HashKeyRange":{"type":"structure","required":["StartingHashKey","EndingHashKey"],"members":{"StartingHashKey":{},"EndingHashKey":{}}},"SequenceNumberRange":{"type":"structure","required":["StartingSequenceNumber"],"members":{"StartingSequenceNumber":{},"EndingSequenceNumber":{}}}}}},"HasMoreShards":{"type":"boolean"},"RetentionPeriodHours":{"type":"integer"},"StreamCreationTimestamp":{"type":"timestamp"},"EnhancedMonitoring":{"type":"list","member":{"type":"structure","members":{"ShardLevelMetrics":{"shape":"Su"}}}},"EncryptionType":{},"KeyId":{}}}}}},"DisableEnhancedMonitoring":{"input":{"type":"structure","required":["StreamName","ShardLevelMetrics"],"members":{"StreamName":{},"ShardLevelMetrics":{"shape":"Su"}}},"output":{"shape":"Sz"}},"EnableEnhancedMonitoring":{"input":{"type":"structure","required":["StreamName","ShardLevelMetrics"],"members":{"StreamName":{},"ShardLevelMetrics":{"shape":"Su"}}},"output":{"shape":"Sz"}},"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"}}}},"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"}}}},"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":{}}}},"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":{"Su":{"type":"list","member":{}},"Sz":{"type":"structure","members":{"StreamName":{},"CurrentShardLevelMetrics":{"shape":"Su"},"DesiredShardLevelMetrics":{"shape":"Su"}}}}}

/***/ }),
/* 235 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeStream":{"input_token":"ExclusiveStartShardId","limit_key":"Limit","more_results":"StreamDescription.HasMoreShards","output_token":"StreamDescription.Shards[-1].ShardId","result_key":"StreamDescription.Shards"},"ListStreams":{"input_token":"ExclusiveStartStreamName","limit_key":"Limit","more_results":"HasMoreStreams","output_token":"StreamNames[-1]","result_key":"StreamNames"}}}

/***/ }),
/* 236 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 237 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(238);
	    model.paginators = __webpack_require__(239).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.KinesisAnalytics;


/***/ }),
/* 238 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-08-14","endpointPrefix":"kinesisanalytics","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Kinesis Analytics","serviceFullName":"Amazon Kinesis Analytics","signatureVersion":"v4","targetPrefix":"KinesisAnalytics_20150814","timestampFormat":"unixTimestamp","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":{}}},"AddApplicationOutput":{"input":{"type":"structure","required":["ApplicationName","CurrentApplicationVersionId","Output"],"members":{"ApplicationName":{},"CurrentApplicationVersionId":{"type":"long"},"Output":{"shape":"Sx"}}},"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":"Sg"}}}}},"output":{"type":"structure","members":{}}},"CreateApplication":{"input":{"type":"structure","required":["ApplicationName"],"members":{"ApplicationName":{},"ApplicationDescription":{},"Inputs":{"type":"list","member":{"shape":"S9"}},"Outputs":{"type":"list","member":{"shape":"Sx"}},"CloudWatchLoggingOptions":{"type":"list","member":{"shape":"S4"}},"ApplicationCode":{}}},"output":{"type":"structure","required":["ApplicationSummary"],"members":{"ApplicationSummary":{"shape":"S1g"}}}},"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":{}}},"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":{}},"KinesisStreamsInputDescription":{"type":"structure","members":{"ResourceARN":{},"RoleARN":{}}},"KinesisFirehoseInputDescription":{"type":"structure","members":{"ResourceARN":{},"RoleARN":{}}},"InputSchema":{"shape":"Sg"},"InputParallelism":{"shape":"Se"},"InputStartingPositionConfiguration":{"shape":"S20"}}}},"OutputDescriptions":{"type":"list","member":{"type":"structure","members":{"OutputId":{},"Name":{},"KinesisStreamsOutputDescription":{"type":"structure","members":{"ResourceARN":{},"RoleARN":{}}},"KinesisFirehoseOutputDescription":{"type":"structure","members":{"ResourceARN":{},"RoleARN":{}}},"DestinationSchema":{"shape":"S10"}}}},"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":"Sg"}}}},"CloudWatchLoggingOptionDescriptions":{"type":"list","member":{"type":"structure","required":["LogStreamARN","RoleARN"],"members":{"CloudWatchLoggingOptionId":{},"LogStreamARN":{},"RoleARN":{}}}},"ApplicationCode":{},"ApplicationVersionId":{"type":"long"}}}}}},"DiscoverInputSchema":{"input":{"type":"structure","required":["ResourceARN","RoleARN","InputStartingPositionConfiguration"],"members":{"ResourceARN":{},"RoleARN":{},"InputStartingPositionConfiguration":{"shape":"S20"}}},"output":{"type":"structure","members":{"InputSchema":{"shape":"Sg"},"ParsedInputRecords":{"type":"list","member":{"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":"S1g"}},"HasMoreApplications":{"type":"boolean"}}}},"StartApplication":{"input":{"type":"structure","required":["ApplicationName","InputConfigurations"],"members":{"ApplicationName":{},"InputConfigurations":{"type":"list","member":{"type":"structure","required":["Id","InputStartingPositionConfiguration"],"members":{"Id":{},"InputStartingPositionConfiguration":{"shape":"S20"}}}}}},"output":{"type":"structure","members":{}}},"StopApplication":{"input":{"type":"structure","required":["ApplicationName"],"members":{"ApplicationName":{}}},"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":{},"KinesisStreamsInputUpdate":{"type":"structure","members":{"ResourceARNUpdate":{},"RoleARNUpdate":{}}},"KinesisFirehoseInputUpdate":{"type":"structure","members":{"ResourceARNUpdate":{},"RoleARNUpdate":{}}},"InputSchemaUpdate":{"type":"structure","members":{"RecordFormatUpdate":{"shape":"Sh"},"RecordEncodingUpdate":{},"RecordColumnUpdates":{"shape":"Sq"}}},"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":{}}},"DestinationSchemaUpdate":{"shape":"S10"}}}},"ReferenceDataSourceUpdates":{"type":"list","member":{"type":"structure","required":["ReferenceId"],"members":{"ReferenceId":{},"TableNameUpdate":{},"S3ReferenceDataSourceUpdate":{"type":"structure","members":{"BucketARNUpdate":{},"FileKeyUpdate":{},"ReferenceRoleARNUpdate":{}}},"ReferenceSchemaUpdate":{"shape":"Sg"}}}},"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":{},"KinesisStreamsInput":{"type":"structure","required":["ResourceARN","RoleARN"],"members":{"ResourceARN":{},"RoleARN":{}}},"KinesisFirehoseInput":{"type":"structure","required":["ResourceARN","RoleARN"],"members":{"ResourceARN":{},"RoleARN":{}}},"InputParallelism":{"shape":"Se"},"InputSchema":{"shape":"Sg"}}},"Se":{"type":"structure","members":{"Count":{"type":"integer"}}},"Sg":{"type":"structure","required":["RecordFormat","RecordColumns"],"members":{"RecordFormat":{"shape":"Sh"},"RecordEncoding":{},"RecordColumns":{"shape":"Sq"}}},"Sh":{"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":{}}}}}}},"Sq":{"type":"list","member":{"type":"structure","required":["Name","SqlType"],"members":{"Name":{},"Mapping":{},"SqlType":{}}}},"Sx":{"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":{}}},"DestinationSchema":{"shape":"S10"}}},"S10":{"type":"structure","members":{"RecordFormatType":{}}},"S1g":{"type":"structure","required":["ApplicationName","ApplicationARN","ApplicationStatus"],"members":{"ApplicationName":{},"ApplicationARN":{},"ApplicationStatus":{}}},"S20":{"type":"structure","members":{"InputStartingPosition":{}}}}}

/***/ }),
/* 239 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 240 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(241);
	    model.paginators = __webpack_require__(242).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.KMS;


/***/ }),
/* 241 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-11-01","endpointPrefix":"kms","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"KMS","serviceFullName":"AWS Key Management Service","signatureVersion":"v4","targetPrefix":"TrentService","uid":"kms-2014-11-01"},"operations":{"CancelKeyDeletion":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{}}},"output":{"type":"structure","members":{"KeyId":{}}}},"CreateAlias":{"input":{"type":"structure","required":["AliasName","TargetKeyId"],"members":{"AliasName":{},"TargetKeyId":{}}}},"CreateGrant":{"input":{"type":"structure","required":["KeyId","GranteePrincipal"],"members":{"KeyId":{},"GranteePrincipal":{},"RetiringPrincipal":{},"Operations":{"shape":"S8"},"Constraints":{"shape":"Sa"},"GrantTokens":{"shape":"Se"},"Name":{}}},"output":{"type":"structure","members":{"GrantToken":{},"GrantId":{}}}},"CreateKey":{"input":{"type":"structure","members":{"Policy":{},"Description":{},"KeyUsage":{},"Origin":{},"BypassPolicyLockoutSafetyCheck":{"type":"boolean"},"Tags":{"shape":"Sp"}}},"output":{"type":"structure","members":{"KeyMetadata":{"shape":"Su"}}}},"Decrypt":{"input":{"type":"structure","required":["CiphertextBlob"],"members":{"CiphertextBlob":{"type":"blob"},"EncryptionContext":{"shape":"Sb"},"GrantTokens":{"shape":"Se"}}},"output":{"type":"structure","members":{"KeyId":{},"Plaintext":{"shape":"S14"}}}},"DeleteAlias":{"input":{"type":"structure","required":["AliasName"],"members":{"AliasName":{}}}},"DeleteImportedKeyMaterial":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{}}}},"DescribeKey":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{},"GrantTokens":{"shape":"Se"}}},"output":{"type":"structure","members":{"KeyMetadata":{"shape":"Su"}}}},"DisableKey":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{}}}},"DisableKeyRotation":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{}}}},"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":"S14"},"EncryptionContext":{"shape":"Sb"},"GrantTokens":{"shape":"Se"}}},"output":{"type":"structure","members":{"CiphertextBlob":{"type":"blob"},"KeyId":{}}}},"GenerateDataKey":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{},"EncryptionContext":{"shape":"Sb"},"NumberOfBytes":{"type":"integer"},"KeySpec":{},"GrantTokens":{"shape":"Se"}}},"output":{"type":"structure","members":{"CiphertextBlob":{"type":"blob"},"Plaintext":{"shape":"S14"},"KeyId":{}}}},"GenerateDataKeyWithoutPlaintext":{"input":{"type":"structure","required":["KeyId"],"members":{"KeyId":{},"EncryptionContext":{"shape":"Sb"},"KeySpec":{},"NumberOfBytes":{"type":"integer"},"GrantTokens":{"shape":"Se"}}},"output":{"type":"structure","members":{"CiphertextBlob":{"type":"blob"},"KeyId":{}}}},"GenerateRandom":{"input":{"type":"structure","members":{"NumberOfBytes":{"type":"integer"}}},"output":{"type":"structure","members":{"Plaintext":{"shape":"S14"}}}},"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":"S14"},"ParametersValidTo":{"type":"timestamp"}}}},"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":{"Limit":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Aliases":{"type":"list","member":{"type":"structure","members":{"AliasName":{},"AliasArn":{},"TargetKeyId":{}}}},"NextMarker":{},"Truncated":{"type":"boolean"}}}},"ListGrants":{"input":{"type":"structure","required":["KeyId"],"members":{"Limit":{"type":"integer"},"Marker":{},"KeyId":{}}},"output":{"shape":"S25"}},"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":"Sp"},"NextMarker":{},"Truncated":{"type":"boolean"}}}},"ListRetirableGrants":{"input":{"type":"structure","required":["RetiringPrincipal"],"members":{"Limit":{"type":"integer"},"Marker":{},"RetiringPrincipal":{}}},"output":{"shape":"S25"}},"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":"Sb"},"DestinationKeyId":{},"DestinationEncryptionContext":{"shape":"Sb"},"GrantTokens":{"shape":"Se"}}},"output":{"type":"structure","members":{"CiphertextBlob":{"type":"blob"},"SourceKeyId":{},"KeyId":{}}}},"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"}}}},"TagResource":{"input":{"type":"structure","required":["KeyId","Tags"],"members":{"KeyId":{},"Tags":{"shape":"Sp"}}}},"UntagResource":{"input":{"type":"structure","required":["KeyId","TagKeys"],"members":{"KeyId":{},"TagKeys":{"type":"list","member":{}}}}},"UpdateAlias":{"input":{"type":"structure","required":["AliasName","TargetKeyId"],"members":{"AliasName":{},"TargetKeyId":{}}}},"UpdateKeyDescription":{"input":{"type":"structure","required":["KeyId","Description"],"members":{"KeyId":{},"Description":{}}}}},"shapes":{"S8":{"type":"list","member":{}},"Sa":{"type":"structure","members":{"EncryptionContextSubset":{"shape":"Sb"},"EncryptionContextEquals":{"shape":"Sb"}}},"Sb":{"type":"map","key":{},"value":{}},"Se":{"type":"list","member":{}},"Sp":{"type":"list","member":{"type":"structure","required":["TagKey","TagValue"],"members":{"TagKey":{},"TagValue":{}}}},"Su":{"type":"structure","required":["KeyId"],"members":{"AWSAccountId":{},"KeyId":{},"Arn":{},"CreationDate":{"type":"timestamp"},"Enabled":{"type":"boolean"},"Description":{},"KeyUsage":{},"KeyState":{},"DeletionDate":{"type":"timestamp"},"ValidTo":{"type":"timestamp"},"Origin":{},"ExpirationModel":{},"KeyManager":{}}},"S14":{"type":"blob","sensitive":true},"S25":{"type":"structure","members":{"Grants":{"type":"list","member":{"type":"structure","members":{"KeyId":{},"GrantId":{},"Name":{},"CreationDate":{"type":"timestamp"},"GranteePrincipal":{},"RetiringPrincipal":{},"IssuingAccount":{},"Operations":{"shape":"S8"},"Constraints":{"shape":"Sa"}}}},"NextMarker":{},"Truncated":{"type":"boolean"}}}}}

/***/ }),
/* 242 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 243 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['lambda'] = {};
	AWS.Lambda = Service.defineService('lambda', ['2014-11-11', '2015-03-31']);
	__webpack_require__(244);
	Object.defineProperty(apiLoader.services['lambda'], '2014-11-11', {
	  get: function get() {
	    var model = __webpack_require__(245);
	    model.paginators = __webpack_require__(246).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['lambda'], '2015-03-31', {
	  get: function get() {
	    var model = __webpack_require__(247);
	    model.paginators = __webpack_require__(248).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Lambda;


/***/ }),
/* 244 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	AWS.util.update(AWS.Lambda.prototype, {
	  /**
	   * @api private
	   */
	  setupRequestListeners: function setupRequestListeners(request) {
	    if (request.operation === 'invoke') {
	      request.addListener('extractData', AWS.util.convertPayloadToString);
	    }
	  }
	});



/***/ }),
/* 245 */
/***/ (function(module, exports) {

	module.exports = {"metadata":{"apiVersion":"2014-11-11","endpointPrefix":"lambda","serviceFullName":"AWS 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}}}

/***/ }),
/* 246 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 247 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-03-31","endpointPrefix":"lambda","protocol":"rest-json","serviceFullName":"AWS Lambda","signatureVersion":"v4","uid":"lambda-2015-03-31"},"operations":{"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"}}},"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":{}}},"output":{"shape":"Sg"}},"CreateEventSourceMapping":{"http":{"requestUri":"/2015-03-31/event-source-mappings/","responseCode":202},"input":{"type":"structure","required":["EventSourceArn","FunctionName","StartingPosition"],"members":{"EventSourceArn":{},"FunctionName":{},"Enabled":{"type":"boolean"},"BatchSize":{"type":"integer"},"StartingPosition":{},"StartingPositionTimestamp":{"type":"timestamp"}}},"output":{"shape":"Sn"}},"CreateFunction":{"http":{"requestUri":"/2015-03-31/functions","responseCode":201},"input":{"type":"structure","required":["FunctionName","Runtime","Role","Handler","Code"],"members":{"FunctionName":{},"Runtime":{},"Role":{},"Handler":{},"Code":{"type":"structure","members":{"ZipFile":{"shape":"St"},"S3Bucket":{},"S3Key":{},"S3ObjectVersion":{}}},"Description":{},"Timeout":{"type":"integer"},"MemorySize":{"type":"integer"},"Publish":{"type":"boolean"},"VpcConfig":{"shape":"S10"},"DeadLetterConfig":{"shape":"S15"},"Environment":{"shape":"S17"},"KMSKeyArn":{},"TracingConfig":{"shape":"S1c"},"Tags":{"shape":"S1e"}}},"output":{"shape":"S1h"}},"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"}}}},"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":"Sn"}},"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"}}}},"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"}}},"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":"Sg"}},"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":"Sn"}},"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":"S1h"},"Code":{"type":"structure","members":{"RepositoryType":{},"Location":{}}},"Tags":{"shape":"S1e"}}}},"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":"S1h"}},"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":{}}}},"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":"St"},"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":"St"}},"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":"Sg"}}}}},"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":"Sn"}}}}},"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":"S2r"}}}},"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":"S1e"}}}},"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":"S2r"}}}},"PublishVersion":{"http":{"requestUri":"/2015-03-31/functions/{FunctionName}/versions","responseCode":201},"input":{"type":"structure","required":["FunctionName"],"members":{"FunctionName":{"location":"uri","locationName":"FunctionName"},"CodeSha256":{},"Description":{}}},"output":{"shape":"S1h"}},"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"}}}},"TagResource":{"http":{"requestUri":"/2017-03-31/tags/{ARN}","responseCode":204},"input":{"type":"structure","required":["Resource","Tags"],"members":{"Resource":{"location":"uri","locationName":"ARN"},"Tags":{"shape":"S1e"}}}},"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":{}}},"output":{"shape":"Sg"}},"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"}}},"output":{"shape":"Sn"}},"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":"St"},"S3Bucket":{},"S3Key":{},"S3ObjectVersion":{},"Publish":{"type":"boolean"},"DryRun":{"type":"boolean"}}},"output":{"shape":"S1h"}},"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":"S10"},"Environment":{"shape":"S17"},"Runtime":{},"DeadLetterConfig":{"shape":"S15"},"KMSKeyArn":{},"TracingConfig":{"shape":"S1c"}}},"output":{"shape":"S1h"}}},"shapes":{"Sg":{"type":"structure","members":{"AliasArn":{},"Name":{},"FunctionVersion":{},"Description":{}}},"Sn":{"type":"structure","members":{"UUID":{},"BatchSize":{"type":"integer"},"EventSourceArn":{},"FunctionArn":{},"LastModified":{"type":"timestamp"},"LastProcessingResult":{},"State":{},"StateTransitionReason":{}}},"St":{"type":"blob","sensitive":true},"S10":{"type":"structure","members":{"SubnetIds":{"shape":"S11"},"SecurityGroupIds":{"shape":"S13"}}},"S11":{"type":"list","member":{}},"S13":{"type":"list","member":{}},"S15":{"type":"structure","members":{"TargetArn":{}}},"S17":{"type":"structure","members":{"Variables":{"shape":"S18"}}},"S18":{"type":"map","key":{"type":"string","sensitive":true},"value":{"type":"string","sensitive":true},"sensitive":true},"S1c":{"type":"structure","members":{"Mode":{}}},"S1e":{"type":"map","key":{},"value":{}},"S1h":{"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":"S11"},"SecurityGroupIds":{"shape":"S13"},"VpcId":{}}},"DeadLetterConfig":{"shape":"S15"},"Environment":{"type":"structure","members":{"Variables":{"shape":"S18"},"Error":{"type":"structure","members":{"ErrorCode":{},"Message":{"type":"string","sensitive":true}}}}},"KMSKeyArn":{},"TracingConfig":{"type":"structure","members":{"Mode":{}}},"MasterArn":{}}},"S2r":{"type":"list","member":{"shape":"S1h"}}}}

/***/ }),
/* 248 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListEventSourceMappings":{"input_token":"Marker","limit_key":"MaxItems","output_token":"NextMarker","result_key":"EventSourceMappings"},"ListFunctions":{"input_token":"Marker","limit_key":"MaxItems","output_token":"NextMarker","result_key":"Functions"}}}

/***/ }),
/* 249 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(250);
	    model.paginators = __webpack_require__(251).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.LexRuntime;


/***/ }),
/* 250 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-28","endpointPrefix":"runtime.lex","jsonVersion":"1.1","protocol":"rest-json","serviceFullName":"Amazon Lex Runtime Service","signatureVersion":"v4","signingName":"lex","uid":"runtime.lex-2016-11-28"},"operations":{"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":{"jsonvalue":true,"location":"header","locationName":"x-amz-lex-session-attributes"},"contentType":{"location":"header","locationName":"Content-Type"},"accept":{"location":"header","locationName":"Accept"},"inputStream":{"shape":"S8"}},"payload":"inputStream"},"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":{"location":"header","locationName":"x-amz-lex-message"},"dialogState":{"location":"header","locationName":"x-amz-lex-dialog-state"},"slotToElicit":{"location":"header","locationName":"x-amz-lex-slot-to-elicit"},"inputTranscript":{"location":"header","locationName":"x-amz-lex-input-transcript"},"audioStream":{"shape":"S8"}},"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":"Se"},"inputText":{}}},"output":{"type":"structure","members":{"intentName":{},"slots":{"shape":"Se"},"sessionAttributes":{"shape":"Se"},"message":{},"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":{}}}}}}}}}}}}},"shapes":{"S8":{"type":"blob","streaming":true},"Se":{"type":"map","key":{},"value":{}}}}

/***/ }),
/* 251 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 252 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(253);
	    model.paginators = __webpack_require__(254).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Lightsail;


/***/ }),
/* 253 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-28","endpointPrefix":"lightsail","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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"}}}},"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":"Si"},"instanceName":{}}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"CreateDomain":{"input":{"type":"structure","required":["domainName"],"members":{"domainName":{}}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"CreateDomainEntry":{"input":{"type":"structure","required":["domainName","domainEntry"],"members":{"domainName":{},"domainEntry":{"shape":"Sq"}}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"CreateInstanceSnapshot":{"input":{"type":"structure","required":["instanceSnapshotName","instanceName"],"members":{"instanceSnapshotName":{},"instanceName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"CreateInstances":{"input":{"type":"structure","required":["instanceNames","availabilityZone","blueprintId","bundleId"],"members":{"instanceNames":{"shape":"Sy"},"availabilityZone":{},"customImageName":{"deprecated":true},"blueprintId":{},"bundleId":{},"userData":{},"keyPairName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"CreateInstancesFromSnapshot":{"input":{"type":"structure","required":["instanceNames","availabilityZone","instanceSnapshotName","bundleId"],"members":{"instanceNames":{"shape":"Sy"},"availabilityZone":{},"instanceSnapshotName":{},"bundleId":{},"userData":{},"keyPairName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"CreateKeyPair":{"input":{"type":"structure","required":["keyPairName"],"members":{"keyPairName":{}}},"output":{"type":"structure","members":{"keyPair":{"shape":"S14"},"publicKeyBase64":{},"privateKeyBase64":{},"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":"Sq"}}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"DeleteInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"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"}}}},"DetachStaticIp":{"input":{"type":"structure","required":["staticIpName"],"members":{"staticIpName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"DownloadDefaultKeyPair":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"publicKeyBase64":{},"privateKeyBase64":{}}}},"GetActiveNames":{"input":{"type":"structure","members":{"pageToken":{}}},"output":{"type":"structure","members":{"activeNames":{"shape":"Sy"},"nextPageToken":{}}}},"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":{}}}},"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"}}}},"nextPageToken":{}}}},"GetDomain":{"input":{"type":"structure","required":["domainName"],"members":{"domainName":{}}},"output":{"type":"structure","members":{"domain":{"shape":"S1z"}}}},"GetDomains":{"input":{"type":"structure","members":{"pageToken":{}}},"output":{"type":"structure","members":{"domains":{"type":"list","member":{"shape":"S1z"}},"nextPageToken":{}}}},"GetInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"output":{"type":"structure","members":{"instance":{"shape":"S26"}}}},"GetInstanceAccessDetails":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{},"protocol":{}}},"output":{"type":"structure","members":{"accessDetails":{"type":"structure","members":{"certKey":{},"expiresAt":{"type":"timestamp"},"ipAddress":{},"password":{},"privateKey":{},"protocol":{},"instanceName":{},"username":{}}}}}},"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":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"metricName":{},"metricData":{"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":{}}}}}}},"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":{}}}}}}},"GetInstanceSnapshot":{"input":{"type":"structure","required":["instanceSnapshotName"],"members":{"instanceSnapshotName":{}}},"output":{"type":"structure","members":{"instanceSnapshot":{"shape":"S35"}}}},"GetInstanceSnapshots":{"input":{"type":"structure","members":{"pageToken":{}}},"output":{"type":"structure","members":{"instanceSnapshots":{"type":"list","member":{"shape":"S35"}},"nextPageToken":{}}}},"GetInstanceState":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"output":{"type":"structure","members":{"state":{"shape":"S2i"}}}},"GetInstances":{"input":{"type":"structure","members":{"pageToken":{}}},"output":{"type":"structure","members":{"instances":{"type":"list","member":{"shape":"S26"}},"nextPageToken":{}}}},"GetKeyPair":{"input":{"type":"structure","required":["keyPairName"],"members":{"keyPairName":{}}},"output":{"type":"structure","members":{"keyPair":{"shape":"S14"}}}},"GetKeyPairs":{"input":{"type":"structure","members":{"pageToken":{}}},"output":{"type":"structure","members":{"keyPairs":{"type":"list","member":{"shape":"S14"}},"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"}}},"output":{"type":"structure","members":{"regions":{"type":"list","member":{"type":"structure","members":{"continentCode":{},"description":{},"displayName":{},"name":{},"availabilityZones":{"type":"list","member":{"type":"structure","members":{"zoneName":{},"state":{}}}}}}}}}},"GetStaticIp":{"input":{"type":"structure","required":["staticIpName"],"members":{"staticIpName":{}}},"output":{"type":"structure","members":{"staticIp":{"shape":"S3y"}}}},"GetStaticIps":{"input":{"type":"structure","members":{"pageToken":{}}},"output":{"type":"structure","members":{"staticIps":{"type":"list","member":{"shape":"S3y"}},"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":"Si"},"instanceName":{}}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"PeerVpc":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"PutInstancePublicPorts":{"input":{"type":"structure","required":["portInfos","instanceName"],"members":{"portInfos":{"type":"list","member":{"shape":"Si"}},"instanceName":{}}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"RebootInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"ReleaseStaticIp":{"input":{"type":"structure","required":["staticIpName"],"members":{"staticIpName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"StartInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"StopInstance":{"input":{"type":"structure","required":["instanceName"],"members":{"instanceName":{}}},"output":{"type":"structure","members":{"operations":{"shape":"S4"}}}},"UnpeerVpc":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"operation":{"shape":"S5"}}}},"UpdateDomainEntry":{"input":{"type":"structure","required":["domainName","domainEntry"],"members":{"domainName":{},"domainEntry":{"shape":"Sq"}}},"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":{}}},"Si":{"type":"structure","members":{"fromPort":{"type":"integer"},"toPort":{"type":"integer"},"protocol":{}}},"Sq":{"type":"structure","members":{"id":{},"name":{},"target":{},"type":{},"options":{"type":"map","key":{},"value":{}}}},"Sy":{"type":"list","member":{}},"S14":{"type":"structure","members":{"name":{},"arn":{},"supportCode":{},"createdAt":{"type":"timestamp"},"location":{"shape":"S9"},"resourceType":{},"fingerprint":{}}},"S1z":{"type":"structure","members":{"name":{},"arn":{},"supportCode":{},"createdAt":{"type":"timestamp"},"location":{"shape":"S9"},"resourceType":{},"domainEntries":{"type":"list","member":{"shape":"Sq"}}}},"S26":{"type":"structure","members":{"name":{},"arn":{},"supportCode":{},"createdAt":{"type":"timestamp"},"location":{"shape":"S9"},"resourceType":{},"blueprintId":{},"blueprintName":{},"bundleId":{},"isStaticIp":{"type":"boolean"},"privateIpAddress":{},"publicIpAddress":{},"ipv6Address":{},"hardware":{"type":"structure","members":{"cpuCount":{"type":"integer"},"disks":{"type":"list","member":{"type":"structure","members":{"name":{},"arn":{},"supportCode":{},"createdAt":{"type":"timestamp"},"location":{"shape":"S9"},"resourceType":{},"sizeInGb":{"type":"integer"},"gbInUse":{"type":"integer"},"isSystemDisk":{"type":"boolean"},"iops":{"type":"integer"},"path":{},"attachedTo":{},"isAttached":{"type":"boolean"},"attachmentState":{}}}},"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":{}}}}}},"state":{"shape":"S2i"},"username":{},"sshKeyName":{}}},"S2i":{"type":"structure","members":{"code":{"type":"integer"},"name":{}}},"S35":{"type":"structure","members":{"name":{},"arn":{},"supportCode":{},"createdAt":{"type":"timestamp"},"location":{"shape":"S9"},"resourceType":{},"state":{},"progress":{},"fromInstanceName":{},"fromInstanceArn":{},"fromBlueprintId":{},"fromBundleId":{},"sizeInGb":{"type":"integer"}}},"S3y":{"type":"structure","members":{"name":{},"arn":{},"supportCode":{},"createdAt":{"type":"timestamp"},"location":{"shape":"S9"},"resourceType":{},"ipAddress":{},"attachedTo":{},"isAttached":{"type":"boolean"}}}}}

/***/ }),
/* 254 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 255 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['machinelearning'] = {};
	AWS.MachineLearning = Service.defineService('machinelearning', ['2014-12-12']);
	__webpack_require__(256);
	Object.defineProperty(apiLoader.services['machinelearning'], '2014-12-12', {
	  get: function get() {
	    var model = __webpack_require__(257);
	    model.paginators = __webpack_require__(258).pagination;
	    model.waiters = __webpack_require__(259).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.MachineLearning;


/***/ }),
/* 256 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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);
	    }
	  }

	});


/***/ }),
/* 257 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"machinelearning-2014-12-12","apiVersion":"2014-12-12","endpointPrefix":"machinelearning","jsonVersion":"1.1","serviceFullName":"Amazon Machine Learning","signatureVersion":"v4","targetPrefix":"AmazonML_20141212","protocol":"json"},"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":{}}}}},"examples":{}}

/***/ }),
/* 258 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeBatchPredictions":{"limit_key":"Limit","output_token":"NextToken","input_token":"NextToken","result_key":"Results"},"DescribeDataSources":{"limit_key":"Limit","output_token":"NextToken","input_token":"NextToken","result_key":"Results"},"DescribeEvaluations":{"limit_key":"Limit","output_token":"NextToken","input_token":"NextToken","result_key":"Results"},"DescribeMLModels":{"limit_key":"Limit","output_token":"NextToken","input_token":"NextToken","result_key":"Results"}}}

/***/ }),
/* 259 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 260 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(261);
	    model.paginators = __webpack_require__(262).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.MarketplaceCommerceAnalytics;


/***/ }),
/* 261 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-07-01","endpointPrefix":"marketplacecommerceanalytics","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}}}

/***/ }),
/* 262 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 263 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(264);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.MarketplaceMetering;


/***/ }),
/* 264 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"meteringmarketplace-2016-01-14","apiVersion":"2016-01-14","endpointPrefix":"metering.marketplace","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWSMarketplace Metering","signatureVersion":"v4","signingName":"aws-marketplace","targetPrefix":"AWSMPMeteringService"},"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","UsageQuantity","DryRun"],"members":{"ProductCode":{},"Timestamp":{"type":"timestamp"},"UsageDimension":{},"UsageQuantity":{"type":"integer"},"DryRun":{"type":"boolean"}}},"output":{"type":"structure","members":{"MeteringRecordId":{}}}},"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","Quantity"],"members":{"Timestamp":{"type":"timestamp"},"CustomerIdentifier":{},"Dimension":{},"Quantity":{"type":"integer"}}}}}

/***/ }),
/* 265 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(266);
	    model.paginators = __webpack_require__(267).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.MTurk;


/***/ }),
/* 266 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-01-17","endpointPrefix":"mturk-requester","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon MTurk","serviceFullName":"Amazon Mechanical Turk","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"],"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":"Sp"},"HITReviewPolicy":{"shape":"Sp"},"HITLayoutId":{},"HITLayoutParameters":{"shape":"Sv"}}},"output":{"type":"structure","members":{"HIT":{"shape":"Sy"}}}},"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":"Sp"},"HITReviewPolicy":{"shape":"Sp"},"HITLayoutId":{},"HITLayoutParameters":{"shape":"Sv"}}},"output":{"type":"structure","members":{"HIT":{"shape":"Sy"}}}},"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":"S19"}}}},"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":"S1o"},"HIT":{"shape":"Sy"}}},"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":"Sy"}}},"idempotent":true},"GetQualificationScore":{"input":{"type":"structure","required":["QualificationTypeId","WorkerId"],"members":{"QualificationTypeId":{},"WorkerId":{}}},"output":{"type":"structure","members":{"Qualification":{"shape":"S1w"}}},"idempotent":true},"GetQualificationType":{"input":{"type":"structure","required":["QualificationTypeId"],"members":{"QualificationTypeId":{}}},"output":{"type":"structure","members":{"QualificationType":{"shape":"S19"}}},"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":"S1o"}}}},"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":"S2c"}}},"idempotent":true},"ListHITsForQualificationType":{"input":{"type":"structure","required":["QualificationTypeId"],"members":{"QualificationTypeId":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"NextToken":{},"NumResults":{"type":"integer"},"HITs":{"shape":"S2c"}}},"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":"S19"}}}},"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":"Sp"},"HITReviewPolicy":{"shape":"Sp"},"AssignmentReviewReport":{"shape":"S2q"},"HITReviewReport":{"shape":"S2q"},"NextToken":{}}},"idempotent":true},"ListReviewableHITs":{"input":{"type":"structure","members":{"HITTypeId":{},"Status":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"NextToken":{},"NumResults":{"type":"integer"},"HITs":{"shape":"S2c"}}},"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":"S1w"}}}},"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"],"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"],"members":{"WorkerId":{},"BonusAmount":{},"AssignmentId":{},"Reason":{},"UniqueRequestToken":{}}},"output":{"type":"structure","members":{}}},"SendTestEventNotification":{"input":{"type":"structure","required":["Notification","TestEventType"],"members":{"Notification":{"shape":"S3j"},"TestEventType":{}}},"output":{"type":"structure","members":{}}},"UpdateExpirationForHIT":{"input":{"type":"structure","required":["HITId"],"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":"S3j"},"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":"S19"}}}}},"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":{"type":"boolean"}}}},"Sn":{"type":"structure","required":["Country"],"members":{"Country":{},"Subdivision":{}}},"Sp":{"type":"structure","members":{"PolicyName":{},"Parameters":{"type":"list","member":{"type":"structure","members":{"Key":{},"Values":{"shape":"Ss"},"MapEntries":{"type":"list","member":{"type":"structure","members":{"Key":{},"Values":{"shape":"Ss"}}}}}}}}},"Ss":{"type":"list","member":{}},"Sv":{"type":"list","member":{"type":"structure","members":{"Name":{},"Value":{}}}},"Sy":{"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"}}},"S19":{"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"}}},"S1o":{"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":{}}},"S1w":{"type":"structure","members":{"QualificationTypeId":{},"WorkerId":{},"GrantTime":{"type":"timestamp"},"IntegerValue":{"type":"integer"},"LocaleValue":{"shape":"Sn"},"Status":{}}},"S2c":{"type":"list","member":{"shape":"Sy"}},"S2q":{"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":{}}}}}},"S3j":{"type":"structure","required":["Destination","Transport"],"members":{"Destination":{},"Transport":{},"Version":{},"EventTypes":{"type":"list","member":{}}}}}}

/***/ }),
/* 267 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 268 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(269);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.MobileAnalytics;


/***/ }),
/* 269 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-06-05","endpointPrefix":"mobileanalytics","serviceFullName":"Amazon 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":{}}

/***/ }),
/* 270 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(271);
	    model.paginators = __webpack_require__(272).pagination;
	    model.waiters = __webpack_require__(273).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.OpsWorks;


/***/ }),
/* 271 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-02-18","endpointPrefix":"opsworks","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}}}}},"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"},"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":"S46"}}}}}}},"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"}}}}}}},"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":"S4v"},"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":"S46"}}}},"StartInstance":{"input":{"type":"structure","required":["InstanceId"],"members":{"InstanceId":{}}}},"StartStack":{"input":{"type":"structure","required":["StackId"],"members":{"StackId":{}}}},"StopInstance":{"input":{"type":"structure","required":["InstanceId"],"members":{"InstanceId":{}}}},"StopStack":{"input":{"type":"structure","required":["StackId"],"members":{"StackId":{}}}},"TagResource":{"input":{"type":"structure","required":["ResourceArn","Tags"],"members":{"ResourceArn":{},"Tags":{"shape":"S4v"}}}},"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"}}}},"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"}}},"S46":{"type":"structure","members":{"Monday":{"shape":"S47"},"Tuesday":{"shape":"S47"},"Wednesday":{"shape":"S47"},"Thursday":{"shape":"S47"},"Friday":{"shape":"S47"},"Saturday":{"shape":"S47"},"Sunday":{"shape":"S47"}}},"S47":{"type":"map","key":{},"value":{}},"S4v":{"type":"map","key":{},"value":{}}}}

/***/ }),
/* 272 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 273 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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":"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"},{"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"}]}}}

/***/ }),
/* 274 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(275);
	    model.paginators = __webpack_require__(276).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.OpsWorksCM;


/***/ }),
/* 275 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-01","endpointPrefix":"opsworks-cm","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"OpsWorksCM","serviceFullName":"AWS OpsWorks for Chef Automate","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":{}}},"output":{"type":"structure","members":{"Backup":{"shape":"Sd"}}}},"CreateServer":{"input":{"type":"structure","required":["ServerName","InstanceProfileArn","InstanceType","ServiceRoleArn"],"members":{"AssociatePublicIpAddress":{"type":"boolean"},"DisableAutomatedBackup":{"type":"boolean"},"Engine":{},"EngineModel":{},"EngineVersion":{},"EngineAttributes":{"shape":"S4"},"BackupRetentionCount":{"type":"integer"},"ServerName":{},"InstanceProfileArn":{},"InstanceType":{},"KeyPair":{},"PreferredMaintenanceWindow":{},"PreferredBackupWindow":{},"SecurityGroupIds":{"shape":"Sj"},"ServiceRoleArn":{},"SubnetIds":{"shape":"Sj"},"BackupId":{}}},"output":{"type":"structure","members":{"Server":{"shape":"Ss"}}}},"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":"Sd"}},"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":{}}}},"DescribeServers":{"input":{"type":"structure","members":{"ServerName":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Servers":{"type":"list","member":{"shape":"Ss"}},"NextToken":{}}}},"DisassociateNode":{"input":{"type":"structure","required":["ServerName","NodeName"],"members":{"ServerName":{},"NodeName":{},"EngineAttributes":{"shape":"S4"}}},"output":{"type":"structure","members":{"NodeAssociationStatusToken":{}}}},"RestoreServer":{"input":{"type":"structure","required":["BackupId","ServerName"],"members":{"BackupId":{},"ServerName":{},"InstanceType":{},"KeyPair":{}}},"output":{"type":"structure","members":{}}},"StartMaintenance":{"input":{"type":"structure","required":["ServerName"],"members":{"ServerName":{}}},"output":{"type":"structure","members":{"Server":{"shape":"Ss"}}}},"UpdateServer":{"input":{"type":"structure","required":["ServerName"],"members":{"DisableAutomatedBackup":{"type":"boolean"},"BackupRetentionCount":{"type":"integer"},"ServerName":{},"PreferredMaintenanceWindow":{},"PreferredBackupWindow":{}}},"output":{"type":"structure","members":{"Server":{"shape":"Ss"}}}},"UpdateServerEngineAttributes":{"input":{"type":"structure","required":["ServerName","AttributeName"],"members":{"ServerName":{},"AttributeName":{},"AttributeValue":{}}},"output":{"type":"structure","members":{"Server":{"shape":"Ss"}}}}},"shapes":{"S4":{"type":"list","member":{"type":"structure","members":{"Name":{},"Value":{"type":"string","sensitive":true}}}},"Sd":{"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":"Sj"},"ServerName":{},"ServiceRoleArn":{},"Status":{},"StatusDescription":{},"SubnetIds":{"shape":"Sj"},"ToolsVersion":{},"UserArn":{}}},"Sj":{"type":"list","member":{}},"Ss":{"type":"structure","members":{"AssociatePublicIpAddress":{"type":"boolean"},"BackupRetentionCount":{"type":"integer"},"ServerName":{},"CreatedAt":{"type":"timestamp"},"CloudFormationStackArn":{},"DisableAutomatedBackup":{"type":"boolean"},"Endpoint":{},"Engine":{},"EngineModel":{},"EngineAttributes":{"shape":"S4"},"EngineVersion":{},"InstanceProfileArn":{},"InstanceType":{},"KeyPair":{},"MaintenanceStatus":{},"PreferredMaintenanceWindow":{},"PreferredBackupWindow":{},"SecurityGroupIds":{"shape":"Sj"},"ServiceRoleArn":{},"Status":{},"StatusReason":{},"SubnetIds":{"shape":"Sj"},"ServerArn":{}}}}}

/***/ }),
/* 276 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 277 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(278);
	    model.paginators = __webpack_require__(279).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Organizations;


/***/ }),
/* 278 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-28","endpointPrefix":"organizations","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Organizations","serviceFullName":"AWS Organizations","signatureVersion":"v4","targetPrefix":"AWSOrganizationsV20161128","timestampFormat":"unixTimestamp","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":{}}},"output":{"type":"structure","members":{"CreateAccountStatus":{"shape":"Ss"}}}},"CreateOrganization":{"input":{"type":"structure","members":{"FeatureSet":{}}},"output":{"type":"structure","members":{"Organization":{"shape":"S10"}}}},"CreateOrganizationalUnit":{"input":{"type":"structure","required":["ParentId","Name"],"members":{"ParentId":{},"Name":{}}},"output":{"type":"structure","members":{"OrganizationalUnit":{"shape":"S1c"}}}},"CreatePolicy":{"input":{"type":"structure","required":["Content","Description","Name","Type"],"members":{"Content":{},"Description":{},"Name":{},"Type":{}}},"output":{"type":"structure","members":{"Policy":{"shape":"S1k"}}}},"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":{}}}},"DescribeAccount":{"input":{"type":"structure","required":["AccountId"],"members":{"AccountId":{}}},"output":{"type":"structure","members":{"Account":{"shape":"S1u"}}}},"DescribeCreateAccountStatus":{"input":{"type":"structure","required":["CreateAccountRequestId"],"members":{"CreateAccountRequestId":{}}},"output":{"type":"structure","members":{"CreateAccountStatus":{"shape":"Ss"}}}},"DescribeHandshake":{"input":{"type":"structure","required":["HandshakeId"],"members":{"HandshakeId":{}}},"output":{"type":"structure","members":{"Handshake":{"shape":"S4"}}}},"DescribeOrganization":{"output":{"type":"structure","members":{"Organization":{"shape":"S10"}}}},"DescribeOrganizationalUnit":{"input":{"type":"structure","required":["OrganizationalUnitId"],"members":{"OrganizationalUnitId":{}}},"output":{"type":"structure","members":{"OrganizationalUnit":{"shape":"S1c"}}}},"DescribePolicy":{"input":{"type":"structure","required":["PolicyId"],"members":{"PolicyId":{}}},"output":{"type":"structure","members":{"Policy":{"shape":"S1k"}}}},"DetachPolicy":{"input":{"type":"structure","required":["PolicyId","TargetId"],"members":{"PolicyId":{},"TargetId":{}}}},"DisablePolicyType":{"input":{"type":"structure","required":["RootId","PolicyType"],"members":{"RootId":{},"PolicyType":{}}},"output":{"type":"structure","members":{"Root":{"shape":"S2a"}}}},"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":"S2a"}}}},"InviteAccountToOrganization":{"input":{"type":"structure","required":["Target"],"members":{"Target":{"shape":"S7"},"Notes":{"type":"string","sensitive":true}}},"output":{"type":"structure","members":{"Handshake":{"shape":"S4"}}}},"LeaveOrganization":{},"ListAccounts":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Accounts":{"shape":"S2o"},"NextToken":{}}}},"ListAccountsForParent":{"input":{"type":"structure","required":["ParentId"],"members":{"ParentId":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Accounts":{"shape":"S2o"},"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":"Ss"}},"NextToken":{}}}},"ListHandshakesForAccount":{"input":{"type":"structure","members":{"Filter":{"shape":"S32"},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Handshakes":{"shape":"S34"},"NextToken":{}}}},"ListHandshakesForOrganization":{"input":{"type":"structure","members":{"Filter":{"shape":"S32"},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Handshakes":{"shape":"S34"},"NextToken":{}}}},"ListOrganizationalUnitsForParent":{"input":{"type":"structure","required":["ParentId"],"members":{"ParentId":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"OrganizationalUnits":{"type":"list","member":{"shape":"S1c"}},"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":"S3h"},"NextToken":{}}}},"ListPoliciesForTarget":{"input":{"type":"structure","required":["TargetId","Filter"],"members":{"TargetId":{},"Filter":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Policies":{"shape":"S3h"},"NextToken":{}}}},"ListRoots":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Roots":{"type":"list","member":{"shape":"S2a"}},"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":{}}}},"RemoveAccountFromOrganization":{"input":{"type":"structure","required":["AccountId"],"members":{"AccountId":{}}}},"UpdateOrganizationalUnit":{"input":{"type":"structure","required":["OrganizationalUnitId"],"members":{"OrganizationalUnitId":{},"Name":{}}},"output":{"type":"structure","members":{"OrganizationalUnit":{"shape":"S1c"}}}},"UpdatePolicy":{"input":{"type":"structure","required":["PolicyId"],"members":{"PolicyId":{},"Name":{},"Description":{},"Content":{}}},"output":{"type":"structure","members":{"Policy":{"shape":"S1k"}}}}},"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","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},"Ss":{"type":"structure","members":{"Id":{},"AccountName":{"shape":"So"},"State":{},"RequestedTimestamp":{"type":"timestamp"},"CompletedTimestamp":{"type":"timestamp"},"AccountId":{},"FailureReason":{}}},"S10":{"type":"structure","members":{"Id":{},"Arn":{},"FeatureSet":{},"MasterAccountArn":{},"MasterAccountId":{},"MasterAccountEmail":{"shape":"Sn"},"AvailablePolicyTypes":{"shape":"S14"}}},"S14":{"type":"list","member":{"type":"structure","members":{"Type":{},"Status":{}}}},"S1c":{"type":"structure","members":{"Id":{},"Arn":{},"Name":{}}},"S1k":{"type":"structure","members":{"PolicySummary":{"shape":"S1l"},"Content":{}}},"S1l":{"type":"structure","members":{"Id":{},"Arn":{},"Name":{},"Description":{},"Type":{},"AwsManaged":{"type":"boolean"}}},"S1u":{"type":"structure","members":{"Id":{},"Arn":{},"Email":{"shape":"Sn"},"Name":{"shape":"So"},"Status":{},"JoinedMethod":{},"JoinedTimestamp":{"type":"timestamp"}}},"S2a":{"type":"structure","members":{"Id":{},"Arn":{},"Name":{},"PolicyTypes":{"shape":"S14"}}},"S2o":{"type":"list","member":{"shape":"S1u"}},"S32":{"type":"structure","members":{"ActionType":{},"ParentHandshakeId":{}}},"S34":{"type":"list","member":{"shape":"S4"}},"S3h":{"type":"list","member":{"shape":"S1l"}}}}

/***/ }),
/* 279 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListAccounts":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListAccountsForParent":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListChildren":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListCreateAccountStatus":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListHandshakesForAccount":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListHandshakesForOrganization":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListOrganizationalUnitsForParent":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListParents":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListPolicies":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListPoliciesForTarget":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListRoots":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListTargetsForPolicy":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"}}}

/***/ }),
/* 280 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(281);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Pinpoint;


/***/ }),
/* 281 */
/***/ (function(module, exports) {

	module.exports = {"metadata":{"apiVersion":"2016-12-01","endpointPrefix":"pinpoint","signingName":"mobiletargeting","signatureVersion":"v4","serviceFullName":"Amazon Pinpoint","protocol":"rest-json","jsonVersion":"1.1"},"operations":{"CreateCampaign":{"http":{"requestUri":"/v1/apps/{application-id}/campaigns","responseCode":201},"input":{"type":"structure","members":{"ApplicationId":{"location":"uri","locationName":"application-id"},"WriteCampaignRequest":{"shape":"S3"}},"required":["ApplicationId","WriteCampaignRequest"],"payload":"WriteCampaignRequest"},"output":{"type":"structure","members":{"CampaignResponse":{"shape":"Sj"}},"required":["CampaignResponse"],"payload":"CampaignResponse"}},"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":["ApplicationId","ImportJobRequest"],"payload":"ImportJobRequest"},"output":{"type":"structure","members":{"ImportJobResponse":{"shape":"Ss"}},"required":["ImportJobResponse"],"payload":"ImportJobResponse"}},"CreateSegment":{"http":{"requestUri":"/v1/apps/{application-id}/segments","responseCode":201},"input":{"type":"structure","members":{"ApplicationId":{"location":"uri","locationName":"application-id"},"WriteSegmentRequest":{"shape":"Sx"}},"required":["ApplicationId","WriteSegmentRequest"],"payload":"WriteSegmentRequest"},"output":{"type":"structure","members":{"SegmentResponse":{"shape":"S1b"}},"required":["SegmentResponse"],"payload":"SegmentResponse"}},"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":"S1h"}},"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":"S1k"}},"required":["APNSSandboxChannelResponse"],"payload":"APNSSandboxChannelResponse"}},"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":"Sj"}},"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":"S1p"}},"required":["EmailChannelResponse"],"payload":"EmailChannelResponse"}},"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":"S1s"}},"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":"S1v"}},"required":["GCMChannelResponse"],"payload":"GCMChannelResponse"}},"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":"S1b"}},"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":"S20"}},"required":["SMSChannelResponse"],"payload":"SMSChannelResponse"}},"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":"S1h"}},"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":"S1k"}},"required":["APNSSandboxChannelResponse"],"payload":"APNSSandboxChannelResponse"}},"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":"S27"}},"required":["ApplicationSettingsResource"],"payload":"ApplicationSettingsResource"}},"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":"Sj"}},"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":["ActivitiesResponse"],"payload":"ActivitiesResponse"}},"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":"Sj"}},"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":"S2j"}},"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":"S2j"}},"required":["CampaignsResponse"],"payload":"CampaignsResponse"}},"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":"S1p"}},"required":["EmailChannelResponse"],"payload":"EmailChannelResponse"}},"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":{"type":"structure","members":{"Address":{},"ApplicationId":{},"Attributes":{"shape":"S2s"},"ChannelType":{},"CohortId":{},"CreationDate":{},"Demographic":{"shape":"S2u"},"EffectiveDate":{},"EndpointStatus":{},"Id":{},"Location":{"shape":"S2v"},"Metrics":{"shape":"S2x"},"OptOut":{},"RequestId":{},"User":{"shape":"S2y"},"ShardId":{}}}},"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":"S1s"}},"required":["EventStream"],"payload":"EventStream"}},"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":"S1v"}},"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":"Ss"}},"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":"S37"}},"required":["ImportJobsResponse"],"payload":"ImportJobsResponse"}},"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":"S1b"}},"required":["SegmentResponse"],"payload":"SegmentResponse"}},"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":"S37"}},"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":"S1b"}},"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":"S3h"}},"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":"S3h"}},"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":"S20"}},"required":["SMSChannelResponse"],"payload":"SMSChannelResponse"}},"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":{},"ExternalId":{},"RoleArn":{}}}},"required":["ApplicationId","WriteEventStream"],"payload":"WriteEventStream"},"output":{"type":"structure","members":{"EventStream":{"shape":"S1s"}},"required":["EventStream"],"payload":"EventStream"}},"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":"S3u"},"RawContent":{},"Substitutions":{"shape":"S2s"},"TitleOverride":{}}}},"Context":{"shape":"S3u"},"MessageConfiguration":{"type":"structure","members":{"APNSMessage":{"type":"structure","members":{"Action":{},"Badge":{"type":"integer"},"Body":{},"Category":{},"Data":{"shape":"S3u"},"MediaUrl":{},"RawContent":{},"SilentPush":{"type":"boolean"},"Sound":{},"Substitutions":{"shape":"S2s"},"ThreadId":{},"Title":{},"Url":{}}},"DefaultMessage":{"type":"structure","members":{"Body":{},"Substitutions":{"shape":"S2s"}}},"DefaultPushNotificationMessage":{"type":"structure","members":{"Action":{},"Body":{},"Data":{"shape":"S3u"},"SilentPush":{"type":"boolean"},"Substitutions":{"shape":"S2s"},"Title":{},"Url":{}}},"GCMMessage":{"type":"structure","members":{"Action":{},"Body":{},"CollapseKey":{},"Data":{"shape":"S3u"},"IconReference":{},"ImageIconUrl":{},"ImageUrl":{},"RawContent":{},"RestrictedPackageName":{},"SilentPush":{"type":"boolean"},"SmallImageIconUrl":{},"Sound":{},"Substitutions":{"shape":"S2s"},"Title":{},"Url":{}}},"SMSMessage":{"type":"structure","members":{"Body":{},"MessageType":{},"SenderId":{},"Substitutions":{"shape":"S2s"}}}}}}}},"required":["ApplicationId","MessageRequest"],"payload":"MessageRequest"},"output":{"type":"structure","members":{"MessageResponse":{"type":"structure","members":{"ApplicationId":{},"RequestId":{},"Result":{"type":"map","key":{},"value":{"type":"structure","members":{"DeliveryStatus":{},"StatusCode":{"type":"integer"},"StatusMessage":{},"UpdatedToken":{}}}}}}},"required":["MessageResponse"],"payload":"MessageResponse"}},"UpdateApnsChannel":{"http":{"method":"PUT","requestUri":"/v1/apps/{application-id}/channels/apns","responseCode":200},"input":{"type":"structure","members":{"APNSChannelRequest":{"type":"structure","members":{"Certificate":{},"Enabled":{"type":"boolean"},"PrivateKey":{}}},"ApplicationId":{"location":"uri","locationName":"application-id"}},"required":["ApplicationId","APNSChannelRequest"],"payload":"APNSChannelRequest"},"output":{"type":"structure","members":{"APNSChannelResponse":{"shape":"S1h"}},"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":{"Certificate":{},"Enabled":{"type":"boolean"},"PrivateKey":{}}},"ApplicationId":{"location":"uri","locationName":"application-id"}},"required":["ApplicationId","APNSSandboxChannelRequest"],"payload":"APNSSandboxChannelRequest"},"output":{"type":"structure","members":{"APNSSandboxChannelResponse":{"shape":"S1k"}},"required":["APNSSandboxChannelResponse"],"payload":"APNSSandboxChannelResponse"}},"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":{"Limits":{"shape":"Sh"},"QuietTime":{"shape":"Sf"}}}},"required":["ApplicationId","WriteApplicationSettingsRequest"],"payload":"WriteApplicationSettingsRequest"},"output":{"type":"structure","members":{"ApplicationSettingsResource":{"shape":"S27"}},"required":["ApplicationSettingsResource"],"payload":"ApplicationSettingsResource"}},"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":"S3"}},"required":["CampaignId","ApplicationId","WriteCampaignRequest"],"payload":"WriteCampaignRequest"},"output":{"type":"structure","members":{"CampaignResponse":{"shape":"Sj"}},"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":{"Enabled":{"type":"boolean"},"FromAddress":{},"Identity":{},"RoleArn":{}}}},"required":["ApplicationId","EmailChannelRequest"],"payload":"EmailChannelRequest"},"output":{"type":"structure","members":{"EmailChannelResponse":{"shape":"S1p"}},"required":["EmailChannelResponse"],"payload":"EmailChannelResponse"}},"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":"S2s"},"ChannelType":{},"Demographic":{"shape":"S2u"},"EffectiveDate":{},"EndpointStatus":{},"Location":{"shape":"S2v"},"Metrics":{"shape":"S2x"},"OptOut":{},"RequestId":{},"User":{"shape":"S2y"}}}},"required":["ApplicationId","EndpointId","EndpointRequest"],"payload":"EndpointRequest"},"output":{"type":"structure","members":{"MessageBody":{"shape":"S4n"}},"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":"S2s"},"ChannelType":{},"Demographic":{"shape":"S2u"},"EffectiveDate":{},"EndpointStatus":{},"Id":{},"Location":{"shape":"S2v"},"Metrics":{"shape":"S2x"},"OptOut":{},"RequestId":{},"User":{"shape":"S2y"}}}}}}},"required":["ApplicationId","EndpointBatchRequest"],"payload":"EndpointBatchRequest"},"output":{"type":"structure","members":{"MessageBody":{"shape":"S4n"}},"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":["ApplicationId","GCMChannelRequest"],"payload":"GCMChannelRequest"},"output":{"type":"structure","members":{"GCMChannelResponse":{"shape":"S1v"}},"required":["GCMChannelResponse"],"payload":"GCMChannelResponse"}},"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":"Sx"}},"required":["SegmentId","ApplicationId","WriteSegmentRequest"],"payload":"WriteSegmentRequest"},"output":{"type":"structure","members":{"SegmentResponse":{"shape":"S1b"}},"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":{}}}},"required":["ApplicationId","SMSChannelRequest"],"payload":"SMSChannelRequest"},"output":{"type":"structure","members":{"SMSChannelResponse":{"shape":"S20"}},"required":["SMSChannelResponse"],"payload":"SMSChannelResponse"}}},"shapes":{"S3":{"type":"structure","members":{"AdditionalTreatments":{"type":"list","member":{"type":"structure","members":{"MessageConfiguration":{"shape":"S6"},"Schedule":{"shape":"Sd"},"SizePercent":{"type":"integer"},"TreatmentDescription":{},"TreatmentName":{}}}},"Description":{},"HoldoutPercent":{"type":"integer"},"IsPaused":{"type":"boolean"},"Limits":{"shape":"Sh"},"MessageConfiguration":{"shape":"S6"},"Name":{},"Schedule":{"shape":"Sd"},"SegmentId":{},"SegmentVersion":{"type":"integer"},"TreatmentDescription":{},"TreatmentName":{}}},"S6":{"type":"structure","members":{"APNSMessage":{"shape":"S7"},"DefaultMessage":{"shape":"S7"},"EmailMessage":{"type":"structure","members":{"Body":{},"HtmlBody":{},"Title":{}}},"GCMMessage":{"shape":"S7"},"SMSMessage":{"type":"structure","members":{"Body":{},"MessageType":{},"SenderId":{}}}}},"S7":{"type":"structure","members":{"Action":{},"Body":{},"ImageIconUrl":{},"ImageSmallIconUrl":{},"ImageUrl":{},"JsonBody":{},"MediaUrl":{},"SilentPush":{"type":"boolean"},"Title":{},"Url":{}}},"Sd":{"type":"structure","members":{"EndTime":{},"Frequency":{},"IsLocalTime":{"type":"boolean"},"QuietTime":{"shape":"Sf"},"StartTime":{},"Timezone":{}}},"Sf":{"type":"structure","members":{"End":{},"Start":{}}},"Sh":{"type":"structure","members":{"Daily":{"type":"integer"},"Total":{"type":"integer"}}},"Sj":{"type":"structure","members":{"AdditionalTreatments":{"type":"list","member":{"type":"structure","members":{"Id":{},"MessageConfiguration":{"shape":"S6"},"Schedule":{"shape":"Sd"},"SizePercent":{"type":"integer"},"State":{"shape":"Sm"},"TreatmentDescription":{},"TreatmentName":{}}}},"ApplicationId":{},"CreationDate":{},"DefaultState":{"shape":"Sm"},"Description":{},"HoldoutPercent":{"type":"integer"},"Id":{},"IsPaused":{"type":"boolean"},"LastModifiedDate":{},"Limits":{"shape":"Sh"},"MessageConfiguration":{"shape":"S6"},"Name":{},"Schedule":{"shape":"Sd"},"SegmentId":{},"SegmentVersion":{"type":"integer"},"State":{"shape":"Sm"},"TreatmentDescription":{},"TreatmentName":{},"Version":{"type":"integer"}}},"Sm":{"type":"structure","members":{"CampaignStatus":{}}},"Ss":{"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":{}}},"FailedPieces":{"type":"integer"},"Failures":{"shape":"Su"},"Id":{},"JobStatus":{},"TotalFailures":{"type":"integer"},"TotalPieces":{"type":"integer"},"TotalProcessed":{"type":"integer"},"Type":{}}},"Su":{"type":"list","member":{}},"Sx":{"type":"structure","members":{"Dimensions":{"shape":"Sy"},"Name":{}}},"Sy":{"type":"structure","members":{"Attributes":{"shape":"Sz"},"Behavior":{"type":"structure","members":{"Recency":{"type":"structure","members":{"Duration":{},"RecencyType":{}}}}},"Demographic":{"type":"structure","members":{"AppVersion":{"shape":"S17"},"Channel":{"shape":"S17"},"DeviceType":{"shape":"S17"},"Make":{"shape":"S17"},"Model":{"shape":"S17"},"Platform":{"shape":"S17"}}},"Location":{"type":"structure","members":{"Country":{"shape":"S17"}}},"UserAttributes":{"shape":"Sz"}}},"Sz":{"type":"map","key":{},"value":{"type":"structure","members":{"AttributeType":{},"Values":{"shape":"Su"}}}},"S17":{"type":"structure","members":{"DimensionType":{},"Values":{"shape":"Su"}}},"S1b":{"type":"structure","members":{"ApplicationId":{},"CreationDate":{},"Dimensions":{"shape":"Sy"},"Id":{},"ImportDefinition":{"type":"structure","members":{"ChannelCounts":{"type":"map","key":{},"value":{"type":"integer"}},"ExternalId":{},"Format":{},"RoleArn":{},"S3Url":{},"Size":{"type":"integer"}}},"LastModifiedDate":{},"Name":{},"SegmentType":{},"Version":{"type":"integer"}}},"S1h":{"type":"structure","members":{"ApplicationId":{},"CreationDate":{},"Enabled":{"type":"boolean"},"Id":{},"IsArchived":{"type":"boolean"},"LastModifiedBy":{},"LastModifiedDate":{},"Platform":{},"Version":{"type":"integer"}}},"S1k":{"type":"structure","members":{"ApplicationId":{},"CreationDate":{},"Enabled":{"type":"boolean"},"Id":{},"IsArchived":{"type":"boolean"},"LastModifiedBy":{},"LastModifiedDate":{},"Platform":{},"Version":{"type":"integer"}}},"S1p":{"type":"structure","members":{"ApplicationId":{},"CreationDate":{},"Enabled":{"type":"boolean"},"FromAddress":{},"Id":{},"Identity":{},"IsArchived":{"type":"boolean"},"LastModifiedBy":{},"LastModifiedDate":{},"Platform":{},"RoleArn":{},"Version":{"type":"integer"}}},"S1s":{"type":"structure","members":{"ApplicationId":{},"DestinationStreamArn":{},"ExternalId":{},"LastModifiedDate":{},"LastUpdatedBy":{},"RoleArn":{}}},"S1v":{"type":"structure","members":{"ApplicationId":{},"CreationDate":{},"Credential":{},"Enabled":{"type":"boolean"},"Id":{},"IsArchived":{"type":"boolean"},"LastModifiedBy":{},"LastModifiedDate":{},"Platform":{},"Version":{"type":"integer"}}},"S20":{"type":"structure","members":{"ApplicationId":{},"CreationDate":{},"Enabled":{"type":"boolean"},"Id":{},"IsArchived":{"type":"boolean"},"LastModifiedBy":{},"LastModifiedDate":{},"Platform":{},"SenderId":{},"ShortCode":{},"Version":{"type":"integer"}}},"S27":{"type":"structure","members":{"ApplicationId":{},"LastModifiedDate":{},"Limits":{"shape":"Sh"},"QuietTime":{"shape":"Sf"}}},"S2j":{"type":"structure","members":{"Item":{"type":"list","member":{"shape":"Sj"}},"NextToken":{}}},"S2s":{"type":"map","key":{},"value":{"shape":"Su"}},"S2u":{"type":"structure","members":{"AppVersion":{},"Locale":{},"Make":{},"Model":{},"ModelVersion":{},"Platform":{},"PlatformVersion":{},"Timezone":{}}},"S2v":{"type":"structure","members":{"City":{},"Country":{},"Latitude":{"type":"double"},"Longitude":{"type":"double"},"PostalCode":{},"Region":{}}},"S2x":{"type":"map","key":{},"value":{"type":"double"}},"S2y":{"type":"structure","members":{"UserAttributes":{"shape":"S2s"},"UserId":{}}},"S37":{"type":"structure","members":{"Item":{"type":"list","member":{"shape":"Ss"}},"NextToken":{}}},"S3h":{"type":"structure","members":{"Item":{"type":"list","member":{"shape":"S1b"}},"NextToken":{}}},"S3u":{"type":"map","key":{},"value":{}},"S4n":{"type":"structure","members":{"Message":{},"RequestID":{}}}}}

/***/ }),
/* 282 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['polly'] = {};
	AWS.Polly = Service.defineService('polly', ['2016-06-10']);
	__webpack_require__(283);
	Object.defineProperty(apiLoader.services['polly'], '2016-06-10', {
	  get: function get() {
	    var model = __webpack_require__(285);
	    model.paginators = __webpack_require__(286).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Polly;


/***/ }),
/* 283 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(284);

/***/ }),
/* 284 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	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);
	    }
	});


/***/ }),
/* 285 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-06-10","endpointPrefix":"polly","protocol":"rest-json","serviceFullName":"Amazon 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":{"shape":"S2","location":"uri","locationName":"LexiconName"}}},"output":{"type":"structure","members":{}}},"DescribeVoices":{"http":{"method":"GET","requestUri":"/v1/voices","responseCode":200},"input":{"type":"structure","members":{"LanguageCode":{"location":"querystring","locationName":"LanguageCode"},"NextToken":{"location":"querystring","locationName":"NextToken"}}},"output":{"type":"structure","members":{"Voices":{"type":"list","member":{"type":"structure","members":{"Gender":{},"Id":{},"LanguageCode":{},"LanguageName":{},"Name":{}}}},"NextToken":{}}}},"GetLexicon":{"http":{"method":"GET","requestUri":"/v1/lexicons/{LexiconName}","responseCode":200},"input":{"type":"structure","required":["Name"],"members":{"Name":{"shape":"S2","location":"uri","locationName":"LexiconName"}}},"output":{"type":"structure","members":{"Lexicon":{"type":"structure","members":{"Content":{},"Name":{"shape":"S2"}}},"LexiconAttributes":{"shape":"Si"}}}},"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":{"shape":"S2"},"Attributes":{"shape":"Si"}}}},"NextToken":{}}}},"PutLexicon":{"http":{"method":"PUT","requestUri":"/v1/lexicons/{LexiconName}","responseCode":200},"input":{"type":"structure","required":["Name","Content"],"members":{"Name":{"shape":"S2","location":"uri","locationName":"LexiconName"},"Content":{}}},"output":{"type":"structure","members":{}}},"SynthesizeSpeech":{"http":{"requestUri":"/v1/speech","responseCode":200},"input":{"type":"structure","required":["OutputFormat","Text","VoiceId"],"members":{"LexiconNames":{"type":"list","member":{"shape":"S2"}},"OutputFormat":{},"SampleRate":{},"SpeechMarkTypes":{"type":"list","member":{}},"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":{"S2":{"type":"string","sensitive":true},"Si":{"type":"structure","members":{"Alphabet":{},"LanguageCode":{},"LastModified":{"type":"timestamp"},"LexiconArn":{},"LexemesCount":{"type":"integer"},"Size":{"type":"integer"}}}}}

/***/ }),
/* 286 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 287 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(288);
	Object.defineProperty(apiLoader.services['rds'], '2013-01-10', {
	  get: function get() {
	    var model = __webpack_require__(290);
	    model.paginators = __webpack_require__(291).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['rds'], '2013-02-12', {
	  get: function get() {
	    var model = __webpack_require__(292);
	    model.paginators = __webpack_require__(293).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['rds'], '2013-09-09', {
	  get: function get() {
	    var model = __webpack_require__(294);
	    model.paginators = __webpack_require__(295).pagination;
	    model.waiters = __webpack_require__(296).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['rds'], '2014-09-01', {
	  get: function get() {
	    var model = __webpack_require__(297);
	    model.paginators = __webpack_require__(298).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});
	Object.defineProperty(apiLoader.services['rds'], '2014-10-31', {
	  get: function get() {
	    var model = __webpack_require__(299);
	    model.paginators = __webpack_require__(300).pagination;
	    model.waiters = __webpack_require__(301).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.RDS;


/***/ }),
/* 288 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	__webpack_require__(289);
	 /**
	  * @api private
	  */
	 var crossRegionOperations = ['copyDBSnapshot', 'createDBInstanceReadReplica', 'createDBCluster', 'copyDBClusterSnapshot'];

	 AWS.util.update(AWS.RDS.prototype, {
	   /**
	    * @api private
	    */
	   setupRequestListeners: function setupRequestListeners(request) {
	     if (crossRegionOperations.indexOf(request.operation) !== -1 &&
	         request.params.SourceRegion) {
	       request.params = AWS.util.copy(request.params);
	       if (request.params.PreSignedUrl ||
	           request.params.SourceRegion === this.config.region) {
	         delete request.params.SourceRegion;
	       } else {
	         var doesParamValidation = !!this.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', this.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();
	       }
	     });
	   }
	 });

/***/ }),
/* 289 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	/**
	 * @api private
	 */
	var service = null;

	/**
	 * @api private
	 */
	var api = {
	    signatureVersion: 'v4',
	    signingName: 'rds-db'
	};

	/**
	 * @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;
	    }
	});

/***/ }),
/* 290 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-01-10","endpointPrefix":"rds","protocol":"query","serviceAbbreviation":"Amazon RDS","serviceFullName":"Amazon Relational Database Service","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":{}}}}}

/***/ }),
/* 291 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 292 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-02-12","endpointPrefix":"rds","protocol":"query","serviceAbbreviation":"Amazon RDS","serviceFullName":"Amazon Relational Database Service","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":{}}}}}

/***/ }),
/* 293 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 294 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-09-09","endpointPrefix":"rds","protocol":"query","serviceAbbreviation":"Amazon RDS","serviceFullName":"Amazon Relational Database Service","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":{}}}}}

/***/ }),
/* 295 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 296 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 297 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-09-01","endpointPrefix":"rds","protocol":"query","serviceAbbreviation":"Amazon RDS","serviceFullName":"Amazon Relational Database Service","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":{}}}}}

/***/ }),
/* 298 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 299 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-10-31","endpointPrefix":"rds","protocol":"query","serviceAbbreviation":"Amazon RDS","serviceFullName":"Amazon Relational Database Service","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":{}}}},"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"}}}},"AuthorizeDBSecurityGroupIngress":{"input":{"type":"structure","required":["DBSecurityGroupName"],"members":{"DBSecurityGroupName":{},"CIDRIP":{},"EC2SecurityGroupName":{},"EC2SecurityGroupId":{},"EC2SecurityGroupOwnerId":{}}},"output":{"resultWrapper":"AuthorizeDBSecurityGroupIngressResult","type":"structure","members":{"DBSecurityGroup":{"shape":"Sk"}}}},"CopyDBClusterParameterGroup":{"input":{"type":"structure","required":["SourceDBClusterParameterGroupIdentifier","TargetDBClusterParameterGroupIdentifier","TargetDBClusterParameterGroupDescription"],"members":{"SourceDBClusterParameterGroupIdentifier":{},"TargetDBClusterParameterGroupIdentifier":{},"TargetDBClusterParameterGroupDescription":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CopyDBClusterParameterGroupResult","type":"structure","members":{"DBClusterParameterGroup":{"shape":"Sr"}}}},"CopyDBClusterSnapshot":{"input":{"type":"structure","required":["SourceDBClusterSnapshotIdentifier","TargetDBClusterSnapshotIdentifier"],"members":{"SourceDBClusterSnapshotIdentifier":{},"TargetDBClusterSnapshotIdentifier":{},"KmsKeyId":{},"PreSignedUrl":{},"CopyTags":{"type":"boolean"},"Tags":{"shape":"Sa"},"SourceRegion":{}}},"output":{"resultWrapper":"CopyDBClusterSnapshotResult","type":"structure","members":{"DBClusterSnapshot":{"shape":"Sv"}}}},"CopyDBParameterGroup":{"input":{"type":"structure","required":["SourceDBParameterGroupIdentifier","TargetDBParameterGroupIdentifier","TargetDBParameterGroupDescription"],"members":{"SourceDBParameterGroupIdentifier":{},"TargetDBParameterGroupIdentifier":{},"TargetDBParameterGroupDescription":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CopyDBParameterGroupResult","type":"structure","members":{"DBParameterGroup":{"shape":"S10"}}}},"CopyDBSnapshot":{"input":{"type":"structure","required":["SourceDBSnapshotIdentifier","TargetDBSnapshotIdentifier"],"members":{"SourceDBSnapshotIdentifier":{},"TargetDBSnapshotIdentifier":{},"KmsKeyId":{},"Tags":{"shape":"Sa"},"CopyTags":{"type":"boolean"},"PreSignedUrl":{},"OptionGroupName":{},"SourceRegion":{}}},"output":{"resultWrapper":"CopyDBSnapshotResult","type":"structure","members":{"DBSnapshot":{"shape":"S13"}}}},"CopyOptionGroup":{"input":{"type":"structure","required":["SourceOptionGroupIdentifier","TargetOptionGroupIdentifier","TargetOptionGroupDescription"],"members":{"SourceOptionGroupIdentifier":{},"TargetOptionGroupIdentifier":{},"TargetOptionGroupDescription":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CopyOptionGroupResult","type":"structure","members":{"OptionGroup":{"shape":"S17"}}}},"CreateDBCluster":{"input":{"type":"structure","required":["DBClusterIdentifier","Engine"],"members":{"AvailabilityZones":{"shape":"Sw"},"BackupRetentionPeriod":{"type":"integer"},"CharacterSetName":{},"DatabaseName":{},"DBClusterIdentifier":{},"DBClusterParameterGroupName":{},"VpcSecurityGroupIds":{"shape":"S1h"},"DBSubnetGroupName":{},"Engine":{},"EngineVersion":{},"Port":{"type":"integer"},"MasterUsername":{},"MasterUserPassword":{},"OptionGroupName":{},"PreferredBackupWindow":{},"PreferredMaintenanceWindow":{},"ReplicationSourceIdentifier":{},"Tags":{"shape":"Sa"},"StorageEncrypted":{"type":"boolean"},"KmsKeyId":{},"PreSignedUrl":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"},"SourceRegion":{}}},"output":{"resultWrapper":"CreateDBClusterResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"CreateDBClusterParameterGroup":{"input":{"type":"structure","required":["DBClusterParameterGroupName","DBParameterGroupFamily","Description"],"members":{"DBClusterParameterGroupName":{},"DBParameterGroupFamily":{},"Description":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateDBClusterParameterGroupResult","type":"structure","members":{"DBClusterParameterGroup":{"shape":"Sr"}}}},"CreateDBClusterSnapshot":{"input":{"type":"structure","required":["DBClusterSnapshotIdentifier","DBClusterIdentifier"],"members":{"DBClusterSnapshotIdentifier":{},"DBClusterIdentifier":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateDBClusterSnapshotResult","type":"structure","members":{"DBClusterSnapshot":{"shape":"Sv"}}}},"CreateDBInstance":{"input":{"type":"structure","required":["DBInstanceIdentifier","DBInstanceClass","Engine"],"members":{"DBName":{},"DBInstanceIdentifier":{},"AllocatedStorage":{"type":"integer"},"DBInstanceClass":{},"Engine":{},"MasterUsername":{},"MasterUserPassword":{},"DBSecurityGroups":{"shape":"S1w"},"VpcSecurityGroupIds":{"shape":"S1h"},"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":"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"}}},"output":{"resultWrapper":"CreateDBInstanceResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"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":"Sa"},"DBSubnetGroupName":{},"StorageType":{},"CopyTagsToSnapshot":{"type":"boolean"},"MonitoringInterval":{"type":"integer"},"MonitoringRoleArn":{},"KmsKeyId":{},"PreSignedUrl":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"},"SourceRegion":{}}},"output":{"resultWrapper":"CreateDBInstanceReadReplicaResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"CreateDBParameterGroup":{"input":{"type":"structure","required":["DBParameterGroupName","DBParameterGroupFamily","Description"],"members":{"DBParameterGroupName":{},"DBParameterGroupFamily":{},"Description":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateDBParameterGroupResult","type":"structure","members":{"DBParameterGroup":{"shape":"S10"}}}},"CreateDBSecurityGroup":{"input":{"type":"structure","required":["DBSecurityGroupName","DBSecurityGroupDescription"],"members":{"DBSecurityGroupName":{},"DBSecurityGroupDescription":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateDBSecurityGroupResult","type":"structure","members":{"DBSecurityGroup":{"shape":"Sk"}}}},"CreateDBSnapshot":{"input":{"type":"structure","required":["DBSnapshotIdentifier","DBInstanceIdentifier"],"members":{"DBSnapshotIdentifier":{},"DBInstanceIdentifier":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateDBSnapshotResult","type":"structure","members":{"DBSnapshot":{"shape":"S13"}}}},"CreateDBSubnetGroup":{"input":{"type":"structure","required":["DBSubnetGroupName","DBSubnetGroupDescription","SubnetIds"],"members":{"DBSubnetGroupName":{},"DBSubnetGroupDescription":{},"SubnetIds":{"shape":"S2o"},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateDBSubnetGroupResult","type":"structure","members":{"DBSubnetGroup":{"shape":"S22"}}}},"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"}}}},"CreateOptionGroup":{"input":{"type":"structure","required":["OptionGroupName","EngineName","MajorEngineVersion","OptionGroupDescription"],"members":{"OptionGroupName":{},"EngineName":{},"MajorEngineVersion":{},"OptionGroupDescription":{},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"CreateOptionGroupResult","type":"structure","members":{"OptionGroup":{"shape":"S17"}}}},"DeleteDBCluster":{"input":{"type":"structure","required":["DBClusterIdentifier"],"members":{"DBClusterIdentifier":{},"SkipFinalSnapshot":{"type":"boolean"},"FinalDBSnapshotIdentifier":{}}},"output":{"resultWrapper":"DeleteDBClusterResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"DeleteDBClusterParameterGroup":{"input":{"type":"structure","required":["DBClusterParameterGroupName"],"members":{"DBClusterParameterGroupName":{}}}},"DeleteDBClusterSnapshot":{"input":{"type":"structure","required":["DBClusterSnapshotIdentifier"],"members":{"DBClusterSnapshotIdentifier":{}}},"output":{"resultWrapper":"DeleteDBClusterSnapshotResult","type":"structure","members":{"DBClusterSnapshot":{"shape":"Sv"}}}},"DeleteDBInstance":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{},"SkipFinalSnapshot":{"type":"boolean"},"FinalDBSnapshotIdentifier":{}}},"output":{"resultWrapper":"DeleteDBInstanceResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"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":"S13"}}}},"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"}}}},"DeleteOptionGroup":{"input":{"type":"structure","required":["OptionGroupName"],"members":{"OptionGroupName":{}}}},"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":"S3f"},"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":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBClusterParameterGroupsResult","type":"structure","members":{"Marker":{},"DBClusterParameterGroups":{"type":"list","member":{"shape":"Sr","locationName":"DBClusterParameterGroup"}}}}},"DescribeDBClusterParameters":{"input":{"type":"structure","required":["DBClusterParameterGroupName"],"members":{"DBClusterParameterGroupName":{},"Source":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBClusterParametersResult","type":"structure","members":{"Parameters":{"shape":"S3q"},"Marker":{}}}},"DescribeDBClusterSnapshotAttributes":{"input":{"type":"structure","required":["DBClusterSnapshotIdentifier"],"members":{"DBClusterSnapshotIdentifier":{}}},"output":{"resultWrapper":"DescribeDBClusterSnapshotAttributesResult","type":"structure","members":{"DBClusterSnapshotAttributesResult":{"shape":"S3v"}}}},"DescribeDBClusterSnapshots":{"input":{"type":"structure","members":{"DBClusterIdentifier":{},"DBClusterSnapshotIdentifier":{},"SnapshotType":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{},"IncludeShared":{"type":"boolean"},"IncludePublic":{"type":"boolean"}}},"output":{"resultWrapper":"DescribeDBClusterSnapshotsResult","type":"structure","members":{"Marker":{},"DBClusterSnapshots":{"type":"list","member":{"shape":"Sv","locationName":"DBClusterSnapshot"}}}}},"DescribeDBClusters":{"input":{"type":"structure","members":{"DBClusterIdentifier":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBClustersResult","type":"structure","members":{"Marker":{},"DBClusters":{"type":"list","member":{"shape":"S1j","locationName":"DBCluster"}}}}},"DescribeDBEngineVersions":{"input":{"type":"structure","members":{"Engine":{},"EngineVersion":{},"DBParameterGroupFamily":{},"Filters":{"shape":"S3f"},"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":"S49"},"SupportedCharacterSets":{"type":"list","member":{"shape":"S49","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":{}}}}}}}}}},"DescribeDBInstances":{"input":{"type":"structure","members":{"DBInstanceIdentifier":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBInstancesResult","type":"structure","members":{"Marker":{},"DBInstances":{"type":"list","member":{"shape":"S1y","locationName":"DBInstance"}}}}},"DescribeDBLogFiles":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{},"FilenameContains":{},"FileLastWritten":{"type":"long"},"FileSize":{"type":"long"},"Filters":{"shape":"S3f"},"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":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBParameterGroupsResult","type":"structure","members":{"Marker":{},"DBParameterGroups":{"type":"list","member":{"shape":"S10","locationName":"DBParameterGroup"}}}}},"DescribeDBParameters":{"input":{"type":"structure","required":["DBParameterGroupName"],"members":{"DBParameterGroupName":{},"Source":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBParametersResult","type":"structure","members":{"Parameters":{"shape":"S3q"},"Marker":{}}}},"DescribeDBSecurityGroups":{"input":{"type":"structure","members":{"DBSecurityGroupName":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBSecurityGroupsResult","type":"structure","members":{"Marker":{},"DBSecurityGroups":{"type":"list","member":{"shape":"Sk","locationName":"DBSecurityGroup"}}}}},"DescribeDBSnapshotAttributes":{"input":{"type":"structure","required":["DBSnapshotIdentifier"],"members":{"DBSnapshotIdentifier":{}}},"output":{"resultWrapper":"DescribeDBSnapshotAttributesResult","type":"structure","members":{"DBSnapshotAttributesResult":{"shape":"S4w"}}}},"DescribeDBSnapshots":{"input":{"type":"structure","members":{"DBInstanceIdentifier":{},"DBSnapshotIdentifier":{},"SnapshotType":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{},"IncludeShared":{"type":"boolean"},"IncludePublic":{"type":"boolean"}}},"output":{"resultWrapper":"DescribeDBSnapshotsResult","type":"structure","members":{"Marker":{},"DBSnapshots":{"type":"list","member":{"shape":"S13","locationName":"DBSnapshot"}}}}},"DescribeDBSubnetGroups":{"input":{"type":"structure","members":{"DBSubnetGroupName":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeDBSubnetGroupsResult","type":"structure","members":{"Marker":{},"DBSubnetGroups":{"type":"list","member":{"shape":"S22","locationName":"DBSubnetGroup"}}}}},"DescribeEngineDefaultClusterParameters":{"input":{"type":"structure","required":["DBParameterGroupFamily"],"members":{"DBParameterGroupFamily":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeEngineDefaultClusterParametersResult","type":"structure","members":{"EngineDefaults":{"shape":"S57"}}}},"DescribeEngineDefaultParameters":{"input":{"type":"structure","required":["DBParameterGroupFamily"],"members":{"DBParameterGroupFamily":{},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeEngineDefaultParametersResult","type":"structure","members":{"EngineDefaults":{"shape":"S57"}}}},"DescribeEventCategories":{"input":{"type":"structure","members":{"SourceType":{},"Filters":{"shape":"S3f"}}},"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":"S3f"},"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":"S3f"},"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":{}}}}}}},"DescribeOptionGroupOptions":{"input":{"type":"structure","required":["EngineName"],"members":{"EngineName":{},"MajorEngineVersion":{},"Filters":{"shape":"S3f"},"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"},"OptionGroupOptionSettings":{"type":"list","member":{"locationName":"OptionGroupOptionSetting","type":"structure","members":{"SettingName":{},"SettingDescription":{},"DefaultValue":{},"ApplyType":{},"AllowedValues":{},"IsModifiable":{"type":"boolean"}}}},"OptionGroupOptionVersions":{"type":"list","member":{"locationName":"OptionVersion","type":"structure","members":{"Version":{},"IsDefault":{"type":"boolean"}}}}}}},"Marker":{}}}},"DescribeOptionGroups":{"input":{"type":"structure","members":{"OptionGroupName":{},"Filters":{"shape":"S3f"},"Marker":{},"MaxRecords":{"type":"integer"},"EngineName":{},"MajorEngineVersion":{}}},"output":{"resultWrapper":"DescribeOptionGroupsResult","type":"structure","members":{"OptionGroupsList":{"type":"list","member":{"shape":"S17","locationName":"OptionGroup"}},"Marker":{}}}},"DescribeOrderableDBInstanceOptions":{"input":{"type":"structure","required":["Engine"],"members":{"Engine":{},"EngineVersion":{},"DBInstanceClass":{},"LicenseModel":{},"Vpc":{"type":"boolean"},"Filters":{"shape":"S3f"},"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":"S25","locationName":"AvailabilityZone"}},"MultiAZCapable":{"type":"boolean"},"ReadReplicaCapable":{"type":"boolean"},"Vpc":{"type":"boolean"},"SupportsStorageEncryption":{"type":"boolean"},"StorageType":{},"SupportsIops":{"type":"boolean"},"SupportsEnhancedMonitoring":{"type":"boolean"},"SupportsIAMDatabaseAuthentication":{"type":"boolean"}},"wrapper":true}},"Marker":{}}}},"DescribePendingMaintenanceActions":{"input":{"type":"structure","members":{"ResourceIdentifier":{},"Filters":{"shape":"S3f"},"Marker":{},"MaxRecords":{"type":"integer"}}},"output":{"resultWrapper":"DescribePendingMaintenanceActionsResult","type":"structure","members":{"PendingMaintenanceActions":{"type":"list","member":{"shape":"Se","locationName":"ResourcePendingMaintenanceActions"}},"Marker":{}}}},"DescribeReservedDBInstances":{"input":{"type":"structure","members":{"ReservedDBInstanceId":{},"ReservedDBInstancesOfferingId":{},"DBInstanceClass":{},"Duration":{},"ProductDescription":{},"OfferingType":{},"MultiAZ":{"type":"boolean"},"Filters":{"shape":"S3f"},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeReservedDBInstancesResult","type":"structure","members":{"Marker":{},"ReservedDBInstances":{"type":"list","member":{"shape":"S6a","locationName":"ReservedDBInstance"}}}}},"DescribeReservedDBInstancesOfferings":{"input":{"type":"structure","members":{"ReservedDBInstancesOfferingId":{},"DBInstanceClass":{},"Duration":{},"ProductDescription":{},"OfferingType":{},"MultiAZ":{"type":"boolean"},"Filters":{"shape":"S3f"},"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":"S6c"}},"wrapper":true}}}}},"DescribeSourceRegions":{"input":{"type":"structure","members":{"RegionName":{},"MaxRecords":{"type":"integer"},"Marker":{},"Filters":{"shape":"S3f"}}},"output":{"resultWrapper":"DescribeSourceRegionsResult","type":"structure","members":{"Marker":{},"SourceRegions":{"type":"list","member":{"locationName":"SourceRegion","type":"structure","members":{"RegionName":{},"Endpoint":{},"Status":{}}}}}}},"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","members":{"DBClusterIdentifier":{},"TargetDBInstanceIdentifier":{}}},"output":{"resultWrapper":"FailoverDBClusterResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"ListTagsForResource":{"input":{"type":"structure","required":["ResourceName"],"members":{"ResourceName":{},"Filters":{"shape":"S3f"}}},"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":"S1h"},"Port":{"type":"integer"},"MasterUserPassword":{},"OptionGroupName":{},"PreferredBackupWindow":{},"PreferredMaintenanceWindow":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"}}},"output":{"resultWrapper":"ModifyDBClusterResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"ModifyDBClusterParameterGroup":{"input":{"type":"structure","required":["DBClusterParameterGroupName","Parameters"],"members":{"DBClusterParameterGroupName":{},"Parameters":{"shape":"S3q"}}},"output":{"shape":"S6v","resultWrapper":"ModifyDBClusterParameterGroupResult"}},"ModifyDBClusterSnapshotAttribute":{"input":{"type":"structure","required":["DBClusterSnapshotIdentifier","AttributeName"],"members":{"DBClusterSnapshotIdentifier":{},"AttributeName":{},"ValuesToAdd":{"shape":"S3y"},"ValuesToRemove":{"shape":"S3y"}}},"output":{"resultWrapper":"ModifyDBClusterSnapshotAttributeResult","type":"structure","members":{"DBClusterSnapshotAttributesResult":{"shape":"S3v"}}}},"ModifyDBInstance":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{},"AllocatedStorage":{"type":"integer"},"DBInstanceClass":{},"DBSubnetGroupName":{},"DBSecurityGroups":{"shape":"S1w"},"VpcSecurityGroupIds":{"shape":"S1h"},"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"}}},"output":{"resultWrapper":"ModifyDBInstanceResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"ModifyDBParameterGroup":{"input":{"type":"structure","required":["DBParameterGroupName","Parameters"],"members":{"DBParameterGroupName":{},"Parameters":{"shape":"S3q"}}},"output":{"shape":"S71","resultWrapper":"ModifyDBParameterGroupResult"}},"ModifyDBSnapshot":{"input":{"type":"structure","required":["DBSnapshotIdentifier"],"members":{"DBSnapshotIdentifier":{},"EngineVersion":{}}},"output":{"resultWrapper":"ModifyDBSnapshotResult","type":"structure","members":{"DBSnapshot":{"shape":"S13"}}}},"ModifyDBSnapshotAttribute":{"input":{"type":"structure","required":["DBSnapshotIdentifier","AttributeName"],"members":{"DBSnapshotIdentifier":{},"AttributeName":{},"ValuesToAdd":{"shape":"S3y"},"ValuesToRemove":{"shape":"S3y"}}},"output":{"resultWrapper":"ModifyDBSnapshotAttributeResult","type":"structure","members":{"DBSnapshotAttributesResult":{"shape":"S4w"}}}},"ModifyDBSubnetGroup":{"input":{"type":"structure","required":["DBSubnetGroupName","SubnetIds"],"members":{"DBSubnetGroupName":{},"DBSubnetGroupDescription":{},"SubnetIds":{"shape":"S2o"}}},"output":{"resultWrapper":"ModifyDBSubnetGroupResult","type":"structure","members":{"DBSubnetGroup":{"shape":"S22"}}}},"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"}}}},"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":"S1w"},"VpcSecurityGroupMemberships":{"shape":"S1h"},"OptionSettings":{"type":"list","member":{"shape":"S1b","locationName":"OptionSetting"}}}}},"OptionsToRemove":{"type":"list","member":{}},"ApplyImmediately":{"type":"boolean"}}},"output":{"resultWrapper":"ModifyOptionGroupResult","type":"structure","members":{"OptionGroup":{"shape":"S17"}}}},"PromoteReadReplica":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{},"BackupRetentionPeriod":{"type":"integer"},"PreferredBackupWindow":{}}},"output":{"resultWrapper":"PromoteReadReplicaResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"PromoteReadReplicaDBCluster":{"input":{"type":"structure","required":["DBClusterIdentifier"],"members":{"DBClusterIdentifier":{}}},"output":{"resultWrapper":"PromoteReadReplicaDBClusterResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"PurchaseReservedDBInstancesOffering":{"input":{"type":"structure","required":["ReservedDBInstancesOfferingId"],"members":{"ReservedDBInstancesOfferingId":{},"ReservedDBInstanceId":{},"DBInstanceCount":{"type":"integer"},"Tags":{"shape":"Sa"}}},"output":{"resultWrapper":"PurchaseReservedDBInstancesOfferingResult","type":"structure","members":{"ReservedDBInstance":{"shape":"S6a"}}}},"RebootDBInstance":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{},"ForceFailover":{"type":"boolean"}}},"output":{"resultWrapper":"RebootDBInstanceResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"RemoveRoleFromDBCluster":{"input":{"type":"structure","required":["DBClusterIdentifier","RoleArn"],"members":{"DBClusterIdentifier":{},"RoleArn":{}}}},"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":"S3q"}}},"output":{"shape":"S6v","resultWrapper":"ResetDBClusterParameterGroupResult"}},"ResetDBParameterGroup":{"input":{"type":"structure","required":["DBParameterGroupName"],"members":{"DBParameterGroupName":{},"ResetAllParameters":{"type":"boolean"},"Parameters":{"shape":"S3q"}}},"output":{"shape":"S71","resultWrapper":"ResetDBParameterGroupResult"}},"RestoreDBClusterFromS3":{"input":{"type":"structure","required":["DBClusterIdentifier","Engine","MasterUsername","MasterUserPassword","SourceEngine","SourceEngineVersion","S3BucketName","S3IngestionRoleArn"],"members":{"AvailabilityZones":{"shape":"Sw"},"BackupRetentionPeriod":{"type":"integer"},"CharacterSetName":{},"DatabaseName":{},"DBClusterIdentifier":{},"DBClusterParameterGroupName":{},"VpcSecurityGroupIds":{"shape":"S1h"},"DBSubnetGroupName":{},"Engine":{},"EngineVersion":{},"Port":{"type":"integer"},"MasterUsername":{},"MasterUserPassword":{},"OptionGroupName":{},"PreferredBackupWindow":{},"PreferredMaintenanceWindow":{},"Tags":{"shape":"Sa"},"StorageEncrypted":{"type":"boolean"},"KmsKeyId":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"},"SourceEngine":{},"SourceEngineVersion":{},"S3BucketName":{},"S3Prefix":{},"S3IngestionRoleArn":{}}},"output":{"resultWrapper":"RestoreDBClusterFromS3Result","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"RestoreDBClusterFromSnapshot":{"input":{"type":"structure","required":["DBClusterIdentifier","SnapshotIdentifier","Engine"],"members":{"AvailabilityZones":{"shape":"Sw"},"DBClusterIdentifier":{},"SnapshotIdentifier":{},"Engine":{},"EngineVersion":{},"Port":{"type":"integer"},"DBSubnetGroupName":{},"DatabaseName":{},"OptionGroupName":{},"VpcSecurityGroupIds":{"shape":"S1h"},"Tags":{"shape":"Sa"},"KmsKeyId":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"}}},"output":{"resultWrapper":"RestoreDBClusterFromSnapshotResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"RestoreDBClusterToPointInTime":{"input":{"type":"structure","required":["DBClusterIdentifier","SourceDBClusterIdentifier"],"members":{"DBClusterIdentifier":{},"RestoreType":{},"SourceDBClusterIdentifier":{},"RestoreToTime":{"type":"timestamp"},"UseLatestRestorableTime":{"type":"boolean"},"Port":{"type":"integer"},"DBSubnetGroupName":{},"OptionGroupName":{},"VpcSecurityGroupIds":{"shape":"S1h"},"Tags":{"shape":"Sa"},"KmsKeyId":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"}}},"output":{"resultWrapper":"RestoreDBClusterToPointInTimeResult","type":"structure","members":{"DBCluster":{"shape":"S1j"}}}},"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":"Sa"},"StorageType":{},"TdeCredentialArn":{},"TdeCredentialPassword":{},"Domain":{},"CopyTagsToSnapshot":{"type":"boolean"},"DomainIAMRoleName":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"}}},"output":{"resultWrapper":"RestoreDBInstanceFromDBSnapshotResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"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":{},"CopyTagsToSnapshot":{"type":"boolean"},"Tags":{"shape":"Sa"},"StorageType":{},"TdeCredentialArn":{},"TdeCredentialPassword":{},"Domain":{},"DomainIAMRoleName":{},"EnableIAMDatabaseAuthentication":{"type":"boolean"}}},"output":{"resultWrapper":"RestoreDBInstanceToPointInTimeResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"RevokeDBSecurityGroupIngress":{"input":{"type":"structure","required":["DBSecurityGroupName"],"members":{"DBSecurityGroupName":{},"CIDRIP":{},"EC2SecurityGroupName":{},"EC2SecurityGroupId":{},"EC2SecurityGroupOwnerId":{}}},"output":{"resultWrapper":"RevokeDBSecurityGroupIngressResult","type":"structure","members":{"DBSecurityGroup":{"shape":"Sk"}}}},"StartDBInstance":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{}}},"output":{"resultWrapper":"StartDBInstanceResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}},"StopDBInstance":{"input":{"type":"structure","required":["DBInstanceIdentifier"],"members":{"DBInstanceIdentifier":{},"DBSnapshotIdentifier":{}}},"output":{"resultWrapper":"StopDBInstanceResult","type":"structure","members":{"DBInstance":{"shape":"S1y"}}}}},"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":{"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},"Sr":{"type":"structure","members":{"DBClusterParameterGroupName":{},"DBParameterGroupFamily":{},"Description":{},"DBClusterParameterGroupArn":{}},"wrapper":true},"Sv":{"type":"structure","members":{"AvailabilityZones":{"shape":"Sw"},"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},"Sw":{"type":"list","member":{"locationName":"AvailabilityZone"}},"S10":{"type":"structure","members":{"DBParameterGroupName":{},"DBParameterGroupFamily":{},"Description":{},"DBParameterGroupArn":{}},"wrapper":true},"S13":{"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"}},"wrapper":true},"S17":{"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":"S1b","locationName":"OptionSetting"}},"DBSecurityGroupMemberships":{"shape":"S1c"},"VpcSecurityGroupMemberships":{"shape":"S1e"}}}},"AllowsVpcAndNonVpcInstanceMemberships":{"type":"boolean"},"VpcId":{},"OptionGroupArn":{}},"wrapper":true},"S1b":{"type":"structure","members":{"Name":{},"Value":{},"DefaultValue":{},"Description":{},"ApplyType":{},"DataType":{},"AllowedValues":{},"IsModifiable":{"type":"boolean"},"IsCollection":{"type":"boolean"}}},"S1c":{"type":"list","member":{"locationName":"DBSecurityGroup","type":"structure","members":{"DBSecurityGroupName":{},"Status":{}}}},"S1e":{"type":"list","member":{"locationName":"VpcSecurityGroupMembership","type":"structure","members":{"VpcSecurityGroupId":{},"Status":{}}}},"S1h":{"type":"list","member":{"locationName":"VpcSecurityGroupId"}},"S1j":{"type":"structure","members":{"AllocatedStorage":{"type":"integer"},"AvailabilityZones":{"shape":"Sw"},"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":"S1e"},"HostedZoneId":{},"StorageEncrypted":{"type":"boolean"},"KmsKeyId":{},"DbClusterResourceId":{},"DBClusterArn":{},"AssociatedRoles":{"type":"list","member":{"locationName":"DBClusterRole","type":"structure","members":{"RoleArn":{},"Status":{}}}},"IAMDatabaseAuthenticationEnabled":{"type":"boolean"},"CloneGroupId":{},"ClusterCreateTime":{"type":"timestamp"}},"wrapper":true},"S1w":{"type":"list","member":{"locationName":"DBSecurityGroupName"}},"S1y":{"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":{"shape":"S1c"},"VpcSecurityGroups":{"shape":"S1e"},"DBParameterGroups":{"type":"list","member":{"locationName":"DBParameterGroup","type":"structure","members":{"DBParameterGroupName":{},"ParameterApplyStatus":{}}}},"AvailabilityZone":{},"DBSubnetGroup":{"shape":"S22"},"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":{}}},"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":{"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"}},"wrapper":true},"S22":{"type":"structure","members":{"DBSubnetGroupName":{},"DBSubnetGroupDescription":{},"VpcId":{},"SubnetGroupStatus":{},"Subnets":{"type":"list","member":{"locationName":"Subnet","type":"structure","members":{"SubnetIdentifier":{},"SubnetAvailabilityZone":{"shape":"S25"},"SubnetStatus":{}}}},"DBSubnetGroupArn":{}},"wrapper":true},"S25":{"type":"structure","members":{"Name":{}},"wrapper":true},"S2o":{"type":"list","member":{"locationName":"SubnetIdentifier"}},"S3f":{"type":"list","member":{"locationName":"Filter","type":"structure","required":["Name","Values"],"members":{"Name":{},"Values":{"type":"list","member":{"locationName":"Value"}}}}},"S3q":{"type":"list","member":{"locationName":"Parameter","type":"structure","members":{"ParameterName":{},"ParameterValue":{},"Description":{},"Source":{},"ApplyType":{},"DataType":{},"AllowedValues":{},"IsModifiable":{"type":"boolean"},"MinimumEngineVersion":{},"ApplyMethod":{}}}},"S3v":{"type":"structure","members":{"DBClusterSnapshotIdentifier":{},"DBClusterSnapshotAttributes":{"type":"list","member":{"locationName":"DBClusterSnapshotAttribute","type":"structure","members":{"AttributeName":{},"AttributeValues":{"shape":"S3y"}}}}},"wrapper":true},"S3y":{"type":"list","member":{"locationName":"AttributeValue"}},"S49":{"type":"structure","members":{"CharacterSetName":{},"CharacterSetDescription":{}}},"S4w":{"type":"structure","members":{"DBSnapshotIdentifier":{},"DBSnapshotAttributes":{"type":"list","member":{"locationName":"DBSnapshotAttribute","type":"structure","members":{"AttributeName":{},"AttributeValues":{"shape":"S3y"}},"wrapper":true}}},"wrapper":true},"S57":{"type":"structure","members":{"DBParameterGroupFamily":{},"Marker":{},"Parameters":{"shape":"S3q"}},"wrapper":true},"S6a":{"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":"S6c"},"ReservedDBInstanceArn":{}},"wrapper":true},"S6c":{"type":"list","member":{"locationName":"RecurringCharge","type":"structure","members":{"RecurringChargeAmount":{"type":"double"},"RecurringChargeFrequency":{}},"wrapper":true}},"S6v":{"type":"structure","members":{"DBClusterParameterGroupName":{}}},"S71":{"type":"structure","members":{"DBParameterGroupName":{}}}}}

/***/ }),
/* 300 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 301 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 302 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(303);
	    model.paginators = __webpack_require__(304).pagination;
	    model.waiters = __webpack_require__(305).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Redshift;


/***/ }),
/* 303 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-12-01","endpointPrefix":"redshift","protocol":"query","serviceFullName":"Amazon Redshift","signatureVersion":"v4","uid":"redshift-2012-12-01","xmlNamespace":"http://redshift.amazonaws.com/doc/2012-12-01/"},"operations":{"AuthorizeClusterSecurityGroupIngress":{"input":{"type":"structure","required":["ClusterSecurityGroupName"],"members":{"ClusterSecurityGroupName":{},"CIDRIP":{},"EC2SecurityGroupName":{},"EC2SecurityGroupOwnerId":{}}},"output":{"resultWrapper":"AuthorizeClusterSecurityGroupIngressResult","type":"structure","members":{"ClusterSecurityGroup":{"shape":"S4"}}}},"AuthorizeSnapshotAccess":{"input":{"type":"structure","required":["SnapshotIdentifier","AccountWithRestoreAccess"],"members":{"SnapshotIdentifier":{},"SnapshotClusterIdentifier":{},"AccountWithRestoreAccess":{}}},"output":{"resultWrapper":"AuthorizeSnapshotAccessResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"CopyClusterSnapshot":{"input":{"type":"structure","required":["SourceSnapshotIdentifier","TargetSnapshotIdentifier"],"members":{"SourceSnapshotIdentifier":{},"SourceSnapshotClusterIdentifier":{},"TargetSnapshotIdentifier":{}}},"output":{"resultWrapper":"CopyClusterSnapshotResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"CreateCluster":{"input":{"type":"structure","required":["ClusterIdentifier","NodeType","MasterUsername","MasterUserPassword"],"members":{"DBName":{},"ClusterIdentifier":{},"ClusterType":{},"NodeType":{},"MasterUsername":{},"MasterUserPassword":{},"ClusterSecurityGroups":{"shape":"Sp"},"VpcSecurityGroupIds":{"shape":"Sq"},"ClusterSubnetGroupName":{},"AvailabilityZone":{},"PreferredMaintenanceWindow":{},"ClusterParameterGroupName":{},"AutomatedSnapshotRetentionPeriod":{"type":"integer"},"Port":{"type":"integer"},"ClusterVersion":{},"AllowVersionUpgrade":{"type":"boolean"},"NumberOfNodes":{"type":"integer"},"PubliclyAccessible":{"type":"boolean"},"Encrypted":{"type":"boolean"},"HsmClientCertificateIdentifier":{},"HsmConfigurationIdentifier":{},"ElasticIp":{},"Tags":{"shape":"S7"},"KmsKeyId":{},"EnhancedVpcRouting":{"type":"boolean"},"AdditionalInfo":{},"IamRoles":{"shape":"St"}}},"output":{"resultWrapper":"CreateClusterResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"CreateClusterParameterGroup":{"input":{"type":"structure","required":["ParameterGroupName","ParameterGroupFamily","Description"],"members":{"ParameterGroupName":{},"ParameterGroupFamily":{},"Description":{},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateClusterParameterGroupResult","type":"structure","members":{"ClusterParameterGroup":{"shape":"S1g"}}}},"CreateClusterSecurityGroup":{"input":{"type":"structure","required":["ClusterSecurityGroupName","Description"],"members":{"ClusterSecurityGroupName":{},"Description":{},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateClusterSecurityGroupResult","type":"structure","members":{"ClusterSecurityGroup":{"shape":"S4"}}}},"CreateClusterSnapshot":{"input":{"type":"structure","required":["SnapshotIdentifier","ClusterIdentifier"],"members":{"SnapshotIdentifier":{},"ClusterIdentifier":{},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateClusterSnapshotResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"CreateClusterSubnetGroup":{"input":{"type":"structure","required":["ClusterSubnetGroupName","Description","SubnetIds"],"members":{"ClusterSubnetGroupName":{},"Description":{},"SubnetIds":{"shape":"S1m"},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateClusterSubnetGroupResult","type":"structure","members":{"ClusterSubnetGroup":{"shape":"S1o"}}}},"CreateEventSubscription":{"input":{"type":"structure","required":["SubscriptionName","SnsTopicArn"],"members":{"SubscriptionName":{},"SnsTopicArn":{},"SourceType":{},"SourceIds":{"shape":"S1t"},"EventCategories":{"shape":"S1u"},"Severity":{},"Enabled":{"type":"boolean"},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateEventSubscriptionResult","type":"structure","members":{"EventSubscription":{"shape":"S1w"}}}},"CreateHsmClientCertificate":{"input":{"type":"structure","required":["HsmClientCertificateIdentifier"],"members":{"HsmClientCertificateIdentifier":{},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateHsmClientCertificateResult","type":"structure","members":{"HsmClientCertificate":{"shape":"S1z"}}}},"CreateHsmConfiguration":{"input":{"type":"structure","required":["HsmConfigurationIdentifier","Description","HsmIpAddress","HsmPartitionName","HsmPartitionPassword","HsmServerPublicCertificate"],"members":{"HsmConfigurationIdentifier":{},"Description":{},"HsmIpAddress":{},"HsmPartitionName":{},"HsmPartitionPassword":{},"HsmServerPublicCertificate":{},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateHsmConfigurationResult","type":"structure","members":{"HsmConfiguration":{"shape":"S22"}}}},"CreateSnapshotCopyGrant":{"input":{"type":"structure","required":["SnapshotCopyGrantName"],"members":{"SnapshotCopyGrantName":{},"KmsKeyId":{},"Tags":{"shape":"S7"}}},"output":{"resultWrapper":"CreateSnapshotCopyGrantResult","type":"structure","members":{"SnapshotCopyGrant":{"shape":"S25"}}}},"CreateTags":{"input":{"type":"structure","required":["ResourceName","Tags"],"members":{"ResourceName":{},"Tags":{"shape":"S7"}}}},"DeleteCluster":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{},"SkipFinalClusterSnapshot":{"type":"boolean"},"FinalClusterSnapshotIdentifier":{}}},"output":{"resultWrapper":"DeleteClusterResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"DeleteClusterParameterGroup":{"input":{"type":"structure","required":["ParameterGroupName"],"members":{"ParameterGroupName":{}}}},"DeleteClusterSecurityGroup":{"input":{"type":"structure","required":["ClusterSecurityGroupName"],"members":{"ClusterSecurityGroupName":{}}}},"DeleteClusterSnapshot":{"input":{"type":"structure","required":["SnapshotIdentifier"],"members":{"SnapshotIdentifier":{},"SnapshotClusterIdentifier":{}}},"output":{"resultWrapper":"DeleteClusterSnapshotResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"DeleteClusterSubnetGroup":{"input":{"type":"structure","required":["ClusterSubnetGroupName"],"members":{"ClusterSubnetGroupName":{}}}},"DeleteEventSubscription":{"input":{"type":"structure","required":["SubscriptionName"],"members":{"SubscriptionName":{}}}},"DeleteHsmClientCertificate":{"input":{"type":"structure","required":["HsmClientCertificateIdentifier"],"members":{"HsmClientCertificateIdentifier":{}}}},"DeleteHsmConfiguration":{"input":{"type":"structure","required":["HsmConfigurationIdentifier"],"members":{"HsmConfigurationIdentifier":{}}}},"DeleteSnapshotCopyGrant":{"input":{"type":"structure","required":["SnapshotCopyGrantName"],"members":{"SnapshotCopyGrantName":{}}}},"DeleteTags":{"input":{"type":"structure","required":["ResourceName","TagKeys"],"members":{"ResourceName":{},"TagKeys":{"shape":"S2j"}}}},"DescribeClusterParameterGroups":{"input":{"type":"structure","members":{"ParameterGroupName":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeClusterParameterGroupsResult","type":"structure","members":{"Marker":{},"ParameterGroups":{"type":"list","member":{"shape":"S1g","locationName":"ClusterParameterGroup"}}}}},"DescribeClusterParameters":{"input":{"type":"structure","required":["ParameterGroupName"],"members":{"ParameterGroupName":{},"Source":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeClusterParametersResult","type":"structure","members":{"Parameters":{"shape":"S2q"},"Marker":{}}}},"DescribeClusterSecurityGroups":{"input":{"type":"structure","members":{"ClusterSecurityGroupName":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeClusterSecurityGroupsResult","type":"structure","members":{"Marker":{},"ClusterSecurityGroups":{"type":"list","member":{"shape":"S4","locationName":"ClusterSecurityGroup"}}}}},"DescribeClusterSnapshots":{"input":{"type":"structure","members":{"ClusterIdentifier":{},"SnapshotIdentifier":{},"SnapshotType":{},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"MaxRecords":{"type":"integer"},"Marker":{},"OwnerAccount":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeClusterSnapshotsResult","type":"structure","members":{"Marker":{},"Snapshots":{"type":"list","member":{"shape":"Sd","locationName":"Snapshot"}}}}},"DescribeClusterSubnetGroups":{"input":{"type":"structure","members":{"ClusterSubnetGroupName":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeClusterSubnetGroupsResult","type":"structure","members":{"Marker":{},"ClusterSubnetGroups":{"type":"list","member":{"shape":"S1o","locationName":"ClusterSubnetGroup"}}}}},"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":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeClustersResult","type":"structure","members":{"Marker":{},"Clusters":{"type":"list","member":{"shape":"Sv","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":"S2q"}},"wrapper":true}}}},"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":"S1u"},"EventDescription":{},"Severity":{}},"wrapper":true}}},"wrapper":true}}}}},"DescribeEventSubscriptions":{"input":{"type":"structure","members":{"SubscriptionName":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeEventSubscriptionsResult","type":"structure","members":{"Marker":{},"EventSubscriptionsList":{"type":"list","member":{"shape":"S1w","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":"S1u"},"Severity":{},"Date":{"type":"timestamp"},"EventId":{}}}}}}},"DescribeHsmClientCertificates":{"input":{"type":"structure","members":{"HsmClientCertificateIdentifier":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeHsmClientCertificatesResult","type":"structure","members":{"Marker":{},"HsmClientCertificates":{"type":"list","member":{"shape":"S1z","locationName":"HsmClientCertificate"}}}}},"DescribeHsmConfigurations":{"input":{"type":"structure","members":{"HsmConfigurationIdentifier":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeHsmConfigurationsResult","type":"structure","members":{"Marker":{},"HsmConfigurations":{"type":"list","member":{"shape":"S22","locationName":"HsmConfiguration"}}}}},"DescribeLoggingStatus":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{}}},"output":{"shape":"S3x","resultWrapper":"DescribeLoggingStatusResult"}},"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":"S1r","locationName":"AvailabilityZone"}}},"wrapper":true}},"Marker":{}}}},"DescribeReservedNodeOfferings":{"input":{"type":"structure","members":{"ReservedNodeOfferingId":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeReservedNodeOfferingsResult","type":"structure","members":{"Marker":{},"ReservedNodeOfferings":{"type":"list","member":{"locationName":"ReservedNodeOffering","type":"structure","members":{"ReservedNodeOfferingId":{},"NodeType":{},"Duration":{"type":"integer"},"FixedPrice":{"type":"double"},"UsagePrice":{"type":"double"},"CurrencyCode":{},"OfferingType":{},"RecurringCharges":{"shape":"S47"}},"wrapper":true}}}}},"DescribeReservedNodes":{"input":{"type":"structure","members":{"ReservedNodeId":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeReservedNodesResult","type":"structure","members":{"Marker":{},"ReservedNodes":{"type":"list","member":{"shape":"S4c","locationName":"ReservedNode"}}}}},"DescribeResize":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{}}},"output":{"resultWrapper":"DescribeResizeResult","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"}}}},"DescribeSnapshotCopyGrants":{"input":{"type":"structure","members":{"SnapshotCopyGrantName":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeSnapshotCopyGrantsResult","type":"structure","members":{"Marker":{},"SnapshotCopyGrants":{"type":"list","member":{"shape":"S25","locationName":"SnapshotCopyGrant"}}}}},"DescribeTableRestoreStatus":{"input":{"type":"structure","members":{"ClusterIdentifier":{},"TableRestoreRequestId":{},"MaxRecords":{"type":"integer"},"Marker":{}}},"output":{"resultWrapper":"DescribeTableRestoreStatusResult","type":"structure","members":{"TableRestoreStatusDetails":{"type":"list","member":{"shape":"S4q","locationName":"TableRestoreStatus"}},"Marker":{}}}},"DescribeTags":{"input":{"type":"structure","members":{"ResourceName":{},"ResourceType":{},"MaxRecords":{"type":"integer"},"Marker":{},"TagKeys":{"shape":"S2j"},"TagValues":{"shape":"S2l"}}},"output":{"resultWrapper":"DescribeTagsResult","type":"structure","members":{"TaggedResources":{"type":"list","member":{"locationName":"TaggedResource","type":"structure","members":{"Tag":{"shape":"S8"},"ResourceName":{},"ResourceType":{}}}},"Marker":{}}}},"DisableLogging":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{}}},"output":{"shape":"S3x","resultWrapper":"DisableLoggingResult"}},"DisableSnapshotCopy":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{}}},"output":{"resultWrapper":"DisableSnapshotCopyResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"EnableLogging":{"input":{"type":"structure","required":["ClusterIdentifier","BucketName"],"members":{"ClusterIdentifier":{},"BucketName":{},"S3KeyPrefix":{}}},"output":{"shape":"S3x","resultWrapper":"EnableLoggingResult"}},"EnableSnapshotCopy":{"input":{"type":"structure","required":["ClusterIdentifier","DestinationRegion"],"members":{"ClusterIdentifier":{},"DestinationRegion":{},"RetentionPeriod":{"type":"integer"},"SnapshotCopyGrantName":{}}},"output":{"resultWrapper":"EnableSnapshotCopyResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"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"}}}},"ModifyCluster":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{},"ClusterType":{},"NodeType":{},"NumberOfNodes":{"type":"integer"},"ClusterSecurityGroups":{"shape":"Sp"},"VpcSecurityGroupIds":{"shape":"Sq"},"MasterUserPassword":{},"ClusterParameterGroupName":{},"AutomatedSnapshotRetentionPeriod":{"type":"integer"},"PreferredMaintenanceWindow":{},"ClusterVersion":{},"AllowVersionUpgrade":{"type":"boolean"},"HsmClientCertificateIdentifier":{},"HsmConfigurationIdentifier":{},"NewClusterIdentifier":{},"PubliclyAccessible":{"type":"boolean"},"ElasticIp":{},"EnhancedVpcRouting":{"type":"boolean"}}},"output":{"resultWrapper":"ModifyClusterResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"ModifyClusterIamRoles":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{},"AddIamRoles":{"shape":"St"},"RemoveIamRoles":{"shape":"St"}}},"output":{"resultWrapper":"ModifyClusterIamRolesResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"ModifyClusterParameterGroup":{"input":{"type":"structure","required":["ParameterGroupName","Parameters"],"members":{"ParameterGroupName":{},"Parameters":{"shape":"S2q"}}},"output":{"shape":"S5b","resultWrapper":"ModifyClusterParameterGroupResult"}},"ModifyClusterSubnetGroup":{"input":{"type":"structure","required":["ClusterSubnetGroupName","SubnetIds"],"members":{"ClusterSubnetGroupName":{},"Description":{},"SubnetIds":{"shape":"S1m"}}},"output":{"resultWrapper":"ModifyClusterSubnetGroupResult","type":"structure","members":{"ClusterSubnetGroup":{"shape":"S1o"}}}},"ModifyEventSubscription":{"input":{"type":"structure","required":["SubscriptionName"],"members":{"SubscriptionName":{},"SnsTopicArn":{},"SourceType":{},"SourceIds":{"shape":"S1t"},"EventCategories":{"shape":"S1u"},"Severity":{},"Enabled":{"type":"boolean"}}},"output":{"resultWrapper":"ModifyEventSubscriptionResult","type":"structure","members":{"EventSubscription":{"shape":"S1w"}}}},"ModifySnapshotCopyRetentionPeriod":{"input":{"type":"structure","required":["ClusterIdentifier","RetentionPeriod"],"members":{"ClusterIdentifier":{},"RetentionPeriod":{"type":"integer"}}},"output":{"resultWrapper":"ModifySnapshotCopyRetentionPeriodResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"PurchaseReservedNodeOffering":{"input":{"type":"structure","required":["ReservedNodeOfferingId"],"members":{"ReservedNodeOfferingId":{},"NodeCount":{"type":"integer"}}},"output":{"resultWrapper":"PurchaseReservedNodeOfferingResult","type":"structure","members":{"ReservedNode":{"shape":"S4c"}}}},"RebootCluster":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{}}},"output":{"resultWrapper":"RebootClusterResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"ResetClusterParameterGroup":{"input":{"type":"structure","required":["ParameterGroupName"],"members":{"ParameterGroupName":{},"ResetAllParameters":{"type":"boolean"},"Parameters":{"shape":"S2q"}}},"output":{"shape":"S5b","resultWrapper":"ResetClusterParameterGroupResult"}},"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":"Sp"},"VpcSecurityGroupIds":{"shape":"Sq"},"PreferredMaintenanceWindow":{},"AutomatedSnapshotRetentionPeriod":{"type":"integer"},"KmsKeyId":{},"NodeType":{},"EnhancedVpcRouting":{"type":"boolean"},"AdditionalInfo":{},"IamRoles":{"shape":"St"}}},"output":{"resultWrapper":"RestoreFromClusterSnapshotResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}},"RestoreTableFromClusterSnapshot":{"input":{"type":"structure","required":["ClusterIdentifier","SnapshotIdentifier","SourceDatabaseName","SourceTableName","NewTableName"],"members":{"ClusterIdentifier":{},"SnapshotIdentifier":{},"SourceDatabaseName":{},"SourceSchemaName":{},"SourceTableName":{},"TargetDatabaseName":{},"TargetSchemaName":{},"NewTableName":{}}},"output":{"resultWrapper":"RestoreTableFromClusterSnapshotResult","type":"structure","members":{"TableRestoreStatus":{"shape":"S4q"}}}},"RevokeClusterSecurityGroupIngress":{"input":{"type":"structure","required":["ClusterSecurityGroupName"],"members":{"ClusterSecurityGroupName":{},"CIDRIP":{},"EC2SecurityGroupName":{},"EC2SecurityGroupOwnerId":{}}},"output":{"resultWrapper":"RevokeClusterSecurityGroupIngressResult","type":"structure","members":{"ClusterSecurityGroup":{"shape":"S4"}}}},"RevokeSnapshotAccess":{"input":{"type":"structure","required":["SnapshotIdentifier","AccountWithRestoreAccess"],"members":{"SnapshotIdentifier":{},"SnapshotClusterIdentifier":{},"AccountWithRestoreAccess":{}}},"output":{"resultWrapper":"RevokeSnapshotAccessResult","type":"structure","members":{"Snapshot":{"shape":"Sd"}}}},"RotateEncryptionKey":{"input":{"type":"structure","required":["ClusterIdentifier"],"members":{"ClusterIdentifier":{}}},"output":{"resultWrapper":"RotateEncryptionKeyResult","type":"structure","members":{"Cluster":{"shape":"Sv"}}}}},"shapes":{"S4":{"type":"structure","members":{"ClusterSecurityGroupName":{},"Description":{},"EC2SecurityGroups":{"type":"list","member":{"locationName":"EC2SecurityGroup","type":"structure","members":{"Status":{},"EC2SecurityGroupName":{},"EC2SecurityGroupOwnerId":{},"Tags":{"shape":"S7"}}}},"IPRanges":{"type":"list","member":{"locationName":"IPRange","type":"structure","members":{"Status":{},"CIDRIP":{},"Tags":{"shape":"S7"}}}},"Tags":{"shape":"S7"}},"wrapper":true},"S7":{"type":"list","member":{"shape":"S8","locationName":"Tag"}},"S8":{"type":"structure","members":{"Key":{},"Value":{}}},"Sd":{"type":"structure","members":{"SnapshotIdentifier":{},"ClusterIdentifier":{},"SnapshotCreateTime":{"type":"timestamp"},"Status":{},"Port":{"type":"integer"},"AvailabilityZone":{},"ClusterCreateTime":{"type":"timestamp"},"MasterUsername":{},"ClusterVersion":{},"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":"S7"},"RestorableNodeTypes":{"type":"list","member":{"locationName":"NodeType"}},"EnhancedVpcRouting":{"type":"boolean"}},"wrapper":true},"Sp":{"type":"list","member":{"locationName":"ClusterSecurityGroupName"}},"Sq":{"type":"list","member":{"locationName":"VpcSecurityGroupId"}},"St":{"type":"list","member":{"locationName":"IamRoleArn"}},"Sv":{"type":"structure","members":{"ClusterIdentifier":{},"NodeType":{},"ClusterStatus":{},"ModifyStatus":{},"MasterUsername":{},"DBName":{},"Endpoint":{"type":"structure","members":{"Address":{},"Port":{"type":"integer"}}},"ClusterCreateTime":{"type":"timestamp"},"AutomatedSnapshotRetentionPeriod":{"type":"integer"},"ClusterSecurityGroups":{"type":"list","member":{"locationName":"ClusterSecurityGroup","type":"structure","members":{"ClusterSecurityGroupName":{},"Status":{}}}},"VpcSecurityGroups":{"type":"list","member":{"locationName":"VpcSecurityGroup","type":"structure","members":{"VpcSecurityGroupId":{},"Status":{}}}},"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"}}},"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"}}},"HsmStatus":{"type":"structure","members":{"HsmClientCertificateIdentifier":{},"HsmConfigurationIdentifier":{},"Status":{}}},"ClusterSnapshotCopyStatus":{"type":"structure","members":{"DestinationRegion":{},"RetentionPeriod":{"type":"long"},"SnapshotCopyGrantName":{}}},"ClusterPublicKey":{},"ClusterNodes":{"type":"list","member":{"type":"structure","members":{"NodeRole":{},"PrivateIPAddress":{},"PublicIPAddress":{}}}},"ElasticIpStatus":{"type":"structure","members":{"ElasticIp":{},"Status":{}}},"ClusterRevisionNumber":{},"Tags":{"shape":"S7"},"KmsKeyId":{},"EnhancedVpcRouting":{"type":"boolean"},"IamRoles":{"type":"list","member":{"locationName":"ClusterIamRole","type":"structure","members":{"IamRoleArn":{},"ApplyStatus":{}}}}},"wrapper":true},"S1g":{"type":"structure","members":{"ParameterGroupName":{},"ParameterGroupFamily":{},"Description":{},"Tags":{"shape":"S7"}},"wrapper":true},"S1m":{"type":"list","member":{"locationName":"SubnetIdentifier"}},"S1o":{"type":"structure","members":{"ClusterSubnetGroupName":{},"Description":{},"VpcId":{},"SubnetGroupStatus":{},"Subnets":{"type":"list","member":{"locationName":"Subnet","type":"structure","members":{"SubnetIdentifier":{},"SubnetAvailabilityZone":{"shape":"S1r"},"SubnetStatus":{}}}},"Tags":{"shape":"S7"}},"wrapper":true},"S1r":{"type":"structure","members":{"Name":{}},"wrapper":true},"S1t":{"type":"list","member":{"locationName":"SourceId"}},"S1u":{"type":"list","member":{"locationName":"EventCategory"}},"S1w":{"type":"structure","members":{"CustomerAwsId":{},"CustSubscriptionId":{},"SnsTopicArn":{},"Status":{},"SubscriptionCreationTime":{"type":"timestamp"},"SourceType":{},"SourceIdsList":{"shape":"S1t"},"EventCategoriesList":{"shape":"S1u"},"Severity":{},"Enabled":{"type":"boolean"},"Tags":{"shape":"S7"}},"wrapper":true},"S1z":{"type":"structure","members":{"HsmClientCertificateIdentifier":{},"HsmClientCertificatePublicKey":{},"Tags":{"shape":"S7"}},"wrapper":true},"S22":{"type":"structure","members":{"HsmConfigurationIdentifier":{},"Description":{},"HsmIpAddress":{},"HsmPartitionName":{},"Tags":{"shape":"S7"}},"wrapper":true},"S25":{"type":"structure","members":{"SnapshotCopyGrantName":{},"KmsKeyId":{},"Tags":{"shape":"S7"}},"wrapper":true},"S2j":{"type":"list","member":{"locationName":"TagKey"}},"S2l":{"type":"list","member":{"locationName":"TagValue"}},"S2q":{"type":"list","member":{"locationName":"Parameter","type":"structure","members":{"ParameterName":{},"ParameterValue":{},"Description":{},"Source":{},"DataType":{},"AllowedValues":{},"ApplyType":{},"IsModifiable":{"type":"boolean"},"MinimumEngineVersion":{}}}},"S3x":{"type":"structure","members":{"LoggingEnabled":{"type":"boolean"},"BucketName":{},"S3KeyPrefix":{},"LastSuccessfulDeliveryTime":{"type":"timestamp"},"LastFailureTime":{"type":"timestamp"},"LastFailureMessage":{}}},"S47":{"type":"list","member":{"locationName":"RecurringCharge","type":"structure","members":{"RecurringChargeAmount":{"type":"double"},"RecurringChargeFrequency":{}},"wrapper":true}},"S4c":{"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":"S47"}},"wrapper":true},"S4q":{"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},"S5b":{"type":"structure","members":{"ParameterGroupName":{},"ParameterGroupStatus":{}}}}}

/***/ }),
/* 304 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"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"},"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"}}}

/***/ }),
/* 305 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 306 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(307);
	    model.paginators = __webpack_require__(308).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Rekognition;


/***/ }),
/* 307 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-06-27","endpointPrefix":"rekognition","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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"}}},"output":{"type":"structure","members":{"SourceImageFace":{"type":"structure","members":{"BoundingBox":{"shape":"Sb"},"Confidence":{"type":"float"}}},"FaceMatches":{"type":"list","member":{"type":"structure","members":{"Similarity":{"type":"float"},"Face":{"shape":"Sf"}}}},"UnmatchedFaces":{"type":"list","member":{"shape":"Sf"}},"SourceImageOrientationCorrection":{},"TargetImageOrientationCorrection":{}}}},"CreateCollection":{"input":{"type":"structure","required":["CollectionId"],"members":{"CollectionId":{}}},"output":{"type":"structure","members":{"StatusCode":{"type":"integer"},"CollectionArn":{}}}},"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":"Sw"}}},"output":{"type":"structure","members":{"DeletedFaces":{"shape":"Sw"}}}},"DetectFaces":{"input":{"type":"structure","required":["Image"],"members":{"Image":{"shape":"S2"},"Attributes":{"shape":"S10"}}},"output":{"type":"structure","members":{"FaceDetails":{"type":"list","member":{"shape":"S14"}},"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":{"type":"structure","members":{"Name":{},"Confidence":{"type":"float"}}}},"OrientationCorrection":{}}}},"DetectModerationLabels":{"input":{"type":"structure","required":["Image"],"members":{"Image":{"shape":"S2"},"MinConfidence":{"type":"float"}}},"output":{"type":"structure","members":{"ModerationLabels":{"type":"list","member":{"type":"structure","members":{"Confidence":{"type":"float"},"Name":{},"ParentName":{}}}}}}},"GetCelebrityInfo":{"input":{"type":"structure","required":["Id"],"members":{"Id":{}}},"output":{"type":"structure","members":{"Urls":{"shape":"S1u"},"Name":{}}}},"IndexFaces":{"input":{"type":"structure","required":["CollectionId","Image"],"members":{"CollectionId":{},"Image":{"shape":"S2"},"ExternalImageId":{},"DetectionAttributes":{"shape":"S10"}}},"output":{"type":"structure","members":{"FaceRecords":{"type":"list","member":{"type":"structure","members":{"Face":{"shape":"S21"},"FaceDetail":{"shape":"S14"}}}},"OrientationCorrection":{}}}},"ListCollections":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"CollectionIds":{"type":"list","member":{}},"NextToken":{}}}},"ListFaces":{"input":{"type":"structure","required":["CollectionId"],"members":{"CollectionId":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Faces":{"type":"list","member":{"shape":"S21"}},"NextToken":{}}}},"RecognizeCelebrities":{"input":{"type":"structure","required":["Image"],"members":{"Image":{"shape":"S2"}}},"output":{"type":"structure","members":{"CelebrityFaces":{"type":"list","member":{"type":"structure","members":{"Urls":{"shape":"S1u"},"Name":{},"Id":{},"Face":{"shape":"Sf"},"MatchConfidence":{"type":"float"}}}},"UnrecognizedFaces":{"type":"list","member":{"shape":"Sf"}},"OrientationCorrection":{}}}},"SearchFaces":{"input":{"type":"structure","required":["CollectionId","FaceId"],"members":{"CollectionId":{},"FaceId":{},"MaxFaces":{"type":"integer"},"FaceMatchThreshold":{"type":"float"}}},"output":{"type":"structure","members":{"SearchedFaceId":{},"FaceMatches":{"shape":"S2j"}}}},"SearchFacesByImage":{"input":{"type":"structure","required":["CollectionId","Image"],"members":{"CollectionId":{},"Image":{"shape":"S2"},"MaxFaces":{"type":"integer"},"FaceMatchThreshold":{"type":"float"}}},"output":{"type":"structure","members":{"SearchedFaceBoundingBox":{"shape":"Sb"},"SearchedFaceConfidence":{"type":"float"},"FaceMatches":{"shape":"S2j"}}}}},"shapes":{"S2":{"type":"structure","members":{"Bytes":{"type":"blob"},"S3Object":{"type":"structure","members":{"Bucket":{},"Name":{},"Version":{}}}}},"Sb":{"type":"structure","members":{"Width":{"type":"float"},"Height":{"type":"float"},"Left":{"type":"float"},"Top":{"type":"float"}}},"Sf":{"type":"structure","members":{"BoundingBox":{"shape":"Sb"},"Confidence":{"type":"float"},"Landmarks":{"shape":"Sg"},"Pose":{"shape":"Sj"},"Quality":{"shape":"Sl"}}},"Sg":{"type":"list","member":{"type":"structure","members":{"Type":{},"X":{"type":"float"},"Y":{"type":"float"}}}},"Sj":{"type":"structure","members":{"Roll":{"type":"float"},"Yaw":{"type":"float"},"Pitch":{"type":"float"}}},"Sl":{"type":"structure","members":{"Brightness":{"type":"float"},"Sharpness":{"type":"float"}}},"Sw":{"type":"list","member":{}},"S10":{"type":"list","member":{}},"S14":{"type":"structure","members":{"BoundingBox":{"shape":"Sb"},"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":"Sg"},"Pose":{"shape":"Sj"},"Quality":{"shape":"Sl"},"Confidence":{"type":"float"}}},"S1u":{"type":"list","member":{}},"S21":{"type":"structure","members":{"FaceId":{},"BoundingBox":{"shape":"Sb"},"ImageId":{},"ExternalImageId":{},"Confidence":{"type":"float"}}},"S2j":{"type":"list","member":{"type":"structure","members":{"Similarity":{"type":"float"},"Face":{"shape":"S21"}}}}}}

/***/ }),
/* 308 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 309 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(310);
	    model.paginators = __webpack_require__(311).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ResourceGroupsTaggingAPI;


/***/ }),
/* 310 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-01-26","endpointPrefix":"tagging","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS Resource Groups Tagging API","signatureVersion":"v4","targetPrefix":"ResourceGroupsTaggingAPI_20170126","uid":"resourcegroupstaggingapi-2017-01-26"},"operations":{"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":{"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":{}}}}}}}}}},"GetTagKeys":{"input":{"type":"structure","members":{"PaginationToken":{}}},"output":{"type":"structure","members":{"PaginationToken":{},"TagKeys":{"type":"list","member":{}}}}},"GetTagValues":{"input":{"type":"structure","required":["Key"],"members":{"PaginationToken":{},"Key":{}}},"output":{"type":"structure","members":{"PaginationToken":{},"TagValues":{"type":"list","member":{}}}}},"TagResources":{"input":{"type":"structure","required":["ResourceARNList","Tags"],"members":{"ResourceARNList":{"shape":"Sp"},"Tags":{"type":"map","key":{},"value":{}}}},"output":{"type":"structure","members":{"FailedResourcesMap":{"shape":"Ss"}}}},"UntagResources":{"input":{"type":"structure","required":["ResourceARNList","TagKeys"],"members":{"ResourceARNList":{"shape":"Sp"},"TagKeys":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"FailedResourcesMap":{"shape":"Ss"}}}}},"shapes":{"Sp":{"type":"list","member":{}},"Ss":{"type":"map","key":{},"value":{"type":"structure","members":{"StatusCode":{"type":"integer"},"ErrorCode":{},"ErrorMessage":{}}}}}}

/***/ }),
/* 311 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 312 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['route53'] = {};
	AWS.Route53 = Service.defineService('route53', ['2013-04-01']);
	__webpack_require__(313);
	Object.defineProperty(apiLoader.services['route53'], '2013-04-01', {
	  get: function get() {
	    var model = __webpack_require__(314);
	    model.paginators = __webpack_require__(315).pagination;
	    model.waiters = __webpack_require__(316).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Route53;


/***/ }),
/* 313 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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);
	    }
	  }
	});


/***/ }),
/* 314 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-04-01","endpointPrefix":"route53","globalEndpoint":"route53.amazonaws.com","protocol":"rest-xml","serviceAbbreviation":"Route 53","serviceFullName":"Amazon Route 53","signatureVersion":"v4","uid":"route53-2013-04-01"},"operations":{"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":"S3"},"Comment":{}}},"output":{"type":"structure","required":["ChangeInfo"],"members":{"ChangeInfo":{"shape":"S8"}}}},"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":"Sh"}}}}}}}},"output":{"type":"structure","required":["ChangeInfo"],"members":{"ChangeInfo":{"shape":"S8"}}}},"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":"S15"},"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":"S1d"}}},"output":{"type":"structure","required":["HealthCheck","Location"],"members":{"HealthCheck":{"shape":"S1y"},"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":"S3"},"CallerReference":{},"HostedZoneConfig":{"shape":"S2e"},"DelegationSetId":{}}},"output":{"type":"structure","required":["HostedZone","ChangeInfo","DelegationSet","Location"],"members":{"HostedZone":{"shape":"S2h"},"ChangeInfo":{"shape":"S8"},"DelegationSet":{"shape":"S2j"},"VPC":{"shape":"S3"},"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":"S2j"},"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":"S2s"},"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":"S2x"},"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":"S2s"},"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":"S3"}}},"output":{"type":"structure","required":["HostedZoneId","VPC"],"members":{"HostedZoneId":{},"VPC":{"shape":"S3"}}}},"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":"S8"}}}},"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":"S3"}}},"output":{"type":"structure","members":{}}},"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":"S3"},"Comment":{}}},"output":{"type":"structure","required":["ChangeInfo"],"members":{"ChangeInfo":{"shape":"S8"}}}},"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":"S8"}}}},"GetCheckerIpRanges":{"http":{"method":"GET","requestUri":"/2013-04-01/checkeripranges"},"input":{"type":"structure","members":{}},"output":{"type":"structure","required":["CheckerIpRanges"],"members":{"CheckerIpRanges":{"type":"list","member":{}}}}},"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":"S3r"}}}},"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":"S1y"}}}},"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":"S42"}}}},"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":"S42"}}}},"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":"S2h"},"DelegationSet":{"shape":"S2j"},"VPCs":{"shape":"S4a"}}}},"GetHostedZoneCount":{"http":{"method":"GET","requestUri":"/2013-04-01/hostedzonecount"},"input":{"type":"structure","members":{}},"output":{"type":"structure","required":["HostedZoneCount"],"members":{"HostedZoneCount":{"type":"long"}}}},"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":"S2j"}}}},"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":"S2s"}}}},"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":"S2x"}}}},"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":"S3r","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":"S1y","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":"S4y"},"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":"S4y"},"DNSName":{},"HostedZoneId":{},"IsTruncated":{"type":"boolean"},"NextDNSName":{},"NextHostedZoneId":{},"MaxItems":{}}}},"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":"Sh","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":"S2j","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":"S59"}}}},"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":"S59","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":"S5k"},"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":"S5k"},"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":"S5k"},"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":"S2s","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":"S4a"}}}},"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"},"HealthThreshold":{"type":"integer"},"ChildHealthChecks":{"shape":"S1p"},"EnableSNI":{"type":"boolean"},"Regions":{"shape":"S1r"},"AlarmIdentifier":{"shape":"S1t"},"InsufficientDataHealthStatus":{}}},"output":{"type":"structure","required":["HealthCheck"],"members":{"HealthCheck":{"shape":"S1y"}}}},"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":"S2h"}}}},"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":"S2s"}}}},"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":"S2x"}}}}},"shapes":{"S3":{"type":"structure","members":{"VPCRegion":{},"VPCId":{}}},"S8":{"type":"structure","required":["Id","Status","SubmittedAt"],"members":{"Id":{},"Status":{},"SubmittedAt":{"type":"timestamp"},"Comment":{}}},"Sh":{"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":{}}},"S15":{"type":"list","member":{"locationName":"Tag","type":"structure","members":{"Key":{},"Value":{}}}},"S1d":{"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"},"HealthThreshold":{"type":"integer"},"ChildHealthChecks":{"shape":"S1p"},"EnableSNI":{"type":"boolean"},"Regions":{"shape":"S1r"},"AlarmIdentifier":{"shape":"S1t"},"InsufficientDataHealthStatus":{}}},"S1p":{"type":"list","member":{"locationName":"ChildHealthCheck"}},"S1r":{"type":"list","member":{"locationName":"Region"}},"S1t":{"type":"structure","required":["Region","Name"],"members":{"Region":{},"Name":{}}},"S1y":{"type":"structure","required":["Id","CallerReference","HealthCheckConfig","HealthCheckVersion"],"members":{"Id":{},"CallerReference":{},"HealthCheckConfig":{"shape":"S1d"},"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":{}}}}}}}},"S2e":{"type":"structure","members":{"Comment":{},"PrivateZone":{"type":"boolean"}}},"S2h":{"type":"structure","required":["Id","Name","CallerReference"],"members":{"Id":{},"Name":{},"CallerReference":{},"Config":{"shape":"S2e"},"ResourceRecordSetCount":{"type":"long"}}},"S2j":{"type":"structure","required":["NameServers"],"members":{"Id":{},"CallerReference":{},"NameServers":{"type":"list","member":{"locationName":"NameServer"}}}},"S2s":{"type":"structure","required":["Id","Version","Name","Type","Document"],"members":{"Id":{},"Version":{"type":"integer"},"Name":{},"Type":{},"Document":{},"Comment":{}}},"S2x":{"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":{}}},"S3r":{"type":"structure","members":{"ContinentCode":{},"ContinentName":{},"CountryCode":{},"CountryName":{},"SubdivisionCode":{},"SubdivisionName":{}}},"S42":{"type":"list","member":{"locationName":"HealthCheckObservation","type":"structure","members":{"Region":{},"IPAddress":{},"StatusReport":{"type":"structure","members":{"Status":{},"CheckedTime":{"type":"timestamp"}}}}}},"S4a":{"type":"list","member":{"shape":"S3","locationName":"VPC"}},"S4y":{"type":"list","member":{"shape":"S2h","locationName":"HostedZone"}},"S59":{"type":"structure","members":{"ResourceType":{},"ResourceId":{},"Tags":{"shape":"S15"}}},"S5k":{"type":"list","member":{"shape":"S2x","locationName":"TrafficPolicyInstance"}}}}

/***/ }),
/* 315 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"ListResourceRecordSets":{"input_token":["StartRecordName","StartRecordType","StartRecordIdentifier"],"limit_key":"MaxItems","more_results":"IsTruncated","output_token":["NextRecordName","NextRecordType","NextRecordIdentifier"],"result_key":"ResourceRecordSets"}}}

/***/ }),
/* 316 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"ResourceRecordSetsChanged":{"delay":30,"maxAttempts":60,"operation":"GetChange","acceptors":[{"matcher":"path","expected":"INSYNC","argument":"ChangeInfo.Status","state":"success"}]}}}

/***/ }),
/* 317 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(318);
	    model.paginators = __webpack_require__(319).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Route53Domains;


/***/ }),
/* 318 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-05-15","endpointPrefix":"route53domains","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon Route 53 Domains","signatureVersion":"v4","targetPrefix":"Route53Domains_v20140515","uid":"route53domains-2014-05-15"},"operations":{"CheckDomainAvailability":{"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{},"IdnLangCode":{}}},"output":{"type":"structure","required":["Availability"],"members":{"Availability":{}}}},"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":"So"},"AutoRenew":{"type":"boolean"},"AdminContact":{"shape":"Su"},"RegistrantContact":{"shape":"Su"},"TechContact":{"shape":"Su"},"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":{"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":"S24"}}}},"RegisterDomain":{"input":{"type":"structure","required":["DomainName","DurationInYears","AdminContact","RegistrantContact","TechContact"],"members":{"DomainName":{},"IdnLangCode":{},"DurationInYears":{"type":"integer"},"AutoRenew":{"type":"boolean"},"AdminContact":{"shape":"Su"},"RegistrantContact":{"shape":"Su"},"TechContact":{"shape":"Su"},"PrivacyProtectAdminContact":{"type":"boolean"},"PrivacyProtectRegistrantContact":{"type":"boolean"},"PrivacyProtectTechContact":{"type":"boolean"}}},"output":{"type":"structure","required":["OperationId"],"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":"S2h"}}}},"TransferDomain":{"input":{"type":"structure","required":["DomainName","DurationInYears","AdminContact","RegistrantContact","TechContact"],"members":{"DomainName":{},"IdnLangCode":{},"DurationInYears":{"type":"integer"},"Nameservers":{"shape":"So"},"AuthCode":{"shape":"S2h"},"AutoRenew":{"type":"boolean"},"AdminContact":{"shape":"Su"},"RegistrantContact":{"shape":"Su"},"TechContact":{"shape":"Su"},"PrivacyProtectAdminContact":{"type":"boolean"},"PrivacyProtectRegistrantContact":{"type":"boolean"},"PrivacyProtectTechContact":{"type":"boolean"}}},"output":{"type":"structure","required":["OperationId"],"members":{"OperationId":{}}}},"UpdateDomainContact":{"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{},"AdminContact":{"shape":"Su"},"RegistrantContact":{"shape":"Su"},"TechContact":{"shape":"Su"}}},"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":{},"Nameservers":{"shape":"So"}}},"output":{"type":"structure","required":["OperationId"],"members":{"OperationId":{}}}},"UpdateTagsForDomain":{"input":{"type":"structure","required":["DomainName"],"members":{"DomainName":{},"TagsToUpdate":{"shape":"S24"}}},"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":{"So":{"type":"list","member":{"type":"structure","required":["Name"],"members":{"Name":{},"GlueIps":{"type":"list","member":{}}}}},"Su":{"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},"S24":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}},"S2h":{"type":"string","sensitive":true}}}

/***/ }),
/* 319 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 320 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['s3'] = {};
	AWS.S3 = Service.defineService('s3', ['2006-03-01']);
	__webpack_require__(321);
	Object.defineProperty(apiLoader.services['s3'], '2006-03-01', {
	  get: function get() {
	    var model = __webpack_require__(324);
	    model.paginators = __webpack_require__(325).pagination;
	    model.waiters = __webpack_require__(326).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.S3;


/***/ }),
/* 321 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	var v4Credentials = __webpack_require__(322);

	// Pull in managed upload extension
	__webpack_require__(323);

	/**
	 * @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
	 ];

	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) default to lowest version the region supports
	        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
	   */
	  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) {
	    request.addListener('validate', this.validateScheme);
	    request.addListener('validate', this.validateBucketEndpoint);
	    request.addListener('validate', this.correctBucketRegionFromCache);
	    request.addListener('validate', this.validateBucketName);
	    request.addListener('build', this.addContentType);
	    request.addListener('build', this.populateURI);
	    request.addListener('build', this.computeContentMd5);
	    request.addListener('build', this.computeSseCustomerKeyMd5);
	    request.addListener('afterBuild', this.addExpect100Continue);
	    request.removeListener('validate',
	      AWS.EventListeners.Core.VALIDATE_REGION);
	    request.addListener('extractError', this.extractError);
	    request.onAsync('extractError', this.requestBucketRegion);
	    request.addListener('extractData', this.extractData);
	    request.addListener('extractData', AWS.util.hoistPayloadMember);
	    request.addListener('beforePresign', this.prepareSignedUrl);
	    if (AWS.util.isBrowser()) {
	      request.onAsync('retry', this.reqRegionForNetworkingError);
	    }
	    if (this.shouldDisableBodySigning(request))  {
	      request.removeListener('afterBuild', AWS.EventListeners.Core.COMPUTE_SHA256);
	      request.addListener('afterBuild', this.disableBodySigning);
	    }
	  },

	  /**
	   * @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 });
	    }
	  },

	  /**
	   * @api private
	   */
	  validateBucketName: function validateBucketName(req) {
	    var service = req.service;
	    var signatureVersion = service.getSignatureVersion(req);
	    // Only validate buckets when using sigv4
	    if (signatureVersion !== 'v4') {
	      return;
	    }
	    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') {
	        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 {
	        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;
	  },


	  /**
	   * 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) {
	      httpRequest.path = httpRequest.path.replace(new RegExp('/' + bucket), '');
	      if (httpRequest.path[0] !== '/') {
	        httpRequest.path = '/' + httpRequest.path;
	      }
	    }
	  },

	  /**
	   * 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.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
	  },

	  /**
	   * 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 (this.dnsCompatibleBucketName(bucketName)) {
	      return (this.config.sslEnabled && bucketName.match(/\./)) ? true : false;
	    } else {
	      return true; // not dns compatible names must always use path style
	    }
	  },

	  /**
	   * 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;
	  },

	  /**
	   * @return [Boolean] whether response contains an error
	   * @api private
	   */
	  successfulResponse: function successfulResponse(resp) {
	    var req = resp.request;
	    var httpResponse = resp.httpResponse;
	    if (operationsWith200StatusCodeError[req.operation] &&
	        httpResponse.body.toString().match('<Error>')) {
	      return false;
	    } else {
	      return httpResponse.statusCode < 300;
	    }
	  },

	  /**
	   * @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 (!service.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}.
	   * @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;
	    delete params.Expires; // we can't validate this
	    var request = this.makeRequest(operation, params);
	    return request.presign(expires, callback);
	  },


	  /**
	   * 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);
	        }

	        callback(null, finalizePost());
	      });
	    } else {
	      return finalizePost();
	    }
	  },

	  /**
	   * @api private
	   */
	  preparePostFields: function preparePostFields(
	    credentials,
	    region,
	    bucket,
	    fields,
	    conditions,
	    expiresInSeconds
	  ) {
	    var now = AWS.util.date.getDate();
	    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;
	    if (hostname !== this.api.globalEndpoint && !params.CreateBucketConfiguration) {
	      params.CreateBucketConfiguration = { LocationConstraint: this.config.region };
	    }
	    return this.makeRequest('createBucket', params, callback);
	  },

	  /**
	   * @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;
	  }
	});


/***/ }),
/* 322 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	/**
	 * @api private
	 */
	var cachedSecret = {};

	/**
	 * @api private
	 */
	var cacheQueue = [];

	/**
	 * @api private
	 */
	var maxCacheEntries = 50;

	/**
	 * @api private
	 */
	var v4Identifier = 'aws4_request';

	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 = [];
	  }
	};


/***/ }),
/* 323 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);
	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}.
	   * @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: new Buffer(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() {
	    this.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 = new AWS.util.Buffer(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 {
	      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);
	    }
	  },

	  /**
	   * @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);
	      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);

	      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)) {
	        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);

	module.exports = AWS.S3.ManagedUpload;


/***/ }),
/* 324 */
/***/ (function(module, exports) {

	module.exports = {"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","signatureVersion":"s3","timestampFormat":"rfc822","uid":"s3-2006-03-01"},"operations":{"AbortMultipartUpload":{"http":{"method":"DELETE","requestUri":"/{Bucket}/{Key+}"},"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"}}},"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"}},"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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"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":"S11","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":"S19","location":"header","locationName":"x-amz-server-side-encryption-customer-key"},"SSECustomerKeyMD5":{"location":"header","locationName":"x-amz-server-side-encryption-customer-key-MD5"},"SSEKMSKeyId":{"shape":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"CopySourceSSECustomerAlgorithm":{"location":"header","locationName":"x-amz-copy-source-server-side-encryption-customer-algorithm"},"CopySourceSSECustomerKey":{"shape":"S1c","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"}}},"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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"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"}},"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":"S11","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":"S19","location":"header","locationName":"x-amz-server-side-encryption-customer-key"},"SSECustomerKeyMD5":{"location":"header","locationName":"x-amz-server-side-encryption-customer-key-MD5"},"SSEKMSKeyId":{"shape":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"RequestPayer":{"location":"header","locationName":"x-amz-request-payer"},"Tagging":{"location":"header","locationName":"x-amz-tagging"}}},"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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"RequestCharged":{"location":"header","locationName":"x-amz-request-charged"}}},"alias":"InitiateMultipartUpload"},"DeleteBucket":{"http":{"method":"DELETE","requestUri":"/{Bucket}"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteBucketAnalyticsConfiguration":{"http":{"method":"DELETE","requestUri":"/{Bucket}?analytics"},"input":{"type":"structure","required":["Bucket","Id"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"Id":{"location":"querystring","locationName":"id"}}}},"DeleteBucketCors":{"http":{"method":"DELETE","requestUri":"/{Bucket}?cors"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteBucketInventoryConfiguration":{"http":{"method":"DELETE","requestUri":"/{Bucket}?inventory"},"input":{"type":"structure","required":["Bucket","Id"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"Id":{"location":"querystring","locationName":"id"}}}},"DeleteBucketLifecycle":{"http":{"method":"DELETE","requestUri":"/{Bucket}?lifecycle"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteBucketMetricsConfiguration":{"http":{"method":"DELETE","requestUri":"/{Bucket}?metrics"},"input":{"type":"structure","required":["Bucket","Id"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"Id":{"location":"querystring","locationName":"id"}}}},"DeleteBucketPolicy":{"http":{"method":"DELETE","requestUri":"/{Bucket}?policy"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteBucketReplication":{"http":{"method":"DELETE","requestUri":"/{Bucket}?replication"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteBucketTagging":{"http":{"method":"DELETE","requestUri":"/{Bucket}?tagging"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteBucketWebsite":{"http":{"method":"DELETE","requestUri":"/{Bucket}?website"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"DeleteObject":{"http":{"method":"DELETE","requestUri":"/{Bucket}/{Key+}"},"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"}}},"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"},"input":{"type":"structure","required":["Bucket","Key"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"Key":{"location":"uri","locationName":"Key"},"VersionId":{"location":"querystring","locationName":"versionId"}}},"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"}},"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"},"GetBucketAccelerateConfiguration":{"http":{"method":"GET","requestUri":"/{Bucket}?accelerate"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"Status":{}}}},"GetBucketAcl":{"http":{"method":"GET","requestUri":"/{Bucket}?acl"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"Owner":{"shape":"S2u"},"Grants":{"shape":"S2x","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"}}},"output":{"type":"structure","members":{"AnalyticsConfiguration":{"shape":"S36"}},"payload":"AnalyticsConfiguration"}},"GetBucketCors":{"http":{"method":"GET","requestUri":"/{Bucket}?cors"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"CORSRules":{"shape":"S3m","locationName":"CORSRule"}}}},"GetBucketInventoryConfiguration":{"http":{"method":"GET","requestUri":"/{Bucket}?inventory"},"input":{"type":"structure","required":["Bucket","Id"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"Id":{"location":"querystring","locationName":"id"}}},"output":{"type":"structure","members":{"InventoryConfiguration":{"shape":"S3z"}},"payload":"InventoryConfiguration"}},"GetBucketLifecycle":{"http":{"method":"GET","requestUri":"/{Bucket}?lifecycle"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"Rules":{"shape":"S4c","locationName":"Rule"}}},"deprecated":true},"GetBucketLifecycleConfiguration":{"http":{"method":"GET","requestUri":"/{Bucket}?lifecycle"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"Rules":{"shape":"S4r","locationName":"Rule"}}}},"GetBucketLocation":{"http":{"method":"GET","requestUri":"/{Bucket}?location"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"LocationConstraint":{}}}},"GetBucketLogging":{"http":{"method":"GET","requestUri":"/{Bucket}?logging"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"LoggingEnabled":{"shape":"S51"}}}},"GetBucketMetricsConfiguration":{"http":{"method":"GET","requestUri":"/{Bucket}?metrics"},"input":{"type":"structure","required":["Bucket","Id"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"Id":{"location":"querystring","locationName":"id"}}},"output":{"type":"structure","members":{"MetricsConfiguration":{"shape":"S59"}},"payload":"MetricsConfiguration"}},"GetBucketNotification":{"http":{"method":"GET","requestUri":"/{Bucket}?notification"},"input":{"shape":"S5c"},"output":{"shape":"S5d"},"deprecated":true},"GetBucketNotificationConfiguration":{"http":{"method":"GET","requestUri":"/{Bucket}?notification"},"input":{"shape":"S5c"},"output":{"shape":"S5o"}},"GetBucketPolicy":{"http":{"method":"GET","requestUri":"/{Bucket}?policy"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"Policy":{}},"payload":"Policy"}},"GetBucketReplication":{"http":{"method":"GET","requestUri":"/{Bucket}?replication"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"ReplicationConfiguration":{"shape":"S67"}},"payload":"ReplicationConfiguration"}},"GetBucketRequestPayment":{"http":{"method":"GET","requestUri":"/{Bucket}?requestPayment"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","members":{"Payer":{}}}},"GetBucketTagging":{"http":{"method":"GET","requestUri":"/{Bucket}?tagging"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"output":{"type":"structure","required":["TagSet"],"members":{"TagSet":{"shape":"S3c"}}}},"GetBucketVersioning":{"http":{"method":"GET","requestUri":"/{Bucket}?versioning"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"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"}}},"output":{"type":"structure","members":{"RedirectAllRequestsTo":{"shape":"S6o"},"IndexDocument":{"shape":"S6r"},"ErrorDocument":{"shape":"S6t"},"RoutingRules":{"shape":"S6u"}}}},"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"},"VersionId":{"location":"querystring","locationName":"versionId"},"SSECustomerAlgorithm":{"location":"header","locationName":"x-amz-server-side-encryption-customer-algorithm"},"SSECustomerKey":{"shape":"S19","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"}}},"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":"S11","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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"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"}},"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"}}},"output":{"type":"structure","members":{"Owner":{"shape":"S2u"},"Grants":{"shape":"S2x","locationName":"AccessControlList"},"RequestCharged":{"location":"header","locationName":"x-amz-request-charged"}}}},"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"}}},"output":{"type":"structure","required":["TagSet"],"members":{"VersionId":{"location":"header","locationName":"x-amz-version-id"},"TagSet":{"shape":"S3c"}}}},"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"}}},"output":{"type":"structure","members":{"Body":{"streaming":true,"type":"blob"},"RequestCharged":{"location":"header","locationName":"x-amz-request-charged"}},"payload":"Body"}},"HeadBucket":{"http":{"method":"HEAD","requestUri":"/{Bucket}"},"input":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}}},"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":"S19","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"}}},"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"},"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":"S11","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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"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"}}}},"ListBucketAnalyticsConfigurations":{"http":{"method":"GET","requestUri":"/{Bucket}?analytics"},"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":{},"AnalyticsConfigurationList":{"locationName":"AnalyticsConfiguration","type":"list","member":{"shape":"S36"},"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"}}},"output":{"type":"structure","members":{"ContinuationToken":{},"InventoryConfigurationList":{"locationName":"InventoryConfiguration","type":"list","member":{"shape":"S3z"},"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"}}},"output":{"type":"structure","members":{"IsTruncated":{"type":"boolean"},"ContinuationToken":{},"NextContinuationToken":{},"MetricsConfigurationList":{"locationName":"MetricsConfiguration","type":"list","member":{"shape":"S59"},"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":"S2u"}}},"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"}}},"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":"S2u"},"Initiator":{"shape":"S8q"}}},"flattened":true},"CommonPrefixes":{"shape":"S8r"},"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"}}},"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":"S2u"}}},"flattened":true},"DeleteMarkers":{"locationName":"DeleteMarker","type":"list","member":{"type":"structure","members":{"Owner":{"shape":"S2u"},"Key":{},"VersionId":{},"IsLatest":{"type":"boolean"},"LastModified":{"type":"timestamp"}}},"flattened":true},"Name":{},"Prefix":{},"Delimiter":{},"MaxKeys":{"type":"integer"},"CommonPrefixes":{"shape":"S8r"},"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"}}},"output":{"type":"structure","members":{"IsTruncated":{"type":"boolean"},"Marker":{},"NextMarker":{},"Contents":{"shape":"S99"},"Name":{},"Prefix":{},"Delimiter":{},"MaxKeys":{"type":"integer"},"CommonPrefixes":{"shape":"S8r"},"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"}}},"output":{"type":"structure","members":{"IsTruncated":{"type":"boolean"},"Contents":{"shape":"S99"},"Name":{},"Prefix":{},"Delimiter":{},"MaxKeys":{"type":"integer"},"CommonPrefixes":{"shape":"S8r"},"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"}}},"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":"S8q"},"Owner":{"shape":"S2u"},"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":{}}}},"payload":"AccelerateConfiguration"}},"PutBucketAcl":{"http":{"method":"PUT","requestUri":"/{Bucket}?acl"},"input":{"type":"structure","required":["Bucket"],"members":{"ACL":{"location":"header","locationName":"x-amz-acl"},"AccessControlPolicy":{"shape":"S9r","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"}},"payload":"AccessControlPolicy"}},"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":"S36","locationName":"AnalyticsConfiguration","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"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":"S3m","locationName":"CORSRule"}}},"ContentMD5":{"location":"header","locationName":"Content-MD5"}},"payload":"CORSConfiguration"}},"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":"S3z","locationName":"InventoryConfiguration","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"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":"S4c","locationName":"Rule"}}}},"payload":"LifecycleConfiguration"},"deprecated":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":"S4r","locationName":"Rule"}}}},"payload":"LifecycleConfiguration"}},"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":"S51"}}},"ContentMD5":{"location":"header","locationName":"Content-MD5"}},"payload":"BucketLoggingStatus"}},"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":"S59","locationName":"MetricsConfiguration","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"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":"S5d","locationName":"NotificationConfiguration","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"payload":"NotificationConfiguration"},"deprecated":true},"PutBucketNotificationConfiguration":{"http":{"method":"PUT","requestUri":"/{Bucket}?notification"},"input":{"type":"structure","required":["Bucket","NotificationConfiguration"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"},"NotificationConfiguration":{"shape":"S5o","locationName":"NotificationConfiguration","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"payload":"NotificationConfiguration"}},"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"},"Policy":{}},"payload":"Policy"}},"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":"S67","locationName":"ReplicationConfiguration","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"payload":"ReplicationConfiguration"}},"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":{}}}},"payload":"RequestPaymentConfiguration"}},"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":"Sab","locationName":"Tagging","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"payload":"Tagging"}},"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":{}}}},"payload":"VersioningConfiguration"}},"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":"S6t"},"IndexDocument":{"shape":"S6r"},"RedirectAllRequestsTo":{"shape":"S6o"},"RoutingRules":{"shape":"S6u"}}}},"payload":"WebsiteConfiguration"}},"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":"S11","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":"S19","location":"header","locationName":"x-amz-server-side-encryption-customer-key"},"SSECustomerKeyMD5":{"location":"header","locationName":"x-amz-server-side-encryption-customer-key-MD5"},"SSEKMSKeyId":{"shape":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"RequestPayer":{"location":"header","locationName":"x-amz-request-payer"},"Tagging":{"location":"header","locationName":"x-amz-tagging"}},"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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"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":"S9r","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"}},"payload":"AccessControlPolicy"},"output":{"type":"structure","members":{"RequestCharged":{"location":"header","locationName":"x-amz-request-charged"}}}},"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":"Sab","locationName":"Tagging","xmlNamespace":{"uri":"http://s3.amazonaws.com/doc/2006-03-01/"}}},"payload":"Tagging"},"output":{"type":"structure","members":{"VersionId":{"location":"header","locationName":"x-amz-version-id"}}}},"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","required":["Days"],"members":{"Days":{"type":"integer"},"GlacierJobParameters":{"type":"structure","required":["Tier"],"members":{"Tier":{}}}}},"RequestPayer":{"location":"header","locationName":"x-amz-request-payer"}},"payload":"RestoreRequest"},"output":{"type":"structure","members":{"RequestCharged":{"location":"header","locationName":"x-amz-request-charged"}}},"alias":"PostObjectRestore"},"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":"S19","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"}},"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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"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":"S19","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":"S1c","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"}}},"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":"Sj","location":"header","locationName":"x-amz-server-side-encryption-aws-kms-key-id"},"RequestCharged":{"location":"header","locationName":"x-amz-request-charged"}},"payload":"CopyPartResult"}}},"shapes":{"Sj":{"type":"string","sensitive":true},"S11":{"type":"map","key":{},"value":{}},"S19":{"type":"blob","sensitive":true},"S1c":{"type":"blob","sensitive":true},"S2u":{"type":"structure","members":{"DisplayName":{},"ID":{}}},"S2x":{"type":"list","member":{"locationName":"Grant","type":"structure","members":{"Grantee":{"shape":"S2z"},"Permission":{}}}},"S2z":{"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"}},"S36":{"type":"structure","required":["Id","StorageClassAnalysis"],"members":{"Id":{},"Filter":{"type":"structure","members":{"Prefix":{},"Tag":{"shape":"S39"},"And":{"type":"structure","members":{"Prefix":{},"Tags":{"shape":"S3c","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":{}}}}}}}}}}},"S39":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}},"S3c":{"type":"list","member":{"shape":"S39","locationName":"Tag"}},"S3m":{"type":"list","member":{"type":"structure","required":["AllowedMethods","AllowedOrigins"],"members":{"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},"S3z":{"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":{}}}}},"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":{}}}}},"S4c":{"type":"list","member":{"type":"structure","required":["Prefix","Status"],"members":{"Expiration":{"shape":"S4e"},"ID":{},"Prefix":{},"Status":{},"Transition":{"shape":"S4j"},"NoncurrentVersionTransition":{"shape":"S4l"},"NoncurrentVersionExpiration":{"shape":"S4m"},"AbortIncompleteMultipartUpload":{"shape":"S4n"}}},"flattened":true},"S4e":{"type":"structure","members":{"Date":{"shape":"S4f"},"Days":{"type":"integer"},"ExpiredObjectDeleteMarker":{"type":"boolean"}}},"S4f":{"type":"timestamp","timestampFormat":"iso8601"},"S4j":{"type":"structure","members":{"Date":{"shape":"S4f"},"Days":{"type":"integer"},"StorageClass":{}}},"S4l":{"type":"structure","members":{"NoncurrentDays":{"type":"integer"},"StorageClass":{}}},"S4m":{"type":"structure","members":{"NoncurrentDays":{"type":"integer"}}},"S4n":{"type":"structure","members":{"DaysAfterInitiation":{"type":"integer"}}},"S4r":{"type":"list","member":{"type":"structure","required":["Status"],"members":{"Expiration":{"shape":"S4e"},"ID":{},"Prefix":{"deprecated":true},"Filter":{"type":"structure","members":{"Prefix":{},"Tag":{"shape":"S39"},"And":{"type":"structure","members":{"Prefix":{},"Tags":{"shape":"S3c","flattened":true,"locationName":"Tag"}}}}},"Status":{},"Transitions":{"locationName":"Transition","type":"list","member":{"shape":"S4j"},"flattened":true},"NoncurrentVersionTransitions":{"locationName":"NoncurrentVersionTransition","type":"list","member":{"shape":"S4l"},"flattened":true},"NoncurrentVersionExpiration":{"shape":"S4m"},"AbortIncompleteMultipartUpload":{"shape":"S4n"}}},"flattened":true},"S51":{"type":"structure","members":{"TargetBucket":{},"TargetGrants":{"type":"list","member":{"locationName":"Grant","type":"structure","members":{"Grantee":{"shape":"S2z"},"Permission":{}}}},"TargetPrefix":{}}},"S59":{"type":"structure","required":["Id"],"members":{"Id":{},"Filter":{"type":"structure","members":{"Prefix":{},"Tag":{"shape":"S39"},"And":{"type":"structure","members":{"Prefix":{},"Tags":{"shape":"S3c","flattened":true,"locationName":"Tag"}}}}}}},"S5c":{"type":"structure","required":["Bucket"],"members":{"Bucket":{"location":"uri","locationName":"Bucket"}}},"S5d":{"type":"structure","members":{"TopicConfiguration":{"type":"structure","members":{"Id":{},"Events":{"shape":"S5g","locationName":"Event"},"Event":{"deprecated":true},"Topic":{}}},"QueueConfiguration":{"type":"structure","members":{"Id":{},"Event":{"deprecated":true},"Events":{"shape":"S5g","locationName":"Event"},"Queue":{}}},"CloudFunctionConfiguration":{"type":"structure","members":{"Id":{},"Event":{"deprecated":true},"Events":{"shape":"S5g","locationName":"Event"},"CloudFunction":{},"InvocationRole":{}}}}},"S5g":{"type":"list","member":{},"flattened":true},"S5o":{"type":"structure","members":{"TopicConfigurations":{"locationName":"TopicConfiguration","type":"list","member":{"type":"structure","required":["TopicArn","Events"],"members":{"Id":{},"TopicArn":{"locationName":"Topic"},"Events":{"shape":"S5g","locationName":"Event"},"Filter":{"shape":"S5r"}}},"flattened":true},"QueueConfigurations":{"locationName":"QueueConfiguration","type":"list","member":{"type":"structure","required":["QueueArn","Events"],"members":{"Id":{},"QueueArn":{"locationName":"Queue"},"Events":{"shape":"S5g","locationName":"Event"},"Filter":{"shape":"S5r"}}},"flattened":true},"LambdaFunctionConfigurations":{"locationName":"CloudFunctionConfiguration","type":"list","member":{"type":"structure","required":["LambdaFunctionArn","Events"],"members":{"Id":{},"LambdaFunctionArn":{"locationName":"CloudFunction"},"Events":{"shape":"S5g","locationName":"Event"},"Filter":{"shape":"S5r"}}},"flattened":true}}},"S5r":{"type":"structure","members":{"Key":{"locationName":"S3Key","type":"structure","members":{"FilterRules":{"locationName":"FilterRule","type":"list","member":{"type":"structure","members":{"Name":{},"Value":{}}},"flattened":true}}}}},"S67":{"type":"structure","required":["Role","Rules"],"members":{"Role":{},"Rules":{"locationName":"Rule","type":"list","member":{"type":"structure","required":["Prefix","Status","Destination"],"members":{"ID":{},"Prefix":{},"Status":{},"Destination":{"type":"structure","required":["Bucket"],"members":{"Bucket":{},"StorageClass":{}}}}},"flattened":true}}},"S6o":{"type":"structure","required":["HostName"],"members":{"HostName":{},"Protocol":{}}},"S6r":{"type":"structure","required":["Suffix"],"members":{"Suffix":{}}},"S6t":{"type":"structure","required":["Key"],"members":{"Key":{}}},"S6u":{"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":{}}}}}},"S8q":{"type":"structure","members":{"ID":{},"DisplayName":{}}},"S8r":{"type":"list","member":{"type":"structure","members":{"Prefix":{}}},"flattened":true},"S99":{"type":"list","member":{"type":"structure","members":{"Key":{},"LastModified":{"type":"timestamp"},"ETag":{},"Size":{"type":"integer"},"StorageClass":{},"Owner":{"shape":"S2u"}}},"flattened":true},"S9r":{"type":"structure","members":{"Grants":{"shape":"S2x","locationName":"AccessControlList"},"Owner":{"shape":"S2u"}}},"Sab":{"type":"structure","required":["TagSet"],"members":{"TagSet":{"shape":"S3c"}}}}}

/***/ }),
/* 325 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 326 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"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"}]}}}

/***/ }),
/* 327 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(328);
	    model.paginators = __webpack_require__(329).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.ServiceCatalog;


/***/ }),
/* 328 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-12-10","endpointPrefix":"servicecatalog","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS Service Catalog","signatureVersion":"v4","targetPrefix":"AWS242ServiceCatalogService","uid":"servicecatalog-2015-12-10"},"operations":{"AcceptPortfolioShare":{"input":{"type":"structure","required":["PortfolioId"],"members":{"AcceptLanguage":{},"PortfolioId":{}}},"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":{}}},"AssociateTagOptionWithResource":{"input":{"type":"structure","required":["ResourceId","TagOptionId"],"members":{"ResourceId":{},"TagOptionId":{}}},"output":{"type":"structure","members":{}}},"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":"Sl"},"ConstraintParameters":{},"Status":{}}}},"CreatePortfolio":{"input":{"type":"structure","required":["DisplayName","ProviderName","IdempotencyToken"],"members":{"AcceptLanguage":{},"DisplayName":{},"Description":{},"ProviderName":{},"Tags":{"shape":"Ss"},"IdempotencyToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"PortfolioDetail":{"shape":"Sx"},"Tags":{"shape":"S10"}}}},"CreatePortfolioShare":{"input":{"type":"structure","required":["PortfolioId","AccountId"],"members":{"AcceptLanguage":{},"PortfolioId":{},"AccountId":{}}},"output":{"type":"structure","members":{}}},"CreateProduct":{"input":{"type":"structure","required":["Name","Owner","ProductType","ProvisioningArtifactParameters","IdempotencyToken"],"members":{"AcceptLanguage":{},"Name":{},"Owner":{},"Description":{},"Distributor":{},"SupportDescription":{},"SupportEmail":{},"SupportUrl":{},"ProductType":{},"Tags":{"shape":"Ss"},"ProvisioningArtifactParameters":{"shape":"S1b"},"IdempotencyToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"ProductViewDetail":{"shape":"S1j"},"ProvisioningArtifactDetail":{"shape":"S1o"},"Tags":{"shape":"S10"}}}},"CreateProvisioningArtifact":{"input":{"type":"structure","required":["ProductId","Parameters","IdempotencyToken"],"members":{"AcceptLanguage":{},"ProductId":{},"Parameters":{"shape":"S1b"},"IdempotencyToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"ProvisioningArtifactDetail":{"shape":"S1o"},"Info":{"shape":"S1e"},"Status":{}}}},"CreateTagOption":{"input":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}},"output":{"type":"structure","members":{"TagOptionDetail":{"shape":"S1v"}}}},"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","AccountId"],"members":{"AcceptLanguage":{},"PortfolioId":{},"AccountId":{}}},"output":{"type":"structure","members":{}}},"DeleteProduct":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{}}},"DeleteProvisioningArtifact":{"input":{"type":"structure","required":["ProductId","ProvisioningArtifactId"],"members":{"AcceptLanguage":{},"ProductId":{},"ProvisioningArtifactId":{}}},"output":{"type":"structure","members":{}}},"DescribeConstraint":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{"ConstraintDetail":{"shape":"Sl"},"ConstraintParameters":{},"Status":{}}}},"DescribePortfolio":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{"PortfolioDetail":{"shape":"Sx"},"Tags":{"shape":"S10"},"TagOptions":{"shape":"S2b"}}}},"DescribeProduct":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{"ProductViewSummary":{"shape":"S1k"},"ProvisioningArtifacts":{"shape":"S2e"}}}},"DescribeProductAsAdmin":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{"ProductViewDetail":{"shape":"S1j"},"ProvisioningArtifactSummaries":{"type":"list","member":{"type":"structure","members":{"Id":{},"Name":{},"Description":{},"CreatedTime":{"type":"timestamp"},"ProvisioningArtifactMetadata":{"shape":"S1e"}}}},"Tags":{"shape":"S10"},"TagOptions":{"shape":"S2b"}}}},"DescribeProductView":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{"ProductViewSummary":{"shape":"S1k"},"ProvisioningArtifacts":{"shape":"S2e"}}}},"DescribeProvisionedProduct":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{}}},"output":{"type":"structure","members":{"ProvisionedProductDetail":{"shape":"S2p"}}}},"DescribeProvisioningArtifact":{"input":{"type":"structure","required":["ProvisioningArtifactId","ProductId"],"members":{"AcceptLanguage":{},"ProvisioningArtifactId":{},"ProductId":{},"Verbose":{"type":"boolean"}}},"output":{"type":"structure","members":{"ProvisioningArtifactDetail":{"shape":"S1o"},"Info":{"shape":"S1e"},"Status":{}}}},"DescribeProvisioningParameters":{"input":{"type":"structure","required":["ProductId","ProvisioningArtifactId"],"members":{"AcceptLanguage":{},"ProductId":{},"ProvisioningArtifactId":{},"PathId":{}}},"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":{}}}}}}},"ConstraintSummaries":{"shape":"S3b"},"UsageInstructions":{"type":"list","member":{"type":"structure","members":{"Type":{},"Value":{}}}},"TagOptions":{"type":"list","member":{"type":"structure","members":{"Key":{},"Values":{"type":"list","member":{}}}}}}}},"DescribeRecord":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{},"PageToken":{},"PageSize":{"type":"integer"}}},"output":{"type":"structure","members":{"RecordDetail":{"shape":"S3o"},"RecordOutputs":{"type":"list","member":{"type":"structure","members":{"OutputKey":{},"OutputValue":{},"Description":{}}}},"NextPageToken":{}}}},"DescribeTagOption":{"input":{"type":"structure","required":["Id"],"members":{"Id":{}}},"output":{"type":"structure","members":{"TagOptionDetail":{"shape":"S1v"}}}},"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":{}}},"DisassociateTagOptionFromResource":{"input":{"type":"structure","required":["ResourceId","TagOptionId"],"members":{"ResourceId":{},"TagOptionId":{}}},"output":{"type":"structure","members":{}}},"ListAcceptedPortfolioShares":{"input":{"type":"structure","members":{"AcceptLanguage":{},"PageToken":{},"PageSize":{"type":"integer"}}},"output":{"type":"structure","members":{"PortfolioDetails":{"shape":"S4f"},"NextPageToken":{}}}},"ListConstraintsForPortfolio":{"input":{"type":"structure","required":["PortfolioId"],"members":{"AcceptLanguage":{},"PortfolioId":{},"ProductId":{},"PageSize":{"type":"integer"},"PageToken":{}}},"output":{"type":"structure","members":{"ConstraintDetails":{"type":"list","member":{"shape":"Sl"}},"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":"S3b"},"Tags":{"shape":"S10"},"Name":{}}}},"NextPageToken":{}}}},"ListPortfolioAccess":{"input":{"type":"structure","required":["PortfolioId"],"members":{"AcceptLanguage":{},"PortfolioId":{}}},"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":"S4f"},"NextPageToken":{}}}},"ListPortfoliosForProduct":{"input":{"type":"structure","required":["ProductId"],"members":{"AcceptLanguage":{},"ProductId":{},"PageToken":{},"PageSize":{"type":"integer"}}},"output":{"type":"structure","members":{"PortfolioDetails":{"shape":"S4f"},"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":{}}}},"ListProvisioningArtifacts":{"input":{"type":"structure","required":["ProductId"],"members":{"AcceptLanguage":{},"ProductId":{}}},"output":{"type":"structure","members":{"ProvisioningArtifactDetails":{"type":"list","member":{"shape":"S1o"}},"NextPageToken":{}}}},"ListRecordHistory":{"input":{"type":"structure","members":{"AcceptLanguage":{},"AccessLevelFilter":{"shape":"S53"},"SearchFilter":{"type":"structure","members":{"Key":{},"Value":{}}},"PageSize":{"type":"integer"},"PageToken":{}}},"output":{"type":"structure","members":{"RecordDetails":{"type":"list","member":{"shape":"S3o"}},"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":{}}}},"ListTagOptions":{"input":{"type":"structure","members":{"Filters":{"type":"structure","members":{"Key":{},"Value":{},"Active":{"type":"boolean"}}},"PageSize":{"type":"integer"},"PageToken":{}}},"output":{"type":"structure","members":{"TagOptionDetails":{"shape":"S2b"},"PageToken":{}}}},"ProvisionProduct":{"input":{"type":"structure","required":["ProductId","ProvisioningArtifactId","ProvisionedProductName","ProvisionToken"],"members":{"AcceptLanguage":{},"ProductId":{},"ProvisioningArtifactId":{},"PathId":{},"ProvisionedProductName":{},"ProvisioningParameters":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}},"Tags":{"shape":"S10"},"NotificationArns":{"type":"list","member":{}},"ProvisionToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"RecordDetail":{"shape":"S3o"}}}},"RejectPortfolioShare":{"input":{"type":"structure","required":["PortfolioId"],"members":{"AcceptLanguage":{},"PortfolioId":{}}},"output":{"type":"structure","members":{}}},"ScanProvisionedProducts":{"input":{"type":"structure","members":{"AcceptLanguage":{},"AccessLevelFilter":{"shape":"S53"},"PageSize":{"type":"integer"},"PageToken":{}}},"output":{"type":"structure","members":{"ProvisionedProducts":{"type":"list","member":{"shape":"S2p"}},"NextPageToken":{}}}},"SearchProducts":{"input":{"type":"structure","members":{"AcceptLanguage":{},"Filters":{"shape":"S61"},"PageSize":{"type":"integer"},"SortBy":{},"SortOrder":{},"PageToken":{}}},"output":{"type":"structure","members":{"ProductViewSummaries":{"type":"list","member":{"shape":"S1k"}},"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":"S61"},"SortBy":{},"SortOrder":{},"PageToken":{},"PageSize":{"type":"integer"},"ProductSource":{}}},"output":{"type":"structure","members":{"ProductViewDetails":{"type":"list","member":{"shape":"S1j"}},"NextPageToken":{}}}},"TerminateProvisionedProduct":{"input":{"type":"structure","required":["TerminateToken"],"members":{"ProvisionedProductName":{},"ProvisionedProductId":{},"TerminateToken":{"idempotencyToken":true},"IgnoreErrors":{"type":"boolean"},"AcceptLanguage":{}}},"output":{"type":"structure","members":{"RecordDetail":{"shape":"S3o"}}}},"UpdateConstraint":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{},"Description":{}}},"output":{"type":"structure","members":{"ConstraintDetail":{"shape":"Sl"},"ConstraintParameters":{},"Status":{}}}},"UpdatePortfolio":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{},"DisplayName":{},"Description":{},"ProviderName":{},"AddTags":{"shape":"Ss"},"RemoveTags":{"shape":"S6p"}}},"output":{"type":"structure","members":{"PortfolioDetail":{"shape":"Sx"},"Tags":{"shape":"S10"}}}},"UpdateProduct":{"input":{"type":"structure","required":["Id"],"members":{"AcceptLanguage":{},"Id":{},"Name":{},"Owner":{},"Description":{},"Distributor":{},"SupportDescription":{},"SupportEmail":{},"SupportUrl":{},"AddTags":{"shape":"Ss"},"RemoveTags":{"shape":"S6p"}}},"output":{"type":"structure","members":{"ProductViewDetail":{"shape":"S1j"},"Tags":{"shape":"S10"}}}},"UpdateProvisionedProduct":{"input":{"type":"structure","required":["UpdateToken"],"members":{"AcceptLanguage":{},"ProvisionedProductName":{},"ProvisionedProductId":{},"ProductId":{},"ProvisioningArtifactId":{},"PathId":{},"ProvisioningParameters":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{},"UsePreviousValue":{"type":"boolean"}}}},"UpdateToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"RecordDetail":{"shape":"S3o"}}}},"UpdateProvisioningArtifact":{"input":{"type":"structure","required":["ProductId","ProvisioningArtifactId"],"members":{"AcceptLanguage":{},"ProductId":{},"ProvisioningArtifactId":{},"Name":{},"Description":{}}},"output":{"type":"structure","members":{"ProvisioningArtifactDetail":{"shape":"S1o"},"Info":{"shape":"S1e"},"Status":{}}}},"UpdateTagOption":{"input":{"type":"structure","required":["Id"],"members":{"Id":{},"Value":{},"Active":{"type":"boolean"}}},"output":{"type":"structure","members":{"TagOptionDetail":{"shape":"S1v"}}}}},"shapes":{"Sl":{"type":"structure","members":{"ConstraintId":{},"Type":{},"Description":{},"Owner":{}}},"Ss":{"type":"list","member":{"shape":"St"}},"St":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}},"Sx":{"type":"structure","members":{"Id":{},"ARN":{},"DisplayName":{},"Description":{},"CreatedTime":{"type":"timestamp"},"ProviderName":{}}},"S10":{"type":"list","member":{"shape":"St"}},"S1b":{"type":"structure","required":["Info"],"members":{"Name":{},"Description":{},"Info":{"shape":"S1e"},"Type":{}}},"S1e":{"type":"map","key":{},"value":{}},"S1j":{"type":"structure","members":{"ProductViewSummary":{"shape":"S1k"},"Status":{},"ProductARN":{},"CreatedTime":{"type":"timestamp"}}},"S1k":{"type":"structure","members":{"Id":{},"ProductId":{},"Name":{},"Owner":{},"ShortDescription":{},"Type":{},"Distributor":{},"HasDefaultPath":{"type":"boolean"},"SupportEmail":{},"SupportDescription":{},"SupportUrl":{}}},"S1o":{"type":"structure","members":{"Id":{},"Name":{},"Description":{},"Type":{},"CreatedTime":{"type":"timestamp"}}},"S1v":{"type":"structure","members":{"Key":{},"Value":{},"Active":{"type":"boolean"},"Id":{}}},"S2b":{"type":"list","member":{"shape":"S1v"}},"S2e":{"type":"list","member":{"type":"structure","members":{"Id":{},"Name":{},"Description":{},"CreatedTime":{"type":"timestamp"}}}},"S2p":{"type":"structure","members":{"Name":{},"Arn":{},"Type":{},"Id":{},"Status":{},"StatusMessage":{},"CreatedTime":{"type":"timestamp"},"IdempotencyToken":{},"LastRecordId":{}}},"S3b":{"type":"list","member":{"type":"structure","members":{"Type":{},"Description":{}}}},"S3o":{"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":{}}}}}},"S4f":{"type":"list","member":{"shape":"Sx"}},"S53":{"type":"structure","members":{"Key":{},"Value":{}}},"S61":{"type":"map","key":{},"value":{"type":"list","member":{}}},"S6p":{"type":"list","member":{}}}}

/***/ }),
/* 329 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListResourcesForTagOption":{"input_token":"PageToken","output_token":"PageToken","limit_key":"PageSize"},"ListTagOptions":{"input_token":"PageToken","output_token":"PageToken","limit_key":"PageSize"}}}

/***/ }),
/* 330 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(331);
	    model.paginators = __webpack_require__(332).pagination;
	    model.waiters = __webpack_require__(333).waiters;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SES;


/***/ }),
/* 331 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"email-2010-12-01","apiVersion":"2010-12-01","endpointPrefix":"email","protocol":"query","serviceAbbreviation":"Amazon SES","serviceFullName":"Amazon Simple Email Service","signatureVersion":"v4","signingName":"ses","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":{}}},"CreateReceiptFilter":{"input":{"type":"structure","required":["Filter"],"members":{"Filter":{"shape":"So"}}},"output":{"resultWrapper":"CreateReceiptFilterResult","type":"structure","members":{}}},"CreateReceiptRule":{"input":{"type":"structure","required":["RuleSetName","Rule"],"members":{"RuleSetName":{},"After":{},"Rule":{"shape":"Sw"}}},"output":{"resultWrapper":"CreateReceiptRuleResult","type":"structure","members":{}}},"CreateReceiptRuleSet":{"input":{"type":"structure","required":["RuleSetName"],"members":{"RuleSetName":{}}},"output":{"resultWrapper":"CreateReceiptRuleSetResult","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":{}}},"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":{}}},"DeleteVerifiedEmailAddress":{"input":{"type":"structure","required":["EmailAddress"],"members":{"EmailAddress":{}}}},"DescribeActiveReceiptRuleSet":{"input":{"type":"structure","members":{}},"output":{"resultWrapper":"DescribeActiveReceiptRuleSetResult","type":"structure","members":{"Metadata":{"shape":"S26"},"Rules":{"shape":"S28"}}}},"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"}}}}},"DescribeReceiptRule":{"input":{"type":"structure","required":["RuleSetName","RuleName"],"members":{"RuleSetName":{},"RuleName":{}}},"output":{"resultWrapper":"DescribeReceiptRuleResult","type":"structure","members":{"Rule":{"shape":"Sw"}}}},"DescribeReceiptRuleSet":{"input":{"type":"structure","required":["RuleSetName"],"members":{"RuleSetName":{}}},"output":{"resultWrapper":"DescribeReceiptRuleSetResult","type":"structure","members":{"Metadata":{"shape":"S26"},"Rules":{"shape":"S28"}}}},"GetIdentityDkimAttributes":{"input":{"type":"structure","required":["Identities"],"members":{"Identities":{"shape":"S2j"}}},"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":"S2o"}}}}}}},"GetIdentityMailFromDomainAttributes":{"input":{"type":"structure","required":["Identities"],"members":{"Identities":{"shape":"S2j"}}},"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":"S2j"}}},"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":"S33"}}},"output":{"resultWrapper":"GetIdentityPoliciesResult","type":"structure","required":["Policies"],"members":{"Policies":{"type":"map","key":{},"value":{}}}}},"GetIdentityVerificationAttributes":{"input":{"type":"structure","required":["Identities"],"members":{"Identities":{"shape":"S2j"}}},"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"}}}}}}},"ListConfigurationSets":{"input":{"type":"structure","members":{"NextToken":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListConfigurationSetsResult","type":"structure","members":{"ConfigurationSets":{"type":"list","member":{"shape":"S5"}},"NextToken":{}}}},"ListIdentities":{"input":{"type":"structure","members":{"IdentityType":{},"NextToken":{},"MaxItems":{"type":"integer"}}},"output":{"resultWrapper":"ListIdentitiesResult","type":"structure","required":["Identities"],"members":{"Identities":{"shape":"S2j"},"NextToken":{}}}},"ListIdentityPolicies":{"input":{"type":"structure","required":["Identity"],"members":{"Identity":{}}},"output":{"resultWrapper":"ListIdentityPoliciesResult","type":"structure","required":["PolicyNames"],"members":{"PolicyNames":{"shape":"S33"}}}},"ListReceiptFilters":{"input":{"type":"structure","members":{}},"output":{"resultWrapper":"ListReceiptFiltersResult","type":"structure","members":{"Filters":{"type":"list","member":{"shape":"So"}}}}},"ListReceiptRuleSets":{"input":{"type":"structure","members":{"NextToken":{}}},"output":{"resultWrapper":"ListReceiptRuleSetsResult","type":"structure","members":{"RuleSets":{"type":"list","member":{"shape":"S26"}},"NextToken":{}}}},"ListVerifiedEmailAddresses":{"output":{"resultWrapper":"ListVerifiedEmailAddressesResult","type":"structure","members":{"VerifiedEmailAddresses":{"shape":"S40"}}}},"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":"S4c"}}},"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":"S4c"}}}}}},"BounceSenderArn":{}}},"output":{"resultWrapper":"SendBounceResult","type":"structure","members":{"MessageId":{}}}},"SendEmail":{"input":{"type":"structure","required":["Source","Destination","Message"],"members":{"Source":{},"Destination":{"type":"structure","members":{"ToAddresses":{"shape":"S40"},"CcAddresses":{"shape":"S40"},"BccAddresses":{"shape":"S40"}}},"Message":{"type":"structure","required":["Subject","Body"],"members":{"Subject":{"shape":"S4t"},"Body":{"type":"structure","members":{"Text":{"shape":"S4t"},"Html":{"shape":"S4t"}}}}},"ReplyToAddresses":{"shape":"S40"},"ReturnPath":{},"SourceArn":{},"ReturnPathArn":{},"Tags":{"shape":"S4x"},"ConfigurationSetName":{}}},"output":{"resultWrapper":"SendEmailResult","type":"structure","required":["MessageId"],"members":{"MessageId":{}}}},"SendRawEmail":{"input":{"type":"structure","required":["RawMessage"],"members":{"Source":{},"Destinations":{"shape":"S40"},"RawMessage":{"type":"structure","required":["Data"],"members":{"Data":{"type":"blob"}}},"FromArn":{},"SourceArn":{},"ReturnPathArn":{},"Tags":{"shape":"S4x"},"ConfigurationSetName":{}}},"output":{"resultWrapper":"SendRawEmailResult","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":{}}},"UpdateConfigurationSetEventDestination":{"input":{"type":"structure","required":["ConfigurationSetName","EventDestination"],"members":{"ConfigurationSetName":{},"EventDestination":{"shape":"S9"}}},"output":{"resultWrapper":"UpdateConfigurationSetEventDestinationResult","type":"structure","members":{}}},"UpdateReceiptRule":{"input":{"type":"structure","required":["RuleSetName","Rule"],"members":{"RuleSetName":{},"Rule":{"shape":"Sw"}}},"output":{"resultWrapper":"UpdateReceiptRuleResult","type":"structure","members":{}}},"VerifyDomainDkim":{"input":{"type":"structure","required":["Domain"],"members":{"Domain":{}}},"output":{"resultWrapper":"VerifyDomainDkimResult","type":"structure","required":["DkimTokens"],"members":{"DkimTokens":{"shape":"S2o"}}}},"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":{}}}}}}}},"So":{"type":"structure","required":["Name","IpFilter"],"members":{"Name":{},"IpFilter":{"type":"structure","required":["Policy","Cidr"],"members":{"Policy":{},"Cidr":{}}}}},"Sw":{"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"}}},"S26":{"type":"structure","members":{"Name":{},"CreatedTimestamp":{"type":"timestamp"}}},"S28":{"type":"list","member":{"shape":"Sw"}},"S2j":{"type":"list","member":{}},"S2o":{"type":"list","member":{}},"S33":{"type":"list","member":{}},"S40":{"type":"list","member":{}},"S4c":{"type":"list","member":{"type":"structure","required":["Name","Value"],"members":{"Name":{},"Value":{}}}},"S4t":{"type":"structure","required":["Data"],"members":{"Data":{},"Charset":{}}},"S4x":{"type":"list","member":{"type":"structure","required":["Name","Value"],"members":{"Name":{},"Value":{}}}}}}

/***/ }),
/* 332 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListIdentities":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxItems","result_key":"Identities"},"ListVerifiedEmailAddresses":{"result_key":"VerifiedEmailAddresses"}}}

/***/ }),
/* 333 */
/***/ (function(module, exports) {

	module.exports = {"version":2,"waiters":{"IdentityExists":{"delay":3,"operation":"GetIdentityVerificationAttributes","maxAttempts":20,"acceptors":[{"expected":"Success","matcher":"pathAll","state":"success","argument":"VerificationAttributes.*.VerificationStatus"}]}}}

/***/ }),
/* 334 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(335);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Shield;


/***/ }),
/* 335 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-06-02","endpointPrefix":"shield","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"AWS Shield","serviceFullName":"AWS Shield","signatureVersion":"v4","targetPrefix":"AWSShield_20160616","uid":"shield-2016-06-02"},"operations":{"CreateProtection":{"input":{"type":"structure","required":["Name","ResourceArn"],"members":{"Name":{},"ResourceArn":{}}},"output":{"type":"structure","members":{"ProtectionId":{}}}},"CreateSubscription":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{}}},"DeleteProtection":{"input":{"type":"structure","required":["ProtectionId"],"members":{"ProtectionId":{}}},"output":{"type":"structure","members":{}}},"DeleteSubscription":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{}}},"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":"Sm"}}}},"Counters":{"shape":"Sm"}}}},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"AttackCounters":{"shape":"Sm"},"Mitigations":{"type":"list","member":{"type":"structure","members":{"MitigationName":{}}}}}}}}},"DescribeProtection":{"input":{"type":"structure","required":["ProtectionId"],"members":{"ProtectionId":{}}},"output":{"type":"structure","members":{"Protection":{"shape":"Sv"}}}},"DescribeSubscription":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{"Subscription":{"type":"structure","members":{"StartTime":{"type":"timestamp"},"TimeCommitmentInSeconds":{"type":"long"}}}}}},"ListAttacks":{"input":{"type":"structure","members":{"ResourceArns":{"type":"list","member":{}},"StartTime":{"shape":"S13"},"EndTime":{"shape":"S13"},"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":{}}}},"ListProtections":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Protections":{"type":"list","member":{"shape":"Sv"}},"NextToken":{}}}}},"shapes":{"Sm":{"type":"list","member":{"type":"structure","members":{"Name":{},"Max":{"type":"double"},"Average":{"type":"double"},"Sum":{"type":"double"},"N":{"type":"integer"},"Unit":{}}}},"Sv":{"type":"structure","members":{"Id":{},"Name":{},"ResourceArn":{}}},"S13":{"type":"structure","members":{"FromInclusive":{"type":"timestamp"},"ToExclusive":{"type":"timestamp"}}}}}

/***/ }),
/* 336 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(337);
	    model.paginators = __webpack_require__(338).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SimpleDB;


/***/ }),
/* 337 */
/***/ (function(module, exports) {

	module.exports = {"metadata":{"apiVersion":"2009-04-15","endpointPrefix":"sdb","serviceFullName":"Amazon 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}}}

/***/ }),
/* 338 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListDomains":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxNumberOfDomains","result_key":"DomainNames"},"Select":{"input_token":"NextToken","output_token":"NextToken","result_key":"Items"}}}

/***/ }),
/* 339 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(340);
	    model.paginators = __webpack_require__(341).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SMS;


/***/ }),
/* 340 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"sms-2016-10-24","apiVersion":"2016-10-24","endpointPrefix":"sms","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"SMS","serviceFullName":"AWS Server Migration Service","signatureVersion":"v4","targetPrefix":"AWSServerMigrationService_V2016_10_24"},"operations":{"CreateReplicationJob":{"input":{"type":"structure","required":["serverId","seedReplicationTime","frequency"],"members":{"serverId":{},"seedReplicationTime":{"type":"timestamp"},"frequency":{"type":"integer"},"licenseType":{},"roleName":{},"description":{}}},"output":{"type":"structure","members":{"replicationJobId":{}}}},"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":{}}},"GetConnectors":{"input":{"type":"structure","members":{"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"connectorList":{"type":"list","member":{"locationName":"item","type":"structure","members":{"connectorId":{},"version":{},"status":{},"capabilityList":{"type":"list","member":{"locationName":"item"}},"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":"Sz","locationName":"item"}},"nextToken":{}}}},"GetReplicationRuns":{"input":{"type":"structure","required":["replicationJobId"],"members":{"replicationJobId":{},"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"replicationJob":{"shape":"Sz"},"replicationRunList":{"shape":"S19"},"nextToken":{}}}},"GetServers":{"input":{"type":"structure","members":{"nextToken":{},"maxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"lastModifiedOn":{"type":"timestamp"},"serverCatalogStatus":{},"serverList":{"type":"list","member":{"locationName":"item","type":"structure","members":{"serverId":{},"serverType":{},"vmServer":{"shape":"S11"},"replicationJobId":{},"replicationJobTerminated":{"type":"boolean"}}}},"nextToken":{}}}},"ImportServerCatalog":{"input":{"type":"structure","members":{}},"output":{"type":"structure","members":{}}},"StartOnDemandReplicationRun":{"input":{"type":"structure","required":["replicationJobId"],"members":{"replicationJobId":{},"description":{}}},"output":{"type":"structure","members":{"replicationRunId":{}}}},"UpdateReplicationJob":{"input":{"type":"structure","required":["replicationJobId"],"members":{"replicationJobId":{},"frequency":{"type":"integer"},"nextReplicationRunStartTime":{"type":"timestamp"},"licenseType":{},"roleName":{},"description":{}}},"output":{"type":"structure","members":{}}}},"shapes":{"Sz":{"type":"structure","members":{"replicationJobId":{},"serverId":{},"serverType":{},"vmServer":{"shape":"S11"},"seedReplicationTime":{"type":"timestamp"},"frequency":{"type":"integer"},"nextReplicationRunStartTime":{"type":"timestamp"},"licenseType":{},"roleName":{},"latestAmiId":{},"state":{},"statusMessage":{},"description":{},"replicationRunList":{"shape":"S19"}}},"S11":{"type":"structure","members":{"vmServerAddress":{"type":"structure","members":{"vmManagerId":{},"vmId":{}}},"vmName":{},"vmManagerName":{},"vmManagerType":{},"vmPath":{}}},"S19":{"type":"list","member":{"locationName":"item","type":"structure","members":{"replicationRunId":{},"state":{},"type":{},"statusMessage":{},"amiId":{},"scheduledStartTime":{"type":"timestamp"},"completedTime":{"type":"timestamp"},"description":{}}}}}}

/***/ }),
/* 341 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"GetReplicationJobs":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"replicationJobList"},"GetReplicationRuns":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"replicationRunList"},"GetConnectors":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"connectorList"},"GetServers":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"serverList"}}}

/***/ }),
/* 342 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(343);
	    model.paginators = __webpack_require__(344).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Snowball;


/***/ }),
/* 343 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-06-30","endpointPrefix":"snowball","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon Snowball","serviceFullName":"Amazon Import/Export 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":"Ss"},"ForwardingAddressId":{}}},"output":{"type":"structure","members":{"ClusterId":{}}}},"CreateJob":{"input":{"type":"structure","members":{"JobType":{},"Resources":{"shape":"Sf"},"Description":{},"AddressId":{},"KmsKeyARN":{},"RoleARN":{},"SnowballCapacityPreference":{},"ShippingOption":{},"Notification":{"shape":"Ss"},"ClusterId":{},"SnowballType":{},"ForwardingAddressId":{}}},"output":{"type":"structure","members":{"JobId":{}}}},"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":"Ss"},"ForwardingAddressId":{}}}}}},"DescribeJob":{"input":{"type":"structure","required":["JobId"],"members":{"JobId":{}}},"output":{"type":"structure","members":{"JobMetadata":{"shape":"S1d"},"SubJobMetadata":{"type":"list","member":{"shape":"S1d"}}}}},"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"}}}},"ListClusterJobs":{"input":{"type":"structure","required":["ClusterId"],"members":{"ClusterId":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"JobListEntries":{"shape":"S1t"},"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":{}}}},"ListJobs":{"input":{"type":"structure","members":{"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"JobListEntries":{"shape":"S1t"},"NextToken":{}}}},"UpdateCluster":{"input":{"type":"structure","required":["ClusterId"],"members":{"ClusterId":{},"RoleARN":{},"Description":{},"Resources":{"shape":"Sf"},"AddressId":{},"ShippingOption":{},"Notification":{"shape":"Ss"},"ForwardingAddressId":{}}},"output":{"type":"structure","members":{}}},"UpdateJob":{"input":{"type":"structure","required":["JobId"],"members":{"JobId":{},"RoleARN":{},"Notification":{"shape":"Ss"},"Resources":{"shape":"Sf"},"AddressId":{},"ShippingOption":{},"Description":{},"SnowballCapacityPreference":{},"ForwardingAddressId":{}}},"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":{}}}}}}}}},"Ss":{"type":"structure","members":{"SnsTopicARN":{},"JobStatesToNotify":{"type":"list","member":{}},"NotifyAll":{"type":"boolean"}}},"S1d":{"type":"structure","members":{"JobId":{},"JobState":{},"JobType":{},"SnowballType":{},"CreationDate":{"type":"timestamp"},"Resources":{"shape":"Sf"},"Description":{},"KmsKeyARN":{},"RoleARN":{},"AddressId":{},"ShippingDetails":{"type":"structure","members":{"ShippingOption":{},"InboundShipment":{"shape":"S1f"},"OutboundShipment":{"shape":"S1f"}}},"SnowballCapacityPreference":{},"Notification":{"shape":"Ss"},"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":{}}},"S1f":{"type":"structure","members":{"Status":{},"TrackingNumber":{}}},"S1t":{"type":"list","member":{"type":"structure","members":{"JobId":{},"JobState":{},"IsMaster":{"type":"boolean"},"JobType":{},"SnowballType":{},"CreationDate":{"type":"timestamp"},"Description":{}}}}}}

/***/ }),
/* 344 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 345 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(346);
	    model.paginators = __webpack_require__(347).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SNS;


/***/ }),
/* 346 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"sns-2010-03-31","apiVersion":"2010-03-31","endpointPrefix":"sns","protocol":"query","serviceAbbreviation":"Amazon SNS","serviceFullName":"Amazon Simple Notification Service","signatureVersion":"v4","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":{}}},"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":{"type":"map","key":{},"value":{}}}}},"GetTopicAttributes":{"input":{"type":"structure","required":["TopicArn"],"members":{"TopicArn":{}}},"output":{"resultWrapper":"GetTopicAttributesResult","type":"structure","members":{"Attributes":{"type":"map","key":{},"value":{}}}}},"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":"S1n"},"NextToken":{}}}},"ListSubscriptionsByTopic":{"input":{"type":"structure","required":["TopicArn"],"members":{"TopicArn":{},"NextToken":{}}},"output":{"resultWrapper":"ListSubscriptionsByTopicResult","type":"structure","members":{"Subscriptions":{"shape":"S1n"},"NextToken":{}}}},"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"}}}}}},"output":{"resultWrapper":"PublishResult","type":"structure","members":{"MessageId":{}}}},"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":{}}},"output":{"resultWrapper":"SubscribeResult","type":"structure","members":{"SubscriptionArn":{}}}},"Unsubscribe":{"input":{"type":"structure","required":["SubscriptionArn"],"members":{"SubscriptionArn":{}}}}},"shapes":{"Sj":{"type":"map","key":{},"value":{}},"S1n":{"type":"list","member":{"type":"structure","members":{"SubscriptionArn":{},"Owner":{},"Protocol":{},"Endpoint":{},"TopicArn":{}}}}}}

/***/ }),
/* 347 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 348 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['sqs'] = {};
	AWS.SQS = Service.defineService('sqs', ['2012-11-05']);
	__webpack_require__(349);
	Object.defineProperty(apiLoader.services['sqs'], '2012-11-05', {
	  get: function get() {
	    var model = __webpack_require__(350);
	    model.paginators = __webpack_require__(351).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SQS;


/***/ }),
/* 349 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	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];
	    }
	  }
	});


/***/ }),
/* 350 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-11-05","endpointPrefix":"sqs","protocol":"query","serviceAbbreviation":"Amazon SQS","serviceFullName":"Amazon Simple Queue Service","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"}}},"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":"St"}}},"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":{}}},"output":{"resultWrapper":"ListDeadLetterSourceQueuesResult","type":"structure","required":["queueUrls"],"members":{"queueUrls":{"shape":"Sz"}}}},"ListQueues":{"input":{"type":"structure","members":{"QueueNamePrefix":{}}},"output":{"resultWrapper":"ListQueuesResult","type":"structure","members":{"QueueUrls":{"shape":"Sz"}}}},"PurgeQueue":{"input":{"type":"structure","required":["QueueUrl"],"members":{"QueueUrl":{}}}},"ReceiveMessage":{"input":{"type":"structure","required":["QueueUrl"],"members":{"QueueUrl":{},"AttributeNames":{"shape":"St"},"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":"S1b","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":"S1b","locationName":"MessageAttribute"},"MessageDeduplicationId":{},"MessageGroupId":{}}},"output":{"resultWrapper":"SendMessageResult","type":"structure","members":{"MD5OfMessageBody":{},"MD5OfMessageAttributes":{},"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":"S1b","locationName":"MessageAttribute"},"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":{},"SequenceNumber":{}}},"flattened":true},"Failed":{"shape":"Sd"}}}},"SetQueueAttributes":{"input":{"type":"structure","required":["QueueUrl","Attributes"],"members":{"QueueUrl":{},"Attributes":{"shape":"Sh","locationName":"Attribute"}}}}},"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"},"St":{"type":"list","member":{"locationName":"AttributeName"},"flattened":true},"Sz":{"type":"list","member":{"locationName":"QueueUrl"},"flattened":true},"S1b":{"type":"map","key":{"locationName":"Name"},"value":{"locationName":"Value","type":"structure","required":["DataType"],"members":{"StringValue":{},"BinaryValue":{"type":"blob"},"StringListValues":{"flattened":true,"locationName":"StringListValue","type":"list","member":{"locationName":"StringListValue"}},"BinaryListValues":{"flattened":true,"locationName":"BinaryListValue","type":"list","member":{"locationName":"BinaryListValue","type":"blob"}},"DataType":{}}},"flattened":true}}}

/***/ }),
/* 351 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"ListQueues":{"result_key":"QueueUrls"}}}

/***/ }),
/* 352 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(353);
	    model.paginators = __webpack_require__(354).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SSM;


/***/ }),
/* 353 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2014-11-06","endpointPrefix":"ssm","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon SSM","serviceFullName":"Amazon Simple Systems Manager (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":{}}},"CreateActivation":{"input":{"type":"structure","required":["IamRole"],"members":{"Description":{},"DefaultInstanceName":{},"IamRole":{},"RegistrationLimit":{"type":"integer"},"ExpirationDate":{"type":"timestamp"}}},"output":{"type":"structure","members":{"ActivationId":{},"ActivationCode":{}}}},"CreateAssociation":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"DocumentVersion":{},"InstanceId":{},"Parameters":{"shape":"Sq"},"Targets":{"shape":"Su"},"ScheduleExpression":{},"OutputLocation":{"shape":"S10"}}},"output":{"type":"structure","members":{"AssociationDescription":{"shape":"S16"}}}},"CreateAssociationBatch":{"input":{"type":"structure","required":["Entries"],"members":{"Entries":{"type":"list","member":{"shape":"S1j","locationName":"entries"}}}},"output":{"type":"structure","members":{"Successful":{"type":"list","member":{"shape":"S16","locationName":"AssociationDescription"}},"Failed":{"type":"list","member":{"locationName":"FailedCreateAssociationEntry","type":"structure","members":{"Entry":{"shape":"S1j"},"Message":{},"Fault":{}}}}}}},"CreateDocument":{"input":{"type":"structure","required":["Content","Name"],"members":{"Content":{},"Name":{},"DocumentType":{}}},"output":{"type":"structure","members":{"DocumentDescription":{"shape":"S1u"}}}},"CreateMaintenanceWindow":{"input":{"type":"structure","required":["Name","Schedule","Duration","Cutoff","AllowUnassociatedTargets"],"members":{"Name":{},"Schedule":{},"Duration":{"type":"integer"},"Cutoff":{"type":"integer"},"AllowUnassociatedTargets":{"type":"boolean"},"ClientToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"WindowId":{}}}},"CreatePatchBaseline":{"input":{"type":"structure","required":["Name"],"members":{"OperatingSystem":{},"Name":{},"GlobalFilters":{"shape":"S2n"},"ApprovalRules":{"shape":"S2t"},"ApprovedPatches":{"shape":"S2y"},"ApprovedPatchesComplianceLevel":{},"RejectedPatches":{"shape":"S2y"},"Description":{},"ClientToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"BaselineId":{}}}},"CreateResourceDataSync":{"input":{"type":"structure","required":["SyncName","S3Destination"],"members":{"SyncName":{},"S3Destination":{"shape":"S35"}}},"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":{}}},"output":{"type":"structure","members":{}}},"DeleteMaintenanceWindow":{"input":{"type":"structure","required":["WindowId"],"members":{"WindowId":{}}},"output":{"type":"structure","members":{"WindowId":{}}}},"DeleteParameter":{"input":{"type":"structure","required":["Name"],"members":{"Name":{}}},"output":{"type":"structure","members":{}}},"DeleteParameters":{"input":{"type":"structure","required":["Names"],"members":{"Names":{"shape":"S3n"}}},"output":{"type":"structure","members":{"DeletedParameters":{"shape":"S3n"},"InvalidParameters":{"shape":"S3n"}}}},"DeletePatchBaseline":{"input":{"type":"structure","required":["BaselineId"],"members":{"BaselineId":{}}},"output":{"type":"structure","members":{"BaselineId":{}}}},"DeleteResourceDataSync":{"input":{"type":"structure","required":["SyncName"],"members":{"SyncName":{}}},"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":{}}},"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"}}}},"NextToken":{}}}},"DescribeAssociation":{"input":{"type":"structure","members":{"Name":{},"InstanceId":{},"AssociationId":{}}},"output":{"type":"structure","members":{"AssociationDescription":{"shape":"S16"}}}},"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":"S4w"}}}},"NextToken":{}}}},"DescribeAvailablePatches":{"input":{"type":"structure","members":{"Filters":{"shape":"S51"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Patches":{"type":"list","member":{"shape":"S59"}},"NextToken":{}}}},"DescribeDocument":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"DocumentVersion":{}}},"output":{"type":"structure","members":{"Document":{"shape":"S1u"}}}},"DescribeDocumentPermission":{"input":{"type":"structure","required":["Name","PermissionType"],"members":{"Name":{},"PermissionType":{}}},"output":{"type":"structure","members":{"AccountIds":{"shape":"S5q"}}}},"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":{}}}},"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":"S59"},"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":{},"InstanceId":{},"ExecutionDate":{"type":"timestamp"},"Status":{},"DetailedStatus":{},"ExecutionSummary":{},"ErrorCode":{},"OutputUrl":{"type":"structure","members":{"S3OutputUrl":{"type":"structure","members":{"OutputUrl":{}}}}}}}},"NextToken":{}}}},"DescribeInstanceInformation":{"input":{"type":"structure","members":{"InstanceInformationFilterList":{"type":"list","member":{"locationName":"InstanceInformationFilter","type":"structure","required":["key","valueSet"],"members":{"key":{},"valueSet":{"shape":"S6g"}}}},"Filters":{"type":"list","member":{"locationName":"InstanceInformationStringFilter","type":"structure","required":["Key","Values"],"members":{"Key":{},"Values":{"shape":"S6g"}}}},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"InstanceInformationList":{"type":"list","member":{"locationName":"InstanceInformation","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":"S70"}},"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":"S70"}},"NextToken":{}}}},"DescribeInstancePatches":{"input":{"type":"structure","required":["InstanceId"],"members":{"InstanceId":{},"Filters":{"shape":"S51"},"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"}}}},"NextToken":{}}}},"DescribeMaintenanceWindowExecutionTaskInvocations":{"input":{"type":"structure","required":["WindowExecutionId","TaskId"],"members":{"WindowExecutionId":{},"TaskId":{},"Filters":{"shape":"S7r"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"WindowExecutionTaskInvocationIdentities":{"type":"list","member":{"type":"structure","members":{"WindowExecutionId":{},"TaskExecutionId":{},"InvocationId":{},"ExecutionId":{},"Parameters":{"type":"string","sensitive":true},"Status":{},"StatusDetails":{},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"OwnerInformation":{"shape":"S72"},"WindowTargetId":{}}}},"NextToken":{}}}},"DescribeMaintenanceWindowExecutionTasks":{"input":{"type":"structure","required":["WindowExecutionId"],"members":{"WindowExecutionId":{},"Filters":{"shape":"S7r"},"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":"S7r"},"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":{}}}},"DescribeMaintenanceWindowTargets":{"input":{"type":"structure","required":["WindowId"],"members":{"WindowId":{},"Filters":{"shape":"S7r"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Targets":{"type":"list","member":{"type":"structure","members":{"WindowId":{},"WindowTargetId":{},"ResourceType":{},"Targets":{"shape":"Su"},"OwnerInformation":{"shape":"S72"}}}},"NextToken":{}}}},"DescribeMaintenanceWindowTasks":{"input":{"type":"structure","required":["WindowId"],"members":{"WindowId":{},"Filters":{"shape":"S7r"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Tasks":{"type":"list","member":{"type":"structure","members":{"WindowId":{},"WindowTaskId":{},"TaskArn":{},"Type":{},"Targets":{"shape":"Su"},"TaskParameters":{"shape":"S8p"},"Priority":{"type":"integer"},"LoggingInfo":{"shape":"S8v"},"ServiceRoleArn":{},"MaxConcurrency":{},"MaxErrors":{}}}},"NextToken":{}}}},"DescribeMaintenanceWindows":{"input":{"type":"structure","members":{"Filters":{"shape":"S7r"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"WindowIdentities":{"type":"list","member":{"type":"structure","members":{"WindowId":{},"Name":{},"Enabled":{"type":"boolean"},"Duration":{"type":"integer"},"Cutoff":{"type":"integer"}}}},"NextToken":{}}}},"DescribeParameters":{"input":{"type":"structure","members":{"Filters":{"type":"list","member":{"type":"structure","required":["Key","Values"],"members":{"Key":{},"Values":{"type":"list","member":{}}}}},"ParameterFilters":{"shape":"S9a"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Parameters":{"type":"list","member":{"type":"structure","members":{"Name":{},"Type":{},"KeyId":{},"LastModifiedDate":{"type":"timestamp"},"LastModifiedUser":{},"Description":{},"AllowedPattern":{}}}},"NextToken":{}}}},"DescribePatchBaselines":{"input":{"type":"structure","members":{"Filters":{"shape":"S51"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"BaselineIdentities":{"type":"list","member":{"shape":"S9q"}},"NextToken":{}}}},"DescribePatchGroupState":{"input":{"type":"structure","required":["PatchGroup"],"members":{"PatchGroup":{}}},"output":{"type":"structure","members":{"Instances":{"type":"integer"},"InstancesWithInstalledPatches":{"type":"integer"},"InstancesWithInstalledOtherPatches":{"type":"integer"},"InstancesWithMissingPatches":{"type":"integer"},"InstancesWithFailedPatches":{"type":"integer"},"InstancesWithNotApplicablePatches":{"type":"integer"}}}},"DescribePatchGroups":{"input":{"type":"structure","members":{"MaxResults":{"type":"integer"},"Filters":{"shape":"S51"},"NextToken":{}}},"output":{"type":"structure","members":{"Mappings":{"type":"list","member":{"type":"structure","members":{"PatchGroup":{},"BaselineIdentity":{"shape":"S9q"}}}},"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":{"type":"list","member":{"type":"structure","members":{"StepName":{},"Action":{},"ExecutionStartTime":{"type":"timestamp"},"ExecutionEndTime":{"type":"timestamp"},"StepStatus":{},"ResponseCode":{},"Inputs":{"type":"map","key":{},"value":{}},"Outputs":{"shape":"S4w"},"Response":{},"FailureMessage":{},"FailureDetails":{"type":"structure","members":{"FailureStage":{},"FailureType":{},"Details":{"shape":"S4w"}}}}}},"Parameters":{"shape":"S4w"},"Outputs":{"shape":"S4w"},"FailureMessage":{}}}}}},"GetCommandInvocation":{"input":{"type":"structure","required":["CommandId","InstanceId"],"members":{"CommandId":{},"InstanceId":{},"PluginName":{}}},"output":{"type":"structure","members":{"CommandId":{},"InstanceId":{},"Comment":{},"DocumentName":{},"PluginName":{},"ResponseCode":{"type":"integer"},"ExecutionStartDateTime":{},"ExecutionElapsedTime":{},"ExecutionEndDateTime":{},"Status":{},"StatusDetails":{},"StandardOutputContent":{},"StandardOutputUrl":{},"StandardErrorContent":{},"StandardErrorUrl":{}}}},"GetDefaultPatchBaseline":{"input":{"type":"structure","members":{"OperatingSystem":{}}},"output":{"type":"structure","members":{"BaselineId":{},"OperatingSystem":{}}}},"GetDeployablePatchSnapshotForInstance":{"input":{"type":"structure","required":["InstanceId","SnapshotId"],"members":{"InstanceId":{},"SnapshotId":{}}},"output":{"type":"structure","members":{"InstanceId":{},"SnapshotId":{},"SnapshotDownloadUrl":{},"Product":{}}}},"GetDocument":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"DocumentVersion":{}}},"output":{"type":"structure","members":{"Name":{},"DocumentVersion":{},"Content":{},"DocumentType":{}}}},"GetInventory":{"input":{"type":"structure","members":{"Filters":{"shape":"Saq"},"ResultAttributes":{"type":"list","member":{"locationName":"ResultAttribute","type":"structure","required":["TypeName"],"members":{"TypeName":{}}}},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Entities":{"type":"list","member":{"locationName":"Entity","type":"structure","members":{"Id":{},"Data":{"type":"map","key":{},"value":{"type":"structure","required":["TypeName","SchemaVersion","Content"],"members":{"TypeName":{},"SchemaVersion":{},"CaptureTime":{},"ContentHash":{},"Content":{"shape":"Sb9"}}}}}}},"NextToken":{}}}},"GetInventorySchema":{"input":{"type":"structure","members":{"TypeName":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"Schemas":{"type":"list","member":{"type":"structure","required":["TypeName","Attributes"],"members":{"TypeName":{},"Version":{},"Attributes":{"type":"list","member":{"locationName":"Attribute","type":"structure","required":["Name","DataType"],"members":{"Name":{},"DataType":{}}}}}}},"NextToken":{}}}},"GetMaintenanceWindow":{"input":{"type":"structure","required":["WindowId"],"members":{"WindowId":{}}},"output":{"type":"structure","members":{"WindowId":{},"Name":{},"Schedule":{},"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":"S8p"},"sensitive":true},"Priority":{"type":"integer"},"MaxConcurrency":{},"MaxErrors":{},"Status":{},"StatusDetails":{},"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"}}}},"GetParameter":{"input":{"type":"structure","required":["Name"],"members":{"Name":{},"WithDecryption":{"type":"boolean"}}},"output":{"type":"structure","members":{"Parameter":{"shape":"Sbx"}}}},"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":{}}}},"NextToken":{}}}},"GetParameters":{"input":{"type":"structure","required":["Names"],"members":{"Names":{"shape":"S3n"},"WithDecryption":{"type":"boolean"}}},"output":{"type":"structure","members":{"Parameters":{"shape":"Sc5"},"InvalidParameters":{"shape":"S3n"}}}},"GetParametersByPath":{"input":{"type":"structure","required":["Path"],"members":{"Path":{},"Recursive":{"type":"boolean"},"ParameterFilters":{"shape":"S9a"},"WithDecryption":{"type":"boolean"},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Parameters":{"shape":"Sc5"},"NextToken":{}}}},"GetPatchBaseline":{"input":{"type":"structure","required":["BaselineId"],"members":{"BaselineId":{}}},"output":{"type":"structure","members":{"BaselineId":{},"Name":{},"OperatingSystem":{},"GlobalFilters":{"shape":"S2n"},"ApprovalRules":{"shape":"S2t"},"ApprovedPatches":{"shape":"S2y"},"ApprovedPatchesComplianceLevel":{},"RejectedPatches":{"shape":"S2y"},"PatchGroups":{"type":"list","member":{}},"CreatedDate":{"type":"timestamp"},"ModifiedDate":{"type":"timestamp"},"Description":{}}}},"GetPatchBaselineForPatchGroup":{"input":{"type":"structure","required":["PatchGroup"],"members":{"PatchGroup":{},"OperatingSystem":{}}},"output":{"type":"structure","members":{"BaselineId":{},"PatchGroup":{},"OperatingSystem":{}}}},"ListAssociations":{"input":{"type":"structure","members":{"AssociationFilterList":{"type":"list","member":{"locationName":"AssociationFilter","type":"structure","required":["key","value"],"members":{"key":{},"value":{}}}},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Associations":{"type":"list","member":{"locationName":"Association","type":"structure","members":{"Name":{},"InstanceId":{},"AssociationId":{},"DocumentVersion":{},"Targets":{"shape":"Su"},"LastExecutionDate":{"type":"timestamp"},"Overview":{"shape":"S1c"},"ScheduleExpression":{}}}},"NextToken":{}}}},"ListCommandInvocations":{"input":{"type":"structure","members":{"CommandId":{},"InstanceId":{},"MaxResults":{"type":"integer"},"NextToken":{},"Filters":{"shape":"Sco"},"Details":{"type":"boolean"}}},"output":{"type":"structure","members":{"CommandInvocations":{"type":"list","member":{"type":"structure","members":{"CommandId":{},"InstanceId":{},"InstanceName":{},"Comment":{},"DocumentName":{},"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":"Sd1"}}}},"NextToken":{}}}},"ListCommands":{"input":{"type":"structure","members":{"CommandId":{},"InstanceId":{},"MaxResults":{"type":"integer"},"NextToken":{},"Filters":{"shape":"Sco"}}},"output":{"type":"structure","members":{"Commands":{"type":"list","member":{"shape":"Sd9"}},"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":{},"CreatedDate":{"type":"timestamp"},"IsDefaultVersion":{"type":"boolean"}}}},"NextToken":{}}}},"ListDocuments":{"input":{"type":"structure","members":{"DocumentFilterList":{"type":"list","member":{"locationName":"DocumentFilter","type":"structure","required":["key","value"],"members":{"key":{},"value":{}}}},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"DocumentIdentifiers":{"type":"list","member":{"locationName":"DocumentIdentifier","type":"structure","members":{"Name":{},"Owner":{},"PlatformTypes":{"shape":"S28"},"DocumentVersion":{},"DocumentType":{},"SchemaVersion":{}}}},"NextToken":{}}}},"ListInventoryEntries":{"input":{"type":"structure","required":["InstanceId","TypeName"],"members":{"InstanceId":{},"TypeName":{},"Filters":{"shape":"Saq"},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"TypeName":{},"InstanceId":{},"SchemaVersion":{},"CaptureTime":{},"Entries":{"shape":"Sb9"},"NextToken":{}}}},"ListResourceDataSync":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"ResourceDataSyncItems":{"type":"list","member":{"type":"structure","members":{"SyncName":{},"S3Destination":{"shape":"S35"},"LastSyncTime":{"type":"timestamp"},"LastSuccessfulSyncTime":{"type":"timestamp"},"LastStatus":{},"SyncCreatedTime":{"type":"timestamp"}}}},"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":"S5q"},"AccountIdsToRemove":{"shape":"S5q"}}},"output":{"type":"structure","members":{}}},"PutInventory":{"input":{"type":"structure","required":["InstanceId","Items"],"members":{"InstanceId":{},"Items":{"type":"list","member":{"locationName":"Item","type":"structure","required":["TypeName","SchemaVersion","CaptureTime"],"members":{"TypeName":{},"SchemaVersion":{},"CaptureTime":{},"ContentHash":{},"Content":{"shape":"Sb9"}}}}}},"output":{"type":"structure","members":{}}},"PutParameter":{"input":{"type":"structure","required":["Name","Value","Type"],"members":{"Name":{},"Description":{},"Value":{},"Type":{},"KeyId":{},"Overwrite":{"type":"boolean"},"AllowedPattern":{}}},"output":{"type":"structure","members":{}}},"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":"Su"},"OwnerInformation":{"shape":"S72"},"ClientToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"WindowTargetId":{}}}},"RegisterTaskWithMaintenanceWindow":{"input":{"type":"structure","required":["WindowId","Targets","TaskArn","ServiceRoleArn","TaskType","MaxConcurrency","MaxErrors"],"members":{"WindowId":{},"Targets":{"shape":"Su"},"TaskArn":{},"ServiceRoleArn":{},"TaskType":{},"TaskParameters":{"shape":"S8p"},"Priority":{"type":"integer"},"MaxConcurrency":{},"MaxErrors":{},"LoggingInfo":{"shape":"S8v"},"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":{}}},"SendCommand":{"input":{"type":"structure","required":["DocumentName"],"members":{"InstanceIds":{"shape":"Sb"},"Targets":{"shape":"Su"},"DocumentName":{},"DocumentHash":{},"DocumentHashType":{},"TimeoutSeconds":{"type":"integer"},"Comment":{},"Parameters":{"shape":"Sq"},"OutputS3Region":{},"OutputS3BucketName":{},"OutputS3KeyPrefix":{},"MaxConcurrency":{},"MaxErrors":{},"ServiceRoleArn":{},"NotificationConfig":{"shape":"Sd1"}}},"output":{"type":"structure","members":{"Command":{"shape":"Sd9"}}}},"StartAutomationExecution":{"input":{"type":"structure","required":["DocumentName"],"members":{"DocumentName":{},"DocumentVersion":{},"Parameters":{"shape":"S4w"}}},"output":{"type":"structure","members":{"AutomationExecutionId":{}}}},"StopAutomationExecution":{"input":{"type":"structure","required":["AutomationExecutionId"],"members":{"AutomationExecutionId":{}}},"output":{"type":"structure","members":{}}},"UpdateAssociation":{"input":{"type":"structure","required":["AssociationId"],"members":{"AssociationId":{},"Parameters":{"shape":"Sq"},"DocumentVersion":{},"ScheduleExpression":{},"OutputLocation":{"shape":"S10"},"Name":{},"Targets":{"shape":"Su"}}},"output":{"type":"structure","members":{"AssociationDescription":{"shape":"S16"}}}},"UpdateAssociationStatus":{"input":{"type":"structure","required":["Name","InstanceId","AssociationStatus"],"members":{"Name":{},"InstanceId":{},"AssociationStatus":{"shape":"S18"}}},"output":{"type":"structure","members":{"AssociationDescription":{"shape":"S16"}}}},"UpdateDocument":{"input":{"type":"structure","required":["Content","Name"],"members":{"Content":{},"Name":{},"DocumentVersion":{}}},"output":{"type":"structure","members":{"DocumentDescription":{"shape":"S1u"}}}},"UpdateDocumentDefaultVersion":{"input":{"type":"structure","required":["Name","DocumentVersion"],"members":{"Name":{},"DocumentVersion":{}}},"output":{"type":"structure","members":{"Description":{"type":"structure","members":{"Name":{},"DefaultVersion":{}}}}}},"UpdateMaintenanceWindow":{"input":{"type":"structure","required":["WindowId"],"members":{"WindowId":{},"Name":{},"Schedule":{},"Duration":{"type":"integer"},"Cutoff":{"type":"integer"},"AllowUnassociatedTargets":{"type":"boolean"},"Enabled":{"type":"boolean"}}},"output":{"type":"structure","members":{"WindowId":{},"Name":{},"Schedule":{},"Duration":{"type":"integer"},"Cutoff":{"type":"integer"},"AllowUnassociatedTargets":{"type":"boolean"},"Enabled":{"type":"boolean"}}}},"UpdateManagedInstanceRole":{"input":{"type":"structure","required":["InstanceId","IamRole"],"members":{"InstanceId":{},"IamRole":{}}},"output":{"type":"structure","members":{}}},"UpdatePatchBaseline":{"input":{"type":"structure","required":["BaselineId"],"members":{"BaselineId":{},"Name":{},"GlobalFilters":{"shape":"S2n"},"ApprovalRules":{"shape":"S2t"},"ApprovedPatches":{"shape":"S2y"},"ApprovedPatchesComplianceLevel":{},"RejectedPatches":{"shape":"S2y"},"Description":{}}},"output":{"type":"structure","members":{"BaselineId":{},"Name":{},"OperatingSystem":{},"GlobalFilters":{"shape":"S2n"},"ApprovalRules":{"shape":"S2t"},"ApprovedPatches":{"shape":"S2y"},"ApprovedPatchesComplianceLevel":{},"RejectedPatches":{"shape":"S2y"},"CreatedDate":{"type":"timestamp"},"ModifiedDate":{"type":"timestamp"},"Description":{}}}}},"shapes":{"S4":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"Sb":{"type":"list","member":{}},"Sq":{"type":"map","key":{},"value":{"type":"list","member":{}}},"Su":{"type":"list","member":{"type":"structure","members":{"Key":{},"Values":{"type":"list","member":{}}}}},"S10":{"type":"structure","members":{"S3Location":{"type":"structure","members":{"OutputS3Region":{},"OutputS3BucketName":{},"OutputS3KeyPrefix":{}}}}},"S16":{"type":"structure","members":{"Name":{},"InstanceId":{},"Date":{"type":"timestamp"},"LastUpdateAssociationDate":{"type":"timestamp"},"Status":{"shape":"S18"},"Overview":{"shape":"S1c"},"DocumentVersion":{},"Parameters":{"shape":"Sq"},"AssociationId":{},"Targets":{"shape":"Su"},"ScheduleExpression":{},"OutputLocation":{"shape":"S10"},"LastExecutionDate":{"type":"timestamp"},"LastSuccessfulExecutionDate":{"type":"timestamp"}}},"S18":{"type":"structure","required":["Date","Name","Message"],"members":{"Date":{"type":"timestamp"},"Name":{},"Message":{},"AdditionalInfo":{}}},"S1c":{"type":"structure","members":{"Status":{},"DetailedStatus":{},"AssociationStatusAggregatedCount":{"type":"map","key":{},"value":{"type":"integer"}}}},"S1j":{"type":"structure","required":["Name"],"members":{"Name":{},"InstanceId":{},"Parameters":{"shape":"Sq"},"DocumentVersion":{},"Targets":{"shape":"Su"},"ScheduleExpression":{},"OutputLocation":{"shape":"S10"}}},"S1u":{"type":"structure","members":{"Sha1":{},"Hash":{},"HashType":{},"Name":{},"Owner":{},"CreatedDate":{"type":"timestamp"},"Status":{},"DocumentVersion":{},"Description":{},"Parameters":{"type":"list","member":{"locationName":"DocumentParameter","type":"structure","members":{"Name":{},"Type":{},"Description":{},"DefaultValue":{}}}},"PlatformTypes":{"shape":"S28"},"DocumentType":{},"SchemaVersion":{},"LatestVersion":{},"DefaultVersion":{}}},"S28":{"type":"list","member":{"locationName":"PlatformType"}},"S2n":{"type":"structure","required":["PatchFilters"],"members":{"PatchFilters":{"type":"list","member":{"type":"structure","required":["Key","Values"],"members":{"Key":{},"Values":{"type":"list","member":{}}}}}}},"S2t":{"type":"structure","required":["PatchRules"],"members":{"PatchRules":{"type":"list","member":{"type":"structure","required":["PatchFilterGroup","ApproveAfterDays"],"members":{"PatchFilterGroup":{"shape":"S2n"},"ComplianceLevel":{},"ApproveAfterDays":{"type":"integer"}}}}}},"S2y":{"type":"list","member":{}},"S35":{"type":"structure","required":["BucketName","SyncFormat","Region"],"members":{"BucketName":{},"Prefix":{},"SyncFormat":{},"Region":{}}},"S3n":{"type":"list","member":{}},"S4w":{"type":"map","key":{},"value":{"type":"list","member":{}}},"S51":{"type":"list","member":{"type":"structure","members":{"Key":{},"Values":{"type":"list","member":{}}}}},"S59":{"type":"structure","members":{"Id":{},"ReleaseDate":{"type":"timestamp"},"Title":{},"Description":{},"ContentUrl":{},"Vendor":{},"ProductFamily":{},"Product":{},"Classification":{},"MsrcSeverity":{},"KbNumber":{},"MsrcNumber":{},"Language":{}}},"S5q":{"type":"list","member":{"locationName":"AccountId"}},"S6g":{"type":"list","member":{"locationName":"InstanceInformationFilterValue"}},"S70":{"type":"structure","required":["InstanceId","PatchGroup","BaselineId","OperationStartTime","OperationEndTime","Operation"],"members":{"InstanceId":{},"PatchGroup":{},"BaselineId":{},"SnapshotId":{},"OwnerInformation":{"shape":"S72"},"InstalledCount":{"type":"integer"},"InstalledOtherCount":{"type":"integer"},"MissingCount":{"type":"integer"},"FailedCount":{"type":"integer"},"NotApplicableCount":{"type":"integer"},"OperationStartTime":{"type":"timestamp"},"OperationEndTime":{"type":"timestamp"},"Operation":{}}},"S72":{"type":"string","sensitive":true},"S7r":{"type":"list","member":{"type":"structure","members":{"Key":{},"Values":{"type":"list","member":{}}}}},"S8p":{"type":"map","key":{},"value":{"type":"structure","members":{"Values":{"type":"list","member":{"type":"string","sensitive":true},"sensitive":true}},"sensitive":true},"sensitive":true},"S8v":{"type":"structure","required":["S3BucketName","S3Region"],"members":{"S3BucketName":{},"S3KeyPrefix":{},"S3Region":{}}},"S9a":{"type":"list","member":{"type":"structure","required":["Key"],"members":{"Key":{},"Option":{},"Values":{"type":"list","member":{}}}}},"S9q":{"type":"structure","members":{"BaselineId":{},"BaselineName":{},"OperatingSystem":{},"BaselineDescription":{},"DefaultBaseline":{"type":"boolean"}}},"Saq":{"type":"list","member":{"locationName":"InventoryFilter","type":"structure","required":["Key","Values"],"members":{"Key":{},"Values":{"type":"list","member":{"locationName":"FilterValue"}},"Type":{}}}},"Sb9":{"type":"list","member":{"type":"map","key":{},"value":{}}},"Sbx":{"type":"structure","members":{"Name":{},"Type":{},"Value":{}}},"Sc5":{"type":"list","member":{"shape":"Sbx"}},"Sco":{"type":"list","member":{"type":"structure","required":["key","value"],"members":{"key":{},"value":{}}}},"Sd1":{"type":"structure","members":{"NotificationArn":{},"NotificationEvents":{"type":"list","member":{}},"NotificationType":{}}},"Sd9":{"type":"structure","members":{"CommandId":{},"DocumentName":{},"Comment":{},"ExpiresAfter":{"type":"timestamp"},"Parameters":{"shape":"Sq"},"InstanceIds":{"shape":"Sb"},"Targets":{"shape":"Su"},"RequestedDateTime":{"type":"timestamp"},"Status":{},"StatusDetails":{},"OutputS3Region":{},"OutputS3BucketName":{},"OutputS3KeyPrefix":{},"MaxConcurrency":{},"MaxErrors":{},"TargetCount":{"type":"integer"},"CompletedCount":{"type":"integer"},"ErrorCount":{"type":"integer"},"ServiceRole":{},"NotificationConfig":{"shape":"Sd1"}}}}}

/***/ }),
/* 354 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeActivations":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"ActivationList"},"DescribeInstanceInformation":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"InstanceInformationList"},"DescribeParameters":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken"},"GetParameterHistory":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken"},"GetParametersByPath":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken"},"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"},"ListDocuments":{"input_token":"NextToken","limit_key":"MaxResults","output_token":"NextToken","result_key":"DocumentIdentifiers"}}}

/***/ }),
/* 355 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(356);
	    model.paginators = __webpack_require__(357).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.StorageGateway;


/***/ }),
/* 356 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2013-06-30","endpointPrefix":"storagegateway","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"AddCache":{"input":{"type":"structure","required":["GatewayARN","DiskIds"],"members":{"GatewayARN":{},"DiskIds":{"shape":"Sc"}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"AddTagsToResource":{"input":{"type":"structure","required":["ResourceARN","Tags"],"members":{"ResourceARN":{},"Tags":{"shape":"Sh"}}},"output":{"type":"structure","members":{"ResourceARN":{}}}},"AddUploadBuffer":{"input":{"type":"structure","required":["GatewayARN","DiskIds"],"members":{"GatewayARN":{},"DiskIds":{"shape":"Sc"}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"AddWorkingStorage":{"input":{"type":"structure","required":["GatewayARN","DiskIds"],"members":{"GatewayARN":{},"DiskIds":{"shape":"Sc"}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"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":{}}},"output":{"type":"structure","members":{"VolumeARN":{},"TargetARN":{}}}},"CreateNFSFileShare":{"input":{"type":"structure","required":["ClientToken","GatewayARN","Role","LocationARN"],"members":{"ClientToken":{},"NFSFileShareDefaults":{"shape":"S15"},"GatewayARN":{},"KMSEncrypted":{"type":"boolean"},"KMSKey":{},"Role":{},"LocationARN":{},"DefaultStorageClass":{},"ClientList":{"shape":"S1d"},"Squash":{},"ReadOnly":{"type":"boolean"}}},"output":{"type":"structure","members":{"FileShareARN":{}}}},"CreateSnapshot":{"input":{"type":"structure","required":["VolumeARN","SnapshotDescription"],"members":{"VolumeARN":{},"SnapshotDescription":{}}},"output":{"type":"structure","members":{"VolumeARN":{},"SnapshotId":{}}}},"CreateSnapshotFromVolumeRecoveryPoint":{"input":{"type":"structure","required":["VolumeARN","SnapshotDescription"],"members":{"VolumeARN":{},"SnapshotDescription":{}}},"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":{}}},"output":{"type":"structure","members":{"VolumeARN":{},"VolumeSizeInBytes":{"type":"long"},"TargetARN":{}}}},"CreateTapeWithBarcode":{"input":{"type":"structure","required":["GatewayARN","TapeSizeInBytes","TapeBarcode"],"members":{"GatewayARN":{},"TapeSizeInBytes":{"type":"long"},"TapeBarcode":{}}},"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":{}}},"output":{"type":"structure","members":{"TapeARNs":{"shape":"S1z"}}}},"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":{}}},"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":{}}},"output":{"type":"structure","members":{"TapeARN":{}}}},"DeleteTapeArchive":{"input":{"type":"structure","required":["TapeARN"],"members":{"TapeARN":{}}},"output":{"type":"structure","members":{"TapeARN":{}}}},"DeleteVolume":{"input":{"type":"structure","required":["VolumeARN"],"members":{"VolumeARN":{}}},"output":{"type":"structure","members":{"VolumeARN":{}}}},"DescribeBandwidthRateLimit":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{}}},"output":{"type":"structure","members":{"GatewayARN":{},"AverageUploadRateLimitInBitsPerSec":{"type":"long"},"AverageDownloadRateLimitInBitsPerSec":{"type":"long"}}}},"DescribeCache":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{}}},"output":{"type":"structure","members":{"GatewayARN":{},"DiskIds":{"shape":"Sc"},"CacheAllocatedInBytes":{"type":"long"},"CacheUsedPercentage":{"type":"double"},"CacheDirtyPercentage":{"type":"double"},"CacheHitPercentage":{"type":"double"},"CacheMissPercentage":{"type":"double"}}}},"DescribeCachediSCSIVolumes":{"input":{"type":"structure","required":["VolumeARNs"],"members":{"VolumeARNs":{"shape":"S2q"}}},"output":{"type":"structure","members":{"CachediSCSIVolumes":{"type":"list","member":{"type":"structure","members":{"VolumeARN":{},"VolumeId":{},"VolumeType":{},"VolumeStatus":{},"VolumeSizeInBytes":{"type":"long"},"VolumeProgress":{"type":"double"},"SourceSnapshotId":{},"VolumeiSCSIAttributes":{"shape":"S2y"},"CreatedDate":{"type":"timestamp"}}}}}}},"DescribeChapCredentials":{"input":{"type":"structure","required":["TargetARN"],"members":{"TargetARN":{}}},"output":{"type":"structure","members":{"ChapCredentials":{"type":"list","member":{"type":"structure","members":{"TargetARN":{},"SecretToAuthenticateInitiator":{},"InitiatorName":{},"SecretToAuthenticateTarget":{}}}}}}},"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":{}}}},"DescribeMaintenanceStartTime":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{}}},"output":{"type":"structure","members":{"GatewayARN":{},"HourOfDay":{"type":"integer"},"MinuteOfHour":{"type":"integer"},"DayOfWeek":{"type":"integer"},"Timezone":{}}}},"DescribeNFSFileShares":{"input":{"type":"structure","required":["FileShareARNList"],"members":{"FileShareARNList":{"type":"list","member":{}}}},"output":{"type":"structure","members":{"NFSFileShareInfoList":{"type":"list","member":{"type":"structure","members":{"NFSFileShareDefaults":{"shape":"S15"},"FileShareARN":{},"FileShareId":{},"FileShareStatus":{},"GatewayARN":{},"KMSEncrypted":{"type":"boolean"},"KMSKey":{},"Path":{},"Role":{},"LocationARN":{},"DefaultStorageClass":{},"ClientList":{"shape":"S1d"},"Squash":{},"ReadOnly":{"type":"boolean"}}}}}}},"DescribeSnapshotSchedule":{"input":{"type":"structure","required":["VolumeARN"],"members":{"VolumeARN":{}}},"output":{"type":"structure","members":{"VolumeARN":{},"StartAt":{"type":"integer"},"RecurrenceInHours":{"type":"integer"},"Description":{},"Timezone":{}}}},"DescribeStorediSCSIVolumes":{"input":{"type":"structure","required":["VolumeARNs"],"members":{"VolumeARNs":{"shape":"S2q"}}},"output":{"type":"structure","members":{"StorediSCSIVolumes":{"type":"list","member":{"type":"structure","members":{"VolumeARN":{},"VolumeId":{},"VolumeType":{},"VolumeStatus":{},"VolumeSizeInBytes":{"type":"long"},"VolumeProgress":{"type":"double"},"VolumeDiskId":{},"SourceSnapshotId":{},"PreservedExistingData":{"type":"boolean"},"VolumeiSCSIAttributes":{"shape":"S2y"},"CreatedDate":{"type":"timestamp"}}}}}}},"DescribeTapeArchives":{"input":{"type":"structure","members":{"TapeARNs":{"shape":"S1z"},"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"}}}},"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":"S1z"},"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"}}}},"Marker":{}}}},"DescribeUploadBuffer":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{}}},"output":{"type":"structure","members":{"GatewayARN":{},"DiskIds":{"shape":"Sc"},"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":"Sc"},"WorkingStorageUsedInBytes":{"type":"long"},"WorkingStorageAllocatedInBytes":{"type":"long"}}}},"DisableGateway":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"ListFileShares":{"input":{"type":"structure","members":{"GatewayARN":{},"Limit":{"type":"integer"},"Marker":{}}},"output":{"type":"structure","members":{"Marker":{},"NextMarker":{},"FileShareInfoList":{"type":"list","member":{"type":"structure","members":{"FileShareARN":{},"FileShareId":{},"FileShareStatus":{},"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":{}}}},"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":{}}}}}}},"ListTagsForResource":{"input":{"type":"structure","required":["ResourceARN"],"members":{"ResourceARN":{},"Marker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"ResourceARN":{},"Marker":{},"Tags":{"shape":"Sh"}}}},"ListTapes":{"input":{"type":"structure","members":{"TapeARNs":{"shape":"S1z"},"Marker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"TapeInfos":{"type":"list","member":{"type":"structure","members":{"TapeARN":{},"TapeBarcode":{},"TapeSizeInBytes":{"type":"long"},"TapeStatus":{},"GatewayARN":{}}}},"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"}}}}}}},"RefreshCache":{"input":{"type":"structure","required":["FileShareARN"],"members":{"FileShareARN":{}}},"output":{"type":"structure","members":{"FileShareARN":{}}}},"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":{}}}},"ShutdownGateway":{"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":{}}}},"UpdateBandwidthRateLimit":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{},"AverageUploadRateLimitInBitsPerSec":{"type":"long"},"AverageDownloadRateLimitInBitsPerSec":{"type":"long"}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"UpdateChapCredentials":{"input":{"type":"structure","required":["TargetARN","SecretToAuthenticateInitiator","InitiatorName"],"members":{"TargetARN":{},"SecretToAuthenticateInitiator":{},"InitiatorName":{},"SecretToAuthenticateTarget":{}}},"output":{"type":"structure","members":{"TargetARN":{},"InitiatorName":{}}}},"UpdateGatewayInformation":{"input":{"type":"structure","required":["GatewayARN"],"members":{"GatewayARN":{},"GatewayName":{},"GatewayTimezone":{}}},"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","DayOfWeek"],"members":{"GatewayARN":{},"HourOfDay":{"type":"integer"},"MinuteOfHour":{"type":"integer"},"DayOfWeek":{"type":"integer"}}},"output":{"type":"structure","members":{"GatewayARN":{}}}},"UpdateNFSFileShare":{"input":{"type":"structure","required":["FileShareARN"],"members":{"FileShareARN":{},"KMSEncrypted":{"type":"boolean"},"KMSKey":{},"NFSFileShareDefaults":{"shape":"S15"},"DefaultStorageClass":{},"ClientList":{"shape":"S1d"},"Squash":{},"ReadOnly":{"type":"boolean"}}},"output":{"type":"structure","members":{"FileShareARN":{}}}},"UpdateSnapshotSchedule":{"input":{"type":"structure","required":["VolumeARN","StartAt","RecurrenceInHours"],"members":{"VolumeARN":{},"StartAt":{"type":"integer"},"RecurrenceInHours":{"type":"integer"},"Description":{}}},"output":{"type":"structure","members":{"VolumeARN":{}}}},"UpdateVTLDeviceType":{"input":{"type":"structure","required":["VTLDeviceARN","DeviceType"],"members":{"VTLDeviceARN":{},"DeviceType":{}}},"output":{"type":"structure","members":{"VTLDeviceARN":{}}}}},"shapes":{"Sc":{"type":"list","member":{}},"Sh":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{},"Value":{}}}},"S15":{"type":"structure","members":{"FileMode":{},"DirectoryMode":{},"GroupId":{"type":"long"},"OwnerId":{"type":"long"}}},"S1d":{"type":"list","member":{}},"S1z":{"type":"list","member":{}},"S2q":{"type":"list","member":{}},"S2y":{"type":"structure","members":{"TargetARN":{},"NetworkInterfaceId":{},"NetworkInterfacePort":{"type":"integer"},"LunNumber":{"type":"integer"},"ChapEnabled":{"type":"boolean"}}}}}

/***/ }),
/* 357 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"},"ListGateways":{"input_token":"Marker","limit_key":"Limit","output_token":"Marker","result_key":"Gateways"},"ListLocalDisks":{"result_key":"Disks"},"ListVolumeRecoveryPoints":{"result_key":"VolumeRecoveryPointInfos"},"ListVolumes":{"input_token":"Marker","limit_key":"Limit","output_token":"Marker","result_key":"VolumeInfos"}}}

/***/ }),
/* 358 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(359);
	    model.paginators = __webpack_require__(360).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.StepFunctions;


/***/ }),
/* 359 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-23","endpointPrefix":"states","jsonVersion":"1.0","protocol":"json","serviceAbbreviation":"AWS SFN","serviceFullName":"AWS Step Functions","signatureVersion":"v4","targetPrefix":"AWSStepFunctions","uid":"states-2016-11-23"},"operations":{"CreateActivity":{"input":{"type":"structure","required":["name"],"members":{"name":{}}},"output":{"type":"structure","required":["activityArn","creationDate"],"members":{"activityArn":{},"creationDate":{"type":"timestamp"}}},"idempotent":true},"CreateStateMachine":{"input":{"type":"structure","required":["name","definition","roleArn"],"members":{"name":{},"definition":{},"roleArn":{}}},"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","input"],"members":{"executionArn":{},"stateMachineArn":{},"name":{},"status":{},"startDate":{"type":"timestamp"},"stopDate":{"type":"timestamp"},"input":{},"output":{}}}},"DescribeStateMachine":{"input":{"type":"structure","required":["stateMachineArn"],"members":{"stateMachineArn":{}}},"output":{"type":"structure","required":["stateMachineArn","name","definition","roleArn","creationDate"],"members":{"stateMachineArn":{},"name":{},"status":{},"definition":{},"roleArn":{},"creationDate":{"type":"timestamp"}}}},"GetActivityTask":{"input":{"type":"structure","required":["activityArn"],"members":{"activityArn":{},"workerName":{}}},"output":{"type":"structure","members":{"taskToken":{},"input":{}}}},"GetExecutionHistory":{"input":{"type":"structure","required":["executionArn"],"members":{"executionArn":{},"maxResults":{"type":"integer"},"reverseOrder":{"type":"boolean"},"nextToken":{}}},"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":{},"cause":{}}},"activityScheduleFailedEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"activityScheduledEventDetails":{"type":"structure","required":["resource"],"members":{"resource":{},"input":{},"timeoutInSeconds":{"type":"long"},"heartbeatInSeconds":{"type":"long"}}},"activityStartedEventDetails":{"type":"structure","members":{"workerName":{}}},"activitySucceededEventDetails":{"type":"structure","members":{"output":{}}},"activityTimedOutEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"executionFailedEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"executionStartedEventDetails":{"type":"structure","members":{"input":{},"roleArn":{}}},"executionSucceededEventDetails":{"type":"structure","members":{"output":{}}},"executionAbortedEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"executionTimedOutEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"lambdaFunctionFailedEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"lambdaFunctionScheduleFailedEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"lambdaFunctionScheduledEventDetails":{"type":"structure","required":["resource"],"members":{"resource":{},"input":{},"timeoutInSeconds":{"type":"long"}}},"lambdaFunctionStartFailedEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"lambdaFunctionSucceededEventDetails":{"type":"structure","members":{"output":{}}},"lambdaFunctionTimedOutEventDetails":{"type":"structure","members":{"error":{},"cause":{}}},"stateEnteredEventDetails":{"type":"structure","required":["name"],"members":{"name":{},"input":{}}},"stateExitedEventDetails":{"type":"structure","required":["name"],"members":{"name":{},"output":{}}}}}},"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","creationDate"],"members":{"stateMachineArn":{},"name":{},"creationDate":{"type":"timestamp"}}}},"nextToken":{}}}},"SendTaskFailure":{"input":{"type":"structure","required":["taskToken"],"members":{"taskToken":{},"error":{},"cause":{}}},"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":{}}},"output":{"type":"structure","members":{}}},"StartExecution":{"input":{"type":"structure","required":["stateMachineArn"],"members":{"stateMachineArn":{},"name":{},"input":{}}},"output":{"type":"structure","required":["executionArn","startDate"],"members":{"executionArn":{},"startDate":{"type":"timestamp"}}},"idempotent":true},"StopExecution":{"input":{"type":"structure","required":["executionArn"],"members":{"executionArn":{},"error":{},"cause":{}}},"output":{"type":"structure","required":["stopDate"],"members":{"stopDate":{"type":"timestamp"}}}}},"shapes":{}}

/***/ }),
/* 360 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"GetExecutionHistory":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"events"},"ListActivities":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"activities"},"ListExecutions":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"executions"},"ListStateMachines":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"stateMachines"}}}

/***/ }),
/* 361 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(362);
	    model.paginators = __webpack_require__(363).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Support;


/***/ }),
/* 362 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"uid":"support-2013-04-15","apiVersion":"2013-04-15","endpointPrefix":"support","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS Support","signatureVersion":"v4","targetPrefix":"AWSSupport_20130415"},"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"}}}}}}}

/***/ }),
/* 363 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"DescribeCases":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"cases"},"DescribeCommunications":{"input_token":"nextToken","output_token":"nextToken","limit_key":"maxResults","result_key":"communications"},"DescribeServices":{"result_key":"services"},"DescribeTrustedAdvisorCheckRefreshStatuses":{"result_key":"statuses"},"DescribeTrustedAdvisorCheckSummaries":{"result_key":"summaries"}}}

/***/ }),
/* 364 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	var Service = AWS.Service;
	var apiLoader = AWS.apiLoader;

	apiLoader.services['swf'] = {};
	AWS.SWF = Service.defineService('swf', ['2012-01-25']);
	__webpack_require__(365);
	Object.defineProperty(apiLoader.services['swf'], '2012-01-25', {
	  get: function get() {
	    var model = __webpack_require__(366);
	    model.paginators = __webpack_require__(367).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.SWF;


/***/ }),
/* 365 */
/***/ (function(module, exports, __webpack_require__) {

	var AWS = __webpack_require__(4);

	AWS.util.hideProperties(AWS, ['SimpleWorkflow']);

	/**
	 * @constant
	 * @readonly
	 * Backwards compatibility for access to the {AWS.SWF} service class.
	 */
	AWS.SimpleWorkflow = AWS.SWF;


/***/ }),
/* 366 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2012-01-25","endpointPrefix":"swf","jsonVersion":"1.0","protocol":"json","serviceAbbreviation":"Amazon SWF","serviceFullName":"Amazon Simple Workflow Service","signatureVersion":"v4","targetPrefix":"SimpleWorkflowService","timestampFormat":"unixTimestamp","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":"S16"}}},"output":{"type":"structure","required":["executionInfo","executionConfiguration","openCounts"],"members":{"executionInfo":{"shape":"S19"},"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":"S16"},"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"}},"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":"S16"},"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":"S16"},"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":{}}}},"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":"S1b"},"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":"S1b"},"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":"S1b"},"taskStartToCloseTimeout":{},"childPolicy":{},"lambdaRole":{}}},"output":{"type":"structure","members":{"runId":{}}}},"TerminateWorkflowExecution":{"input":{"type":"structure","required":["domain","workflowId"],"members":{"domain":{},"workflowId":{},"runId":{},"reason":{},"details":{},"childPolicy":{}}}}},"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":{}}},"S16":{"type":"structure","required":["workflowId","runId"],"members":{"workflowId":{},"runId":{}}},"S19":{"type":"structure","required":["execution","workflowType","startTimestamp","executionStatus"],"members":{"execution":{"shape":"S16"},"workflowType":{"shape":"Sr"},"startTimestamp":{"type":"timestamp"},"closeTimestamp":{"type":"timestamp"},"executionStatus":{},"closeStatus":{},"parent":{"shape":"S16"},"tagList":{"shape":"S1b"},"cancelRequested":{"type":"boolean"}}},"S1b":{"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":"S1b"},"continuedExecutionRunId":{},"parentWorkflowExecution":{"shape":"S16"},"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":"S1b"},"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":"S16"},"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":"S16"},"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":"S1b"},"lambdaRole":{}}},"childWorkflowExecutionStartedEventAttributes":{"type":"structure","required":["workflowExecution","workflowType","initiatedEventId"],"members":{"workflowExecution":{"shape":"S16"},"workflowType":{"shape":"Sr"},"initiatedEventId":{"type":"long"}}},"childWorkflowExecutionCompletedEventAttributes":{"type":"structure","required":["workflowExecution","workflowType","initiatedEventId","startedEventId"],"members":{"workflowExecution":{"shape":"S16"},"workflowType":{"shape":"Sr"},"result":{},"initiatedEventId":{"type":"long"},"startedEventId":{"type":"long"}}},"childWorkflowExecutionFailedEventAttributes":{"type":"structure","required":["workflowExecution","workflowType","initiatedEventId","startedEventId"],"members":{"workflowExecution":{"shape":"S16"},"workflowType":{"shape":"Sr"},"reason":{},"details":{},"initiatedEventId":{"type":"long"},"startedEventId":{"type":"long"}}},"childWorkflowExecutionTimedOutEventAttributes":{"type":"structure","required":["workflowExecution","workflowType","timeoutType","initiatedEventId","startedEventId"],"members":{"workflowExecution":{"shape":"S16"},"workflowType":{"shape":"Sr"},"timeoutType":{},"initiatedEventId":{"type":"long"},"startedEventId":{"type":"long"}}},"childWorkflowExecutionCanceledEventAttributes":{"type":"structure","required":["workflowExecution","workflowType","initiatedEventId","startedEventId"],"members":{"workflowExecution":{"shape":"S16"},"workflowType":{"shape":"Sr"},"details":{},"initiatedEventId":{"type":"long"},"startedEventId":{"type":"long"}}},"childWorkflowExecutionTerminatedEventAttributes":{"type":"structure","required":["workflowExecution","workflowType","initiatedEventId","startedEventId"],"members":{"workflowExecution":{"shape":"S16"},"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":"S16"},"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":"S16"},"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":"S19"}},"nextPageToken":{}}}}}

/***/ }),
/* 367 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 368 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(369);
	    model.paginators = __webpack_require__(370).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.XRay;


/***/ }),
/* 369 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-04-12","endpointPrefix":"xray","protocol":"rest-json","serviceFullName":"AWS X-Ray","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"},"Segments":{"type":"list","member":{"type":"structure","members":{"Id":{},"Document":{}}}}}}},"UnprocessedTraceIds":{"type":"list","member":{}},"NextToken":{}}}},"GetServiceGraph":{"http":{"requestUri":"/ServiceGraph"},"input":{"type":"structure","required":["StartTime","EndTime"],"members":{"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"NextToken":{}}},"output":{"type":"structure","members":{"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"Services":{"shape":"Sh"},"NextToken":{}}}},"GetTraceGraph":{"http":{"requestUri":"/TraceGraph"},"input":{"type":"structure","required":["TraceIds"],"members":{"TraceIds":{"shape":"S2"},"NextToken":{}}},"output":{"type":"structure","members":{"Services":{"shape":"Sh"},"NextToken":{}}}},"GetTraceSummaries":{"http":{"requestUri":"/TraceSummaries"},"input":{"type":"structure","required":["StartTime","EndTime"],"members":{"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"},"Sampling":{"type":"boolean"},"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":"S1d"}}}}},"Users":{"type":"list","member":{"type":"structure","members":{"UserName":{},"ServiceIds":{"shape":"S1d"}}}},"ServiceIds":{"shape":"S1d"}}}},"ApproximateTime":{"type":"timestamp"},"TracesProcessedCount":{"type":"long"},"NextToken":{}}}},"PutTelemetryRecords":{"http":{"requestUri":"/TelemetryRecords"},"input":{"type":"structure","required":["TelemetryRecords"],"members":{"TelemetryRecords":{"type":"list","member":{"type":"structure","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":{}}}}}}}},"shapes":{"S2":{"type":"list","member":{}},"Sh":{"type":"list","member":{"type":"structure","members":{"ReferenceId":{"type":"integer"},"Name":{},"Names":{"shape":"Sk"},"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":{"type":"structure","members":{"OkCount":{"type":"long"},"ErrorStatistics":{"shape":"Sq"},"FaultStatistics":{"shape":"Sr"},"TotalCount":{"type":"long"},"TotalResponseTime":{"type":"double"}}},"ResponseTimeHistogram":{"shape":"Ss"},"Aliases":{"type":"list","member":{"type":"structure","members":{"Name":{},"Names":{"type":"list","member":{}},"Type":{}}}}}}},"SummaryStatistics":{"type":"structure","members":{"OkCount":{"type":"long"},"ErrorStatistics":{"shape":"Sq"},"FaultStatistics":{"shape":"Sr"},"TotalCount":{"type":"long"},"TotalResponseTime":{"type":"double"}}},"DurationHistogram":{"shape":"Ss"},"ResponseTimeHistogram":{"shape":"Ss"}}}},"Sk":{"type":"list","member":{}},"Sq":{"type":"structure","members":{"ThrottleCount":{"type":"long"},"OtherCount":{"type":"long"},"TotalCount":{"type":"long"}}},"Sr":{"type":"structure","members":{"OtherCount":{"type":"long"},"TotalCount":{"type":"long"}}},"Ss":{"type":"list","member":{"type":"structure","members":{"Value":{"type":"double"},"Count":{"type":"integer"}}}},"S1d":{"type":"list","member":{"type":"structure","members":{"Name":{},"Names":{"shape":"Sk"},"AccountId":{},"Type":{}}}}}}

/***/ }),
/* 370 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 371 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(372);
	    model.paginators = __webpack_require__(373).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.WAF;


/***/ }),
/* 372 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-08-24","endpointPrefix":"waf","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"WAF","serviceFullName":"AWS 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":{}}}},"CreateIPSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"IPSet":{"shape":"Sh"},"ChangeToken":{}}}},"CreateRateBasedRule":{"input":{"type":"structure","required":["Name","MetricName","RateKey","RateLimit","ChangeToken"],"members":{"Name":{},"MetricName":{},"RateKey":{},"RateLimit":{"type":"long"},"ChangeToken":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"Sr"},"ChangeToken":{}}}},"CreateRule":{"input":{"type":"structure","required":["Name","MetricName","ChangeToken"],"members":{"Name":{},"MetricName":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"Sy"},"ChangeToken":{}}}},"CreateSizeConstraintSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"SizeConstraintSet":{"shape":"S11"},"ChangeToken":{}}}},"CreateSqlInjectionMatchSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"SqlInjectionMatchSet":{"shape":"S18"},"ChangeToken":{}}}},"CreateWebACL":{"input":{"type":"structure","required":["Name","MetricName","DefaultAction","ChangeToken"],"members":{"Name":{},"MetricName":{},"DefaultAction":{"shape":"S1c"},"ChangeToken":{}}},"output":{"type":"structure","members":{"WebACL":{"shape":"S1f"},"ChangeToken":{}}}},"CreateXssMatchSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"XssMatchSet":{"shape":"S1m"},"ChangeToken":{}}}},"DeleteByteMatchSet":{"input":{"type":"structure","required":["ByteMatchSetId","ChangeToken"],"members":{"ByteMatchSetId":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"DeleteIPSet":{"input":{"type":"structure","required":["IPSetId","ChangeToken"],"members":{"IPSetId":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"DeleteRateBasedRule":{"input":{"type":"structure","required":["RuleId","ChangeToken"],"members":{"RuleId":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"DeleteRule":{"input":{"type":"structure","required":["RuleId","ChangeToken"],"members":{"RuleId":{},"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":{}}}},"GetIPSet":{"input":{"type":"structure","required":["IPSetId"],"members":{"IPSetId":{}}},"output":{"type":"structure","members":{"IPSet":{"shape":"Sh"}}}},"GetRateBasedRule":{"input":{"type":"structure","required":["RuleId"],"members":{"RuleId":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"Sr"}}}},"GetRateBasedRuleManagedKeys":{"input":{"type":"structure","required":["RuleId"],"members":{"RuleId":{},"NextMarker":{}}},"output":{"type":"structure","members":{"ManagedKeys":{"type":"list","member":{}},"NextMarker":{}}}},"GetRule":{"input":{"type":"structure","required":["RuleId"],"members":{"RuleId":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"Sy"}}}},"GetSampledRequests":{"input":{"type":"structure","required":["WebAclId","RuleId","TimeWindow","MaxItems"],"members":{"WebAclId":{},"RuleId":{},"TimeWindow":{"shape":"S2o"},"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":{}}}},"PopulationSize":{"type":"long"},"TimeWindow":{"shape":"S2o"}}}},"GetSizeConstraintSet":{"input":{"type":"structure","required":["SizeConstraintSetId"],"members":{"SizeConstraintSetId":{}}},"output":{"type":"structure","members":{"SizeConstraintSet":{"shape":"S11"}}}},"GetSqlInjectionMatchSet":{"input":{"type":"structure","required":["SqlInjectionMatchSetId"],"members":{"SqlInjectionMatchSetId":{}}},"output":{"type":"structure","members":{"SqlInjectionMatchSet":{"shape":"S18"}}}},"GetWebACL":{"input":{"type":"structure","required":["WebACLId"],"members":{"WebACLId":{}}},"output":{"type":"structure","members":{"WebACL":{"shape":"S1f"}}}},"GetXssMatchSet":{"input":{"type":"structure","required":["XssMatchSetId"],"members":{"XssMatchSetId":{}}},"output":{"type":"structure","members":{"XssMatchSet":{"shape":"S1m"}}}},"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":{}}}}}}},"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":{}}}}}}},"ListRateBasedRules":{"input":{"type":"structure","members":{"NextMarker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"NextMarker":{},"Rules":{"shape":"S3q"}}}},"ListRules":{"input":{"type":"structure","members":{"NextMarker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"NextMarker":{},"Rules":{"shape":"S3q"}}}},"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":{}}}}}}},"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":{}}}}}}},"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":{}}}},"UpdateIPSet":{"input":{"type":"structure","required":["IPSetId","ChangeToken","Updates"],"members":{"IPSetId":{},"ChangeToken":{},"Updates":{"type":"list","member":{"type":"structure","required":["Action","IPSetDescriptor"],"members":{"Action":{},"IPSetDescriptor":{"shape":"Sj"}}}}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"UpdateRateBasedRule":{"input":{"type":"structure","required":["RuleId","ChangeToken","Updates","RateLimit"],"members":{"RuleId":{},"ChangeToken":{},"Updates":{"shape":"S4k"},"RateLimit":{"type":"long"}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"UpdateRule":{"input":{"type":"structure","required":["RuleId","ChangeToken","Updates"],"members":{"RuleId":{},"ChangeToken":{},"Updates":{"shape":"S4k"}}},"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":"S13"}}}}}},"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":"S1a"}}}}}},"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":"S1h"}}}},"DefaultAction":{"shape":"S1c"}}},"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":"S1o"}}}}}},"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":["IPSetId","IPSetDescriptors"],"members":{"IPSetId":{},"Name":{},"IPSetDescriptors":{"type":"list","member":{"shape":"Sj"}}}},"Sj":{"type":"structure","required":["Type","Value"],"members":{"Type":{},"Value":{}}},"Sr":{"type":"structure","required":["RuleId","MatchPredicates","RateKey","RateLimit"],"members":{"RuleId":{},"Name":{},"MetricName":{},"MatchPredicates":{"shape":"Ss"},"RateKey":{},"RateLimit":{"type":"long"}}},"Ss":{"type":"list","member":{"shape":"St"}},"St":{"type":"structure","required":["Negated","Type","DataId"],"members":{"Negated":{"type":"boolean"},"Type":{},"DataId":{}}},"Sy":{"type":"structure","required":["RuleId","Predicates"],"members":{"RuleId":{},"Name":{},"MetricName":{},"Predicates":{"shape":"Ss"}}},"S11":{"type":"structure","required":["SizeConstraintSetId","SizeConstraints"],"members":{"SizeConstraintSetId":{},"Name":{},"SizeConstraints":{"type":"list","member":{"shape":"S13"}}}},"S13":{"type":"structure","required":["FieldToMatch","TextTransformation","ComparisonOperator","Size"],"members":{"FieldToMatch":{"shape":"S9"},"TextTransformation":{},"ComparisonOperator":{},"Size":{"type":"long"}}},"S18":{"type":"structure","required":["SqlInjectionMatchSetId","SqlInjectionMatchTuples"],"members":{"SqlInjectionMatchSetId":{},"Name":{},"SqlInjectionMatchTuples":{"type":"list","member":{"shape":"S1a"}}}},"S1a":{"type":"structure","required":["FieldToMatch","TextTransformation"],"members":{"FieldToMatch":{"shape":"S9"},"TextTransformation":{}}},"S1c":{"type":"structure","required":["Type"],"members":{"Type":{}}},"S1f":{"type":"structure","required":["WebACLId","DefaultAction","Rules"],"members":{"WebACLId":{},"Name":{},"MetricName":{},"DefaultAction":{"shape":"S1c"},"Rules":{"type":"list","member":{"shape":"S1h"}}}},"S1h":{"type":"structure","required":["Priority","RuleId","Action"],"members":{"Priority":{"type":"integer"},"RuleId":{},"Action":{"shape":"S1c"},"Type":{}}},"S1m":{"type":"structure","required":["XssMatchSetId","XssMatchTuples"],"members":{"XssMatchSetId":{},"Name":{},"XssMatchTuples":{"type":"list","member":{"shape":"S1o"}}}},"S1o":{"type":"structure","required":["FieldToMatch","TextTransformation"],"members":{"FieldToMatch":{"shape":"S9"},"TextTransformation":{}}},"S2o":{"type":"structure","required":["StartTime","EndTime"],"members":{"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"}}},"S3q":{"type":"list","member":{"type":"structure","required":["RuleId","Name"],"members":{"RuleId":{},"Name":{}}}},"S4k":{"type":"list","member":{"type":"structure","required":["Action","Predicate"],"members":{"Action":{},"Predicate":{"shape":"St"}}}}}}

/***/ }),
/* 373 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 374 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(375);
	    model.paginators = __webpack_require__(376).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.WAFRegional;


/***/ }),
/* 375 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-11-28","endpointPrefix":"waf-regional","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"WAF Regional","serviceFullName":"AWS 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":{}}}},"CreateIPSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"IPSet":{"shape":"Sk"},"ChangeToken":{}}}},"CreateRateBasedRule":{"input":{"type":"structure","required":["Name","MetricName","RateKey","RateLimit","ChangeToken"],"members":{"Name":{},"MetricName":{},"RateKey":{},"RateLimit":{"type":"long"},"ChangeToken":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"Su"},"ChangeToken":{}}}},"CreateRule":{"input":{"type":"structure","required":["Name","MetricName","ChangeToken"],"members":{"Name":{},"MetricName":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"S11"},"ChangeToken":{}}}},"CreateSizeConstraintSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"SizeConstraintSet":{"shape":"S14"},"ChangeToken":{}}}},"CreateSqlInjectionMatchSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"SqlInjectionMatchSet":{"shape":"S1b"},"ChangeToken":{}}}},"CreateWebACL":{"input":{"type":"structure","required":["Name","MetricName","DefaultAction","ChangeToken"],"members":{"Name":{},"MetricName":{},"DefaultAction":{"shape":"S1f"},"ChangeToken":{}}},"output":{"type":"structure","members":{"WebACL":{"shape":"S1i"},"ChangeToken":{}}}},"CreateXssMatchSet":{"input":{"type":"structure","required":["Name","ChangeToken"],"members":{"Name":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"XssMatchSet":{"shape":"S1p"},"ChangeToken":{}}}},"DeleteByteMatchSet":{"input":{"type":"structure","required":["ByteMatchSetId","ChangeToken"],"members":{"ByteMatchSetId":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"DeleteIPSet":{"input":{"type":"structure","required":["IPSetId","ChangeToken"],"members":{"IPSetId":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"DeleteRateBasedRule":{"input":{"type":"structure","required":["RuleId","ChangeToken"],"members":{"RuleId":{},"ChangeToken":{}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"DeleteRule":{"input":{"type":"structure","required":["RuleId","ChangeToken"],"members":{"RuleId":{},"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":{}}}},"GetIPSet":{"input":{"type":"structure","required":["IPSetId"],"members":{"IPSetId":{}}},"output":{"type":"structure","members":{"IPSet":{"shape":"Sk"}}}},"GetRateBasedRule":{"input":{"type":"structure","required":["RuleId"],"members":{"RuleId":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"Su"}}}},"GetRateBasedRuleManagedKeys":{"input":{"type":"structure","required":["RuleId"],"members":{"RuleId":{},"NextMarker":{}}},"output":{"type":"structure","members":{"ManagedKeys":{"type":"list","member":{}},"NextMarker":{}}}},"GetRule":{"input":{"type":"structure","required":["RuleId"],"members":{"RuleId":{}}},"output":{"type":"structure","members":{"Rule":{"shape":"S11"}}}},"GetSampledRequests":{"input":{"type":"structure","required":["WebAclId","RuleId","TimeWindow","MaxItems"],"members":{"WebAclId":{},"RuleId":{},"TimeWindow":{"shape":"S2t"},"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":{}}}},"PopulationSize":{"type":"long"},"TimeWindow":{"shape":"S2t"}}}},"GetSizeConstraintSet":{"input":{"type":"structure","required":["SizeConstraintSetId"],"members":{"SizeConstraintSetId":{}}},"output":{"type":"structure","members":{"SizeConstraintSet":{"shape":"S14"}}}},"GetSqlInjectionMatchSet":{"input":{"type":"structure","required":["SqlInjectionMatchSetId"],"members":{"SqlInjectionMatchSetId":{}}},"output":{"type":"structure","members":{"SqlInjectionMatchSet":{"shape":"S1b"}}}},"GetWebACL":{"input":{"type":"structure","required":["WebACLId"],"members":{"WebACLId":{}}},"output":{"type":"structure","members":{"WebACL":{"shape":"S1i"}}}},"GetWebACLForResource":{"input":{"type":"structure","required":["ResourceArn"],"members":{"ResourceArn":{}}},"output":{"type":"structure","members":{"WebACLSummary":{"shape":"S3k"}}}},"GetXssMatchSet":{"input":{"type":"structure","required":["XssMatchSetId"],"members":{"XssMatchSetId":{}}},"output":{"type":"structure","members":{"XssMatchSet":{"shape":"S1p"}}}},"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":{}}}}}}},"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":{}}}}}}},"ListRateBasedRules":{"input":{"type":"structure","members":{"NextMarker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"NextMarker":{},"Rules":{"shape":"S3y"}}}},"ListResourcesForWebACL":{"input":{"type":"structure","required":["WebACLId"],"members":{"WebACLId":{}}},"output":{"type":"structure","members":{"ResourceArns":{"type":"list","member":{}}}}},"ListRules":{"input":{"type":"structure","members":{"NextMarker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"NextMarker":{},"Rules":{"shape":"S3y"}}}},"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":{}}}}}}},"ListWebACLs":{"input":{"type":"structure","members":{"NextMarker":{},"Limit":{"type":"integer"}}},"output":{"type":"structure","members":{"NextMarker":{},"WebACLs":{"type":"list","member":{"shape":"S3k"}}}}},"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":{}}}}}}},"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":{}}}},"UpdateIPSet":{"input":{"type":"structure","required":["IPSetId","ChangeToken","Updates"],"members":{"IPSetId":{},"ChangeToken":{},"Updates":{"type":"list","member":{"type":"structure","required":["Action","IPSetDescriptor"],"members":{"Action":{},"IPSetDescriptor":{"shape":"Sm"}}}}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"UpdateRateBasedRule":{"input":{"type":"structure","required":["RuleId","ChangeToken","Updates","RateLimit"],"members":{"RuleId":{},"ChangeToken":{},"Updates":{"shape":"S4u"},"RateLimit":{"type":"long"}}},"output":{"type":"structure","members":{"ChangeToken":{}}}},"UpdateRule":{"input":{"type":"structure","required":["RuleId","ChangeToken","Updates"],"members":{"RuleId":{},"ChangeToken":{},"Updates":{"shape":"S4u"}}},"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":"S16"}}}}}},"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":"S1d"}}}}}},"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":"S1k"}}}},"DefaultAction":{"shape":"S1f"}}},"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":"S1r"}}}}}},"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":["IPSetId","IPSetDescriptors"],"members":{"IPSetId":{},"Name":{},"IPSetDescriptors":{"type":"list","member":{"shape":"Sm"}}}},"Sm":{"type":"structure","required":["Type","Value"],"members":{"Type":{},"Value":{}}},"Su":{"type":"structure","required":["RuleId","MatchPredicates","RateKey","RateLimit"],"members":{"RuleId":{},"Name":{},"MetricName":{},"MatchPredicates":{"shape":"Sv"},"RateKey":{},"RateLimit":{"type":"long"}}},"Sv":{"type":"list","member":{"shape":"Sw"}},"Sw":{"type":"structure","required":["Negated","Type","DataId"],"members":{"Negated":{"type":"boolean"},"Type":{},"DataId":{}}},"S11":{"type":"structure","required":["RuleId","Predicates"],"members":{"RuleId":{},"Name":{},"MetricName":{},"Predicates":{"shape":"Sv"}}},"S14":{"type":"structure","required":["SizeConstraintSetId","SizeConstraints"],"members":{"SizeConstraintSetId":{},"Name":{},"SizeConstraints":{"type":"list","member":{"shape":"S16"}}}},"S16":{"type":"structure","required":["FieldToMatch","TextTransformation","ComparisonOperator","Size"],"members":{"FieldToMatch":{"shape":"Sc"},"TextTransformation":{},"ComparisonOperator":{},"Size":{"type":"long"}}},"S1b":{"type":"structure","required":["SqlInjectionMatchSetId","SqlInjectionMatchTuples"],"members":{"SqlInjectionMatchSetId":{},"Name":{},"SqlInjectionMatchTuples":{"type":"list","member":{"shape":"S1d"}}}},"S1d":{"type":"structure","required":["FieldToMatch","TextTransformation"],"members":{"FieldToMatch":{"shape":"Sc"},"TextTransformation":{}}},"S1f":{"type":"structure","required":["Type"],"members":{"Type":{}}},"S1i":{"type":"structure","required":["WebACLId","DefaultAction","Rules"],"members":{"WebACLId":{},"Name":{},"MetricName":{},"DefaultAction":{"shape":"S1f"},"Rules":{"type":"list","member":{"shape":"S1k"}}}},"S1k":{"type":"structure","required":["Priority","RuleId","Action"],"members":{"Priority":{"type":"integer"},"RuleId":{},"Action":{"shape":"S1f"},"Type":{}}},"S1p":{"type":"structure","required":["XssMatchSetId","XssMatchTuples"],"members":{"XssMatchSetId":{},"Name":{},"XssMatchTuples":{"type":"list","member":{"shape":"S1r"}}}},"S1r":{"type":"structure","required":["FieldToMatch","TextTransformation"],"members":{"FieldToMatch":{"shape":"Sc"},"TextTransformation":{}}},"S2t":{"type":"structure","required":["StartTime","EndTime"],"members":{"StartTime":{"type":"timestamp"},"EndTime":{"type":"timestamp"}}},"S3k":{"type":"structure","required":["WebACLId","Name"],"members":{"WebACLId":{},"Name":{}}},"S3y":{"type":"list","member":{"type":"structure","required":["RuleId","Name"],"members":{"RuleId":{},"Name":{}}}},"S4u":{"type":"list","member":{"type":"structure","required":["Action","Predicate"],"members":{"Action":{},"Predicate":{"shape":"Sw"}}}}}}

/***/ }),
/* 376 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 377 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(378);
	    model.paginators = __webpack_require__(379).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.WorkDocs;


/***/ }),
/* 378 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2016-05-01","endpointPrefix":"workdocs","jsonVersion":"1.1","protocol":"rest-json","serviceFullName":"Amazon 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":{}}}}}},"output":{"type":"structure","members":{"ShareResults":{"type":"list","member":{"type":"structure","members":{"PrincipalId":{},"Role":{},"Status":{},"ShareId":{},"StatusMessage":{"type":"string","sensitive":true}}}}}}},"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":"Sy"},"Visibility":{},"NotifyCollaborators":{"type":"boolean"}}},"output":{"type":"structure","members":{"Comment":{"shape":"S12"}}}},"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":"S15"}}},"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":"S1c"}}}},"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":"S1f"},"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":"S1o"}}}},"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":"S1f","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"},"UserId":{"location":"querystring","locationName":"userId"},"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"},"OrganizationId":{},"Initiator":{"shape":"S2b"},"Participants":{"type":"structure","members":{"Users":{"type":"list","member":{"shape":"S2b"}},"Groups":{"type":"list","member":{"type":"structure","members":{"Id":{},"Name":{}}}}}},"ResourceMetadata":{"shape":"S2h"},"OriginalParent":{"shape":"S2h"},"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":"S12"}},"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":"S2s"}},"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":"S35"},"Documents":{"type":"list","member":{"shape":"S37"}},"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":"S1o"}},"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"},"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":"S35"},"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":{"location":"querystring","locationName":"query","type":"string","sensitive":true},"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":{"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":"S37"},"CustomMetadata":{"shape":"S15"}}}},"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":"S3x"}}}},"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":"S2s"},"CustomMetadata":{"shape":"S15"}}}},"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":"S1c"},"CustomMetadata":{"shape":"S15"}}}},"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":"S3x"}}}},"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":"S37"},"UploadMetadata":{"type":"structure","members":{"UploadUrl":{"shape":"S2x"},"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":{}}},"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":{}}},"Sy":{"type":"string","sensitive":true},"S12":{"type":"structure","required":["CommentId"],"members":{"CommentId":{},"ParentId":{},"ThreadId":{},"Text":{"shape":"Sy"},"Contributor":{"shape":"S8"},"CreatedTimestamp":{"type":"timestamp"},"Status":{},"Visibility":{},"RecipientId":{}}},"S15":{"type":"map","key":{},"value":{}},"S1c":{"type":"structure","members":{"Id":{},"Name":{},"CreatorId":{},"ParentFolderId":{},"CreatedTimestamp":{"type":"timestamp"},"ModifiedTimestamp":{"type":"timestamp"},"ResourceState":{},"Signature":{},"Labels":{"shape":"S1f"},"Size":{"type":"long"},"LatestVersionSize":{"type":"long"}}},"S1f":{"type":"list","member":{}},"S1o":{"type":"structure","members":{"SubscriptionId":{},"EndPoint":{},"Protocol":{}}},"S2b":{"type":"structure","members":{"Id":{},"Username":{},"GivenName":{},"Surname":{},"EmailAddress":{}}},"S2h":{"type":"structure","members":{"Type":{},"Name":{},"OriginalName":{},"Id":{},"VersionId":{},"Owner":{"shape":"S2b"},"ParentId":{}}},"S2s":{"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":"S2x"}},"Source":{"type":"map","key":{},"value":{"shape":"S2x"}}}},"S2x":{"type":"string","sensitive":true},"S35":{"type":"list","member":{"shape":"S1c"}},"S37":{"type":"structure","members":{"Id":{},"CreatorId":{},"ParentFolderId":{},"CreatedTimestamp":{"type":"timestamp"},"ModifiedTimestamp":{"type":"timestamp"},"LatestVersionMetadata":{"shape":"S2s"},"ResourceState":{},"Labels":{"shape":"S1f"}}},"S3x":{"type":"structure","members":{"Components":{"type":"list","member":{"type":"structure","members":{"Id":{},"Name":{}}}}}}}}

/***/ }),
/* 379 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 380 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(381);
	    model.paginators = __webpack_require__(382).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.WorkSpaces;


/***/ }),
/* 381 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2015-04-08","endpointPrefix":"workspaces","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon WorkSpaces","signatureVersion":"v4","targetPrefix":"WorkspacesService","uid":"workspaces-2015-04-08"},"operations":{"CreateTags":{"input":{"type":"structure","required":["ResourceId","Tags"],"members":{"ResourceId":{},"Tags":{"shape":"S3"}}},"output":{"type":"structure","members":{}}},"CreateWorkspaces":{"input":{"type":"structure","required":["Workspaces"],"members":{"Workspaces":{"type":"list","member":{"shape":"Sa"}}}},"output":{"type":"structure","members":{"FailedRequests":{"type":"list","member":{"type":"structure","members":{"WorkspaceRequest":{"shape":"Sa"},"ErrorCode":{},"ErrorMessage":{}}}},"PendingRequests":{"shape":"So"}}}},"DeleteTags":{"input":{"type":"structure","required":["ResourceId","TagKeys"],"members":{"ResourceId":{},"TagKeys":{"type":"list","member":{}}}},"output":{"type":"structure","members":{}}},"DescribeTags":{"input":{"type":"structure","required":["ResourceId"],"members":{"ResourceId":{}}},"output":{"type":"structure","members":{"TagList":{"shape":"S3"}}}},"DescribeWorkspaceBundles":{"input":{"type":"structure","members":{"BundleIds":{"type":"list","member":{}},"Owner":{},"NextToken":{}}},"output":{"type":"structure","members":{"Bundles":{"type":"list","member":{"type":"structure","members":{"BundleId":{},"Name":{},"Owner":{},"Description":{},"UserStorage":{"type":"structure","members":{"Capacity":{}}},"ComputeType":{"type":"structure","members":{"Name":{}}}}}},"NextToken":{}}}},"DescribeWorkspaceDirectories":{"input":{"type":"structure","members":{"DirectoryIds":{"type":"list","member":{}},"NextToken":{}}},"output":{"type":"structure","members":{"Directories":{"type":"list","member":{"type":"structure","members":{"DirectoryId":{},"Alias":{},"DirectoryName":{},"RegistrationCode":{},"SubnetIds":{"type":"list","member":{}},"DnsIpAddresses":{"type":"list","member":{}},"CustomerUserName":{},"IamRoleId":{},"DirectoryType":{},"WorkspaceSecurityGroupId":{},"State":{},"WorkspaceCreationProperties":{"type":"structure","members":{"EnableWorkDocs":{"type":"boolean"},"EnableInternetAccess":{"type":"boolean"},"DefaultOu":{},"CustomSecurityGroupId":{},"UserEnabledAsLocalAdministrator":{"type":"boolean"}}}}}},"NextToken":{}}}},"DescribeWorkspaces":{"input":{"type":"structure","members":{"WorkspaceIds":{"shape":"S1s"},"DirectoryId":{},"UserName":{},"BundleId":{},"Limit":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"Workspaces":{"shape":"So"},"NextToken":{}}}},"DescribeWorkspacesConnectionStatus":{"input":{"type":"structure","members":{"WorkspaceIds":{"shape":"S1s"},"NextToken":{}}},"output":{"type":"structure","members":{"WorkspacesConnectionStatus":{"type":"list","member":{"type":"structure","members":{"WorkspaceId":{},"ConnectionState":{},"ConnectionStateCheckTimestamp":{"type":"timestamp"},"LastKnownUserConnectionTimestamp":{"type":"timestamp"}}}},"NextToken":{}}}},"ModifyWorkspaceProperties":{"input":{"type":"structure","required":["WorkspaceId","WorkspaceProperties"],"members":{"WorkspaceId":{},"WorkspaceProperties":{"shape":"Sg"}}},"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":"S28"}}}}},"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":"S28"}}}}},"StartWorkspaces":{"input":{"type":"structure","required":["StartWorkspaceRequests"],"members":{"StartWorkspaceRequests":{"type":"list","member":{"type":"structure","members":{"WorkspaceId":{}}}}}},"output":{"type":"structure","members":{"FailedRequests":{"type":"list","member":{"shape":"S28"}}}}},"StopWorkspaces":{"input":{"type":"structure","required":["StopWorkspaceRequests"],"members":{"StopWorkspaceRequests":{"type":"list","member":{"type":"structure","members":{"WorkspaceId":{}}}}}},"output":{"type":"structure","members":{"FailedRequests":{"type":"list","member":{"shape":"S28"}}}}},"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":"S28"}}}}}},"shapes":{"S3":{"type":"list","member":{"type":"structure","required":["Key"],"members":{"Key":{},"Value":{}}}},"Sa":{"type":"structure","required":["DirectoryId","UserName","BundleId"],"members":{"DirectoryId":{},"UserName":{},"BundleId":{},"VolumeEncryptionKey":{},"UserVolumeEncryptionEnabled":{"type":"boolean"},"RootVolumeEncryptionEnabled":{"type":"boolean"},"WorkspaceProperties":{"shape":"Sg"},"Tags":{"shape":"S3"}}},"Sg":{"type":"structure","members":{"RunningMode":{},"RunningModeAutoStopTimeoutInMinutes":{"type":"integer"}}},"So":{"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":"Sg"}}}},"S1s":{"type":"list","member":{}},"S28":{"type":"structure","members":{"WorkspaceId":{},"ErrorCode":{},"ErrorMessage":{}}}}}

/***/ }),
/* 382 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 383 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(384);
	    model.paginators = __webpack_require__(385).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.CodeStar;


/***/ }),
/* 384 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-04-19","endpointPrefix":"codestar","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"CodeStar","serviceFullName":"AWS 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":{}}},"output":{"type":"structure","required":["id","arn"],"members":{"id":{},"arn":{},"clientRequestToken":{},"projectTemplateId":{}}}},"CreateUserProfile":{"input":{"type":"structure","required":["userArn","displayName","emailAddress"],"members":{"userArn":{},"displayName":{},"emailAddress":{},"sshPublicKey":{}}},"output":{"type":"structure","required":["userArn"],"members":{"userArn":{},"displayName":{},"emailAddress":{},"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":{}}}},"DescribeUserProfile":{"input":{"type":"structure","required":["userArn"],"members":{"userArn":{}}},"output":{"type":"structure","required":["userArn","createdTimestamp","lastModifiedTimestamp"],"members":{"userArn":{},"displayName":{},"emailAddress":{},"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":{}}}},"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":{},"emailAddress":{},"sshPublicKey":{}}}},"nextToken":{}}}},"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":{},"emailAddress":{},"sshPublicKey":{}}},"output":{"type":"structure","required":["userArn"],"members":{"userArn":{},"displayName":{},"emailAddress":{},"sshPublicKey":{},"createdTimestamp":{"type":"timestamp"},"lastModifiedTimestamp":{"type":"timestamp"}}}}},"shapes":{"S9":{"type":"string","sensitive":true},"Sa":{"type":"string","sensitive":true}}}

/***/ }),
/* 385 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 386 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(387);
	    model.paginators = __webpack_require__(388).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.LexModelBuildingService;


/***/ }),
/* 387 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-04-19","endpointPrefix":"models.lex","jsonVersion":"1.1","protocol":"rest-json","serviceFullName":"Amazon 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":"Sh"},"status":{},"failureReason":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"idleSessionTTLInSeconds":{"type":"integer"},"voiceId":{},"checksum":{},"version":{},"locale":{},"childDirected":{"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":"Sp"},"sampleUtterances":{"shape":"Sx"},"confirmationPrompt":{"shape":"Sa"},"rejectionStatement":{"shape":"Sh"},"followUpPrompt":{"shape":"Sy"},"conclusionStatement":{"shape":"Sh"},"dialogCodeHook":{"shape":"Sz"},"fulfillmentActivity":{"shape":"S12"},"parentIntentSignature":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{},"checksum":{}}}},"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":"S18"},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{},"checksum":{}}}},"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"},"clarificationPrompt":{"shape":"Sa"},"abortStatement":{"shape":"Sh"},"status":{},"failureReason":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"idleSessionTTLInSeconds":{"type":"integer"},"voiceId":{},"checksum":{},"version":{},"locale":{},"childDirected":{"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":{}}}},"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":{}}}},"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":"S21"}}}},"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":"S21"}}}},"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":"S29"},"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":"S29"},"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":"S2f"},"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":"S2f"}}}},"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":"S2f"}}}},"nextToken":{}}}},"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":"Sp"},"sampleUtterances":{"shape":"Sx"},"confirmationPrompt":{"shape":"Sa"},"rejectionStatement":{"shape":"Sh"},"followUpPrompt":{"shape":"Sy"},"conclusionStatement":{"shape":"Sh"},"dialogCodeHook":{"shape":"Sz"},"fulfillmentActivity":{"shape":"S12"},"parentIntentSignature":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{},"checksum":{}}}},"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":"S2v"},"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":"S2v"},"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":"S18"},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{},"checksum":{}}}},"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":"S33"},"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":"S33"},"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"}}}}}}}}}},"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"},"clarificationPrompt":{"shape":"Sa"},"abortStatement":{"shape":"Sh"},"idleSessionTTLInSeconds":{"type":"integer"},"voiceId":{},"checksum":{},"processBehavior":{},"locale":{},"childDirected":{"type":"boolean"}}},"output":{"type":"structure","members":{"name":{},"description":{},"intents":{"shape":"S6"},"clarificationPrompt":{"shape":"Sa"},"abortStatement":{"shape":"Sh"},"status":{},"failureReason":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"idleSessionTTLInSeconds":{"type":"integer"},"voiceId":{},"checksum":{},"version":{},"locale":{},"childDirected":{"type":"boolean"}}}},"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":{}}},"output":{"type":"structure","members":{"name":{},"description":{},"botVersion":{},"botName":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"checksum":{}}}},"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":"Sp"},"sampleUtterances":{"shape":"Sx"},"confirmationPrompt":{"shape":"Sa"},"rejectionStatement":{"shape":"Sh"},"followUpPrompt":{"shape":"Sy"},"conclusionStatement":{"shape":"Sh"},"dialogCodeHook":{"shape":"Sz"},"fulfillmentActivity":{"shape":"S12"},"parentIntentSignature":{},"checksum":{}}},"output":{"type":"structure","members":{"name":{},"description":{},"slots":{"shape":"Sp"},"sampleUtterances":{"shape":"Sx"},"confirmationPrompt":{"shape":"Sa"},"rejectionStatement":{"shape":"Sh"},"followUpPrompt":{"shape":"Sy"},"conclusionStatement":{"shape":"Sh"},"dialogCodeHook":{"shape":"Sz"},"fulfillmentActivity":{"shape":"S12"},"parentIntentSignature":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{},"checksum":{}}}},"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":"S18"},"checksum":{}}},"output":{"type":"structure","members":{"name":{},"description":{},"enumerationValues":{"shape":"S18"},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{},"checksum":{}}}}},"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":{}}}},"Sh":{"type":"structure","required":["messages"],"members":{"messages":{"shape":"Sb"},"responseCard":{}}},"Sp":{"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":{}}}},"Sx":{"type":"list","member":{}},"Sy":{"type":"structure","required":["prompt","rejectionStatement"],"members":{"prompt":{"shape":"Sa"},"rejectionStatement":{"shape":"Sh"}}},"Sz":{"type":"structure","required":["uri","messageVersion"],"members":{"uri":{},"messageVersion":{}}},"S12":{"type":"structure","required":["type"],"members":{"type":{},"codeHook":{"shape":"Sz"}}},"S18":{"type":"list","member":{"type":"structure","required":["value"],"members":{"value":{}}}},"S21":{"type":"map","key":{},"value":{}},"S29":{"type":"list","member":{"type":"structure","members":{"name":{},"description":{},"status":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{}}}},"S2f":{"type":"list","member":{}},"S2v":{"type":"list","member":{"type":"structure","members":{"name":{},"description":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{}}}},"S33":{"type":"list","member":{"type":"structure","members":{"name":{},"description":{},"lastUpdatedDate":{"type":"timestamp"},"createdDate":{"type":"timestamp"},"version":{}}}}}}

/***/ }),
/* 388 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"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"}}}

/***/ }),
/* 389 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(390);
	    model.paginators = __webpack_require__(391).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.MarketplaceEntitlementService;


/***/ }),
/* 390 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-01-11","endpointPrefix":"entitlement.marketplace","jsonVersion":"1.1","protocol":"json","serviceFullName":"AWS 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":{}}

/***/ }),
/* 391 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ }),
/* 392 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(393);
	    model.paginators = __webpack_require__(394).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Athena;


/***/ }),
/* 393 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-05-18","endpointPrefix":"athena","jsonVersion":"1.1","protocol":"json","serviceFullName":"Amazon 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":"Sg"}}},"output":{"type":"structure","members":{"QueryExecutions":{"type":"list","member":{"shape":"Sk"}},"UnprocessedQueryExecutionIds":{"type":"list","member":{"type":"structure","members":{"QueryExecutionId":{},"ErrorCode":{},"ErrorMessage":{}}}}}}},"CreateNamedQuery":{"input":{"type":"structure","required":["Name","Database","QueryString"],"members":{"Name":{},"Description":{},"Database":{},"QueryString":{},"ClientRequestToken":{"idempotencyToken":true}}},"output":{"type":"structure","members":{"NamedQueryId":{}}},"idempotent":true},"DeleteNamedQuery":{"input":{"type":"structure","required":["NamedQueryId"],"members":{"NamedQueryId":{"idempotencyToken":true}}},"output":{"type":"structure","members":{}},"idempotent":true},"GetNamedQuery":{"input":{"type":"structure","required":["NamedQueryId"],"members":{"NamedQueryId":{}}},"output":{"type":"structure","members":{"NamedQuery":{"shape":"S6"}}}},"GetQueryExecution":{"input":{"type":"structure","required":["QueryExecutionId"],"members":{"QueryExecutionId":{}}},"output":{"type":"structure","members":{"QueryExecution":{"shape":"Sk"}}}},"GetQueryResults":{"input":{"type":"structure","required":["QueryExecutionId"],"members":{"QueryExecutionId":{},"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"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":{}}}},"ListNamedQueries":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"NamedQueryIds":{"shape":"S2"},"NextToken":{}}}},"ListQueryExecutions":{"input":{"type":"structure","members":{"NextToken":{},"MaxResults":{"type":"integer"}}},"output":{"type":"structure","members":{"QueryExecutionIds":{"shape":"Sg"},"NextToken":{}}}},"StartQueryExecution":{"input":{"type":"structure","required":["QueryString","ResultConfiguration"],"members":{"QueryString":{},"ClientRequestToken":{"idempotencyToken":true},"QueryExecutionContext":{"shape":"Sp"},"ResultConfiguration":{"shape":"Sl"}}},"output":{"type":"structure","members":{"QueryExecutionId":{}}},"idempotent":true},"StopQueryExecution":{"input":{"type":"structure","required":["QueryExecutionId"],"members":{"QueryExecutionId":{"idempotencyToken":true}}},"output":{"type":"structure","members":{}},"idempotent":true}},"shapes":{"S2":{"type":"list","member":{}},"S6":{"type":"structure","required":["Name","Database","QueryString"],"members":{"Name":{},"Description":{},"Database":{},"QueryString":{},"NamedQueryId":{}}},"Sg":{"type":"list","member":{}},"Sk":{"type":"structure","members":{"QueryExecutionId":{},"Query":{},"ResultConfiguration":{"shape":"Sl"},"QueryExecutionContext":{"shape":"Sp"},"Status":{"type":"structure","members":{"State":{},"StateChangeReason":{},"SubmissionDateTime":{"type":"timestamp"},"CompletionDateTime":{"type":"timestamp"}}},"Statistics":{"type":"structure","members":{"EngineExecutionTimeInMillis":{"type":"long"},"DataScannedInBytes":{"type":"long"}}}}},"Sl":{"type":"structure","required":["OutputLocation"],"members":{"OutputLocation":{},"EncryptionConfiguration":{"type":"structure","required":["EncryptionOption"],"members":{"EncryptionOption":{},"KmsKey":{}}}}},"Sp":{"type":"structure","members":{"Database":{}}}}}

/***/ }),
/* 394 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{"GetQueryResults":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListNamedQueries":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"},"ListQueryExecutions":{"input_token":"NextToken","output_token":"NextToken","limit_key":"MaxResults"}}}

/***/ }),
/* 395 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(396);
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.Greengrass;


/***/ }),
/* 396 */
/***/ (function(module, exports) {

	module.exports = {"metadata":{"apiVersion":"2017-06-07","endpointPrefix":"greengrass","signingName":"greengrass","serviceFullName":"AWS 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"]},"output":{"type":"structure","members":{"AssociatedAt":{}}}},"AssociateServiceRoleToAccount":{"http":{"method":"PUT","requestUri":"/greengrass/servicerole","responseCode":200},"input":{"type":"structure","members":{"RoleArn":{}}},"output":{"type":"structure","members":{"AssociatedAt":{}}}},"CreateCoreDefinition":{"http":{"requestUri":"/greengrass/definition/cores","responseCode":200},"input":{"type":"structure","members":{"AmznClientToken":{"location":"header","locationName":"X-Amzn-Client-Token"},"InitialVersion":{"shape":"S7"},"Name":{}}},"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":"S8"}},"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"]},"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":"Si"},"Name":{}}},"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":"Sj"}},"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":"Sp"},"Name":{}}},"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"},"FunctionDefinitionId":{"location":"uri","locationName":"FunctionDefinitionId"},"Functions":{"shape":"Sq"}},"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":"S10"},"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"},"CoreDefinitionVersionArn":{},"DeviceDefinitionVersionArn":{},"FunctionDefinitionVersionArn":{},"GroupId":{"location":"uri","locationName":"GroupId"},"LoggerDefinitionVersionArn":{},"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":"S17"},"Name":{}}},"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":"S18"}},"required":["LoggerDefinitionId"]},"output":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Id":{},"Version":{}}}},"CreateSubscriptionDefinition":{"http":{"requestUri":"/greengrass/definition/subscriptions","responseCode":200},"input":{"type":"structure","members":{"AmznClientToken":{"location":"header","locationName":"X-Amzn-Client-Token"},"InitialVersion":{"shape":"S1h"},"Name":{}}},"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":"S1i"}},"required":["SubscriptionDefinitionId"]},"output":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Id":{},"Version":{}}}},"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":{}}},"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":{}}}},"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":"S27"},"Message":{"locationName":"message"}}}},"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":{}}}},"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":"S7"},"Id":{},"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":{},"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":{}}}},"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"}},"required":["DeviceDefinitionVersionId","DeviceDefinitionId"]},"output":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Definition":{"shape":"Si"},"Id":{},"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":{}}}},"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"}},"required":["FunctionDefinitionId","FunctionDefinitionVersionId"]},"output":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Definition":{"shape":"Sp"},"Id":{},"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":{}}}},"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":"S10"},"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":{}}}},"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"}},"required":["LoggerDefinitionVersionId","LoggerDefinitionId"]},"output":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Definition":{"shape":"S17"},"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":{}}}},"GetSubscriptionDefinitionVersion":{"http":{"method":"GET","requestUri":"/greengrass/definition/subscriptions/{SubscriptionDefinitionId}/versions/{SubscriptionDefinitionVersionId}","responseCode":200},"input":{"type":"structure","members":{"SubscriptionDefinitionId":{"location":"uri","locationName":"SubscriptionDefinitionId"},"SubscriptionDefinitionVersionId":{"location":"uri","locationName":"SubscriptionDefinitionVersionId"}},"required":["SubscriptionDefinitionId","SubscriptionDefinitionVersionId"]},"output":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Definition":{"shape":"S1h"},"Id":{},"Version":{}}}},"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":"S37"}}}},"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":"S3b"},"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":{},"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":"S37"}}}},"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":"S3b"},"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":"S37"}}}},"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":"S3b"},"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":"S37"}}}},"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":"S37"}}}},"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":"S3b"},"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":"S37"}}}},"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":"S3b"},"NextToken":{}}}},"UpdateConnectivityInfo":{"http":{"method":"PUT","requestUri":"/greengrass/things/{ThingName}/connectivityInfo","responseCode":200},"input":{"type":"structure","members":{"ConnectivityInfo":{"shape":"S27"},"ThingName":{"location":"uri","locationName":"ThingName"}},"required":["ThingName"]},"output":{"type":"structure","members":{"Message":{"locationName":"message"},"Version":{}}}},"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":{}}},"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":{}}}},"shapes":{"S7":{"type":"structure","members":{"Cores":{"shape":"S8"}}},"S8":{"type":"list","member":{"type":"structure","members":{"CertificateArn":{},"Id":{},"SyncShadow":{"type":"boolean"},"ThingArn":{}}}},"Si":{"type":"structure","members":{"Devices":{"shape":"Sj"}}},"Sj":{"type":"list","member":{"type":"structure","members":{"CertificateArn":{},"Id":{},"SyncShadow":{"type":"boolean"},"ThingArn":{}}}},"Sp":{"type":"structure","members":{"Functions":{"shape":"Sq"}}},"Sq":{"type":"list","member":{"type":"structure","members":{"FunctionArn":{},"FunctionConfiguration":{"type":"structure","members":{"Environment":{"type":"structure","members":{"Variables":{"type":"map","key":{},"value":{}}}},"ExecArgs":{},"Executable":{},"MemorySize":{"type":"integer"},"Pinned":{"type":"boolean"},"Timeout":{"type":"integer"}}},"Id":{}}}},"S10":{"type":"structure","members":{"CoreDefinitionVersionArn":{},"DeviceDefinitionVersionArn":{},"FunctionDefinitionVersionArn":{},"LoggerDefinitionVersionArn":{},"SubscriptionDefinitionVersionArn":{}}},"S17":{"type":"structure","members":{"Loggers":{"shape":"S18"}}},"S18":{"type":"list","member":{"type":"structure","members":{"Component":{},"Id":{},"Level":{},"Space":{"type":"integer"},"Type":{}}}},"S1h":{"type":"structure","members":{"Subscriptions":{"shape":"S1i"}}},"S1i":{"type":"list","member":{"type":"structure","members":{"Id":{},"Source":{},"Subject":{},"Target":{}}}},"S27":{"type":"list","member":{"type":"structure","members":{"HostAddress":{},"Id":{},"Metadata":{},"PortNumber":{"type":"integer"}}}},"S37":{"type":"list","member":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Id":{},"Version":{}}}},"S3b":{"type":"list","member":{"type":"structure","members":{"Arn":{},"CreationTimestamp":{},"Id":{},"LastUpdatedTimestamp":{},"LatestVersion":{},"LatestVersionArn":{},"Name":{}}}}}}

/***/ }),
/* 397 */
/***/ (function(module, exports, __webpack_require__) {

	__webpack_require__(2);
	var AWS = __webpack_require__(4);
	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__(398);
	    model.paginators = __webpack_require__(399).pagination;
	    return model;
	  },
	  enumerable: true,
	  configurable: true
	});

	module.exports = AWS.DAX;


/***/ }),
/* 398 */
/***/ (function(module, exports) {

	module.exports = {"version":"2.0","metadata":{"apiVersion":"2017-04-19","endpointPrefix":"dax","jsonVersion":"1.1","protocol":"json","serviceAbbreviation":"Amazon DAX","serviceFullName":"Amazon DynamoDB Accelerator (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"}}},"output":{"type":"structure","members":{"Cluster":{"shape":"S9"}}}},"CreateParameterGroup":{"input":{"type":"structure","required":["ParameterGroupName"],"members":{"ParameterGroupName":{},"Description":{}}},"output":{"type":"structure","members":{"ParameterGroup":{"shape":"Sm"}}}},"CreateSubnetGroup":{"input":{"type":"structure","required":["SubnetGroupName","SubnetIds"],"members":{"SubnetGroupName":{},"Description":{},"SubnetIds":{"shape":"So"}}},"output":{"type":"structure","members":{"SubnetGroup":{"shape":"Sq"}}}},"DecreaseReplicationFactor":{"input":{"type":"structure","required":["ClusterName","NewReplicationFactor"],"members":{"ClusterName":{},"NewReplicationFactor":{"type":"integer"},"AvailabilityZones":{"shape":"S4"},"NodeIdsToRemove":{"shape":"Sc"}}},"output":{"type":"structure","members":{"Cluster":{"shape":"S9"}}}},"DeleteCluster":{"input":{"type":"structure","required":["ClusterName"],"members":{"ClusterName":{}}},"output":{"type":"structure","members":{"Cluster":{"shape":"S9"}}}},"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":"S9"}}}}},"DescribeDefaultParameters":{"input":{"type":"structure","members":{"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"NextToken":{},"Parameters":{"shape":"S17"}}}},"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":"Sm"}}}}},"DescribeParameters":{"input":{"type":"structure","required":["ParameterGroupName"],"members":{"ParameterGroupName":{},"Source":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"NextToken":{},"Parameters":{"shape":"S17"}}}},"DescribeSubnetGroups":{"input":{"type":"structure","members":{"SubnetGroupNames":{"type":"list","member":{}},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"NextToken":{},"SubnetGroups":{"type":"list","member":{"shape":"Sq"}}}}},"IncreaseReplicationFactor":{"input":{"type":"structure","required":["ClusterName","NewReplicationFactor"],"members":{"ClusterName":{},"NewReplicationFactor":{"type":"integer"},"AvailabilityZones":{"shape":"S4"}}},"output":{"type":"structure","members":{"Cluster":{"shape":"S9"}}}},"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":"S9"}}}},"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":"S9"}}}},"UpdateParameterGroup":{"input":{"type":"structure","required":["ParameterGroupName","ParameterNameValues"],"members":{"ParameterGroupName":{},"ParameterNameValues":{"type":"list","member":{"type":"structure","members":{"ParameterName":{},"ParameterValue":{}}}}}},"output":{"type":"structure","members":{"ParameterGroup":{"shape":"Sm"}}}},"UpdateSubnetGroup":{"input":{"type":"structure","required":["SubnetGroupName"],"members":{"SubnetGroupName":{},"Description":{},"SubnetIds":{"shape":"So"}}},"output":{"type":"structure","members":{"SubnetGroup":{"shape":"Sq"}}}}},"shapes":{"S4":{"type":"list","member":{}},"S5":{"type":"list","member":{}},"S6":{"type":"list","member":{"type":"structure","members":{"Key":{},"Value":{}}}},"S9":{"type":"structure","members":{"ClusterName":{},"Description":{},"ClusterArn":{},"TotalNodes":{"type":"integer"},"ActiveNodes":{"type":"integer"},"NodeType":{},"Status":{},"ClusterDiscoveryEndpoint":{"shape":"Sb"},"NodeIdsToRemove":{"shape":"Sc"},"Nodes":{"type":"list","member":{"type":"structure","members":{"NodeId":{},"Endpoint":{"shape":"Sb"},"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":"Sc"}}}}},"Sb":{"type":"structure","members":{"Address":{},"Port":{"type":"integer"}}},"Sc":{"type":"list","member":{}},"Sm":{"type":"structure","members":{"ParameterGroupName":{},"Description":{}}},"So":{"type":"list","member":{}},"Sq":{"type":"structure","members":{"SubnetGroupName":{},"Description":{},"VpcId":{},"Subnets":{"type":"list","member":{"type":"structure","members":{"SubnetIdentifier":{},"SubnetAvailabilityZone":{}}}}}},"S17":{"type":"list","member":{"type":"structure","members":{"ParameterName":{},"ParameterType":{},"ParameterValue":{},"NodeTypeSpecificValues":{"type":"list","member":{"type":"structure","members":{"NodeType":{},"Value":{}}}},"Description":{},"Source":{},"DataType":{},"AllowedValues":{},"IsModifiable":{},"ChangeType":{}}}}}}

/***/ }),
/* 399 */
/***/ (function(module, exports) {

	module.exports = {"pagination":{}}

/***/ })
/******/ ])
});
;