Comparing version 2.0.0-alpha.2 to 2.0.0-alpha.3
56
array.js
@@ -6,6 +6,8 @@ (function (factory) { | ||
else if (typeof define === 'function' && define.amd) { | ||
define(["require", "exports", './number'], factory); | ||
define(["require", "exports", './number', './has'], factory); | ||
} | ||
})(function (require, exports) { | ||
"use strict"; | ||
var number_1 = require('./number'); | ||
var has_1 = require('./has'); | ||
/** | ||
@@ -60,2 +62,6 @@ * Ensures a non-negative, non-infinite, safe integer. | ||
function from(arrayLike, mapFunction, thisArg) { | ||
// Use the native Array.from() if it exists | ||
if (has_1.default('es6-array-from')) { | ||
return Array.from.apply(null, arguments); | ||
} | ||
if (arrayLike == null) { | ||
@@ -87,2 +93,5 @@ throw new TypeError('from: requires an array-like object'); | ||
function of() { | ||
if (has_1.default('es6-array-of')) { | ||
return Array.of.apply(null, arguments); | ||
} | ||
return Array.prototype.slice.call(arguments); | ||
@@ -101,5 +110,9 @@ } | ||
function fill(target, value, start, end) { | ||
if (has_1.default('es6-array-fill')) { | ||
var method = Array.prototype.fill; | ||
return method.call.apply(method, arguments); | ||
} | ||
var length = toLength(target.length); | ||
var i = normalizeOffset(toInteger(start), length); | ||
end = normalizeOffset(end ? toInteger(end) : length, length); | ||
end = normalizeOffset(end === undefined ? length : toInteger(end), length); | ||
while (i < end) { | ||
@@ -121,2 +134,6 @@ target[i++] = value; | ||
function findIndex(target, callback, thisArg) { | ||
if (has_1.default('es6-array-findIndex')) { | ||
var method = Array.prototype.findIndex; | ||
return method.call.apply(method, arguments); | ||
} | ||
var length = toLength(target.length); | ||
@@ -146,2 +163,6 @@ if (!callback) { | ||
function find(target, callback, thisArg) { | ||
if (has_1.default('es6-array-find')) { | ||
var method = Array.prototype.find; | ||
return method.call.apply(method, arguments); | ||
} | ||
var index = findIndex(target, callback, thisArg); | ||
@@ -161,2 +182,6 @@ return index !== -1 ? target[index] : undefined; | ||
function copyWithin(target, offset, start, end) { | ||
if (has_1.default('es6-array-copyWithin')) { | ||
var method = Array.prototype.copyWithin; | ||
return method.call.apply(method, arguments); | ||
} | ||
if (target == null) { | ||
@@ -168,3 +193,3 @@ throw new TypeError('copyWithin: target must be an array-like object'); | ||
start = normalizeOffset(toInteger(start), length); | ||
end = normalizeOffset(end ? toInteger(end) : length, length); | ||
end = normalizeOffset(end === undefined ? length : toInteger(end), length); | ||
var count = Math.min(end - start, length - offset); | ||
@@ -191,3 +216,26 @@ var direction = 1; | ||
exports.copyWithin = copyWithin; | ||
/** | ||
* Determines whether an array includes a given value | ||
* @param target the target array-like object | ||
* @param searchElement the item to search for | ||
* @param fromIndex the starting index to search from | ||
*/ | ||
function includes(target, searchElement, fromIndex) { | ||
if (fromIndex === void 0) { fromIndex = 0; } | ||
if (has_1.default('es7-array-includes')) { | ||
var method = Array.prototype.includes; | ||
return method.call.apply(method, arguments); | ||
} | ||
var len = toLength(target.length); | ||
for (var i = fromIndex; i < len; ++i) { | ||
var currentElement = target[i]; | ||
if (searchElement === currentElement || | ||
(searchElement !== searchElement && currentElement !== currentElement)) { | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
exports.includes = includes; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXJyYXkudHMiXSwibmFtZXMiOlsidG9MZW5ndGgiLCJ0b0ludGVnZXIiLCJub3JtYWxpemVPZmZzZXQiLCJmcm9tIiwib2YiLCJmaWxsIiwiZmluZEluZGV4IiwiZmluZCIsImNvcHlXaXRoaW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsdUJBQW1ELFVBQVUsQ0FBQyxDQUFBO0lBZTlEOzs7O09BSUc7SUFDSCxrQkFBa0IsTUFBYztRQUMvQkEsTUFBTUEsR0FBR0EsTUFBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0E7UUFDeEJBLEVBQUVBLENBQUNBLENBQUNBLEtBQUtBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1lBQ25CQSxNQUFNQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNWQSxDQUFDQTtRQUNEQSxFQUFFQSxDQUFDQSxDQUFDQSxRQUFRQSxDQUFDQSxNQUFNQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUN0QkEsTUFBTUEsR0FBR0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0E7UUFDN0JBLENBQUNBO1FBQ0RBLDRDQUE0Q0E7UUFDNUNBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLE1BQU1BLEVBQUVBLENBQUNBLENBQUNBLEVBQUVBLHlCQUFjQSxDQUFDQSxDQUFDQTtJQUN0REEsQ0FBQ0E7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLEtBQVU7UUFDNUJDLEtBQUtBLEdBQUdBLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO1FBQ3RCQSxFQUFFQSxDQUFDQSxDQUFDQSxLQUFLQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNsQkEsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDVkEsQ0FBQ0E7UUFDREEsRUFBRUEs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ImltcG9ydCB7IE1BWF9TQUZFX0lOVEVHRVIgYXMgbWF4U2FmZUludGVnZXIgfSBmcm9tICcuL251bWJlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXJyYXlMaWtlPFQ+IHtcblx0bGVuZ3RoOiBudW1iZXI7XG5cdFtuOiBudW1iZXJdOiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hcENhbGxiYWNrPFQ+IHtcblx0KGVsZW1lbnQ6IFQsIGluZGV4OiBudW1iZXIpOiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpbmRDYWxsYmFjazxUPiB7XG5cdChlbGVtZW50OiBULCBpbmRleDogbnVtYmVyLCBhcnJheTogQXJyYXlMaWtlPFQ+KTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIGEgbm9uLW5lZ2F0aXZlLCBub24taW5maW5pdGUsIHNhZmUgaW50ZWdlci5cbiAqIEBwYXJhbSBsZW5ndGggVGhlIG51bWJlciB0byB2YWxpZGF0ZVxuICogQHJldHVybiBBIHByb3BlciBsZW5ndGhcbiAqL1xuZnVuY3Rpb24gdG9MZW5ndGgobGVuZ3RoOiBudW1iZXIpOiBudW1iZXIge1xuXHRsZW5ndGggPSBOdW1iZXIobGVuZ3RoKTtcblx0aWYgKGlzTmFOKGxlbmd0aCkpIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXHRpZiAoaXNGaW5pdGUobGVuZ3RoKSkge1xuXHRcdGxlbmd0aCA9IE1hdGguZmxvb3IobGVuZ3RoKTtcblx0fVxuXHQvLyBFbnN1cmUgYSBub24tbmVnYXRpdmUsIHJlYWwsIHNhZmUgaW50ZWdlclxuXHRyZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgobGVuZ3RoLCAwKSwgbWF4U2FmZUludGVnZXIpO1xufVxuXG4vKipcbiAqIEZyb20gRVM2IDcuMS40IFRvSW50ZWdlcigpXG4gKiBAcGFyYW0gdmFsdWUgQSB2YWx1ZSB0byBjb252ZXJ0XG4gKiBAcmV0dXJuIEFuIGludGVnZXJcbiAqL1xuZnVuY3Rpb24gdG9JbnRlZ2VyKHZhbHVlOiBhbnkpOiBudW1iZXIge1xuXHR2YWx1ZSA9IE51bWJlcih2YWx1ZSk7XG5cdGlmIChpc05hTih2YWx1ZSkpIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXHRpZiAodmFsdWUgPT09IDAgfHwgIWlzRmluaXRlKHZhbHVlKSkge1xuXHRcdHJldHVybiB2YWx1ZTtcblx0fVxuXG5cdHJldHVybiAodmFsdWUgPiAwID8gMSA6IC0xKSAqIE1hdGguZmxvb3IoTWF0aC5hYnModmFsdWUpKTtcbn1cblxuLyoqXG4gKiBOb3JtYWxpemVzIGFuIG9mZnNldCBhZ2FpbnN0IGEgZ2l2ZW4gbGVuZ3RoLCB3cmFwcGluZyBpdCBpZiBuZWdhdGl2ZS5cbiAqIEBwYXJhbSB2YWx1ZSBUaGUgb3JpZ2luYWwgb2Zmc2V0XG4gKiBAcGFyYW0gbGVuZ3RoIFRoZSB0b3RhbCBsZW5ndGggdG8gbm9ybWFsaXplIGFnYWluc3RcbiAqIEByZXR1cm4gSWYgbmVnYXRpdmUsIHByb3ZpZGUgYSBkaXN0YW5jZSBmcm9tIHRoZSBlbmQgKGxlbmd0aCk7IG90aGVyd2lzZSBwcm92aWRlIGEgZGlzdGFuY2UgZnJvbSAwXG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZU9mZnNldCh2YWx1ZTogbnVtYmVyLCBsZW5ndGg6IG51bWJlcik6IG51bWJlciB7XG5cdHJldHVybiB2YWx1ZSA8IDAgPyBNYXRoLm1heChsZW5ndGggKyB2YWx1ZSwgMCkgOiBNYXRoLm1pbih2YWx1ZSwgbGVuZ3RoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb20oYXJyYXlMaWtlOiBzdHJpbmcsIG1hcEZ1bmN0aW9uPzogTWFwQ2FsbGJhY2s8c3RyaW5nPiwgdGhpc0FyZz86IHt9KTogQXJyYXlMaWtlPHN0cmluZz47XG5leHBvcnQgZnVuY3Rpb24gZnJvbTxUPihhcnJheUxpa2U6IEFycmF5TGlrZTxUPiwgbWFwRnVuY3Rpb24/OiBNYXBDYWxsYmFjazxUPiwgdGhpc0FyZz86IHt9KTogQXJyYXlMaWtlPFQ+O1xuLyoqXG4gKiBUaGUgQXJyYXkuZnJvbSgpIG1ldGhvZCBjcmVhdGVzIGEgbmV3IEFycmF5IGluc3RhbmNlIGZyb20gYW4gYXJyYXktbGlrZSBvciBpdGVyYWJsZSBvYmplY3QuXG4gKlxuICogQHBhcmFtIGFycmF5TGlrZSBBbiBhcnJheS1saWtlIG9yIGl0ZXJhYmxlIG9iamVjdCB0byBjb252ZXJ0IHRvIGFuIGFycmF5XG4gKiBAcGFyYW0gW21hcEZ1bmN0aW9uXSBBIG1hcCBmdW5jdGlvbiB0byBjYWxsIG9uIGVhY2ggZWxlbWVudCBpbiB0aGUgYXJyYXlcbiAqIEBwYXJhbSBbdGhpc0FyZ10gVGhlIGV4ZWN1dGlvbiBjb250ZXh0IGZvciB0aGUgbWFwIGZ1bmN0aW9uXG4gKiBAcmV0dXJuIFRoZSBuZXcgQXJyYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb208VD4oYXJyYXlMaWtlOiAoc3RyaW5nIHwgQXJyYXlMaWtlPFQ+KSwgbWFwRnVuY3Rpb24/OiBNYXBDYWxsYmFjazxUPiwgdGhpc0FyZz86IHt9KTogQXJyYXlMaWtlPFQ+IHtcblx0aWYgKGFycmF5TGlrZSA9PSBudWxsKSB7XG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignZnJvbTogcmVxdWlyZXMgYW4gYXJyYXktbGlrZSBvYmplY3QnKTtcblx0fVxuXG5cdGlmIChtYXBGdW5jdGlvbiAmJiB0aGlzQXJnKSB7XG5cdFx0bWFwRnVuY3Rpb24gPSBtYXBGdW5jdGlvbi5iaW5kKHRoaXNBcmcpO1xuXHR9XG5cblx0Y29uc3QgQ29uc3RydWN0b3I6IGFueSA9IHRoaXM7XG5cdGNvbnN0IGl0ZW1zOiBBcnJheUxpa2U8YW55PiA9IE9iamVjdChhcnJheUxpa2UpO1xuXHRjb25zdCBsZW5ndGg6IG51bWJlciA9IHRvTGVuZ3RoKGl0ZW1zLmxlbmd0aCk7XG5cdC8vIFN1cHBvcnQgZXh0ZW5zaW9uXG5cdGNvbnN0IGFycmF5OiBhbnlbXSA9ICh0eXBlb2YgQ29uc3RydWN0b3IgPT09ICdmdW5jdGlvbicpID8gPGFueVtdPiBPYmplY3QobmV3IENvbnN0cnVjdG9yKGxlbmd0aCkpIDogbmV3IEFycmF5KGxlbmd0aCk7XG5cblx0Zm9yIChsZXQgaSA9IDAsIHZhbHVlOiBhbnk7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdHZhbHVlID0gaXRlbXNbaV07XG5cdFx0YXJyYXlbaV0gPSBtYXBGdW5jdGlvbiA/IG1hcEZ1bmN0aW9uKHZhbHVlLCBpKSA6IHZhbHVlO1xuXHR9XG5cblx0YXJyYXkubGVuZ3RoID0gbGVuZ3RoO1xuXG5cdHJldHVybiBhcnJheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9mKC4uLml0ZW1zOiBhbnlbXSk6IGFueVtdO1xuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IGFycmF5IGZyb20gdGhlIGZ1bmN0aW9uIHBhcmFtZXRlcnMuXG4gKlxuICogQHBhcmFtIGFyZ3VtZW50cyBBbnkgbnVtYmVyIG9mIGFyZ3VtZW50cyBmb3IgdGhlIGFycmF5XG4gKiBAcmV0dXJuIEFuIGFycmF5IGZyb20gdGhlIGdpdmVuIGFyZ3VtZW50c1xuICovXG5leHBvcnQgZnVuY3Rpb24gb2YoKSB7XG5cdHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO1xufVxuXG4vKipcbiAqIEZpbGxzIGVsZW1lbnRzIG9mIGFuIGFycmF5LWxpa2Ugb2JqZWN0IHdpdGggdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAqXG4gKiBAcGFyYW0gdGFyZ2V0IFRoZSB0YXJnZXQgdG8gZmlsbFxuICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byBmaWxsIGVhY2ggZWxlbWVudCBvZiB0aGUgdGFyZ2V0IHdpdGhcbiAqIEBwYXJhbSBbc3RhcnRdIFRoZSBmaXJzdCBpbmRleCB0byBmaWxsXG4gKiBAcGFyYW0gW2VuZF0gVGhlIChleGNsdXNpdmUpIGluZGV4IGF0IHdoaWNoIHRvIHN0b3AgZmlsbGluZ1xuICogQHJldHVybiBUaGUgZmlsbGVkIHRhcmdldFxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsbDxUPih0YXJnZXQ6IEFycmF5TGlrZTxUPiwgdmFsdWU6IGFueSwgc3RhcnQ/OiBudW1iZXIsIGVuZD86IG51bWJlcik6IEFycmF5TGlrZTxUPiB7XG5cdGNvbnN0IGxlbmd0aCA9IHRvTGVuZ3RoKHRhcmdldC5sZW5ndGgpO1xuXHRsZXQgaSA9IG5vcm1hbGl6ZU9mZnNldCh0b0ludGVnZXIoc3RhcnQpLCBsZW5ndGgpO1xuXHRlbmQgPSBub3JtYWxpemVPZmZzZXQoZW5kID8gdG9JbnRlZ2VyKGVuZCkgOiBsZW5ndGgsIGxlbmd0aCk7XG5cblx0d2hpbGUgKGkgPCBlbmQpIHtcblx0XHR0YXJnZXRbaSsrXSA9IHZhbHVlO1xuXHR9XG5cblx0cmV0dXJuIHRhcmdldDtcbn1cblxuLyoqXG4gKiBQZXJmb3JtcyBhIGxpbmVhciBzZWFyY2ggYW5kIHJldHVybnMgdGhlIGZpcnN0IGluZGV4IHdob3NlIHZhbHVlIHNhdGlzZmllcyB0aGUgcGFzc2VkIGNhbGxiYWNrLFxuICogb3IgLTEgaWYgbm8gdmFsdWVzIHNhdGlzZnkgaXQuXG4gKlxuICogQHBhcmFtIHRhcmdldCBBbiBhcnJheS1saWtlIG9iamVjdFxuICogQHBhcmFtIGNhbGxiYWNrIEEgZnVuY3Rpb24gcmV0dXJuaW5nIHRydWUgaWYgdGhlIGN1cnJlbnQgdmFsdWUgc2F0aXNmaWVzIGl0cyBjcml0ZXJpYVxuICogQHBhcmFtIFt0aGlzQXJnXSBUaGUgZXhlY3V0aW9uIGNvbnRleHQgZm9yIHRoZSBmaW5kIGZ1bmN0aW9uXG4gKiBAcmV0dXJuIFRoZSBmaXJzdCBpbmRleCB3aG9zZSB2YWx1ZSBzYXRpc2ZpZXMgdGhlIHBhc3NlZCBjYWxsYmFjaywgb3IgLTEgaWYgbm8gdmFsdWVzIHNhdGlzZnkgaXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmRJbmRleDxUPih0YXJnZXQ6IEFycmF5TGlrZTxUPiwgY2FsbGJhY2s6IEZpbmRDYWxsYmFjazxUPiwgdGhpc0FyZz86IHt9KTogbnVtYmVyIHtcblx0Y29uc3QgbGVuZ3RoID0gdG9MZW5ndGgodGFyZ2V0Lmxlbmd0aCk7XG5cblx0aWYgKCFjYWxsYmFjaykge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ2ZpbmQ6IHNlY29uZCBhcmd1bWVudCBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcblx0fVxuXG5cdGlmICh0aGlzQXJnKSB7XG5cdFx0Y2FsbGJhY2sgPSBjYWxsYmFjay5iaW5kKHRoaXNBcmcpO1xuXHR9XG5cblx0Zm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdGlmIChjYWxsYmFjayh0YXJnZXRbaV0sIGksIHRhcmdldCkpIHtcblx0XHRcdHJldHVybiBpO1xuXHRcdH1cblx0fVxuXG5cdHJldHVybiAtMTtcbn1cblxuLyoqXG4gKiBGaW5kcyBhbmQgcmV0dXJucyB0aGUgZmlyc3QgaW5zdGFuY2UgbWF0Y2hpbmcgdGhlIGNhbGxiYWNrIG9yIHVuZGVmaW5lZCBpZiBvbmUgaXMgbm90IGZvdW5kLlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgQW4gYXJyYXktbGlrZSBvYmplY3RcbiAqIEBwYXJhbSBjYWxsYmFjayBBIGZ1bmN0aW9uIHJldHVybmluZyBpZiB0aGUgY3VycmVudCB2YWx1ZSBtYXRjaGVzIGEgY3JpdGVyaWFcbiAqIEBwYXJhbSBbdGhpc0FyZ10gVGhlIGV4ZWN1dGlvbiBjb250ZXh0IGZvciB0aGUgZmluZCBmdW5jdGlvblxuICogQHJldHVybiBUaGUgZmlyc3QgZWxlbWVudCBtYXRjaGluZyB0aGUgY2FsbGJhY2ssIG9yIHVuZGVmaW5lZCBpZiBvbmUgZG9lcyBub3QgZXhpc3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmQ8VD4odGFyZ2V0OiBBcnJheUxpa2U8VD4sIGNhbGxiYWNrOiBGaW5kQ2FsbGJhY2s8VD4sIHRoaXNBcmc/OiB7fSk6IFQge1xuXHRjb25zdCBpbmRleCA9IGZpbmRJbmRleDxUPih0YXJnZXQsIGNhbGxiYWNrLCB0aGlzQXJnKTtcblx0cmV0dXJuIGluZGV4ICE9PSAtMSA/IHRhcmdldFtpbmRleF0gOiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQ29waWVzIGRhdGEgaW50ZXJuYWxseSB3aXRoaW4gYW4gYXJyYXkgb3IgYXJyYXktbGlrZSBvYmplY3QuXG4gKlxuICogQHBhcmFtIHRhcmdldCBUaGUgdGFyZ2V0IGFycmF5LWxpa2Ugb2JqZWN0XG4gKiBAcGFyYW0gb2Zmc2V0IFRoZSBpbmRleCB0byBzdGFydCBjb3B5aW5nIHZhbHVlcyB0bzsgaWYgbmVnYXRpdmUsIGl0IGNvdW50cyBiYWNrd2FyZHMgZnJvbSBsZW5ndGhcbiAqIEBwYXJhbSBzdGFydCBUaGUgZmlyc3QgKGluY2x1c2l2ZSkgaW5kZXggdG8gY29weTsgaWYgbmVnYXRpdmUsIGl0IGNvdW50cyBiYWNrd2FyZHMgZnJvbSBsZW5ndGhcbiAqIEBwYXJhbSBlbmQgVGhlIGxhc3QgKGV4Y2x1c2l2ZSkgaW5kZXggdG8gY29weTsgaWYgbmVnYXRpdmUsIGl0IGNvdW50cyBiYWNrd2FyZHMgZnJvbSBsZW5ndGhcbiAqIEByZXR1cm4gVGhlIHRhcmdldFxuICovXG5leHBvcnQgZnVuY3Rpb24gY29weVdpdGhpbjxUPih0YXJnZXQ6IEFycmF5TGlrZTxUPiwgb2Zmc2V0OiBudW1iZXIsIHN0YXJ0PzogbnVtYmVyLCBlbmQ/OiBudW1iZXIpOiBBcnJheUxpa2U8VD4ge1xuXHRpZiAodGFyZ2V0ID09IG51bGwpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdjb3B5V2l0aGluOiB0YXJnZXQgbXVzdCBiZSBhbiBhcnJheS1saWtlIG9iamVjdCcpO1xuXHR9XG5cblx0Y29uc3QgbGVuZ3RoID0gdG9MZW5ndGgodGFyZ2V0Lmxlbmd0aCk7XG5cdG9mZnNldCA9IG5vcm1hbGl6ZU9mZnNldCh0b0ludGVnZXIob2Zmc2V0KSwgbGVuZ3RoKTtcblx0c3RhcnQgPSBub3JtYWxpemVPZmZzZXQodG9JbnRlZ2VyKHN0YXJ0KSwgbGVuZ3RoKTtcblx0ZW5kID0gbm9ybWFsaXplT2Zmc2V0KGVuZCA/IHRvSW50ZWdlcihlbmQpIDogbGVuZ3RoLCBsZW5ndGgpO1xuXHRsZXQgY291bnQgPSBNYXRoLm1pbihlbmQgLSBzdGFydCwgbGVuZ3RoIC0gb2Zmc2V0KTtcblxuXHRsZXQgZGlyZWN0aW9uID0gMTtcblx0aWYgKG9mZnNldCA+IHN0YXJ0ICYmIG9mZnNldCA8IChzdGFydCArIGNvdW50KSkge1xuXHRcdGRpcmVjdGlvbiA9IC0xO1xuXHRcdHN0YXJ0ICs9IGNvdW50IC0gMTtcblx0XHRvZmZzZXQgKz0gY291bnQgLSAxO1xuXHR9XG5cblx0d2hpbGUgKGNvdW50ID4gMCkge1xuXHRcdGlmIChzdGFydCBpbiB0YXJnZXQpIHtcblx0XHRcdHRhcmdldFtvZmZzZXRdID0gdGFyZ2V0W3N0YXJ0XTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRkZWxldGUgdGFyZ2V0W29mZnNldF07XG5cdFx0fVxuXG5cdFx0b2Zmc2V0ICs9IGRpcmVjdGlvbjtcblx0XHRzdGFydCArPSBkaXJlY3Rpb247XG5cdFx0Y291bnQtLTtcblx0fVxuXG5cdHJldHVybiB0YXJnZXQ7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXJyYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsdUJBQW1ELFVBQVUsQ0FBQyxDQUFBO0lBQzlELG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQWV4Qjs7OztPQUlHO0lBQ0gsa0JBQWtCLE1BQWM7UUFDL0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25CLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDVixDQUFDO1FBQ0QsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBQ0QsNENBQTRDO1FBQzVDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLHlCQUFjLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG1CQUFtQixLQUFVO1FBQzVCLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsQixNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ1YsQ0FBQztRQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxD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bnRlbnQiOlsiaW1wb3J0IHsgTUFYX1NBRkVfSU5URUdFUiBhcyBtYXhTYWZlSW50ZWdlciB9IGZyb20gJy4vbnVtYmVyJztcbmltcG9ydCBoYXMgZnJvbSAnLi9oYXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFycmF5TGlrZTxUPiB7XG5cdGxlbmd0aDogbnVtYmVyO1xuXHRbbjogbnVtYmVyXTogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNYXBDYWxsYmFjazxUPiB7XG5cdChlbGVtZW50OiBULCBpbmRleDogbnVtYmVyKTogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaW5kQ2FsbGJhY2s8VD4ge1xuXHQoZWxlbWVudDogVCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IEFycmF5TGlrZTxUPik6IGJvb2xlYW47XG59XG5cbi8qKlxuICogRW5zdXJlcyBhIG5vbi1uZWdhdGl2ZSwgbm9uLWluZmluaXRlLCBzYWZlIGludGVnZXIuXG4gKiBAcGFyYW0gbGVuZ3RoIFRoZSBudW1iZXIgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm4gQSBwcm9wZXIgbGVuZ3RoXG4gKi9cbmZ1bmN0aW9uIHRvTGVuZ3RoKGxlbmd0aDogbnVtYmVyKTogbnVtYmVyIHtcblx0bGVuZ3RoID0gTnVtYmVyKGxlbmd0aCk7XG5cdGlmIChpc05hTihsZW5ndGgpKSB7XG5cdFx0cmV0dXJuIDA7XG5cdH1cblx0aWYgKGlzRmluaXRlKGxlbmd0aCkpIHtcblx0XHRsZW5ndGggPSBNYXRoLmZsb29yKGxlbmd0aCk7XG5cdH1cblx0Ly8gRW5zdXJlIGEgbm9uLW5lZ2F0aXZlLCByZWFsLCBzYWZlIGludGVnZXJcblx0cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KGxlbmd0aCwgMCksIG1heFNhZmVJbnRlZ2VyKTtcbn1cblxuLyoqXG4gKiBGcm9tIEVTNiA3LjEuNCBUb0ludGVnZXIoKVxuICogQHBhcmFtIHZhbHVlIEEgdmFsdWUgdG8gY29udmVydFxuICogQHJldHVybiBBbiBpbnRlZ2VyXG4gKi9cbmZ1bmN0aW9uIHRvSW50ZWdlcih2YWx1ZTogYW55KTogbnVtYmVyIHtcblx0dmFsdWUgPSBOdW1iZXIodmFsdWUpO1xuXHRpZiAoaXNOYU4odmFsdWUpKSB7XG5cdFx0cmV0dXJuIDA7XG5cdH1cblx0aWYgKHZhbHVlID09PSAwIHx8ICFpc0Zpbml0ZSh2YWx1ZSkpIHtcblx0XHRyZXR1cm4gdmFsdWU7XG5cdH1cblxuXHRyZXR1cm4gKHZhbHVlID4gMCA/IDEgOiAtMSkgKiBNYXRoLmZsb29yKE1hdGguYWJzKHZhbHVlKSk7XG59XG5cbi8qKlxuICogTm9ybWFsaXplcyBhbiBvZmZzZXQgYWdhaW5zdCBhIGdpdmVuIGxlbmd0aCwgd3JhcHBpbmcgaXQgaWYgbmVnYXRpdmUuXG4gKiBAcGFyYW0gdmFsdWUgVGhlIG9yaWdpbmFsIG9mZnNldFxuICogQHBhcmFtIGxlbmd0aCBUaGUgdG90YWwgbGVuZ3RoIHRvIG5vcm1hbGl6ZSBhZ2FpbnN0XG4gKiBAcmV0dXJuIElmIG5lZ2F0aXZlLCBwcm92aWRlIGEgZGlzdGFuY2UgZnJvbSB0aGUgZW5kIChsZW5ndGgpOyBvdGhlcndpc2UgcHJvdmlkZSBhIGRpc3RhbmNlIGZyb20gMFxuICovXG5mdW5jdGlvbiBub3JtYWxpemVPZmZzZXQodmFsdWU6IG51bWJlciwgbGVuZ3RoOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gdmFsdWUgPCAwID8gTWF0aC5tYXgobGVuZ3RoICsgdmFsdWUsIDApIDogTWF0aC5taW4odmFsdWUsIGxlbmd0aCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKGFycmF5TGlrZTogc3RyaW5nLCBtYXBGdW5jdGlvbj86IE1hcENhbGxiYWNrPHN0cmluZz4sIHRoaXNBcmc/OiB7fSk6IEFycmF5TGlrZTxzdHJpbmc+O1xuZXhwb3J0IGZ1bmN0aW9uIGZyb208VD4oYXJyYXlMaWtlOiBBcnJheUxpa2U8VD4sIG1hcEZ1bmN0aW9uPzogTWFwQ2FsbGJhY2s8VD4sIHRoaXNBcmc/OiB7fSk6IEFycmF5TGlrZTxUPjtcbi8qKlxuICogVGhlIEFycmF5LmZyb20oKSBtZXRob2QgY3JlYXRlcyBhIG5ldyBBcnJheSBpbnN0YW5jZSBmcm9tIGFuIGFycmF5LWxpa2Ugb3IgaXRlcmFibGUgb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBhcnJheUxpa2UgQW4gYXJyYXktbGlrZSBvciBpdGVyYWJsZSBvYmplY3QgdG8gY29udmVydCB0byBhbiBhcnJheVxuICogQHBhcmFtIFttYXBGdW5jdGlvbl0gQSBtYXAgZnVuY3Rpb24gdG8gY2FsbCBvbiBlYWNoIGVsZW1lbnQgaW4gdGhlIGFycmF5XG4gKiBAcGFyYW0gW3RoaXNBcmddIFRoZSBleGVjdXRpb24gY29udGV4dCBmb3IgdGhlIG1hcCBmdW5jdGlvblxuICogQHJldHVybiBUaGUgbmV3IEFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tPFQ+KGFycmF5TGlrZTogKHN0cmluZyB8IEFycmF5TGlrZTxUPiksIG1hcEZ1bmN0aW9uPzogTWFwQ2FsbGJhY2s8VD4sIHRoaXNBcmc/OiB7fSk6IEFycmF5TGlrZTxUPiB7XG5cdC8vIFVzZSB0aGUgbmF0aXZlIEFycmF5LmZyb20oKSBpZiBpdCBleGlzdHNcblx0aWYgKGhhcygnZXM2LWFycmF5LWZyb20nKSkge1xuXHRcdHJldHVybiAoPGFueT4gQXJyYXkpLmZyb20uYXBwbHkobnVsbCwgYXJndW1lbnRzKTtcblx0fVxuXG5cdGlmIChhcnJheUxpa2UgPT0gbnVsbCkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ2Zyb206IHJlcXVpcmVzIGFuIGFycmF5LWxpa2Ugb2JqZWN0Jyk7XG5cdH1cblxuXHRpZiAobWFwRnVuY3Rpb24gJiYgdGhpc0FyZykge1xuXHRcdG1hcEZ1bmN0aW9uID0gbWFwRnVuY3Rpb24uYmluZCh0aGlzQXJnKTtcblx0fVxuXG5cdGNvbnN0IENvbnN0cnVjdG9yOiBhbnkgPSB0aGlzO1xuXHRjb25zdCBpdGVtczogQXJyYXlMaWtlPGFueT4gPSBPYmplY3QoYXJyYXlMaWtlKTtcblx0Y29uc3QgbGVuZ3RoOiBudW1iZXIgPSB0b0xlbmd0aChpdGVtcy5sZW5ndGgpO1xuXHQvLyBTdXBwb3J0IGV4dGVuc2lvblxuXHRjb25zdCBhcnJheTogYW55W10gPSAodHlwZW9mIENvbnN0cnVjdG9yID09PSAnZnVuY3Rpb24nKSA/IDxhbnlbXT4gT2JqZWN0KG5ldyBDb25zdHJ1Y3RvcihsZW5ndGgpKSA6IG5ldyBBcnJheShsZW5ndGgpO1xuXG5cdGZvciAobGV0IGkgPSAwLCB2YWx1ZTogYW55OyBpIDwgbGVuZ3RoOyBpKyspIHtcblx0XHR2YWx1ZSA9IGl0ZW1zW2ldO1xuXHRcdGFycmF5W2ldID0gbWFwRnVuY3Rpb24gPyBtYXBGdW5jdGlvbih2YWx1ZSwgaSkgOiB2YWx1ZTtcblx0fVxuXG5cdGFycmF5Lmxlbmd0aCA9IGxlbmd0aDtcblxuXHRyZXR1cm4gYXJyYXk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBvZiguLi5pdGVtczogYW55W10pOiBhbnlbXTtcbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBhcnJheSBmcm9tIHRoZSBmdW5jdGlvbiBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSBhcmd1bWVudHMgQW55IG51bWJlciBvZiBhcmd1bWVudHMgZm9yIHRoZSBhcnJheVxuICogQHJldHVybiBBbiBhcnJheSBmcm9tIHRoZSBnaXZlbiBhcmd1bWVudHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9mKCkge1xuXHRpZiAoaGFzKCdlczYtYXJyYXktb2YnKSkge1xuXHRcdHJldHVybiAoPGFueT4gQXJyYXkpLm9mLmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7XG5cdH1cblxuXHRyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtcbn1cblxuLyoqXG4gKiBGaWxscyBlbGVtZW50cyBvZiBhbiBhcnJheS1saWtlIG9iamVjdCB3aXRoIHRoZSBzcGVjaWZpZWQgdmFsdWUuXG4gKlxuICogQHBhcmFtIHRhcmdldCBUaGUgdGFyZ2V0IHRvIGZpbGxcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gZmlsbCBlYWNoIGVsZW1lbnQgb2YgdGhlIHRhcmdldCB3aXRoXG4gKiBAcGFyYW0gW3N0YXJ0XSBUaGUgZmlyc3QgaW5kZXggdG8gZmlsbFxuICogQHBhcmFtIFtlbmRdIFRoZSAoZXhjbHVzaXZlKSBpbmRleCBhdCB3aGljaCB0byBzdG9wIGZpbGxpbmdcbiAqIEByZXR1cm4gVGhlIGZpbGxlZCB0YXJnZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbGw8VD4odGFyZ2V0OiBBcnJheUxpa2U8VD4sIHZhbHVlOiBhbnksIHN0YXJ0PzogbnVtYmVyLCBlbmQ/OiBudW1iZXIpOiBBcnJheUxpa2U8VD4ge1xuXHRpZiAoaGFzKCdlczYtYXJyYXktZmlsbCcpKSB7XG5cdFx0Y29uc3QgbWV0aG9kID0gKDxhbnk+IEFycmF5LnByb3RvdHlwZSkuZmlsbDtcblx0XHRyZXR1cm4gbWV0aG9kLmNhbGwuYXBwbHkobWV0aG9kLCBhcmd1bWVudHMpO1xuXHR9XG5cblx0Y29uc3QgbGVuZ3RoID0gdG9MZW5ndGgodGFyZ2V0Lmxlbmd0aCk7XG5cdGxldCBpID0gbm9ybWFsaXplT2Zmc2V0KHRvSW50ZWdlcihzdGFydCksIGxlbmd0aCk7XG5cdGVuZCA9IG5vcm1hbGl6ZU9mZnNldChlbmQgPT09IHVuZGVmaW5lZCA/IGxlbmd0aCA6IHRvSW50ZWdlcihlbmQpLCBsZW5ndGgpO1xuXG5cdHdoaWxlIChpIDwgZW5kKSB7XG5cdFx0dGFyZ2V0W2krK10gPSB2YWx1ZTtcblx0fVxuXG5cdHJldHVybiB0YXJnZXQ7XG59XG5cbi8qKlxuICogUGVyZm9ybXMgYSBsaW5lYXIgc2VhcmNoIGFuZCByZXR1cm5zIHRoZSBmaXJzdCBpbmRleCB3aG9zZSB2YWx1ZSBzYXRpc2ZpZXMgdGhlIHBhc3NlZCBjYWxsYmFjayxcbiAqIG9yIC0xIGlmIG5vIHZhbHVlcyBzYXRpc2Z5IGl0LlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgQW4gYXJyYXktbGlrZSBvYmplY3RcbiAqIEBwYXJhbSBjYWxsYmFjayBBIGZ1bmN0aW9uIHJldHVybmluZyB0cnVlIGlmIHRoZSBjdXJyZW50IHZhbHVlIHNhdGlzZmllcyBpdHMgY3JpdGVyaWFcbiAqIEBwYXJhbSBbdGhpc0FyZ10gVGhlIGV4ZWN1dGlvbiBjb250ZXh0IGZvciB0aGUgZmluZCBmdW5jdGlvblxuICogQHJldHVybiBUaGUgZmlyc3QgaW5kZXggd2hvc2UgdmFsdWUgc2F0aXNmaWVzIHRoZSBwYXNzZWQgY2FsbGJhY2ssIG9yIC0xIGlmIG5vIHZhbHVlcyBzYXRpc2Z5IGl0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kSW5kZXg8VD4odGFyZ2V0OiBBcnJheUxpa2U8VD4sIGNhbGxiYWNrOiBGaW5kQ2FsbGJhY2s8VD4sIHRoaXNBcmc/OiB7fSk6IG51bWJlciB7XG5cdGlmIChoYXMoJ2VzNi1hcnJheS1maW5kSW5kZXgnKSkge1xuXHRcdGNvbnN0IG1ldGhvZCA9ICg8YW55PiBBcnJheS5wcm90b3R5cGUpLmZpbmRJbmRleDtcblx0XHRyZXR1cm4gbWV0aG9kLmNhbGwuYXBwbHkobWV0aG9kLCBhcmd1bWVudHMpO1xuXHR9XG5cblx0Y29uc3QgbGVuZ3RoID0gdG9MZW5ndGgodGFyZ2V0Lmxlbmd0aCk7XG5cblx0aWYgKCFjYWxsYmFjaykge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ2ZpbmQ6IHNlY29uZCBhcmd1bWVudCBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcblx0fVxuXG5cdGlmICh0aGlzQXJnKSB7XG5cdFx0Y2FsbGJhY2sgPSBjYWxsYmFjay5iaW5kKHRoaXNBcmcpO1xuXHR9XG5cblx0Zm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdGlmIChjYWxsYmFjayh0YXJnZXRbaV0sIGksIHRhcmdldCkpIHtcblx0XHRcdHJldHVybiBpO1xuXHRcdH1cblx0fVxuXG5cdHJldHVybiAtMTtcbn1cblxuLyoqXG4gKiBGaW5kcyBhbmQgcmV0dXJucyB0aGUgZmlyc3QgaW5zdGFuY2UgbWF0Y2hpbmcgdGhlIGNhbGxiYWNrIG9yIHVuZGVmaW5lZCBpZiBvbmUgaXMgbm90IGZvdW5kLlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgQW4gYXJyYXktbGlrZSBvYmplY3RcbiAqIEBwYXJhbSBjYWxsYmFjayBBIGZ1bmN0aW9uIHJldHVybmluZyBpZiB0aGUgY3VycmVudCB2YWx1ZSBtYXRjaGVzIGEgY3JpdGVyaWFcbiAqIEBwYXJhbSBbdGhpc0FyZ10gVGhlIGV4ZWN1dGlvbiBjb250ZXh0IGZvciB0aGUgZmluZCBmdW5jdGlvblxuICogQHJldHVybiBUaGUgZmlyc3QgZWxlbWVudCBtYXRjaGluZyB0aGUgY2FsbGJhY2ssIG9yIHVuZGVmaW5lZCBpZiBvbmUgZG9lcyBub3QgZXhpc3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmQ8VD4odGFyZ2V0OiBBcnJheUxpa2U8VD4sIGNhbGxiYWNrOiBGaW5kQ2FsbGJhY2s8VD4sIHRoaXNBcmc/OiB7fSk6IFQge1xuXHRpZiAoaGFzKCdlczYtYXJyYXktZmluZCcpKSB7XG5cdFx0Y29uc3QgbWV0aG9kID0gKDxhbnk+IEFycmF5LnByb3RvdHlwZSkuZmluZDtcblx0XHRyZXR1cm4gbWV0aG9kLmNhbGwuYXBwbHkobWV0aG9kLCBhcmd1bWVudHMpO1xuXHR9XG5cblx0Y29uc3QgaW5kZXggPSBmaW5kSW5kZXg8VD4odGFyZ2V0LCBjYWxsYmFjaywgdGhpc0FyZyk7XG5cdHJldHVybiBpbmRleCAhPT0gLTEgPyB0YXJnZXRbaW5kZXhdIDogdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIENvcGllcyBkYXRhIGludGVybmFsbHkgd2l0aGluIGFuIGFycmF5IG9yIGFycmF5LWxpa2Ugb2JqZWN0LlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBhcnJheS1saWtlIG9iamVjdFxuICogQHBhcmFtIG9mZnNldCBUaGUgaW5kZXggdG8gc3RhcnQgY29weWluZyB2YWx1ZXMgdG87IGlmIG5lZ2F0aXZlLCBpdCBjb3VudHMgYmFja3dhcmRzIGZyb20gbGVuZ3RoXG4gKiBAcGFyYW0gc3RhcnQgVGhlIGZpcnN0IChpbmNsdXNpdmUpIGluZGV4IHRvIGNvcHk7IGlmIG5lZ2F0aXZlLCBpdCBjb3VudHMgYmFja3dhcmRzIGZyb20gbGVuZ3RoXG4gKiBAcGFyYW0gZW5kIFRoZSBsYXN0IChleGNsdXNpdmUpIGluZGV4IHRvIGNvcHk7IGlmIG5lZ2F0aXZlLCBpdCBjb3VudHMgYmFja3dhcmRzIGZyb20gbGVuZ3RoXG4gKiBAcmV0dXJuIFRoZSB0YXJnZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvcHlXaXRoaW48VD4odGFyZ2V0OiBBcnJheUxpa2U8VD4sIG9mZnNldDogbnVtYmVyLCBzdGFydDogbnVtYmVyLCBlbmQ/OiBudW1iZXIpOiBBcnJheUxpa2U8VD4ge1xuXHRpZiAoaGFzKCdlczYtYXJyYXktY29weVdpdGhpbicpKSB7XG5cdFx0Y29uc3QgbWV0aG9kID0gKDxhbnk+IEFycmF5LnByb3RvdHlwZSkuY29weVdpdGhpbjtcblx0XHRyZXR1cm4gbWV0aG9kLmNhbGwuYXBwbHkobWV0aG9kLCBhcmd1bWVudHMpO1xuXHR9XG5cblx0aWYgKHRhcmdldCA9PSBudWxsKSB7XG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignY29weVdpdGhpbjogdGFyZ2V0IG11c3QgYmUgYW4gYXJyYXktbGlrZSBvYmplY3QnKTtcblx0fVxuXG5cdGNvbnN0IGxlbmd0aCA9IHRvTGVuZ3RoKHRhcmdldC5sZW5ndGgpO1xuXHRvZmZzZXQgPSBub3JtYWxpemVPZmZzZXQodG9JbnRlZ2VyKG9mZnNldCksIGxlbmd0aCk7XG5cdHN0YXJ0ID0gbm9ybWFsaXplT2Zmc2V0KHRvSW50ZWdlcihzdGFydCksIGxlbmd0aCk7XG5cdGVuZCA9IG5vcm1hbGl6ZU9mZnNldChlbmQgPT09IHVuZGVmaW5lZCA/IGxlbmd0aCA6IHRvSW50ZWdlcihlbmQpLCBsZW5ndGgpO1xuXHRsZXQgY291bnQgPSBNYXRoLm1pbihlbmQgLSBzdGFydCwgbGVuZ3RoIC0gb2Zmc2V0KTtcblxuXHRsZXQgZGlyZWN0aW9uID0gMTtcblx0aWYgKG9mZnNldCA+IHN0YXJ0ICYmIG9mZnNldCA8IChzdGFydCArIGNvdW50KSkge1xuXHRcdGRpcmVjdGlvbiA9IC0xO1xuXHRcdHN0YXJ0ICs9IGNvdW50IC0gMTtcblx0XHRvZmZzZXQgKz0gY291bnQgLSAxO1xuXHR9XG5cblx0d2hpbGUgKGNvdW50ID4gMCkge1xuXHRcdGlmIChzdGFydCBpbiB0YXJnZXQpIHtcblx0XHRcdHRhcmdldFtvZmZzZXRdID0gdGFyZ2V0W3N0YXJ0XTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRkZWxldGUgdGFyZ2V0W29mZnNldF07XG5cdFx0fVxuXG5cdFx0b2Zmc2V0ICs9IGRpcmVjdGlvbjtcblx0XHRzdGFydCArPSBkaXJlY3Rpb247XG5cdFx0Y291bnQtLTtcblx0fVxuXG5cdHJldHVybiB0YXJnZXQ7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGFuIGFycmF5IGluY2x1ZGVzIGEgZ2l2ZW4gdmFsdWVcbiAqIEBwYXJhbSB0YXJnZXQgdGhlIHRhcmdldCBhcnJheS1saWtlIG9iamVjdFxuICogQHBhcmFtIHNlYXJjaEVsZW1lbnQgdGhlIGl0ZW0gdG8gc2VhcmNoIGZvclxuICogQHBhcmFtIGZyb21JbmRleCB0aGUgc3RhcnRpbmcgaW5kZXggdG8gc2VhcmNoIGZyb21cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluY2x1ZGVzPFQ+KHRhcmdldDogQXJyYXlMaWtlPFQ+LCBzZWFyY2hFbGVtZW50OiBULCBmcm9tSW5kZXg6IG51bWJlciA9IDApOiBib29sZWFuIHtcblx0aWYgKGhhcygnZXM3LWFycmF5LWluY2x1ZGVzJykpIHtcblx0XHRjb25zdCBtZXRob2QgPSAoPGFueT4gQXJyYXkucHJvdG90eXBlKS5pbmNsdWRlcztcblx0XHRyZXR1cm4gbWV0aG9kLmNhbGwuYXBwbHkobWV0aG9kLCBhcmd1bWVudHMpO1xuXHR9XG5cblx0bGV0IGxlbiA9IHRvTGVuZ3RoKHRhcmdldC5sZW5ndGgpO1xuXG5cdGZvciAobGV0IGkgPSBmcm9tSW5kZXg7IGkgPCBsZW47ICsraSkge1xuXHRcdGNvbnN0IGN1cnJlbnRFbGVtZW50ID0gdGFyZ2V0W2ldO1xuXHRcdGlmIChzZWFyY2hFbGVtZW50ID09PSBjdXJyZW50RWxlbWVudCB8fFxuXHRcdFx0KHNlYXJjaEVsZW1lbnQgIT09IHNlYXJjaEVsZW1lbnQgJiYgY3VycmVudEVsZW1lbnQgIT09IGN1cnJlbnRFbGVtZW50KSkge1xuXHRcdFx0cmV0dXJuIHRydWU7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIGZhbHNlO1xufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var lang_1 = require('./lang'); | ||
@@ -171,2 +172,2 @@ var nextId = 0; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNwZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FzcGVjdC50cyJdLCJuYW1lcyI6WyJhZHZpc2UiLCJnZXREaXNwYXRjaGVyIiwiYWZ0ZXIiLCJhcm91bmQiLCJiZWZvcmUiLCJvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFDQSxxQkFBNkIsUUFBUSxDQUFDLENBQUE7SUFrQnRDLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztJQUVmLGdCQUFnQixVQUFzQixFQUFFLElBQVksRUFBRSxNQUFnQixFQUFFLGdCQUEwQjtRQUNqR0EsSUFBSUEsUUFBUUEsR0FBVUEsVUFBV0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7UUFDeENBLElBQUlBLE9BQU9BLEdBQVlBO1lBQ3RCQSxFQUFFQSxFQUFFQSxNQUFNQSxFQUFFQTtZQUNaQSxNQUFNQSxFQUFFQSxNQUFNQTtZQUNkQSxnQkFBZ0JBLEVBQUVBLGdCQUFnQkE7U0FDbENBLENBQUNBO1FBRUZBLEVBQUVBLENBQUNBLENBQUNBLFFBQVFBLENBQUNBLENBQUNBLENBQUNBO1lBQ2RBLEVBQUVBLENBQUNBLENBQUNBLElBQUlBLEtBQUtBLE9BQU9BLENBQUNBLENBQUNBLENBQUNBO2dCQUN0QkEsMENBQTBDQTtnQkFDMUNBLHlGQUF5RkE7Z0JBQ3pGQSxPQUFPQSxRQUFRQSxDQUFDQSxJQUFJQSxJQUFJQSxDQUFDQSxRQUFRQSxHQUFHQSxRQUFRQSxDQUFDQSxJQUFJQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFBQSxDQUFDQTtnQkFDdERBLFFBQVFBLENBQUNBLElBQUlBLEdBQUdBLE9BQU9BLENBQUNBO2dCQUN4QkEsT0FBT0EsQ0FBQ0EsUUFBUUEsR0FBR0EsUUFBUUEsQ0FBQ0E7WUFDN0JBLENBQUNBO1lBQ0RBLElBQUlBLENBQUNBLENBQUNBO2dCQUNMQSx1QkFBdUJBO2dCQUN2QkEsVUFBVUEsQ0FBQ0EsTUFBTUEsR0FBR0EsT0FBT0EsQ0FBQ0E7Z0JBQzVCQSxPQUFPQSxDQUFDQSxJQUFJQSxHQUFHQSxRQUFRQSxDQUFDQTtnQkFDeEJBLFFBQVFBLENBQUNBLFFBQVFBLEdBQUdBLE9BQU9BLENBQUNBO1lBQzdCQSxDQUFDQTtRQUNGQSxDQUFDQTtRQUNEQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUNFQSxVQUFXQSxDQUFDQSxJQUFJQSxDQUFDQSxHQUFHQSxPQUFPQSxDQUFDQTtRQUNwQ0EsQ0FBQ0E7UUFFREEsTUFBTUEsR0FBR0EsUUFBUUEsR0FBR0EsSUFBSUEsQ0FBQ0E7UUFFekJBLE1BQU1BLENBQUNBLG1CQUFZQSxDQUFDQTtZQUNuQixJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ2hDLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFFeEIsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNqQixVQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQ2pDLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDTCxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO29CQUNkLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO2dCQUN0QixDQUFDO2dCQUNELElBQUksQ0FBQyxDQUFDO29CQUNFLFVBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7Z0JBQ2pDLENBQUM7Z0JBRUQsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDVixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDMUIsQ0FBQztZQUNGLENBQUM7WUFFRCxVQUFVLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQzlDLENBQUMsQ0FBQ0EsQ0FBQ0E7SUFDSkEsQ0FBQ0E7SUFFRCx1QkFBdUIsTUFBVyxFQUFFLFVBQWtCO1FBQ3JEQyxJQUFNQSxRQUFRQSxHQUFHQSxNQUFNQSxDQUFDQSxVQUFVQSxDQUFDQSxDQUFDQTtRQUNwQ0EsSUFBSUEsVUFBc0JBLENBQUNBO1FBRTNCQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxRQUFRQSxJQUFJQSxRQUFRQSxDQUFDQSxNQUFNQSxLQUFLQSxNQUFNQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUM3Q0EsZ0JBQWdCQTtZQUNoQkEsTUFBTUEsQ0FBQ0EsVUFBVUEsQ0FBQ0EsR0FBR0EsVUFBVUEsR0FBZ0JBO2dCQUM5QyxJQUFJLFdBQVcsR0FBRyxNQUFNLENBQUM7Z0JBQ3pCLElBQUksSUFBSSxHQUFHLFNBQVMsQ0FBQztnQkFDckIsSUFBSSxPQUFZLENBQUM7Z0JBQ2pCLElBQUksTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7Z0JBRS9CLE9BQU8sTUFBTSxFQUFFLENBQUM7b0JBQ2YsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7d0JBQ25CLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDO29CQUNoRCxDQUFDO29CQUNELE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUN0QixDQUFDO2dCQUVELEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO29CQUN2QixPQUFPLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO2dCQUVELElBQUksS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7Z0JBQzdCLE9BQU8sS0FBSyxJQUFJLEtBQUssQ0FBQyxFQUFFLEdBQUcsV0FBVyxFQUFFLENBQUM7b0JBQ3hDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO3dCQUNsQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDOzRCQUM1QixJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7NEJBQ2hELE9BQU8sR0FBRyxVQUFVLEtBQUssU0FBUyxHQUFHLE9BQU8sR0FBRyxVQUFVLENBQUM7d0JBQzNELENBQUM7d0JBQ0QsSUFBSSxDQUFDLENBQUM7NEJBQ0wsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7d0JBQ2xELENBQUM7b0JBQ0YsQ0FBQztvQkFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztnQkFDcEIsQ0FBQztnQkFFRCxNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ2hCLENBQUMsQ0FBQ0E7WUFFRkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsUUFBUUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ2RBLFVBQVVBLENBQUNBLE1BQU1BLEdBQUdBO29CQUNuQkEsTUFBTUEsRUFBRUEsVUFBVUEsTUFBV0EsRUFBRUEsSUFBV0E7d0JBQ3pDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDckMsQ0FBQztpQkFDREEsQ0FBQ0E7WUFDSEEsQ0FBQ0E7WUFFREEsVUFBVUEsQ0FBQ0EsTUFBTUEsR0FBR0EsTUFBTUEsQ0FBQ0E7UUFDNUJBLENBQUNBO1FBQ0RBLElBQUlBLENBQUNBLENBQUNBO1lBQ0xBLFVBQVVBLEdBQUdBLFFBQVFBLENBQUNBO1FBQ3ZCQSxDQUFDQTtRQUVEQSxNQUFNQSxHQUFHQSxJQUFJQSxDQUFDQTtRQUVkQSxNQUFNQSxDQUFDQSxVQUFVQSxDQUFDQTtJQUNuQkEsQ0FBQ0E7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILGVBQXNCLE1BQVcsRUFBRSxVQUFrQixFQUFFLE1BQThEO1FBQ3BIQyxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQSxhQUFhQSxDQUFDQSxNQUFNQSxFQUFFQSxVQUFVQSxDQUFDQSxFQUFFQSxPQUFPQSxFQUFFQSxNQUFNQSxDQUFDQSxDQUFDQTtJQUNuRUEsQ0FBQ0E7SUFGZSxhQUFLLFFBRXBCLENBQUE7SUFFRDs7Ozs7O09BTUc7SUFDSCxnQkFBdUIsTUFBVyxFQUFFLFVBQWtCLEVBQUUsTUFBd0M7UUFDL0ZDLElBQUlBLFVBQVVBLEdBQUdBLGFBQWFBLENBQUNBLE1BQU1BLEVBQUVBLFVBQVVBLENBQUNBLENBQUNBO1FBQ25EQSxJQUFJQSxRQUFRQSxHQUFHQSxVQUFVQSxDQUFDQSxNQUFNQSxDQUFDQTtRQUNqQ0EsSUFBSUEsT0FBT0EsR0FBR0EsTUFBTUEsQ0FBQ0E7WUFDcEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQ0EsQ0FBQ0E7UUFFSEEsVUFBVUEsQ0FBQ0EsTUFBTUEsR0FBR0E7WUFDbkJBLE1BQU1BLEVBQUVBLFVBQVVBLE1BQVdBLEVBQUVBLElBQVdBO2dCQUN6QyxNQUFNLENBQUMsT0FBTztvQkFDYixPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7b0JBQzNCLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2hDLENBQUM7U0FDREEsQ0FBQ0E7UUFFRkEsTUFBTUEsR0FBR0EsSUFBSUEsQ0FBQ0E7UUFFZEEsTUFBTUEsQ0FBQ0EsbUJBQVlBLENBQUNBO1lBQ25CLE9BQU8sR0FBRyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzdCLENBQUMsQ0FBQ0EsQ0FBQ0E7SUFDSkEsQ0FBQ0E7SUFwQmUsY0FBTSxTQW9CckIsQ0FBQTtJQUVEOzs7Ozs7T0FNRztJQUNILGdCQUF1QixNQUFXLEVBQUUsVUFBa0IsRUFBRSxNQUFnRDtRQUN2R0MsTUFBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsYUFBYUEsQ0FBQ0EsTUFBTUEsRUFBRUEsVUFBVUEsQ0FBQ0EsRUFBRUEsUUFBUUEsRUFBRUEsTUFBTUEsQ0FBQ0EsQ0FBQ0E7SUFDcEVBLENBQUNBO0lBRmUsY0FBTSxTQUVyQixDQUFBO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxZQUFtQixNQUFXLEVBQUUsVUFBa0IsRUFBRSxNQUF1QztRQUMxRkMsTUFBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsYUFBYUEsQ0FBQ0EsTUFBTUEsRUFBRUEsVUFBVUEsQ0FBQ0EsRUFBRUEsT0FBT0EsRUFBRUEsTUFBTUEsRUFBRUEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7SUFDekVBLENBQUNBO0lBRmUsVUFBRSxLQUVqQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGNyZWF0ZUhhbmRsZSB9IGZyb20gJy4vbGFuZyc7XG5cbmludGVyZmFjZSBBZHZpc2VkIHtcblx0aWQ/OiBudW1iZXI7XG5cdGFkdmljZTogRnVuY3Rpb247XG5cdHByZXZpb3VzPzogQWR2aXNlZDtcblx0bmV4dD86IEFkdmlzZWQ7XG5cdHJlY2VpdmVBcmd1bWVudHM/OiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgRGlzcGF0Y2hlciB7XG5cdCgpOiBhbnk7XG5cdHRhcmdldDogYW55O1xuXHRiZWZvcmU/OiBBZHZpc2VkO1xuXHRhcm91bmQ/OiBBZHZpc2VkO1xuXHRhZnRlcj86IEFkdmlzZWQ7XG59XG5cbmxldCBuZXh0SWQgPSAwO1xuXG5mdW5jdGlvbiBhZHZpc2UoZGlzcGF0Y2hlcjogRGlzcGF0Y2hlciwgdHlwZTogc3RyaW5nLCBhZHZpY2U6IEZ1bmN0aW9uLCByZWNlaXZlQXJndW1lbnRzPzogYm9vbGVhbik6IEhhbmRsZSB7XG5cdGxldCBwcmV2aW91cyA9ICg8YW55PiBkaXNwYXRjaGVyKVt0eXBlXTtcblx0bGV0IGFkdmlzZWQ6IEFkdmlzZWQgPSB7XG5cdFx0aWQ6IG5leHRJZCsrLFxuXHRcdGFkdmljZTogYWR2aWNlLFxuXHRcdHJlY2VpdmVBcmd1bWVudHM6IHJlY2VpdmVBcmd1bWVudHNcblx0fTtcblxuXHRpZiAocHJldmlvdXMpIHtcblx0XHRpZiAodHlwZSA9PT0gJ2FmdGVyJykge1xuXHRcdFx0Ly8gYWRkIHRoZSBsaXN0ZW5lciB0byB0aGUgZW5kIG9mIHRoZSBsaXN0XG5cdFx0XHQvLyBub3RlIHRoYXQgd2UgaGFkIHRvIGNoYW5nZSB0aGlzIGxvb3AgYSBsaXR0bGUgYml0IHRvIHdvcmthcm91bmQgYSBiaXphcnJlIElFMTAgSklUIGJ1Z1xuXHRcdFx0d2hpbGUgKHByZXZpb3VzLm5leHQgJiYgKHByZXZpb3VzID0gcHJldmlvdXMubmV4dCkpIHt9XG5cdFx0XHRwcmV2aW91cy5uZXh0ID0gYWR2aXNlZDtcblx0XHRcdGFkdmlzZWQucHJldmlvdXMgPSBwcmV2aW91cztcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHQvLyBhZGQgdG8gdGhlIGJlZ2lubmluZ1xuXHRcdFx0ZGlzcGF0Y2hlci5iZWZvcmUgPSBhZHZpc2VkO1xuXHRcdFx0YWR2aXNlZC5uZXh0ID0gcHJldmlvdXM7XG5cdFx0XHRwcmV2aW91cy5wcmV2aW91cyA9IGFkdmlzZWQ7XG5cdFx0fVxuXHR9XG5cdGVsc2Uge1xuXHRcdCg8YW55PiBkaXNwYXRjaGVyKVt0eXBlXSA9IGFkdmlzZWQ7XG5cdH1cblxuXHRhZHZpY2UgPSBwcmV2aW91cyA9IG51bGw7XG5cblx0cmV0dXJuIGNyZWF0ZUhhbmRsZShmdW5jdGlvbiAoKSB7XG5cdFx0bGV0IHByZXZpb3VzID0gYWR2aXNlZC5wcmV2aW91cztcblx0XHRsZXQgbmV4dCA9IGFkdmlzZWQubmV4dDtcblxuXHRcdGlmICghcHJldmlvdXMgJiYgIW5leHQpIHtcblx0XHRcdCg8YW55PiBkaXNwYXRjaGVyKVt0eXBlXSA9IG51bGw7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0aWYgKHByZXZpb3VzKSB7XG5cdFx0XHRcdHByZXZpb3VzLm5leHQgPSBuZXh0O1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdCg8YW55PiBkaXNwYXRjaGVyKVt0eXBlXSA9IG5leHQ7XG5cdFx0XHR9XG5cblx0XHRcdGlmIChuZXh0KSB7XG5cdFx0XHRcdG5leHQucHJldmlvdXMgPSBwcmV2aW91cztcblx0XHRcdH1cblx0XHR9XG5cblx0XHRkaXNwYXRjaGVyID0gYWR2aXNlZC5hZHZpY2UgPSBhZHZpc2VkID0gbnVsbDtcblx0fSk7XG59XG5cbmZ1bmN0aW9uIGdldERpc3BhdGNoZXIodGFyZ2V0OiBhbnksIG1ldGhvZE5hbWU6IHN0cmluZyk6IERpc3BhdGNoZXIge1xuXHRjb25zdCBleGlzdGluZyA9IHRhcmdldFttZXRob2ROYW1lXTtcblx0bGV0IGRpc3BhdGNoZXI6IERpc3BhdGNoZXI7XG5cblx0aWYgKCFleGlzdGluZyB8fCBleGlzdGluZy50YXJnZXQgIT09IHRhcmdldCkge1xuXHRcdC8vIG5vIGRpc3BhdGNoZXJcblx0XHR0YXJnZXRbbWV0aG9kTmFtZV0gPSBkaXNwYXRjaGVyID0gPERpc3BhdGNoZXI+IGZ1bmN0aW9uICgpOiBhbnkge1xuXHRcdFx0bGV0IGV4ZWN1dGlvbklkID0gbmV4dElkO1xuXHRcdFx0bGV0IGFyZ3MgPSBhcmd1bWVudHM7XG5cdFx0XHRsZXQgcmVzdWx0czogYW55O1xuXHRcdFx0bGV0IGJlZm9yZSA9IGRpc3BhdGNoZXIuYmVmb3JlO1xuXG5cdFx0XHR3aGlsZSAoYmVmb3JlKSB7XG5cdFx0XHRcdGlmIChiZWZvcmUuYWR2aWNlKSB7XG5cdFx0XHRcdFx0YXJncyA9IGJlZm9yZS5hZHZpY2UuYXBwbHkodGhpcywgYXJncykgfHwgYXJncztcblx0XHRcdFx0fVxuXHRcdFx0XHRiZWZvcmUgPSBiZWZvcmUubmV4dDtcblx0XHRcdH1cblxuXHRcdFx0aWYgKGRpc3BhdGNoZXIuYXJvdW5kKSB7XG5cdFx0XHRcdHJlc3VsdHMgPSBkaXNwYXRjaGVyLmFyb3VuZC5hZHZpY2UodGhpcywgYXJncyk7XG5cdFx0XHR9XG5cblx0XHRcdGxldCBhZnRlciA9IGRpc3BhdGNoZXIuYWZ0ZXI7XG5cdFx0XHR3aGlsZSAoYWZ0ZXIgJiYgYWZ0ZXIuaWQgPCBleGVjdXRpb25JZCkge1xuXHRcdFx0XHRpZiAoYWZ0ZXIuYWR2aWNlKSB7XG5cdFx0XHRcdFx0aWYgKGFmdGVyLnJlY2VpdmVBcmd1bWVudHMpIHtcblx0XHRcdFx0XHRcdGxldCBuZXdSZXN1bHRzID0gYWZ0ZXIuYWR2aWNlLmFwcGx5KHRoaXMsIGFyZ3MpO1xuXHRcdFx0XHRcdFx0cmVzdWx0cyA9IG5ld1Jlc3VsdHMgPT09IHVuZGVmaW5lZCA/IHJlc3VsdHMgOiBuZXdSZXN1bHRzO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRcdHJlc3VsdHMgPSBhZnRlci5hZHZpY2UuY2FsbCh0aGlzLCByZXN1bHRzLCBhcmdzKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0YWZ0ZXIgPSBhZnRlci5uZXh0O1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gcmVzdWx0cztcblx0XHR9O1xuXG5cdFx0aWYgKGV4aXN0aW5nKSB7XG5cdFx0XHRkaXNwYXRjaGVyLmFyb3VuZCA9IHtcblx0XHRcdFx0YWR2aWNlOiBmdW5jdGlvbiAodGFyZ2V0OiBhbnksIGFyZ3M6IGFueVtdKTogYW55IHtcblx0XHRcdFx0XHRyZXR1cm4gZXhpc3RpbmcuYXBwbHkodGFyZ2V0LCBhcmdzKTtcblx0XHRcdFx0fVxuXHRcdFx0fTtcblx0XHR9XG5cblx0XHRkaXNwYXRjaGVyLnRhcmdldCA9IHRhcmdldDtcblx0fVxuXHRlbHNlIHtcblx0XHRkaXNwYXRjaGVyID0gZXhpc3Rpbmc7XG5cdH1cblxuXHR0YXJnZXQgPSBudWxsO1xuXG5cdHJldHVybiBkaXNwYXRjaGVyO1xufVxuXG4vKipcbiAqIEF0dGFjaGVzIFwiYWZ0ZXJcIiBhZHZpY2UgdG8gYmUgZXhlY3V0ZWQgYWZ0ZXIgdGhlIG9yaWdpbmFsIG1ldGhvZC5cbiAqIFRoZSBhZHZpc2luZyBmdW5jdGlvbiB3aWxsIHJlY2VpdmUgdGhlIG9yaWdpbmFsIG1ldGhvZCdzIHJldHVybiB2YWx1ZSBhbmQgYXJndW1lbnRzIG9iamVjdC5cbiAqIFRoZSB2YWx1ZSBpdCByZXR1cm5zIHdpbGwgYmUgcmV0dXJuZWQgZnJvbSB0aGUgbWV0aG9kIHdoZW4gaXQgaXMgY2FsbGVkIChldmVuIGlmIHRoZSByZXR1cm4gdmFsdWUgaXMgdW5kZWZpbmVkKS5cbiAqIEBwYXJhbSB0YXJnZXQgT2JqZWN0IHdob3NlIG1ldGhvZCB3aWxsIGJlIGFzcGVjdGVkXG4gKiBAcGFyYW0gbWV0aG9kTmFtZSBOYW1lIG9mIG1ldGhvZCB0byBhc3BlY3RcbiAqIEBwYXJhbSBhZHZpY2UgQWR2aXNpbmcgZnVuY3Rpb24gd2hpY2ggd2lsbCByZWNlaXZlIHRoZSBvcmlnaW5hbCBtZXRob2QncyByZXR1cm4gdmFsdWUgYW5kIGFyZ3VtZW50cyBvYmplY3RcbiAqIEByZXR1cm4gQSBoYW5kbGUgd2hpY2ggd2lsbCByZW1vdmUgdGhlIGFzcGVjdCB3aGVuIGRlc3Ryb3kgaXMgY2FsbGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZnRlcih0YXJnZXQ6IGFueSwgbWV0aG9kTmFtZTogc3RyaW5nLCBhZHZpY2U6IChvcmlnaW5hbFJldHVybjogYW55LCBvcmlnaW5hbEFyZ3M6IElBcmd1bWVudHMpID0+IGFueSk6IEhhbmRsZSB7XG5cdHJldHVybiBhZHZpc2UoZ2V0RGlzcGF0Y2hlcih0YXJnZXQsIG1ldGhvZE5hbWUpLCAnYWZ0ZXInLCBhZHZpY2UpO1xufVxuXG4vKipcbiAqIEF0dGFjaGVzIFwiYXJvdW5kXCIgYWR2aWNlIGFyb3VuZCB0aGUgb3JpZ2luYWwgbWV0aG9kLlxuICogQHBhcmFtIHRhcmdldCBPYmplY3Qgd2hvc2UgbWV0aG9kIHdpbGwgYmUgYXNwZWN0ZWRcbiAqIEBwYXJhbSBtZXRob2ROYW1lIE5hbWUgb2YgbWV0aG9kIHRvIGFzcGVjdFxuICogQHBhcmFtIGFkdmljZSBBZHZpc2luZyBmdW5jdGlvbiB3aGljaCB3aWxsIHJlY2VpdmUgdGhlIG9yaWdpbmFsIGZ1bmN0aW9uXG4gKiBAcmV0dXJuIEEgaGFuZGxlIHdoaWNoIHdpbGwgcmVtb3ZlIHRoZSBhc3BlY3Qgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gYXJvdW5kKHRhcmdldDogYW55LCBtZXRob2ROYW1lOiBzdHJpbmcsIGFkdmljZTogKHByZXZpb3VzOiBGdW5jdGlvbikgPT4gRnVuY3Rpb24pOiBIYW5kbGUge1xuXHRsZXQgZGlzcGF0Y2hlciA9IGdldERpc3BhdGNoZXIodGFyZ2V0LCBtZXRob2ROYW1lKTtcblx0bGV0IHByZXZpb3VzID0gZGlzcGF0Y2hlci5hcm91bmQ7XG5cdGxldCBhZHZpc2VkID0gYWR2aWNlKGZ1bmN0aW9uICgpOiBhbnkge1xuXHRcdHJldHVybiBwcmV2aW91cy5hZHZpY2UodGhpcywgYXJndW1lbnRzKTtcblx0fSk7XG5cblx0ZGlzcGF0Y2hlci5hcm91bmQgPSB7XG5cdFx0YWR2aWNlOiBmdW5jdGlvbiAodGFyZ2V0OiBhbnksIGFyZ3M6IGFueVtdKTogYW55IHtcblx0XHRcdHJldHVybiBhZHZpc2VkID9cblx0XHRcdFx0YWR2aXNlZC5hcHBseSh0YXJnZXQsIGFyZ3MpIDpcblx0XHRcdFx0cHJldmlvdXMuYWR2aWNlKHRhcmdldCwgYXJncyk7XG5cdFx0fVxuXHR9O1xuXG5cdGFkdmljZSA9IG51bGw7XG5cblx0cmV0dXJuIGNyZWF0ZUhhbmRsZShmdW5jdGlvbiAoKSB7XG5cdFx0YWR2aXNlZCA9IGRpc3BhdGNoZXIgPSBudWxsO1xuXHR9KTtcbn1cblxuLyoqXG4gKiBBdHRhY2hlcyBcImJlZm9yZVwiIGFkdmljZSB0byBiZSBleGVjdXRlZCBiZWZvcmUgdGhlIG9yaWdpbmFsIG1ldGhvZC5cbiAqIEBwYXJhbSB0YXJnZXQgT2JqZWN0IHdob3NlIG1ldGhvZCB3aWxsIGJlIGFzcGVjdGVkXG4gKiBAcGFyYW0gbWV0aG9kTmFtZSBOYW1lIG9mIG1ldGhvZCB0byBhc3BlY3RcbiAqIEBwYXJhbSBhZHZpY2UgQWR2aXNpbmcgZnVuY3Rpb24gd2hpY2ggd2lsbCByZWNlaXZlIHRoZSBzYW1lIGFyZ3VtZW50cyBhcyB0aGUgb3JpZ2luYWwsIGFuZCBtYXkgcmV0dXJuIG5ldyBhcmd1bWVudHNcbiAqIEByZXR1cm4gQSBoYW5kbGUgd2hpY2ggd2lsbCByZW1vdmUgdGhlIGFzcGVjdCB3aGVuIGRlc3Ryb3kgaXMgY2FsbGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiZWZvcmUodGFyZ2V0OiBhbnksIG1ldGhvZE5hbWU6IHN0cmluZywgYWR2aWNlOiAoLi4ub3JpZ2luYWxBcmdzOiBhbnlbXSkgPT4gYW55W10gfCB2b2lkKTogSGFuZGxlIHtcblx0cmV0dXJuIGFkdmlzZShnZXREaXNwYXRjaGVyKHRhcmdldCwgbWV0aG9kTmFtZSksICdiZWZvcmUnLCBhZHZpY2UpO1xufVxuXG4vKipcbiAqIEF0dGFjaGVzIGFkdmljZSB0byBiZSBleGVjdXRlZCBhZnRlciB0aGUgb3JpZ2luYWwgbWV0aG9kLlxuICogVGhlIGFkdmlzaW5nIGZ1bmN0aW9uIHdpbGwgcmVjZWl2ZSB0aGUgc2FtZSBhcmd1bWVudHMgYXMgdGhlIG9yaWdpbmFsIG1ldGhvZC5cbiAqIFRoZSB2YWx1ZSBpdCByZXR1cm5zIHdpbGwgYmUgcmV0dXJuZWQgZnJvbSB0aGUgbWV0aG9kIHdoZW4gaXQgaXMgY2FsbGVkICp1bmxlc3MqIGl0cyByZXR1cm4gdmFsdWUgaXMgdW5kZWZpbmVkLlxuICogQHBhcmFtIHRhcmdldCBPYmplY3Qgd2hvc2UgbWV0aG9kIHdpbGwgYmUgYXNwZWN0ZWRcbiAqIEBwYXJhbSBtZXRob2ROYW1lIE5hbWUgb2YgbWV0aG9kIHRvIGFzcGVjdFxuICogQHBhcmFtIGFkdmljZSBBZHZpc2luZyBmdW5jdGlvbiB3aGljaCB3aWxsIHJlY2VpdmUgdGhlIHNhbWUgYXJndW1lbnRzIGFzIHRoZSBvcmlnaW5hbCBtZXRob2RcbiAqIEByZXR1cm4gQSBoYW5kbGUgd2hpY2ggd2lsbCByZW1vdmUgdGhlIGFzcGVjdCB3aGVuIGRlc3Ryb3kgaXMgY2FsbGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvbih0YXJnZXQ6IGFueSwgbWV0aG9kTmFtZTogc3RyaW5nLCBhZHZpY2U6ICguLi5vcmlnaW5hbEFyZ3M6IGFueVtdKSA9PiBhbnkpOiBIYW5kbGUge1xuXHRyZXR1cm4gYWR2aXNlKGdldERpc3BhdGNoZXIodGFyZ2V0LCBtZXRob2ROYW1lKSwgJ2FmdGVyJywgYWR2aWNlLCB0cnVlKTtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNwZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FzcGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFDQSxxQkFBNkIsUUFBUSxDQUFDLENBQUE7SUFrQnRDLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztJQUVmLGdCQUFnQixVQUFzQixFQUFFLElBQVksRUFBRSxNQUFnQixFQUFFLGdCQUEwQjtRQUNqRyxJQUFJLFFBQVEsR0FBVSxVQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEMsSUFBSSxPQUFPLEdBQVk7WUFDdEIsRUFBRSxFQUFFLE1BQU0sRUFBRTtZQUNaLE1BQU0sRUFBRSxNQUFNO1lBQ2QsZ0JBQWdCLEVBQUUsZ0JBQWdCO1NBQ2xDLENBQUM7UUFFRixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ2QsRUFBRSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLDBDQUEwQztnQkFDMUMseUZBQXlGO2dCQUN6RixPQUFPLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQSxDQUFDO2dCQUN0RCxRQUFRLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztnQkFDeEIsT0FBTyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDN0IsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNMLHVCQUF1QjtnQkFDdkIsVUFBVSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7Z0JBQzVCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO2dCQUN4QixRQUFRLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUM3QixDQUFDO1FBQ0YsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDO1lBQ0UsVUFBVyxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUNwQyxDQUFDO1FBRUQs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QUFVLENBQUMsTUFBTSxHQUFHO1lBQ25CLE1BQU0sRUFBRSxVQUFVLE1BQVcsRUFBRSxJQUFXO2dCQUN6QyxNQUFNLENBQUMsT0FBTztvQkFDYixPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7b0JBQzNCLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2hDLENBQUM7U0FDRCxDQUFDO1FBRUYsTUFBTSxHQUFHLElBQUksQ0FBQztRQUVkLE1BQU0sQ0FBQyxtQkFBWSxDQUFDO1lBQ25CLE9BQU8sR0FBRyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQXBCZSxjQUFNLFNBb0JyQixDQUFBO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsZ0JBQXVCLE1BQVcsRUFBRSxVQUFrQixFQUFFLE1BQWdEO1FBQ3ZHLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUZlLGNBQU0sU0FFckIsQ0FBQTtJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsWUFBbUIsTUFBVyxFQUFFLFVBQWtCLEVBQUUsTUFBdUM7UUFDMUYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUZlLFVBQUUsS0FFakIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhbmRsZSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBjcmVhdGVIYW5kbGUgfSBmcm9tICcuL2xhbmcnO1xuXG5pbnRlcmZhY2UgQWR2aXNlZCB7XG5cdGlkPzogbnVtYmVyO1xuXHRhZHZpY2U6IEZ1bmN0aW9uO1xuXHRwcmV2aW91cz86IEFkdmlzZWQ7XG5cdG5leHQ/OiBBZHZpc2VkO1xuXHRyZWNlaXZlQXJndW1lbnRzPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIERpc3BhdGNoZXIge1xuXHQoKTogYW55O1xuXHR0YXJnZXQ6IGFueTtcblx0YmVmb3JlPzogQWR2aXNlZDtcblx0YXJvdW5kPzogQWR2aXNlZDtcblx0YWZ0ZXI/OiBBZHZpc2VkO1xufVxuXG5sZXQgbmV4dElkID0gMDtcblxuZnVuY3Rpb24gYWR2aXNlKGRpc3BhdGNoZXI6IERpc3BhdGNoZXIsIHR5cGU6IHN0cmluZywgYWR2aWNlOiBGdW5jdGlvbiwgcmVjZWl2ZUFyZ3VtZW50cz86IGJvb2xlYW4pOiBIYW5kbGUge1xuXHRsZXQgcHJldmlvdXMgPSAoPGFueT4gZGlzcGF0Y2hlcilbdHlwZV07XG5cdGxldCBhZHZpc2VkOiBBZHZpc2VkID0ge1xuXHRcdGlkOiBuZXh0SWQrKyxcblx0XHRhZHZpY2U6IGFkdmljZSxcblx0XHRyZWNlaXZlQXJndW1lbnRzOiByZWNlaXZlQXJndW1lbnRzXG5cdH07XG5cblx0aWYgKHByZXZpb3VzKSB7XG5cdFx0aWYgKHR5cGUgPT09ICdhZnRlcicpIHtcblx0XHRcdC8vIGFkZCB0aGUgbGlzdGVuZXIgdG8gdGhlIGVuZCBvZiB0aGUgbGlzdFxuXHRcdFx0Ly8gbm90ZSB0aGF0IHdlIGhhZCB0byBjaGFuZ2UgdGhpcyBsb29wIGEgbGl0dGxlIGJpdCB0byB3b3JrYXJvdW5kIGEgYml6YXJyZSBJRTEwIEpJVCBidWdcblx0XHRcdHdoaWxlIChwcmV2aW91cy5uZXh0ICYmIChwcmV2aW91cyA9IHByZXZpb3VzLm5leHQpKSB7fVxuXHRcdFx0cHJldmlvdXMubmV4dCA9IGFkdmlzZWQ7XG5cdFx0XHRhZHZpc2VkLnByZXZpb3VzID0gcHJldmlvdXM7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0Ly8gYWRkIHRvIHRoZSBiZWdpbm5pbmdcblx0XHRcdGRpc3BhdGNoZXIuYmVmb3JlID0gYWR2aXNlZDtcblx0XHRcdGFkdmlzZWQubmV4dCA9IHByZXZpb3VzO1xuXHRcdFx0cHJldmlvdXMucHJldmlvdXMgPSBhZHZpc2VkO1xuXHRcdH1cblx0fVxuXHRlbHNlIHtcblx0XHQoPGFueT4gZGlzcGF0Y2hlcilbdHlwZV0gPSBhZHZpc2VkO1xuXHR9XG5cblx0YWR2aWNlID0gcHJldmlvdXMgPSBudWxsO1xuXG5cdHJldHVybiBjcmVhdGVIYW5kbGUoZnVuY3Rpb24gKCkge1xuXHRcdGxldCBwcmV2aW91cyA9IGFkdmlzZWQucHJldmlvdXM7XG5cdFx0bGV0IG5leHQgPSBhZHZpc2VkLm5leHQ7XG5cblx0XHRpZiAoIXByZXZpb3VzICYmICFuZXh0KSB7XG5cdFx0XHQoPGFueT4gZGlzcGF0Y2hlcilbdHlwZV0gPSBudWxsO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdGlmIChwcmV2aW91cykge1xuXHRcdFx0XHRwcmV2aW91cy5uZXh0ID0gbmV4dDtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHQoPGFueT4gZGlzcGF0Y2hlcilbdHlwZV0gPSBuZXh0O1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAobmV4dCkge1xuXHRcdFx0XHRuZXh0LnByZXZpb3VzID0gcHJldmlvdXM7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0ZGlzcGF0Y2hlciA9IGFkdmlzZWQuYWR2aWNlID0gYWR2aXNlZCA9IG51bGw7XG5cdH0pO1xufVxuXG5mdW5jdGlvbiBnZXREaXNwYXRjaGVyKHRhcmdldDogYW55LCBtZXRob2ROYW1lOiBzdHJpbmcpOiBEaXNwYXRjaGVyIHtcblx0Y29uc3QgZXhpc3RpbmcgPSB0YXJnZXRbbWV0aG9kTmFtZV07XG5cdGxldCBkaXNwYXRjaGVyOiBEaXNwYXRjaGVyO1xuXG5cdGlmICghZXhpc3RpbmcgfHwgZXhpc3RpbmcudGFyZ2V0ICE9PSB0YXJnZXQpIHtcblx0XHQvLyBubyBkaXNwYXRjaGVyXG5cdFx0dGFyZ2V0W21ldGhvZE5hbWVdID0gZGlzcGF0Y2hlciA9IDxEaXNwYXRjaGVyPiBmdW5jdGlvbiAoKTogYW55IHtcblx0XHRcdGxldCBleGVjdXRpb25JZCA9IG5leHRJZDtcblx0XHRcdGxldCBhcmdzID0gYXJndW1lbnRzO1xuXHRcdFx0bGV0IHJlc3VsdHM6IGFueTtcblx0XHRcdGxldCBiZWZvcmUgPSBkaXNwYXRjaGVyLmJlZm9yZTtcblxuXHRcdFx0d2hpbGUgKGJlZm9yZSkge1xuXHRcdFx0XHRpZiAoYmVmb3JlLmFkdmljZSkge1xuXHRcdFx0XHRcdGFyZ3MgPSBiZWZvcmUuYWR2aWNlLmFwcGx5KHRoaXMsIGFyZ3MpIHx8IGFyZ3M7XG5cdFx0XHRcdH1cblx0XHRcdFx0YmVmb3JlID0gYmVmb3JlLm5leHQ7XG5cdFx0XHR9XG5cblx0XHRcdGlmIChkaXNwYXRjaGVyLmFyb3VuZCkge1xuXHRcdFx0XHRyZXN1bHRzID0gZGlzcGF0Y2hlci5hcm91bmQuYWR2aWNlKHRoaXMsIGFyZ3MpO1xuXHRcdFx0fVxuXG5cdFx0XHRsZXQgYWZ0ZXIgPSBkaXNwYXRjaGVyLmFmdGVyO1xuXHRcdFx0d2hpbGUgKGFmdGVyICYmIGFmdGVyLmlkIDwgZXhlY3V0aW9uSWQpIHtcblx0XHRcdFx0aWYgKGFmdGVyLmFkdmljZSkge1xuXHRcdFx0XHRcdGlmIChhZnRlci5yZWNlaXZlQXJndW1lbnRzKSB7XG5cdFx0XHRcdFx0XHRsZXQgbmV3UmVzdWx0cyA9IGFmdGVyLmFkdmljZS5hcHBseSh0aGlzLCBhcmdzKTtcblx0XHRcdFx0XHRcdHJlc3VsdHMgPSBuZXdSZXN1bHRzID09PSB1bmRlZmluZWQgPyByZXN1bHRzIDogbmV3UmVzdWx0cztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0XHRyZXN1bHRzID0gYWZ0ZXIuYWR2aWNlLmNhbGwodGhpcywgcmVzdWx0cywgYXJncyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGFmdGVyID0gYWZ0ZXIubmV4dDtcblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIHJlc3VsdHM7XG5cdFx0fTtcblxuXHRcdGlmIChleGlzdGluZykge1xuXHRcdFx0ZGlzcGF0Y2hlci5hcm91bmQgPSB7XG5cdFx0XHRcdGFkdmljZTogZnVuY3Rpb24gKHRhcmdldDogYW55LCBhcmdzOiBhbnlbXSk6IGFueSB7XG5cdFx0XHRcdFx0cmV0dXJuIGV4aXN0aW5nLmFwcGx5KHRhcmdldCwgYXJncyk7XG5cdFx0XHRcdH1cblx0XHRcdH07XG5cdFx0fVxuXG5cdFx0ZGlzcGF0Y2hlci50YXJnZXQgPSB0YXJnZXQ7XG5cdH1cblx0ZWxzZSB7XG5cdFx0ZGlzcGF0Y2hlciA9IGV4aXN0aW5nO1xuXHR9XG5cblx0dGFyZ2V0ID0gbnVsbDtcblxuXHRyZXR1cm4gZGlzcGF0Y2hlcjtcbn1cblxuLyoqXG4gKiBBdHRhY2hlcyBcImFmdGVyXCIgYWR2aWNlIHRvIGJlIGV4ZWN1dGVkIGFmdGVyIHRoZSBvcmlnaW5hbCBtZXRob2QuXG4gKiBUaGUgYWR2aXNpbmcgZnVuY3Rpb24gd2lsbCByZWNlaXZlIHRoZSBvcmlnaW5hbCBtZXRob2QncyByZXR1cm4gdmFsdWUgYW5kIGFyZ3VtZW50cyBvYmplY3QuXG4gKiBUaGUgdmFsdWUgaXQgcmV0dXJucyB3aWxsIGJlIHJldHVybmVkIGZyb20gdGhlIG1ldGhvZCB3aGVuIGl0IGlzIGNhbGxlZCAoZXZlbiBpZiB0aGUgcmV0dXJuIHZhbHVlIGlzIHVuZGVmaW5lZCkuXG4gKiBAcGFyYW0gdGFyZ2V0IE9iamVjdCB3aG9zZSBtZXRob2Qgd2lsbCBiZSBhc3BlY3RlZFxuICogQHBhcmFtIG1ldGhvZE5hbWUgTmFtZSBvZiBtZXRob2QgdG8gYXNwZWN0XG4gKiBAcGFyYW0gYWR2aWNlIEFkdmlzaW5nIGZ1bmN0aW9uIHdoaWNoIHdpbGwgcmVjZWl2ZSB0aGUgb3JpZ2luYWwgbWV0aG9kJ3MgcmV0dXJuIHZhbHVlIGFuZCBhcmd1bWVudHMgb2JqZWN0XG4gKiBAcmV0dXJuIEEgaGFuZGxlIHdoaWNoIHdpbGwgcmVtb3ZlIHRoZSBhc3BlY3Qgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gYWZ0ZXIodGFyZ2V0OiBhbnksIG1ldGhvZE5hbWU6IHN0cmluZywgYWR2aWNlOiAob3JpZ2luYWxSZXR1cm46IGFueSwgb3JpZ2luYWxBcmdzOiBJQXJndW1lbnRzKSA9PiBhbnkpOiBIYW5kbGUge1xuXHRyZXR1cm4gYWR2aXNlKGdldERpc3BhdGNoZXIodGFyZ2V0LCBtZXRob2ROYW1lKSwgJ2FmdGVyJywgYWR2aWNlKTtcbn1cblxuLyoqXG4gKiBBdHRhY2hlcyBcImFyb3VuZFwiIGFkdmljZSBhcm91bmQgdGhlIG9yaWdpbmFsIG1ldGhvZC5cbiAqIEBwYXJhbSB0YXJnZXQgT2JqZWN0IHdob3NlIG1ldGhvZCB3aWxsIGJlIGFzcGVjdGVkXG4gKiBAcGFyYW0gbWV0aG9kTmFtZSBOYW1lIG9mIG1ldGhvZCB0byBhc3BlY3RcbiAqIEBwYXJhbSBhZHZpY2UgQWR2aXNpbmcgZnVuY3Rpb24gd2hpY2ggd2lsbCByZWNlaXZlIHRoZSBvcmlnaW5hbCBmdW5jdGlvblxuICogQHJldHVybiBBIGhhbmRsZSB3aGljaCB3aWxsIHJlbW92ZSB0aGUgYXNwZWN0IHdoZW4gZGVzdHJveSBpcyBjYWxsZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFyb3VuZCh0YXJnZXQ6IGFueSwgbWV0aG9kTmFtZTogc3RyaW5nLCBhZHZpY2U6IChwcmV2aW91czogRnVuY3Rpb24pID0+IEZ1bmN0aW9uKTogSGFuZGxlIHtcblx0bGV0IGRpc3BhdGNoZXIgPSBnZXREaXNwYXRjaGVyKHRhcmdldCwgbWV0aG9kTmFtZSk7XG5cdGxldCBwcmV2aW91cyA9IGRpc3BhdGNoZXIuYXJvdW5kO1xuXHRsZXQgYWR2aXNlZCA9IGFkdmljZShmdW5jdGlvbiAoKTogYW55IHtcblx0XHRyZXR1cm4gcHJldmlvdXMuYWR2aWNlKHRoaXMsIGFyZ3VtZW50cyk7XG5cdH0pO1xuXG5cdGRpc3BhdGNoZXIuYXJvdW5kID0ge1xuXHRcdGFkdmljZTogZnVuY3Rpb24gKHRhcmdldDogYW55LCBhcmdzOiBhbnlbXSk6IGFueSB7XG5cdFx0XHRyZXR1cm4gYWR2aXNlZCA/XG5cdFx0XHRcdGFkdmlzZWQuYXBwbHkodGFyZ2V0LCBhcmdzKSA6XG5cdFx0XHRcdHByZXZpb3VzLmFkdmljZSh0YXJnZXQsIGFyZ3MpO1xuXHRcdH1cblx0fTtcblxuXHRhZHZpY2UgPSBudWxsO1xuXG5cdHJldHVybiBjcmVhdGVIYW5kbGUoZnVuY3Rpb24gKCkge1xuXHRcdGFkdmlzZWQgPSBkaXNwYXRjaGVyID0gbnVsbDtcblx0fSk7XG59XG5cbi8qKlxuICogQXR0YWNoZXMgXCJiZWZvcmVcIiBhZHZpY2UgdG8gYmUgZXhlY3V0ZWQgYmVmb3JlIHRoZSBvcmlnaW5hbCBtZXRob2QuXG4gKiBAcGFyYW0gdGFyZ2V0IE9iamVjdCB3aG9zZSBtZXRob2Qgd2lsbCBiZSBhc3BlY3RlZFxuICogQHBhcmFtIG1ldGhvZE5hbWUgTmFtZSBvZiBtZXRob2QgdG8gYXNwZWN0XG4gKiBAcGFyYW0gYWR2aWNlIEFkdmlzaW5nIGZ1bmN0aW9uIHdoaWNoIHdpbGwgcmVjZWl2ZSB0aGUgc2FtZSBhcmd1bWVudHMgYXMgdGhlIG9yaWdpbmFsLCBhbmQgbWF5IHJldHVybiBuZXcgYXJndW1lbnRzXG4gKiBAcmV0dXJuIEEgaGFuZGxlIHdoaWNoIHdpbGwgcmVtb3ZlIHRoZSBhc3BlY3Qgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gYmVmb3JlKHRhcmdldDogYW55LCBtZXRob2ROYW1lOiBzdHJpbmcsIGFkdmljZTogKC4uLm9yaWdpbmFsQXJnczogYW55W10pID0+IGFueVtdIHwgdm9pZCk6IEhhbmRsZSB7XG5cdHJldHVybiBhZHZpc2UoZ2V0RGlzcGF0Y2hlcih0YXJnZXQsIG1ldGhvZE5hbWUpLCAnYmVmb3JlJywgYWR2aWNlKTtcbn1cblxuLyoqXG4gKiBBdHRhY2hlcyBhZHZpY2UgdG8gYmUgZXhlY3V0ZWQgYWZ0ZXIgdGhlIG9yaWdpbmFsIG1ldGhvZC5cbiAqIFRoZSBhZHZpc2luZyBmdW5jdGlvbiB3aWxsIHJlY2VpdmUgdGhlIHNhbWUgYXJndW1lbnRzIGFzIHRoZSBvcmlnaW5hbCBtZXRob2QuXG4gKiBUaGUgdmFsdWUgaXQgcmV0dXJucyB3aWxsIGJlIHJldHVybmVkIGZyb20gdGhlIG1ldGhvZCB3aGVuIGl0IGlzIGNhbGxlZCAqdW5sZXNzKiBpdHMgcmV0dXJuIHZhbHVlIGlzIHVuZGVmaW5lZC5cbiAqIEBwYXJhbSB0YXJnZXQgT2JqZWN0IHdob3NlIG1ldGhvZCB3aWxsIGJlIGFzcGVjdGVkXG4gKiBAcGFyYW0gbWV0aG9kTmFtZSBOYW1lIG9mIG1ldGhvZCB0byBhc3BlY3RcbiAqIEBwYXJhbSBhZHZpY2UgQWR2aXNpbmcgZnVuY3Rpb24gd2hpY2ggd2lsbCByZWNlaXZlIHRoZSBzYW1lIGFyZ3VtZW50cyBhcyB0aGUgb3JpZ2luYWwgbWV0aG9kXG4gKiBAcmV0dXJuIEEgaGFuZGxlIHdoaWNoIHdpbGwgcmVtb3ZlIHRoZSBhc3BlY3Qgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gb24odGFyZ2V0OiBhbnksIG1ldGhvZE5hbWU6IHN0cmluZywgYWR2aWNlOiAoLi4ub3JpZ2luYWxBcmdzOiBhbnlbXSkgPT4gYW55KTogSGFuZGxlIHtcblx0cmV0dXJuIGFkdmlzZShnZXREaXNwYXRjaGVyKHRhcmdldCwgbWV0aG9kTmFtZSksICdhZnRlcicsIGFkdmljZSwgdHJ1ZSk7XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -230,2 +231,2 @@ var array = require('../array'); | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FzeW5jL2l0ZXJhdGlvbi50cyJdLCJuYW1lcyI6WyJwcm9jZXNzVmFsdWVzQW5kQ2FsbGJhY2siLCJmaW5kTmV4dFZhbHVlSW5kZXgiLCJmaW5kTGFzdFZhbHVlSW5kZXgiLCJnZW5lcmFsUmVkdWNlIiwibmV4dCIsInRlc3RBbmRIYWx0T25Db25kaXRpb24iLCJldmVyeSIsImZpbHRlciIsImZpbmQiLCJmaW5kSW5kZXgiLCJtYXAiLCJyZWR1Y2UiLCJyZWR1Y2VSaWdodCIsInNlcmllcyIsInNvbWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsd0JBQWtDLFlBQVksQ0FBQyxDQUFBO0lBQy9DLElBQVksS0FBSyxXQUFNLFVBQVUsQ0FBQyxDQUFBO0lBR2xDOzs7Ozs7T0FNRztJQUNILGtDQUF3QyxLQUF5QixFQUFFLFFBQXNCO1FBQ3hGQSxNQUFNQSxDQUFDQSxpQkFBT0EsQ0FBQ0EsR0FBR0EsQ0FBSUEsS0FBS0EsQ0FBQ0E7YUFDMUJBLElBQUlBLENBQUNBLFVBQVVBLE9BQU9BO1lBQ3RCLElBQUksSUFBSSxHQUF1QixLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzNFLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLEdBQUcsQ0FBSSxJQUFJLENBQUM7aUJBQ3pCLElBQUksQ0FBZ0MsVUFBVSxJQUFJO2dCQUNsRCxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQ0EsQ0FBQ0E7SUFDTEEsQ0FBQ0E7SUFFRDs7Ozs7T0FLRztJQUNILDRCQUErQixJQUFrQixFQUFFLE1BQW1CO1FBQW5CQyxzQkFBbUJBLEdBQW5CQSxVQUFrQkEsQ0FBQ0E7UUFDckVBLE1BQU1BLEVBQUVBLENB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Q0FBQyxhQUFhLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDO1lBQ0osQ0FBQztZQUVELGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDM0IsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUN0QixDQUFDLEVBQUVBLEVBQUVBLENBQUNBLENBQUNBO0lBQ1JBLENBQUNBO0lBZGUsY0FBTSxTQWNyQixDQUFBO0lBRUQsY0FBd0IsS0FBNEIsRUFBRSxRQUFxQjtRQUMxRUMsTUFBTUEsQ0FBQ0Esc0JBQXNCQSxDQUFJQSxJQUFJQSxFQUFFQSxLQUFLQSxFQUFFQSxRQUFRQSxDQUFDQSxDQUFDQTtJQUN6REEsQ0FBQ0E7SUFGZSxZQUFJLE9BRW5CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvbWlzZSwgeyBUaGVuYWJsZSB9IGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0ICogYXMgYXJyYXkgZnJvbSAnLi4vYXJyYXknO1xuaW1wb3J0IHsgQXJyYXlMaWtlIH0gZnJvbSAnLi4vYXJyYXknO1xuXG4vKipcbiAqIFByb2Nlc3NlcyBhbGwgaXRlbXMgYW5kIHRoZW4gYXBwbGllcyB0aGUgY2FsbGJhY2sgdG8gZWFjaCBpdGVtIGFuZCBldmVudHVhbGx5IHJldHVybnMgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlXG4gKiBwcm9jZXNzZWQgdmFsdWVzIGFuZCBjYWxsYmFjayByZXN1bHRzXG4gKiBAcGFyYW0gaXRlbXMgYSBsaXN0IG9mIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyB2YWx1ZXMgdG8gcHJvY2Vzc1xuICogQHBhcmFtIGNhbGxiYWNrIGEgY2FsbGJhY2sgdGhhdCBtYXBzIHZhbHVlcyB0byBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgcmVzdWx0c1xuICogQHJldHVybiBhIGxpc3Qgb2Ygb2JqZWN0cyBob2xkaW5nIHRoZSBzeW5jaHJvbm91cyB2YWx1ZXMgYW5kIHN5bmNocm9ub3VzIHJlc3VsdHMuXG4gKi9cbmZ1bmN0aW9uIHByb2Nlc3NWYWx1ZXNBbmRDYWxsYmFjazxULCBVPihpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogTWFwcGVyPFQsIFU+KTogUHJvbWlzZTx7IHZhbHVlczogVFtdOyByZXN1bHRzOiBVW10gfT4ge1xuXHRyZXR1cm4gUHJvbWlzZS5hbGw8VD4oaXRlbXMpXG5cdFx0LnRoZW4oZnVuY3Rpb24gKHJlc3VsdHMpIHtcblx0XHRcdGxldCBwYXNzOiAoVSB8IFByb21pc2U8VT4pW10gPSBBcnJheS5wcm90b3R5cGUubWFwLmNhbGwocmVzdWx0cywgY2FsbGJhY2spO1xuXHRcdFx0cmV0dXJuIFByb21pc2UuYWxsPFU+KHBhc3MpXG5cdFx0XHRcdC50aGVuPHsgdmFsdWVzOiBUW107IHJlc3VsdHM6IFVbXSB9PihmdW5jdGlvbiAocGFzcykge1xuXHRcdFx0XHRcdHJldHVybiB7IHZhbHVlczogcmVzdWx0cywgcmVzdWx0czogcGFzcyB9O1xuXHRcdFx0XHR9KTtcblx0XHR9KTtcbn1cblxuLyoqXG4gKiBGaW5kcyB0aGUgaW5kZXggb2YgdGhlIG5leHQgdmFsdWUgaW4gYSBzcGFyc2UgYXJyYXktbGlrZSBvYmplY3RcbiAqIEBwYXJhbSBsaXN0IHRoZSBzcGFyc2UgYXJyYXktbGlrZSBvYmplY3RcbiAqIEBwYXJhbSBvZmZzZXQgdGhlIHN0YXJ0aW5nIG9mZnNldFxuICogQHJldHVybiB7bnVtYmVyfSB0aGUgb2Zmc2V0IG9mIHRoZSBuZXh0IGluZGV4IHdpdGggYSB2YWx1ZTsgb3IgLTEgaWYgbm90IGZvdW5kXG4gKi9cbmZ1bmN0aW9uIGZpbmROZXh0VmFsdWVJbmRleDxUPihsaXN0OiBBcnJheUxpa2U8VD4sIG9mZnNldDogbnVtYmVyID0gLTEpOiBudW1iZXIge1xuXHRvZmZzZXQrKztcblx0Zm9yIChsZXQgbGVuZ3RoID0gbGlzdC5sZW5ndGg7IG9mZnNldCA8IGxlbmd0aDsgb2Zmc2V0KyspIHtcblx0XHRpZiAob2Zmc2V0IGluIGxpc3QpIHtcblx0XHRcdHJldHVybiBvZmZzZXQ7XG5cdFx0fVxuXHR9XG5cdHJldHVybiAtMTtcbn1cblxuZnVuY3Rpb24gZmluZExhc3RWYWx1ZUluZGV4PFQ+KGxpc3Q6IEFycmF5TGlrZTxUPiwgb2Zmc2V0PzogbnVtYmVyKTogbnVtYmVyIHtcblx0b2Zmc2V0ID0gKG9mZnNldCA9PT0gdW5kZWZpbmVkID8gbGlzdC5sZW5ndGggOiBvZmZzZXQpIC0gMTtcblx0Zm9yICg7IG9mZnNldCA+PSAwOyBvZmZzZXQtLSkge1xuXHRcdGlmIChvZmZzZXQgaW4gbGlzdCkge1xuXHRcdFx0cmV0dXJuIG9mZnNldDtcblx0XHR9XG5cdH1cblx0cmV0dXJuIC0xO1xufVxuXG5mdW5jdGlvbiBnZW5lcmFsUmVkdWNlPFQsIFU+KGZpbmROZXh0SW5kZXg6IChsaXN0OiBBcnJheUxpa2U8YW55Piwgb2Zmc2V0PzogbnVtYmVyKSA9PiBudW1iZXIsIGl0ZW1zOiAoVCB8IFByb21pc2U8VD4pW10sIGNhbGxiYWNrOiBSZWR1Y2VyPFQsIFU+LCBpbml0aWFsVmFsdWU/OiBVKTogUHJvbWlzZTxVPiB7XG5cdGNvbnN0IGhhc0luaXRpYWxWYWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAzO1xuXHRyZXR1cm4gUHJvbWlzZS5hbGw8VD4oaXRlbXMpXG5cdFx0LnRoZW4oZnVuY3Rpb24gKHJlc3VsdHMpIHtcblx0XHRcdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0XHRcdGxldCBpOiBudW1iZXI7XG5cdFx0XHRcdGZ1bmN0aW9uIG5leHQoY3VycmVudFZhbHVlOiBVKTogdm9pZCB7XG5cdFx0XHRcdFx0aSA9IGZpbmROZXh0SW5kZXgoaXRlbXMsIGkpO1xuXHRcdFx0XHRcdGlmIChpID49IDApIHtcblx0XHRcdFx0XHRcdGNvbnN0IHJlc3VsdCA9IGNhbGxiYWNrKGN1cnJlbnRWYWx1ZSwgcmVzdWx0c1tpXSwgaSwgcmVzdWx0cyk7XG5cblx0XHRcdFx0XHRcdGlmICggKDxUaGVuYWJsZTxVPj4gcmVzdWx0KS50aGVuKSB7XG5cdFx0XHRcdFx0XHRcdCg8VGhlbmFibGU8VT4+IHJlc3VsdCkudGhlbihuZXh0LCByZWplY3QpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0XHRcdG5leHQoPFU+IHJlc3VsdCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdFx0cmVzb2x2ZShjdXJyZW50VmFsdWUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fTtcblxuXHRcdFx0XHRsZXQgdmFsdWU6IFU7XG5cdFx0XHRcdGlmIChoYXNJbml0aWFsVmFsdWUpIHtcblx0XHRcdFx0XHR2YWx1ZSA9IGluaXRpYWxWYWx1ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRpID0gZmluZE5leHRJbmRleChpdGVtcyk7XG5cblx0XHRcdFx0XHRpZiAoaSA8IDApIHtcblx0XHRcdFx0XHRcdHRocm93IG5ldyBFcnJvcigncmVkdWNlIGFycmF5IHdpdGggbm8gaW5pdGlhbCB2YWx1ZScpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHR2YWx1ZSA9IDxhbnk+IHJlc3VsdHNbaV07XG5cdFx0XHRcdH1cblx0XHRcdFx0bmV4dCh2YWx1ZSk7XG5cdFx0XHR9KTtcblx0XHR9KTtcbn1cblxuZnVuY3Rpb24gdGVzdEFuZEhhbHRPbkNvbmRpdGlvbjxUPihjb25kaXRpb246IGJvb2xlYW4sIGl0ZW1zOiAoVCB8IFByb21pc2U8VD4pW10sIGNhbGxiYWNrOiBGaWx0ZXJlcjxUPik6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRyZXR1cm4gUHJvbWlzZS5hbGw8VD4oaXRlbXMpLnRoZW4oZnVuY3Rpb24gKHJlc3VsdHMpIHtcblx0XHRyZXR1cm4gbmV3IFByb21pc2U8Ym9vbGVhbj4oZnVuY3Rpb24ocmVzb2x2ZSkge1xuXHRcdFx0bGV0IHJlc3VsdDogKGJvb2xlYW4gfCBUaGVuYWJsZTxib29sZWFuPik7XG5cdFx0XHRsZXQgcGVuZGluZ0NvdW50ID0gMDtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgcmVzdWx0cy5sZW5ndGg7IGkrKykge1xuXHRcdFx0XHRyZXN1bHQgPSBjYWxsYmFjayhyZXN1bHRzW2ldLCBpLCByZXN1bHRzKTtcblx0XHRcdFx0aWYgKHJlc3VsdCA9PT0gY29uZGl0aW9uKSB7XG5cdFx0XHRcdFx0cmV0dXJuIHJlc29sdmUocmVzdWx0KTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIGlmICgoPFRoZW5hYmxlPGJvb2xlYW4+PiByZXN1bHQpLnRoZW4pIHtcblx0XHRcdFx0XHRwZW5kaW5nQ291bnQrKztcblx0XHRcdFx0XHQoPFRoZW5hYmxlPGJvb2xlYW4+PiByZXN1bHQpLnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkge1xuXHRcdFx0XHRcdFx0aWYgKHJlc3VsdCA9PT0gY29uZGl0aW9uKSB7XG5cdFx0XHRcdFx0XHRcdHJlc29sdmUocmVzdWx0KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdHBlbmRpbmdDb3VudC0tO1xuXHRcdFx0XHRcdFx0aWYgKHBlbmRpbmdDb3VudCA9PT0gMCkge1xuXHRcdFx0XHRcdFx0XHRyZXNvbHZlKCFjb25kaXRpb24pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRpZiAocGVuZGluZ0NvdW50ID09PSAwKSB7XG5cdFx0XHRcdHJlc29sdmUoIWNvbmRpdGlvbik7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH0pO1xufVxuXG4vKipcbiAqIFRlc3Qgd2hldGhlciBhbGwgZWxlbWVudHMgaW4gdGhlIGFycmF5IHBhc3MgdGhlIHByb3ZpZGVkIGNhbGxiYWNrXG4gKiBAcGFyYW0gaXRlbXMgYSBjb2xsZWN0aW9uIG9mIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyB2YWx1ZXNcbiAqIEBwYXJhbSBjYWxsYmFjayBhIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyB0ZXN0XG4gKiBAcmV0dXJuIGV2ZW50dWFsbHkgcmV0dXJucyB0cnVlIGlmIGFsbCB2YWx1ZXMgcGFzczsgb3RoZXJ3aXNlIGZhbHNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBldmVyeTxUPihpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogRmlsdGVyZXI8VD4pOiBQcm9taXNlPGJvb2xlYW4+IHtcblx0cmV0dXJuIHRlc3RBbmRIYWx0T25Db25kaXRpb24oZmFsc2UsIGl0ZW1zLCBjYWxsYmFjayk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhbiBhcnJheSBvZiBlbGVtZW50cyB3aGljaCBwYXNzIHRoZSBwcm92aWRlZCBjYWxsYmFja1xuICogQHBhcmFtIGl0ZW1zIGEgY29sbGVjdGlvbiBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzXG4gKiBAcGFyYW0gY2FsbGJhY2sgYSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdGVzdFxuICogQHJldHVybiBldmVudHVhbGx5IHJldHVybnMgYSBuZXcgYXJyYXkgd2l0aCBvbmx5IHZhbHVlcyB0aGF0IGhhdmUgcGFzc2VkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXI8VD4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IEZpbHRlcmVyPFQ+KTogUHJvbWlzZTxUW10+IHtcblx0cmV0dXJuIHByb2Nlc3NWYWx1ZXNBbmRDYWxsYmFjayhpdGVtcywgY2FsbGJhY2spLnRoZW48VFtdPihmdW5jdGlvbiAoeyByZXN1bHRzLCB2YWx1ZXMgfSkge1xuXHRcdGxldCBhcnI6IFRbXSA9IFtdO1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgcmVzdWx0cy5sZW5ndGg7IGkrKykge1xuXHRcdFx0cmVzdWx0c1tpXSAmJiBhcnIucHVzaCh2YWx1ZXNbaV0pO1xuXHRcdH1cblx0XHRyZXR1cm4gYXJyO1xuXHR9KTtcbn1cblxuLyoqXG4gKiBGaW5kIHRoZSBmaXJzdCB2YWx1ZSBtYXRjaGluZyBhIGZpbHRlciBmdW5jdGlvblxuICogQHBhcmFtIGl0ZW1zIGEgY29sbGVjdGlvbiBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzXG4gKiBAcGFyYW0gY2FsbGJhY2sgYSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdGVzdFxuICogQHJldHVybiBhIHByb21pc2UgZXZlbnR1YWxseSBjb250YWluaW5nIHRoZSBpdGVtIG9yIHVuZGVmaW5lZCBpZiBhIG1hdGNoIGlzIG5vdCBmb3VuZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZmluZDxUPihpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogRmlsdGVyZXI8VD4pOiBQcm9taXNlPFQ+IHtcblx0cmV0dXJuIGZpbmRJbmRleDxUPihpdGVtcywgY2FsbGJhY2spLnRoZW4oZnVuY3Rpb24gKGkpIHtcblx0XHRyZXR1cm4gaSA+PSAwID8gaXRlbXNbaV0gOiB1bmRlZmluZWQ7XG5cdH0pO1xufVxuXG4vKipcbiAqIEZpbmQgdGhlIGZpcnN0IGluZGV4IHdpdGggYSB2YWx1ZSBtYXRjaGluZyB0aGUgZmlsdGVyIGZ1bmN0aW9uXG4gKiBAcGFyYW0gaXRlbXMgYSBjb2xsZWN0aW9uIG9mIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyB2YWx1ZXNcbiAqIEBwYXJhbSBjYWxsYmFjayBhIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyB0ZXN0XG4gKiBAcmV0dXJuIGEgcHJvbWlzZSBldmVudHVhbGx5IGNvbnRhaW5pbmcgdGhlIGluZGV4IG9mIHRoZSBtYXRjaGluZyBpdGVtIG9yIC0xIGlmIGEgbWF0Y2ggaXMgbm90IGZvdW5kXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kSW5kZXg8VD4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IEZpbHRlcmVyPFQ+KTogUHJvbWlzZTxudW1iZXI+IHtcblx0Ly8gVE9ETyB3ZSBjYW4gaW1wcm92ZSB0aGlzIGJ5IHJldHVybmluZyBpbW1lZGlhdGVseVxuXHRyZXR1cm4gcHJvY2Vzc1ZhbHVlc0FuZENhbGxiYWNrKGl0ZW1zLCBjYWxsYmFjaykudGhlbjxudW1iZXI+KGZ1bmN0aW9uICh7IHJlc3VsdHMgfSkge1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgcmVzdWx0cy5sZW5ndGg7IGkrKykge1xuXHRcdFx0aWYgKHJlc3VsdHNbaV0pIHtcblx0XHRcdFx0cmV0dXJuIGk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHJldHVybiAtMTtcblx0fSk7XG59XG5cbi8qKlxuICogdHJhbnNmb3JtIGEgbGlzdCBvZiBpdGVtcyB1c2luZyBhIG1hcHBlciBmdW5jdGlvblxuICogQHBhcmFtIGl0ZW1zIGEgY29sbGVjdGlvbiBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzXG4gKiBAcGFyYW0gY2FsbGJhY2sgYSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdHJhbnNmb3JtIGZ1bmN0aW9uXG4gKiBAcmV0dXJuIGEgcHJvbWlzZSBldmVudHVhbGx5IGNvbnRhaW5pbmcgYSBjb2xsZWN0aW9uIG9mIGVhY2ggdHJhbnNmb3JtZWQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hcDxULCBVPihpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogTWFwcGVyPFQsIFU+KTogUHJvbWlzZTxVW10+IHtcblx0cmV0dXJuIHByb2Nlc3NWYWx1ZXNBbmRDYWxsYmFjazxULCBVPihpdGVtcywgY2FsbGJhY2spXG5cdFx0XHQudGhlbjxVW10+KGZ1bmN0aW9uICh7IHJlc3VsdHMgfSkge1xuXHRcdFx0XHRyZXR1cm4gcmVzdWx0cztcblx0XHRcdH0pO1xufVxuXG4vKipcbiAqIHJlZHVjZSBhIGxpc3Qgb2YgaXRlbXMgZG93biB0byBhIHNpbmdsZSB2YWx1ZVxuICogQHBhcmFtIGl0ZW1zIGEgY29sbGVjdGlvbiBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzXG4gKiBAcGFyYW0gY2FsbGJhY2sgYSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgcmVkdWNlciBmdW5jdGlvblxuICogQHBhcmFtIFtpbml0aWFsVmFsdWVdIHRoZSBmaXJzdCB2YWx1ZSB0byBwYXNzIHRvIHRoZSBjYWxsYmFja1xuICogQHJldHVybiBhIHByb21pc2UgZXZlbnR1YWxseSBjb250YWluaW5nIGEgdmFsdWUgdGhhdCBpcyB0aGUgcmVzdWx0IG9mIHRoZSByZWR1Y3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZHVjZTxULCBVPihpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogUmVkdWNlcjxULCBVPiwgaW5pdGlhbFZhbHVlPzogVSk6IFByb21pc2U8VT4ge1xuXHRsZXQgYXJnczogYW55W10gPSA8YW55W10+IGFycmF5LmZyb20oYXJndW1lbnRzKTtcblx0YXJncy51bnNoaWZ0KGZpbmROZXh0VmFsdWVJbmRleCk7XG5cdHJldHVybiBnZW5lcmFsUmVkdWNlLmFwcGx5KHRoaXMsIGFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVkdWNlUmlnaHQ8VCwgVT4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IFJlZHVjZXI8VCwgVT4sIGluaXRpYWxWYWx1ZT86IFUpOiBQcm9taXNlPFU+IHtcblx0bGV0IGFyZ3M6IGFueVtdID0gPGFueVtdPiBhcnJheS5mcm9tKGFyZ3VtZW50cyk7XG5cdGFyZ3MudW5zaGlmdChmaW5kTGFzdFZhbHVlSW5kZXgpO1xuXHRyZXR1cm4gZ2VuZXJhbFJlZHVjZS5hcHBseSh0aGlzLCBhcmdzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNlcmllczxULCBVPihpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBvcGVyYXRpb246IE1hcHBlcjxULCBVPik6IFByb21pc2U8VVtdPiB7XG5cdHJldHVybiBnZW5lcmFsUmVkdWNlKGZpbmROZXh0VmFsdWVJbmRleCwgaXRlbXMsIGZ1bmN0aW9uIChwcmV2aW91c1ZhbHVlLCBjdXJyZW50VmFsdWUsIGluZGV4LCBhcnJheSkge1xuXHRcdGNvbnN0IHJlc3VsdCA9IG9wZXJhdGlvbihjdXJyZW50VmFsdWUsIGluZGV4LCBhcnJheSk7XG5cblx0XHRpZiAoKDxUaGVuYWJsZTxVPj4gcmVzdWx0KS50aGVuKSB7XG5cdFx0XHRyZXR1cm4gKDxUaGVuYWJsZTxVPj4gcmVzdWx0KS50aGVuKGZ1bmN0aW9uICh2YWx1ZSkge1xuXHRcdFx0XHRwcmV2aW91c1ZhbHVlLnB1c2godmFsdWUpO1xuXHRcdFx0XHRyZXR1cm4gcHJldmlvdXNWYWx1ZTtcblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdHByZXZpb3VzVmFsdWUucHVzaChyZXN1bHQpO1xuXHRcdHJldHVybiBwcmV2aW91c1ZhbHVlO1xuXHR9LCBbXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzb21lPFQ+KGl0ZW1zOiBBcnJheTxUIHwgUHJvbWlzZTxUPj4sIGNhbGxiYWNrOiBGaWx0ZXJlcjxUPik6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRyZXR1cm4gdGVzdEFuZEhhbHRPbkNvbmRpdGlvbjxUPih0cnVlLCBpdGVtcywgY2FsbGJhY2spO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpbHRlcmVyPFQ+IGV4dGVuZHMgTWFwcGVyPFQsIGJvb2xlYW4+IHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFwcGVyPFQsIFU+IHtcblx0KHZhbHVlOiBULCBpbmRleDogbnVtYmVyLCBhcnJheTogVFtdKTogKFUgfCBUaGVuYWJsZTxVPik7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVkdWNlcjxULCBVPiB7XG5cdChwcmV2aW91c1ZhbHVlOiBVLCBjdXJyZW50VmFsdWU6IFQsIGluZGV4OiBudW1iZXIsIGFycmF5OiBUW10pOiAoVSB8IFRoZW5hYmxlPFU+KTtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FzeW5jL2l0ZXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQSx3QkFBa0MsWUFBWSxDQUFDLENBQUE7SUFDL0MsSUFBWSxLQUFLLFdBQU0sVUFBVSxDQUFDLENBQUE7SUFHbEM7Ozs7OztPQU1HO0lBQ0gsa0NBQXdDLEtBQXlCLEVBQUUsUUFBc0I7UUFDeEYsTUFBTSxDQUFDLGlCQUFPLENBQUMsR0FBRyxDQUFJLEtBQUssQ0FBQzthQUMxQixJQUFJLENBQUMsVUFBVSxPQUFPO1lBQ3RCLElBQUksSUFBSSxHQUF1QixLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzNFLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLEdBQUcsQ0FBSSxJQUFJLENBQUM7aUJBQ3pCLElBQUksQ0FBZ0MsVUFBVSxJQUFJO2dCQUNsRCxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsNEJBQStCLElBQWtCLEVBQUUsTUFBbUI7UUFBbkIsc0JBQW1CLEdBQW5CLFVBQWtCLENBQUM7UUFDckUsTUFBTSxFQUFFLENBQUM7UUFDVCxHQUFHLENBQUMsQ0FBQyxJQUFJLFFBQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxRQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUMxRCxFQUFFLENBQUMsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDcEIsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUNmLENBQUM7UUFDRixDQUFDO1FBQ0QsTUFBTSxDQUFDLENBQUMsQ0FBQyxD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YSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsS0FBSztZQUNsRyxJQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztZQUVyRCxFQUFFLENBQUMsQ0FBZ0IsTUFBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ2pDLE1BQU0sQ0FBZ0IsTUFBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUs7b0JBQ2pELGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzFCLE1BQU0sQ0FBQyxhQUFhLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDO1lBQ0osQ0FBQztZQUVELGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDM0IsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUN0QixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDUixDQUFDO0lBZGUsY0FBTSxTQWNyQixDQUFBO0lBRUQsY0FBd0IsS0FBNEIsRUFBRSxRQUFxQjtRQUMxRSxNQUFNLENBQUMsc0JBQXNCLENBQUksSUFBSSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRmUsWUFBSSxPQUVuQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UsIHsgVGhlbmFibGUgfSBmcm9tICcuLi9Qcm9taXNlJztcbmltcG9ydCAqIGFzIGFycmF5IGZyb20gJy4uL2FycmF5JztcbmltcG9ydCB7IEFycmF5TGlrZSB9IGZyb20gJy4uL2FycmF5JztcblxuLyoqXG4gKiBQcm9jZXNzZXMgYWxsIGl0ZW1zIGFuZCB0aGVuIGFwcGxpZXMgdGhlIGNhbGxiYWNrIHRvIGVhY2ggaXRlbSBhbmQgZXZlbnR1YWxseSByZXR1cm5zIGFuIG9iamVjdCBjb250YWluaW5nIHRoZVxuICogcHJvY2Vzc2VkIHZhbHVlcyBhbmQgY2FsbGJhY2sgcmVzdWx0c1xuICogQHBhcmFtIGl0ZW1zIGEgbGlzdCBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzIHRvIHByb2Nlc3NcbiAqIEBwYXJhbSBjYWxsYmFjayBhIGNhbGxiYWNrIHRoYXQgbWFwcyB2YWx1ZXMgdG8gc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHJlc3VsdHNcbiAqIEByZXR1cm4gYSBsaXN0IG9mIG9iamVjdHMgaG9sZGluZyB0aGUgc3luY2hyb25vdXMgdmFsdWVzIGFuZCBzeW5jaHJvbm91cyByZXN1bHRzLlxuICovXG5mdW5jdGlvbiBwcm9jZXNzVmFsdWVzQW5kQ2FsbGJhY2s8VCwgVT4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IE1hcHBlcjxULCBVPik6IFByb21pc2U8eyB2YWx1ZXM6IFRbXTsgcmVzdWx0czogVVtdIH0+IHtcblx0cmV0dXJuIFByb21pc2UuYWxsPFQ+KGl0ZW1zKVxuXHRcdC50aGVuKGZ1bmN0aW9uIChyZXN1bHRzKSB7XG5cdFx0XHRsZXQgcGFzczogKFUgfCBQcm9taXNlPFU+KVtdID0gQXJyYXkucHJvdG90eXBlLm1hcC5jYWxsKHJlc3VsdHMsIGNhbGxiYWNrKTtcblx0XHRcdHJldHVybiBQcm9taXNlLmFsbDxVPihwYXNzKVxuXHRcdFx0XHQudGhlbjx7IHZhbHVlczogVFtdOyByZXN1bHRzOiBVW10gfT4oZnVuY3Rpb24gKHBhc3MpIHtcblx0XHRcdFx0XHRyZXR1cm4geyB2YWx1ZXM6IHJlc3VsdHMsIHJlc3VsdHM6IHBhc3MgfTtcblx0XHRcdFx0fSk7XG5cdFx0fSk7XG59XG5cbi8qKlxuICogRmluZHMgdGhlIGluZGV4IG9mIHRoZSBuZXh0IHZhbHVlIGluIGEgc3BhcnNlIGFycmF5LWxpa2Ugb2JqZWN0XG4gKiBAcGFyYW0gbGlzdCB0aGUgc3BhcnNlIGFycmF5LWxpa2Ugb2JqZWN0XG4gKiBAcGFyYW0gb2Zmc2V0IHRoZSBzdGFydGluZyBvZmZzZXRcbiAqIEByZXR1cm4ge251bWJlcn0gdGhlIG9mZnNldCBvZiB0aGUgbmV4dCBpbmRleCB3aXRoIGEgdmFsdWU7IG9yIC0xIGlmIG5vdCBmb3VuZFxuICovXG5mdW5jdGlvbiBmaW5kTmV4dFZhbHVlSW5kZXg8VD4obGlzdDogQXJyYXlMaWtlPFQ+LCBvZmZzZXQ6IG51bWJlciA9IC0xKTogbnVtYmVyIHtcblx0b2Zmc2V0Kys7XG5cdGZvciAobGV0IGxlbmd0aCA9IGxpc3QubGVuZ3RoOyBvZmZzZXQgPCBsZW5ndGg7IG9mZnNldCsrKSB7XG5cdFx0aWYgKG9mZnNldCBpbiBsaXN0KSB7XG5cdFx0XHRyZXR1cm4gb2Zmc2V0O1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gLTE7XG59XG5cbmZ1bmN0aW9uIGZpbmRMYXN0VmFsdWVJbmRleDxUPihsaXN0OiBBcnJheUxpa2U8VD4sIG9mZnNldD86IG51bWJlcik6IG51bWJlciB7XG5cdG9mZnNldCA9IChvZmZzZXQgPT09IHVuZGVmaW5lZCA/IGxpc3QubGVuZ3RoIDogb2Zmc2V0KSAtIDE7XG5cdGZvciAoOyBvZmZzZXQgPj0gMDsgb2Zmc2V0LS0pIHtcblx0XHRpZiAob2Zmc2V0IGluIGxpc3QpIHtcblx0XHRcdHJldHVybiBvZmZzZXQ7XG5cdFx0fVxuXHR9XG5cdHJldHVybiAtMTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhbFJlZHVjZTxULCBVPihmaW5kTmV4dEluZGV4OiAobGlzdDogQXJyYXlMaWtlPGFueT4sIG9mZnNldD86IG51bWJlcikgPT4gbnVtYmVyLCBpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogUmVkdWNlcjxULCBVPiwgaW5pdGlhbFZhbHVlPzogVSk6IFByb21pc2U8VT4ge1xuXHRjb25zdCBoYXNJbml0aWFsVmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID4gMztcblx0cmV0dXJuIFByb21pc2UuYWxsPFQ+KGl0ZW1zKVxuXHRcdC50aGVuKGZ1bmN0aW9uIChyZXN1bHRzKSB7XG5cdFx0XHRyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuXHRcdFx0XHRsZXQgaTogbnVtYmVyO1xuXHRcdFx0XHRmdW5jdGlvbiBuZXh0KGN1cnJlbnRWYWx1ZTogVSk6IHZvaWQge1xuXHRcdFx0XHRcdGkgPSBmaW5kTmV4dEluZGV4KGl0ZW1zLCBpKTtcblx0XHRcdFx0XHRpZiAoaSA+PSAwKSB7XG5cdFx0XHRcdFx0XHRjb25zdCByZXN1bHQgPSBjYWxsYmFjayhjdXJyZW50VmFsdWUsIHJlc3VsdHNbaV0sIGksIHJlc3VsdHMpO1xuXG5cdFx0XHRcdFx0XHRpZiAoICg8VGhlbmFibGU8VT4+IHJlc3VsdCkudGhlbikge1xuXHRcdFx0XHRcdFx0XHQoPFRoZW5hYmxlPFU+PiByZXN1bHQpLnRoZW4obmV4dCwgcmVqZWN0KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdFx0XHRuZXh0KDxVPiByZXN1bHQpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRcdHJlc29sdmUoY3VycmVudFZhbHVlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH07XG5cblx0XHRcdFx0bGV0IHZhbHVlOiBVO1xuXHRcdFx0XHRpZiAoaGFzSW5pdGlhbFZhbHVlKSB7XG5cdFx0XHRcdFx0dmFsdWUgPSBpbml0aWFsVmFsdWU7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0aSA9IGZpbmROZXh0SW5kZXgoaXRlbXMpO1xuXG5cdFx0XHRcdFx0aWYgKGkgPCAwKSB7XG5cdFx0XHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ3JlZHVjZSBhcnJheSB3aXRoIG5vIGluaXRpYWwgdmFsdWUnKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0dmFsdWUgPSA8YW55PiByZXN1bHRzW2ldO1xuXHRcdFx0XHR9XG5cdFx0XHRcdG5leHQodmFsdWUpO1xuXHRcdFx0fSk7XG5cdFx0fSk7XG59XG5cbmZ1bmN0aW9uIHRlc3RBbmRIYWx0T25Db25kaXRpb248VD4oY29uZGl0aW9uOiBib29sZWFuLCBpdGVtczogKFQgfCBQcm9taXNlPFQ+KVtdLCBjYWxsYmFjazogRmlsdGVyZXI8VD4pOiBQcm9taXNlPGJvb2xlYW4+IHtcblx0cmV0dXJuIFByb21pc2UuYWxsPFQ+KGl0ZW1zKS50aGVuKGZ1bmN0aW9uIChyZXN1bHRzKSB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KGZ1bmN0aW9uKHJlc29sdmUpIHtcblx0XHRcdGxldCByZXN1bHQ6IChib29sZWFuIHwgVGhlbmFibGU8Ym9vbGVhbj4pO1xuXHRcdFx0bGV0IHBlbmRpbmdDb3VudCA9IDA7XG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0cmVzdWx0ID0gY2FsbGJhY2socmVzdWx0c1tpXSwgaSwgcmVzdWx0cyk7XG5cdFx0XHRcdGlmIChyZXN1bHQgPT09IGNvbmRpdGlvbikge1xuXHRcdFx0XHRcdHJldHVybiByZXNvbHZlKHJlc3VsdCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSBpZiAoKDxUaGVuYWJsZTxib29sZWFuPj4gcmVzdWx0KS50aGVuKSB7XG5cdFx0XHRcdFx0cGVuZGluZ0NvdW50Kys7XG5cdFx0XHRcdFx0KDxUaGVuYWJsZTxib29sZWFuPj4gcmVzdWx0KS50aGVuKGZ1bmN0aW9uIChyZXN1bHQpIHtcblx0XHRcdFx0XHRcdGlmIChyZXN1bHQgPT09IGNvbmRpdGlvbikge1xuXHRcdFx0XHRcdFx0XHRyZXNvbHZlKHJlc3VsdCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRwZW5kaW5nQ291bnQtLTtcblx0XHRcdFx0XHRcdGlmIChwZW5kaW5nQ291bnQgPT09IDApIHtcblx0XHRcdFx0XHRcdFx0cmVzb2x2ZSghY29uZGl0aW9uKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0aWYgKHBlbmRpbmdDb3VudCA9PT0gMCkge1xuXHRcdFx0XHRyZXNvbHZlKCFjb25kaXRpb24pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9KTtcbn1cblxuLyoqXG4gKiBUZXN0IHdoZXRoZXIgYWxsIGVsZW1lbnRzIGluIHRoZSBhcnJheSBwYXNzIHRoZSBwcm92aWRlZCBjYWxsYmFja1xuICogQHBhcmFtIGl0ZW1zIGEgY29sbGVjdGlvbiBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzXG4gKiBAcGFyYW0gY2FsbGJhY2sgYSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdGVzdFxuICogQHJldHVybiBldmVudHVhbGx5IHJldHVybnMgdHJ1ZSBpZiBhbGwgdmFsdWVzIHBhc3M7IG90aGVyd2lzZSBmYWxzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZXZlcnk8VD4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IEZpbHRlcmVyPFQ+KTogUHJvbWlzZTxib29sZWFuPiB7XG5cdHJldHVybiB0ZXN0QW5kSGFsdE9uQ29uZGl0aW9uKGZhbHNlLCBpdGVtcywgY2FsbGJhY2spO1xufVxuXG4vKipcbiAqIFJldHVybnMgYW4gYXJyYXkgb2YgZWxlbWVudHMgd2hpY2ggcGFzcyB0aGUgcHJvdmlkZWQgY2FsbGJhY2tcbiAqIEBwYXJhbSBpdGVtcyBhIGNvbGxlY3Rpb24gb2Ygc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHZhbHVlc1xuICogQHBhcmFtIGNhbGxiYWNrIGEgc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHRlc3RcbiAqIEByZXR1cm4gZXZlbnR1YWxseSByZXR1cm5zIGEgbmV3IGFycmF5IHdpdGggb25seSB2YWx1ZXMgdGhhdCBoYXZlIHBhc3NlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyPFQ+KGl0ZW1zOiAoVCB8IFByb21pc2U8VD4pW10sIGNhbGxiYWNrOiBGaWx0ZXJlcjxUPik6IFByb21pc2U8VFtdPiB7XG5cdHJldHVybiBwcm9jZXNzVmFsdWVzQW5kQ2FsbGJhY2soaXRlbXMsIGNhbGxiYWNrKS50aGVuPFRbXT4oZnVuY3Rpb24gKHsgcmVzdWx0cywgdmFsdWVzIH0pIHtcblx0XHRsZXQgYXJyOiBUW10gPSBbXTtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdHJlc3VsdHNbaV0gJiYgYXJyLnB1c2godmFsdWVzW2ldKTtcblx0XHR9XG5cdFx0cmV0dXJuIGFycjtcblx0fSk7XG59XG5cbi8qKlxuICogRmluZCB0aGUgZmlyc3QgdmFsdWUgbWF0Y2hpbmcgYSBmaWx0ZXIgZnVuY3Rpb25cbiAqIEBwYXJhbSBpdGVtcyBhIGNvbGxlY3Rpb24gb2Ygc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHZhbHVlc1xuICogQHBhcmFtIGNhbGxiYWNrIGEgc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHRlc3RcbiAqIEByZXR1cm4gYSBwcm9taXNlIGV2ZW50dWFsbHkgY29udGFpbmluZyB0aGUgaXRlbSBvciB1bmRlZmluZWQgaWYgYSBtYXRjaCBpcyBub3QgZm91bmRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmQ8VD4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IEZpbHRlcmVyPFQ+KTogUHJvbWlzZTxUPiB7XG5cdHJldHVybiBmaW5kSW5kZXg8VD4oaXRlbXMsIGNhbGxiYWNrKS50aGVuKGZ1bmN0aW9uIChpKSB7XG5cdFx0cmV0dXJuIGkgPj0gMCA/IGl0ZW1zW2ldIDogdW5kZWZpbmVkO1xuXHR9KTtcbn1cblxuLyoqXG4gKiBGaW5kIHRoZSBmaXJzdCBpbmRleCB3aXRoIGEgdmFsdWUgbWF0Y2hpbmcgdGhlIGZpbHRlciBmdW5jdGlvblxuICogQHBhcmFtIGl0ZW1zIGEgY29sbGVjdGlvbiBvZiBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdmFsdWVzXG4gKiBAcGFyYW0gY2FsbGJhY2sgYSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgdGVzdFxuICogQHJldHVybiBhIHByb21pc2UgZXZlbnR1YWxseSBjb250YWluaW5nIHRoZSBpbmRleCBvZiB0aGUgbWF0Y2hpbmcgaXRlbSBvciAtMSBpZiBhIG1hdGNoIGlzIG5vdCBmb3VuZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZmluZEluZGV4PFQ+KGl0ZW1zOiAoVCB8IFByb21pc2U8VD4pW10sIGNhbGxiYWNrOiBGaWx0ZXJlcjxUPik6IFByb21pc2U8bnVtYmVyPiB7XG5cdC8vIFRPRE8gd2UgY2FuIGltcHJvdmUgdGhpcyBieSByZXR1cm5pbmcgaW1tZWRpYXRlbHlcblx0cmV0dXJuIHByb2Nlc3NWYWx1ZXNBbmRDYWxsYmFjayhpdGVtcywgY2FsbGJhY2spLnRoZW48bnVtYmVyPihmdW5jdGlvbiAoeyByZXN1bHRzIH0pIHtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdGlmIChyZXN1bHRzW2ldKSB7XG5cdFx0XHRcdHJldHVybiBpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRyZXR1cm4gLTE7XG5cdH0pO1xufVxuXG4vKipcbiAqIHRyYW5zZm9ybSBhIGxpc3Qgb2YgaXRlbXMgdXNpbmcgYSBtYXBwZXIgZnVuY3Rpb25cbiAqIEBwYXJhbSBpdGVtcyBhIGNvbGxlY3Rpb24gb2Ygc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHZhbHVlc1xuICogQHBhcmFtIGNhbGxiYWNrIGEgc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHRyYW5zZm9ybSBmdW5jdGlvblxuICogQHJldHVybiBhIHByb21pc2UgZXZlbnR1YWxseSBjb250YWluaW5nIGEgY29sbGVjdGlvbiBvZiBlYWNoIHRyYW5zZm9ybWVkIHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXA8VCwgVT4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IE1hcHBlcjxULCBVPik6IFByb21pc2U8VVtdPiB7XG5cdHJldHVybiBwcm9jZXNzVmFsdWVzQW5kQ2FsbGJhY2s8VCwgVT4oaXRlbXMsIGNhbGxiYWNrKVxuXHRcdFx0LnRoZW48VVtdPihmdW5jdGlvbiAoeyByZXN1bHRzIH0pIHtcblx0XHRcdFx0cmV0dXJuIHJlc3VsdHM7XG5cdFx0XHR9KTtcbn1cblxuLyoqXG4gKiByZWR1Y2UgYSBsaXN0IG9mIGl0ZW1zIGRvd24gdG8gYSBzaW5nbGUgdmFsdWVcbiAqIEBwYXJhbSBpdGVtcyBhIGNvbGxlY3Rpb24gb2Ygc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHZhbHVlc1xuICogQHBhcmFtIGNhbGxiYWNrIGEgc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIHJlZHVjZXIgZnVuY3Rpb25cbiAqIEBwYXJhbSBbaW5pdGlhbFZhbHVlXSB0aGUgZmlyc3QgdmFsdWUgdG8gcGFzcyB0byB0aGUgY2FsbGJhY2tcbiAqIEByZXR1cm4gYSBwcm9taXNlIGV2ZW50dWFsbHkgY29udGFpbmluZyBhIHZhbHVlIHRoYXQgaXMgdGhlIHJlc3VsdCBvZiB0aGUgcmVkdWN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWR1Y2U8VCwgVT4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgY2FsbGJhY2s6IFJlZHVjZXI8VCwgVT4sIGluaXRpYWxWYWx1ZT86IFUpOiBQcm9taXNlPFU+IHtcblx0bGV0IGFyZ3M6IGFueVtdID0gPGFueVtdPiBhcnJheS5mcm9tKGFyZ3VtZW50cyk7XG5cdGFyZ3MudW5zaGlmdChmaW5kTmV4dFZhbHVlSW5kZXgpO1xuXHRyZXR1cm4gZ2VuZXJhbFJlZHVjZS5hcHBseSh0aGlzLCBhcmdzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZHVjZVJpZ2h0PFQsIFU+KGl0ZW1zOiAoVCB8IFByb21pc2U8VD4pW10sIGNhbGxiYWNrOiBSZWR1Y2VyPFQsIFU+LCBpbml0aWFsVmFsdWU/OiBVKTogUHJvbWlzZTxVPiB7XG5cdGxldCBhcmdzOiBhbnlbXSA9IDxhbnlbXT4gYXJyYXkuZnJvbShhcmd1bWVudHMpO1xuXHRhcmdzLnVuc2hpZnQoZmluZExhc3RWYWx1ZUluZGV4KTtcblx0cmV0dXJuIGdlbmVyYWxSZWR1Y2UuYXBwbHkodGhpcywgYXJncyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXJpZXM8VCwgVT4oaXRlbXM6IChUIHwgUHJvbWlzZTxUPilbXSwgb3BlcmF0aW9uOiBNYXBwZXI8VCwgVT4pOiBQcm9taXNlPFVbXT4ge1xuXHRyZXR1cm4gZ2VuZXJhbFJlZHVjZShmaW5kTmV4dFZhbHVlSW5kZXgsIGl0ZW1zLCBmdW5jdGlvbiAocHJldmlvdXNWYWx1ZSwgY3VycmVudFZhbHVlLCBpbmRleCwgYXJyYXkpIHtcblx0XHRjb25zdCByZXN1bHQgPSBvcGVyYXRpb24oY3VycmVudFZhbHVlLCBpbmRleCwgYXJyYXkpO1xuXG5cdFx0aWYgKCg8VGhlbmFibGU8VT4+IHJlc3VsdCkudGhlbikge1xuXHRcdFx0cmV0dXJuICg8VGhlbmFibGU8VT4+IHJlc3VsdCkudGhlbihmdW5jdGlvbiAodmFsdWUpIHtcblx0XHRcdFx0cHJldmlvdXNWYWx1ZS5wdXNoKHZhbHVlKTtcblx0XHRcdFx0cmV0dXJuIHByZXZpb3VzVmFsdWU7XG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRwcmV2aW91c1ZhbHVlLnB1c2gocmVzdWx0KTtcblx0XHRyZXR1cm4gcHJldmlvdXNWYWx1ZTtcblx0fSwgW10pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc29tZTxUPihpdGVtczogQXJyYXk8VCB8IFByb21pc2U8VD4+LCBjYWxsYmFjazogRmlsdGVyZXI8VD4pOiBQcm9taXNlPGJvb2xlYW4+IHtcblx0cmV0dXJuIHRlc3RBbmRIYWx0T25Db25kaXRpb248VD4odHJ1ZSwgaXRlbXMsIGNhbGxiYWNrKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJlcjxUPiBleHRlbmRzIE1hcHBlcjxULCBib29sZWFuPiB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hcHBlcjxULCBVPiB7XG5cdCh2YWx1ZTogVCwgaW5kZXg6IG51bWJlciwgYXJyYXk6IFRbXSk6IChVIHwgVGhlbmFibGU8VT4pO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlZHVjZXI8VCwgVT4ge1xuXHQocHJldmlvdXNWYWx1ZTogVSwgY3VycmVudFZhbHVlOiBULCBpbmRleDogbnVtYmVyLCBhcnJheTogVFtdKTogKFUgfCBUaGVuYWJsZTxVPik7XG59XG4iXX0= |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -146,6 +147,6 @@ exports.Canceled = 4; | ||
return Task; | ||
})(Promise_1.default); | ||
}(Promise_1.default)); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = Task; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hc3luYy9UYXNrLnRzIl0sIm5hbWVzIjpbIlRhc2siLCJUYXNrLmNvbnN0cnVjdG9yIiwiVGFzay5hbGwiLCJUYXNrLnJhY2UiLCJUYXNrLnJlamVjdCIsIlRhc2sucmVzb2x2ZSIsIlRhc2suY29weSIsIlRhc2suX2NhbmNlbCIsIlRhc2suY2FuY2VsIiwiVGFzay5maW5hbGx5IiwiVGFzay50aGVuIiwiVGFzay5jYXRjaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztJQUFBLHdCQUErRCxZQUFZLENBQUMsQ0FBQTtJQUUvRCxnQkFBUSxHQUFXLENBQUMsQ0FBQztJQUVsQzs7T0FFRztJQUNIO1FBQXFDQSx3QkFBVUE7UUEwQjlDQSxjQUFZQSxRQUFxQkEsRUFBRUEsUUFBcUJBO1lBMUJ6REMsaUJBbUtDQTtZQXhJQ0Esa0JBQU1BLFVBQUNBLE9BQU9BLEVBQUVBLE1BQU1BO2dCQUNyQkEsbURBQW1EQTtnQkFDbkRBLFFBQVFBLENBQ1BBLFVBQUNBLEtBQUtBO29CQUNMQSxFQUFFQSxDQUFDQSxDQUFDQSxLQUFJQSxDQUFDQSxNQUFNQSxLQUFLQSxnQkFBUUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7d0JBQzlCQSxNQUFNQSxDQUFDQTtvQkFDUkEsQ0FBQ0E7b0JBQ0RBLE9BQU9BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO2dCQUNoQkEsQ0FBQ0EsRUFDREEsVUFBQ0EsTUFBTUE7b0JBQ05BLEVBQUVBLENBQUNBLENBQUNBLEtBQUlBLENBQUNBLE1BQU1BLEtBQUtBLGdCQUFRQSxDQUFDQSxDQUFDQSxDQUFDQTt3QkFDOUJBLE1BQU1BLENBQUNBO29CQUNSQSxDQUFDQTtvQkFDREEsTUFBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0E7Z0JBQ2hCQSxDQUFDQSxDQUNEQSxDQUFDQTtZQUNIQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUVIQSxJQUFJQSxDQUFDQSxRQUFRQSxHQUFHQSxF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QSxDQUFDQSxLQUFJQSxDQUFDQSxNQUFNQSxLQUFLQSxlQUFLQSxDQUFDQSxPQUFPQSxDQUFDQSxDQUFDQSxDQUFDQTtvQkFDbkNBLEtBQUlBLENBQUNBLE1BQU1BLEVBQUVBLENBQUNBO2dCQUNmQSxDQUFDQTtnQkFFREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7b0JBQ0xBLElBQUlBLENBQUNBLE9BQU9BLEVBQUVBLENBQUNBO2dCQUNoQkEsQ0FBQ0E7WUFDRkEsQ0FBQ0EsQ0FBQ0E7WUFFRkEsNEVBQTRFQTtZQUM1RUEsSUFBSUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7WUFFekJBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBO1FBQ2JBLENBQUNBO1FBRURWLG9CQUFLQSxHQUFMQSxVQUFTQSxVQUFpREE7WUFDekRXLE1BQU1BLENBQU9BLGdCQUFLQSxDQUFDQSxLQUFLQSxZQUFDQSxVQUFVQSxDQUFDQSxDQUFDQTtRQUN0Q0EsQ0FBQ0E7UUFFRlgsV0FBQ0E7SUFBREEsQ0FBQ0EsQUFuS0QsRUFBcUMsaUJBQU8sRUFtSzNDO0lBbktEOzBCQW1LQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UsIHsgRXhlY3V0b3IsIFN0YXRlLCBUaGVuYWJsZSwgaXNUaGVuYWJsZSB9IGZyb20gJy4uL1Byb21pc2UnO1xuXG5leHBvcnQgY29uc3QgQ2FuY2VsZWQgPSA8U3RhdGU+IDQ7XG5cbi8qKlxuICogVGFzayBpcyBhbiBleHRlbnNpb24gb2YgUHJvbWlzZSB0aGF0IHN1cHBvcnRzIGNhbmNlbGF0aW9uLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUYXNrPFQ+IGV4dGVuZHMgUHJvbWlzZTxUPiB7XG5cdHN0YXRpYyBhbGw8VD4oaXRlbXM6IChUIHwgVGhlbmFibGU8VD4pW10pOiBUYXNrPFRbXT4ge1xuXHRcdHJldHVybiA8YW55PiBzdXBlci5hbGwoaXRlbXMpO1xuXHR9XG5cblx0c3RhdGljIHJhY2U8VD4oaXRlbXM6IChUIHwgVGhlbmFibGU8VD4pW10pOiBUYXNrPFQ+IHtcblx0XHRyZXR1cm4gPGFueT4gc3VwZXIucmFjZShpdGVtcyk7XG5cdH1cblxuXHRzdGF0aWMgcmVqZWN0PFQ+KHJlYXNvbjogRXJyb3IpOiBUYXNrPGFueT4ge1xuXHRcdHJldHVybiA8YW55PiBzdXBlci5yZWplY3QocmVhc29uKTtcblx0fVxuXG5cdHN0YXRpYyByZXNvbHZlKCk6IFRhc2s8dm9pZD47XG5cdHN0YXRpYyByZXNvbHZlPFQ+KHZhbHVlOiAoVCB8IFRoZW5hYmxlPFQ+KSk6IFRhc2s8VD47XG5cdHN0YXRpYyByZXNvbHZlPFQ+KHZhbHVlPzogYW55KTogVGFzazxUPiB7XG5cdFx0cmV0dXJuIDxhbnk+IHN1cGVyLnJlc29sdmUodmFsdWUpO1xuXHR9XG5cblx0cHJvdGVjdGVkIHN0YXRpYyBjb3B5PFU+KG90aGVyOiBQcm9taXNlPFU+KTogVGFzazxVPiB7XG5cdFx0Y29uc3QgdGFzayA9IDxUYXNrPFU+PiBzdXBlci5jb3B5KG90aGVyKTtcblx0XHR0YXNrLmNoaWxkcmVuID0gW107XG5cdFx0dGFzay5jYW5jZWxlciA9IG90aGVyIGluc3RhbmNlb2YgVGFzayA/IG90aGVyLmNhbmNlbGVyIDogZnVuY3Rpb24gKCkge307XG5cdFx0cmV0dXJuIHRhc2s7XG5cdH1cblxuXHRjb25zdHJ1Y3RvcihleGVjdXRvcjogRXhlY3V0b3I8VD4sIGNhbmNlbGVyPzogKCkgPT4gdm9pZCkge1xuXHRcdHN1cGVyKChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdC8vIERvbid0IGxldCB0aGUgVGFzayByZXNvbHZlIGlmIGl0J3MgYmVlbiBjYW5jZWxlZFxuXHRcdFx0ZXhlY3V0b3IoXG5cdFx0XHRcdCh2YWx1ZSkgPT4ge1xuXHRcdFx0XHRcdGlmICh0aGlzLl9zdGF0ZSA9PT0gQ2FuY2VsZWQpIHtcblx0XHRcdFx0XHRcdHJldHVybjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmVzb2x2ZSh2YWx1ZSk7XG5cdFx0XHRcdH0sXG5cdFx0XHRcdChyZWFzb24pID0+IHtcblx0XHRcdFx0XHRpZiAodGhpcy5fc3RhdGUgPT09IENhbmNlbGVkKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHJlamVjdChyZWFzb24pO1xuXHRcdFx0XHR9XG5cdFx0XHQpO1xuXHRcdH0pO1xuXG5cdFx0dGhpcy5jaGlsZHJlbiA9IFtdO1xuXHRcdHRoaXMuY2FuY2VsZXIgPSAoKSA9PiB7XG5cdFx0XHRpZiAoY2FuY2VsZXIpIHtcblx0XHRcdFx0Y2FuY2VsZXIoKTtcblx0XHRcdH1cblx0XHRcdHRoaXMuX2NhbmNlbCgpO1xuXHRcdH07XG5cdH1cblxuXHQvKipcblx0ICogQSBjYW5jZWxhdGlvbiBoYW5kbGVyIHRoYXQgd2lsbCBiZSBjYWxsZWQgaWYgdGhpcyB0YXNrIGlzIGNhbmNlbGVkLlxuXHQgKi9cblx0cHJpdmF0ZSBjYW5jZWxlcjogKCkgPT4gdm9pZDtcblxuXHQvKipcblx0ICogQ2hpbGRyZW4gb2YgdGhpcyBUYXNrIChpLmUuLCBUYXNrcyB0aGF0IHdlcmUgY3JlYXRlZCBmcm9tIHRoaXMgVGFzayB3aXRoIGB0aGVuYCBvciBgY2F0Y2hgKS5cblx0ICovXG5cdHByaXZhdGUgY2hpbGRyZW46IFRhc2s8YW55PltdO1xuXG5cdC8qKlxuXHQgKiBUaGUgZmluYWxseSBjYWxsYmFjayBmb3IgdGhpcyBUYXNrIChpZiBpdCB3YXMgY3JlYXRlZCBieSBhIGNhbGwgdG8gYGZpbmFsbHlgKS5cblx0ICovXG5cdHByaXZhdGUgX2ZpbmFsbHk6ICgpID0+IHZvaWQgfCBUaGVuYWJsZTxhbnk+O1xuXG5cdC8qKlxuXHQgKiBQcm9wYWdhdGVzIGNhbmNlbGF0aW9uIGRvd24gdGhyb3VnaCBhIFRhc2sgdHJlZS4gVGhlIFRhc2sncyBzdGF0ZSBpcyBpbW1lZGlhdGVseSBzZXQgdG8gY2FuY2VsZWQuIElmIGEgVGhlbmFibGVcblx0ICogZmluYWxseSB0YXNrIHdhcyBwYXNzZWQgaW4sIGl0IGlzIHJlc29sdmVkIGJlZm9yZSBjYWxsaW5nIHRoaXMgVGFzaydzIGZpbmFsbHkgY2FsbGJhY2s7IG90aGVyd2lzZSwgdGhpcyBUYXNrJ3Ncblx0ICogZmluYWxseSBjYWxsYmFjayBpcyBpbW1lZGlhdGVseSBleGVjdXRlZC4gYF9jYW5jZWxgIGlzIGNhbGxlZCBmb3IgZWFjaCBjaGlsZCBUYXNrLCBwYXNzaW5nIGluIHRoZSB2YWx1ZSByZXR1cm5lZFxuXHQgKiBieSB0aGlzIFRhc2sncyBmaW5hbGx5IGNhbGxiYWNrIG9yIGEgUHJvbWlzZSBjaGFpbiB0aGF0IHdpbGwgZXZlbnR1YWxseSByZXNvbHZlIHRvIHRoYXQgdmFsdWUuXG5cdCAqL1xuXHRwcml2YXRlIF9jYW5jZWwoZmluYWxseVRhc2s/OiB2b2lkIHwgVGhlbmFibGU8YW55Pik6IHZvaWQge1xuXHRcdHRoaXMuX3N0YXRlID0gQ2FuY2VsZWQ7XG5cblx0XHRjb25zdCBydW5GaW5hbGx5ID0gKCkgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0cmV0dXJuIHRoaXMuX2ZpbmFsbHkoKTtcblx0XHRcdH1cblx0XHRcdGNhdGNoIChlcnJvcikge1xuXHRcdFx0XHQvLyBBbnkgZXJyb3JzIGluIGEgYGZpbmFsbHlgIGNhbGxiYWNrIGFyZSBjb21wbGV0ZWx5IGlnbm9yZWQgZHVyaW5nIGNhbmNlbGF0aW9uXG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdGlmICh0aGlzLl9maW5hbGx5KSB7XG5cdFx0XHRpZiAoaXNUaGVuYWJsZShmaW5hbGx5VGFzaykpIHtcblx0XHRcdFx0ZmluYWxseVRhc2sgPSAoPFRoZW5hYmxlPGFueT4+IGZpbmFsbHlUYXNrKS50aGVuKHJ1bkZpbmFsbHksIHJ1bkZpbmFsbHkpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdGZpbmFsbHlUYXNrID0gcnVuRmluYWxseSgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRoaXMuY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbiAoY2hpbGQpIHtcblx0XHRcdGNoaWxkLl9jYW5jZWwoZmluYWxseVRhc2spO1xuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIEltbWVkaWF0ZWx5IGNhbmNlbHMgdGhpcyB0YXNrIGlmIGl0IGhhcyBub3QgYWxyZWFkeSByZXNvbHZlZC4gVGhpcyBUYXNrIGFuZCBhbnkgZGVzY2VuZGFudHMgYXJlIHN5bmNocm9ub3VzbHkgc2V0XG5cdCAqIHRvIHRoZSBDYW5jZWxlZCBzdGF0ZSBhbmQgYW55IGBmaW5hbGx5YCBhZGRlZCBkb3duc3RyZWFtIGZyb20gdGhlIGNhbmNlbGVkIFRhc2sgYXJlIGludm9rZWQuXG5cdCAqL1xuXHRjYW5jZWwoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuX3N0YXRlID09PSBTdGF0ZS5QZW5kaW5nKSB7XG5cdFx0XHR0aGlzLmNhbmNlbGVyKCk7XG5cdFx0fVxuXHR9XG5cblx0ZmluYWxseShjYWxsYmFjazogKCkgPT4gdm9pZCB8IFRoZW5hYmxlPGFueT4pOiBUYXNrPFQ+IHtcblx0XHRjb25zdCB0YXNrID0gPFRhc2s8VD4+IHN1cGVyLmZpbmFsbHkoY2FsbGJhY2spO1xuXHRcdC8vIEtlZXAgYSByZWZlcmVuY2UgdG8gdGhlIGNhbGxiYWNrOyBpdCB3aWxsIGJlIGNhbGxlZCBpZiB0aGUgVGFzayBpcyBjYW5jZWxlZFxuXHRcdHRhc2suX2ZpbmFsbHkgPSBjYWxsYmFjaztcblx0XHRyZXR1cm4gdGFzaztcblx0fVxuXG5cdHRoZW48VT4ob25GdWxmaWxsZWQ/OiAodmFsdWU6IFQpID0+IFUgfCBUaGVuYWJsZTxVPiwgIG9uUmVqZWN0ZWQ/OiAoZXJyb3I6IEVycm9yKSA9PiBVIHwgVGhlbmFibGU8VT4pOiBUYXNrPFU+IHtcblx0XHRjb25zdCB0YXNrID0gPFRhc2s8VT4+IHN1cGVyLnRoZW48VT4oXG5cdFx0XHQvLyBEb24ndCBjYWxsIHRoZSBvbkZ1bGZpbGxlZCBvciBvblJlamVjdGVkIGhhbmRsZXJzIGlmIHRoaXMgVGFzayBpcyBjYW5jZWxlZFxuXHRcdFx0ZnVuY3Rpb24gKHZhbHVlKSB7XG5cdFx0XHRcdGlmICh0YXNrLl9zdGF0ZSA9PT0gQ2FuY2VsZWQpIHtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKG9uRnVsZmlsbGVkKSB7XG5cdFx0XHRcdFx0cmV0dXJuIG9uRnVsZmlsbGVkKHZhbHVlKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gPGFueT4gdmFsdWU7XG5cdFx0XHR9LFxuXHRcdFx0ZnVuY3Rpb24gKGVycm9yKSB7XG5cdFx0XHRcdGlmICh0YXNrLl9zdGF0ZSA9PT0gQ2FuY2VsZWQpIHtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKG9uUmVqZWN0ZWQpIHtcblx0XHRcdFx0XHRyZXR1cm4gb25SZWplY3RlZChlcnJvcik7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhyb3cgZXJyb3I7XG5cdFx0XHR9XG5cdFx0KTtcblxuXHRcdHRhc2suY2FuY2VsZXIgPSAoKSA9PiB7XG5cdFx0XHQvLyBJZiB0YXNrJ3MgcGFyZW50ICh0aGlzKSBoYXNuJ3QgYmVlbiByZXNvbHZlZCwgY2FuY2VsIGl0OyBkb3dud2FyZCBwcm9wYWdhdGlvbiB3aWxsIHN0YXJ0IGF0IHRoZSBmaXJzdFxuXHRcdFx0Ly8gdW5yZXNvbHZlZCBwYXJlbnRcblx0XHRcdGlmICh0aGlzLl9zdGF0ZSA9PT0gU3RhdGUuUGVuZGluZykge1xuXHRcdFx0XHR0aGlzLmNhbmNlbCgpO1xuXHRcdFx0fVxuXHRcdFx0Ly8gSWYgdGFzaydzIHBhcmVudCBoYXMgYmVlbiByZXNvbHZlZCwgcHJvcGFnYXRlIGNhbmNlbGF0aW9uIHRvIHRoZSB0YXNrJ3MgZGVzY2VuZGFudHNcblx0XHRcdGVsc2Uge1xuXHRcdFx0XHR0YXNrLl9jYW5jZWwoKTtcblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0Ly8gS2VlcCB0cmFjayBvZiBjaGlsZCBUYXNrcyBmb3IgcHJvcG9nYXRpbmcgY2FuY2VsYXRpb24gYmFjayBkb3duIHRoZSBjaGFpblxuXHRcdHRoaXMuY2hpbGRyZW4ucHVzaCh0YXNrKTtcblxuXHRcdHJldHVybiB0YXNrO1xuXHR9XG5cblx0Y2F0Y2g8VT4ob25SZWplY3RlZDogKHJlYXNvbj86IEVycm9yKSA9PiAoVSB8IFRoZW5hYmxlPFU+KSk6IFRhc2s8VT4ge1xuXHRcdHJldHVybiA8YW55PiBzdXBlci5jYXRjaChvblJlamVjdGVkKTtcblx0fVxuXG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hc3luYy9UYXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0lBQUEsd0JBQStELFlBQVksQ0FBQyxDQUFBO0lBRS9ELGdCQUFRLEdBQVcsQ0FBQyxDQUFDO0lBRWxDOztPQUVHO0lBQ0g7UUFBcUMsd0JBQVU7UUEwQjlDLGNBQVksUUFBcUIsRUFBRSxRQUFxQjtZQTFCekQsaUJBbUtDO1lBeElDLGtCQUFNLFVBQUMsT0FBTyxFQUFFLE1BQU07Z0JBQ3JCLG1EQUFtRDtnQkFDbkQsUUFBUSxDQUNQLFVBQUMsS0FBSztvQkFDTCxFQUFFLENBQUMsQ0FBQyxLQUFJLENBQUMsTUFBTSxLQUFLLGdCQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUM5QixNQUFNLENBQUM7b0JBQ1IsQ0FBQztvQkFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2hCLENBQUMsRUFDRCxVQUFDLE1BQU07b0JBQ04sRUFBRSxDQUFDLENBQUMsS0FBSSxDQUFDLE1BQU0sS0FBSyxnQkFBUSxDQUFDLENBQUMsQ0FBQzt3QkFDOUIsTUFBTSxDQUFDO29CQUNSLENBQUM7b0JBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNoQixDQUFDLENBQ0QsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRztnQkFDZixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO29CQUNkLFFBQVEsRUFBRSxDQUFDO2dCQUNaLENBQUM7Z0JBQ0QsS0FBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2hCLENBQUMsQ0FBQztRQUNILENBQUM7UUFuRE0sUUFBRyxHQUFWLFVBQWMsS0FBMEI7WUFDdkMsTUFBTSxDQUFPLE1BQUssQ0FBQyxHQUFHLFlBQUMsS0FBSyxDQUFDLENBQUM7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Q0QsVUFBVSxLQUFLO2dCQUNkLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssZ0JBQVEsQ0FBQyxDQUFDLENBQUM7b0JBQzlCLE1BQU0sQ0FBQztnQkFDUixDQUFDO2dCQUNELEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7b0JBQ2hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFCLENBQUM7Z0JBQ0QsTUFBTSxLQUFLLENBQUM7WUFDYixDQUFDLENBQ0QsQ0FBQztZQUVGLElBQUksQ0FBQyxRQUFRLEdBQUc7Z0JBQ2Ysd0dBQXdHO2dCQUN4RyxvQkFBb0I7Z0JBQ3BCLEVBQUUsQ0FBQyxDQUFDLEtBQUksQ0FBQyxNQUFNLEtBQUssZUFBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7b0JBQ25DLEtBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDZixDQUFDO2dCQUVELElBQUksQ0FBQyxDQUFDO29CQUNMLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEIsQ0FBQztZQUNGLENBQUMsQ0FBQztZQUVGLDRFQUE0RTtZQUM1RSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV6QixNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ2IsQ0FBQztRQUVELG9CQUFLLEdBQUwsVUFBUyxVQUFpRDtZQUN6RCxNQUFNLENBQU8sZ0JBQUssQ0FBQyxLQUFLLFlBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEMsQ0FBQztRQUVGLFdBQUM7SUFBRCxDQUFDLEFBbktELENBQXFDLGlCQUFPLEdBbUszQztJQW5LRDswQkFtS0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlLCB7IEV4ZWN1dG9yLCBTdGF0ZSwgVGhlbmFibGUsIGlzVGhlbmFibGUgfSBmcm9tICcuLi9Qcm9taXNlJztcblxuZXhwb3J0IGNvbnN0IENhbmNlbGVkID0gPFN0YXRlPiA0O1xuXG4vKipcbiAqIFRhc2sgaXMgYW4gZXh0ZW5zaW9uIG9mIFByb21pc2UgdGhhdCBzdXBwb3J0cyBjYW5jZWxhdGlvbi5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGFzazxUPiBleHRlbmRzIFByb21pc2U8VD4ge1xuXHRzdGF0aWMgYWxsPFQ+KGl0ZW1zOiAoVCB8IFRoZW5hYmxlPFQ+KVtdKTogVGFzazxUW10+IHtcblx0XHRyZXR1cm4gPGFueT4gc3VwZXIuYWxsKGl0ZW1zKTtcblx0fVxuXG5cdHN0YXRpYyByYWNlPFQ+KGl0ZW1zOiAoVCB8IFRoZW5hYmxlPFQ+KVtdKTogVGFzazxUPiB7XG5cdFx0cmV0dXJuIDxhbnk+IHN1cGVyLnJhY2UoaXRlbXMpO1xuXHR9XG5cblx0c3RhdGljIHJlamVjdDxUPihyZWFzb246IEVycm9yKTogVGFzazxhbnk+IHtcblx0XHRyZXR1cm4gPGFueT4gc3VwZXIucmVqZWN0KHJlYXNvbik7XG5cdH1cblxuXHRzdGF0aWMgcmVzb2x2ZSgpOiBUYXNrPHZvaWQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZTogKFQgfCBUaGVuYWJsZTxUPikpOiBUYXNrPFQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZT86IGFueSk6IFRhc2s8VD4ge1xuXHRcdHJldHVybiA8YW55PiBzdXBlci5yZXNvbHZlKHZhbHVlKTtcblx0fVxuXG5cdHByb3RlY3RlZCBzdGF0aWMgY29weTxVPihvdGhlcjogUHJvbWlzZTxVPik6IFRhc2s8VT4ge1xuXHRcdGNvbnN0IHRhc2sgPSA8VGFzazxVPj4gc3VwZXIuY29weShvdGhlcik7XG5cdFx0dGFzay5jaGlsZHJlbiA9IFtdO1xuXHRcdHRhc2suY2FuY2VsZXIgPSBvdGhlciBpbnN0YW5jZW9mIFRhc2sgPyBvdGhlci5jYW5jZWxlciA6IGZ1bmN0aW9uICgpIHt9O1xuXHRcdHJldHVybiB0YXNrO1xuXHR9XG5cblx0Y29uc3RydWN0b3IoZXhlY3V0b3I6IEV4ZWN1dG9yPFQ+LCBjYW5jZWxlcj86ICgpID0+IHZvaWQpIHtcblx0XHRzdXBlcigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHQvLyBEb24ndCBsZXQgdGhlIFRhc2sgcmVzb2x2ZSBpZiBpdCdzIGJlZW4gY2FuY2VsZWRcblx0XHRcdGV4ZWN1dG9yKFxuXHRcdFx0XHQodmFsdWUpID0+IHtcblx0XHRcdFx0XHRpZiAodGhpcy5fc3RhdGUgPT09IENhbmNlbGVkKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHJlc29sdmUodmFsdWUpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHQocmVhc29uKSA9PiB7XG5cdFx0XHRcdFx0aWYgKHRoaXMuX3N0YXRlID09PSBDYW5jZWxlZCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZWplY3QocmVhc29uKTtcblx0XHRcdFx0fVxuXHRcdFx0KTtcblx0XHR9KTtcblxuXHRcdHRoaXMuY2hpbGRyZW4gPSBbXTtcblx0XHR0aGlzLmNhbmNlbGVyID0gKCkgPT4ge1xuXHRcdFx0aWYgKGNhbmNlbGVyKSB7XG5cdFx0XHRcdGNhbmNlbGVyKCk7XG5cdFx0XHR9XG5cdFx0XHR0aGlzLl9jYW5jZWwoKTtcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEEgY2FuY2VsYXRpb24gaGFuZGxlciB0aGF0IHdpbGwgYmUgY2FsbGVkIGlmIHRoaXMgdGFzayBpcyBjYW5jZWxlZC5cblx0ICovXG5cdHByaXZhdGUgY2FuY2VsZXI6ICgpID0+IHZvaWQ7XG5cblx0LyoqXG5cdCAqIENoaWxkcmVuIG9mIHRoaXMgVGFzayAoaS5lLiwgVGFza3MgdGhhdCB3ZXJlIGNyZWF0ZWQgZnJvbSB0aGlzIFRhc2sgd2l0aCBgdGhlbmAgb3IgYGNhdGNoYCkuXG5cdCAqL1xuXHRwcml2YXRlIGNoaWxkcmVuOiBUYXNrPGFueT5bXTtcblxuXHQvKipcblx0ICogVGhlIGZpbmFsbHkgY2FsbGJhY2sgZm9yIHRoaXMgVGFzayAoaWYgaXQgd2FzIGNyZWF0ZWQgYnkgYSBjYWxsIHRvIGBmaW5hbGx5YCkuXG5cdCAqL1xuXHRwcml2YXRlIF9maW5hbGx5OiAoKSA9PiB2b2lkIHwgVGhlbmFibGU8YW55PjtcblxuXHQvKipcblx0ICogUHJvcGFnYXRlcyBjYW5jZWxhdGlvbiBkb3duIHRocm91Z2ggYSBUYXNrIHRyZWUuIFRoZSBUYXNrJ3Mgc3RhdGUgaXMgaW1tZWRpYXRlbHkgc2V0IHRvIGNhbmNlbGVkLiBJZiBhIFRoZW5hYmxlXG5cdCAqIGZpbmFsbHkgdGFzayB3YXMgcGFzc2VkIGluLCBpdCBpcyByZXNvbHZlZCBiZWZvcmUgY2FsbGluZyB0aGlzIFRhc2sncyBmaW5hbGx5IGNhbGxiYWNrOyBvdGhlcndpc2UsIHRoaXMgVGFzaydzXG5cdCAqIGZpbmFsbHkgY2FsbGJhY2sgaXMgaW1tZWRpYXRlbHkgZXhlY3V0ZWQuIGBfY2FuY2VsYCBpcyBjYWxsZWQgZm9yIGVhY2ggY2hpbGQgVGFzaywgcGFzc2luZyBpbiB0aGUgdmFsdWUgcmV0dXJuZWRcblx0ICogYnkgdGhpcyBUYXNrJ3MgZmluYWxseSBjYWxsYmFjayBvciBhIFByb21pc2UgY2hhaW4gdGhhdCB3aWxsIGV2ZW50dWFsbHkgcmVzb2x2ZSB0byB0aGF0IHZhbHVlLlxuXHQgKi9cblx0cHJpdmF0ZSBfY2FuY2VsKGZpbmFsbHlUYXNrPzogdm9pZCB8IFRoZW5hYmxlPGFueT4pOiB2b2lkIHtcblx0XHR0aGlzLl9zdGF0ZSA9IENhbmNlbGVkO1xuXG5cdFx0Y29uc3QgcnVuRmluYWxseSA9ICgpID0+IHtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLl9maW5hbGx5KCk7XG5cdFx0XHR9XG5cdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0Ly8gQW55IGVycm9ycyBpbiBhIGBmaW5hbGx5YCBjYWxsYmFjayBhcmUgY29tcGxldGVseSBpZ25vcmVkIGR1cmluZyBjYW5jZWxhdGlvblxuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRpZiAodGhpcy5fZmluYWxseSkge1xuXHRcdFx0aWYgKGlzVGhlbmFibGUoZmluYWxseVRhc2spKSB7XG5cdFx0XHRcdGZpbmFsbHlUYXNrID0gKDxUaGVuYWJsZTxhbnk+PiBmaW5hbGx5VGFzaykudGhlbihydW5GaW5hbGx5LCBydW5GaW5hbGx5KTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHRmaW5hbGx5VGFzayA9IHJ1bkZpbmFsbHkoKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHR0aGlzLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24gKGNoaWxkKSB7XG5cdFx0XHRjaGlsZC5fY2FuY2VsKGZpbmFsbHlUYXNrKTtcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBJbW1lZGlhdGVseSBjYW5jZWxzIHRoaXMgdGFzayBpZiBpdCBoYXMgbm90IGFscmVhZHkgcmVzb2x2ZWQuIFRoaXMgVGFzayBhbmQgYW55IGRlc2NlbmRhbnRzIGFyZSBzeW5jaHJvbm91c2x5IHNldFxuXHQgKiB0byB0aGUgQ2FuY2VsZWQgc3RhdGUgYW5kIGFueSBgZmluYWxseWAgYWRkZWQgZG93bnN0cmVhbSBmcm9tIHRoZSBjYW5jZWxlZCBUYXNrIGFyZSBpbnZva2VkLlxuXHQgKi9cblx0Y2FuY2VsKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLl9zdGF0ZSA9PT0gU3RhdGUuUGVuZGluZykge1xuXHRcdFx0dGhpcy5jYW5jZWxlcigpO1xuXHRcdH1cblx0fVxuXG5cdGZpbmFsbHkoY2FsbGJhY2s6ICgpID0+IHZvaWQgfCBUaGVuYWJsZTxhbnk+KTogVGFzazxUPiB7XG5cdFx0Y29uc3QgdGFzayA9IDxUYXNrPFQ+PiBzdXBlci5maW5hbGx5KGNhbGxiYWNrKTtcblx0XHQvLyBLZWVwIGEgcmVmZXJlbmNlIHRvIHRoZSBjYWxsYmFjazsgaXQgd2lsbCBiZSBjYWxsZWQgaWYgdGhlIFRhc2sgaXMgY2FuY2VsZWRcblx0XHR0YXNrLl9maW5hbGx5ID0gY2FsbGJhY2s7XG5cdFx0cmV0dXJuIHRhc2s7XG5cdH1cblxuXHR0aGVuPFU+KG9uRnVsZmlsbGVkPzogKHZhbHVlOiBUKSA9PiBVIHwgVGhlbmFibGU8VT4sICBvblJlamVjdGVkPzogKGVycm9yOiBFcnJvcikgPT4gVSB8IFRoZW5hYmxlPFU+KTogVGFzazxVPiB7XG5cdFx0Y29uc3QgdGFzayA9IDxUYXNrPFU+PiBzdXBlci50aGVuPFU+KFxuXHRcdFx0Ly8gRG9uJ3QgY2FsbCB0aGUgb25GdWxmaWxsZWQgb3Igb25SZWplY3RlZCBoYW5kbGVycyBpZiB0aGlzIFRhc2sgaXMgY2FuY2VsZWRcblx0XHRcdGZ1bmN0aW9uICh2YWx1ZSkge1xuXHRcdFx0XHRpZiAodGFzay5fc3RhdGUgPT09IENhbmNlbGVkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChvbkZ1bGZpbGxlZCkge1xuXHRcdFx0XHRcdHJldHVybiBvbkZ1bGZpbGxlZCh2YWx1ZSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIDxhbnk+IHZhbHVlO1xuXHRcdFx0fSxcblx0XHRcdGZ1bmN0aW9uIChlcnJvcikge1xuXHRcdFx0XHRpZiAodGFzay5fc3RhdGUgPT09IENhbmNlbGVkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChvblJlamVjdGVkKSB7XG5cdFx0XHRcdFx0cmV0dXJuIG9uUmVqZWN0ZWQoZXJyb3IpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRocm93IGVycm9yO1xuXHRcdFx0fVxuXHRcdCk7XG5cblx0XHR0YXNrLmNhbmNlbGVyID0gKCkgPT4ge1xuXHRcdFx0Ly8gSWYgdGFzaydzIHBhcmVudCAodGhpcykgaGFzbid0IGJlZW4gcmVzb2x2ZWQsIGNhbmNlbCBpdDsgZG93bndhcmQgcHJvcGFnYXRpb24gd2lsbCBzdGFydCBhdCB0aGUgZmlyc3Rcblx0XHRcdC8vIHVucmVzb2x2ZWQgcGFyZW50XG5cdFx0XHRpZiAodGhpcy5fc3RhdGUgPT09IFN0YXRlLlBlbmRpbmcpIHtcblx0XHRcdFx0dGhpcy5jYW5jZWwoKTtcblx0XHRcdH1cblx0XHRcdC8vIElmIHRhc2sncyBwYXJlbnQgaGFzIGJlZW4gcmVzb2x2ZWQsIHByb3BhZ2F0ZSBjYW5jZWxhdGlvbiB0byB0aGUgdGFzaydzIGRlc2NlbmRhbnRzXG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0dGFzay5fY2FuY2VsKCk7XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdC8vIEtlZXAgdHJhY2sgb2YgY2hpbGQgVGFza3MgZm9yIHByb3BvZ2F0aW5nIGNhbmNlbGF0aW9uIGJhY2sgZG93biB0aGUgY2hhaW5cblx0XHR0aGlzLmNoaWxkcmVuLnB1c2godGFzayk7XG5cblx0XHRyZXR1cm4gdGFzaztcblx0fVxuXG5cdGNhdGNoPFU+KG9uUmVqZWN0ZWQ6IChyZWFzb24/OiBFcnJvcikgPT4gKFUgfCBUaGVuYWJsZTxVPikpOiBUYXNrPFU+IHtcblx0XHRyZXR1cm4gPGFueT4gc3VwZXIuY2F0Y2gob25SZWplY3RlZCk7XG5cdH1cblxufVxuIl19 |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -65,6 +66,6 @@ /** | ||
return DelayedRejection; | ||
})(Promise_1.default); | ||
}(Promise_1.default)); | ||
exports.DelayedRejection = DelayedRejection; | ||
; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FzeW5jL3RpbWluZy50cyJdLCJuYW1lcyI6WyJkZWxheSIsInRpbWVvdXQiLCJEZWxheWVkUmVqZWN0aW9uIiwiRGVsYXllZFJlamVjdGlvbi5jb25zdHJ1Y3RvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztJQUFBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUVqQzs7Ozs7T0FLRztJQUNILGVBQXlCLFlBQW9CO1FBQzVDQSxNQUFNQSxDQUFDQSxVQUFVQSxLQUFRQTtZQUN4QixNQUFNLENBQUMsSUFBSSxpQkFBTyxDQUFDLFVBQVUsT0FBTztnQkFDbkMsVUFBVSxDQUFDO29CQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDaEIsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ2xCLENBQUMsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDQTtJQUNIQSxDQUFDQTtJQVJlLGFBQUssUUFRcEIsQ0FBQTtJQU1EOzs7Ozs7T0FNRztJQUNILGlCQUEyQixZQUFvQixFQUFFLE1BQWE7UUFDN0RDLElBQU1BLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBLEdBQUdBLEVBQUVBLENBQUNBO1FBQ3pCQSxNQUFNQSxDQUFDQSxVQUFVQSxLQUFRQTtZQUN4QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsWUFBWSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBSSxNQUFNLENBQUMsQ0FBQztZQUNsQyxDQUFDO1lBQ0QsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxDQUFJLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQ0E7SUFDSEEsQ0FBQ0E7SUFSZSxlQUFPLFVBUXRCLENBQUE7SUFFRDs7O09BR0c7SUFDSDtRQUFzQ0Msb0NBQVlBO1FBQ2pEQTs7O1dBR0dBO1FBQ0hBLDBCQUFZQSxZQUFvQkEsRUFBRUEsTUFBY0E7WUFDL0NDLGtCQUFNQSxVQUFVQSxPQUFPQSxFQUFFQSxNQUFNQTtnQkFDOUIsVUFBVSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ2xGLENBQUMsQ0FBQ0EsQ0FBQ0E7UUFDSkEsQ0FBQ0E7UUFDRkQsdUJBQUNBO0lBQURBLENBQUNBLEFBVkQsRUFBc0MsaUJBQU8sRUFVNUM7SUFWWSx3QkFBZ0IsbUJBVTVCLENBQUE7SUFBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vUHJvbWlzZSc7XG5cbi8qKlxuICogVXNlZCBmb3IgZGVsYXlpbmcgYSBQcm9taXNlIGNoYWluIGZvciBhIHNwZWNpZmljIG51bWJlciBvZiBtaWxsaXNlY29uZHMuXG4gKlxuICogQHBhcmFtIG1pbGxpc2Vjb25kcyB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byBkZWxheVxuICogQHJldHVybiB7ZnVuY3Rpb24oVCk6IFByb21pc2U8VD59IGEgZnVuY3Rpb24gcHJvZHVjaW5nIGEgcHJvbWlzZSB0aGF0IGV2ZW50dWFsbHkgcmV0dXJucyB0aGUgdmFsdWUgcGFzc2VkIHRvIGl0OyB1c2FibGUgd2l0aCBUaGVuYWJsZS50aGVuKClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlbGF5PFQ+KG1pbGxpc2Vjb25kczogbnVtYmVyKTogSWRlbnRpdHk8VD4ge1xuXHRyZXR1cm4gZnVuY3Rpb24gKHZhbHVlOiBUKTogUHJvbWlzZTxUPiB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0cmVzb2x2ZSh2YWx1ZSk7XG5cdFx0XHR9LCBtaWxsaXNlY29uZHMpO1xuXHRcdH0pO1xuXHR9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5PFQ+IHtcblx0KHZhbHVlOiBUKTogUHJvbWlzZTxUPjtcbn1cblxuLyoqXG4gKiBSZWplY3QgYSBwcm9taXNlIGNoYWluIGlmIGEgcmVzdWx0IGhhc24ndCBiZWVuIGZvdW5kIGJlZm9yZSB0aGUgdGltZW91dFxuICpcbiAqIEBwYXJhbSBtaWxsaXNlY29uZHMgYWZ0ZXIgdGhpcyBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIGEgcmVqZWN0aW9uIHdpbGwgYmUgcmV0dXJuZWRcbiAqIEBwYXJhbSByZWFzb24gVGhlIHJlYXNvbiBmb3IgdGhlIHJlamVjdGlvblxuICogQHJldHVybiB7ZnVuY3Rpb24oVCk6IFByb21pc2U8VD59IGEgZnVuY3Rpb24gdGhhdCBwcm9kdWNlcyBhIHByb21pc2UgdGhhdCBpcyByZWplY3RlZCBvciByZXNvbHZlZCBiYXNlZCBvbiB5b3VyIHRpbWVvdXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRpbWVvdXQ8VD4obWlsbGlzZWNvbmRzOiBudW1iZXIsIHJlYXNvbjogRXJyb3IpOiBJZGVudGl0eTxUPiB7XG5cdGNvbnN0IHN0YXJ0ID0gRGF0ZS5ub3coKTtcblx0cmV0dXJuIGZ1bmN0aW9uICh2YWx1ZTogVCk6IFByb21pc2U8VD4ge1xuXHRcdGlmIChEYXRlLm5vdygpIC0gbWlsbGlzZWNvbmRzID4gc3RhcnQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdDxUPihyZWFzb24pO1xuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlPFQ+KHZhbHVlKTtcblx0fTtcbn1cblxuLyoqXG4gKiBBIFByb21pc2UgdGhhdCB3aWxsIHJlamVjdCBpdHNlbGYgYXV0b21hdGljYWxseSBhZnRlciBhIHRpbWUuXG4gKiBVc2VmdWwgZm9yIGNvbWJpbmluZyB3aXRoIG90aGVyIHByb21pc2VzIGluIFByb21pc2UucmFjZS5cbiAqL1xuZXhwb3J0IGNsYXNzIERlbGF5ZWRSZWplY3Rpb24gZXh0ZW5kcyBQcm9taXNlPGFueT4ge1xuXHQvKipcblx0ICogQHBhcmFtIG1pbGxpc2Vjb25kcyB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGJlZm9yZSB0cmlnZ2VyaW5nIGEgcmVqZWN0aW9uXG5cdCAqIEBwYXJhbSByZWFzb24gdGhlIHJlYXNvbiBmb3IgdGhlIHJlamVjdGlvblxuXHQgKi9cblx0Y29uc3RydWN0b3IobWlsbGlzZWNvbmRzOiBudW1iZXIsIHJlYXNvbj86IEVycm9yKSB7XG5cdFx0c3VwZXIoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuXHRcdFx0c2V0VGltZW91dChyZWFzb24gPyByZWplY3QuYmluZCh0aGlzLCByZWFzb24pIDogcmVqZWN0LmJpbmQodGhpcyksIG1pbGxpc2Vjb25kcyk7XG5cdFx0fSk7XG5cdH1cbn07XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FzeW5jL3RpbWluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztJQUFBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUVqQzs7Ozs7T0FLRztJQUNILGVBQXlCLFlBQW9CO1FBQzVDLE1BQU0sQ0FBQyxVQUFVLEtBQVE7WUFDeEIsTUFBTSxDQUFDLElBQUksaUJBQU8sQ0FBQyxVQUFVLE9BQU87Z0JBQ25DLFVBQVUsQ0FBQztvQkFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2hCLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUNsQixDQUFDLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQztJQUNILENBQUM7SUFSZSxhQUFLLFFBUXBCLENBQUE7SUFNRDs7Ozs7O09BTUc7SUFDSCxpQkFBMkIsWUFBb0IsRUFBRSxNQUFhO1FBQzdELElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN6QixNQUFNLENBQUMsVUFBVSxLQUFRO1lBQ3hCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxZQUFZLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDdkMsTUFBTSxDQUFDLGlCQUFPLENBQUMsTUFBTSxDQUFJLE1BQU0sQ0FBQyxDQUFDO1lBQ2xDLENBQUM7WUFDRCxNQUFNLENBQUMsaUJBQU8sQ0FBQyxPQUFPLENBQUksS0FBSyxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDO0lBQ0gsQ0FBQztJQVJlLGVBQU8sVUFRdEIsQ0FBQTtJQUVEOzs7T0FHRztJQUNIO1FBQXNDLG9DQUFZO1FBQ2pEOzs7V0FHRztRQUNILDBCQUFZLFlBQW9CLEVBQUUsTUFBYztZQUMvQyxrQkFBTSxVQUFVLE9BQU8sRUFBRSxNQUFNO2dCQUM5QixVQUFVLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDbEYsQ0FBQyxDQUFDLENBQUM7UUFDSixDQUFDO1FBQ0YsdUJBQUM7SUFBRCxDQUFDLEFBVkQsQ0FBc0MsaUJBQU8sR0FVNUM7SUFWWSx3QkFBZ0IsbUJBVTVCLENBQUE7SUFBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vUHJvbWlzZSc7XG5cbi8qKlxuICogVXNlZCBmb3IgZGVsYXlpbmcgYSBQcm9taXNlIGNoYWluIGZvciBhIHNwZWNpZmljIG51bWJlciBvZiBtaWxsaXNlY29uZHMuXG4gKlxuICogQHBhcmFtIG1pbGxpc2Vjb25kcyB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byBkZWxheVxuICogQHJldHVybiB7ZnVuY3Rpb24oVCk6IFByb21pc2U8VD59IGEgZnVuY3Rpb24gcHJvZHVjaW5nIGEgcHJvbWlzZSB0aGF0IGV2ZW50dWFsbHkgcmV0dXJucyB0aGUgdmFsdWUgcGFzc2VkIHRvIGl0OyB1c2FibGUgd2l0aCBUaGVuYWJsZS50aGVuKClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlbGF5PFQ+KG1pbGxpc2Vjb25kczogbnVtYmVyKTogSWRlbnRpdHk8VD4ge1xuXHRyZXR1cm4gZnVuY3Rpb24gKHZhbHVlOiBUKTogUHJvbWlzZTxUPiB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0cmVzb2x2ZSh2YWx1ZSk7XG5cdFx0XHR9LCBtaWxsaXNlY29uZHMpO1xuXHRcdH0pO1xuXHR9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aXR5PFQ+IHtcblx0KHZhbHVlOiBUKTogUHJvbWlzZTxUPjtcbn1cblxuLyoqXG4gKiBSZWplY3QgYSBwcm9taXNlIGNoYWluIGlmIGEgcmVzdWx0IGhhc24ndCBiZWVuIGZvdW5kIGJlZm9yZSB0aGUgdGltZW91dFxuICpcbiAqIEBwYXJhbSBtaWxsaXNlY29uZHMgYWZ0ZXIgdGhpcyBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIGEgcmVqZWN0aW9uIHdpbGwgYmUgcmV0dXJuZWRcbiAqIEBwYXJhbSByZWFzb24gVGhlIHJlYXNvbiBmb3IgdGhlIHJlamVjdGlvblxuICogQHJldHVybiB7ZnVuY3Rpb24oVCk6IFByb21pc2U8VD59IGEgZnVuY3Rpb24gdGhhdCBwcm9kdWNlcyBhIHByb21pc2UgdGhhdCBpcyByZWplY3RlZCBvciByZXNvbHZlZCBiYXNlZCBvbiB5b3VyIHRpbWVvdXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRpbWVvdXQ8VD4obWlsbGlzZWNvbmRzOiBudW1iZXIsIHJlYXNvbjogRXJyb3IpOiBJZGVudGl0eTxUPiB7XG5cdGNvbnN0IHN0YXJ0ID0gRGF0ZS5ub3coKTtcblx0cmV0dXJuIGZ1bmN0aW9uICh2YWx1ZTogVCk6IFByb21pc2U8VD4ge1xuXHRcdGlmIChEYXRlLm5vdygpIC0gbWlsbGlzZWNvbmRzID4gc3RhcnQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdDxUPihyZWFzb24pO1xuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlPFQ+KHZhbHVlKTtcblx0fTtcbn1cblxuLyoqXG4gKiBBIFByb21pc2UgdGhhdCB3aWxsIHJlamVjdCBpdHNlbGYgYXV0b21hdGljYWxseSBhZnRlciBhIHRpbWUuXG4gKiBVc2VmdWwgZm9yIGNvbWJpbmluZyB3aXRoIG90aGVyIHByb21pc2VzIGluIFByb21pc2UucmFjZS5cbiAqL1xuZXhwb3J0IGNsYXNzIERlbGF5ZWRSZWplY3Rpb24gZXh0ZW5kcyBQcm9taXNlPGFueT4ge1xuXHQvKipcblx0ICogQHBhcmFtIG1pbGxpc2Vjb25kcyB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGJlZm9yZSB0cmlnZ2VyaW5nIGEgcmVqZWN0aW9uXG5cdCAqIEBwYXJhbSByZWFzb24gdGhlIHJlYXNvbiBmb3IgdGhlIHJlamVjdGlvblxuXHQgKi9cblx0Y29uc3RydWN0b3IobWlsbGlzZWNvbmRzOiBudW1iZXIsIHJlYXNvbj86IEVycm9yKSB7XG5cdFx0c3VwZXIoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuXHRcdFx0c2V0VGltZW91dChyZWFzb24gPyByZWplY3QuYmluZCh0aGlzLCByZWFzb24pIDogcmVqZWN0LmJpbmQodGhpcyksIG1pbGxpc2Vjb25kcyk7XG5cdFx0fSk7XG5cdH1cbn07XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var days = [null, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; | ||
@@ -319,6 +320,6 @@ var isLeapYear = (function () { | ||
return DateObject; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = DateObject; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZU9iamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9EYXRlT2JqZWN0LnRzIl0sIm5hbWVzIjpbImlzTGVhcFllYXIiLCJEYXRlT2JqZWN0IiwiRGF0ZU9iamVjdC5jb25zdHJ1Y3RvciIsIkRhdGVPYmplY3QuY29uc3RydWN0b3IuaXNMZWFwWWVhciIsIkRhdGVPYmplY3QuY29uc3RydWN0b3IuZGF5c0luTW9udGgiLCJEYXRlT2JqZWN0LmNvbnN0cnVjdG9yLnllYXIiLCJEYXRlT2JqZWN0LmNvbnN0cnVjdG9yLm1vbnRoIiwiRGF0ZU9iamVjdC5jb25zdHJ1Y3Rvci5kYXlPZk1vbnRoIiwiRGF0ZU9iamVjdC5jb25zdHJ1Y3Rvci5ob3VycyIsIkRhdGVPYmplY3QuY29uc3RydWN0b3IubWludXRlcyIsIkRhdGVPYmplY3QuY29uc3RydWN0b3Iuc2Vjb25kcyIsIkRhdGVPYmplY3QuY29uc3RydWN0b3IubWlsbGlzZWNvbmRzIiwiRGF0ZU9iamVjdC5jb25zdHJ1Y3Rvci5kYXlPZldlZWsiLCJEYXRlT2JqZWN0LnBhcnNlIiwiRGF0ZU9iamVjdC5ub3ciLCJEYXRlT2JqZWN0LmlzTGVhcFllYXIiLCJEYXRlT2JqZWN0LmRheXNJbk1vbnRoIiwiRGF0ZU9iamVjdC55ZWFyIiwiRGF0ZU9iamVjdC5tb250aCIsIkRhdGVPYmplY3QuZGF5T2ZNb250aCIsIkRhdGVPYmplY3QuaG91cnMiLCJEYXRlT2JqZWN0Lm1pbnV0ZXMiLCJEYXRlT2JqZWN0LnNlY29uZHMiLCJEYXRlT2JqZWN0Lm1pbGxpc2Vjb25kcyIsIkRhdGVPYmplY3QudGltZSIsIkRhdGVPYmplY3QuZGF5T2ZXZWVrIiwiRGF0ZU9iamVjdC50aW1lem9uZU9mZnNldCIsIkRhdGVPYmplY3QuYWRkIiwiRGF0ZU9iamVjdC5jb21wYXJlIiwiRGF0ZU9iamVjdC5jb21wYXJlRGF0ZSIsIkRhdGVPYmplY3QuY29tcGFyZVRpbWUiLCJEYXRlT2JqZWN0LnRvU3RyaW5nIiwiRGF0ZU9iamVjdC50b0RhdGVTdHJpbmciLCJEYXRlT2JqZWN0LnRvVGltZVN0cmluZyIsIkRhdGVPYmplY3QudG9Mb2NhbGVTdHJpbmciLCJEYXRlT2JqZWN0LnRvTG9jYWxlRGF0ZVN0cmluZyIsIkRhdGVPYmplY3QudG9Mb2NhbGVUaW1lU3RyaW5nIiwiRGF0ZU9iamVjdC50b0lTT1N0cmluZyIsIkRhdGVPYmplY3QudG9KU09OIiwiRGF0ZU9iamVjdC52YWx1ZU9mIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQXNDQSxJQUFNLElBQUksR0FBRyxDQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBRSxDQUFDO0lBRXRFLElBQU0sVUFBVSxHQUFHLENBQUM7UUFDbkIsSUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixvQkFBb0IsSUFBWTtZQUMvQkEsSUFBSUEsQ0FBQ0EsV0FBV0EsQ0FBQ0EsSUFBSUEsRUFBRUEsQ0FBQ0EsRUFBRUEsRUFBRUEsQ0FBQ0EsQ0FBQ0E7WUFDOUJBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLE9BQU9BLEVBQUVBLEtBQUtBLEVBQUVBLENBQUNBO1FBQzlCQSxDQUFDQTtRQUNELE1BQU0sQ0FBQyxVQUFVLENBQUM7SUFDbkIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUVMLElBQU0sY0FBYyxHQUFHLENBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsY0FBYyxDQUFFLENBQUM7SUFDcEcsSUFBTSxhQUFhLEdBQWlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFO1FBQ3ZELElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7UUFDdkIsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtRQUM1QixZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7UUFDMUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtRQUNoQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO1FBQzFCLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7UUFDaEMsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtLQUM1QixDQUFDLENBQUM7SUFFSDtRQWlCQ0Msb0JBQVlBLEtBQVdBO1lBQ3RCQyxJQUFJQSxLQUFXQSxDQUFDQTtZQUNoQkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsU0FBU0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ3ZCQSxLQUFLQSxHQUFHQSxJQUFJQSxJQUFJQSxFQUFFQSxDQUFDQTtZQUNwQkEsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsS0FBS0EsWUFBWUEsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ2hDQSxLQUFLQSxHQUFHQSxJQUFJQSxJQUFJQSxDQUFDQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtZQUMxQkEsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsT0FBT0EsS0FBS0EsS0FBS0EsUUFBUUEsSUFBSUEsT0FBT0EsS0FBS0EsS0FBS0EsUUFBUUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ2pFQSxLQUFLQSxHQUFHQSxJQUFJQSxJQUFJQSxDQUFPQSxLQUFLQSxDQUFDQSxDQUFDQTtZQUMvQkEsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7Z0JBQ0xBLEtBQUtBLEdBQUdBLElBQUlBLElBQUlBLENBQ2ZBLEtBQUtBLENBQUNBLElBQUlBLEVBQ1ZBLEtBQUtBLENBQUNBLEtBQUtBLEdBQUdBLENBQUNBLEVBQ2ZBLEtBQUtBLENBQUNBLFVBQVVBLElBQUlBLENBQUNBLEVBQ3JCQSxLQUFLQSxDQUFDQSxLQUFLQSxJQUFJQSxDQUFDQSxFQUNoQkEsS0FBS0EsQ0FBQ0EsT0FBT0EsSUFBSUEsQ0FBQ0EsRUFDbEJBLEtBQUtBLENBQUNBLE9BQU9BLElBQUlBLENBQUNBLEVBQ2xCQSxLQUFLQSxDQUFDQSxZQUFZQSxJQUFJQSxDQUFDQSxDQUN2QkEsQ0FBQ0E7WUFDSEEsQ0FBQ0E7WUFFREEsTUFBTUEsQ0FBQ0EsY0FBY0EsQ0FBQ0EsSUFBSUEsRUFBRUEsT0FBT0EsRUFBRUE7Z0JBQ3BDQSxZQUFZQSxFQUFFQSxJQUFJQTtnQkFDbEJBLFVBQVVBLEVBQUVBLEtBQUtBO2dCQUNqQkEsS0FBS0EsRUFBRUEsS0FBS0E7Z0JBQ1pBLFFBQVFBLEVBQUVBLElBQUlBO2FBQ2RBLENBQUNBLENBQUNBO1lBRUhBLElBQU1BLElBQUlBLEdBQUdBLElBQUlBLENBQUNBO1lBQ2xCQSxNQUFNQSxDQUFDQSxjQUFjQSxDQUFDQSxJQUFJQSxFQUFFQSxLQUFLQSxFQUFFQTtnQkFDbENBLEtBQUtBLEVBQUVBO29CQUNOQSxJQUFJQSxVQUFVQTt3QkFDYkMsTUFBTUEsQ0FBQ0EsVUFBVUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7b0JBQzlCQSxDQUFDQTtvQkFDREQsSUFBSUEsV0FBV0E7d0JBQ2RFLElBQU1BLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBO3dCQUV6QkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsS0FBS0EsS0FBS0EsQ0FBQ0EsSUFBSUEsSUFBSUEsQ0FBQ0EsVUFBVUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7NEJBQ3BDQSxNQUFNQSxDQUFDQSxFQUFFQSxDQUFDQTt3QkFDWEEsQ0FBQ0E7d0JBQ0RBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO29CQUNwQkEsQ0FBQ0E7b0JBRURGLElBQUlBLElBQUlBO3dCQUNQRyxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxjQUFjQSxFQUFFQSxDQUFDQTtvQkFDcENBLENBQUNBO29CQUNESCxJQUFJQSxJQUFJQSxDQUFDQSxJQUFZQTt3QkFDcEJHLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGNBQWNBLENBQUNBLElBQUlBLENBQUNBLENBQUNBO29CQUNqQ0EsQ0FBQ0E7b0JBRURILElBQUlBLEtBQUtBO3dCQUNSSSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxXQUFXQSxFQUFFQSxHQUFHQSxDQUFDQSxDQUFDQTtvQkFDckNBLENBQUNBO29CQUNESixJQUFJQSxLQUFLQSxDQUFDQSxLQUFhQTt3QkFDdEJJLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFdBQVdBLENBQUNBLEtBQUtBLEdBQUdBLENBQUNBLENBQUNBLENBQUNBO29CQUNuQ0EsQ0FBQ0E7b0JBRURKLElBQUlBLFVBQVVBO3dCQUNiSyxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxVQUFVQSxFQUFFQSxDQUFDQTtvQkFDaENBLENBQUNBO29CQUNETCxJQUFJQSxVQUFVQSxDQUFDQSxHQUFXQTt3QkFDekJLLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFVBQVVBLENBQUNBLEdBQUdBLENBQUNBLENBQUNBO29CQUM1QkEsQ0FBQ0E7b0JBRURMLElBQUlBLEtBQUtBO3dCQUNSTSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxXQUFXQSxFQUFFQSxDQUFDQTtvQkFDakNBLENBQUNBO29CQUNETixJQUFJQSxLQUFLQSxDQUFDQSxLQUFhQTt3QkFDdEJNLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFdBQVdBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO29CQUMvQkEsQ0FBQ0E7b0JBRUROLElBQUlBLE9BQU9BO3dCQUNWTyxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxhQUFhQSxFQUFFQSxDQUFDQTtvQkFDbkNBLENBQUNBO29CQUNEUCxJQUFJQSxPQUFPQSxDQUFDQSxPQUFlQTt3QkFDMUJPLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGFBQWFBLENBQUNBLE9BQU9BLENBQUNBLENBQUNBO29CQUNuQ0EsQ0FBQ0E7b0JBRURQLElBQUlBLE9BQU9BO3dCQUNWUSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxhQUFhQSxFQUFFQSxDQUFDQTtvQkFDbkNBLENBQUNBO29CQUNEUixJQUFJQSxPQUFPQSxDQUFDQSxPQUFlQTt3QkFDMUJRLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGFBQWFBLENBQUNBLE9BQU9BLENBQUNBLENBQUNBO29CQUNuQ0EsQ0FBQ0E7b0JBRURSLElBQUlBLFlBQVlBO3dCQUNmUyxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxrQkFBa0JBLEVBQUVBLENBQUNBO29CQUN4Q0EsQ0FBQ0E7b0JBQ0RULElBQUlBLFlBQVlBLENBQUNBLFlBQW9CQTt3QkFDcENTLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGtCQUFrQkEsQ0FBQ0EsWUFBWUEsQ0FBQ0EsQ0FBQ0E7b0JBQzdDQSxDQUFDQTtvQkFFRFQsSUFBSUEsU0FBU0E7d0JBQ1pVLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFNBQVNBLEVBQUVBLENBQUNBO29CQUMvQkEsQ0FBQ0E7b0JBRURWLFFBQVFBLEVBQUVBO3dCQUNULE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNqQyxDQUFDO2lCQUNEQTtnQkFDREEsVUFBVUEsRUFBRUEsSUFBSUE7YUFDaEJBLENBQUNBLENBQUNBO1FBQ0pBLENBQUNBO1FBeEhNRCxnQkFBS0EsR0FBWkEsVUFBYUEsTUFBY0E7WUFDMUJZLE1BQU1BLENBQUNBLElBQUlBLFVBQVVBLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO1FBQzNDQSxDQUFDQTtRQUVNWixjQUFHQSxHQUFWQTtZQUNDYSxNQUFNQSxDQUFDQSxJQUFJQSxVQUFVQSxDQUFDQSxJQUFJQSxDQUFDQSxHQUFHQSxFQUFFQSxDQUFDQSxDQUFDQTtRQUNuQ0EsQ0FBQ0E7UUFvSERiLHNCQUFJQSxrQ0FBVUE7aUJBQWRBO2dCQUNDYyxNQUFNQSxDQUFDQSxVQUFVQSxDQUFDQSxJQUFJQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUM5QkEsQ0FBQ0E7OztXQUFBZDtRQUVEQSxzQkFBSUEsbUNBQVdBO2lCQUFmQTtnQkFDQ2UsSUFBTUEsS0FBS0EsR0FBR0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0E7Z0JBRXpCQSxFQUFFQSxDQUFDQSxDQUFDQSxLQUFLQSxLQUFLQSxDQUFDQSxJQUFJQSxJQUFJQSxDQUFDQSxVQUFVQSxDQUFDQSxDQUFDQSxDQUFDQTtvQkFDcENBLE1BQU1BLENBQUNBLEVBQUVBLENBQUNBO2dCQUNYQSxDQUFDQTtnQkFDREEsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7WUFDcEJBLENBQUNBOzs7V0FBQWY7UUFFREEsc0JBQUlBLDRCQUFJQTtpQkFBUkE7Z0JBQ0NnQixNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxXQUFXQSxFQUFFQSxDQUFDQTtZQUNqQ0EsQ0FBQ0E7aUJBQ0RoQixVQUFTQSxJQUFZQTtnQkFDcEJnQixJQUFNQSxVQUFVQSxHQUFHQSxJQUFJQSxDQUFDQSxVQUFVQSxDQUFDQTtnQkFFbkNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFdBQVdBLENBQUNBLElBQUlBLENBQUNBLENBQUNBO2dCQUU3QkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsVUFBVUEsR0FBR0EsVUFBVUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7b0JBQ2xDQSxJQUFJQSxDQUFDQSxVQUFVQSxHQUFHQSxDQUFDQSxDQUFDQTtnQkFDckJBLENBQUNBO1lBQ0ZBLENBQUNBOzs7V0FUQWhCO1FBV0RBLHNCQUFJQSw2QkFBS0E7aUJBQVRBO2dCQUNDaUIsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsUUFBUUEsRUFBRUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7WUFDbENBLENBQUNBO2lCQUNEakIsVUFBVUEsS0FBYUE7Z0JBQ3RCaUIsSUFBTUEsVUFBVUEsR0FBR0EsSUFBSUEsQ0FBQ0EsVUFBVUEsQ0FBQ0E7Z0JBRW5DQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxRQUFRQSxDQUFDQSxLQUFLQSxHQUFHQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFFL0JBLEVBQUVBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLFVBQVVBLEdBQUdBLFVBQVVBLENBQUNBLENBQUNBLENBQUNBO29CQUNsQ0EsSUFBSUEsQ0FBQ0EsVUFBVUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ3JCQSxDQUFDQTtZQUNGQSxDQUFDQTs7O1dBVEFqQjtRQVdEQSxzQkFBSUEsa0NBQVVBO2lCQUFkQTtnQkFDQ2tCLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE9BQU9BLEVBQUVBLENBQUNBO1lBQzdCQSxDQUFDQTtpQkFDRGxCLFVBQWVBLEdBQVdBO2dCQUN6QmtCLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE9BQU9BLENBQUNBLEdBQUdBLENBQUNBLENBQUNBO1lBQ3pCQSxDQUFDQTs7O1dBSEFsQjtRQUtEQSxzQkFBSUEsNkJBQUtBO2lCQUFUQTtnQkFDQ21CLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFFBQVFBLEVBQUVBLENBQUNBO1lBQzlCQSxDQUFDQTtpQkFDRG5CLFVBQVVBLEtBQWFBO2dCQUN0Qm1CLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFFBQVFBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO1lBQzVCQSxDQUFDQTs7O1dBSEFuQjtRQUtEQSxzQkFBSUEsK0JBQU9BO2lCQUFYQTtnQkFDQ29CLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFVBQVVBLEVBQUVBLENBQUNBO1lBQ2hDQSxDQUFDQTtpQkFDRHBCLFVBQVlBLE9BQWVBO2dCQUMxQm9CLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFVBQVVBLENBQUNBLE9BQU9BLENBQUNBLENBQUNBO1lBQ2hDQSxDQUFDQTs7O1dBSEFwQjtRQUtEQSxzQkFBSUEsK0JBQU9BO2lCQUFYQTtnQkFDQ3FCLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFVBQVVBLEVBQUVBLENBQUNBO1lBQ2hDQSxDQUFDQTtpQkFDRHJCLFVBQVlBLE9BQWVBO2dCQUMxQnFCLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFVBQVVBLENBQUNBLE9BQU9BLENBQUNBLENBQUNBO1lBQ2hDQSxDQUFDQTs7O1dBSEFyQjtRQUtEQSxzQkFBSUEsb0NBQVlBO2lCQUFoQkE7Z0JBQ0NzQixNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxlQUFlQSxFQUFFQSxDQUFDQTtZQUNyQ0EsQ0FBQ0E7aUJBQ0R0QixVQUFpQkEsWUFBb0JBO2dCQUNwQ3NCLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGVBQWVBLENBQUNBLFlBQVlBLENBQUNBLENBQUNBO1lBQzFDQSxDQUFDQTs7O1dBSEF0QjtRQUtEQSxzQkFBSUEsNEJBQUlBO2lCQUFSQTtnQkFDQ3VCLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE9BQU9BLEVBQUVBLENBQUNBO1lBQzdCQSxDQUFDQTtpQkFDRHZCLFVBQVNBLElBQVlBO2dCQUNwQnVCLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE9BQU9BLENBQUNBLElBQUlBLENBQUNBLENBQUNBO1lBQzFCQSxDQUFDQTs7O1dBSEF2QjtRQUtEQSxzQkFBSUEsaUNBQVNBO2lCQUFiQTtnQkFDQ3dCLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE1BQU1BLEVBQUVBLENBQUNBO1lBQzVCQSxDQUFDQTs7O1dBQUF4QjtRQUNEQSxzQkFBSUEsc0NBQWNBO2lCQUFsQkE7Z0JBQ0N5QixNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxpQkFBaUJBLEVBQUVBLENBQUNBO1lBQ3ZDQSxDQUFDQTs7O1dBQUF6QjtRQUlEQSx3QkFBR0EsR0FBSEEsVUFBSUEsS0FBVUE7WUFBZDBCLGlCQThCQ0E7WUE3QkFBLElBQU1BLE1BQU1BLEdBQUdBLElBQUlBLFVBQVVBLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLENBQUNBO1lBRXpDQSxFQUFFQSxDQUFDQSxDQUFDQSxPQUFPQSxLQUFLQSxLQUFLQSxRQUFRQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDL0JBLE1BQU1BLENBQUNBLElBQUlBLElBQUlBLEtBQUtBLENBQUNBO1lBQ3RCQSxDQUFDQTtZQUNEQSxJQUFJQSxDQUFDQSxDQUFDQTtnQkFDTEEsdUVBQXVFQTtnQkFDdkVBLGlEQUFpREE7Z0JBQ2pEQSxjQUFjQSxDQUFDQSxPQUFPQSxDQUFDQSxVQUFDQSxRQUFnQkE7b0JBQ3ZDQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQSxRQUFRQSxJQUFJQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTt3QkFDMUJBLE1BQU1BLENBQUNBO29CQUNSQSxDQUFDQTtvQkFFREEsSUFBTUEsVUFBVUEsR0FBR0EsYUFBYUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsQ0FBQ0E7b0JBQ3BDQSxNQUFNQSxDQUFDQSxLQUFNQSxDQUFDQSxTQUFNQSxVQUFVQSxDQUFFQSxDQUFDQSxDQUNoQ0EsS0FBSUEsQ0FBQ0EsS0FBTUEsQ0FBQ0EsU0FBTUEsVUFBVUEsQ0FBRUEsQ0FBQ0EsRUFBRUEsR0FBR0EsS0FBS0EsQ0FBQ0EsUUFBUUEsQ0FBQ0EsQ0FDMURBLENBQUNBO29CQUVGQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxRQUFRQSxLQUFLQSxPQUFPQSxJQUFJQSxRQUFRQSxLQUFLQSxRQUFRQSxDQUFDQTt3QkFDbERBLE1BQU1BLENBQUNBLFVBQVVBLEdBQUdBLEtBQUlBLENBQUNBLFVBQVVBLENBQUNBLENBQUNBLENBQUNBO3dCQUN0Q0Esa0ZBQWtGQTt3QkFDbEZBLGlGQUFpRkE7d0JBQ2pGQSxrQ0FBa0NBO3dCQUNsQ0EsTUFBTUEsQ0FBQ0EsVUFBVUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7b0JBQ3ZCQSxDQUFDQTtnQkFDRkEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDSkEsQ0FBQ0E7WUFFREEsTUFBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0E7UUFDZkEsQ0FBQ0E7UUFFRDFCLDRCQUFPQSxHQUFQQSxVQUFRQSxLQUFpQkE7WUFDeEIyQixJQUFNQSxNQUFNQSxHQUFHQSxJQUFJQSxDQUFDQSxJQUFJQSxHQUFHQSxLQUFLQSxDQUFDQSxJQUFJQSxDQUFDQTtZQUN0Q0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsTUFBTUEsR0FBR0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ2hCQSxNQUFNQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNWQSxDQUFDQTtZQUNEQSxFQUFFQSxDQUFDQSxDQUFDQSxNQUFNQSxHQUFHQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDaEJBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1lBQ1hBLENBQUNBO1lBQ0RBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO1FBQ1ZBLENBQUNBO1FBRUQzQixnQ0FBV0EsR0FBWEEsVUFBWUEsS0FBYUE7WUFDeEI0QixJQUFNQSxJQUFJQSxHQUFHQSxJQUFJQSxVQUFVQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUNsQ0EsSUFBTUEsS0FBS0EsR0FBR0EsSUFBSUEsVUFBVUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7WUFFcENBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFFBQVFBLENBQUNBLENBQUNBLEVBQUVBLENBQUNBLEVBQUVBLENBQUNBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBO1lBQ2hDQSxLQUFLQSxDQUFDQSxLQUFLQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQSxFQUFFQSxDQUFDQSxFQUFFQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUVqQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsT0FBT0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7UUFDNUJBLENBQUNBO1FBRUQ1QixnQ0FBV0EsR0FBWEEsVUFBWUEsS0FBYUE7WUFDeEI2QixJQUFNQSxJQUFJQSxHQUFHQSxJQUFJQSxVQUFVQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUNsQ0EsSUFBTUEsS0FBS0EsR0FBR0EsSUFBSUEsVUFBVUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7WUFFcENBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFdBQVdBLENBQUNBLENBQUNBLEVBQUVBLENBQUNBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBO1lBQ2hDQSxLQUFLQSxDQUFDQSxLQUFLQSxDQUFDQSxXQUFXQSxDQUFDQSxDQUFDQSxFQUFFQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUVqQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsT0FBT0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7UUFDNUJBLENBQUNBO1FBRUQ3Qiw2QkFBUUEsR0FBUkE7WUFDQzhCLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFFBQVFBLEVBQUVBLENBQUNBO1FBQzlCQSxDQUFDQTtRQUNEOUIsaUNBQVlBLEdBQVpBO1lBQ0MrQixNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxZQUFZQSxFQUFFQSxDQUFDQTtRQUNsQ0EsQ0FBQ0E7UUFDRC9CLGlDQUFZQSxHQUFaQTtZQUNDZ0MsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsWUFBWUEsRUFBRUEsQ0FBQ0E7UUFDbENBLENBQUNBO1FBQ0RoQyxtQ0FBY0EsR0FBZEE7WUFDQ2lDLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGNBQWNBLEVBQUVBLENBQUNBO1FBQ3BDQSxDQUFDQTtRQUNEakMsdUNBQWtCQSxHQUFsQkE7WUFDQ2tDLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLGtCQUFrQkEsRUFBRUEsQ0FBQ0E7UUFDeENBLENBQUNBO1FBQ0RsQyx1Q0FBa0JBLEdBQWxCQTtZQUNDbUMsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0Esa0JBQWtCQSxFQUFFQSxDQUFDQTtRQUN4Q0EsQ0FBQ0E7UUFDRG5DLGdDQUFXQSxHQUFYQTtZQUNDb0MsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsV0FBV0EsRUFBRUEsQ0FBQ0E7UUFDakNBLENBQUNBO1FBQ0RwQywyQkFBTUEsR0FBTkEsVUFBT0EsR0FBU0E7WUFDZnFDLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE1BQU1BLENBQUNBLEdBQUdBLENBQUNBLENBQUNBO1FBQy9CQSxDQUFDQTtRQUNEckMsNEJBQU9BLEdBQVBBO1lBQ0NzQyxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxPQUFPQSxFQUFFQSxDQUFDQTtRQUM3QkEsQ0FBQ0E7UUFDRnRDLGlCQUFDQTtJQUFEQSxDQUFDQSxBQS9TRCxJQStTQztJQS9TRDtnQ0ErU0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhc2ggfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEt3QXJncyB7XG5cdGRheU9mTW9udGg/OiBudW1iZXI7XG5cdGhvdXJzPzogbnVtYmVyO1xuXHRtaWxsaXNlY29uZHM/OiBudW1iZXI7XG5cdG1pbnV0ZXM/OiBudW1iZXI7XG5cdG1vbnRoOiBudW1iZXI7XG5cdHNlY29uZHM/OiBudW1iZXI7XG5cdHllYXI6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcGVyYXRpb25Ld0FyZ3Mge1xuXHRkYXlzPzogbnVtYmVyO1xuXHRob3Vycz86IG51bWJlcjtcblx0bWlsbGlzZWNvbmRzPzogbnVtYmVyO1xuXHRtaW51dGVzPzogbnVtYmVyO1xuXHRtb250aHM/OiBudW1iZXI7XG5cdHNlY29uZHM/OiBudW1iZXI7XG5cdHllYXJzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoZSBwcm9wZXJ0aWVzIG9mIGEgY29tcGxldGUgZGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGVQcm9wZXJ0aWVzIHtcblx0ZGF5T2ZNb250aDogbnVtYmVyO1xuXHRkYXlPZldlZWs6IG51bWJlcjtcblx0ZGF5c0luTW9udGg6IG51bWJlcjtcblx0aG91cnM6IG51bWJlcjtcblx0aXNMZWFwWWVhcjogYm9vbGVhbjtcblx0bWlsbGlzZWNvbmRzOiBudW1iZXI7XG5cdG1pbnV0ZXM6IG51bWJlcjtcblx0bW9udGg6IG51bWJlcjtcblx0c2Vjb25kczogbnVtYmVyO1xuXHR5ZWFyOiBudW1iZXI7XG59XG5cbmNvbnN0IGRheXMgPSBbIG51bGwsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzEgXTtcblxuY29uc3QgaXNMZWFwWWVhciA9IChmdW5jdGlvbiAoKSB7XG5cdGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuXHRmdW5jdGlvbiBpc0xlYXBZZWFyKHllYXI6IG51bWJlcik6IGJvb2xlYW4ge1xuXHRcdGRhdGUuc2V0RnVsbFllYXIoeWVhciwgMSwgMjkpO1xuXHRcdHJldHVybiBkYXRlLmdldERhdGUoKSA9PT0gMjk7XG5cdH1cblx0cmV0dXJuIGlzTGVhcFllYXI7XG59KSgpO1xuXG5jb25zdCBvcGVyYXRpb25PcmRlciA9IFsgJ3llYXJzJywgJ21vbnRocycsICdkYXlzJywgJ2hvdXJzJywgJ21pbnV0ZXMnLCAnc2Vjb25kcycsICdtaWxsaXNlY29uZHMnIF07XG5jb25zdCBvcGVyYXRpb25IYXNoOiBIYXNoPHN0cmluZz4gPSBPYmplY3QuY3JlYXRlKG51bGwsIHtcblx0ZGF5czogeyB2YWx1ZTogJ0RhdGUnIH0sXG5cdGhvdXJzOiB7IHZhbHVlOiAnVVRDSG91cnMnIH0sXG5cdG1pbGxpc2Vjb25kczogeyB2YWx1ZTogJ1VUQ01pbGxpc2Vjb25kcycgfSxcblx0bWludXRlczogeyB2YWx1ZTogJ1VUQ01pbnV0ZXMnIH0sXG5cdG1vbnRoczogeyB2YWx1ZTogJ01vbnRoJyB9LFxuXHRzZWNvbmRzOiB7IHZhbHVlOiAnVVRDU2Vjb25kcycgfSxcblx0eWVhcnM6IHsgdmFsdWU6ICdGdWxsWWVhcicgfVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERhdGVPYmplY3QgaW1wbGVtZW50cyBEYXRlUHJvcGVydGllcyB7XG5cdHN0YXRpYyBwYXJzZShzdHJpbmc6IHN0cmluZyk6IERhdGVPYmplY3Qge1xuXHRcdHJldHVybiBuZXcgRGF0ZU9iamVjdChEYXRlLnBhcnNlKHN0cmluZykpO1xuXHR9XG5cblx0c3RhdGljIG5vdygpOiBEYXRlT2JqZWN0IHtcblx0XHRyZXR1cm4gbmV3IERhdGVPYmplY3QoRGF0ZS5ub3coKSk7XG5cdH1cblxuXHRwcml2YXRlIF9kYXRlOiBEYXRlO1xuXHR1dGM6IERhdGVQcm9wZXJ0aWVzO1xuXG5cdGNvbnN0cnVjdG9yKHZhbHVlOiBudW1iZXIpO1xuXHRjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKTtcblx0Y29uc3RydWN0b3IodmFsdWU6IERhdGUpO1xuXHRjb25zdHJ1Y3Rvcih2YWx1ZTogS3dBcmdzKTtcblx0Y29uc3RydWN0b3IoKTtcblx0Y29uc3RydWN0b3IodmFsdWU/OiBhbnkpIHtcblx0XHRsZXQgX2RhdGU6IERhdGU7XG5cdFx0aWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7XG5cdFx0XHRfZGF0ZSA9IG5ldyBEYXRlKCk7XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuXHRcdFx0X2RhdGUgPSBuZXcgRGF0ZSgrdmFsdWUpO1xuXHRcdH1cblx0XHRlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcblx0XHRcdF9kYXRlID0gbmV3IERhdGUoPGFueT4gdmFsdWUpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdF9kYXRlID0gbmV3IERhdGUoXG5cdFx0XHRcdHZhbHVlLnllYXIsXG5cdFx0XHRcdHZhbHVlLm1vbnRoIC0gMSxcblx0XHRcdFx0dmFsdWUuZGF5T2ZNb250aCB8fCAxLFxuXHRcdFx0XHR2YWx1ZS5ob3VycyB8fCAwLFxuXHRcdFx0XHR2YWx1ZS5taW51dGVzIHx8IDAsXG5cdFx0XHRcdHZhbHVlLnNlY29uZHMgfHwgMCxcblx0XHRcdFx0dmFsdWUubWlsbGlzZWNvbmRzIHx8IDBcblx0XHRcdCk7XG5cdFx0fVxuXG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdfZGF0ZScsIHtcblx0XHRcdGNvbmZpZ3VyYWJsZTogdHJ1ZSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdFx0dmFsdWU6IF9kYXRlLFxuXHRcdFx0d3JpdGFibGU6IHRydWVcblx0XHR9KTtcblxuXHRcdGNvbnN0IHNlbGYgPSB0aGlzO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAndXRjJywge1xuXHRcdFx0dmFsdWU6IHtcblx0XHRcdFx0Z2V0IGlzTGVhcFllYXIoKTogYm9vbGVhbiB7XG5cdFx0XHRcdFx0cmV0dXJuIGlzTGVhcFllYXIodGhpcy55ZWFyKTtcblx0XHRcdFx0fSxcblx0XHRcdFx0Z2V0IGRheXNJbk1vbnRoKCk6IG51bWJlciB7XG5cdFx0XHRcdFx0Y29uc3QgbW9udGggPSB0aGlzLm1vbnRoO1xuXG5cdFx0XHRcdFx0aWYgKG1vbnRoID09PSAyICYmIHRoaXMuaXNMZWFwWWVhcikge1xuXHRcdFx0XHRcdFx0cmV0dXJuIDI5O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gZGF5c1ttb250aF07XG5cdFx0XHRcdH0sXG5cblx0XHRcdFx0Z2V0IHllYXIoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENGdWxsWWVhcigpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgeWVhcih5ZWFyOiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ0Z1bGxZZWFyKHllYXIpO1xuXHRcdFx0XHR9LFxuXG5cdFx0XHRcdGdldCBtb250aCgpOiBudW1iZXIge1xuXHRcdFx0XHRcdHJldHVybiBzZWxmLl9kYXRlLmdldFVUQ01vbnRoKCkgKyAxO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgbW9udGgobW9udGg6IG51bWJlcikge1xuXHRcdFx0XHRcdHNlbGYuX2RhdGUuc2V0VVRDTW9udGgobW9udGggLSAxKTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHRnZXQgZGF5T2ZNb250aCgpOiBudW1iZXIge1xuXHRcdFx0XHRcdHJldHVybiBzZWxmLl9kYXRlLmdldFVUQ0RhdGUoKTtcblx0XHRcdFx0fSxcblx0XHRcdFx0c2V0IGRheU9mTW9udGgoZGF5OiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ0RhdGUoZGF5KTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHRnZXQgaG91cnMoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENIb3VycygpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgaG91cnMoaG91cnM6IG51bWJlcikge1xuXHRcdFx0XHRcdHNlbGYuX2RhdGUuc2V0VVRDSG91cnMoaG91cnMpO1xuXHRcdFx0XHR9LFxuXG5cdFx0XHRcdGdldCBtaW51dGVzKCk6IG51bWJlciB7XG5cdFx0XHRcdFx0cmV0dXJuIHNlbGYuX2RhdGUuZ2V0VVRDTWludXRlcygpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgbWludXRlcyhtaW51dGVzOiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ01pbnV0ZXMobWludXRlcyk7XG5cdFx0XHRcdH0sXG5cblx0XHRcdFx0Z2V0IHNlY29uZHMoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENTZWNvbmRzKCk7XG5cdFx0XHRcdH0sXG5cdFx0XHRcdHNldCBzZWNvbmRzKHNlY29uZHM6IG51bWJlcikge1xuXHRcdFx0XHRcdHNlbGYuX2RhdGUuc2V0VVRDU2Vjb25kcyhzZWNvbmRzKTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHRnZXQgbWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG5cdFx0XHRcdFx0cmV0dXJuIHNlbGYuX2RhdGUuZ2V0VVRDTWlsbGlzZWNvbmRzKCk7XG5cdFx0XHRcdH0sXG5cdFx0XHRcdHNldCBtaWxsaXNlY29uZHMobWlsbGlzZWNvbmRzOiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ01pbGxpc2Vjb25kcyhtaWxsaXNlY29uZHMpO1xuXHRcdFx0XHR9LFxuXG5cdFx0XHRcdGdldCBkYXlPZldlZWsoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENEYXkoKTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHR0b1N0cmluZzogZnVuY3Rpb24gKCk6IHN0cmluZyB7XG5cdFx0XHRcdFx0cmV0dXJuIHNlbGYuX2RhdGUudG9VVENTdHJpbmcoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdGVudW1lcmFibGU6IHRydWVcblx0XHR9KTtcblx0fVxuXG5cdGdldCBpc0xlYXBZZWFyKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBpc0xlYXBZZWFyKHRoaXMueWVhcik7XG5cdH1cblxuXHRnZXQgZGF5c0luTW9udGgoKTogbnVtYmVyIHtcblx0XHRjb25zdCBtb250aCA9IHRoaXMubW9udGg7XG5cblx0XHRpZiAobW9udGggPT09IDIgJiYgdGhpcy5pc0xlYXBZZWFyKSB7XG5cdFx0XHRyZXR1cm4gMjk7XG5cdFx0fVxuXHRcdHJldHVybiBkYXlzW21vbnRoXTtcblx0fVxuXG5cdGdldCB5ZWFyKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0RnVsbFllYXIoKTtcblx0fVxuXHRzZXQgeWVhcih5ZWFyOiBudW1iZXIpIHtcblx0XHRjb25zdCBkYXlPZk1vbnRoID0gdGhpcy5kYXlPZk1vbnRoO1xuXG5cdFx0dGhpcy5fZGF0ZS5zZXRGdWxsWWVhcih5ZWFyKTtcblxuXHRcdGlmICh0aGlzLmRheU9mTW9udGggPCBkYXlPZk1vbnRoKSB7XG5cdFx0XHR0aGlzLmRheU9mTW9udGggPSAwO1xuXHRcdH1cblx0fVxuXG5cdGdldCBtb250aCgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldE1vbnRoKCkgKyAxO1xuXHR9XG5cdHNldCBtb250aChtb250aDogbnVtYmVyKSB7XG5cdFx0Y29uc3QgZGF5T2ZNb250aCA9IHRoaXMuZGF5T2ZNb250aDtcblxuXHRcdHRoaXMuX2RhdGUuc2V0TW9udGgobW9udGggLSAxKTtcblxuXHRcdGlmICh0aGlzLmRheU9mTW9udGggPCBkYXlPZk1vbnRoKSB7XG5cdFx0XHR0aGlzLmRheU9mTW9udGggPSAwO1xuXHRcdH1cblx0fVxuXG5cdGdldCBkYXlPZk1vbnRoKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0RGF0ZSgpO1xuXHR9XG5cdHNldCBkYXlPZk1vbnRoKGRheTogbnVtYmVyKSB7XG5cdFx0dGhpcy5fZGF0ZS5zZXREYXRlKGRheSk7XG5cdH1cblxuXHRnZXQgaG91cnMoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS5nZXRIb3VycygpO1xuXHR9XG5cdHNldCBob3Vycyhob3VyczogbnVtYmVyKSB7XG5cdFx0dGhpcy5fZGF0ZS5zZXRIb3Vycyhob3Vycyk7XG5cdH1cblxuXHRnZXQgbWludXRlcygpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldE1pbnV0ZXMoKTtcblx0fVxuXHRzZXQgbWludXRlcyhtaW51dGVzOiBudW1iZXIpIHtcblx0XHR0aGlzLl9kYXRlLnNldE1pbnV0ZXMobWludXRlcyk7XG5cdH1cblxuXHRnZXQgc2Vjb25kcygpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldFNlY29uZHMoKTtcblx0fVxuXHRzZXQgc2Vjb25kcyhzZWNvbmRzOiBudW1iZXIpIHtcblx0XHR0aGlzLl9kYXRlLnNldFNlY29uZHMoc2Vjb25kcyk7XG5cdH1cblxuXHRnZXQgbWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0TWlsbGlzZWNvbmRzKCk7XG5cdH1cblx0c2V0IG1pbGxpc2Vjb25kcyhtaWxsaXNlY29uZHM6IG51bWJlcikge1xuXHRcdHRoaXMuX2RhdGUuc2V0TWlsbGlzZWNvbmRzKG1pbGxpc2Vjb25kcyk7XG5cdH1cblxuXHRnZXQgdGltZSgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldFRpbWUoKTtcblx0fVxuXHRzZXQgdGltZSh0aW1lOiBudW1iZXIpIHtcblx0XHR0aGlzLl9kYXRlLnNldFRpbWUodGltZSk7XG5cdH1cblxuXHRnZXQgZGF5T2ZXZWVrKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0RGF5KCk7XG5cdH1cblx0Z2V0IHRpbWV6b25lT2Zmc2V0KCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKTtcblx0fVxuXG5cdGFkZCh2YWx1ZTogbnVtYmVyKTogRGF0ZU9iamVjdDtcblx0YWRkKHZhbHVlOiBPcGVyYXRpb25Ld0FyZ3MpOiBEYXRlT2JqZWN0O1xuXHRhZGQodmFsdWU6IGFueSk6IERhdGVPYmplY3Qge1xuXHRcdGNvbnN0IHJlc3VsdCA9IG5ldyBEYXRlT2JqZWN0KHRoaXMudGltZSk7XG5cblx0XHRpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuXHRcdFx0cmVzdWx0LnRpbWUgKz0gdmFsdWU7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0Ly8gUHJvcGVydGllcyBoYXZlIHRvIGJlIGFkZGVkIGluIGEgcGFydGljdWxhciBvcmRlciB0byBwcm9wZXJseSBoYW5kbGVcblx0XHRcdC8vIGRhdGUgb3ZlcnNob290cyBpbiBtb250aCBhbmQgeWVhciBjYWxjdWxhdGlvbnNcblx0XHRcdG9wZXJhdGlvbk9yZGVyLmZvckVhY2goKHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkID0+IHtcblx0XHRcdFx0aWYgKCEocHJvcGVydHkgaW4gdmFsdWUpKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgZGF0ZU1ldGhvZCA9IG9wZXJhdGlvbkhhc2hbcHJvcGVydHldO1xuXHRcdFx0XHQoPGFueT4gcmVzdWx0Ll9kYXRlKVtgc2V0JHtkYXRlTWV0aG9kfWBdKFxuXHRcdFx0XHRcdCg8YW55PiB0aGlzLl9kYXRlKVtgZ2V0JHtkYXRlTWV0aG9kfWBdKCkgKyB2YWx1ZVtwcm9wZXJ0eV1cblx0XHRcdFx0KTtcblxuXHRcdFx0XHRpZiAoKHByb3BlcnR5ID09PSAneWVhcnMnIHx8IHByb3BlcnR5ID09PSAnbW9udGhzJykgJiZcblx0XHRcdFx0XHRyZXN1bHQuZGF5T2ZNb250aCA8IHRoaXMuZGF5T2ZNb250aCkge1xuXHRcdFx0XHRcdC8vIFNldCB0aGUgZGF5IG9mIHRoZSBtb250aCB0byAwIHRvIG1vdmUgdGhlIGRhdGUgdG8gdGhlIGZpcnN0IGRheSBvZiB0aGUgcHJldmlvdXNcblx0XHRcdFx0XHQvLyBtb250aCB0byBmaXggb3ZlcnNob290cyB3aGVuIGFkZGluZyBhIG1vbnRoIGFuZCB0aGUgZGF0ZSBpcyB0aGUgMzFzdCBvciBhZGRpbmdcblx0XHRcdFx0XHQvLyBhIHllYXIgYW5kIHRoZSBkYXRlIGlzIHRoZSAyOXRoXG5cdFx0XHRcdFx0cmVzdWx0LmRheU9mTW9udGggPSAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0Y29tcGFyZSh2YWx1ZTogRGF0ZU9iamVjdCk6IG51bWJlciB7XG5cdFx0Y29uc3QgcmVzdWx0ID0gdGhpcy50aW1lIC0gdmFsdWUudGltZTtcblx0XHRpZiAocmVzdWx0ID4gMCkge1xuXHRcdFx0cmV0dXJuIDE7XG5cdFx0fVxuXHRcdGlmIChyZXN1bHQgPCAwKSB7XG5cdFx0XHRyZXR1cm4gLTE7XG5cdFx0fVxuXHRcdHJldHVybiAwO1xuXHR9XG5cblx0Y29tcGFyZURhdGUodmFsdWU6IEt3QXJncyk6IG51bWJlciB7XG5cdFx0Y29uc3QgbGVmdCA9IG5ldyBEYXRlT2JqZWN0KHRoaXMpO1xuXHRcdGNvbnN0IHJpZ2h0ID0gbmV3IERhdGVPYmplY3QodmFsdWUpO1xuXG5cdFx0bGVmdC5fZGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcblx0XHRyaWdodC5fZGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcblxuXHRcdHJldHVybiBsZWZ0LmNvbXBhcmUocmlnaHQpO1xuXHR9XG5cblx0Y29tcGFyZVRpbWUodmFsdWU6IEt3QXJncyk6IG51bWJlciB7XG5cdFx0Y29uc3QgbGVmdCA9IG5ldyBEYXRlT2JqZWN0KHRoaXMpO1xuXHRcdGNvbnN0IHJpZ2h0ID0gbmV3IERhdGVPYmplY3QodmFsdWUpO1xuXG5cdFx0bGVmdC5fZGF0ZS5zZXRGdWxsWWVhcigwLCAwLCAwKTtcblx0XHRyaWdodC5fZGF0ZS5zZXRGdWxsWWVhcigwLCAwLCAwKTtcblxuXHRcdHJldHVybiBsZWZ0LmNvbXBhcmUocmlnaHQpO1xuXHR9XG5cblx0dG9TdHJpbmcoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS50b1N0cmluZygpO1xuXHR9XG5cdHRvRGF0ZVN0cmluZygpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnRvRGF0ZVN0cmluZygpO1xuXHR9XG5cdHRvVGltZVN0cmluZygpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnRvVGltZVN0cmluZygpO1xuXHR9XG5cdHRvTG9jYWxlU3RyaW5nKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUudG9Mb2NhbGVTdHJpbmcoKTtcblx0fVxuXHR0b0xvY2FsZURhdGVTdHJpbmcoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKTtcblx0fVxuXHR0b0xvY2FsZVRpbWVTdHJpbmcoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS50b0xvY2FsZVRpbWVTdHJpbmcoKTtcblx0fVxuXHR0b0lTT1N0cmluZygpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnRvSVNPU3RyaW5nKCk7XG5cdH1cblx0dG9KU09OKGtleT86IGFueSk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUudG9KU09OKGtleSk7XG5cdH1cblx0dmFsdWVPZigpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnZhbHVlT2YoKTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZU9iamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9EYXRlT2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQXNDQSxJQUFNLElBQUksR0FBRyxDQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBRSxDQUFDO0lBRXRFLElBQU0sVUFBVSxHQUFHLENBQUM7UUFDbkIsSUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixvQkFBb0IsSUFBWTtZQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUIsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDOUIsQ0FBQztRQUNELE1BQU0sQ0FBQyxVQUFVLENBQUM7SUFDbkIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUVMLElBQU0sY0FBYyxHQUFHLENBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsY0FBYyxDQUFFLENBQUM7SUFDcEcsSUFBTSxhQUFhLEdBQWlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFO1FBQ3ZELElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7UUFDdkIsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtRQUM1QixZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7UUFDMUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtRQUNoQyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO1FB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QyxDQUFDO1FBQ0QsbUNBQWMsR0FBZDtZQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BDLENBQUM7UUFDRCx1Q0FBa0IsR0FBbEI7WUFDQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3hDLENBQUM7UUFDRCx1Q0FBa0IsR0FBbEI7WUFDQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3hDLENBQUM7UUFDRCxnQ0FBVyxHQUFYO1lBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakMsQ0FBQztRQUNELDJCQUFNLEdBQU4sVUFBTyxHQUFTO1lBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFDRCw0QkFBTyxHQUFQO1lBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDN0IsQ0FBQztRQUNGLGlCQUFDO0lBQUQsQ0FBQyxBQS9TRCxJQStTQztJQS9TRDtnQ0ErU0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhc2ggfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEt3QXJncyB7XG5cdGRheU9mTW9udGg/OiBudW1iZXI7XG5cdGhvdXJzPzogbnVtYmVyO1xuXHRtaWxsaXNlY29uZHM/OiBudW1iZXI7XG5cdG1pbnV0ZXM/OiBudW1iZXI7XG5cdG1vbnRoOiBudW1iZXI7XG5cdHNlY29uZHM/OiBudW1iZXI7XG5cdHllYXI6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcGVyYXRpb25Ld0FyZ3Mge1xuXHRkYXlzPzogbnVtYmVyO1xuXHRob3Vycz86IG51bWJlcjtcblx0bWlsbGlzZWNvbmRzPzogbnVtYmVyO1xuXHRtaW51dGVzPzogbnVtYmVyO1xuXHRtb250aHM/OiBudW1iZXI7XG5cdHNlY29uZHM/OiBudW1iZXI7XG5cdHllYXJzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoZSBwcm9wZXJ0aWVzIG9mIGEgY29tcGxldGUgZGF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGVQcm9wZXJ0aWVzIHtcblx0ZGF5T2ZNb250aDogbnVtYmVyO1xuXHRkYXlPZldlZWs6IG51bWJlcjtcblx0ZGF5c0luTW9udGg6IG51bWJlcjtcblx0aG91cnM6IG51bWJlcjtcblx0aXNMZWFwWWVhcjogYm9vbGVhbjtcblx0bWlsbGlzZWNvbmRzOiBudW1iZXI7XG5cdG1pbnV0ZXM6IG51bWJlcjtcblx0bW9udGg6IG51bWJlcjtcblx0c2Vjb25kczogbnVtYmVyO1xuXHR5ZWFyOiBudW1iZXI7XG59XG5cbmNvbnN0IGRheXMgPSBbIG51bGwsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzEgXTtcblxuY29uc3QgaXNMZWFwWWVhciA9IChmdW5jdGlvbiAoKSB7XG5cdGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuXHRmdW5jdGlvbiBpc0xlYXBZZWFyKHllYXI6IG51bWJlcik6IGJvb2xlYW4ge1xuXHRcdGRhdGUuc2V0RnVsbFllYXIoeWVhciwgMSwgMjkpO1xuXHRcdHJldHVybiBkYXRlLmdldERhdGUoKSA9PT0gMjk7XG5cdH1cblx0cmV0dXJuIGlzTGVhcFllYXI7XG59KSgpO1xuXG5jb25zdCBvcGVyYXRpb25PcmRlciA9IFsgJ3llYXJzJywgJ21vbnRocycsICdkYXlzJywgJ2hvdXJzJywgJ21pbnV0ZXMnLCAnc2Vjb25kcycsICdtaWxsaXNlY29uZHMnIF07XG5jb25zdCBvcGVyYXRpb25IYXNoOiBIYXNoPHN0cmluZz4gPSBPYmplY3QuY3JlYXRlKG51bGwsIHtcblx0ZGF5czogeyB2YWx1ZTogJ0RhdGUnIH0sXG5cdGhvdXJzOiB7IHZhbHVlOiAnVVRDSG91cnMnIH0sXG5cdG1pbGxpc2Vjb25kczogeyB2YWx1ZTogJ1VUQ01pbGxpc2Vjb25kcycgfSxcblx0bWludXRlczogeyB2YWx1ZTogJ1VUQ01pbnV0ZXMnIH0sXG5cdG1vbnRoczogeyB2YWx1ZTogJ01vbnRoJyB9LFxuXHRzZWNvbmRzOiB7IHZhbHVlOiAnVVRDU2Vjb25kcycgfSxcblx0eWVhcnM6IHsgdmFsdWU6ICdGdWxsWWVhcicgfVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERhdGVPYmplY3QgaW1wbGVtZW50cyBEYXRlUHJvcGVydGllcyB7XG5cdHN0YXRpYyBwYXJzZShzdHJpbmc6IHN0cmluZyk6IERhdGVPYmplY3Qge1xuXHRcdHJldHVybiBuZXcgRGF0ZU9iamVjdChEYXRlLnBhcnNlKHN0cmluZykpO1xuXHR9XG5cblx0c3RhdGljIG5vdygpOiBEYXRlT2JqZWN0IHtcblx0XHRyZXR1cm4gbmV3IERhdGVPYmplY3QoRGF0ZS5ub3coKSk7XG5cdH1cblxuXHRwcml2YXRlIF9kYXRlOiBEYXRlO1xuXHR1dGM6IERhdGVQcm9wZXJ0aWVzO1xuXG5cdGNvbnN0cnVjdG9yKHZhbHVlOiBudW1iZXIpO1xuXHRjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKTtcblx0Y29uc3RydWN0b3IodmFsdWU6IERhdGUpO1xuXHRjb25zdHJ1Y3Rvcih2YWx1ZTogS3dBcmdzKTtcblx0Y29uc3RydWN0b3IoKTtcblx0Y29uc3RydWN0b3IodmFsdWU/OiBhbnkpIHtcblx0XHRsZXQgX2RhdGU6IERhdGU7XG5cdFx0aWYgKCFhcmd1bWVudHMubGVuZ3RoKSB7XG5cdFx0XHRfZGF0ZSA9IG5ldyBEYXRlKCk7XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuXHRcdFx0X2RhdGUgPSBuZXcgRGF0ZSgrdmFsdWUpO1xuXHRcdH1cblx0XHRlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcblx0XHRcdF9kYXRlID0gbmV3IERhdGUoPGFueT4gdmFsdWUpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdF9kYXRlID0gbmV3IERhdGUoXG5cdFx0XHRcdHZhbHVlLnllYXIsXG5cdFx0XHRcdHZhbHVlLm1vbnRoIC0gMSxcblx0XHRcdFx0dmFsdWUuZGF5T2ZNb250aCB8fCAxLFxuXHRcdFx0XHR2YWx1ZS5ob3VycyB8fCAwLFxuXHRcdFx0XHR2YWx1ZS5taW51dGVzIHx8IDAsXG5cdFx0XHRcdHZhbHVlLnNlY29uZHMgfHwgMCxcblx0XHRcdFx0dmFsdWUubWlsbGlzZWNvbmRzIHx8IDBcblx0XHRcdCk7XG5cdFx0fVxuXG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdfZGF0ZScsIHtcblx0XHRcdGNvbmZpZ3VyYWJsZTogdHJ1ZSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdFx0dmFsdWU6IF9kYXRlLFxuXHRcdFx0d3JpdGFibGU6IHRydWVcblx0XHR9KTtcblxuXHRcdGNvbnN0IHNlbGYgPSB0aGlzO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAndXRjJywge1xuXHRcdFx0dmFsdWU6IHtcblx0XHRcdFx0Z2V0IGlzTGVhcFllYXIoKTogYm9vbGVhbiB7XG5cdFx0XHRcdFx0cmV0dXJuIGlzTGVhcFllYXIodGhpcy55ZWFyKTtcblx0XHRcdFx0fSxcblx0XHRcdFx0Z2V0IGRheXNJbk1vbnRoKCk6IG51bWJlciB7XG5cdFx0XHRcdFx0Y29uc3QgbW9udGggPSB0aGlzLm1vbnRoO1xuXG5cdFx0XHRcdFx0aWYgKG1vbnRoID09PSAyICYmIHRoaXMuaXNMZWFwWWVhcikge1xuXHRcdFx0XHRcdFx0cmV0dXJuIDI5O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gZGF5c1ttb250aF07XG5cdFx0XHRcdH0sXG5cblx0XHRcdFx0Z2V0IHllYXIoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENGdWxsWWVhcigpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgeWVhcih5ZWFyOiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ0Z1bGxZZWFyKHllYXIpO1xuXHRcdFx0XHR9LFxuXG5cdFx0XHRcdGdldCBtb250aCgpOiBudW1iZXIge1xuXHRcdFx0XHRcdHJldHVybiBzZWxmLl9kYXRlLmdldFVUQ01vbnRoKCkgKyAxO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgbW9udGgobW9udGg6IG51bWJlcikge1xuXHRcdFx0XHRcdHNlbGYuX2RhdGUuc2V0VVRDTW9udGgobW9udGggLSAxKTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHRnZXQgZGF5T2ZNb250aCgpOiBudW1iZXIge1xuXHRcdFx0XHRcdHJldHVybiBzZWxmLl9kYXRlLmdldFVUQ0RhdGUoKTtcblx0XHRcdFx0fSxcblx0XHRcdFx0c2V0IGRheU9mTW9udGgoZGF5OiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ0RhdGUoZGF5KTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHRnZXQgaG91cnMoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENIb3VycygpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgaG91cnMoaG91cnM6IG51bWJlcikge1xuXHRcdFx0XHRcdHNlbGYuX2RhdGUuc2V0VVRDSG91cnMoaG91cnMpO1xuXHRcdFx0XHR9LFxuXG5cdFx0XHRcdGdldCBtaW51dGVzKCk6IG51bWJlciB7XG5cdFx0XHRcdFx0cmV0dXJuIHNlbGYuX2RhdGUuZ2V0VVRDTWludXRlcygpO1xuXHRcdFx0XHR9LFxuXHRcdFx0XHRzZXQgbWludXRlcyhtaW51dGVzOiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ01pbnV0ZXMobWludXRlcyk7XG5cdFx0XHRcdH0sXG5cblx0XHRcdFx0Z2V0IHNlY29uZHMoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENTZWNvbmRzKCk7XG5cdFx0XHRcdH0sXG5cdFx0XHRcdHNldCBzZWNvbmRzKHNlY29uZHM6IG51bWJlcikge1xuXHRcdFx0XHRcdHNlbGYuX2RhdGUuc2V0VVRDU2Vjb25kcyhzZWNvbmRzKTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHRnZXQgbWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG5cdFx0XHRcdFx0cmV0dXJuIHNlbGYuX2RhdGUuZ2V0VVRDTWlsbGlzZWNvbmRzKCk7XG5cdFx0XHRcdH0sXG5cdFx0XHRcdHNldCBtaWxsaXNlY29uZHMobWlsbGlzZWNvbmRzOiBudW1iZXIpIHtcblx0XHRcdFx0XHRzZWxmLl9kYXRlLnNldFVUQ01pbGxpc2Vjb25kcyhtaWxsaXNlY29uZHMpO1xuXHRcdFx0XHR9LFxuXG5cdFx0XHRcdGdldCBkYXlPZldlZWsoKTogbnVtYmVyIHtcblx0XHRcdFx0XHRyZXR1cm4gc2VsZi5fZGF0ZS5nZXRVVENEYXkoKTtcblx0XHRcdFx0fSxcblxuXHRcdFx0XHR0b1N0cmluZzogZnVuY3Rpb24gKCk6IHN0cmluZyB7XG5cdFx0XHRcdFx0cmV0dXJuIHNlbGYuX2RhdGUudG9VVENTdHJpbmcoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdGVudW1lcmFibGU6IHRydWVcblx0XHR9KTtcblx0fVxuXG5cdGdldCBpc0xlYXBZZWFyKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBpc0xlYXBZZWFyKHRoaXMueWVhcik7XG5cdH1cblxuXHRnZXQgZGF5c0luTW9udGgoKTogbnVtYmVyIHtcblx0XHRjb25zdCBtb250aCA9IHRoaXMubW9udGg7XG5cblx0XHRpZiAobW9udGggPT09IDIgJiYgdGhpcy5pc0xlYXBZZWFyKSB7XG5cdFx0XHRyZXR1cm4gMjk7XG5cdFx0fVxuXHRcdHJldHVybiBkYXlzW21vbnRoXTtcblx0fVxuXG5cdGdldCB5ZWFyKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0RnVsbFllYXIoKTtcblx0fVxuXHRzZXQgeWVhcih5ZWFyOiBudW1iZXIpIHtcblx0XHRjb25zdCBkYXlPZk1vbnRoID0gdGhpcy5kYXlPZk1vbnRoO1xuXG5cdFx0dGhpcy5fZGF0ZS5zZXRGdWxsWWVhcih5ZWFyKTtcblxuXHRcdGlmICh0aGlzLmRheU9mTW9udGggPCBkYXlPZk1vbnRoKSB7XG5cdFx0XHR0aGlzLmRheU9mTW9udGggPSAwO1xuXHRcdH1cblx0fVxuXG5cdGdldCBtb250aCgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldE1vbnRoKCkgKyAxO1xuXHR9XG5cdHNldCBtb250aChtb250aDogbnVtYmVyKSB7XG5cdFx0Y29uc3QgZGF5T2ZNb250aCA9IHRoaXMuZGF5T2ZNb250aDtcblxuXHRcdHRoaXMuX2RhdGUuc2V0TW9udGgobW9udGggLSAxKTtcblxuXHRcdGlmICh0aGlzLmRheU9mTW9udGggPCBkYXlPZk1vbnRoKSB7XG5cdFx0XHR0aGlzLmRheU9mTW9udGggPSAwO1xuXHRcdH1cblx0fVxuXG5cdGdldCBkYXlPZk1vbnRoKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0RGF0ZSgpO1xuXHR9XG5cdHNldCBkYXlPZk1vbnRoKGRheTogbnVtYmVyKSB7XG5cdFx0dGhpcy5fZGF0ZS5zZXREYXRlKGRheSk7XG5cdH1cblxuXHRnZXQgaG91cnMoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS5nZXRIb3VycygpO1xuXHR9XG5cdHNldCBob3Vycyhob3VyczogbnVtYmVyKSB7XG5cdFx0dGhpcy5fZGF0ZS5zZXRIb3Vycyhob3Vycyk7XG5cdH1cblxuXHRnZXQgbWludXRlcygpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldE1pbnV0ZXMoKTtcblx0fVxuXHRzZXQgbWludXRlcyhtaW51dGVzOiBudW1iZXIpIHtcblx0XHR0aGlzLl9kYXRlLnNldE1pbnV0ZXMobWludXRlcyk7XG5cdH1cblxuXHRnZXQgc2Vjb25kcygpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldFNlY29uZHMoKTtcblx0fVxuXHRzZXQgc2Vjb25kcyhzZWNvbmRzOiBudW1iZXIpIHtcblx0XHR0aGlzLl9kYXRlLnNldFNlY29uZHMoc2Vjb25kcyk7XG5cdH1cblxuXHRnZXQgbWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0TWlsbGlzZWNvbmRzKCk7XG5cdH1cblx0c2V0IG1pbGxpc2Vjb25kcyhtaWxsaXNlY29uZHM6IG51bWJlcikge1xuXHRcdHRoaXMuX2RhdGUuc2V0TWlsbGlzZWNvbmRzKG1pbGxpc2Vjb25kcyk7XG5cdH1cblxuXHRnZXQgdGltZSgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLmdldFRpbWUoKTtcblx0fVxuXHRzZXQgdGltZSh0aW1lOiBudW1iZXIpIHtcblx0XHR0aGlzLl9kYXRlLnNldFRpbWUodGltZSk7XG5cdH1cblxuXHRnZXQgZGF5T2ZXZWVrKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0RGF5KCk7XG5cdH1cblx0Z2V0IHRpbWV6b25lT2Zmc2V0KCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKTtcblx0fVxuXG5cdGFkZCh2YWx1ZTogbnVtYmVyKTogRGF0ZU9iamVjdDtcblx0YWRkKHZhbHVlOiBPcGVyYXRpb25Ld0FyZ3MpOiBEYXRlT2JqZWN0O1xuXHRhZGQodmFsdWU6IGFueSk6IERhdGVPYmplY3Qge1xuXHRcdGNvbnN0IHJlc3VsdCA9IG5ldyBEYXRlT2JqZWN0KHRoaXMudGltZSk7XG5cblx0XHRpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuXHRcdFx0cmVzdWx0LnRpbWUgKz0gdmFsdWU7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0Ly8gUHJvcGVydGllcyBoYXZlIHRvIGJlIGFkZGVkIGluIGEgcGFydGljdWxhciBvcmRlciB0byBwcm9wZXJseSBoYW5kbGVcblx0XHRcdC8vIGRhdGUgb3ZlcnNob290cyBpbiBtb250aCBhbmQgeWVhciBjYWxjdWxhdGlvbnNcblx0XHRcdG9wZXJhdGlvbk9yZGVyLmZvckVhY2goKHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkID0+IHtcblx0XHRcdFx0aWYgKCEocHJvcGVydHkgaW4gdmFsdWUpKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgZGF0ZU1ldGhvZCA9IG9wZXJhdGlvbkhhc2hbcHJvcGVydHldO1xuXHRcdFx0XHQoPGFueT4gcmVzdWx0Ll9kYXRlKVtgc2V0JHtkYXRlTWV0aG9kfWBdKFxuXHRcdFx0XHRcdCg8YW55PiB0aGlzLl9kYXRlKVtgZ2V0JHtkYXRlTWV0aG9kfWBdKCkgKyB2YWx1ZVtwcm9wZXJ0eV1cblx0XHRcdFx0KTtcblxuXHRcdFx0XHRpZiAoKHByb3BlcnR5ID09PSAneWVhcnMnIHx8IHByb3BlcnR5ID09PSAnbW9udGhzJykgJiZcblx0XHRcdFx0XHRyZXN1bHQuZGF5T2ZNb250aCA8IHRoaXMuZGF5T2ZNb250aCkge1xuXHRcdFx0XHRcdC8vIFNldCB0aGUgZGF5IG9mIHRoZSBtb250aCB0byAwIHRvIG1vdmUgdGhlIGRhdGUgdG8gdGhlIGZpcnN0IGRheSBvZiB0aGUgcHJldmlvdXNcblx0XHRcdFx0XHQvLyBtb250aCB0byBmaXggb3ZlcnNob290cyB3aGVuIGFkZGluZyBhIG1vbnRoIGFuZCB0aGUgZGF0ZSBpcyB0aGUgMzFzdCBvciBhZGRpbmdcblx0XHRcdFx0XHQvLyBhIHllYXIgYW5kIHRoZSBkYXRlIGlzIHRoZSAyOXRoXG5cdFx0XHRcdFx0cmVzdWx0LmRheU9mTW9udGggPSAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0Y29tcGFyZSh2YWx1ZTogRGF0ZU9iamVjdCk6IG51bWJlciB7XG5cdFx0Y29uc3QgcmVzdWx0ID0gdGhpcy50aW1lIC0gdmFsdWUudGltZTtcblx0XHRpZiAocmVzdWx0ID4gMCkge1xuXHRcdFx0cmV0dXJuIDE7XG5cdFx0fVxuXHRcdGlmIChyZXN1bHQgPCAwKSB7XG5cdFx0XHRyZXR1cm4gLTE7XG5cdFx0fVxuXHRcdHJldHVybiAwO1xuXHR9XG5cblx0Y29tcGFyZURhdGUodmFsdWU6IEt3QXJncyk6IG51bWJlciB7XG5cdFx0Y29uc3QgbGVmdCA9IG5ldyBEYXRlT2JqZWN0KHRoaXMpO1xuXHRcdGNvbnN0IHJpZ2h0ID0gbmV3IERhdGVPYmplY3QodmFsdWUpO1xuXG5cdFx0bGVmdC5fZGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcblx0XHRyaWdodC5fZGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcblxuXHRcdHJldHVybiBsZWZ0LmNvbXBhcmUocmlnaHQpO1xuXHR9XG5cblx0Y29tcGFyZVRpbWUodmFsdWU6IEt3QXJncyk6IG51bWJlciB7XG5cdFx0Y29uc3QgbGVmdCA9IG5ldyBEYXRlT2JqZWN0KHRoaXMpO1xuXHRcdGNvbnN0IHJpZ2h0ID0gbmV3IERhdGVPYmplY3QodmFsdWUpO1xuXG5cdFx0bGVmdC5fZGF0ZS5zZXRGdWxsWWVhcigwLCAwLCAwKTtcblx0XHRyaWdodC5fZGF0ZS5zZXRGdWxsWWVhcigwLCAwLCAwKTtcblxuXHRcdHJldHVybiBsZWZ0LmNvbXBhcmUocmlnaHQpO1xuXHR9XG5cblx0dG9TdHJpbmcoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS50b1N0cmluZygpO1xuXHR9XG5cdHRvRGF0ZVN0cmluZygpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnRvRGF0ZVN0cmluZygpO1xuXHR9XG5cdHRvVGltZVN0cmluZygpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnRvVGltZVN0cmluZygpO1xuXHR9XG5cdHRvTG9jYWxlU3RyaW5nKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUudG9Mb2NhbGVTdHJpbmcoKTtcblx0fVxuXHR0b0xvY2FsZURhdGVTdHJpbmcoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKTtcblx0fVxuXHR0b0xvY2FsZVRpbWVTdHJpbmcoKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdGhpcy5fZGF0ZS50b0xvY2FsZVRpbWVTdHJpbmcoKTtcblx0fVxuXHR0b0lTT1N0cmluZygpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnRvSVNPU3RyaW5nKCk7XG5cdH1cblx0dG9KU09OKGtleT86IGFueSk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX2RhdGUudG9KU09OKGtleSk7XG5cdH1cblx0dmFsdWVPZigpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9kYXRlLnZhbHVlT2YoKTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var has_1 = require('./has'); | ||
@@ -18,2 +19,2 @@ function hasClass(feature, trueClass, falseClass) { | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbImhhc0NsYXNzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUFBLG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQUV4QixrQkFBeUIsT0FBZSxFQUFFLFNBQW1CLEVBQUUsVUFBb0I7UUFDbEZBLE1BQU1BLENBQUNBLFVBQThCQSxNQUFTQTtZQUM3QyxNQUFNLENBQU8sQ0FBQyxhQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsU0FBUyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQ0E7SUFDSEEsQ0FBQ0E7SUFKZSxnQkFBUSxXQUl2QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBoYXNDbGFzcyhmZWF0dXJlOiBzdHJpbmcsIHRydWVDbGFzczogRnVuY3Rpb24sIGZhbHNlQ2xhc3M6IEZ1bmN0aW9uKTogQ2xhc3NEZWNvcmF0b3Ige1xuXHRyZXR1cm4gZnVuY3Rpb24gPFQgZXh0ZW5kcyBGdW5jdGlvbj4odGFyZ2V0OiBUKTogVCB7XG5cdFx0cmV0dXJuIDxhbnk+IChoYXMoZmVhdHVyZSkgPyB0cnVlQ2xhc3MgOiBmYWxzZUNsYXNzKTtcblx0fTtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQUV4QixrQkFBeUIsT0FBZSxFQUFFLFNBQW1CLEVBQUUsVUFBb0I7UUFDbEYsTUFBTSxDQUFDLFVBQThCLE1BQVM7WUFDN0MsTUFBTSxDQUFPLENBQUMsYUFBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLFNBQVMsR0FBRyxVQUFVLENBQUMsQ0FBQztRQUN0RCxDQUFDLENBQUM7SUFDSCxDQUFDO0lBSmUsZ0JBQVEsV0FJdkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBoYXMgZnJvbSAnLi9oYXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gaGFzQ2xhc3MoZmVhdHVyZTogc3RyaW5nLCB0cnVlQ2xhc3M6IEZ1bmN0aW9uLCBmYWxzZUNsYXNzOiBGdW5jdGlvbik6IENsYXNzRGVjb3JhdG9yIHtcblx0cmV0dXJuIGZ1bmN0aW9uIDxUIGV4dGVuZHMgRnVuY3Rpb24+KHRhcmdldDogVCk6IFQge1xuXHRcdHJldHVybiA8YW55PiAoaGFzKGZlYXR1cmUpID8gdHJ1ZUNsYXNzIDogZmFsc2VDbGFzcyk7XG5cdH07XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var string_1 = require('./string'); | ||
@@ -285,2 +286,2 @@ var BASE64_KEYSTR = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZW5jb2RpbmcudHMiXSwibmFtZXMiOlsiZGVjb2RlVXRmOEVuY29kZWRDb2RlUG9pbnQiLCJ2YWxpZGF0ZVV0ZjhFbmNvZGVkQ29kZVBvaW50IiwiZW5jb2RlIiwiZGVjb2RlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUFBLHVCQUE2RixVQUFVLENBQUMsQ0FBQTtJQUV4RyxJQUFNLGFBQWEsR0FBRyxtRUFBbUUsQ0FBQztJQUUxRixvQ0FBb0MsU0FBaUIsRUFBRSxlQUEyQyxFQUFFLGNBQXdCO1FBQXJFQSwrQkFBMkNBLEdBQTNDQSxtQkFBOEJBLENBQUNBLEVBQUVBLFFBQVFBLENBQUVBO1FBQ2pHQSxFQUFFQSxDQUFDQSxDQUFDQSxTQUFTQSxHQUFHQSxlQUFlQSxDQUFDQSxDQUFDQSxDQUFDQSxJQUFJQSxTQUFTQSxHQUFHQSxlQUFlQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUN0RUEsTUFBTUEsS0FBS0EsQ0FBQ0EsMkJBQTJCQSxDQUFDQSxDQUFDQTtRQUMxQ0EsQ0FBQ0E7UUFFREEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsY0FBY0EsSUFBSUEsU0FBU0EsSUFBSUEsMkJBQWtCQSxJQUFJQSxTQUFTQSxJQUFJQSwwQkFBaUJBLENBQUNBLENBQUNBLENBQUNBO1lBQ3pGQSxNQUFNQSxLQUFLQSxDQUFDQSxpQ0FBaUNBLENBQUNBLENBQUNBO1FBQ2hEQSxDQUFDQTtRQUVEQSxJQUFJQSxPQUFPQSxHQUFHQSxFQUFFQSxDQUFDQTtRQUVqQkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsU0FBU0EsR0FBR0EsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDeEJBLFNBQVNBLElBQUlBLFFBQVFBLENBQUNBO1lBQ3RCQSxPQUFPQSxJQUFJQSxNQUFNQSxDQUFDQSxZQUFZQSxDQUFDQSxTQUFTQSxLQUFLQSxJQUFJQSxHQUFHQSxNQUFNQSxHQUFHQSwyQkFBa0JBLENB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S0EsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7b0JBQ2xDQSxJQUFJQSxLQUFLQSxHQUFHQSxJQUFJQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFDQSxHQUFHQSxJQUFJQSxDQUFDQTtvQkFDN0JBLDRCQUE0QkEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7b0JBQ3BDQSxLQUFLQSxHQUFHQSxLQUFLQSxHQUFHQSxJQUFJQSxDQUFDQTtvQkFFckJBLElBQUlBLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBLEVBQUVBLENBQUNBLENBQUNBLEdBQUdBLElBQUlBLENBQUNBO29CQUM3QkEsNEJBQTRCQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtvQkFDcENBLEtBQUtBLEdBQUdBLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBO29CQUVyQkEsSUFBSUEsV0FBV0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsS0FBS0EsR0FBR0EsSUFBSUEsQ0FBQ0EsSUFBSUEsSUFBSUEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsS0FBS0EsSUFBSUEsSUFBSUEsQ0FBQ0EsR0FBR0EsS0FBS0EsQ0FBQ0E7b0JBQ3JFQSxPQUFPQSxJQUFJQSwwQkFBMEJBLENBQUNBLFdBQVdBLEVBQUVBLENBQUVBLE1BQU1BLEVBQUVBLFFBQVFBLENBQUVBLEVBQUVBLElBQUlBLENBQUNBLENBQUNBO2dCQUNoRkEsQ0FBQ0E7Z0JBQ0RBLElBQUlBLENBQUNBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBLEtBQUtBLElBQUlBLENBQUNBLENBQUNBLENBQUNBO29CQUNsQ0EsSUFBSUEsS0FBS0EsR0FBR0EsSUFBSUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsR0FBR0EsSUFBSUEsQ0FBQ0E7b0JBQzdCQSw0QkFBNEJBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO29CQUNwQ0EsS0FBS0EsR0FBR0EsS0FBS0EsR0FBR0EsSUFBSUEsQ0FBQ0E7b0JBRXJCQSxJQUFJQSxLQUFLQSxHQUFHQSxJQUFJQSxDQUFDQSxFQUFFQSxDQUFDQSxDQUFDQSxHQUFHQSxJQUFJQSxDQUFDQTtvQkFDN0JBLDRCQUE0QkEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7b0JBQ3BDQSxLQUFLQSxHQUFHQSxLQUFLQSxHQUFHQSxJQUFJQSxDQUFDQTtvQkFFckJBLElBQUlBLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBLEVBQUVBLENBQUNBLENBQUNBLEdBQUdBLElBQUlBLENBQUNBO29CQUM3QkEsNEJBQTRCQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtvQkFDcENBLEtBQUtBLEdBQUdBLEtBQUtBLEdBQUdBLElBQUlBLENBQUNBO29CQUVyQkEsSUFBSUEsV0FBV0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsS0FBS0EsR0FBR0EsSUFBSUEsQ0FBQ0EsSUFBSUEsSUFBSUEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsS0FBS0EsSUFBSUEsSUFBSUEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsS0FBS0EsSUFBSUEsSUFBSUEsQ0FBQ0EsR0FBR0EsS0FBS0EsQ0FBQ0E7b0JBQ3ZGQSxPQUFPQSxJQUFJQSwwQkFBMEJBLENBQUNBLFdBQVdBLEVBQUVBLENBQUVBLFFBQVFBLEVBQUVBLFFBQVFBLENBQUVBLENBQUNBLENBQUNBO2dCQUM1RUEsQ0FBQ0E7Z0JBQ0RBLElBQUlBLENBQUNBLENBQUNBO29CQUNMQSw0QkFBNEJBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO2dCQUNyQ0EsQ0FBQ0E7WUFDRkEsQ0FBQ0E7WUFFREEsTUFBTUEsQ0FBQ0EsT0FBT0EsQ0FBQ0E7UUFDaEJBLENBQUNBO0tBQ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhJR0hfU1VSUk9HQVRFX01JTiwgSElHSF9TVVJST0dBVEVfTUFYLCBMT1dfU1VSUk9HQVRFX01JTiwgTE9XX1NVUlJPR0FURV9NQVggfSBmcm9tICcuL3N0cmluZyc7XG5cbmNvbnN0IEJBU0U2NF9LRVlTVFIgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0nO1xuXG5mdW5jdGlvbiBkZWNvZGVVdGY4RW5jb2RlZENvZGVQb2ludChjb2RlUG9pbnQ6IG51bWJlciwgdmFsaWRhdGlvblJhbmdlOiBudW1iZXJbXSA9IFsgMCwgSW5maW5pdHkgXSwgY2hlY2tTdXJyb2dhdGU/OiBib29sZWFuKTogc3RyaW5nIHtcblx0aWYgKGNvZGVQb2ludCA8IHZhbGlkYXRpb25SYW5nZVswXSB8fCBjb2RlUG9pbnQgPiB2YWxpZGF0aW9uUmFuZ2VbMV0pIHtcblx0XHR0aHJvdyBFcnJvcignSW52YWxpZCBjb250aW51YXRpb24gYnl0ZScpO1xuXHR9XG5cblx0aWYgKGNoZWNrU3Vycm9nYXRlICYmIGNvZGVQb2ludCA+PSBISUdIX1NVUlJPR0FURV9NSU4gJiYgY29kZVBvaW50IDw9IExPV19TVVJST0dBVEVfTUFYKSB7XG5cdFx0dGhyb3cgRXJyb3IoJ1N1cnJvZ2F0ZSBpcyBub3QgYSBzY2FsYXIgdmFsdWUnKTtcblx0fVxuXG5cdGxldCBlbmNvZGVkID0gJyc7XG5cblx0aWYgKGNvZGVQb2ludCA+IDB4RkZGRikge1xuXHRcdGNvZGVQb2ludCAtPSAweDAxMDAwMDtcblx0XHRlbmNvZGVkICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZVBvaW50ID4+PiAweDEwICYgMHgwM0ZGIHwgSElHSF9TVVJST0dBVEVfTUlOKTtcblx0XHRjb2RlUG9pbnQgPSBMT1dfU1VSUk9HQVRFX01JTiB8IGNvZGVQb2ludCAmIDB4MDNGRjtcblx0fVxuXG5cdGVuY29kZWQgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlUG9pbnQpO1xuXG5cdHJldHVybiBlbmNvZGVkO1xufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZVV0ZjhFbmNvZGVkQ29kZVBvaW50KGNvZGVQb2ludDogbnVtYmVyKTogdm9pZCB7XG5cdGlmICgoY29kZVBvaW50ICYgMHhDMCkgIT09IDB4ODApIHtcblx0XHR0aHJvdyBFcnJvcignSW52YWxpZCBjb250aW51YXRpb24gYnl0ZScpO1xuXHR9XG59XG5cbmV4cG9ydCB0eXBlIEJ5dGVCdWZmZXIgPSBVaW50OEFycmF5IHwgQnVmZmVyIHwgbnVtYmVyW107XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kZWMge1xuXHRlbmNvZGUoZGF0YTogc3RyaW5nKTogbnVtYmVyW107XG5cdGRlY29kZShkYXRhOiBCeXRlQnVmZmVyKTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGZhY2lsaXRpZXMgZm9yIGVuY29kaW5nIGEgc3RyaW5nIGludG8gYW4gQVNDSUktZW5jb2RlZCBieXRlIGJ1ZmZlciBhbmRcbiAqIGRlY29kaW5nIGFuIEFTQ0lJLWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGFzY2lpOiBDb2RlYyA9IHtcblx0LyoqXG5cdCAqIEVuY29kZXMgYSBzdHJpbmcgaW50byBhbiBBU0NJSS1lbmNvZGVkIGJ5dGUgYnVmZmVyLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgdGV4dCBzdHJpbmcgdG8gZW5jb2RlXG5cdCAqL1xuXHRlbmNvZGUoZGF0YTogc3RyaW5nKTogbnVtYmVyW10ge1xuXHRcdGlmIChkYXRhID09IG51bGwpIHtcblx0XHRcdHJldHVybiBbXTtcblx0XHR9XG5cblx0XHRjb25zdCBidWZmZXI6IG51bWJlcltdID0gW107XG5cblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0gZGF0YS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0YnVmZmVyW2ldID0gZGF0YS5jaGFyQ29kZUF0KGkpO1xuXHRcdH1cblxuXHRcdHJldHVybiBidWZmZXI7XG5cdH0sXG5cblx0LyoqXG5cdCAqIERlY29kZXMgYW4gQVNDSUktZW5jb2RlZCBieXRlIGJ1ZmZlciBpbnRvIGEgc3RyaW5nLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgYnl0ZSBidWZmZXIgdG8gZGVjb2RlXG5cdCAqL1xuXHRkZWNvZGUoZGF0YTogQnl0ZUJ1ZmZlcik6IHN0cmluZyB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuICcnO1xuXHRcdH1cblxuXHRcdGxldCBkZWNvZGVkID0gJyc7XG5cblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0gZGF0YS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0ZGVjb2RlZCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGFbaV0pO1xuXHRcdH1cblxuXHRcdHJldHVybiBkZWNvZGVkO1xuXHR9XG59O1xuXG4vKipcbiAqIFByb3ZpZGVzIGZhY2lsaXRpZXMgZm9yIGVuY29kaW5nIGEgc3RyaW5nIGludG8gYSBCYXNlNjQtZW5jb2RlZCBieXRlIGJ1ZmZlciBhbmRcbiAqIGRlY29kaW5nIGEgQmFzZTY0LWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2U2NDogQ29kZWMgPSB7XG5cdC8qKlxuXHQgKiBFbmNvZGVzIGEgQmFzZTY0LWVuY29kZWQgc3RyaW5nIGludG8gYSBCYXNlNjQgYnl0ZSBidWZmZXIuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcgdG8gZW5jb2RlXG5cdCAqL1xuXHRlbmNvZGUoZGF0YTogc3RyaW5nKTogbnVtYmVyW10ge1xuXHRcdGlmIChkYXRhID09IG51bGwpIHtcblx0XHRcdHJldHVybiBbXTtcblx0XHR9XG5cblx0XHRjb25zdCBidWZmZXI6IG51bWJlcltdID0gW107XG5cblx0XHRsZXQgaSA9IDA7XG5cdFx0bGV0IGxlbmd0aCA9IGRhdGEubGVuZ3RoO1xuXG5cdFx0d2hpbGUgKGRhdGFbLS1sZW5ndGhdID09PSAnPScpIHsgfVxuXHRcdHdoaWxlIChpIDwgbGVuZ3RoKSB7XG5cdFx0XHRsZXQgZW5jb2RlZCA9IEJBU0U2NF9LRVlTVFIuaW5kZXhPZihkYXRhW2krK10pIDw8IDE4O1xuXHRcdFx0aWYgKGkgPD0gbGVuZ3RoKSB7XG5cdFx0XHRcdGVuY29kZWQgfD0gQkFTRTY0X0tFWVNUUi5pbmRleE9mKGRhdGFbaSsrXSkgPDwgMTI7XG5cdFx0XHR9XG5cdFx0XHRpZiAoaSA8PSBsZW5ndGgpIHtcblx0XHRcdFx0ZW5jb2RlZCB8PSBCQVNFNjRfS0VZU1RSLmluZGV4T2YoZGF0YVtpKytdKSA8PCA2O1xuXHRcdFx0fVxuXHRcdFx0aWYgKGkgPD0gbGVuZ3RoKSB7XG5cdFx0XHRcdGVuY29kZWQgfD0gQkFTRTY0X0tFWVNUUi5pbmRleE9mKGRhdGFbaSsrXSk7XG5cdFx0XHR9XG5cblx0XHRcdGJ1ZmZlci5wdXNoKChlbmNvZGVkID4+PiAxNikgJiAweGZmKTtcblx0XHRcdGJ1ZmZlci5wdXNoKChlbmNvZGVkID4+PiA4KSAmIDB4ZmYpO1xuXHRcdFx0YnVmZmVyLnB1c2goZW5jb2RlZCAmIDB4ZmYpO1xuXHRcdH1cblxuXHRcdHdoaWxlIChidWZmZXJbYnVmZmVyLmxlbmd0aCAtIDFdID09PSAwKSB7XG5cdFx0XHRidWZmZXIucG9wKCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGJ1ZmZlcjtcblx0fSxcblxuXHQvKipcblx0ICogRGVjb2RlcyBhIEJhc2U2NC1lbmNvZGVkIGJ5dGUgYnVmZmVyIGludG8gYSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSBieXRlIGJ1ZmZlciB0byBkZWNvZGVcblx0ICovXG5cdGRlY29kZShkYXRhOiBCeXRlQnVmZmVyKTogc3RyaW5nIHtcblx0XHRpZiAoZGF0YSA9PSBudWxsKSB7XG5cdFx0XHRyZXR1cm4gJyc7XG5cdFx0fVxuXG5cdFx0bGV0IGRlY29kZWQgPSAnJztcblx0XHRsZXQgaSA9IDA7XG5cblx0XHRmb3IgKGxldCBsZW5ndGggPSBkYXRhLmxlbmd0aCAtIChkYXRhLmxlbmd0aCAlIDMpOyBpIDwgbGVuZ3RoOyApIHtcblx0XHRcdGxldCBlbmNvZGVkID0gZGF0YVtpKytdIDw8IDE2IHwgZGF0YVtpKytdIDw8IDggfCBkYXRhW2krK107XG5cblx0XHRcdGRlY29kZWQgKz0gQkFTRTY0X0tFWVNUUi5jaGFyQXQoKGVuY29kZWQgPj4+IDE4KSAmIDB4M0YpO1xuXHRcdFx0ZGVjb2RlZCArPSBCQVNFNjRfS0VZU1RSLmNoYXJBdCgoZW5jb2RlZCA+Pj4gMTIpICYgMHgzRik7XG5cdFx0XHRkZWNvZGVkICs9IEJBU0U2NF9LRVlTVFIuY2hhckF0KChlbmNvZGVkID4+PiA2KSAmIDB4M0YpO1xuXHRcdFx0ZGVjb2RlZCArPSBCQVNFNjRfS0VZU1RSLmNoYXJBdChlbmNvZGVkICYgMHgzRik7XG5cdFx0fVxuXG5cdFx0aWYgKGRhdGEubGVuZ3RoICUgMyA9PT0gMSkge1xuXHRcdFx0bGV0IGVuY29kZWQgPSBkYXRhW2krK10gPDwgMTY7XG5cdFx0XHRkZWNvZGVkICs9IEJBU0U2NF9LRVlTVFIuY2hhckF0KChlbmNvZGVkID4+PiAxOCkgJiAweDNmKTtcblx0XHRcdGRlY29kZWQgKz0gQkFTRTY0X0tFWVNUUi5jaGFyQXQoKGVuY29kZWQgPj4+IDEyKSAmIDB4M2YpO1xuXHRcdFx0ZGVjb2RlZCArPSAnPT0nO1xuXHRcdH1cblx0XHRlbHNlIGlmIChkYXRhLmxlbmd0aCAlIDMgPT09IDIpIHtcblx0XHRcdGxldCBlbmNvZGVkID0gZGF0YVtpKytdIDw8IDE2IHwgZGF0YVtpKytdIDw8IDg7XG5cdFx0XHRkZWNvZGVkICs9IEJBU0U2NF9LRVlTVFIuY2hhckF0KChlbmNvZGVkID4+PiAxOCkgJiAweDNmKTtcblx0XHRcdGRlY29kZWQgKz0gQkFTRTY0X0tFWVNUUi5jaGFyQXQoKGVuY29kZWQgPj4+IDEyKSAmIDB4M2YpO1xuXHRcdFx0ZGVjb2RlZCArPSBCQVNFNjRfS0VZU1RSLmNoYXJBdCgoZW5jb2RlZCA+Pj4gNikgJiAweDNmKTtcblx0XHRcdGRlY29kZWQgKz0gJz0nO1xuXHRcdH1cblxuXHRcdHJldHVybiBkZWNvZGVkO1xuXHR9XG59O1xuXG4vKipcbiAqIFByb3ZpZGVzIGZhY2lsaXRpZXMgZm9yIGVuY29kaW5nIGEgc3RyaW5nIGludG8gYSBoZXgtZW5jb2RlZCBieXRlIGJ1ZmZlciBhbmRcbiAqIGRlY29kaW5nIGEgaGV4LWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGhleDogQ29kZWMgPSB7XG5cdC8qKlxuXHQgKiBFbmNvZGVzIGEgc3RyaW5nIGludG8gYSBoZXgtZW5jb2RlZCBieXRlIGJ1ZmZlci5cblx0ICpcblx0ICogQHBhcmFtIGRhdGEgVGhlIGhleC1lbmNvZGVkIHN0cmluZyB0byBlbmNvZGVcblx0ICovXG5cdGVuY29kZShkYXRhOiBzdHJpbmcpOiBudW1iZXJbXSB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuIFtdO1xuXHRcdH1cblxuXHRcdGNvbnN0IGJ1ZmZlcjogbnVtYmVyW10gPSBbXTtcblxuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBkYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSArPSAyKSB7XG5cdFx0XHRsZXQgZW5jb2RlZENoYXIgPSBwYXJzZUludChkYXRhLnN1YnN0cihpLCAyKSwgMTYpO1xuXG5cdFx0XHRidWZmZXIucHVzaChlbmNvZGVkQ2hhcik7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGJ1ZmZlcjtcblx0fSxcblxuXHQvKipcblx0ICogRGVjb2RlcyBhIGhleC1lbmNvZGVkIGJ5dGUgYnVmZmVyIGludG8gYSBoZXgtZW5jb2RlZCBzdHJpbmcuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSBieXRlIGJ1ZmZlciB0byBkZWNvZGVcblx0ICovXG5cdGRlY29kZShkYXRhOiBCeXRlQnVmZmVyKTogc3RyaW5nIHtcblx0XHRpZiAoZGF0YSA9PSBudWxsKSB7XG5cdFx0XHRyZXR1cm4gJyc7XG5cdFx0fVxuXG5cdFx0bGV0IGRlY29kZWQgPSAnJztcblxuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBkYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0XHRkZWNvZGVkICs9IGRhdGFbaV0udG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGRlY29kZWQ7XG5cdH1cbn07XG5cbi8qKlxuICogUHJvdmlkZXMgZmFjaWxpdGllcyBmb3IgZW5jb2RpbmcgYSBzdHJpbmcgaW50byBhIFVURi04LWVuY29kZWQgYnl0ZSBidWZmZXIgYW5kXG4gKiBkZWNvZGluZyBhIFVURi04LWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqIEluc3BpcmVkIGJ5IHRoZSB3b3JrIG9mOiBodHRwczovL2dpdGh1Yi5jb20vbWF0aGlhc2J5bmVucy91dGY4LmpzXG4gKi9cbmV4cG9ydCBjb25zdCB1dGY4OiBDb2RlYyA9IHtcblx0LyoqXG5cdCAqIEVuY29kZXMgYSBzdHJpbmcgaW50byBhIFVURi04LWVuY29kZWQgYnl0ZSBidWZmZXIuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSB0ZXh0IHN0cmluZyB0byBlbmNvZGVcblx0ICovXG5cdGVuY29kZShkYXRhOiBzdHJpbmcpOiBudW1iZXJbXSB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuIFtdO1xuXHRcdH1cblxuXHRcdGNvbnN0IGJ1ZmZlcjogbnVtYmVyW10gPSBbXTtcblxuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBkYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0XHRsZXQgZW5jb2RlZENoYXIgPSBkYXRhLmNoYXJDb2RlQXQoaSk7XG5cblx0XHRcdC8qKlxuXHRcdFx0ICogU3Vycm9nYXRlc1xuXHRcdFx0ICogaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Vbml2ZXJzYWxfQ2hhcmFjdGVyX1NldF9jaGFyYWN0ZXJzXG5cdFx0XHQgKi9cblx0XHRcdGlmIChlbmNvZGVkQ2hhciA+PSBISUdIX1NVUlJPR0FURV9NSU4gJiYgZW5jb2RlZENoYXIgPD0gSElHSF9TVVJST0dBVEVfTUFYKSB7XG5cdFx0XHRcdGxldCBsb3dTdXJyb2dhdGUgPSBkYXRhLmNoYXJDb2RlQXQoaSArIDEpO1xuXHRcdFx0XHRpZiAobG93U3Vycm9nYXRlID49IExPV19TVVJST0dBVEVfTUlOICYmIGxvd1N1cnJvZ2F0ZSA8PSBMT1dfU1VSUk9HQVRFX01BWCkge1xuXHRcdFx0XHRcdGVuY29kZWRDaGFyID0gMHgwMTAwMDAgKyAoZW5jb2RlZENoYXIgLSBISUdIX1NVUlJPR0FURV9NSU4pICogMHgwNDAwICsgKGxvd1N1cnJvZ2F0ZSAtIExPV19TVVJST0dBVEVfTUlOKTtcblx0XHRcdFx0XHRpKys7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0aWYgKGVuY29kZWRDaGFyIDwgMHg4MCkge1xuXHRcdFx0XHRidWZmZXIucHVzaChlbmNvZGVkQ2hhcik7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0aWYgKGVuY29kZWRDaGFyIDwgMHg4MDApIHtcblx0XHRcdFx0XHRidWZmZXIucHVzaCgoKGVuY29kZWRDaGFyID4+IDB4MDYpICYgMHgxRikgfCAweEMwKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIGlmIChlbmNvZGVkQ2hhciA8IDB4MDEwMDAwKSB7XG5cdFx0XHRcdFx0aWYgKGVuY29kZWRDaGFyID49IEhJR0hfU1VSUk9HQVRFX01JTiAmJiBlbmNvZGVkQ2hhciA8PSBMT1dfU1VSUk9HQVRFX01BWCkge1xuXHRcdFx0XHRcdFx0dGhyb3cgRXJyb3IoJ1N1cnJvZ2F0ZSBpcyBub3QgYSBzY2FsYXIgdmFsdWUnKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRidWZmZXIucHVzaCgoKGVuY29kZWRDaGFyID4+IDB4MEMpICYgMHgwRikgfCAweEUwKTtcblx0XHRcdFx0XHRidWZmZXIucHVzaCgoKGVuY29kZWRDaGFyID4+IDB4MDYpICYgMHgzRikgfCAweDgwKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIGlmIChlbmNvZGVkQ2hhciA8IDB4MjAwMDAwKSB7XG5cdFx0XHRcdFx0YnVmZmVyLnB1c2goKChlbmNvZGVkQ2hhciA+PiAweDEyKSAmIDB4MDcpIHwgMHhGMCk7XG5cdFx0XHRcdFx0YnVmZmVyLnB1c2goKChlbmNvZGVkQ2hhciA+PiAweDBDKSAmIDB4M0YpIHwgMHg4MCk7XG5cdFx0XHRcdFx0YnVmZmVyLnB1c2goKChlbmNvZGVkQ2hhciA+PiAweDA2KSAmIDB4M0YpIHwgMHg4MCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0YnVmZmVyLnB1c2goKGVuY29kZWRDaGFyICYgMHgzRikgfCAweDgwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gYnVmZmVyO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBEZWNvZGVzIGEgVVRGLTgtZW5jb2RlZCBieXRlIGJ1ZmZlciBpbnRvIGEgc3RyaW5nLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgYnl0ZSBidWZmZXIgdG8gZGVjb2RlXG5cdCAqL1xuXHRkZWNvZGUoZGF0YTogQnl0ZUJ1ZmZlcik6IHN0cmluZyB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuICcnO1xuXHRcdH1cblxuXHRcdGxldCBkZWNvZGVkID0gJyc7XG5cblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0gZGF0YS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0bGV0IGJ5dGUxID0gZGF0YVtpXSAmIDB4RkY7XG5cblx0XHRcdGlmICgoYnl0ZTEgJiAweDgwKSA9PT0gMCkge1xuXHRcdFx0XHRkZWNvZGVkICs9IGRlY29kZVV0ZjhFbmNvZGVkQ29kZVBvaW50KGJ5dGUxKTtcblx0XHRcdH1cblx0XHRcdGVsc2UgaWYgKChieXRlMSAmIDB4RTApID09PSAweEMwKSB7XG5cdFx0XHRcdGxldCBieXRlMiA9IGRhdGFbKytpXSAmIDB4RkY7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTIpO1xuXHRcdFx0XHRieXRlMiA9IGJ5dGUyICYgMHgzRjtcblx0XHRcdFx0bGV0IGVuY29kZWRCeXRlID0gKChieXRlMSAmIDB4MUYpIDw8IDB4MDYpIHwgYnl0ZTI7XG5cdFx0XHRcdGRlY29kZWQgKz0gZGVjb2RlVXRmOEVuY29kZWRDb2RlUG9pbnQoZW5jb2RlZEJ5dGUsIFsweDgwLCBJbmZpbml0eV0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSBpZiAoKGJ5dGUxICYgMHhGMCkgPT09IDB4RTApIHtcblx0XHRcdFx0bGV0IGJ5dGUyID0gZGF0YVsrK2ldICYgMHhGRjtcblx0XHRcdFx0dmFsaWRhdGVVdGY4RW5jb2RlZENvZGVQb2ludChieXRlMik7XG5cdFx0XHRcdGJ5dGUyID0gYnl0ZTIgJiAweDNGO1xuXG5cdFx0XHRcdGxldCBieXRlMyA9IGRhdGFbKytpXSAmIDB4RkY7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTMpO1xuXHRcdFx0XHRieXRlMyA9IGJ5dGUzICYgMHgzRjtcblxuXHRcdFx0XHRsZXQgZW5jb2RlZEJ5dGUgPSAoKGJ5dGUxICYgMHgxRikgPDwgMHgwQykgfCAoYnl0ZTIgPDwgMHgwNikgfCBieXRlMztcblx0XHRcdFx0ZGVjb2RlZCArPSBkZWNvZGVVdGY4RW5jb2RlZENvZGVQb2ludChlbmNvZGVkQnl0ZSwgWyAweDA4MDAsIEluZmluaXR5IF0sIHRydWUpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSBpZiAoKGJ5dGUxICYgMHhGOCkgPT09IDB4RjApIHtcblx0XHRcdFx0bGV0IGJ5dGUyID0gZGF0YVsrK2ldICYgMHhGRjtcblx0XHRcdFx0dmFsaWRhdGVVdGY4RW5jb2RlZENvZGVQb2ludChieXRlMik7XG5cdFx0XHRcdGJ5dGUyID0gYnl0ZTIgJiAweDNGO1xuXG5cdFx0XHRcdGxldCBieXRlMyA9IGRhdGFbKytpXSAmIDB4RkY7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTMpO1xuXHRcdFx0XHRieXRlMyA9IGJ5dGUzICYgMHgzRjtcblxuXHRcdFx0XHRsZXQgYnl0ZTQgPSBkYXRhWysraV0gJiAweEZGO1xuXHRcdFx0XHR2YWxpZGF0ZVV0ZjhFbmNvZGVkQ29kZVBvaW50KGJ5dGU0KTtcblx0XHRcdFx0Ynl0ZTQgPSBieXRlNCAmIDB4M0Y7XG5cblx0XHRcdFx0bGV0IGVuY29kZWRCeXRlID0gKChieXRlMSAmIDB4MUYpIDw8IDB4MEMpIHwgKGJ5dGUyIDw8IDB4MEMpIHwgKGJ5dGUzIDw8IDB4MDYpIHwgYnl0ZTQ7XG5cdFx0XHRcdGRlY29kZWQgKz0gZGVjb2RlVXRmOEVuY29kZWRDb2RlUG9pbnQoZW5jb2RlZEJ5dGUsIFsgMHgwMTAwMDAsIDB4MTBGRkZGIF0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTEpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiBkZWNvZGVkO1xuXHR9XG59O1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZW5jb2RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsdUJBQTZGLFVBQVUsQ0FBQyxDQUFBO0lBRXhHLElBQU0sYUFBYSxHQUFHLG1FQUFtRSxDQUFDO0lBRTFGLG9DQUFvQyxTQUFpQixFQUFFLGVBQTJDLEVBQUUsY0FBd0I7UUFBckUsK0JBQTJDLEdBQTNDLG1CQUE4QixDQUFDLEVBQUUsUUFBUSxDQUFFO1FBQ2pHLEVBQUUsQ0FBQyxDQUFDLFNBQVMsR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEUsTUFBTSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsY0FBYyxJQUFJLFNBQVMsSUFBSSwyQkFBa0IsSUFBSSxTQUFTLElBQUksMEJBQWlCLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLE1BQU0sS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUVELElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUVqQixFQUFFLENBQUMsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN4QixTQUFTLElBQUksUUFBUSxDQUFDO1lBQ3RCLE9BQU8sSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsS0FBSyxJQUFJLEdBQUcsTUFBTSxHQUFHLDJCQUFrQixDQUFDLENBQUM7WUFDakYsU0FBUyxHQUFHLDBCQUFpQixHQUFHLFNBQVMsR0FBRyxNQUFNLENBQUM7UUFDcEQsQ0FBQztRQUVELE9BQU8sSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDaEIsQ0FBQztJQUVELHNDQUFzQyxTQUFpQjtRQUN0RCxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ2pDLE1BQU0sS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNGLENBQUM7SUFTRDs7O09BR0c7SUFDVSxhQUFLLEdBQVU7UUFDM0I7Ozs7V0FJRztRQUNILE1BQU0sWUFBQyxJQUFZO1lBQ2xCLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ1gsQ0FBQztZQUVELElBQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztZQUU1QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUN2RCxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxDQUFDO1lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUNmLENBQUM7UUFFRDs7OztXQUlHO1FBQ0gsTUFBTSxZQUFDLElBQWdCO1lBQ3RCLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ1gsQ0FBQztZQUVELElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUVqQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUN2RCxPQUFPLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxDQUFDO1lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNoQixDQUFDO0tBQ0QsQ0FBQztJQUVGOzs7T0FHRztJQUNVLGNBQU0sR0FBVTtRQUM1Qjs7OztXQUlHO1FBQ0gsTUFBTSxZQUFDLElBQVk7WUFDbEIsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ2xCLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDWCxDQUFDO1lBRUQsSUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1lBRTVCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNWLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFFekIsT0FBTyxJQUFJLENBQUMsRUFBRSxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbEMsT0FBTyxDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUM7Z0JBQ25CLElBQUksT0FBTyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3JELEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDO29CQUNqQixPQUFPLElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbkQsQ0FBQztnQkFDRCxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztvQkFDakIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2xELENBQUM7Z0JBQ0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUM7b0JBQ2pCLE9BQU8sSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzdDLENBQUM7Z0JBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDckMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDcEMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDN0IsQ0FBQztZQUVELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3hDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLENBQUM7WUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ2YsQ0FBQztRQUVEOzs7O1dBSUc7UUFDSCxNQUFNLFlBQUMsSUFBZ0I7WUFDdEIsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ2xCLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDWCxDQUFDO1lBRUQsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUVWLEdBQUcsQ0FBQyxDQUFDLElBQUksUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFNLEdBQUksQ0FBQztnQkFDakUsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFFM0QsT0FBTyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ3pELE9BQU8sSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUN6RCxPQUFPLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDeEQsT0FBTyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ2pELENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzQixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQzlCLE9BQU8sSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUN6RCxPQUFPLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDekQsT0FBTyxJQUFJLElBQUksQ0FBQztZQUNqQixDQUFDO1lBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQy9DLE9BQU8sSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUN6RCxPQUFPLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDekQsT0FBTyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ3hELE9BQU8sSUFBSSxHQUFHLENBQUM7WUFDaEIsQ0FBQztZQUVELE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDaEIsQ0FBQztLQUNELENBQUM7SUFFRjs7O09BR0c7SUFDVSxXQUFHLEdBQVU7UUFDekI7Ozs7V0FJRztRQUNILE1BQU0sWUFBQyxJQUFZO1lBQ2xCLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ1gsQ0FBQztZQUVELElBQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztZQUU1QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQzFELElBQUksV0FBVyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFFbEQsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMxQixDQUFDO1lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUNmLENBQUM7UUFFRDs7OztXQUlHO1FBQ0gsTUFBTSxZQUFDLElBQWdCO1lBQ3RCLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ1gsQ0FBQztZQUVELElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUVqQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUN2RCxPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMvQyxDQUFDO1lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNoQixDQUFDO0tBQ0QsQ0FBQztJQUVGOzs7O09BSUc7SUFDVSxZQUFJLEdBQVU7UUFDMUI7Ozs7V0FJRztRQUNILE1BQU0sWUFBQyxJQUFZO1lBQ2xCLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNsQixNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ1gsQ0FBQztZQUVELElBQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztZQUU1QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUN2RCxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVyQzs7O21CQUdHO2dCQUNILEVBQUUsQ0FBQyxDQUFDLFdBQVcsSUFBSSwyQkFBa0IsSUFBSSxXQUFXLElBQUksMkJBQWtCLENBQUMsQ0FBQyxDQUFDO29CQUM1RSxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDMUMsRUFBRSxDQUFDLENBQUMsWUFBWSxJQUFJLDBCQUFpQixJQUFJLFlBQVksSUFBSSwwQkFBaUIsQ0FBQyxDQUFDLENBQUM7d0JBQzVFLFdBQVcsR0FBRyxRQUFRLEdBQUcsQ0FBQyxXQUFXLEdBQUcsMkJBQWtCLENBQUMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxZQUFZLEdBQUcsMEJBQWlCLENBQUMsQ0FBQzt3QkFDMUcsQ0FBQyxFQUFFLENBQUM7b0JBQ0wsQ0FBQztnQkFDRixDQUFDO2dCQUVELEVBQUUsQ0FBQyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUMxQixDQUFDO2dCQUNELElBQUksQ0FBQyxDQUFDO29CQUNMLEVBQUUsQ0FBQyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO3dCQUN6QixNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7b0JBQ3BELENBQUM7b0JBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUNqQyxFQUFFLENBQUMsQ0FBQyxXQUFXLElBQUksMkJBQWtCLElBQUksV0FBVyxJQUFJLDBCQUFpQixDQUFDLENBQUMsQ0FBQzs0QkFDM0UsTUFBTSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQzt3QkFDaEQsQ0FBQzt3QkFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7d0JBQ25ELE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztvQkFDcEQsQ0FBQztvQkFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQzt3QkFDbkQsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO3dCQUNuRCxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7b0JBQ3BELENBQUM7b0JBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDMUMsQ0FBQztZQUNGLENBQUM7WUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ2YsQ0FBQztRQUVEOzs7O1dBSUc7UUFDSCxNQUFNLFlBQUMsSUFBZ0I7WUFDdEIsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ2xCLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDWCxDQUFDO1lBRUQsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBRWpCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsUUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3ZELElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7Z0JBRTNCLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzFCLE9BQU8sSUFBSSwwQkFBMEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUMsQ0FBQztnQkFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDbEMsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO29CQUM3Qiw0QkFBNEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDcEMsS0FBSyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7b0JBQ3JCLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO29CQUNuRCxPQUFPLElBQUksMEJBQTBCLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RFLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQ2xDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQztvQkFDN0IsNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3BDLEtBQUssR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDO29CQUVyQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7b0JBQzdCLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNwQyxLQUFLLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQztvQkFFckIsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUM7b0JBQ3JFLE9BQU8sSUFBSSwwQkFBMEIsQ0FBQyxXQUFXLEVBQUUsQ0FBRSxNQUFNLEVBQUUsUUFBUSxDQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ2hGLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQ2xDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQztvQkFDN0IsNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3BDLEtBQUssR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDO29CQUVyQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7b0JBQzdCLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNwQyxLQUFLLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQztvQkFFckIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO29CQUM3Qiw0QkFBNEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDcEMsS0FBSyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7b0JBRXJCLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO29CQUN2RixPQUFPLElBQUksMEJBQTBCLENBQUMsV0FBVyxFQUFFLENBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBRSxDQUFDLENBQUM7Z0JBQzVFLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLENBQUM7b0JBQ0wsNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JDLENBQUM7WUFDRixDQUFDO1lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNoQixDQUFDO0tBQ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhJR0hfU1VSUk9HQVRFX01JTiwgSElHSF9TVVJST0dBVEVfTUFYLCBMT1dfU1VSUk9HQVRFX01JTiwgTE9XX1NVUlJPR0FURV9NQVggfSBmcm9tICcuL3N0cmluZyc7XG5cbmNvbnN0IEJBU0U2NF9LRVlTVFIgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0nO1xuXG5mdW5jdGlvbiBkZWNvZGVVdGY4RW5jb2RlZENvZGVQb2ludChjb2RlUG9pbnQ6IG51bWJlciwgdmFsaWRhdGlvblJhbmdlOiBudW1iZXJbXSA9IFsgMCwgSW5maW5pdHkgXSwgY2hlY2tTdXJyb2dhdGU/OiBib29sZWFuKTogc3RyaW5nIHtcblx0aWYgKGNvZGVQb2ludCA8IHZhbGlkYXRpb25SYW5nZVswXSB8fCBjb2RlUG9pbnQgPiB2YWxpZGF0aW9uUmFuZ2VbMV0pIHtcblx0XHR0aHJvdyBFcnJvcignSW52YWxpZCBjb250aW51YXRpb24gYnl0ZScpO1xuXHR9XG5cblx0aWYgKGNoZWNrU3Vycm9nYXRlICYmIGNvZGVQb2ludCA+PSBISUdIX1NVUlJPR0FURV9NSU4gJiYgY29kZVBvaW50IDw9IExPV19TVVJST0dBVEVfTUFYKSB7XG5cdFx0dGhyb3cgRXJyb3IoJ1N1cnJvZ2F0ZSBpcyBub3QgYSBzY2FsYXIgdmFsdWUnKTtcblx0fVxuXG5cdGxldCBlbmNvZGVkID0gJyc7XG5cblx0aWYgKGNvZGVQb2ludCA+IDB4RkZGRikge1xuXHRcdGNvZGVQb2ludCAtPSAweDAxMDAwMDtcblx0XHRlbmNvZGVkICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZVBvaW50ID4+PiAweDEwICYgMHgwM0ZGIHwgSElHSF9TVVJST0dBVEVfTUlOKTtcblx0XHRjb2RlUG9pbnQgPSBMT1dfU1VSUk9HQVRFX01JTiB8IGNvZGVQb2ludCAmIDB4MDNGRjtcblx0fVxuXG5cdGVuY29kZWQgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShjb2RlUG9pbnQpO1xuXG5cdHJldHVybiBlbmNvZGVkO1xufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZVV0ZjhFbmNvZGVkQ29kZVBvaW50KGNvZGVQb2ludDogbnVtYmVyKTogdm9pZCB7XG5cdGlmICgoY29kZVBvaW50ICYgMHhDMCkgIT09IDB4ODApIHtcblx0XHR0aHJvdyBFcnJvcignSW52YWxpZCBjb250aW51YXRpb24gYnl0ZScpO1xuXHR9XG59XG5cbmV4cG9ydCB0eXBlIEJ5dGVCdWZmZXIgPSBVaW50OEFycmF5IHwgQnVmZmVyIHwgbnVtYmVyW107XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kZWMge1xuXHRlbmNvZGUoZGF0YTogc3RyaW5nKTogbnVtYmVyW107XG5cdGRlY29kZShkYXRhOiBCeXRlQnVmZmVyKTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGZhY2lsaXRpZXMgZm9yIGVuY29kaW5nIGEgc3RyaW5nIGludG8gYW4gQVNDSUktZW5jb2RlZCBieXRlIGJ1ZmZlciBhbmRcbiAqIGRlY29kaW5nIGFuIEFTQ0lJLWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGFzY2lpOiBDb2RlYyA9IHtcblx0LyoqXG5cdCAqIEVuY29kZXMgYSBzdHJpbmcgaW50byBhbiBBU0NJSS1lbmNvZGVkIGJ5dGUgYnVmZmVyLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgdGV4dCBzdHJpbmcgdG8gZW5jb2RlXG5cdCAqL1xuXHRlbmNvZGUoZGF0YTogc3RyaW5nKTogbnVtYmVyW10ge1xuXHRcdGlmIChkYXRhID09IG51bGwpIHtcblx0XHRcdHJldHVybiBbXTtcblx0XHR9XG5cblx0XHRjb25zdCBidWZmZXI6IG51bWJlcltdID0gW107XG5cblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0gZGF0YS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0YnVmZmVyW2ldID0gZGF0YS5jaGFyQ29kZUF0KGkpO1xuXHRcdH1cblxuXHRcdHJldHVybiBidWZmZXI7XG5cdH0sXG5cblx0LyoqXG5cdCAqIERlY29kZXMgYW4gQVNDSUktZW5jb2RlZCBieXRlIGJ1ZmZlciBpbnRvIGEgc3RyaW5nLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgYnl0ZSBidWZmZXIgdG8gZGVjb2RlXG5cdCAqL1xuXHRkZWNvZGUoZGF0YTogQnl0ZUJ1ZmZlcik6IHN0cmluZyB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuICcnO1xuXHRcdH1cblxuXHRcdGxldCBkZWNvZGVkID0gJyc7XG5cblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0gZGF0YS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0ZGVjb2RlZCArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGRhdGFbaV0pO1xuXHRcdH1cblxuXHRcdHJldHVybiBkZWNvZGVkO1xuXHR9XG59O1xuXG4vKipcbiAqIFByb3ZpZGVzIGZhY2lsaXRpZXMgZm9yIGVuY29kaW5nIGEgc3RyaW5nIGludG8gYSBCYXNlNjQtZW5jb2RlZCBieXRlIGJ1ZmZlciBhbmRcbiAqIGRlY29kaW5nIGEgQmFzZTY0LWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2U2NDogQ29kZWMgPSB7XG5cdC8qKlxuXHQgKiBFbmNvZGVzIGEgQmFzZTY0LWVuY29kZWQgc3RyaW5nIGludG8gYSBCYXNlNjQgYnl0ZSBidWZmZXIuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcgdG8gZW5jb2RlXG5cdCAqL1xuXHRlbmNvZGUoZGF0YTogc3RyaW5nKTogbnVtYmVyW10ge1xuXHRcdGlmIChkYXRhID09IG51bGwpIHtcblx0XHRcdHJldHVybiBbXTtcblx0XHR9XG5cblx0XHRjb25zdCBidWZmZXI6IG51bWJlcltdID0gW107XG5cblx0XHRsZXQgaSA9IDA7XG5cdFx0bGV0IGxlbmd0aCA9IGRhdGEubGVuZ3RoO1xuXG5cdFx0d2hpbGUgKGRhdGFbLS1sZW5ndGhdID09PSAnPScpIHsgfVxuXHRcdHdoaWxlIChpIDwgbGVuZ3RoKSB7XG5cdFx0XHRsZXQgZW5jb2RlZCA9IEJBU0U2NF9LRVlTVFIuaW5kZXhPZihkYXRhW2krK10pIDw8IDE4O1xuXHRcdFx0aWYgKGkgPD0gbGVuZ3RoKSB7XG5cdFx0XHRcdGVuY29kZWQgfD0gQkFTRTY0X0tFWVNUUi5pbmRleE9mKGRhdGFbaSsrXSkgPDwgMTI7XG5cdFx0XHR9XG5cdFx0XHRpZiAoaSA8PSBsZW5ndGgpIHtcblx0XHRcdFx0ZW5jb2RlZCB8PSBCQVNFNjRfS0VZU1RSLmluZGV4T2YoZGF0YVtpKytdKSA8PCA2O1xuXHRcdFx0fVxuXHRcdFx0aWYgKGkgPD0gbGVuZ3RoKSB7XG5cdFx0XHRcdGVuY29kZWQgfD0gQkFTRTY0X0tFWVNUUi5pbmRleE9mKGRhdGFbaSsrXSk7XG5cdFx0XHR9XG5cblx0XHRcdGJ1ZmZlci5wdXNoKChlbmNvZGVkID4+PiAxNikgJiAweGZmKTtcblx0XHRcdGJ1ZmZlci5wdXNoKChlbmNvZGVkID4+PiA4KSAmIDB4ZmYpO1xuXHRcdFx0YnVmZmVyLnB1c2goZW5jb2RlZCAmIDB4ZmYpO1xuXHRcdH1cblxuXHRcdHdoaWxlIChidWZmZXJbYnVmZmVyLmxlbmd0aCAtIDFdID09PSAwKSB7XG5cdFx0XHRidWZmZXIucG9wKCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGJ1ZmZlcjtcblx0fSxcblxuXHQvKipcblx0ICogRGVjb2RlcyBhIEJhc2U2NC1lbmNvZGVkIGJ5dGUgYnVmZmVyIGludG8gYSBCYXNlNjQtZW5jb2RlZCBzdHJpbmcuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSBieXRlIGJ1ZmZlciB0byBkZWNvZGVcblx0ICovXG5cdGRlY29kZShkYXRhOiBCeXRlQnVmZmVyKTogc3RyaW5nIHtcblx0XHRpZiAoZGF0YSA9PSBudWxsKSB7XG5cdFx0XHRyZXR1cm4gJyc7XG5cdFx0fVxuXG5cdFx0bGV0IGRlY29kZWQgPSAnJztcblx0XHRsZXQgaSA9IDA7XG5cblx0XHRmb3IgKGxldCBsZW5ndGggPSBkYXRhLmxlbmd0aCAtIChkYXRhLmxlbmd0aCAlIDMpOyBpIDwgbGVuZ3RoOyApIHtcblx0XHRcdGxldCBlbmNvZGVkID0gZGF0YVtpKytdIDw8IDE2IHwgZGF0YVtpKytdIDw8IDggfCBkYXRhW2krK107XG5cblx0XHRcdGRlY29kZWQgKz0gQkFTRTY0X0tFWVNUUi5jaGFyQXQoKGVuY29kZWQgPj4+IDE4KSAmIDB4M0YpO1xuXHRcdFx0ZGVjb2RlZCArPSBCQVNFNjRfS0VZU1RSLmNoYXJBdCgoZW5jb2RlZCA+Pj4gMTIpICYgMHgzRik7XG5cdFx0XHRkZWNvZGVkICs9IEJBU0U2NF9LRVlTVFIuY2hhckF0KChlbmNvZGVkID4+PiA2KSAmIDB4M0YpO1xuXHRcdFx0ZGVjb2RlZCArPSBCQVNFNjRfS0VZU1RSLmNoYXJBdChlbmNvZGVkICYgMHgzRik7XG5cdFx0fVxuXG5cdFx0aWYgKGRhdGEubGVuZ3RoICUgMyA9PT0gMSkge1xuXHRcdFx0bGV0IGVuY29kZWQgPSBkYXRhW2krK10gPDwgMTY7XG5cdFx0XHRkZWNvZGVkICs9IEJBU0U2NF9LRVlTVFIuY2hhckF0KChlbmNvZGVkID4+PiAxOCkgJiAweDNmKTtcblx0XHRcdGRlY29kZWQgKz0gQkFTRTY0X0tFWVNUUi5jaGFyQXQoKGVuY29kZWQgPj4+IDEyKSAmIDB4M2YpO1xuXHRcdFx0ZGVjb2RlZCArPSAnPT0nO1xuXHRcdH1cblx0XHRlbHNlIGlmIChkYXRhLmxlbmd0aCAlIDMgPT09IDIpIHtcblx0XHRcdGxldCBlbmNvZGVkID0gZGF0YVtpKytdIDw8IDE2IHwgZGF0YVtpKytdIDw8IDg7XG5cdFx0XHRkZWNvZGVkICs9IEJBU0U2NF9LRVlTVFIuY2hhckF0KChlbmNvZGVkID4+PiAxOCkgJiAweDNmKTtcblx0XHRcdGRlY29kZWQgKz0gQkFTRTY0X0tFWVNUUi5jaGFyQXQoKGVuY29kZWQgPj4+IDEyKSAmIDB4M2YpO1xuXHRcdFx0ZGVjb2RlZCArPSBCQVNFNjRfS0VZU1RSLmNoYXJBdCgoZW5jb2RlZCA+Pj4gNikgJiAweDNmKTtcblx0XHRcdGRlY29kZWQgKz0gJz0nO1xuXHRcdH1cblxuXHRcdHJldHVybiBkZWNvZGVkO1xuXHR9XG59O1xuXG4vKipcbiAqIFByb3ZpZGVzIGZhY2lsaXRpZXMgZm9yIGVuY29kaW5nIGEgc3RyaW5nIGludG8gYSBoZXgtZW5jb2RlZCBieXRlIGJ1ZmZlciBhbmRcbiAqIGRlY29kaW5nIGEgaGV4LWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGhleDogQ29kZWMgPSB7XG5cdC8qKlxuXHQgKiBFbmNvZGVzIGEgc3RyaW5nIGludG8gYSBoZXgtZW5jb2RlZCBieXRlIGJ1ZmZlci5cblx0ICpcblx0ICogQHBhcmFtIGRhdGEgVGhlIGhleC1lbmNvZGVkIHN0cmluZyB0byBlbmNvZGVcblx0ICovXG5cdGVuY29kZShkYXRhOiBzdHJpbmcpOiBudW1iZXJbXSB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuIFtdO1xuXHRcdH1cblxuXHRcdGNvbnN0IGJ1ZmZlcjogbnVtYmVyW10gPSBbXTtcblxuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBkYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSArPSAyKSB7XG5cdFx0XHRsZXQgZW5jb2RlZENoYXIgPSBwYXJzZUludChkYXRhLnN1YnN0cihpLCAyKSwgMTYpO1xuXG5cdFx0XHRidWZmZXIucHVzaChlbmNvZGVkQ2hhcik7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGJ1ZmZlcjtcblx0fSxcblxuXHQvKipcblx0ICogRGVjb2RlcyBhIGhleC1lbmNvZGVkIGJ5dGUgYnVmZmVyIGludG8gYSBoZXgtZW5jb2RlZCBzdHJpbmcuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSBieXRlIGJ1ZmZlciB0byBkZWNvZGVcblx0ICovXG5cdGRlY29kZShkYXRhOiBCeXRlQnVmZmVyKTogc3RyaW5nIHtcblx0XHRpZiAoZGF0YSA9PSBudWxsKSB7XG5cdFx0XHRyZXR1cm4gJyc7XG5cdFx0fVxuXG5cdFx0bGV0IGRlY29kZWQgPSAnJztcblxuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBkYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0XHRkZWNvZGVkICs9IGRhdGFbaV0udG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGRlY29kZWQ7XG5cdH1cbn07XG5cbi8qKlxuICogUHJvdmlkZXMgZmFjaWxpdGllcyBmb3IgZW5jb2RpbmcgYSBzdHJpbmcgaW50byBhIFVURi04LWVuY29kZWQgYnl0ZSBidWZmZXIgYW5kXG4gKiBkZWNvZGluZyBhIFVURi04LWVuY29kZWQgYnl0ZSBidWZmZXIgaW50byBhIHN0cmluZy5cbiAqIEluc3BpcmVkIGJ5IHRoZSB3b3JrIG9mOiBodHRwczovL2dpdGh1Yi5jb20vbWF0aGlhc2J5bmVucy91dGY4LmpzXG4gKi9cbmV4cG9ydCBjb25zdCB1dGY4OiBDb2RlYyA9IHtcblx0LyoqXG5cdCAqIEVuY29kZXMgYSBzdHJpbmcgaW50byBhIFVURi04LWVuY29kZWQgYnl0ZSBidWZmZXIuXG5cdCAqXG5cdCAqIEBwYXJhbSBkYXRhIFRoZSB0ZXh0IHN0cmluZyB0byBlbmNvZGVcblx0ICovXG5cdGVuY29kZShkYXRhOiBzdHJpbmcpOiBudW1iZXJbXSB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuIFtdO1xuXHRcdH1cblxuXHRcdGNvbnN0IGJ1ZmZlcjogbnVtYmVyW10gPSBbXTtcblxuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBkYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0XHRsZXQgZW5jb2RlZENoYXIgPSBkYXRhLmNoYXJDb2RlQXQoaSk7XG5cblx0XHRcdC8qKlxuXHRcdFx0ICogU3Vycm9nYXRlc1xuXHRcdFx0ICogaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Vbml2ZXJzYWxfQ2hhcmFjdGVyX1NldF9jaGFyYWN0ZXJzXG5cdFx0XHQgKi9cblx0XHRcdGlmIChlbmNvZGVkQ2hhciA+PSBISUdIX1NVUlJPR0FURV9NSU4gJiYgZW5jb2RlZENoYXIgPD0gSElHSF9TVVJST0dBVEVfTUFYKSB7XG5cdFx0XHRcdGxldCBsb3dTdXJyb2dhdGUgPSBkYXRhLmNoYXJDb2RlQXQoaSArIDEpO1xuXHRcdFx0XHRpZiAobG93U3Vycm9nYXRlID49IExPV19TVVJST0dBVEVfTUlOICYmIGxvd1N1cnJvZ2F0ZSA8PSBMT1dfU1VSUk9HQVRFX01BWCkge1xuXHRcdFx0XHRcdGVuY29kZWRDaGFyID0gMHgwMTAwMDAgKyAoZW5jb2RlZENoYXIgLSBISUdIX1NVUlJPR0FURV9NSU4pICogMHgwNDAwICsgKGxvd1N1cnJvZ2F0ZSAtIExPV19TVVJST0dBVEVfTUlOKTtcblx0XHRcdFx0XHRpKys7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0aWYgKGVuY29kZWRDaGFyIDwgMHg4MCkge1xuXHRcdFx0XHRidWZmZXIucHVzaChlbmNvZGVkQ2hhcik7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0aWYgKGVuY29kZWRDaGFyIDwgMHg4MDApIHtcblx0XHRcdFx0XHRidWZmZXIucHVzaCgoKGVuY29kZWRDaGFyID4+IDB4MDYpICYgMHgxRikgfCAweEMwKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIGlmIChlbmNvZGVkQ2hhciA8IDB4MDEwMDAwKSB7XG5cdFx0XHRcdFx0aWYgKGVuY29kZWRDaGFyID49IEhJR0hfU1VSUk9HQVRFX01JTiAmJiBlbmNvZGVkQ2hhciA8PSBMT1dfU1VSUk9HQVRFX01BWCkge1xuXHRcdFx0XHRcdFx0dGhyb3cgRXJyb3IoJ1N1cnJvZ2F0ZSBpcyBub3QgYSBzY2FsYXIgdmFsdWUnKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRidWZmZXIucHVzaCgoKGVuY29kZWRDaGFyID4+IDB4MEMpICYgMHgwRikgfCAweEUwKTtcblx0XHRcdFx0XHRidWZmZXIucHVzaCgoKGVuY29kZWRDaGFyID4+IDB4MDYpICYgMHgzRikgfCAweDgwKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIGlmIChlbmNvZGVkQ2hhciA8IDB4MjAwMDAwKSB7XG5cdFx0XHRcdFx0YnVmZmVyLnB1c2goKChlbmNvZGVkQ2hhciA+PiAweDEyKSAmIDB4MDcpIHwgMHhGMCk7XG5cdFx0XHRcdFx0YnVmZmVyLnB1c2goKChlbmNvZGVkQ2hhciA+PiAweDBDKSAmIDB4M0YpIHwgMHg4MCk7XG5cdFx0XHRcdFx0YnVmZmVyLnB1c2goKChlbmNvZGVkQ2hhciA+PiAweDA2KSAmIDB4M0YpIHwgMHg4MCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0YnVmZmVyLnB1c2goKGVuY29kZWRDaGFyICYgMHgzRikgfCAweDgwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gYnVmZmVyO1xuXHR9LFxuXG5cdC8qKlxuXHQgKiBEZWNvZGVzIGEgVVRGLTgtZW5jb2RlZCBieXRlIGJ1ZmZlciBpbnRvIGEgc3RyaW5nLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgYnl0ZSBidWZmZXIgdG8gZGVjb2RlXG5cdCAqL1xuXHRkZWNvZGUoZGF0YTogQnl0ZUJ1ZmZlcik6IHN0cmluZyB7XG5cdFx0aWYgKGRhdGEgPT0gbnVsbCkge1xuXHRcdFx0cmV0dXJuICcnO1xuXHRcdH1cblxuXHRcdGxldCBkZWNvZGVkID0gJyc7XG5cblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0gZGF0YS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0bGV0IGJ5dGUxID0gZGF0YVtpXSAmIDB4RkY7XG5cblx0XHRcdGlmICgoYnl0ZTEgJiAweDgwKSA9PT0gMCkge1xuXHRcdFx0XHRkZWNvZGVkICs9IGRlY29kZVV0ZjhFbmNvZGVkQ29kZVBvaW50KGJ5dGUxKTtcblx0XHRcdH1cblx0XHRcdGVsc2UgaWYgKChieXRlMSAmIDB4RTApID09PSAweEMwKSB7XG5cdFx0XHRcdGxldCBieXRlMiA9IGRhdGFbKytpXSAmIDB4RkY7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTIpO1xuXHRcdFx0XHRieXRlMiA9IGJ5dGUyICYgMHgzRjtcblx0XHRcdFx0bGV0IGVuY29kZWRCeXRlID0gKChieXRlMSAmIDB4MUYpIDw8IDB4MDYpIHwgYnl0ZTI7XG5cdFx0XHRcdGRlY29kZWQgKz0gZGVjb2RlVXRmOEVuY29kZWRDb2RlUG9pbnQoZW5jb2RlZEJ5dGUsIFsweDgwLCBJbmZpbml0eV0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSBpZiAoKGJ5dGUxICYgMHhGMCkgPT09IDB4RTApIHtcblx0XHRcdFx0bGV0IGJ5dGUyID0gZGF0YVsrK2ldICYgMHhGRjtcblx0XHRcdFx0dmFsaWRhdGVVdGY4RW5jb2RlZENvZGVQb2ludChieXRlMik7XG5cdFx0XHRcdGJ5dGUyID0gYnl0ZTIgJiAweDNGO1xuXG5cdFx0XHRcdGxldCBieXRlMyA9IGRhdGFbKytpXSAmIDB4RkY7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTMpO1xuXHRcdFx0XHRieXRlMyA9IGJ5dGUzICYgMHgzRjtcblxuXHRcdFx0XHRsZXQgZW5jb2RlZEJ5dGUgPSAoKGJ5dGUxICYgMHgxRikgPDwgMHgwQykgfCAoYnl0ZTIgPDwgMHgwNikgfCBieXRlMztcblx0XHRcdFx0ZGVjb2RlZCArPSBkZWNvZGVVdGY4RW5jb2RlZENvZGVQb2ludChlbmNvZGVkQnl0ZSwgWyAweDA4MDAsIEluZmluaXR5IF0sIHRydWUpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSBpZiAoKGJ5dGUxICYgMHhGOCkgPT09IDB4RjApIHtcblx0XHRcdFx0bGV0IGJ5dGUyID0gZGF0YVsrK2ldICYgMHhGRjtcblx0XHRcdFx0dmFsaWRhdGVVdGY4RW5jb2RlZENvZGVQb2ludChieXRlMik7XG5cdFx0XHRcdGJ5dGUyID0gYnl0ZTIgJiAweDNGO1xuXG5cdFx0XHRcdGxldCBieXRlMyA9IGRhdGFbKytpXSAmIDB4RkY7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTMpO1xuXHRcdFx0XHRieXRlMyA9IGJ5dGUzICYgMHgzRjtcblxuXHRcdFx0XHRsZXQgYnl0ZTQgPSBkYXRhWysraV0gJiAweEZGO1xuXHRcdFx0XHR2YWxpZGF0ZVV0ZjhFbmNvZGVkQ29kZVBvaW50KGJ5dGU0KTtcblx0XHRcdFx0Ynl0ZTQgPSBieXRlNCAmIDB4M0Y7XG5cblx0XHRcdFx0bGV0IGVuY29kZWRCeXRlID0gKChieXRlMSAmIDB4MUYpIDw8IDB4MEMpIHwgKGJ5dGUyIDw8IDB4MEMpIHwgKGJ5dGUzIDw8IDB4MDYpIHwgYnl0ZTQ7XG5cdFx0XHRcdGRlY29kZWQgKz0gZGVjb2RlVXRmOEVuY29kZWRDb2RlUG9pbnQoZW5jb2RlZEJ5dGUsIFsgMHgwMTAwMDAsIDB4MTBGRkZGIF0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHZhbGlkYXRlVXRmOEVuY29kZWRDb2RlUG9pbnQoYnl0ZTEpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiBkZWNvZGVkO1xuXHR9XG59O1xuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var aspect_1 = require('./aspect'); | ||
@@ -22,3 +23,3 @@ var Evented = (function () { | ||
if (method) { | ||
return method.call(this, data); | ||
method.call(this, data); | ||
} | ||
@@ -45,6 +46,6 @@ }; | ||
return Evented; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = Evented; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9FdmVudGVkLnRzIl0sIm5hbWVzIjpbIkV2ZW50ZWQiLCJFdmVudGVkLmNvbnN0cnVjdG9yIiwiRXZlbnRlZC5lbWl0IiwiRXZlbnRlZC5vbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFDQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFOUI7UUFBQUE7UUErQkFDLENBQUNBO1FBOUJBRDs7O1dBR0dBO1FBQ0hBLHNCQUFJQSxHQUFKQSxVQUE0QkEsSUFBT0E7WUFDbENFLElBQU1BLElBQUlBLEdBQUdBLE1BQU1BLEdBQUdBLElBQUlBLENBQUNBLElBQUlBLENBQUNBO1lBQ2hDQSxJQUFNQSxNQUFNQSxHQUFvQkEsSUFBS0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7WUFDNUNBLEVBQUVBLENBQUNBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO2dCQUNaQSxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxJQUFJQSxFQUFFQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUNoQ0EsQ0FBQ0E7UUFDRkEsQ0FBQ0E7UUFFREY7Ozs7O1dBS0dBO1FBQ0hBLG9CQUFFQSxHQUFGQSxVQUFHQSxJQUFZQSxFQUFFQSxRQUFzQ0E7WUFDdERHLElBQU1BLElBQUlBLEdBQUdBLE1BQU1BLEdBQUdBLElBQUlBLENBQUNBO1lBQzNCQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFRQSxJQUFLQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDekJBLDZDQUE2Q0E7Z0JBQzdDQSxNQUFNQSxDQUFDQSxjQUFjQSxDQUFDQSxJQUFJQSxFQUFFQSxJQUFJQSxFQUFFQTtvQkFDakNBLFlBQVlBLEVBQUVBLElBQUlBO29CQUNsQkEsS0FBS0EsRUFBRUEsU0FBU0E7b0JBQ2hCQSxRQUFRQSxFQUFFQSxJQUFJQTtpQkFDZEEsQ0FBQ0EsQ0FBQ0E7WUFDSkEsQ0FBQ0E7WUFDREEsTUFBTUEsQ0FBQ0EsV0FBRUEsQ0FBQ0EsSUFBSUEsRUFBRUEsSUFBSUEsRUFBRUEsUUFBUUEsQ0FBQ0EsQ0FBQ0E7UUFDakNBLENBQUNBO1FBQ0ZILGNBQUNBO0lBQURBLENBQUNBLEFBL0JELElBK0JDO0lBL0JEOzZCQStCQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFuZGxlLCBFdmVudE9iamVjdCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBvbiB9IGZyb20gJy4vYXNwZWN0JztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRXZlbnRlZCB7XG5cdC8qKlxuXHQgKiBFbWl0cyBhbiBldmVudCwgZmlyaW5nIGxpc3RlbmVycyByZWdpc3RlcmVkIGZvciBpdC5cblx0ICogQHBhcmFtIGV2ZW50IFRoZSBldmVudCBvYmplY3QgdG8gZW1pdFxuXHQgKi9cblx0ZW1pdDxUIGV4dGVuZHMgRXZlbnRPYmplY3Q+KGRhdGE6IFQpOiB2b2lkIHtcblx0XHRjb25zdCB0eXBlID0gJ19fb24nICsgZGF0YS50eXBlO1xuXHRcdGNvbnN0IG1ldGhvZDogRnVuY3Rpb24gPSAoPGFueT4gdGhpcylbdHlwZV07XG5cdFx0aWYgKG1ldGhvZCkge1xuXHRcdFx0cmV0dXJuIG1ldGhvZC5jYWxsKHRoaXMsIGRhdGEpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBMaXN0ZW5zIGZvciBhbiBldmVudCwgY2FsbGluZyB0aGUgbGlzdGVuZXIgd2hlbmV2ZXIgdGhlIGV2ZW50IGZpcmVzLlxuXHQgKiBAcGFyYW0gdHlwZSBFdmVudCB0eXBlIHRvIGxpc3RlbiBmb3Jcblx0ICogQHBhcmFtIGxpc3RlbmVyIENhbGxiYWNrIHRvIGhhbmRsZSB0aGUgZXZlbnQgd2hlbiBpdCBmaXJlc1xuXHQgKiBAcmV0dXJuIEEgaGFuZGxlIHdoaWNoIHdpbGwgcmVtb3ZlIHRoZSBsaXN0ZW5lciB3aGVuIGRlc3Ryb3kgaXMgY2FsbGVkXG5cdCAqL1xuXHRvbih0eXBlOiBzdHJpbmcsIGxpc3RlbmVyOiAoZXZlbnQ6IEV2ZW50T2JqZWN0KSA9PiB2b2lkKTogSGFuZGxlIHtcblx0XHRjb25zdCBuYW1lID0gJ19fb24nICsgdHlwZTtcblx0XHRpZiAoISg8YW55PiB0aGlzKVtuYW1lXSkge1xuXHRcdFx0Ly8gZGVmaW5lIGEgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgKHNlZSAjNzcpXG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgbmFtZSwge1xuXHRcdFx0XHRjb25maWd1cmFibGU6IHRydWUsXG5cdFx0XHRcdHZhbHVlOiB1bmRlZmluZWQsXG5cdFx0XHRcdHdyaXRhYmxlOiB0cnVlXG5cdFx0XHR9KTtcblx0XHR9XG5cdFx0cmV0dXJuIG9uKHRoaXMsIG5hbWUsIGxpc3RlbmVyKTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9FdmVudGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUNBLHVCQUFtQixVQUFVLENBQUMsQ0FBQTtJQUU5QjtRQUFBO1FBK0JBLENBQUM7UUE5QkE7OztXQUdHO1FBQ0gsc0JBQUksR0FBSixVQUE0QixJQUFPO1lBQ2xDLElBQU0sSUFBSSxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2hDLElBQU0sTUFBTSxHQUFvQixJQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDWixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN6QixDQUFDO1FBQ0YsQ0FBQztRQUVEOzs7OztXQUtHO1FBQ0gsb0JBQUUsR0FBRixVQUFHLElBQVksRUFBRSxRQUFzQztZQUN0RCxJQUFNLElBQUksR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQzNCLEVBQUUsQ0FBQyxDQUFDLENBQVEsSUFBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekIsNkNBQTZDO2dCQUM3QyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUU7b0JBQ2pDLFlBQVksRUFBRSxJQUFJO29CQUNsQixLQUFLLEVBQUUsU0FBUztvQkFDaEIsUUFBUSxFQUFFLElBQUk7aUJBQ2QsQ0FBQyxDQUFDO1lBQ0osQ0FBQztZQUNELE1BQU0sQ0FBQyxXQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNqQyxDQUFDO1FBQ0YsY0FBQztJQUFELENBQUMsQUEvQkQsSUErQkM7SUEvQkQ7NkJBK0JDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYW5kbGUsIEV2ZW50T2JqZWN0IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IG9uIH0gZnJvbSAnLi9hc3BlY3QnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFdmVudGVkIHtcblx0LyoqXG5cdCAqIEVtaXRzIGFuIGV2ZW50LCBmaXJpbmcgbGlzdGVuZXJzIHJlZ2lzdGVyZWQgZm9yIGl0LlxuXHQgKiBAcGFyYW0gZXZlbnQgVGhlIGV2ZW50IG9iamVjdCB0byBlbWl0XG5cdCAqL1xuXHRlbWl0PFQgZXh0ZW5kcyBFdmVudE9iamVjdD4oZGF0YTogVCk6IHZvaWQge1xuXHRcdGNvbnN0IHR5cGUgPSAnX19vbicgKyBkYXRhLnR5cGU7XG5cdFx0Y29uc3QgbWV0aG9kOiBGdW5jdGlvbiA9ICg8YW55PiB0aGlzKVt0eXBlXTtcblx0XHRpZiAobWV0aG9kKSB7XG5cdFx0XHRtZXRob2QuY2FsbCh0aGlzLCBkYXRhKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogTGlzdGVucyBmb3IgYW4gZXZlbnQsIGNhbGxpbmcgdGhlIGxpc3RlbmVyIHdoZW5ldmVyIHRoZSBldmVudCBmaXJlcy5cblx0ICogQHBhcmFtIHR5cGUgRXZlbnQgdHlwZSB0byBsaXN0ZW4gZm9yXG5cdCAqIEBwYXJhbSBsaXN0ZW5lciBDYWxsYmFjayB0byBoYW5kbGUgdGhlIGV2ZW50IHdoZW4gaXQgZmlyZXNcblx0ICogQHJldHVybiBBIGhhbmRsZSB3aGljaCB3aWxsIHJlbW92ZSB0aGUgbGlzdGVuZXIgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuXHQgKi9cblx0b24odHlwZTogc3RyaW5nLCBsaXN0ZW5lcjogKGV2ZW50OiBFdmVudE9iamVjdCkgPT4gdm9pZCk6IEhhbmRsZSB7XG5cdFx0Y29uc3QgbmFtZSA9ICdfX29uJyArIHR5cGU7XG5cdFx0aWYgKCEoPGFueT4gdGhpcylbbmFtZV0pIHtcblx0XHRcdC8vIGRlZmluZSBhIG5vbi1lbnVtZXJhYmxlIHByb3BlcnR5IChzZWUgIzc3KVxuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIG5hbWUsIHtcblx0XHRcdFx0Y29uZmlndXJhYmxlOiB0cnVlLFxuXHRcdFx0XHR2YWx1ZTogdW5kZWZpbmVkLFxuXHRcdFx0XHR3cml0YWJsZTogdHJ1ZVxuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdHJldHVybiBvbih0aGlzLCBuYW1lLCBsaXN0ZW5lcik7XG5cdH1cbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var globalObject = Function('return this')(); | ||
@@ -14,2 +15,2 @@ Object.defineProperty(exports, "__esModule", { value: true }); | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2dsb2JhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUFBLElBQU0sWUFBWSxHQUFRLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO0lBQ3BEO3NCQUFlLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGdsb2JhbE9iamVjdDogYW55ID0gRnVuY3Rpb24oJ3JldHVybiB0aGlzJykoKTtcbmV4cG9ydCBkZWZhdWx0IGdsb2JhbE9iamVjdDtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2dsb2JhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQSxJQUFNLFlBQVksR0FBUSxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztJQUNwRDtzQkFBZSxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBnbG9iYWxPYmplY3Q6IGFueSA9IEZ1bmN0aW9uKCdyZXR1cm4gdGhpcycpKCk7XG5leHBvcnQgZGVmYXVsdCBnbG9iYWxPYmplY3Q7XG4iXX0= |
95
has.js
@@ -9,6 +9,69 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var global_1 = require('./global'); | ||
exports.cache = Object.create(null); | ||
var testFunctions = Object.create(null); | ||
exports.testFunctions = Object.create(null); | ||
/** | ||
* Conditional loading of AMD modules based on a has feature test value. | ||
* | ||
* @param resourceId Gives the resolved module id to load. | ||
* @param require The loader require function with respect to the module that contained the plugin resource in it's dependency list. | ||
* @param load Callback to loader that consumes result of plugin demand. | ||
*/ | ||
function load(resourceId, require, load, config) { | ||
if (resourceId) { | ||
require([resourceId], load); | ||
} | ||
else { | ||
load(); | ||
} | ||
} | ||
exports.load = load; | ||
/** | ||
* Resolves resourceId into a module id based on possibly-nested tenary expression that branches on has feature test value(s). | ||
* | ||
* @param resourceId The id of the module | ||
* @param normalize Resolves a relative module id into an absolute module id | ||
*/ | ||
function normalize(resourceId, normalize) { | ||
var tokens = resourceId.match(/[\?:]|[^:\?]*/g); | ||
var i = 0; | ||
function get(skip) { | ||
var term = tokens[i++]; | ||
if (term === ':') { | ||
// empty string module name, resolves to null | ||
return null; | ||
} | ||
else { | ||
// postfixed with a ? means it is a feature to branch on, the term is the name of the feature | ||
if (tokens[i++] === '?') { | ||
if (!skip && has(term)) { | ||
// matched the feature, get the first value from the options | ||
return get(); | ||
} | ||
else { | ||
// did not match, get the second value, passing over the first | ||
get(true); | ||
return get(skip); | ||
} | ||
} | ||
// a module | ||
return term; | ||
} | ||
} | ||
resourceId = get(); | ||
return resourceId && normalize(resourceId); | ||
} | ||
exports.normalize = normalize; | ||
/** | ||
* Check if a feature has already been registered | ||
* | ||
* @param feature the name of the feature | ||
* @return if the feature has been registered | ||
*/ | ||
function exists(feature) { | ||
return feature in exports.cache || feature in exports.testFunctions; | ||
} | ||
exports.exists = exists; | ||
/** | ||
* Register a new test for a named feature. | ||
@@ -23,14 +86,22 @@ * | ||
* }); | ||
* | ||
* @param feature the name of the feature | ||
* @param value the value reported of the feature, or a function that will be executed once on first test | ||
* @param overwrite if an existing value should be overwritten. Defaults to false. | ||
* @return if the feature test was successfully added | ||
*/ | ||
function add(feature, value, overwrite) { | ||
if (overwrite === void 0) { overwrite = false; } | ||
if ((feature in exports.cache || feature in testFunctions) && !overwrite) { | ||
return; | ||
if (exists(feature) && !overwrite) { | ||
return false; | ||
} | ||
if (typeof value === 'function') { | ||
testFunctions[feature] = value; | ||
exports.testFunctions[feature] = value; | ||
} | ||
else { | ||
exports.cache[feature] = value; | ||
// Ensure we don't have stale tests sitting around that could overwrite a cache value being set | ||
delete exports.testFunctions[feature]; | ||
} | ||
return true; | ||
} | ||
@@ -46,5 +117,5 @@ exports.add = add; | ||
var result; | ||
if (testFunctions[feature]) { | ||
result = exports.cache[feature] = testFunctions[feature].call(null); | ||
testFunctions[feature] = null; | ||
if (exports.testFunctions[feature]) { | ||
result = exports.cache[feature] = exports.testFunctions[feature].call(null); | ||
exports.testFunctions[feature] = null; | ||
} | ||
@@ -103,3 +174,11 @@ else { | ||
}); | ||
// Native Array methods | ||
add('es6-array-from', 'from' in global_1.default.Array); | ||
add('es6-array-of', 'of' in global_1.default.Array); | ||
add('es6-array-fill', 'fill' in global_1.default.Array.prototype); | ||
add('es6-array-findIndex', 'findIndex' in global_1.default.Array.prototype); | ||
add('es6-array-find', 'find' in global_1.default.Array.prototype); | ||
add('es6-array-copyWithin', 'copyWithin' in global_1.default.Array.prototype); | ||
add('es7-array-includes', 'includes' in global_1.default.Array.prototype); | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2hhcy50cyJdLCJuYW1lcyI6WyJhZGQiLCJoYXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsdUJBQW1CLFVBQVUsQ0FBQyxDQUFBO0lBRWpCLGFBQUssR0FBYyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELElBQU0sYUFBYSxHQUFvQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTNEOzs7Ozs7Ozs7O09BVUc7SUFDSCxhQUFvQixPQUFlLEVBQUUsS0FBVSxFQUFFLFNBQTBCO1FBQTFCQSx5QkFBMEJBLEdBQTFCQSxpQkFBMEJBO1FBQzFFQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxPQUFPQSxJQUFJQSxhQUFLQSxJQUFJQSxPQUFPQSxJQUFJQSxhQUFhQSxDQUFDQSxJQUFJQSxDQUFDQSxTQUFTQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNsRUEsTUFBTUEsQ0FBQ0E7UUFDUkEsQ0FBQ0E7UUFFREEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsT0FBT0EsS0FBS0EsS0FBS0EsVUFBVUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDakNBLGFBQWFBLENBQUNBLE9BQU9BLENBQUNBLEdBQUdBLEtBQUtBLENBQUNBO1FBQ2hDQSxDQUFDQTtRQUNEQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUNMQSxhQUFLQSxDQUFDQSxPQUFPQSxDQUFDQSxHQUFHQSxLQUFLQSxDQUFDQTtRQUN4QkEsQ0FBQ0E7SUFDRkEsQ0FBQ0E7SUFYZSxXQUFHLE1BV2xCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGFBQTRCLE9BQWU7UUFDMUNDLElBQUlBLE1BQVdBLENBQUNBO1FBRWhCQSxFQUFFQSxDQUFDQSxDQUFDQSxhQUFhQSxDQUFDQSxPQUFPQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUM1QkEsTUFBTUEsR0FBR0EsYUFBS0EsQ0FBQ0EsT0FBT0EsQ0FBQ0EsR0FBR0Es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TyxnQkFBTSxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUMsQ0FBQztJQUN4RCxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sZ0JBQU0sQ0FBQyxjQUFjLEtBQUssV0FBVyxDQUFDLENBQUM7SUFDekQsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksY0FBYyxJQUFJLGdCQUFNLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdFLEdBQUcsQ0FBQyxXQUFXLEVBQUU7UUFDaEIsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBTSxPQUFPLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNyQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDL0IsT0FBTyxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7UUFDOUIsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxLQUFLLE1BQU0sQ0FBQztJQUN4QyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnbG9iYWwgZnJvbSAnLi9nbG9iYWwnO1xuaW1wb3J0IHsgSGFzaCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5leHBvcnQgY29uc3QgY2FjaGU6IEhhc2g8YW55PiA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5jb25zdCB0ZXN0RnVuY3Rpb25zOiBIYXNoPCgpID0+IGFueT4gPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuXG4vKipcbiAqIFJlZ2lzdGVyIGEgbmV3IHRlc3QgZm9yIGEgbmFtZWQgZmVhdHVyZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogaGFzLmFkZCgnZG9tLWFkZGV2ZW50bGlzdGVuZXInLCAhIWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIpO1xuICpcbiAqIEBleGFtcGxlXG4gKiBoYXMuYWRkKCd0b3VjaC1ldmVudHMnLCBmdW5jdGlvbiAoKSB7XG4gKiAgICByZXR1cm4gJ29udG91Y2hzdGFydCcgaW4gZG9jdW1lbnRcbiAqIH0pO1xuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkKGZlYXR1cmU6IHN0cmluZywgdmFsdWU6IGFueSwgb3ZlcndyaXRlOiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcblx0aWYgKChmZWF0dXJlIGluIGNhY2hlIHx8IGZlYXR1cmUgaW4gdGVzdEZ1bmN0aW9ucykgJiYgIW92ZXJ3cml0ZSkge1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcblx0XHR0ZXN0RnVuY3Rpb25zW2ZlYXR1cmVdID0gdmFsdWU7XG5cdH1cblx0ZWxzZSB7XG5cdFx0Y2FjaGVbZmVhdHVyZV0gPSB2YWx1ZTtcblx0fVxufVxuXG4vKipcbiAqIFJldHVybiB0aGUgY3VycmVudCB2YWx1ZSBvZiBhIG5hbWVkIGZlYXR1cmUuXG4gKlxuICogQHBhcmFtIGZlYXR1cmUgVGhlIG5hbWUgKGlmIGEgc3RyaW5nKSBvciBpZGVudGlmaWVyIChpZiBhbiBpbnRlZ2VyKSBvZiB0aGUgZmVhdHVyZSB0byB0ZXN0LlxuICogQHJldHVybiBUaGUgdmFsdWUgb2YgYSBnaXZlbiBmZWF0dXJlIHRlc3RcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gaGFzKGZlYXR1cmU6IHN0cmluZyk6IGFueSB7XG5cdGxldCByZXN1bHQ6IGFueTtcblxuXHRpZiAodGVzdEZ1bmN0aW9uc1tmZWF0dXJlXSkge1xuXHRcdHJlc3VsdCA9IGNhY2hlW2ZlYXR1cmVdID0gdGVzdEZ1bmN0aW9uc1tmZWF0dXJlXS5jYWxsKG51bGwpO1xuXHRcdHRlc3RGdW5jdGlvbnNbZmVhdHVyZV0gPSBudWxsO1xuXHR9XG5cdGVsc2Uge1xuXHRcdHJlc3VsdCA9IGNhY2hlW2ZlYXR1cmVdO1xuXHR9XG5cblx0cmV0dXJuIHJlc3VsdDtcbn1cblxuLypcbiAqIE9PVEIgZmVhdHVyZSB0ZXN0c1xuICovXG5hZGQoJ2hvc3QtYnJvd3NlcicsIHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIGxvY2F0aW9uICE9PSAndW5kZWZpbmVkJyk7XG5hZGQoJ2hvc3Qtbm9kZScsIGZ1bmN0aW9uICgpIHtcblx0aWYgKHR5cGVvZiBwcm9jZXNzID09PSAnb2JqZWN0JyAmJiBwcm9jZXNzLnZlcnNpb25zICYmIHByb2Nlc3MudmVyc2lvbnMubm9kZSkge1xuXHRcdHJldHVybiBwcm9jZXNzLnZlcnNpb25zLm5vZGU7XG5cdH1cbn0pO1xuYWRkKCdmbG9hdDMyYXJyYXknLCAnRmxvYXQzMkFycmF5JyBpbiBnbG9iYWwpO1xuYWRkKCdzZXRpbW1lZGlhdGUnLCB0eXBlb2YgZ2xvYmFsLnNldEltbWVkaWF0ZSAhPT0gJ3VuZGVmaW5lZCcpO1xuYWRkKCdkb20tbXV0YXRpb25vYnNlcnZlcicsIGZ1bmN0aW9uKCk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gaGFzKCdob3N0LWJyb3dzZXInKSAmJiBCb29sZWFuKGdsb2JhbC5NdXRhdGlvbk9ic2VydmVyIHx8IGdsb2JhbC5XZWJLaXRNdXRhdGlvbk9ic2VydmVyKTtcbn0pO1xuYWRkKCdtaWNyb3Rhc2tzJywgZnVuY3Rpb24gKCkge1xuXHRyZXR1cm4gaGFzKCdwcm9taXNlJykgfHwgaGFzKCdob3N0LW5vZGUnKSB8fCBoYXMoJ2RvbS1tdXRhdGlvbm9ic2VydmVyJyk7XG59KTtcbmFkZCgnb2JqZWN0LWFzc2lnbicsIHR5cGVvZiAoPGFueT4gT2JqZWN0KS5hc3NpZ24gPT09ICdmdW5jdGlvbicpO1xuYWRkKCdvYmplY3Qtb2JzZXJ2ZScsIHR5cGVvZiAoPGFueT4gT2JqZWN0KS5vYnNlcnZlID09PSAnZnVuY3Rpb24nKTtcbmFkZCgncG9zdG1lc3NhZ2UnLCB0eXBlb2YgcG9zdE1lc3NhZ2UgPT09ICdmdW5jdGlvbicpO1xuYWRkKCdwcm9taXNlJywgdHlwZW9mIGdsb2JhbC5Qcm9taXNlICE9PSAndW5kZWZpbmVkJyk7XG5hZGQoJ3JhZicsIHR5cGVvZiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgPT09ICdmdW5jdGlvbicpO1xuYWRkKCd3ZWFrbWFwJywgZnVuY3Rpb24gKCkge1xuXHRpZiAodHlwZW9mIGdsb2JhbC5XZWFrTWFwICE9PSAndW5kZWZpbmVkJykge1xuXHRcdGNvbnN0IGtleTEgPSB7fTtcblx0XHRjb25zdCBrZXkyID0ge307XG5cdFx0Y29uc3QgbWFwID0gbmV3IGdsb2JhbC5XZWFrTWFwKFsgWyBrZXkxLCAxIF0gXSk7XG5cdFx0cmV0dXJuIG1hcC5nZXQoa2V5MSkgPT09IDEgJiYgbWFwLnNldChrZXkyLCAyKSA9PT0gbWFwO1xuXHR9XG5cdHJldHVybiBmYWxzZTtcbn0pO1xuYWRkKCdhcnJheWJ1ZmZlcicsIHR5cGVvZiBnbG9iYWwuQXJyYXlCdWZmZXIgIT09ICd1bmRlZmluZWQnKTtcbmFkZCgnZm9ybWRhdGEnLCB0eXBlb2YgZ2xvYmFsLkZvcm1EYXRhICE9PSAndW5kZWZpbmVkJyk7XG5hZGQoJ3hocicsIHR5cGVvZiBnbG9iYWwuWE1MSHR0cFJlcXVlc3QgIT09ICd1bmRlZmluZWQnKTtcbmFkZCgneGhyMicsIGhhcygneGhyJykgJiYgJ3Jlc3BvbnNlVHlwZScgaW4gZ2xvYmFsLlhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZSk7XG5hZGQoJ3hocjItYmxvYicsIGZ1bmN0aW9uICgpIHtcblx0aWYgKCFoYXMoJ3hocjInKSkge1xuXHRcdHJldHVybiBmYWxzZTtcblx0fVxuXG5cdGNvbnN0IHJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblx0cmVxdWVzdC5vcGVuKCdHRVQnLCAnLycsIHRydWUpO1xuXHRyZXF1ZXN0LnJlc3BvbnNlVHlwZSA9ICdibG9iJztcblx0cmVxdWVzdC5hYm9ydCgpO1xuXHRyZXR1cm4gcmVxdWVzdC5yZXNwb25zZVR5cGUgPT09ICdibG9iJztcbn0pO1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2hhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFNakIsYUFBSyxHQUFxQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLHFCQUFhLEdBQXFCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFbkU7Ozs7OztPQU1HO0lBQ0gsY0FBcUIsVUFBa0IsRUFBRSxPQUEyQixFQUFFLElBQTJCLEVBQUUsTUFBMEI7UUFDNUgsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUNoQixPQUFPLENBQUMsQ0FBRSxVQUFVLENBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvQixDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUM7WUFDTCxJQUFJLEVBQUUsQ0FBQztRQUNSLENBQUM7SUFDRixDQUFDO0lBUGUsWUFBSSxPQU9uQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxtQkFBMEIsVUFBa0IsRUFBRSxTQUF1QztRQUNwRixJQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRVYsYUFBYSxJQUFjO1lBQzFCLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3pCLEVBQUUsQ0FBQyxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNsQiw2Q0FBNkM7Z0JBQzdDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDYixDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUM7Z0JBQ0wsNkZBQTZGO2dCQUM3RixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6QixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUN4Qiw0REFBNEQ7d0JBQzVELE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDZCxDQUFDO29CQUNELElBQUksQ0FBQyxDQUFDO3dCQUNMLDhEQUE4RDt3QkFDOUQsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNWLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ2xCLENBQUM7Z0JBQ0YsQ0FBQztnQkFDRCxXQUFXO2dCQUNYLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDYixDQUFDO1FBQ0YsQ0FBQztRQUNELFVBQVUsR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNuQixNQUFNLENBQUMsVUFBVSxJQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBN0JlLGlCQUFTLFlBNkJ4QixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxnQkFBdUIsT0FBZTtRQUNyQyxNQUFNLENBQUMsT0FBTyxJQUFJLGFBQUssSUFBSSxPQUFPLElBQUkscUJBQWEsQ0FBQztJQUNyRCxDQUFDO0lBRmUsY0FBTSxTQUVyQixDQUFBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7OztPQWVHO0lBQ0gsYUFBb0IsT0FBZSxFQUFFLEtBQThCLEVBQUUsU0FBMEI7UUFBMUIseUJBQTBCLEdBQTFCLGlCQUEwQjtRQUM5RixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDZCxDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQztZQUNqQyxxQkFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFnQixLQUFLLENBQUM7UUFDN0MsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDO1lBQ0wsYUFBSyxDQUFDLE9BQU8sQ0FBQyxHQUFnQixLQUFLLENBQUM7WUFDcEMsK0ZBQStGO1lBQy9GLE9BQU8scUJBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQixDQUFDO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNiLENBQUM7SUFkZSxXQUFHLE1BY2xCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGFBQTRCLE9BQWU7UUFDMUMsSUFBSSxNQUFXLENBQUM7UUFFaEIsRUFBRSxDQUFDLENBQUMscUJBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUIsTUFBTSxHQUFHLGFBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxxQkFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1RCxxQkFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQztRQUMvQixDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUM7WUFDTCxNQUFNLEdBQUcsYUFBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pCLENBQUM7UUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ2YsQ0FBQztJQVpEO3lCQVlDLENBQUE7SUFFRDs7T0FFRztJQUNILEdBQUcsQ0FBQyxjQUFjLEVBQUUsT0FBTyxRQUFRLEtBQUssV0FBVyxJQUFJLE9BQU8sUUFBUSxLQUFLLFdBQVcsQ0FBQyxDQUFDO0lBQ3hGLEdBQUcsQ0FBQyxXQUFXLEVBQUU7UUFDaEIsRUFBRSxDQUFDLENBQUMsT0FBTyxPQUFPLEtBQUssUUFBUSxJQUFJLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzlFLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUM5QixDQUFDO0lBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsY0FBYyxFQUFFLGNBQWMsSUFBSSxnQkFBTSxDQUFDLENBQUM7SUFDOUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxPQUFPLGdCQUFNLENBQUMsWUFBWSxLQUFLLFdBQVcsQ0FBQyxDQUFDO0lBQ2hFLEdBQUcsQ0FBQyxzQkFBc0IsRUFBRTtRQUMzQixNQUFNLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxnQkFBTSxDQUFDLGdCQUFnQixJQUFJLGdCQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUNqRyxDQUFDLENBQUMsQ0FBQztJQUNILEdBQUcsQ0FBQyxZQUFZLEVBQUU7UUFDakIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDMUUsQ0FBQyxDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsZUFBZSxFQUFFLE9BQWMsTUFBTyxDQUFDLE1BQU0sS0FBSyxVQUFVLENBQUMsQ0FBQztJQUNsRSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsT0FBYyxNQUFPLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxDQUFDO0lBQ3BFLEdBQUcsQ0FBQyxhQUFhLEVBQUUsT0FBTyxXQUFXLEtBQUssVUFBVSxDQUFDLENBQUM7SUFDdEQsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLGdCQUFNLENBQUMsT0FBTyxLQUFLLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxxQkFBcUIsS0FBSyxVQUFVLENBQUMsQ0FBQztJQUN4RCxHQUFHLENBQUMsU0FBUyxFQUFFO1FBQ2QsRUFBRSxDQUFDLENBQUMsT0FBTyxnQkFBTSxDQUFDLE9BQU8sS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzNDLElBQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNoQixJQUFNLElBQUksR0FBRyxFQUFFLENBQUM7WUFDaEIsSUFBTSxHQUFHLEdBQUcsSUFBSSxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFFLENBQUUsSUFBSSxFQUFFLENBQUMsQ0FBRSxDQUFFLENBQUMsQ0FBQztZQUNoRCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDO1FBQ3hELENBQUM7UUFDRCxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQ2QsQ0FBQyxDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsYUFBYSxFQUFFLE9BQU8sZ0JBQU0sQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLENBQUM7SUFDOUQsR0FBRyxDQUFDLFVBQVUsRUFBRSxPQUFPLGdCQUFNLENBQUMsUUFBUSxLQUFLLFdBQVcsQ0FBQyxDQUFDO0lBQ3hELEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxnQkFBTSxDQUFDLGNBQWMsS0FBSyxXQUFXLENBQUMsQ0FBQztJQUN6RCxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxjQUFjLElBQUksZ0JBQU0sQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0UsR0FBRyxDQUFDLFdBQVcsRUFBRTtRQUNoQixFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEIsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNkLENBQUM7UUFFRCxJQUFNLE9BQU8sR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvQixPQUFPLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQztRQUM5QixPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEtBQUssTUFBTSxDQUFDO0lBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0gsdUJBQXVCO0lBQ3ZCLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLElBQUksZ0JBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxHQUFHLENBQUMsY0FBYyxFQUFFLElBQUksSUFBSSxnQkFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLElBQUksZ0JBQU0sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDeEQsR0FBRyxDQUFDLHFCQUFxQixFQUFFLFdBQVcsSUFBSSxnQkFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxJQUFJLGdCQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hELEdBQUcsQ0FBQyxzQkFBc0IsRUFBRSxZQUFZLElBQUksZ0JBQU0sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEUsR0FBRyxDQUFDLG9CQUFvQixFQUFFLFVBQVUsSUFBSSxnQkFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnbG9iYWwgZnJvbSAnLi9nbG9iYWwnO1xuaW1wb3J0IHsgSGFzaCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCB0eXBlIFRlc3RSZXN1bHQgPSBib29sZWFuIHwgc3RyaW5nIHwgbnVtYmVyO1xuZXhwb3J0IHR5cGUgVGVzdE1ldGhvZCA9ICgpID0+IFRlc3RSZXN1bHQ7XG5cbmV4cG9ydCBjb25zdCBjYWNoZTogSGFzaDxUZXN0UmVzdWx0PiA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5leHBvcnQgY29uc3QgdGVzdEZ1bmN0aW9uczogSGFzaDxUZXN0TWV0aG9kPiA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cbi8qKlxuICogQ29uZGl0aW9uYWwgbG9hZGluZyBvZiBBTUQgbW9kdWxlcyBiYXNlZCBvbiBhIGhhcyBmZWF0dXJlIHRlc3QgdmFsdWUuXG4gKlxuICogQHBhcmFtIHJlc291cmNlSWQgR2l2ZXMgdGhlIHJlc29sdmVkIG1vZHVsZSBpZCB0byBsb2FkLlxuICogQHBhcmFtIHJlcXVpcmUgVGhlIGxvYWRlciByZXF1aXJlIGZ1bmN0aW9uIHdpdGggcmVzcGVjdCB0byB0aGUgbW9kdWxlIHRoYXQgY29udGFpbmVkIHRoZSBwbHVnaW4gcmVzb3VyY2UgaW4gaXQncyBkZXBlbmRlbmN5IGxpc3QuXG4gKiBAcGFyYW0gbG9hZCBDYWxsYmFjayB0byBsb2FkZXIgdGhhdCBjb25zdW1lcyByZXN1bHQgb2YgcGx1Z2luIGRlbWFuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvYWQocmVzb3VyY2VJZDogc3RyaW5nLCByZXF1aXJlOiBEb2pvTG9hZGVyLlJlcXVpcmUsIGxvYWQ6ICh2YWx1ZT86IGFueSkgPT4gdm9pZCwgY29uZmlnPzogRG9qb0xvYWRlci5Db25maWcpOiB2b2lkIHtcblx0aWYgKHJlc291cmNlSWQpIHtcblx0XHRyZXF1aXJlKFsgcmVzb3VyY2VJZCBdLCBsb2FkKTtcblx0fVxuXHRlbHNlIHtcblx0XHRsb2FkKCk7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXNvbHZlcyByZXNvdXJjZUlkIGludG8gYSBtb2R1bGUgaWQgYmFzZWQgb24gcG9zc2libHktbmVzdGVkIHRlbmFyeSBleHByZXNzaW9uIHRoYXQgYnJhbmNoZXMgb24gaGFzIGZlYXR1cmUgdGVzdCB2YWx1ZShzKS5cbiAqXG4gKiBAcGFyYW0gcmVzb3VyY2VJZCBUaGUgaWQgb2YgdGhlIG1vZHVsZVxuICogQHBhcmFtIG5vcm1hbGl6ZSBSZXNvbHZlcyBhIHJlbGF0aXZlIG1vZHVsZSBpZCBpbnRvIGFuIGFic29sdXRlIG1vZHVsZSBpZFxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplKHJlc291cmNlSWQ6IHN0cmluZywgbm9ybWFsaXplOiAobW9kdWxlSWQ6IHN0cmluZykgPT4gc3RyaW5nKTogc3RyaW5nIHtcblx0Y29uc3QgdG9rZW5zID0gcmVzb3VyY2VJZC5tYXRjaCgvW1xcPzpdfFteOlxcP10qL2cpO1xuXHRsZXQgaSA9IDA7XG5cblx0ZnVuY3Rpb24gZ2V0KHNraXA/OiBib29sZWFuKTogc3RyaW5nIHtcblx0XHRjb25zdCB0ZXJtID0gdG9rZW5zW2krK107XG5cdFx0aWYgKHRlcm0gPT09ICc6Jykge1xuXHRcdFx0Ly8gZW1wdHkgc3RyaW5nIG1vZHVsZSBuYW1lLCByZXNvbHZlcyB0byBudWxsXG5cdFx0XHRyZXR1cm4gbnVsbDtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHQvLyBwb3N0Zml4ZWQgd2l0aCBhID8gbWVhbnMgaXQgaXMgYSBmZWF0dXJlIHRvIGJyYW5jaCBvbiwgdGhlIHRlcm0gaXMgdGhlIG5hbWUgb2YgdGhlIGZlYXR1cmVcblx0XHRcdGlmICh0b2tlbnNbaSsrXSA9PT0gJz8nKSB7XG5cdFx0XHRcdGlmICghc2tpcCAmJiBoYXModGVybSkpIHtcblx0XHRcdFx0XHQvLyBtYXRjaGVkIHRoZSBmZWF0dXJlLCBnZXQgdGhlIGZpcnN0IHZhbHVlIGZyb20gdGhlIG9wdGlvbnNcblx0XHRcdFx0XHRyZXR1cm4gZ2V0KCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0Ly8gZGlkIG5vdCBtYXRjaCwgZ2V0IHRoZSBzZWNvbmQgdmFsdWUsIHBhc3Npbmcgb3ZlciB0aGUgZmlyc3Rcblx0XHRcdFx0XHRnZXQodHJ1ZSk7XG5cdFx0XHRcdFx0cmV0dXJuIGdldChza2lwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Ly8gYSBtb2R1bGVcblx0XHRcdHJldHVybiB0ZXJtO1xuXHRcdH1cblx0fVxuXHRyZXNvdXJjZUlkID0gZ2V0KCk7XG5cdHJldHVybiByZXNvdXJjZUlkICYmIG5vcm1hbGl6ZShyZXNvdXJjZUlkKTtcbn1cblxuLyoqXG4gKiBDaGVjayBpZiBhIGZlYXR1cmUgaGFzIGFscmVhZHkgYmVlbiByZWdpc3RlcmVkXG4gKlxuICogQHBhcmFtIGZlYXR1cmUgdGhlIG5hbWUgb2YgdGhlIGZlYXR1cmVcbiAqIEByZXR1cm4gaWYgdGhlIGZlYXR1cmUgaGFzIGJlZW4gcmVnaXN0ZXJlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhpc3RzKGZlYXR1cmU6IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gZmVhdHVyZSBpbiBjYWNoZSB8fCBmZWF0dXJlIGluIHRlc3RGdW5jdGlvbnM7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBuZXcgdGVzdCBmb3IgYSBuYW1lZCBmZWF0dXJlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBoYXMuYWRkKCdkb20tYWRkZXZlbnRsaXN0ZW5lcicsICEhZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcik7XG4gKlxuICogQGV4YW1wbGVcbiAqIGhhcy5hZGQoJ3RvdWNoLWV2ZW50cycsIGZ1bmN0aW9uICgpIHtcbiAqICAgIHJldHVybiAnb250b3VjaHN0YXJ0JyBpbiBkb2N1bWVudFxuICogfSk7XG4gKlxuICogQHBhcmFtIGZlYXR1cmUgdGhlIG5hbWUgb2YgdGhlIGZlYXR1cmVcbiAqIEBwYXJhbSB2YWx1ZSB0aGUgdmFsdWUgcmVwb3J0ZWQgb2YgdGhlIGZlYXR1cmUsIG9yIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIG9uY2Ugb24gZmlyc3QgdGVzdFxuICogQHBhcmFtIG92ZXJ3cml0ZSBpZiBhbiBleGlzdGluZyB2YWx1ZSBzaG91bGQgYmUgb3ZlcndyaXR0ZW4uIERlZmF1bHRzIHRvIGZhbHNlLlxuICogQHJldHVybiBpZiB0aGUgZmVhdHVyZSB0ZXN0IHdhcyBzdWNjZXNzZnVsbHkgYWRkZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFkZChmZWF0dXJlOiBzdHJpbmcsIHZhbHVlOiBUZXN0UmVzdWx0IHwgVGVzdE1ldGhvZCwgb3ZlcndyaXRlOiBib29sZWFuID0gZmFsc2UpOiBib29sZWFuIHtcblx0aWYgKGV4aXN0cyhmZWF0dXJlKSAmJiAhb3ZlcndyaXRlKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0aWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuXHRcdHRlc3RGdW5jdGlvbnNbZmVhdHVyZV0gPSA8VGVzdE1ldGhvZD4gdmFsdWU7XG5cdH1cblx0ZWxzZSB7XG5cdFx0Y2FjaGVbZmVhdHVyZV0gPSA8VGVzdFJlc3VsdD4gdmFsdWU7XG5cdFx0Ly8gRW5zdXJlIHdlIGRvbid0IGhhdmUgc3RhbGUgdGVzdHMgc2l0dGluZyBhcm91bmQgdGhhdCBjb3VsZCBvdmVyd3JpdGUgYSBjYWNoZSB2YWx1ZSBiZWluZyBzZXRcblx0XHRkZWxldGUgdGVzdEZ1bmN0aW9uc1tmZWF0dXJlXTtcblx0fVxuXHRyZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBSZXR1cm4gdGhlIGN1cnJlbnQgdmFsdWUgb2YgYSBuYW1lZCBmZWF0dXJlLlxuICpcbiAqIEBwYXJhbSBmZWF0dXJlIFRoZSBuYW1lIChpZiBhIHN0cmluZykgb3IgaWRlbnRpZmllciAoaWYgYW4gaW50ZWdlcikgb2YgdGhlIGZlYXR1cmUgdG8gdGVzdC5cbiAqIEByZXR1cm4gVGhlIHZhbHVlIG9mIGEgZ2l2ZW4gZmVhdHVyZSB0ZXN0XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGhhcyhmZWF0dXJlOiBzdHJpbmcpOiBUZXN0UmVzdWx0IHtcblx0bGV0IHJlc3VsdDogYW55O1xuXG5cdGlmICh0ZXN0RnVuY3Rpb25zW2ZlYXR1cmVdKSB7XG5cdFx0cmVzdWx0ID0gY2FjaGVbZmVhdHVyZV0gPSB0ZXN0RnVuY3Rpb25zW2ZlYXR1cmVdLmNhbGwobnVsbCk7XG5cdFx0dGVzdEZ1bmN0aW9uc1tmZWF0dXJlXSA9IG51bGw7XG5cdH1cblx0ZWxzZSB7XG5cdFx0cmVzdWx0ID0gY2FjaGVbZmVhdHVyZV07XG5cdH1cblxuXHRyZXR1cm4gcmVzdWx0O1xufVxuXG4vKlxuICogT09UQiBmZWF0dXJlIHRlc3RzXG4gKi9cbmFkZCgnaG9zdC1icm93c2VyJywgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgbG9jYXRpb24gIT09ICd1bmRlZmluZWQnKTtcbmFkZCgnaG9zdC1ub2RlJywgZnVuY3Rpb24gKCkge1xuXHRpZiAodHlwZW9mIHByb2Nlc3MgPT09ICdvYmplY3QnICYmIHByb2Nlc3MudmVyc2lvbnMgJiYgcHJvY2Vzcy52ZXJzaW9ucy5ub2RlKSB7XG5cdFx0cmV0dXJuIHByb2Nlc3MudmVyc2lvbnMubm9kZTtcblx0fVxufSk7XG5hZGQoJ2Zsb2F0MzJhcnJheScsICdGbG9hdDMyQXJyYXknIGluIGdsb2JhbCk7XG5hZGQoJ3NldGltbWVkaWF0ZScsIHR5cGVvZiBnbG9iYWwuc2V0SW1tZWRpYXRlICE9PSAndW5kZWZpbmVkJyk7XG5hZGQoJ2RvbS1tdXRhdGlvbm9ic2VydmVyJywgZnVuY3Rpb24oKTogYm9vbGVhbiB7XG5cdHJldHVybiBoYXMoJ2hvc3QtYnJvd3NlcicpICYmIEJvb2xlYW4oZ2xvYmFsLk11dGF0aW9uT2JzZXJ2ZXIgfHwgZ2xvYmFsLldlYktpdE11dGF0aW9uT2JzZXJ2ZXIpO1xufSk7XG5hZGQoJ21pY3JvdGFza3MnLCBmdW5jdGlvbiAoKSB7XG5cdHJldHVybiBoYXMoJ3Byb21pc2UnKSB8fCBoYXMoJ2hvc3Qtbm9kZScpIHx8IGhhcygnZG9tLW11dGF0aW9ub2JzZXJ2ZXInKTtcbn0pO1xuYWRkKCdvYmplY3QtYXNzaWduJywgdHlwZW9mICg8YW55PiBPYmplY3QpLmFzc2lnbiA9PT0gJ2Z1bmN0aW9uJyk7XG5hZGQoJ29iamVjdC1vYnNlcnZlJywgdHlwZW9mICg8YW55PiBPYmplY3QpLm9ic2VydmUgPT09ICdmdW5jdGlvbicpO1xuYWRkKCdwb3N0bWVzc2FnZScsIHR5cGVvZiBwb3N0TWVzc2FnZSA9PT0gJ2Z1bmN0aW9uJyk7XG5hZGQoJ3Byb21pc2UnLCB0eXBlb2YgZ2xvYmFsLlByb21pc2UgIT09ICd1bmRlZmluZWQnKTtcbmFkZCgncmFmJywgdHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZSA9PT0gJ2Z1bmN0aW9uJyk7XG5hZGQoJ3dlYWttYXAnLCBmdW5jdGlvbiAoKSB7XG5cdGlmICh0eXBlb2YgZ2xvYmFsLldlYWtNYXAgIT09ICd1bmRlZmluZWQnKSB7XG5cdFx0Y29uc3Qga2V5MSA9IHt9O1xuXHRcdGNvbnN0IGtleTIgPSB7fTtcblx0XHRjb25zdCBtYXAgPSBuZXcgZ2xvYmFsLldlYWtNYXAoWyBbIGtleTEsIDEgXSBdKTtcblx0XHRyZXR1cm4gbWFwLmdldChrZXkxKSA9PT0gMSAmJiBtYXAuc2V0KGtleTIsIDIpID09PSBtYXA7XG5cdH1cblx0cmV0dXJuIGZhbHNlO1xufSk7XG5hZGQoJ2FycmF5YnVmZmVyJywgdHlwZW9mIGdsb2JhbC5BcnJheUJ1ZmZlciAhPT0gJ3VuZGVmaW5lZCcpO1xuYWRkKCdmb3JtZGF0YScsIHR5cGVvZiBnbG9iYWwuRm9ybURhdGEgIT09ICd1bmRlZmluZWQnKTtcbmFkZCgneGhyJywgdHlwZW9mIGdsb2JhbC5YTUxIdHRwUmVxdWVzdCAhPT0gJ3VuZGVmaW5lZCcpO1xuYWRkKCd4aHIyJywgaGFzKCd4aHInKSAmJiAncmVzcG9uc2VUeXBlJyBpbiBnbG9iYWwuWE1MSHR0cFJlcXVlc3QucHJvdG90eXBlKTtcbmFkZCgneGhyMi1ibG9iJywgZnVuY3Rpb24gKCkge1xuXHRpZiAoIWhhcygneGhyMicpKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0Y29uc3QgcmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXHRyZXF1ZXN0Lm9wZW4oJ0dFVCcsICcvJywgdHJ1ZSk7XG5cdHJlcXVlc3QucmVzcG9uc2VUeXBlID0gJ2Jsb2InO1xuXHRyZXF1ZXN0LmFib3J0KCk7XG5cdHJldHVybiByZXF1ZXN0LnJlc3BvbnNlVHlwZSA9PT0gJ2Jsb2InO1xufSk7XG4vLyBOYXRpdmUgQXJyYXkgbWV0aG9kc1xuYWRkKCdlczYtYXJyYXktZnJvbScsICdmcm9tJyBpbiBnbG9iYWwuQXJyYXkpO1xuYWRkKCdlczYtYXJyYXktb2YnLCAnb2YnIGluIGdsb2JhbC5BcnJheSk7XG5hZGQoJ2VzNi1hcnJheS1maWxsJywgJ2ZpbGwnIGluIGdsb2JhbC5BcnJheS5wcm90b3R5cGUpO1xuYWRkKCdlczYtYXJyYXktZmluZEluZGV4JywgJ2ZpbmRJbmRleCcgaW4gZ2xvYmFsLkFycmF5LnByb3RvdHlwZSk7XG5hZGQoJ2VzNi1hcnJheS1maW5kJywgJ2ZpbmQnIGluIGdsb2JhbC5BcnJheS5wcm90b3R5cGUpO1xuYWRkKCdlczYtYXJyYXktY29weVdpdGhpbicsICdjb3B5V2l0aGluJyBpbiBnbG9iYWwuQXJyYXkucHJvdG90eXBlKTtcbmFkZCgnZXM3LWFycmF5LWluY2x1ZGVzJywgJ2luY2x1ZGVzJyBpbiBnbG9iYWwuQXJyYXkucHJvdG90eXBlKTtcbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var has_1 = require('./has'); | ||
@@ -273,4 +274,4 @@ var slice = Array.prototype.slice; | ||
return createHandle(function () { | ||
for (var _i = 0; _i < handles.length; _i++) { | ||
var handle = handles[_i]; | ||
for (var _i = 0, handles_1 = handles; _i < handles_1.length; _i++) { | ||
var handle = handles_1[_i]; | ||
handle.destroy(); | ||
@@ -282,2 +283,2 @@ } | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sYW5nLnRzIl0sIm5hbWVzIjpbInNob3VsZERlZXBDb3B5T2JqZWN0IiwiY29weUFycmF5IiwiX21peGluIiwiY3JlYXRlIiwiZGVlcEFzc2lnbiIsImRlZXBNaXhpbiIsImR1cGxpY2F0ZSIsImlzSWRlbnRpY2FsIiwibGF0ZUJpbmQiLCJtaXhpbiIsInBhcnRpYWwiLCJjcmVhdGVIYW5kbGUiLCJjcmVhdGVDb21wb3NpdGVIYW5kbGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsb0JBQWdCLE9BQU8sQ0FBQyxDQUFBO0lBR3hCLElBQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO0lBQ3BDLElBQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDO0lBRXZEOzs7Ozs7Ozs7T0FTRztJQUNILDhCQUE4QixLQUFVO1FBQ3ZDQSxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQSxTQUFTQSxDQUFDQSxRQUFRQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxLQUFLQSxpQkFBaUJBLENBQUNBO0lBQ3BFQSxDQUFDQTtJQUVELG1CQUFzQixLQUFVLEVBQUUsU0FBa0I7UUFDbkRDLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBLEdBQUdBLENBQUNBLFVBQVVBLElBQU9BO1lBQ2pDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN6QixNQUFNLENBQVEsU0FBUyxDQUFPLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztZQUNoRCxDQUFDO1lBRUQsTUFBTSxDQUFDLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDO2dCQUNqQyxJQUFJO2dCQUNKLE1BQU0sQ0FBQztvQkFDTixJQUFJLEVBQUUsSUFBSTtvQkFDVixTQUFTLEVBQUUsU0FBUztvQkFDcEIsT0FBTyxFQUFhLENBQUUs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T0FBTyxFQUFFLENBQUM7YUFDakI7UUFDRixDQUFDLENBQUNBLENBQUNBO0lBQ0pBLENBQUNBO0lBTmUsNkJBQXFCLHdCQU1wQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5pbXBvcnQgeyBIYW5kbGUgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5jb25zdCBzbGljZSA9IEFycmF5LnByb3RvdHlwZS5zbGljZTtcbmNvbnN0IGhhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqXG4gKiBUeXBlIGd1YXJkIHRoYXQgZW5zdXJlcyB0aGF0IHRoZSB2YWx1ZSBjYW4gYmUgY29lcmNlZCB0byBPYmplY3RcbiAqIHRvIHdlZWQgb3V0IGhvc3Qgb2JqZWN0cyB0aGF0IGRvIG5vdCBkZXJpdmUgZnJvbSBPYmplY3QuXG4gKiBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gY2hlY2sgaWYgd2Ugd2FudCB0byBkZWVwIGNvcHkgYW4gb2JqZWN0IG9yIG5vdC5cbiAqIE5vdGU6IEluIEVTNiBpdCBpcyBwb3NzaWJsZSB0byBtb2RpZnkgYW4gb2JqZWN0J3MgU3ltYm9sLnRvU3RyaW5nVGFnIHByb3BlcnR5LCB3aGljaCB3aWxsXG4gKiBjaGFuZ2UgdGhlIHZhbHVlIHJldHVybmVkIGJ5IGB0b1N0cmluZ2AuIFRoaXMgaXMgYSByYXJlIGVkZ2UgY2FzZSB0aGF0IGlzIGRpZmZpY3VsdCB0byBoYW5kbGUsXG4gKiBzbyBpdCBpcyBub3QgaGFuZGxlZCBoZXJlLlxuICogQHBhcmFtICB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2tcbiAqIEByZXR1cm4gICAgICAgSWYgdGhlIHZhbHVlIGlzIGNvZXJjaWJsZSBpbnRvIGFuIE9iamVjdFxuICovXG5mdW5jdGlvbiBzaG91bGREZWVwQ29weU9iamVjdCh2YWx1ZTogYW55KTogdmFsdWUgaXMgT2JqZWN0IHtcblx0cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IE9iamVjdF0nO1xufVxuXG5mdW5jdGlvbiBjb3B5QXJyYXk8VD4oYXJyYXk6IFRbXSwgaW5oZXJpdGVkOiBib29sZWFuKTogVFtdIHtcblx0cmV0dXJuIGFycmF5Lm1hcChmdW5jdGlvbiAoaXRlbTogVCk6IFQge1xuXHRcdGlmIChBcnJheS5pc0FycmF5KGl0ZW0pKSB7XG5cdFx0XHRyZXR1cm4gIDxhbnk+IGNvcHlBcnJheSg8YW55PiBpdGVtLCBpbmhlcml0ZWQpO1xuXHRcdH1cblxuXHRcdHJldHVybiAhc2hvdWxkRGVlcENvcHlPYmplY3QoaXRlbSkgP1xuXHRcdFx0aXRlbSA6XG5cdFx0XHRfbWl4aW4oe1xuXHRcdFx0XHRkZWVwOiB0cnVlLFxuXHRcdFx0XHRpbmhlcml0ZWQ6IGluaGVyaXRlZCxcblx0XHRcdFx0c291cmNlczogPEFycmF5PFQ+PiBbIGl0ZW0gXSxcblx0XHRcdFx0dGFyZ2V0OiA8VD4ge31cblx0XHRcdH0pO1xuXHR9KTtcbn1cblxuaW50ZXJmYWNlIE1peGluQXJnczxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4ge1xuXHRkZWVwOiBib29sZWFuO1xuXHRpbmhlcml0ZWQ6IGJvb2xlYW47XG5cdHNvdXJjZXM6IFVbXTtcblx0dGFyZ2V0OiBUO1xufVxuXG5mdW5jdGlvbiBfbWl4aW48VCBleHRlbmRzIHt9LCBVIGV4dGVuZHMge30+KGt3QXJnczogTWl4aW5BcmdzPFQsIFU+KTogVCZVIHtcblx0Y29uc3QgZGVlcCA9IGt3QXJncy5kZWVwO1xuXHRjb25zdCBpbmhlcml0ZWQgPSBrd0FyZ3MuaW5oZXJpdGVkO1xuXHRjb25zdCB0YXJnZXQgPSBrd0FyZ3MudGFyZ2V0O1xuXG5cdGZvciAobGV0IHNvdXJjZSBvZiBrd0FyZ3Muc291cmNlcykge1xuXHRcdGZvciAobGV0IGtleSBpbiBzb3VyY2UpIHtcblx0XHRcdGlmIChpbmhlcml0ZWQgfHwgaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHtcblx0XHRcdFx0bGV0IHZhbHVlOiBhbnkgPSAoPGFueT4gc291cmNlKVtrZXldO1xuXG5cdFx0XHRcdGlmIChkZWVwKSB7XG5cdFx0XHRcdFx0aWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG5cdFx0XHRcdFx0XHR2YWx1ZSA9IGNvcHlBcnJheSh2YWx1ZSwgaW5oZXJpdGVkKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSBpZiAoc2hvdWxkRGVlcENvcHlPYmplY3QodmFsdWUpKSB7XG5cdFx0XHRcdFx0XHR2YWx1ZSA9IF9taXhpbih7XG5cdFx0XHRcdFx0XHRcdGRlZXA6IHRydWUsXG5cdFx0XHRcdFx0XHRcdGluaGVyaXRlZDogaW5oZXJpdGVkLFxuXHRcdFx0XHRcdFx0XHRzb3VyY2VzOiA8VVtdPiBbIHZhbHVlIF0sXG5cdFx0XHRcdFx0XHRcdHRhcmdldDoge31cblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCg8YW55PiB0YXJnZXQpW2tleV0gPSB2YWx1ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRyZXR1cm4gPFQmVT4gdGFyZ2V0O1xufVxuXG5pbnRlcmZhY2UgT2JqZWN0QXNzaWduQ29uc3RydWN0b3IgZXh0ZW5kcyBPYmplY3RDb25zdHJ1Y3RvciB7XG5cdGFzc2lnbjxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4odGFyZ2V0OiBULCAuLi5zb3VyY2VzOiBVW10pOiBUJlU7XG59XG5cbi8qKlxuICogQ29waWVzIHRoZSB2YWx1ZXMgb2YgYWxsIGVudW1lcmFibGUgb3duIHByb3BlcnRpZXMgb2Ygb25lIG9yIG1vcmUgc291cmNlIG9iamVjdHMgdG8gdGhlIHRhcmdldCBvYmplY3QuXG4gKlxuICogQHBhcmFtIHRhcmdldCBUaGUgdGFyZ2V0IG9iamVjdCB0byByZWNlaXZlIHZhbHVlcyBmcm9tIHNvdXJjZSBvYmplY3RzXG4gKiBAcGFyYW0gc291cmNlcyBBbnkgbnVtYmVyIG9mIG9iamVjdHMgd2hvc2UgZW51bWVyYWJsZSBvd24gcHJvcGVydGllcyB3aWxsIGJlIGNvcGllZCB0byB0aGUgdGFyZ2V0IG9iamVjdFxuICogQHJldHVybiBUaGUgbW9kaWZpZWQgdGFyZ2V0IG9iamVjdFxuICovXG5leHBvcnQgY29uc3QgYXNzaWduID0gaGFzKCdvYmplY3QtYXNzaWduJykgP1xuXHQoPE9iamVjdEFzc2lnbkNvbnN0cnVjdG9yPiBPYmplY3QpLmFzc2lnbiA6XG5cdGZ1bmN0aW9uPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIHt9PiAodGFyZ2V0OiBULCAuLi5zb3VyY2VzOiBVW10pOiBUJlUge1xuXHRcdHJldHVybiBfbWl4aW4oe1xuXHRcdFx0ZGVlcDogZmFsc2UsXG5cdFx0XHRpbmhlcml0ZWQ6IGZhbHNlLFxuXHRcdFx0c291cmNlczogc291cmNlcyxcblx0XHRcdHRhcmdldDogdGFyZ2V0XG5cdFx0fSk7XG5cdH07XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBvYmplY3QgZnJvbSB0aGUgZ2l2ZW4gcHJvdG90eXBlLCBhbmQgY29waWVzIGFsbCBlbnVtZXJhYmxlIG93biBwcm9wZXJ0aWVzIG9mIG9uZSBvciBtb3JlXG4gKiBzb3VyY2Ugb2JqZWN0cyB0byB0aGUgbmV3bHkgY3JlYXRlZCB0YXJnZXQgb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBwcm90b3R5cGUgVGhlIHByb3RvdHlwZSB0byBjcmVhdGUgYSBuZXcgb2JqZWN0IGZyb21cbiAqIEBwYXJhbSBtaXhpbnMgQW55IG51bWJlciBvZiBvYmplY3RzIHdob3NlIGVudW1lcmFibGUgb3duIHByb3BlcnRpZXMgd2lsbCBiZSBjb3BpZWQgdG8gdGhlIGNyZWF0ZWQgb2JqZWN0XG4gKiBAcmV0dXJuIFRoZSBuZXcgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGU8VCBleHRlbmRzIHt9LCBVIGV4dGVuZHMge30+KHByb3RvdHlwZTogVCwgLi4ubWl4aW5zOiBVW10pOiBUJlUge1xuXHRpZiAoIW1peGlucy5sZW5ndGgpIHtcblx0XHR0aHJvdyBuZXcgUmFuZ2VFcnJvcignbGFuZy5jcmVhdGUgcmVxdWlyZXMgYXQgbGVhc3Qgb25lIG1peGluIG9iamVjdC4nKTtcblx0fVxuXG5cdGNvbnN0IGFyZ3MgPSBtaXhpbnMuc2xpY2UoKTtcblx0YXJncy51bnNoaWZ0KE9iamVjdC5jcmVhdGUocHJvdG90eXBlKSk7XG5cblx0cmV0dXJuIGFzc2lnbi5hcHBseShudWxsLCBhcmdzKTtcbn1cblxuLyoqXG4gKiBDb3BpZXMgdGhlIHZhbHVlcyBvZiBhbGwgZW51bWVyYWJsZSBvd24gcHJvcGVydGllcyBvZiBvbmUgb3IgbW9yZSBzb3VyY2Ugb2JqZWN0cyB0byB0aGUgdGFyZ2V0IG9iamVjdCxcbiAqIHJlY3Vyc2l2ZWx5IGNvcHlpbmcgYWxsIG5lc3RlZCBvYmplY3RzIGFuZCBhcnJheXMgYXMgd2VsbC5cbiAqXG4gKiBAcGFyYW0gdGFyZ2V0IFRoZSB0YXJnZXQgb2JqZWN0IHRvIHJlY2VpdmUgdmFsdWVzIGZyb20gc291cmNlIG9iamVjdHNcbiAqIEBwYXJhbSBzb3VyY2VzIEFueSBudW1iZXIgb2Ygb2JqZWN0cyB3aG9zZSBlbnVtZXJhYmxlIG93biBwcm9wZXJ0aWVzIHdpbGwgYmUgY29waWVkIHRvIHRoZSB0YXJnZXQgb2JqZWN0XG4gKiBAcmV0dXJuIFRoZSBtb2RpZmllZCB0YXJnZXQgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWVwQXNzaWduPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIHt9Pih0YXJnZXQ6IFQsIC4uLnNvdXJjZXM6IFVbXSk6IFQmVSB7XG5cdHJldHVybiBfbWl4aW4oe1xuXHRcdGRlZXA6IHRydWUsXG5cdFx0aW5oZXJpdGVkOiBmYWxzZSxcblx0XHRzb3VyY2VzOiBzb3VyY2VzLFxuXHRcdHRhcmdldDogdGFyZ2V0XG5cdH0pO1xufVxuXG4vKipcbiAqIENvcGllcyB0aGUgdmFsdWVzIG9mIGFsbCBlbnVtZXJhYmxlIChvd24gb3IgaW5oZXJpdGVkKSBwcm9wZXJ0aWVzIG9mIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIHRoZVxuICogdGFyZ2V0IG9iamVjdCwgcmVjdXJzaXZlbHkgY29weWluZyBhbGwgbmVzdGVkIG9iamVjdHMgYW5kIGFycmF5cyBhcyB3ZWxsLlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBvYmplY3QgdG8gcmVjZWl2ZSB2YWx1ZXMgZnJvbSBzb3VyY2Ugb2JqZWN0c1xuICogQHBhcmFtIHNvdXJjZXMgQW55IG51bWJlciBvZiBvYmplY3RzIHdob3NlIGVudW1lcmFibGUgcHJvcGVydGllcyB3aWxsIGJlIGNvcGllZCB0byB0aGUgdGFyZ2V0IG9iamVjdFxuICogQHJldHVybiBUaGUgbW9kaWZpZWQgdGFyZ2V0IG9iamVjdFxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVlcE1peGluPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIHt9Pih0YXJnZXQ6IFQsIC4uLnNvdXJjZXM6IFVbXSk6IFQmVSB7XG5cdHJldHVybiBfbWl4aW4oe1xuXHRcdGRlZXA6IHRydWUsXG5cdFx0aW5oZXJpdGVkOiB0cnVlLFxuXHRcdHNvdXJjZXM6IHNvdXJjZXMsXG5cdFx0dGFyZ2V0OiB0YXJnZXRcblx0fSk7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBvYmplY3QgdXNpbmcgdGhlIHByb3ZpZGVkIHNvdXJjZSdzIHByb3RvdHlwZSBhcyB0aGUgcHJvdG90eXBlIGZvciB0aGUgbmV3IG9iamVjdCwgYW5kIHRoZW5cbiAqIGRlZXAgY29waWVzIHRoZSBwcm92aWRlZCBzb3VyY2UncyB2YWx1ZXMgaW50byB0aGUgbmV3IHRhcmdldC5cbiAqXG4gKiBAcGFyYW0gc291cmNlIFRoZSBvYmplY3QgdG8gZHVwbGljYXRlXG4gKiBAcmV0dXJuIFRoZSBuZXcgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkdXBsaWNhdGU8VCBleHRlbmRzIHt9Pihzb3VyY2U6IFQpOiBUIHtcblx0Y29uc3QgdGFyZ2V0ID0gT2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2Yoc291cmNlKSk7XG5cblx0cmV0dXJuIGRlZXBNaXhpbih0YXJnZXQsIHNvdXJjZSk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHR3byB2YWx1ZXMgYXJlIHRoZSBzYW1lIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBhIEZpcnN0IHZhbHVlIHRvIGNvbXBhcmVcbiAqIEBwYXJhbSBiIFNlY29uZCB2YWx1ZSB0byBjb21wYXJlXG4gKiBAcmV0dXJuIHRydWUgaWYgdGhlIHZhbHVlcyBhcmUgdGhlIHNhbWU7IGZhbHNlIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNJZGVudGljYWwoYTogYW55LCBiOiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIGEgPT09IGIgfHxcblx0XHQvKiBib3RoIHZhbHVlcyBhcmUgTmFOICovXG5cdFx0KGEgIT09IGEgJiYgYiAhPT0gYik7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgYmluZHMgYSBtZXRob2QgdG8gdGhlIHNwZWNpZmllZCBvYmplY3QgYXQgcnVudGltZS4gVGhpcyBpcyBzaW1pbGFyIHRvXG4gKiBgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmRgLCBidXQgaW5zdGVhZCBvZiBhIGZ1bmN0aW9uIGl0IHRha2VzIHRoZSBuYW1lIG9mIGEgbWV0aG9kIG9uIGFuIG9iamVjdC5cbiAqIEFzIGEgcmVzdWx0LCB0aGUgZnVuY3Rpb24gcmV0dXJuZWQgYnkgYGxhdGVCaW5kYCB3aWxsIGFsd2F5cyBjYWxsIHRoZSBmdW5jdGlvbiBjdXJyZW50bHkgYXNzaWduZWQgdG9cbiAqIHRoZSBzcGVjaWZpZWQgcHJvcGVydHkgb24gdGhlIG9iamVjdCBhcyBvZiB0aGUgbW9tZW50IHRoZSBmdW5jdGlvbiBpdCByZXR1cm5zIGlzIGNhbGxlZC5cbiAqXG4gKiBAcGFyYW0gaW5zdGFuY2UgVGhlIGNvbnRleHQgb2JqZWN0XG4gKiBAcGFyYW0gbWV0aG9kIFRoZSBuYW1lIG9mIHRoZSBtZXRob2Qgb24gdGhlIGNvbnRleHQgb2JqZWN0IHRvIGJpbmQgdG8gaXRzZWxmXG4gKiBAcGFyYW0gc3VwcGxpZWRBcmdzIEFuIG9wdGlvbmFsIGFycmF5IG9mIHZhbHVlcyB0byBwcmVwZW5kIHRvIHRoZSBgaW5zdGFuY2VbbWV0aG9kXWAgYXJndW1lbnRzIGxpc3RcbiAqIEByZXR1cm4gVGhlIGJvdW5kIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsYXRlQmluZChpbnN0YW5jZToge30sIG1ldGhvZDogc3RyaW5nLCAuLi5zdXBwbGllZEFyZ3M6IGFueVtdKTogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkge1xuXHRyZXR1cm4gc3VwcGxpZWRBcmdzLmxlbmd0aCA/XG5cdFx0ZnVuY3Rpb24gKCkge1xuXHRcdFx0Y29uc3QgYXJnczogYW55W10gPSBhcmd1bWVudHMubGVuZ3RoID8gc3VwcGxpZWRBcmdzLmNvbmNhdChzbGljZS5jYWxsKGFyZ3VtZW50cykpIDogc3VwcGxpZWRBcmdzO1xuXG5cdFx0XHQvLyBUUzcwMTdcblx0XHRcdHJldHVybiAoPGFueT4gaW5zdGFuY2UpW21ldGhvZF0uYXBwbHkoaW5zdGFuY2UsIGFyZ3MpO1xuXHRcdH0gOlxuXHRcdGZ1bmN0aW9uICgpIHtcblx0XHRcdC8vIFRTNzAxN1xuXHRcdFx0cmV0dXJuICg8YW55PiBpbnN0YW5jZSlbbWV0aG9kXS5hcHBseShpbnN0YW5jZSwgYXJndW1lbnRzKTtcblx0XHR9O1xufVxuXG4vKipcbiAqIENvcGllcyB0aGUgdmFsdWVzIG9mIGFsbCBlbnVtZXJhYmxlIChvd24gb3IgaW5oZXJpdGVkKSBwcm9wZXJ0aWVzIG9mIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIHRoZVxuICogdGFyZ2V0IG9iamVjdC5cbiAqXG4gKiBAcmV0dXJuIFRoZSBtb2RpZmllZCB0YXJnZXQgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbjxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4odGFyZ2V0OiBULCAuLi5zb3VyY2VzOiBVW10pOiBUJlUge1xuXHRyZXR1cm4gX21peGluKHtcblx0XHRkZWVwOiBmYWxzZSxcblx0XHRpbmhlcml0ZWQ6IHRydWUsXG5cdFx0c291cmNlczogc291cmNlcyxcblx0XHR0YXJnZXQ6IHRhcmdldFxuXHR9KTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgZnVuY3Rpb24gd2hpY2ggaW52b2tlcyB0aGUgZ2l2ZW4gZnVuY3Rpb24gd2l0aCB0aGUgZ2l2ZW4gYXJndW1lbnRzIHByZXBlbmRlZCB0byBpdHMgYXJndW1lbnQgbGlzdC5cbiAqIExpa2UgYEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kYCwgYnV0IGRvZXMgbm90IGFsdGVyIGV4ZWN1dGlvbiBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSB0YXJnZXRGdW5jdGlvbiBUaGUgZnVuY3Rpb24gdGhhdCBuZWVkcyB0byBiZSBib3VuZFxuICogQHBhcmFtIHN1cHBsaWVkQXJncyBBbiBvcHRpb25hbCBhcnJheSBvZiBhcmd1bWVudHMgdG8gcHJlcGVuZCB0byB0aGUgYHRhcmdldEZ1bmN0aW9uYCBhcmd1bWVudHMgbGlzdFxuICogQHJldHVybiBUaGUgYm91bmQgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnRpYWwodGFyZ2V0RnVuY3Rpb246ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55LCAuLi5zdXBwbGllZEFyZ3M6IGFueVtdKTogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkge1xuXHRyZXR1cm4gZnVuY3Rpb24gKCkge1xuXHRcdGNvbnN0IGFyZ3M6IGFueVtdID0gYXJndW1lbnRzLmxlbmd0aCA/IHN1cHBsaWVkQXJncy5jb25jYXQoc2xpY2UuY2FsbChhcmd1bWVudHMpKSA6IHN1cHBsaWVkQXJncztcblxuXHRcdHJldHVybiB0YXJnZXRGdW5jdGlvbi5hcHBseSh0aGlzLCBhcmdzKTtcblx0fTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIG9iamVjdCB3aXRoIGEgZGVzdHJveSBtZXRob2QgdGhhdCwgd2hlbiBjYWxsZWQsIGNhbGxzIHRoZSBwYXNzZWQtaW4gZGVzdHJ1Y3Rvci5cbiAqIFRoaXMgaXMgaW50ZW5kZWQgdG8gcHJvdmlkZSBhIHVuaWZpZWQgaW50ZXJmYWNlIGZvciBjcmVhdGluZyBcInJlbW92ZVwiIC8gXCJkZXN0cm95XCIgaGFuZGxlcnMgZm9yXG4gKiBldmVudCBsaXN0ZW5lcnMsIHRpbWVycywgZXRjLlxuICpcbiAqIEBwYXJhbSBkZXN0cnVjdG9yIEEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCB3aGVuIHRoZSBoYW5kbGUncyBgZGVzdHJveWAgbWV0aG9kIGlzIGludm9rZWRcbiAqIEByZXR1cm4gVGhlIGhhbmRsZSBvYmplY3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUhhbmRsZShkZXN0cnVjdG9yOiAoKSA9PiB2b2lkKTogSGFuZGxlIHtcblx0cmV0dXJuIHtcblx0XHRkZXN0cm95OiBmdW5jdGlvbiAoKSB7XG5cdFx0XHR0aGlzLmRlc3Ryb3kgPSBmdW5jdGlvbiAoKSB7fTtcblx0XHRcdGRlc3RydWN0b3IuY2FsbCh0aGlzKTtcblx0XHR9XG5cdH07XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHNpbmdsZSBoYW5kbGUgdGhhdCBjYW4gYmUgdXNlZCB0byBkZXN0cm95IG11bHRpcGxlIGhhbmRsZXMgc2ltdWx0YW5lb3VzbHkuXG4gKlxuICogQHBhcmFtIGhhbmRsZXMgQW4gYXJyYXkgb2YgaGFuZGxlcyB3aXRoIGBkZXN0cm95YCBtZXRob2RzXG4gKiBAcmV0dXJuIFRoZSBoYW5kbGUgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb21wb3NpdGVIYW5kbGUoLi4uaGFuZGxlczogSGFuZGxlW10pOiBIYW5kbGUge1xuXHRyZXR1cm4gY3JlYXRlSGFuZGxlKGZ1bmN0aW9uICgpIHtcblx0XHRmb3IgKGxldCBoYW5kbGUgb2YgaGFuZGxlcykge1xuXHRcdFx0aGFuZGxlLmRlc3Ryb3koKTtcblx0XHR9XG5cdH0pO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sYW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQUd4QixJQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNwQyxJQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQztJQUV2RDs7Ozs7Ozs7O09BU0c7SUFDSCw4QkFBOEIsS0FBVTtRQUN2QyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLGlCQUFpQixDQUFDO0lBQ3BFLENBQUM7SUFFRCxtQkFBc0IsS0FBVSxFQUFFLFNBQWtCO1FBQ25ELE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsSUFBTztZQUNqQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekIsTUFBTSxDQUFRLFNBQVMsQ0FBTyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDaEQsQ0FBQztZQUVELE1BQU0sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQztnQkFDakMsSUFBSTtnQkFDSixNQUFNLENBQUM7b0JBQ04sSUFBSSxFQUFFLElBQUk7b0JBQ1YsU0FBUyxFQUFFLFNBQVM7b0JBQ3BCLE9BQU8sRUFBYSxDQUFFLElBQUksQ0FBRTtvQkFDNUIsTUFBTSxFQUFNLEVBQUU7aUJBQ2QsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBU0QsZ0JBQTRDLE1BQXVCO1FBQ2xFLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNuQyxJQUFNLE1BQU0sR0FB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LG9CQUFZLGVBTzNCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNIO1FBQXNDLGlCQUFvQjthQUFwQixXQUFvQixDQUFwQixzQkFBb0IsQ0FBcEIsSUFBb0I7WUFBcEIsZ0NBQW9COztRQUN6RCxNQUFNLENBQUMsWUFBWSxDQUFDO1lBQ25CLEdBQUcsQ0FBQyxDQUFlLFVBQU8sRUFBUCxtQkFBTyxFQUFQLHFCQUFPLEVBQVAsSUFBTyxDQUFDO2dCQUF0QixJQUFJLE1BQU0sZ0JBQUE7Z0JBQ2QsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ2pCO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBTmUsNkJBQXFCLHdCQU1wQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5pbXBvcnQgeyBIYW5kbGUgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5jb25zdCBzbGljZSA9IEFycmF5LnByb3RvdHlwZS5zbGljZTtcbmNvbnN0IGhhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtcblxuLyoqXG4gKiBUeXBlIGd1YXJkIHRoYXQgZW5zdXJlcyB0aGF0IHRoZSB2YWx1ZSBjYW4gYmUgY29lcmNlZCB0byBPYmplY3RcbiAqIHRvIHdlZWQgb3V0IGhvc3Qgb2JqZWN0cyB0aGF0IGRvIG5vdCBkZXJpdmUgZnJvbSBPYmplY3QuXG4gKiBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gY2hlY2sgaWYgd2Ugd2FudCB0byBkZWVwIGNvcHkgYW4gb2JqZWN0IG9yIG5vdC5cbiAqIE5vdGU6IEluIEVTNiBpdCBpcyBwb3NzaWJsZSB0byBtb2RpZnkgYW4gb2JqZWN0J3MgU3ltYm9sLnRvU3RyaW5nVGFnIHByb3BlcnR5LCB3aGljaCB3aWxsXG4gKiBjaGFuZ2UgdGhlIHZhbHVlIHJldHVybmVkIGJ5IGB0b1N0cmluZ2AuIFRoaXMgaXMgYSByYXJlIGVkZ2UgY2FzZSB0aGF0IGlzIGRpZmZpY3VsdCB0byBoYW5kbGUsXG4gKiBzbyBpdCBpcyBub3QgaGFuZGxlZCBoZXJlLlxuICogQHBhcmFtICB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2tcbiAqIEByZXR1cm4gICAgICAgSWYgdGhlIHZhbHVlIGlzIGNvZXJjaWJsZSBpbnRvIGFuIE9iamVjdFxuICovXG5mdW5jdGlvbiBzaG91bGREZWVwQ29weU9iamVjdCh2YWx1ZTogYW55KTogdmFsdWUgaXMgT2JqZWN0IHtcblx0cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IE9iamVjdF0nO1xufVxuXG5mdW5jdGlvbiBjb3B5QXJyYXk8VD4oYXJyYXk6IFRbXSwgaW5oZXJpdGVkOiBib29sZWFuKTogVFtdIHtcblx0cmV0dXJuIGFycmF5Lm1hcChmdW5jdGlvbiAoaXRlbTogVCk6IFQge1xuXHRcdGlmIChBcnJheS5pc0FycmF5KGl0ZW0pKSB7XG5cdFx0XHRyZXR1cm4gIDxhbnk+IGNvcHlBcnJheSg8YW55PiBpdGVtLCBpbmhlcml0ZWQpO1xuXHRcdH1cblxuXHRcdHJldHVybiAhc2hvdWxkRGVlcENvcHlPYmplY3QoaXRlbSkgP1xuXHRcdFx0aXRlbSA6XG5cdFx0XHRfbWl4aW4oe1xuXHRcdFx0XHRkZWVwOiB0cnVlLFxuXHRcdFx0XHRpbmhlcml0ZWQ6IGluaGVyaXRlZCxcblx0XHRcdFx0c291cmNlczogPEFycmF5PFQ+PiBbIGl0ZW0gXSxcblx0XHRcdFx0dGFyZ2V0OiA8VD4ge31cblx0XHRcdH0pO1xuXHR9KTtcbn1cblxuaW50ZXJmYWNlIE1peGluQXJnczxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4ge1xuXHRkZWVwOiBib29sZWFuO1xuXHRpbmhlcml0ZWQ6IGJvb2xlYW47XG5cdHNvdXJjZXM6IFVbXTtcblx0dGFyZ2V0OiBUO1xufVxuXG5mdW5jdGlvbiBfbWl4aW48VCBleHRlbmRzIHt9LCBVIGV4dGVuZHMge30+KGt3QXJnczogTWl4aW5BcmdzPFQsIFU+KTogVCZVIHtcblx0Y29uc3QgZGVlcCA9IGt3QXJncy5kZWVwO1xuXHRjb25zdCBpbmhlcml0ZWQgPSBrd0FyZ3MuaW5oZXJpdGVkO1xuXHRjb25zdCB0YXJnZXQgPSBrd0FyZ3MudGFyZ2V0O1xuXG5cdGZvciAobGV0IHNvdXJjZSBvZiBrd0FyZ3Muc291cmNlcykge1xuXHRcdGZvciAobGV0IGtleSBpbiBzb3VyY2UpIHtcblx0XHRcdGlmIChpbmhlcml0ZWQgfHwgaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHtcblx0XHRcdFx0bGV0IHZhbHVlOiBhbnkgPSAoPGFueT4gc291cmNlKVtrZXldO1xuXG5cdFx0XHRcdGlmIChkZWVwKSB7XG5cdFx0XHRcdFx0aWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG5cdFx0XHRcdFx0XHR2YWx1ZSA9IGNvcHlBcnJheSh2YWx1ZSwgaW5oZXJpdGVkKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSBpZiAoc2hvdWxkRGVlcENvcHlPYmplY3QodmFsdWUpKSB7XG5cdFx0XHRcdFx0XHR2YWx1ZSA9IF9taXhpbih7XG5cdFx0XHRcdFx0XHRcdGRlZXA6IHRydWUsXG5cdFx0XHRcdFx0XHRcdGluaGVyaXRlZDogaW5oZXJpdGVkLFxuXHRcdFx0XHRcdFx0XHRzb3VyY2VzOiA8VVtdPiBbIHZhbHVlIF0sXG5cdFx0XHRcdFx0XHRcdHRhcmdldDoge31cblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCg8YW55PiB0YXJnZXQpW2tleV0gPSB2YWx1ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRyZXR1cm4gPFQmVT4gdGFyZ2V0O1xufVxuXG5pbnRlcmZhY2UgT2JqZWN0QXNzaWduQ29uc3RydWN0b3IgZXh0ZW5kcyBPYmplY3RDb25zdHJ1Y3RvciB7XG5cdGFzc2lnbjxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4odGFyZ2V0OiBULCAuLi5zb3VyY2VzOiBVW10pOiBUJlU7XG59XG5cbi8qKlxuICogQ29waWVzIHRoZSB2YWx1ZXMgb2YgYWxsIGVudW1lcmFibGUgb3duIHByb3BlcnRpZXMgb2Ygb25lIG9yIG1vcmUgc291cmNlIG9iamVjdHMgdG8gdGhlIHRhcmdldCBvYmplY3QuXG4gKlxuICogQHBhcmFtIHRhcmdldCBUaGUgdGFyZ2V0IG9iamVjdCB0byByZWNlaXZlIHZhbHVlcyBmcm9tIHNvdXJjZSBvYmplY3RzXG4gKiBAcGFyYW0gc291cmNlcyBBbnkgbnVtYmVyIG9mIG9iamVjdHMgd2hvc2UgZW51bWVyYWJsZSBvd24gcHJvcGVydGllcyB3aWxsIGJlIGNvcGllZCB0byB0aGUgdGFyZ2V0IG9iamVjdFxuICogQHJldHVybiBUaGUgbW9kaWZpZWQgdGFyZ2V0IG9iamVjdFxuICovXG5leHBvcnQgY29uc3QgYXNzaWduID0gaGFzKCdvYmplY3QtYXNzaWduJykgP1xuXHQoPE9iamVjdEFzc2lnbkNvbnN0cnVjdG9yPiBPYmplY3QpLmFzc2lnbiA6XG5cdGZ1bmN0aW9uPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIHt9PiAodGFyZ2V0OiBULCAuLi5zb3VyY2VzOiBVW10pOiBUJlUge1xuXHRcdHJldHVybiBfbWl4aW4oe1xuXHRcdFx0ZGVlcDogZmFsc2UsXG5cdFx0XHRpbmhlcml0ZWQ6IGZhbHNlLFxuXHRcdFx0c291cmNlczogc291cmNlcyxcblx0XHRcdHRhcmdldDogdGFyZ2V0XG5cdFx0fSk7XG5cdH07XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBvYmplY3QgZnJvbSB0aGUgZ2l2ZW4gcHJvdG90eXBlLCBhbmQgY29waWVzIGFsbCBlbnVtZXJhYmxlIG93biBwcm9wZXJ0aWVzIG9mIG9uZSBvciBtb3JlXG4gKiBzb3VyY2Ugb2JqZWN0cyB0byB0aGUgbmV3bHkgY3JlYXRlZCB0YXJnZXQgb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBwcm90b3R5cGUgVGhlIHByb3RvdHlwZSB0byBjcmVhdGUgYSBuZXcgb2JqZWN0IGZyb21cbiAqIEBwYXJhbSBtaXhpbnMgQW55IG51bWJlciBvZiBvYmplY3RzIHdob3NlIGVudW1lcmFibGUgb3duIHByb3BlcnRpZXMgd2lsbCBiZSBjb3BpZWQgdG8gdGhlIGNyZWF0ZWQgb2JqZWN0XG4gKiBAcmV0dXJuIFRoZSBuZXcgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGU8VCBleHRlbmRzIHt9LCBVIGV4dGVuZHMge30+KHByb3RvdHlwZTogVCwgLi4ubWl4aW5zOiBVW10pOiBUJlUge1xuXHRpZiAoIW1peGlucy5sZW5ndGgpIHtcblx0XHR0aHJvdyBuZXcgUmFuZ2VFcnJvcignbGFuZy5jcmVhdGUgcmVxdWlyZXMgYXQgbGVhc3Qgb25lIG1peGluIG9iamVjdC4nKTtcblx0fVxuXG5cdGNvbnN0IGFyZ3MgPSBtaXhpbnMuc2xpY2UoKTtcblx0YXJncy51bnNoaWZ0KE9iamVjdC5jcmVhdGUocHJvdG90eXBlKSk7XG5cblx0cmV0dXJuIGFzc2lnbi5hcHBseShudWxsLCBhcmdzKTtcbn1cblxuLyoqXG4gKiBDb3BpZXMgdGhlIHZhbHVlcyBvZiBhbGwgZW51bWVyYWJsZSBvd24gcHJvcGVydGllcyBvZiBvbmUgb3IgbW9yZSBzb3VyY2Ugb2JqZWN0cyB0byB0aGUgdGFyZ2V0IG9iamVjdCxcbiAqIHJlY3Vyc2l2ZWx5IGNvcHlpbmcgYWxsIG5lc3RlZCBvYmplY3RzIGFuZCBhcnJheXMgYXMgd2VsbC5cbiAqXG4gKiBAcGFyYW0gdGFyZ2V0IFRoZSB0YXJnZXQgb2JqZWN0IHRvIHJlY2VpdmUgdmFsdWVzIGZyb20gc291cmNlIG9iamVjdHNcbiAqIEBwYXJhbSBzb3VyY2VzIEFueSBudW1iZXIgb2Ygb2JqZWN0cyB3aG9zZSBlbnVtZXJhYmxlIG93biBwcm9wZXJ0aWVzIHdpbGwgYmUgY29waWVkIHRvIHRoZSB0YXJnZXQgb2JqZWN0XG4gKiBAcmV0dXJuIFRoZSBtb2RpZmllZCB0YXJnZXQgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWVwQXNzaWduPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIHt9Pih0YXJnZXQ6IFQsIC4uLnNvdXJjZXM6IFVbXSk6IFQmVSB7XG5cdHJldHVybiBfbWl4aW4oe1xuXHRcdGRlZXA6IHRydWUsXG5cdFx0aW5oZXJpdGVkOiBmYWxzZSxcblx0XHRzb3VyY2VzOiBzb3VyY2VzLFxuXHRcdHRhcmdldDogdGFyZ2V0XG5cdH0pO1xufVxuXG4vKipcbiAqIENvcGllcyB0aGUgdmFsdWVzIG9mIGFsbCBlbnVtZXJhYmxlIChvd24gb3IgaW5oZXJpdGVkKSBwcm9wZXJ0aWVzIG9mIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIHRoZVxuICogdGFyZ2V0IG9iamVjdCwgcmVjdXJzaXZlbHkgY29weWluZyBhbGwgbmVzdGVkIG9iamVjdHMgYW5kIGFycmF5cyBhcyB3ZWxsLlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBvYmplY3QgdG8gcmVjZWl2ZSB2YWx1ZXMgZnJvbSBzb3VyY2Ugb2JqZWN0c1xuICogQHBhcmFtIHNvdXJjZXMgQW55IG51bWJlciBvZiBvYmplY3RzIHdob3NlIGVudW1lcmFibGUgcHJvcGVydGllcyB3aWxsIGJlIGNvcGllZCB0byB0aGUgdGFyZ2V0IG9iamVjdFxuICogQHJldHVybiBUaGUgbW9kaWZpZWQgdGFyZ2V0IG9iamVjdFxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVlcE1peGluPFQgZXh0ZW5kcyB7fSwgVSBleHRlbmRzIHt9Pih0YXJnZXQ6IFQsIC4uLnNvdXJjZXM6IFVbXSk6IFQmVSB7XG5cdHJldHVybiBfbWl4aW4oe1xuXHRcdGRlZXA6IHRydWUsXG5cdFx0aW5oZXJpdGVkOiB0cnVlLFxuXHRcdHNvdXJjZXM6IHNvdXJjZXMsXG5cdFx0dGFyZ2V0OiB0YXJnZXRcblx0fSk7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyBvYmplY3QgdXNpbmcgdGhlIHByb3ZpZGVkIHNvdXJjZSdzIHByb3RvdHlwZSBhcyB0aGUgcHJvdG90eXBlIGZvciB0aGUgbmV3IG9iamVjdCwgYW5kIHRoZW5cbiAqIGRlZXAgY29waWVzIHRoZSBwcm92aWRlZCBzb3VyY2UncyB2YWx1ZXMgaW50byB0aGUgbmV3IHRhcmdldC5cbiAqXG4gKiBAcGFyYW0gc291cmNlIFRoZSBvYmplY3QgdG8gZHVwbGljYXRlXG4gKiBAcmV0dXJuIFRoZSBuZXcgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkdXBsaWNhdGU8VCBleHRlbmRzIHt9Pihzb3VyY2U6IFQpOiBUIHtcblx0Y29uc3QgdGFyZ2V0ID0gT2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2Yoc291cmNlKSk7XG5cblx0cmV0dXJuIGRlZXBNaXhpbih0YXJnZXQsIHNvdXJjZSk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHR3byB2YWx1ZXMgYXJlIHRoZSBzYW1lIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBhIEZpcnN0IHZhbHVlIHRvIGNvbXBhcmVcbiAqIEBwYXJhbSBiIFNlY29uZCB2YWx1ZSB0byBjb21wYXJlXG4gKiBAcmV0dXJuIHRydWUgaWYgdGhlIHZhbHVlcyBhcmUgdGhlIHNhbWU7IGZhbHNlIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNJZGVudGljYWwoYTogYW55LCBiOiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIGEgPT09IGIgfHxcblx0XHQvKiBib3RoIHZhbHVlcyBhcmUgTmFOICovXG5cdFx0KGEgIT09IGEgJiYgYiAhPT0gYik7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgYmluZHMgYSBtZXRob2QgdG8gdGhlIHNwZWNpZmllZCBvYmplY3QgYXQgcnVudGltZS4gVGhpcyBpcyBzaW1pbGFyIHRvXG4gKiBgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmRgLCBidXQgaW5zdGVhZCBvZiBhIGZ1bmN0aW9uIGl0IHRha2VzIHRoZSBuYW1lIG9mIGEgbWV0aG9kIG9uIGFuIG9iamVjdC5cbiAqIEFzIGEgcmVzdWx0LCB0aGUgZnVuY3Rpb24gcmV0dXJuZWQgYnkgYGxhdGVCaW5kYCB3aWxsIGFsd2F5cyBjYWxsIHRoZSBmdW5jdGlvbiBjdXJyZW50bHkgYXNzaWduZWQgdG9cbiAqIHRoZSBzcGVjaWZpZWQgcHJvcGVydHkgb24gdGhlIG9iamVjdCBhcyBvZiB0aGUgbW9tZW50IHRoZSBmdW5jdGlvbiBpdCByZXR1cm5zIGlzIGNhbGxlZC5cbiAqXG4gKiBAcGFyYW0gaW5zdGFuY2UgVGhlIGNvbnRleHQgb2JqZWN0XG4gKiBAcGFyYW0gbWV0aG9kIFRoZSBuYW1lIG9mIHRoZSBtZXRob2Qgb24gdGhlIGNvbnRleHQgb2JqZWN0IHRvIGJpbmQgdG8gaXRzZWxmXG4gKiBAcGFyYW0gc3VwcGxpZWRBcmdzIEFuIG9wdGlvbmFsIGFycmF5IG9mIHZhbHVlcyB0byBwcmVwZW5kIHRvIHRoZSBgaW5zdGFuY2VbbWV0aG9kXWAgYXJndW1lbnRzIGxpc3RcbiAqIEByZXR1cm4gVGhlIGJvdW5kIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsYXRlQmluZChpbnN0YW5jZToge30sIG1ldGhvZDogc3RyaW5nLCAuLi5zdXBwbGllZEFyZ3M6IGFueVtdKTogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkge1xuXHRyZXR1cm4gc3VwcGxpZWRBcmdzLmxlbmd0aCA/XG5cdFx0ZnVuY3Rpb24gKCkge1xuXHRcdFx0Y29uc3QgYXJnczogYW55W10gPSBhcmd1bWVudHMubGVuZ3RoID8gc3VwcGxpZWRBcmdzLmNvbmNhdChzbGljZS5jYWxsKGFyZ3VtZW50cykpIDogc3VwcGxpZWRBcmdzO1xuXG5cdFx0XHQvLyBUUzcwMTdcblx0XHRcdHJldHVybiAoPGFueT4gaW5zdGFuY2UpW21ldGhvZF0uYXBwbHkoaW5zdGFuY2UsIGFyZ3MpO1xuXHRcdH0gOlxuXHRcdGZ1bmN0aW9uICgpIHtcblx0XHRcdC8vIFRTNzAxN1xuXHRcdFx0cmV0dXJuICg8YW55PiBpbnN0YW5jZSlbbWV0aG9kXS5hcHBseShpbnN0YW5jZSwgYXJndW1lbnRzKTtcblx0XHR9O1xufVxuXG4vKipcbiAqIENvcGllcyB0aGUgdmFsdWVzIG9mIGFsbCBlbnVtZXJhYmxlIChvd24gb3IgaW5oZXJpdGVkKSBwcm9wZXJ0aWVzIG9mIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIHRoZVxuICogdGFyZ2V0IG9iamVjdC5cbiAqXG4gKiBAcmV0dXJuIFRoZSBtb2RpZmllZCB0YXJnZXQgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaXhpbjxUIGV4dGVuZHMge30sIFUgZXh0ZW5kcyB7fT4odGFyZ2V0OiBULCAuLi5zb3VyY2VzOiBVW10pOiBUJlUge1xuXHRyZXR1cm4gX21peGluKHtcblx0XHRkZWVwOiBmYWxzZSxcblx0XHRpbmhlcml0ZWQ6IHRydWUsXG5cdFx0c291cmNlczogc291cmNlcyxcblx0XHR0YXJnZXQ6IHRhcmdldFxuXHR9KTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgZnVuY3Rpb24gd2hpY2ggaW52b2tlcyB0aGUgZ2l2ZW4gZnVuY3Rpb24gd2l0aCB0aGUgZ2l2ZW4gYXJndW1lbnRzIHByZXBlbmRlZCB0byBpdHMgYXJndW1lbnQgbGlzdC5cbiAqIExpa2UgYEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kYCwgYnV0IGRvZXMgbm90IGFsdGVyIGV4ZWN1dGlvbiBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSB0YXJnZXRGdW5jdGlvbiBUaGUgZnVuY3Rpb24gdGhhdCBuZWVkcyB0byBiZSBib3VuZFxuICogQHBhcmFtIHN1cHBsaWVkQXJncyBBbiBvcHRpb25hbCBhcnJheSBvZiBhcmd1bWVudHMgdG8gcHJlcGVuZCB0byB0aGUgYHRhcmdldEZ1bmN0aW9uYCBhcmd1bWVudHMgbGlzdFxuICogQHJldHVybiBUaGUgYm91bmQgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnRpYWwodGFyZ2V0RnVuY3Rpb246ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55LCAuLi5zdXBwbGllZEFyZ3M6IGFueVtdKTogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkge1xuXHRyZXR1cm4gZnVuY3Rpb24gKCkge1xuXHRcdGNvbnN0IGFyZ3M6IGFueVtdID0gYXJndW1lbnRzLmxlbmd0aCA/IHN1cHBsaWVkQXJncy5jb25jYXQoc2xpY2UuY2FsbChhcmd1bWVudHMpKSA6IHN1cHBsaWVkQXJncztcblxuXHRcdHJldHVybiB0YXJnZXRGdW5jdGlvbi5hcHBseSh0aGlzLCBhcmdzKTtcblx0fTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIG9iamVjdCB3aXRoIGEgZGVzdHJveSBtZXRob2QgdGhhdCwgd2hlbiBjYWxsZWQsIGNhbGxzIHRoZSBwYXNzZWQtaW4gZGVzdHJ1Y3Rvci5cbiAqIFRoaXMgaXMgaW50ZW5kZWQgdG8gcHJvdmlkZSBhIHVuaWZpZWQgaW50ZXJmYWNlIGZvciBjcmVhdGluZyBcInJlbW92ZVwiIC8gXCJkZXN0cm95XCIgaGFuZGxlcnMgZm9yXG4gKiBldmVudCBsaXN0ZW5lcnMsIHRpbWVycywgZXRjLlxuICpcbiAqIEBwYXJhbSBkZXN0cnVjdG9yIEEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCB3aGVuIHRoZSBoYW5kbGUncyBgZGVzdHJveWAgbWV0aG9kIGlzIGludm9rZWRcbiAqIEByZXR1cm4gVGhlIGhhbmRsZSBvYmplY3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUhhbmRsZShkZXN0cnVjdG9yOiAoKSA9PiB2b2lkKTogSGFuZGxlIHtcblx0cmV0dXJuIHtcblx0XHRkZXN0cm95OiBmdW5jdGlvbiAoKSB7XG5cdFx0XHR0aGlzLmRlc3Ryb3kgPSBmdW5jdGlvbiAoKSB7fTtcblx0XHRcdGRlc3RydWN0b3IuY2FsbCh0aGlzKTtcblx0XHR9XG5cdH07XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHNpbmdsZSBoYW5kbGUgdGhhdCBjYW4gYmUgdXNlZCB0byBkZXN0cm95IG11bHRpcGxlIGhhbmRsZXMgc2ltdWx0YW5lb3VzbHkuXG4gKlxuICogQHBhcmFtIGhhbmRsZXMgQW4gYXJyYXkgb2YgaGFuZGxlcyB3aXRoIGBkZXN0cm95YCBtZXRob2RzXG4gKiBAcmV0dXJuIFRoZSBoYW5kbGUgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb21wb3NpdGVIYW5kbGUoLi4uaGFuZGxlczogSGFuZGxlW10pOiBIYW5kbGUge1xuXHRyZXR1cm4gY3JlYXRlSGFuZGxlKGZ1bmN0aW9uICgpIHtcblx0XHRmb3IgKGxldCBoYW5kbGUgb2YgaGFuZGxlcykge1xuXHRcdFx0aGFuZGxlLmRlc3Ryb3koKTtcblx0XHR9XG5cdH0pO1xufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('./Promise'); | ||
@@ -65,2 +66,2 @@ var load = (function () { | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQ0Esd0JBQW9CLFdBQVcsQ0FBQyxDQUFBO0lBbUJoQyxJQUFNLElBQUksR0FBUyxDQUFDO1FBQ25CLEVBQUUsQ0FBQyxDQUFDLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxPQUFPLE1BQU0sQ0FBQyxPQUFPLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN0RSxNQUFNLENBQUMsVUFBVSxpQkFBc0I7Z0JBQUUsbUJBQXNCO3FCQUF0QixXQUFzQixDQUF0QixzQkFBc0IsQ0FBdEIsSUFBc0I7b0JBQXRCLGtDQUFzQjs7Z0JBQzlELEVBQUUsQ0FBQyxDQUFDLE9BQU8saUJBQWlCLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztvQkFDM0MsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO29CQUNyQyxpQkFBaUIsR0FBRyxPQUFPLENBQUM7Z0JBQzdCLENBQUM7Z0JBQ0QsTUFBTSxDQUFDLElBQUksaUJBQU8sQ0FBQyxVQUFVLE9BQU8sRUFBRSxNQUFNO29CQUMzQyxJQUFJLENBQUM7d0JBQ0osT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxRQUFROzRCQUN2QyxNQUFNLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQ3BDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FDQTtvQkFBQSxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO3dCQUNkLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDZixDQUFDO2dCQUNGLENBQUMsQ0FBQyxDQUFDO1lBQ0osQ0FBQyxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sS0FBSyxVQUFVLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDckQsTUFBTSxDQUFDLFVBQVUsaUJBQXNCO2dCQUFFLG1CQUFzQjtxQkFBdEIsV0FBc0IsQ0FBdEIsc0JBQXNCLENBQXRCLElBQXNCO29CQUF0QixrQ0FBc0I7O2dCQUM5RCxFQUFFLENBQUMsQ0FBQyxPQUFPLGlCQUFpQixLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7b0JBQzNDLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztvQkFDckMsaUJBQWlCLEdBQUcsT0FBTyxDQUFDO2dCQUM3QixDQUFDO2dCQUNELE1BQU0sQ0FBQyxJQUFJLGlCQUFPLENBQUMsVUFBVSxPQUFPO29CQUNuQyxnRkFBZ0Y7b0JBQ2hGLGlCQUFpQixDQUFDLFNBQVMsRUFBRTt3QkFBVSxpQkFBaUI7NkJBQWpCLFdBQWlCLENBQWpCLHNCQUFpQixDQUFqQixJQUFpQjs0QkFBakIsZ0NBQWlCOzt3QkFDdkQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNsQixDQUFDLENBQUMsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FBQztZQUNKLENBQUMsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsQ0FBQztZQUNMLE1BQU0sQ0FBQztnQkFDTixNQUFNLENBQUMsaUJBQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQztRQUNILENBQUM7SUFDRixDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ0w7c0JBQWUsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWlyZSBhcyBBTURSZXF1aXJlIH0gZnJvbSAnZG9qby1sb2FkZXIvbG9hZGVyJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4vUHJvbWlzZSc7XG5cbmRlY2xhcmUgdmFyIGRlZmluZToge1xuXHQoLi4uYXJnczogYW55W10pOiBhbnk7XG5cdGFtZDogYW55O1xufTtcblxuZXhwb3J0IHsgUmVxdWlyZSBhcyBBTURSZXF1aXJlIH0gZnJvbSAnZG9qby1sb2FkZXIvbG9hZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBOb2RlUmVxdWlyZSB7XG5cdChtb2R1bGVJZDogc3RyaW5nKTogYW55O1xufVxuZXhwb3J0IHR5cGUgUmVxdWlyZSA9IEFNRFJlcXVpcmUgfCBOb2RlUmVxdWlyZTtcblxuZXhwb3J0IGludGVyZmFjZSBMb2FkIHtcblx0KHJlcXVpcmU6IFJlcXVpcmUsIC4uLm1vZHVsZUlkczogc3RyaW5nW10pOiBQcm9taXNlPGFueVtdPjtcblx0KC4uLm1vZHVsZUlkczogc3RyaW5nW10pOiBQcm9taXNlPGFueVtdPjtcbn1cblxuY29uc3QgbG9hZDogTG9hZCA9IChmdW5jdGlvbiAoKTogTG9hZCB7XG5cdGlmICh0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgbW9kdWxlLmV4cG9ydHMgPT09ICdvYmplY3QnKSB7XG5cdFx0cmV0dXJuIGZ1bmN0aW9uIChjb250ZXh0dWFsUmVxdWlyZTogYW55LCAuLi5tb2R1bGVJZHM6IHN0cmluZ1tdKTogUHJvbWlzZTxhbnlbXT4ge1xuXHRcdFx0aWYgKHR5cGVvZiBjb250ZXh0dWFsUmVxdWlyZSA9PT0gJ3N0cmluZycpIHtcblx0XHRcdFx0bW9kdWxlSWRzLnVuc2hpZnQoY29udGV4dHVhbFJlcXVpcmUpO1xuXHRcdFx0XHRjb250ZXh0dWFsUmVxdWlyZSA9IHJlcXVpcmU7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdHJlc29sdmUobW9kdWxlSWRzLm1hcChmdW5jdGlvbiAobW9kdWxlSWQpOiBhbnkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGNvbnRleHR1YWxSZXF1aXJlKG1vZHVsZUlkKTtcblx0XHRcdFx0XHR9KSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0XHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fTtcblx0fVxuXHRlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpIHtcblx0XHRyZXR1cm4gZnVuY3Rpb24gKGNvbnRleHR1YWxSZXF1aXJlOiBhbnksIC4uLm1vZHVsZUlkczogc3RyaW5nW10pOiBQcm9taXNlPGFueVtdPiB7XG5cdFx0XHRpZiAodHlwZW9mIGNvbnRleHR1YWxSZXF1aXJlID09PSAnc3RyaW5nJykge1xuXHRcdFx0XHRtb2R1bGVJZHMudW5zaGlmdChjb250ZXh0dWFsUmVxdWlyZSk7XG5cdFx0XHRcdGNvbnRleHR1YWxSZXF1aXJlID0gcmVxdWlyZTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSkge1xuXHRcdFx0XHQvLyBUT0RPOiBFcnJvciBwYXRoIG9uY2UgaHR0cHM6Ly9naXRodWIuY29tL2Rvam8vbG9hZGVyL2lzc3Vlcy8xNCBpcyBmaWd1cmVkIG91dFxuXHRcdFx0XHRjb250ZXh0dWFsUmVxdWlyZShtb2R1bGVJZHMsIGZ1bmN0aW9uICguLi5tb2R1bGVzOiBhbnlbXSkge1xuXHRcdFx0XHRcdHJlc29sdmUobW9kdWxlcyk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSk7XG5cdFx0fTtcblx0fVxuXHRlbHNlIHtcblx0XHRyZXR1cm4gZnVuY3Rpb24gKCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignVW5rbm93biBsb2FkZXInKSk7XG5cdFx0fTtcblx0fVxufSkoKTtcbmV4cG9ydCBkZWZhdWx0IGxvYWQ7XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sb2FkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLHdCQUFvQixXQUFXLENBQUMsQ0FBQTtJQWlCaEMsSUFBTSxJQUFJLEdBQVMsQ0FBQztRQUNuQixFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sS0FBSyxRQUFRLElBQUksT0FBTyxNQUFNLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDdEUsTUFBTSxDQUFDLFVBQVUsaUJBQXNCO2dCQUFFLG1CQUFzQjtxQkFBdEIsV0FBc0IsQ0FBdEIsc0JBQXNCLENBQXRCLElBQXNCO29CQUF0QixrQ0FBc0I7O2dCQUM5RCxFQUFFLENBQUMsQ0FBQyxPQUFPLGlCQUFpQixLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7b0JBQzNDLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztvQkFDckMsaUJBQWlCLEdBQUcsT0FBTyxDQUFDO2dCQUM3QixDQUFDO2dCQUNELE1BQU0sQ0FBQyxJQUFJLGlCQUFPLENBQUMsVUFBVSxPQUFPLEVBQUUsTUFBTTtvQkFDM0MsSUFBSSxDQUFDO3dCQUNKLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsUUFBUTs0QkFDdkMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUNwQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNMLENBQ0E7b0JBQUEsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzt3QkFDZCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2YsQ0FBQztnQkFDRixDQUFDLENBQUMsQ0FBQztZQUNKLENBQUMsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxNQUFNLEtBQUssVUFBVSxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3JELE1BQU0sQ0FBQyxVQUFVLGlCQUFzQjtnQkFBRSxtQkFBc0I7cUJBQXRCLFdBQXNCLENBQXRCLHNCQUFzQixDQUF0QixJQUFzQjtvQkFBdEIsa0NBQXNCOztnQkFDOUQsRUFBRSxDQUFDLENBQUMsT0FBTyxpQkFBaUIsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDO29CQUMzQyxTQUFTLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7b0JBQ3JDLGlCQUFpQixHQUFHLE9BQU8sQ0FBQztnQkFDN0IsQ0FBQztnQkFDRCxNQUFNLENBQUMsSUFBSSxpQkFBTyxDQUFDLFVBQVUsT0FBTztvQkFDbkMsZ0ZBQWdGO29CQUNoRixpQkFBaUIsQ0FBQyxTQUFTLEVBQUU7d0JBQVUsaUJBQWlCOzZCQUFqQixXQUFpQixDQUFqQixzQkFBaUIsQ0FBakIsSUFBaUI7NEJBQWpCLGdDQUFpQjs7d0JBQ3ZELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbEIsQ0FBQyxDQUFDLENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7WUFDSixDQUFDLENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUM7WUFDTCxNQUFNLENBQUM7Z0JBQ04sTUFBTSxDQUFDLGlCQUFPLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUNwRCxDQUFDLENBQUM7UUFDSCxDQUFDO0lBQ0YsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNMO3NCQUFlLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4vUHJvbWlzZSc7XG5cbmRlY2xhcmUgdmFyIGRlZmluZToge1xuXHQoLi4uYXJnczogYW55W10pOiBhbnk7XG5cdGFtZDogYW55O1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBOb2RlUmVxdWlyZSB7XG5cdChtb2R1bGVJZDogc3RyaW5nKTogYW55O1xufVxuZXhwb3J0IHR5cGUgUmVxdWlyZSA9IERvam9Mb2FkZXIuUmVxdWlyZSB8IE5vZGVSZXF1aXJlO1xuXG5leHBvcnQgaW50ZXJmYWNlIExvYWQge1xuXHQocmVxdWlyZTogUmVxdWlyZSwgLi4ubW9kdWxlSWRzOiBzdHJpbmdbXSk6IFByb21pc2U8YW55W10+O1xuXHQoLi4ubW9kdWxlSWRzOiBzdHJpbmdbXSk6IFByb21pc2U8YW55W10+O1xufVxuXG5jb25zdCBsb2FkOiBMb2FkID0gKGZ1bmN0aW9uICgpOiBMb2FkIHtcblx0aWYgKHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUuZXhwb3J0cyA9PT0gJ29iamVjdCcpIHtcblx0XHRyZXR1cm4gZnVuY3Rpb24gKGNvbnRleHR1YWxSZXF1aXJlOiBhbnksIC4uLm1vZHVsZUlkczogc3RyaW5nW10pOiBQcm9taXNlPGFueVtdPiB7XG5cdFx0XHRpZiAodHlwZW9mIGNvbnRleHR1YWxSZXF1aXJlID09PSAnc3RyaW5nJykge1xuXHRcdFx0XHRtb2R1bGVJZHMudW5zaGlmdChjb250ZXh0dWFsUmVxdWlyZSk7XG5cdFx0XHRcdGNvbnRleHR1YWxSZXF1aXJlID0gcmVxdWlyZTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0cmVzb2x2ZShtb2R1bGVJZHMubWFwKGZ1bmN0aW9uIChtb2R1bGVJZCk6IGFueSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gY29udGV4dHVhbFJlcXVpcmUobW9kdWxlSWQpO1xuXHRcdFx0XHRcdH0pKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHRyZWplY3QoZXJyb3IpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9O1xuXHR9XG5cdGVsc2UgaWYgKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZCkge1xuXHRcdHJldHVybiBmdW5jdGlvbiAoY29udGV4dHVhbFJlcXVpcmU6IGFueSwgLi4ubW9kdWxlSWRzOiBzdHJpbmdbXSk6IFByb21pc2U8YW55W10+IHtcblx0XHRcdGlmICh0eXBlb2YgY29udGV4dHVhbFJlcXVpcmUgPT09ICdzdHJpbmcnKSB7XG5cdFx0XHRcdG1vZHVsZUlkcy51bnNoaWZ0KGNvbnRleHR1YWxSZXF1aXJlKTtcblx0XHRcdFx0Y29udGV4dHVhbFJlcXVpcmUgPSByZXF1aXJlO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRcdC8vIFRPRE86IEVycm9yIHBhdGggb25jZSBodHRwczovL2dpdGh1Yi5jb20vZG9qby9sb2FkZXIvaXNzdWVzLzE0IGlzIGZpZ3VyZWQgb3V0XG5cdFx0XHRcdGNvbnRleHR1YWxSZXF1aXJlKG1vZHVsZUlkcywgZnVuY3Rpb24gKC4uLm1vZHVsZXM6IGFueVtdKSB7XG5cdFx0XHRcdFx0cmVzb2x2ZShtb2R1bGVzKTtcblx0XHRcdFx0fSk7XG5cdFx0XHR9KTtcblx0XHR9O1xuXHR9XG5cdGVsc2Uge1xuXHRcdHJldHVybiBmdW5jdGlvbiAoKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdVbmtub3duIGxvYWRlcicpKTtcblx0XHR9O1xuXHR9XG59KSgpO1xuZXhwb3J0IGRlZmF1bHQgbG9hZDtcbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var object_1 = require('./object'); | ||
@@ -130,6 +131,6 @@ /** | ||
return Map; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = Map; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01hcC50cyJdLCJuYW1lcyI6WyJNYXAiLCJNYXAuY29uc3RydWN0b3IiLCJNYXAuX2luZGV4T2ZLZXkiLCJNYXAuc2l6ZSIsIk1hcC5jbGVhciIsIk1hcC5kZWxldGUiLCJNYXAuZm9yRWFjaCIsIk1hcC5nZXQiLCJNYXAuaGFzIiwiTWFwLnNldCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFDQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFOUI7Ozs7T0FJRztJQUNIO1FBaUJDQTs7Ozs7Ozs7O1dBU0dBO1FBQ0hBLGFBQVlBLFNBQStCQTtZQTFCakNDLFVBQUtBLEdBQVFBLEVBQUVBLENBQUNBO1lBQ2hCQSxZQUFPQSxHQUFRQSxFQUFFQSxDQUFDQTtZQTBCM0JBLEVBQUVBLENBQUNBLENBQUNBLFNBQVNBLENBQUNBLENBQUNBLENBQUNBO2dCQUNmQSxHQUFHQSxDQUFDQSxDQUFDQSxHQUFHQSxDQUFDQSxDQUFDQSxHQUFHQSxDQUFDQSxFQUFFQSxRQUFNQSxHQUFHQSxTQUFTQSxDQUFDQSxNQUFNQSxFQUFFQSxDQUFDQSxHQUFHQSxRQUFNQSxFQUFFQSxDQUFDQSxFQUFFQSxFQUFFQSxDQUFDQTtvQkFDNURBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLFNBQVNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLEVBQUVBLFNBQVNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO2dCQUM1Q0EsQ0FBQ0E7WUFDRkEsQ0FBQ0E7UUFDRkEsQ0FBQ0E7UUE3QkREOzs7V0FHR0E7UUFDT0EseUJBQVdBLEdBQXJCQSxVQUFzQkEsSUFBU0EsRUFBRUEsR0FBTUE7WUFDdENFLEdBQUdBLENBQUNBLENBQUNBLEdBQUdBLENBQUNBLENBQUNBLEdBQUdBLENBQUNBLEVBQUVBLFFBQU1BLEdBQUdBLElBQUlBLENBQUNBLE1BQU1BLEVBQUVBLENB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Ozs7O1dBTUdBO1FBQ0hBLGlCQUFHQSxHQUFIQSxVQUFJQSxHQUFNQSxFQUFFQSxLQUFRQTtZQUNuQlMsSUFBSUEsS0FBS0EsR0FBR0EsSUFBSUEsQ0FBQ0EsV0FBV0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsRUFBRUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7WUFDOUNBLEtBQUtBLEdBQUdBLEtBQUtBLEdBQUdBLENBQUNBLEdBQUdBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLE1BQU1BLEdBQUdBLEtBQUtBLENBQUNBO1lBQzlDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxLQUFLQSxDQUFDQSxHQUFHQSxHQUFHQSxDQUFDQTtZQUN4QkEsSUFBSUEsQ0FBQ0EsT0FBT0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsR0FBR0EsS0FBS0EsQ0FBQ0E7WUFDNUJBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBO1FBQ2JBLENBQUNBO1FBQ0ZULFVBQUNBO0lBQURBLENBQUNBLEFBdEhELElBc0hDO0lBdEhEO3lCQXNIQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJyYXlMaWtlIH0gZnJvbSAnLi9hcnJheSc7XG5pbXBvcnQgeyBpcyB9IGZyb20gJy4vb2JqZWN0JztcblxuLyoqXG4gKiBBbiBpbXBsZW1lbnRhdGlvbiBhbmFsb2dvdXMgdG8gdGhlIE1hcCBzcGVjaWZpY2F0aW9uIGluIEVTMjAxNSxcbiAqIHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBpdGVyYXRvcnMuICBUaGUgZW50cmllcywga2V5cywgYW5kIHZhbHVlcyBtZXRob2RzXG4gKiBhcmUgb21pdHRlZCwgc2luY2UgZm9yRWFjaCBlc3NlbnRpYWxseSBwcm92aWRlcyB0aGUgc2FtZSBmdW5jdGlvbmFsaXR5LlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNYXA8SywgVj4ge1xuXHRwcm90ZWN0ZWQgX2tleXM6IEtbXSA9IFtdO1xuXHRwcm90ZWN0ZWQgX3ZhbHVlczogVltdID0gW107XG5cblx0Lypcblx0ICogQW4gYWx0ZXJuYXRpdmUgdG8gQXJyYXkucHJvdG90eXBlLmluZGV4T2YgdXNpbmcgT2JqZWN0LmlzXG5cdCAqIHRvIGNoZWNrIGZvciBlcXVhbGl0eS4gU2VlIGh0dHA6Ly9temwubGEvMXp1S08yVlxuXHQgKi9cblx0cHJvdGVjdGVkIF9pbmRleE9mS2V5KGtleXM6IEtbXSwga2V5OiBLKTogbnVtYmVyIHtcblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0ga2V5cy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0aWYgKGlzKGtleXNbaV0sIGtleSkpIHtcblx0XHRcdFx0cmV0dXJuIGk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHJldHVybiAtMTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgbmV3IE1hcFxuXHQgKlxuXHQgKiBAY29uc3RydWN0b3Jcblx0ICpcblx0ICogQHBhcmFtIGFycmF5TGlrZVxuXHQgKiBBcnJheSBvciBhcnJheS1saWtlIG9iamVjdCBjb250YWluaW5nIHR3by1pdGVtIHR1cGxlcyB1c2VkIHRvIGluaXRpYWxseSBwb3B1bGF0ZSB0aGUgbWFwLlxuXHQgKiBUaGUgZmlyc3QgaXRlbSBpbiBlYWNoIHR1cGxlIGNvcnJlc3BvbmRzIHRvIHRoZSBrZXkgb2YgdGhlIG1hcCBlbnRyeS5cblx0ICogVGhlIHNlY29uZCBpdGVtIGNvcnJlc3BvbmRzIHRvIHRoZSB2YWx1ZSBvZiB0aGUgbWFwIGVudHJ5LlxuXHQgKi9cblx0Y29uc3RydWN0b3IoYXJyYXlMaWtlPzogQXJyYXlMaWtlPFsgSywgViBdPikge1xuXHRcdGlmIChhcnJheUxpa2UpIHtcblx0XHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBhcnJheUxpa2UubGVuZ3RoOyBpIDwgbGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0dGhpcy5zZXQoYXJyYXlMaWtlW2ldWzBdLCBhcnJheUxpa2VbaV1bMV0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoZSBudW1iZXIgb2Yga2V5IC8gdmFsdWUgcGFpcnMgaW4gdGhlIE1hcC5cblx0ICpcblx0ICogQHJldHVybiB0aGUgbnVtYmVyIG9mIGtleSAvIHZhbHVlIHBhaXJzIGluIHRoZSBNYXBcblx0ICovXG5cdGdldCBzaXplKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2tleXMubGVuZ3RoO1xuXHR9XG5cblx0LyoqXG5cdCAqIERlbGV0ZXMgYWxsIGtleXMgYW5kIHRoZWlyIGFzc29jaWF0ZWQgdmFsdWVzLlxuXHQgKi9cblx0Y2xlYXIoKTogdm9pZCB7XG5cdFx0dGhpcy5fa2V5cy5sZW5ndGggPSB0aGlzLl92YWx1ZXMubGVuZ3RoID0gMDtcblx0fVxuXG5cdC8qKlxuXHQgKiBEZWxldGVzIGEgZ2l2ZW4ga2V5IGFuZCBpdHMgYXNzb2NpYXRlZCB2YWx1ZS5cblx0ICpcblx0ICogQHBhcmFtIGtleSBUaGUga2V5IHRvIGRlbGV0ZVxuXHQgKiBAcmV0dXJuIHRydWUgaWYgdGhlIGtleSBleGlzdHMsIGZhbHNlIGlmIGl0IGRvZXMgbm90XG5cdCAqL1xuXHRkZWxldGUoa2V5OiBLKTogYm9vbGVhbiB7XG5cdFx0Y29uc3QgaW5kZXggPSB0aGlzLl9pbmRleE9mS2V5KHRoaXMuX2tleXMsIGtleSk7XG5cdFx0aWYgKGluZGV4IDwgMCkge1xuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblx0XHR0aGlzLl9rZXlzLnNwbGljZShpbmRleCwgMSk7XG5cdFx0dGhpcy5fdmFsdWVzLnNwbGljZShpbmRleCwgMSk7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cblxuXHQvKipcblx0ICogRXhlY3V0ZXMgYSBnaXZlbiBmdW5jdGlvbiBmb3IgZWFjaCBtYXAgZW50cnkuIFRoZSBmdW5jdGlvblxuXHQgKiBpcyBpbnZva2VkIHdpdGggdGhyZWUgYXJndW1lbnRzOiB0aGUgZWxlbWVudCB2YWx1ZSwgdGhlXG5cdCAqIGVsZW1lbnQga2V5LCBhbmQgdGhlIGFzc29jaWF0ZWQgTWFwIGluc3RhbmNlLlxuXHQgKlxuXHQgKiBAcGFyYW0gY2FsbGJhY2sgVGhlIGZ1bmN0aW9uIHRvIGV4ZWN1dGUgZm9yIGVhY2ggbWFwIGVudHJ5LFxuXHQgKiBAcGFyYW0gY29udGV4dCBUaGUgdmFsdWUgdG8gdXNlIGZvciBgdGhpc2AgZm9yIGVhY2ggZXhlY3V0aW9uIG9mIHRoZSBjYWxiYWNrXG5cdCAqL1xuXHRmb3JFYWNoKGNhbGxiYWNrOiAodmFsdWU6IFYsIGtleTogSywgbWFwSW5zdGFuY2U6IE1hcDxLLCBWPikgPT4gYW55LCBjb250ZXh0Pzoge30pIHtcblx0XHRjb25zdCBrZXlzID0gdGhpcy5fa2V5cztcblx0XHRjb25zdCB2YWx1ZXMgPSB0aGlzLl92YWx1ZXM7XG5cdFx0Zm9yIChsZXQgaSA9IDAsIGxlbmd0aCA9IGtleXMubGVuZ3RoOyBpIDwgbGVuZ3RoOyBpKyspIHtcblx0XHRcdGNhbGxiYWNrLmNhbGwoY29udGV4dCwgdmFsdWVzW2ldLCBrZXlzW2ldLCB0aGlzKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyB0aGUgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGEgZ2l2ZW4ga2V5LlxuXHQgKlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gbG9vayB1cFxuXHQgKiBAcmV0dXJuIFRoZSB2YWx1ZSBpZiBvbmUgZXhpc3RzIG9yIHVuZGVmaW5lZFxuXHQgKi9cblx0Z2V0KGtleTogSyk6IFYge1xuXHRcdGNvbnN0IGluZGV4ID0gdGhpcy5faW5kZXhPZktleSh0aGlzLl9rZXlzLCBrZXkpO1xuXHRcdHJldHVybiBpbmRleCA8IDAgPyB1bmRlZmluZWQgOiB0aGlzLl92YWx1ZXNbaW5kZXhdO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBmb3IgdGhlIHByZXNlbmNlIG9mIGEgZ2l2ZW4ga2V5LlxuXHQgKlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gY2hlY2sgZm9yXG5cdCAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUga2V5IGV4aXN0cywgZmFsc2UgaWYgaXQgZG9lcyBub3Rcblx0ICovXG5cdGhhcyhrZXk6IEspOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5faW5kZXhPZktleSh0aGlzLl9rZXlzLCBrZXkpID4gLTE7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyB0aGUgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGEgZ2l2ZW4ga2V5LlxuXHQgKlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gZGVmaW5lIGEgdmFsdWUgdG9cblx0ICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byBhc3NpZ25cblx0ICogQHJldHVybiBUaGUgTWFwIGluc3RhbmNlXG5cdCAqL1xuXHRzZXQoa2V5OiBLLCB2YWx1ZTogVik6IE1hcDxLLCBWPiB7XG5cdFx0bGV0IGluZGV4ID0gdGhpcy5faW5kZXhPZktleSh0aGlzLl9rZXlzLCBrZXkpO1xuXHRcdGluZGV4ID0gaW5kZXggPCAwID8gdGhpcy5fa2V5cy5sZW5ndGggOiBpbmRleDtcblx0XHR0aGlzLl9rZXlzW2luZGV4XSA9IGtleTtcblx0XHR0aGlzLl92YWx1ZXNbaW5kZXhdID0gdmFsdWU7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFDQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFOUI7Ozs7T0FJRztJQUNIO1FBaUJDOzs7Ozs7Ozs7V0FTRztRQUNILGFBQVksU0FBK0I7WUExQmpDLFVBQUssR0FBUSxFQUFFLENBQUM7WUFDaEIsWUFBTyxHQUFRLEVBQUUsQ0FBQztZQTBCM0IsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztnQkFDZixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUM1RCxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDNUMsQ0FBQztZQUNGLENBQUM7UUFDRixDQUFDO1FBN0JEOzs7V0FHRztRQUNPLHlCQUFXLEdBQXJCLFVBQXNCLElBQVMsRUFBRSxHQUFNO1lBQ3RDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsUUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3ZELEVBQUUsQ0FBQyxDQUFDLFdBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNWLENBQUM7WUFDRixDQUFDO1lBQ0QsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQXlCRCxzQkFBSSxxQkFBSTtZQUxSOzs7O2VBSUc7aUJBQ0g7Z0JBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQzFCLENBQUM7OztXQUFBO1FBRUQ7O1dBRUc7UUFDSCxtQkFBSyxHQUFMO1lBQ0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFFRDs7Ozs7V0FLRztRQUNILG9CQUFNLEdBQU4sVUFBTyxHQUFNO1lBQ1osSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ2hELEVBQUUsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNmLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDZCxDQUFDO1lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ2IsQ0FBQztRQUVEOzs7Ozs7O1dBT0c7UUFDSCxxQkFBTyxHQUFQLFVBQVEsUUFBMkQsRUFBRSxPQUFZO1lBQ2hGLElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDeEIsSUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUM1QixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLFFBQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUN2RCxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDRixDQUFDO1FBRUQ7Ozs7O1dBS0c7UUFDSCxpQkFBRyxHQUFILFVBQUksR0FBTTtZQUNULElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRCxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBRUQ7Ozs7O1dBS0c7UUFDSCxpQkFBRyxHQUFILFVBQUksR0FBTTtZQUNULE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUVEOzs7Ozs7V0FNRztRQUNILGlCQUFHLEdBQUgsVUFBSSxHQUFNLEVBQUUsS0FBUTtZQUNuQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDOUMsS0FBSyxHQUFHLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQzlDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQzVCLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDYixDQUFDO1FBQ0YsVUFBQztJQUFELENBQUMsQUF0SEQsSUFzSEM7SUF0SEQ7eUJBc0hDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcnJheUxpa2UgfSBmcm9tICcuL2FycmF5JztcbmltcG9ydCB7IGlzIH0gZnJvbSAnLi9vYmplY3QnO1xuXG4vKipcbiAqIEFuIGltcGxlbWVudGF0aW9uIGFuYWxvZ291cyB0byB0aGUgTWFwIHNwZWNpZmljYXRpb24gaW4gRVMyMDE1LFxuICogd2l0aCB0aGUgZXhjZXB0aW9uIG9mIGl0ZXJhdG9ycy4gIFRoZSBlbnRyaWVzLCBrZXlzLCBhbmQgdmFsdWVzIG1ldGhvZHNcbiAqIGFyZSBvbWl0dGVkLCBzaW5jZSBmb3JFYWNoIGVzc2VudGlhbGx5IHByb3ZpZGVzIHRoZSBzYW1lIGZ1bmN0aW9uYWxpdHkuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1hcDxLLCBWPiB7XG5cdHByb3RlY3RlZCBfa2V5czogS1tdID0gW107XG5cdHByb3RlY3RlZCBfdmFsdWVzOiBWW10gPSBbXTtcblxuXHQvKlxuXHQgKiBBbiBhbHRlcm5hdGl2ZSB0byBBcnJheS5wcm90b3R5cGUuaW5kZXhPZiB1c2luZyBPYmplY3QuaXNcblx0ICogdG8gY2hlY2sgZm9yIGVxdWFsaXR5LiBTZWUgaHR0cDovL216bC5sYS8xenVLTzJWXG5cdCAqL1xuXHRwcm90ZWN0ZWQgX2luZGV4T2ZLZXkoa2V5czogS1tdLCBrZXk6IEspOiBudW1iZXIge1xuXHRcdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBrZXlzLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0XHRpZiAoaXMoa2V5c1tpXSwga2V5KSkge1xuXHRcdFx0XHRyZXR1cm4gaTtcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuIC0xO1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBuZXcgTWFwXG5cdCAqXG5cdCAqIEBjb25zdHJ1Y3RvclxuXHQgKlxuXHQgKiBAcGFyYW0gYXJyYXlMaWtlXG5cdCAqIEFycmF5IG9yIGFycmF5LWxpa2Ugb2JqZWN0IGNvbnRhaW5pbmcgdHdvLWl0ZW0gdHVwbGVzIHVzZWQgdG8gaW5pdGlhbGx5IHBvcHVsYXRlIHRoZSBtYXAuXG5cdCAqIFRoZSBmaXJzdCBpdGVtIGluIGVhY2ggdHVwbGUgY29ycmVzcG9uZHMgdG8gdGhlIGtleSBvZiB0aGUgbWFwIGVudHJ5LlxuXHQgKiBUaGUgc2Vjb25kIGl0ZW0gY29ycmVzcG9uZHMgdG8gdGhlIHZhbHVlIG9mIHRoZSBtYXAgZW50cnkuXG5cdCAqL1xuXHRjb25zdHJ1Y3RvcihhcnJheUxpa2U/OiBBcnJheUxpa2U8WyBLLCBWIF0+KSB7XG5cdFx0aWYgKGFycmF5TGlrZSkge1xuXHRcdFx0Zm9yIChsZXQgaSA9IDAsIGxlbmd0aCA9IGFycmF5TGlrZS5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0XHR0aGlzLnNldChhcnJheUxpa2VbaV1bMF0sIGFycmF5TGlrZVtpXVsxXSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFJldHVybnMgdGhlIG51bWJlciBvZiBrZXkgLyB2YWx1ZSBwYWlycyBpbiB0aGUgTWFwLlxuXHQgKlxuXHQgKiBAcmV0dXJuIHRoZSBudW1iZXIgb2Yga2V5IC8gdmFsdWUgcGFpcnMgaW4gdGhlIE1hcFxuXHQgKi9cblx0Z2V0IHNpemUoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fa2V5cy5sZW5ndGg7XG5cdH1cblxuXHQvKipcblx0ICogRGVsZXRlcyBhbGwga2V5cyBhbmQgdGhlaXIgYXNzb2NpYXRlZCB2YWx1ZXMuXG5cdCAqL1xuXHRjbGVhcigpOiB2b2lkIHtcblx0XHR0aGlzLl9rZXlzLmxlbmd0aCA9IHRoaXMuX3ZhbHVlcy5sZW5ndGggPSAwO1xuXHR9XG5cblx0LyoqXG5cdCAqIERlbGV0ZXMgYSBnaXZlbiBrZXkgYW5kIGl0cyBhc3NvY2lhdGVkIHZhbHVlLlxuXHQgKlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gZGVsZXRlXG5cdCAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUga2V5IGV4aXN0cywgZmFsc2UgaWYgaXQgZG9lcyBub3Rcblx0ICovXG5cdGRlbGV0ZShrZXk6IEspOiBib29sZWFuIHtcblx0XHRjb25zdCBpbmRleCA9IHRoaXMuX2luZGV4T2ZLZXkodGhpcy5fa2V5cywga2V5KTtcblx0XHRpZiAoaW5kZXggPCAwKSB7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXHRcdHRoaXMuX2tleXMuc3BsaWNlKGluZGV4LCAxKTtcblx0XHR0aGlzLl92YWx1ZXMuc3BsaWNlKGluZGV4LCAxKTtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBFeGVjdXRlcyBhIGdpdmVuIGZ1bmN0aW9uIGZvciBlYWNoIG1hcCBlbnRyeS4gVGhlIGZ1bmN0aW9uXG5cdCAqIGlzIGludm9rZWQgd2l0aCB0aHJlZSBhcmd1bWVudHM6IHRoZSBlbGVtZW50IHZhbHVlLCB0aGVcblx0ICogZWxlbWVudCBrZXksIGFuZCB0aGUgYXNzb2NpYXRlZCBNYXAgaW5zdGFuY2UuXG5cdCAqXG5cdCAqIEBwYXJhbSBjYWxsYmFjayBUaGUgZnVuY3Rpb24gdG8gZXhlY3V0ZSBmb3IgZWFjaCBtYXAgZW50cnksXG5cdCAqIEBwYXJhbSBjb250ZXh0IFRoZSB2YWx1ZSB0byB1c2UgZm9yIGB0aGlzYCBmb3IgZWFjaCBleGVjdXRpb24gb2YgdGhlIGNhbGJhY2tcblx0ICovXG5cdGZvckVhY2goY2FsbGJhY2s6ICh2YWx1ZTogViwga2V5OiBLLCBtYXBJbnN0YW5jZTogTWFwPEssIFY+KSA9PiBhbnksIGNvbnRleHQ/OiB7fSkge1xuXHRcdGNvbnN0IGtleXMgPSB0aGlzLl9rZXlzO1xuXHRcdGNvbnN0IHZhbHVlcyA9IHRoaXMuX3ZhbHVlcztcblx0XHRmb3IgKGxldCBpID0gMCwgbGVuZ3RoID0ga2V5cy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuXHRcdFx0Y2FsbGJhY2suY2FsbChjb250ZXh0LCB2YWx1ZXNbaV0sIGtleXNbaV0sIHRoaXMpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYSBnaXZlbiBrZXkuXG5cdCAqXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB0byBsb29rIHVwXG5cdCAqIEByZXR1cm4gVGhlIHZhbHVlIGlmIG9uZSBleGlzdHMgb3IgdW5kZWZpbmVkXG5cdCAqL1xuXHRnZXQoa2V5OiBLKTogViB7XG5cdFx0Y29uc3QgaW5kZXggPSB0aGlzLl9pbmRleE9mS2V5KHRoaXMuX2tleXMsIGtleSk7XG5cdFx0cmV0dXJuIGluZGV4IDwgMCA/IHVuZGVmaW5lZCA6IHRoaXMuX3ZhbHVlc1tpbmRleF07XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGZvciB0aGUgcHJlc2VuY2Ugb2YgYSBnaXZlbiBrZXkuXG5cdCAqXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB0byBjaGVjayBmb3Jcblx0ICogQHJldHVybiB0cnVlIGlmIHRoZSBrZXkgZXhpc3RzLCBmYWxzZSBpZiBpdCBkb2VzIG5vdFxuXHQgKi9cblx0aGFzKGtleTogSyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLl9pbmRleE9mS2V5KHRoaXMuX2tleXMsIGtleSkgPiAtMTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXRzIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYSBnaXZlbiBrZXkuXG5cdCAqXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB0byBkZWZpbmUgYSB2YWx1ZSB0b1xuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIGFzc2lnblxuXHQgKiBAcmV0dXJuIFRoZSBNYXAgaW5zdGFuY2Vcblx0ICovXG5cdHNldChrZXk6IEssIHZhbHVlOiBWKTogTWFwPEssIFY+IHtcblx0XHRsZXQgaW5kZXggPSB0aGlzLl9pbmRleE9mS2V5KHRoaXMuX2tleXMsIGtleSk7XG5cdFx0aW5kZXggPSBpbmRleCA8IDAgPyB0aGlzLl9rZXlzLmxlbmd0aCA6IGluZGV4O1xuXHRcdHRoaXMuX2tleXNbaW5kZXhdID0ga2V5O1xuXHRcdHRoaXMuX3ZhbHVlc1tpbmRleF0gPSB2YWx1ZTtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var has_1 = require('./has'); | ||
@@ -129,4 +130,4 @@ var FRACTION_UNITS = Math.pow(2, 23); | ||
var n = 0; | ||
for (var _a = 0; _a < args.length; _a++) { | ||
var arg = args[_a]; | ||
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) { | ||
var arg = args_1[_a]; | ||
if (arg === Infinity || arg === -Infinity) { | ||
@@ -241,2 +242,2 @@ return Infinity; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYXRoLnRzIl0sIm5hbWVzIjpbImFjb3NoIiwiYXNpbmgiLCJhdGFuaCIsImNicnQiLCJjbHozMiIsImNvc2giLCJleHBtMSIsImh5cG90IiwiaW11bCIsImxvZzIiLCJsb2cxMCIsImxvZzFwIiwic2lnbiIsInNpbmgiLCJ0YW5oIiwidHJ1bmMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsb0JBQWdCLE9BQU8sQ0FBQyxDQUFBO0lBRXhCLElBQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLElBQU0sV0FBVyxHQUFHLHNCQUFzQixDQUFDO0lBQzNDLElBQU0sV0FBVyxHQUFHLHFCQUFxQixDQUFDO0lBRTFDOzs7OztPQUtHO0lBQ0gsZUFBc0IsQ0FBUztRQUM5QkEsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7SUFDM0NBLENBQUNBO0lBRmUsYUFBSyxRQUVwQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxlQUFzQixDQUFTO1FBQzlCQyxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxLQUFLQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNyQkEsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDVkEsQ0FBQ0E7UUFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7WUFDTEEsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDM0NBLENBQUNBO0lBQ0ZBLENBQUNBO0lBUGUsYUFB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SUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7SUFDN0NBLENBQUNBO0lBRmUsYUFBSyxRQUVwQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5cbmNvbnN0IEZSQUNUSU9OX1VOSVRTID0gTWF0aC5wb3coMiwgMjMpO1xuY29uc3QgTUFYX0ZMT0FUMzIgPSAzLjQwMjgyMzQ2NjM4NTI4ODZlKzM4O1xuY29uc3QgTUlOX0ZMT0FUMzIgPSAxLjQwMTI5ODQ2NDMyNDgxN2UtNDU7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgaHlwZXJib2xpYyBhcmNjb3NpbmUgb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gYWNvc2gobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIE1hdGgubG9nKG4gKyBNYXRoLnNxcnQobiAqIG4gLSAxKSk7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgaHlwZXJib2xpYyBhcmNzaW5lIG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzaW5oKG46IG51bWJlcik6IG51bWJlciB7XG5cdGlmIChuID09PSAtSW5maW5pdHkpIHtcblx0XHRyZXR1cm4gbjtcblx0fVxuXHRlbHNlIHtcblx0XHRyZXR1cm4gTWF0aC5sb2cobiArIE1hdGguc3FydChuICogbiArIDEpKTtcblx0fVxufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGh5cGVyYm9saWMgYXJjdGFuZ2VudCBvZiBhIG51bWJlci5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhdGFuaChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gTWF0aC5sb2coKDEgKyBuKSAvICgxIC0gbikpIC8gMjtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBjdWJlIHJvb3Qgb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gY2JydChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRjb25zdCB5ID0gTWF0aC5wb3coTWF0aC5hYnMobiksIDEgLyAzKTtcblx0cmV0dXJuIG4gPCAwID8gLXkgOiB5O1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIG51bWJlciBvZiBsZWFkaW5nIHplcm8gYml0cyBpbiB0aGUgMzItYml0XG4gKiBiaW5hcnkgcmVwcmVzZW50YXRpb24gb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gY2x6MzIobjogbnVtYmVyKTogbnVtYmVyIHtcblx0biA9IE51bWJlcihuKSA+Pj4gMDtcblx0cmV0dXJuIG4gPyAzMiAtIG4udG9TdHJpbmcoMikubGVuZ3RoIDogMzI7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgaHlwZXJib2xpYyBjb3NpbmUgb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gY29zaChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRjb25zdCBtID0gTWF0aC5leHAobik7XG5cdHJldHVybiAobSArIDEgLyBtKSAvIDI7XG59XG5cbi8qKlxuICogUmV0dXJucyBlIHJhaXNlZCB0byB0aGUgc3BlY2lmaWVkIHBvd2VyIG1pbnVzIG9uZS5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHBtMShuOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gTWF0aC5leHAobikgLSAxO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIG5lYXJlc3Qgc2luZ2xlLXByZWNpc2lvbiBmbG9hdCByZXByZXNlbnRhdGlvbiBvZiBhIG51bWJlci5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBjb25zdCBmcm91bmQ6IChuOiBudW1iZXIpID0+IG51bWJlciA9IGhhcygnZmxvYXQzMmFycmF5JykgPyBmdW5jdGlvbiAobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIG5ldyBGbG9hdDMyQXJyYXkoW25dKVswXTtcbn0gOlxuZnVuY3Rpb24gKG46IG51bWJlcik6IG51bWJlciB7XG5cdC8vIEZ1cnRoZXIgZmFsbGJhY2sgZm9yIElFOSwgd2hpY2ggZG9lc24ndCBzdXBwb3J0IEZsb2F0MzJBcnJheS5cblx0Ly8gVGhpcyBnaXZlcyBhIGZhaXIgYXBwcm94aW1hdGlvbiBpbiBtb3N0IGNhc2VzLlxuXG5cdGlmIChuID09PSAwIHx8ICFpc0Zpbml0ZShuKSkge1xuXHRcdHJldHVybiBuO1xuXHR9XG5cdGlmIChNYXRoLmFicyhuKSA+IE1BWF9GTE9BVDMyKSB7XG5cdFx0cmV0dXJuIG4gPiAwID8gSW5maW5pdHkgOiAtSW5maW5pdHk7XG5cdH1cblx0aWYgKE1hdGguYWJzKG4pIDwgTUlOX0ZMT0FUMzIpIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXHRjb25zdCBleHBvbmVudCA9IE1hdGguZmxvb3IobG9nMihNYXRoLmFicyhuKSkpO1xuXHRyZXR1cm4gKE1hdGgucm91bmQoKG4gLyBNYXRoLnBvdygyLCBleHBvbmVudCkgLSAxKSAqIEZSQUNUSU9OX1VOSVRTKSAvIEZSQUNUSU9OX1VOSVRTICsgMSkgKiBNYXRoLnBvdygyLCBleHBvbmVudCk7XG59O1xuXG4vKipcbiAqIFJldHVybnMgdGhlIHNxdWFyZSByb290IG9mIHRoZSBzdW0gb2Ygc3F1YXJlcyBvZiBpdHMgYXJndW1lbnRzLlxuICpcbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaHlwb3QoLi4uYXJnczogbnVtYmVyW10pOiBudW1iZXIge1xuXHQvLyBTZWU6IGh0dHA6Ly9temwubGEvMUhEaTZ4UFxuXHRsZXQgbiA9IDA7XG5cblx0Zm9yIChsZXQgYXJnIG9mIGFyZ3MpIHtcblx0XHRpZiAoYXJnID09PSBJbmZpbml0eSB8fCBhcmcgPT09IC1JbmZpbml0eSkge1xuXHRcdFx0cmV0dXJuIEluZmluaXR5O1xuXHRcdH1cblx0XHRuICs9IGFyZyAqIGFyZztcblx0fVxuXHRyZXR1cm4gTWF0aC5zcXJ0KG4pO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIHJlc3VsdCBvZiB0aGUgMzItYml0IG11bHRpcGxpY2F0aW9uIG9mIHRoZSB0d28gcGFyYW1ldGVycy5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHBhcmFtIG0gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaW11bChuOiBudW1iZXIsIG06IG51bWJlcik6IG51bWJlciB7XG5cdC8vIFNlZTogaHR0cDovL216bC5sYS8xSzI3OUZLXG5cdGNvbnN0IGFoID0gKG4gPj4+IDE2KSAmIDB4ZmZmZjtcblx0Y29uc3QgYWwgPSBuICYgMHhmZmZmO1xuXHRjb25zdCBiaCA9IChtID4+PiAxNikgJiAweGZmZmY7XG5cdGNvbnN0IGJsID0gbSAmIDB4ZmZmZjtcblx0cmV0dXJuICgoYWwgKiBibCkgKyAoKChhaCAqIGJsICsgYWwgKiBiaCkgPDwgMTYpID4+PiAwKSB8IDApO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGJhc2UgMiBsb2dhcml0aG0gb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gbG9nMihuOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gTWF0aC5sb2cobikgLyBNYXRoLkxOMjtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBiYXNlIDEwIGxvZ2FyaXRobSBvZiBhIG51bWJlci5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsb2cxMChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gTWF0aC5sb2cobikgLyBNYXRoLkxOMTA7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgbmF0dXJhbCBsb2dhcml0aG0gb2YgMSArIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvZzFwKG46IG51bWJlcik6IG51bWJlciB7XG5cdHJldHVybiBNYXRoLmxvZygxICsgbik7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgc2lnbiBvZiBhIG51bWJlciwgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBudW1iZXIgaXMgcG9zaXRpdmUuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gMSBpZiB0aGUgbnVtYmVyIGlzIHBvc2l0aXZlLCAtMSBpZiB0aGUgbnVtYmVyIGlzIG5lZ2F0aXZlLCBvciAwIGlmIHRoZSBudW1iZXIgaXMgMFxuICovXG5leHBvcnQgZnVuY3Rpb24gc2lnbihuOiBudW1iZXIpOiBudW1iZXIge1xuXHRuID0gTnVtYmVyKG4pO1xuXHRpZiAobiA9PT0gMCB8fCBuICE9PSBuKSB7XG5cdFx0cmV0dXJuIG47XG5cdH1cblx0cmV0dXJuIG4gPiAwID8gMSA6IC0xO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGh5cGVyYm9saWMgc2luZSBvZiBhIG51bWJlci5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaW5oKG46IG51bWJlcik6IG51bWJlciB7XG5cdGNvbnN0IG0gPSBNYXRoLmV4cChuKTtcblx0cmV0dXJuIChtIC0gMSAvIG0pIC8gMjtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBoeXBlcmJvbGljIHRhbmdlbnQgb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdGFuaChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRpZiAobiA9PT0gSW5maW5pdHkpIHtcblx0XHRyZXR1cm4gMTtcblx0fVxuXHRlbHNlIGlmIChuID09PSAtSW5maW5pdHkpIHtcblx0XHRyZXR1cm4gLTE7XG5cdH1cblx0ZWxzZSB7XG5cdFx0Y29uc3QgeSA9IE1hdGguZXhwKDIgKiBuKTtcblx0XHRyZXR1cm4gKHkgLSAxKSAvICh5ICsgMSk7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBpbnRlZ3JhbCBwYXJ0IG9mIGEgbnVtYmVyIGJ5IHJlbW92aW5nIGFueSBmcmFjdGlvbmFsIGRpZ2l0cy5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cnVuYyhuOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gbiA8IDAgPyBNYXRoLmNlaWwobikgOiBNYXRoLmZsb29yKG4pO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQUV4QixJQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2QyxJQUFNLFdBQVcsR0FBRyxzQkFBc0IsQ0FBQztJQUMzQyxJQUFNLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQztJQUUxQzs7Ozs7T0FLRztJQUNILGVBQXNCLENBQVM7UUFDOUIsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFGZSxhQUFLLFFBRXBCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGVBQXNCLENBQVM7UUFDOUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNyQixNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ1YsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDO1lBQ0wsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNDLENBQUM7SUFDRixDQUFDO0lBUGUsYUFBSyxRQU9wQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxlQUFzQixDQUFTO1FBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFGZSxhQUFLLFFBRXBCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGNBQXFCLENBQVM7UUFDN0IsSUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN2QyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUhlLFlBQUksT0FHbkIsQ0FBQTtJQUVEOzs7Ozs7T0FNRztJQUNILGVBQXNCLENBQVM7UUFDOUIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFIZSxhQUFLLFFBR3BCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGNBQXFCLENBQVM7UUFDN0IsSUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBSGUsWUFBSSxPQUduQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxlQUFzQixDQUFTO1FBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRmUsYUFBSyxRQUVwQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDVSxjQUFNLEdBQTBCLGFBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxVQUFVLENBQVM7UUFDckYsTUFBTSxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDO1FBQ0QsVUFBVSxDQUFTO1lBQ2xCLGdFQUFnRTtZQUNoRSxpREFBaUQ7WUFFakQsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzdCLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDVixDQUFDO1lBQ0QsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDO2dCQUMvQixNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFRLEdBQUcsQ0FBQyxRQUFRLENBQUM7WUFDckMsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDL0IsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNWLENBQUM7WUFDRCxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxHQUFHLGNBQWMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNwSCxDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ0g7UUFBc0IsY0FBaUI7YUFBakIsV0FBaUIsQ0FBakIsc0JBQWlCLENBQWpCLElBQWlCO1lBQWpCLDZCQUFpQjs7UUFDdEMsNkJBQTZCO1FBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVWLEdBQUcsQ0FBQyxDQUFZLFVBQUksRUFBSixhQUFJLEVBQUosa0JBQUksRUFBSixJQUFJLENBQUM7WUFBaEIsSUFBSSxHQUFHLGFBQUE7WUFDWCxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssUUFBUSxJQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDakIsQ0FBQztZQUNELENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDO1NBQ2Y7UUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBWGUsYUFBSyxRQVdwQixDQUFBO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsY0FBcUIsQ0FBUyxFQUFFLENBQVM7UUFDeEMsNkJBQTZCO1FBQzdCLElBQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUMvQixJQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLElBQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUMvQixJQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFQZSxZQUFJLE9BT25CLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGNBQXFCLENBQVM7UUFDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUMvQixDQUFDO0lBRmUsWUFBSSxPQUVuQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxlQUFzQixDQUFTO1FBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUZlLGFBQUssUUFFcEIsQ0FBQTtJQUVEOzs7OztPQUtHO0lBQ0gsZUFBc0IsQ0FBUztRQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUZlLGFBQUssUUFFcEIsQ0FBQTtJQUVEOzs7OztPQUtHO0lBQ0gsY0FBcUIsQ0FBUztRQUM3QixDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2QsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4QixNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ1YsQ0FBQztRQUNELE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBTmUsWUFBSSxPQU1uQixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxjQUFxQixDQUFTO1FBQzdCLElBQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUhlLFlBQUksT0FHbkIsQ0FBQTtJQUVEOzs7OztPQUtHO0lBQ0gsY0FBcUIsQ0FBUztRQUM3QixFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNwQixNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ1YsQ0FBQztRQUNELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsQ0FBQztZQUNMLElBQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFCLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMxQixDQUFDO0lBQ0YsQ0FBQztJQVhlLFlBQUksT0FXbkIsQ0FBQTtJQUVEOzs7OztPQUtHO0lBQ0gsZUFBc0IsQ0FBUztRQUM5QixNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUZlLGFBQUssUUFFcEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBoYXMgZnJvbSAnLi9oYXMnO1xuXG5jb25zdCBGUkFDVElPTl9VTklUUyA9IE1hdGgucG93KDIsIDIzKTtcbmNvbnN0IE1BWF9GTE9BVDMyID0gMy40MDI4MjM0NjYzODUyODg2ZSszODtcbmNvbnN0IE1JTl9GTE9BVDMyID0gMS40MDEyOTg0NjQzMjQ4MTdlLTQ1O1xuXG4vKipcbiAqIFJldHVybnMgdGhlIGh5cGVyYm9saWMgYXJjY29zaW5lIG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjb3NoKG46IG51bWJlcik6IG51bWJlciB7XG5cdHJldHVybiBNYXRoLmxvZyhuICsgTWF0aC5zcXJ0KG4gKiBuIC0gMSkpO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGh5cGVyYm9saWMgYXJjc2luZSBvZiBhIG51bWJlci5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc2luaChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRpZiAobiA9PT0gLUluZmluaXR5KSB7XG5cdFx0cmV0dXJuIG47XG5cdH1cblx0ZWxzZSB7XG5cdFx0cmV0dXJuIE1hdGgubG9nKG4gKyBNYXRoLnNxcnQobiAqIG4gKyAxKSk7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBoeXBlcmJvbGljIGFyY3RhbmdlbnQgb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gYXRhbmgobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIE1hdGgubG9nKCgxICsgbikgLyAoMSAtIG4pKSAvIDI7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgY3ViZSByb290IG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNicnQobjogbnVtYmVyKTogbnVtYmVyIHtcblx0Y29uc3QgeSA9IE1hdGgucG93KE1hdGguYWJzKG4pLCAxIC8gMyk7XG5cdHJldHVybiBuIDwgMCA/IC15IDogeTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgbGVhZGluZyB6ZXJvIGJpdHMgaW4gdGhlIDMyLWJpdFxuICogYmluYXJ5IHJlcHJlc2VudGF0aW9uIG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsejMyKG46IG51bWJlcik6IG51bWJlciB7XG5cdG4gPSBOdW1iZXIobikgPj4+IDA7XG5cdHJldHVybiBuID8gMzIgLSBuLnRvU3RyaW5nKDIpLmxlbmd0aCA6IDMyO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGh5cGVyYm9saWMgY29zaW5lIG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvc2gobjogbnVtYmVyKTogbnVtYmVyIHtcblx0Y29uc3QgbSA9IE1hdGguZXhwKG4pO1xuXHRyZXR1cm4gKG0gKyAxIC8gbSkgLyAyO1xufVxuXG4vKipcbiAqIFJldHVybnMgZSByYWlzZWQgdG8gdGhlIHNwZWNpZmllZCBwb3dlciBtaW51cyBvbmUuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwbTEobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIE1hdGguZXhwKG4pIC0gMTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBuZWFyZXN0IHNpbmdsZS1wcmVjaXNpb24gZmxvYXQgcmVwcmVzZW50YXRpb24gb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgY29uc3QgZnJvdW5kOiAobjogbnVtYmVyKSA9PiBudW1iZXIgPSBoYXMoJ2Zsb2F0MzJhcnJheScpID8gZnVuY3Rpb24gKG46IG51bWJlcik6IG51bWJlciB7XG5cdHJldHVybiBuZXcgRmxvYXQzMkFycmF5KFtuXSlbMF07XG59IDpcbmZ1bmN0aW9uIChuOiBudW1iZXIpOiBudW1iZXIge1xuXHQvLyBGdXJ0aGVyIGZhbGxiYWNrIGZvciBJRTksIHdoaWNoIGRvZXNuJ3Qgc3VwcG9ydCBGbG9hdDMyQXJyYXkuXG5cdC8vIFRoaXMgZ2l2ZXMgYSBmYWlyIGFwcHJveGltYXRpb24gaW4gbW9zdCBjYXNlcy5cblxuXHRpZiAobiA9PT0gMCB8fCAhaXNGaW5pdGUobikpIHtcblx0XHRyZXR1cm4gbjtcblx0fVxuXHRpZiAoTWF0aC5hYnMobikgPiBNQVhfRkxPQVQzMikge1xuXHRcdHJldHVybiBuID4gMCA/IEluZmluaXR5IDogLUluZmluaXR5O1xuXHR9XG5cdGlmIChNYXRoLmFicyhuKSA8IE1JTl9GTE9BVDMyKSB7XG5cdFx0cmV0dXJuIDA7XG5cdH1cblx0Y29uc3QgZXhwb25lbnQgPSBNYXRoLmZsb29yKGxvZzIoTWF0aC5hYnMobikpKTtcblx0cmV0dXJuIChNYXRoLnJvdW5kKChuIC8gTWF0aC5wb3coMiwgZXhwb25lbnQpIC0gMSkgKiBGUkFDVElPTl9VTklUUykgLyBGUkFDVElPTl9VTklUUyArIDEpICogTWF0aC5wb3coMiwgZXhwb25lbnQpO1xufTtcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgc3VtIG9mIHNxdWFyZXMgb2YgaXRzIGFyZ3VtZW50cy5cbiAqXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGh5cG90KC4uLmFyZ3M6IG51bWJlcltdKTogbnVtYmVyIHtcblx0Ly8gU2VlOiBodHRwOi8vbXpsLmxhLzFIRGk2eFBcblx0bGV0IG4gPSAwO1xuXG5cdGZvciAobGV0IGFyZyBvZiBhcmdzKSB7XG5cdFx0aWYgKGFyZyA9PT0gSW5maW5pdHkgfHwgYXJnID09PSAtSW5maW5pdHkpIHtcblx0XHRcdHJldHVybiBJbmZpbml0eTtcblx0XHR9XG5cdFx0biArPSBhcmcgKiBhcmc7XG5cdH1cblx0cmV0dXJuIE1hdGguc3FydChuKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSByZXN1bHQgb2YgdGhlIDMyLWJpdCBtdWx0aXBsaWNhdGlvbiBvZiB0aGUgdHdvIHBhcmFtZXRlcnMuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEBwYXJhbSBtIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGltdWwobjogbnVtYmVyLCBtOiBudW1iZXIpOiBudW1iZXIge1xuXHQvLyBTZWU6IGh0dHA6Ly9temwubGEvMUsyNzlGS1xuXHRjb25zdCBhaCA9IChuID4+PiAxNikgJiAweGZmZmY7XG5cdGNvbnN0IGFsID0gbiAmIDB4ZmZmZjtcblx0Y29uc3QgYmggPSAobSA+Pj4gMTYpICYgMHhmZmZmO1xuXHRjb25zdCBibCA9IG0gJiAweGZmZmY7XG5cdHJldHVybiAoKGFsICogYmwpICsgKCgoYWggKiBibCArIGFsICogYmgpIDw8IDE2KSA+Pj4gMCkgfCAwKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBiYXNlIDIgbG9nYXJpdGhtIG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvZzIobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIE1hdGgubG9nKG4pIC8gTWF0aC5MTjI7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgYmFzZSAxMCBsb2dhcml0aG0gb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gbG9nMTAobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIE1hdGgubG9nKG4pIC8gTWF0aC5MTjEwO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIG5hdHVyYWwgbG9nYXJpdGhtIG9mIDEgKyBhIG51bWJlci5cbiAqXG4gKiBAcGFyYW0gbiBUaGUgbnVtYmVyIHRvIHVzZSBpbiBjYWxjdWxhdGlvblxuICogQHJldHVybiBUaGUgcmVzdWx0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsb2cxcChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRyZXR1cm4gTWF0aC5sb2coMSArIG4pO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIHNpZ24gb2YgYSBudW1iZXIsIGluZGljYXRpbmcgd2hldGhlciB0aGUgbnVtYmVyIGlzIHBvc2l0aXZlLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIDEgaWYgdGhlIG51bWJlciBpcyBwb3NpdGl2ZSwgLTEgaWYgdGhlIG51bWJlciBpcyBuZWdhdGl2ZSwgb3IgMCBpZiB0aGUgbnVtYmVyIGlzIDBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ24objogbnVtYmVyKTogbnVtYmVyIHtcblx0biA9IE51bWJlcihuKTtcblx0aWYgKG4gPT09IDAgfHwgbiAhPT0gbikge1xuXHRcdHJldHVybiBuO1xuXHR9XG5cdHJldHVybiBuID4gMCA/IDEgOiAtMTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBoeXBlcmJvbGljIHNpbmUgb2YgYSBudW1iZXIuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gc2luaChuOiBudW1iZXIpOiBudW1iZXIge1xuXHRjb25zdCBtID0gTWF0aC5leHAobik7XG5cdHJldHVybiAobSAtIDEgLyBtKSAvIDI7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgaHlwZXJib2xpYyB0YW5nZW50IG9mIGEgbnVtYmVyLlxuICpcbiAqIEBwYXJhbSBuIFRoZSBudW1iZXIgdG8gdXNlIGluIGNhbGN1bGF0aW9uXG4gKiBAcmV0dXJuIFRoZSByZXN1bHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhbmgobjogbnVtYmVyKTogbnVtYmVyIHtcblx0aWYgKG4gPT09IEluZmluaXR5KSB7XG5cdFx0cmV0dXJuIDE7XG5cdH1cblx0ZWxzZSBpZiAobiA9PT0gLUluZmluaXR5KSB7XG5cdFx0cmV0dXJuIC0xO1xuXHR9XG5cdGVsc2Uge1xuXHRcdGNvbnN0IHkgPSBNYXRoLmV4cCgyICogbik7XG5cdFx0cmV0dXJuICh5IC0gMSkgLyAoeSArIDEpO1xuXHR9XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgaW50ZWdyYWwgcGFydCBvZiBhIG51bWJlciBieSByZW1vdmluZyBhbnkgZnJhY3Rpb25hbCBkaWdpdHMuXG4gKlxuICogQHBhcmFtIG4gVGhlIG51bWJlciB0byB1c2UgaW4gY2FsY3VsYXRpb25cbiAqIEByZXR1cm4gVGhlIHJlc3VsdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJ1bmMobjogbnVtYmVyKTogbnVtYmVyIHtcblx0cmV0dXJuIG4gPCAwID8gTWF0aC5jZWlsKG4pIDogTWF0aC5mbG9vcihuKTtcbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var global_1 = require('./global'); | ||
@@ -58,2 +59,2 @@ exports.EPSILON = 1; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL251bWJlci50cyJdLCJuYW1lcyI6WyJpc05hTiIsImlzRmluaXRlIiwiaXNJbnRlZ2VyIiwiaXNTYWZlSW50ZWdlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFBQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFakIsZUFBTyxHQUFHLENBQUMsQ0FBQztJQUNaLHdCQUFnQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2Qyx3QkFBZ0IsR0FBRyxDQUFDLHdCQUFnQixDQUFDO0lBRWxEOzs7OztPQUtHO0lBQ0gsZUFBc0IsS0FBVTtRQUMvQkEsTUFBTUEsQ0FBQ0EsT0FBT0EsS0FBS0EsS0FBS0EsUUFBUUEsSUFBSUEsZ0JBQU1BLENBQUNBLEtBQUtBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO0lBQ3pEQSxDQUFDQTtJQUZlLGFBQUssUUFFcEIsQ0FBQTtJQUVEOzs7OztPQUtHO0lBQ0gsa0JBQXlCLEtBQVU7UUFDbENDLE1BQU1BLENBQUNBLE9BQU9BLEtBQUtBLEtBQUtBLFFBQVFBLElBQUlBLGdCQUFNQSxDQUFDQSxRQUFRQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtJQUM1REEsQ0FBQ0E7SUFGZSxnQkFBUSxXQUV2QixDQUFBO0lBRUQ7Ozs7O09BS0c7SUFDSCxtQkFBMEIsS0FBVTtRQUNuQ0MsTUFBTUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsSUFBSUEsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsS0FBS0EsS0FBS0EsQ0FBQ0E7SUFDdkRBLENBQUNBO0lBRmUsaUJBQVMsWUFFeEIsQ0FBQTtJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsdUJBQThCLEtBQVU7UUFDdkNDLE1BQU1BLENBQUNBLFNBQVNBLENBQUNBLEtBQUtBLENBQUNBLElBQUlBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLEtBQUtBLENBQUNBLElBQUlBLHdCQUFnQkEsQ0FBQ0E7SUFDaEVBLENBQUNBO0lBRmUscUJBQWEsZ0JBRTVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ2xvYmFsIGZyb20gJy4vZ2xvYmFsJztcblxuZXhwb3J0IGNvbnN0IEVQU0lMT04gPSAxO1xuZXhwb3J0IGNvbnN0IE1BWF9TQUZFX0lOVEVHRVIgPSBNYXRoLnBvdygyLCA1MykgLSAxO1xuZXhwb3J0IGNvbnN0IE1JTl9TQUZFX0lOVEVHRVIgPSAtTUFYX1NBRkVfSU5URUdFUjtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHBhc3NlZCB2YWx1ZSBpcyBOYU4gd2l0aG91dCBjb2Vyc2lvbi5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUgdmFsdWUgaXMgTmFOLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTmFOKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgZ2xvYmFsLmlzTmFOKHZhbHVlKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHBhc3NlZCB2YWx1ZSBpcyBhIGZpbml0ZSBudW1iZXIgd2l0aG91dCBjb2Vyc2lvbi5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUgdmFsdWUgaXMgZmluaXRlLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRmluaXRlKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgZ2xvYmFsLmlzRmluaXRlKHZhbHVlKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHBhc3NlZCB2YWx1ZSBpcyBhbiBpbnRlZ2VyLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybiB0cnVlIGlmIHRoZSB2YWx1ZSBpcyBhbiBpbnRlZ2VyLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzSW50ZWdlcih2YWx1ZTogYW55KTogYm9vbGVhbiB7XG5cdHJldHVybiBpc0Zpbml0ZSh2YWx1ZSkgJiYgTWF0aC5mbG9vcih2YWx1ZSkgPT09IHZhbHVlO1xufVxuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciB0aGUgcGFzc2VkIHZhbHVlIGlzIGFuIGludGVnZXIgdGhhdCBpcyAnc2FmZSwnIG1lYW5pbmc6XG4gKiAgIDEuIGl0IGNhbiBiZSBleHByZXNzZWQgYXMgYW4gSUVFRS03NTQgZG91YmxlIHByZWNpc2lvbiBudW1iZXJcbiAqICAgMi4gaXQgaGFzIGEgb25lLXRvLW9uZSBtYXBwaW5nIHRvIGEgbWF0aGVtYXRpY2FsIGludGVnZXIsIG1lYW5pbmcgaXRzXG4gKiAgICAgIElFRUUtNzU0IHJlcHJlc2VudGF0aW9uIGNhbm5vdCBiZSB0aGUgcmVzdWx0IG9mIHJvdW5kaW5nIGFueSBvdGhlclxuICogICAgICBpbnRlZ2VyIHRvIGZpdCB0aGUgSUVFRS03NTQgcmVwcmVzZW50YXRpb25cbiAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybiB0cnVlIGlmIHRoZSB2YWx1ZSBpcyBhbiBpbnRlZ2VyLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2FmZUludGVnZXIodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gaXNJbnRlZ2VyKHZhbHVlKSAmJiBNYXRoLmFicyh2YWx1ZSkgPD0gTUFYX1NBRkVfSU5URUdFUjtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL251bWJlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFakIsZUFBTyxHQUFHLENBQUMsQ0FBQztJQUNaLHdCQUFnQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2Qyx3QkFBZ0IsR0FBRyxDQUFDLHdCQUFnQixDQUFDO0lBRWxEOzs7OztPQUtHO0lBQ0gsZUFBc0IsS0FBVTtRQUMvQixNQUFNLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLGdCQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFGZSxhQUFLLFFBRXBCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILGtCQUF5QixLQUFVO1FBQ2xDLE1BQU0sQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksZ0JBQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUZlLGdCQUFRLFdBRXZCLENBQUE7SUFFRDs7Ozs7T0FLRztJQUNILG1CQUEwQixLQUFVO1FBQ25DLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLLENBQUM7SUFDdkQsQ0FBQztJQUZlLGlCQUFTLFlBRXhCLENBQUE7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILHVCQUE4QixLQUFVO1FBQ3ZDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQztJQUNoRSxDQUFDO0lBRmUscUJBQWEsZ0JBRTVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ2xvYmFsIGZyb20gJy4vZ2xvYmFsJztcblxuZXhwb3J0IGNvbnN0IEVQU0lMT04gPSAxO1xuZXhwb3J0IGNvbnN0IE1BWF9TQUZFX0lOVEVHRVIgPSBNYXRoLnBvdygyLCA1MykgLSAxO1xuZXhwb3J0IGNvbnN0IE1JTl9TQUZFX0lOVEVHRVIgPSAtTUFYX1NBRkVfSU5URUdFUjtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHBhc3NlZCB2YWx1ZSBpcyBOYU4gd2l0aG91dCBjb2Vyc2lvbi5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUgdmFsdWUgaXMgTmFOLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTmFOKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgZ2xvYmFsLmlzTmFOKHZhbHVlKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHBhc3NlZCB2YWx1ZSBpcyBhIGZpbml0ZSBudW1iZXIgd2l0aG91dCBjb2Vyc2lvbi5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIHRlc3RcbiAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUgdmFsdWUgaXMgZmluaXRlLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRmluaXRlKHZhbHVlOiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgZ2xvYmFsLmlzRmluaXRlKHZhbHVlKTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHBhc3NlZCB2YWx1ZSBpcyBhbiBpbnRlZ2VyLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybiB0cnVlIGlmIHRoZSB2YWx1ZSBpcyBhbiBpbnRlZ2VyLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzSW50ZWdlcih2YWx1ZTogYW55KTogYm9vbGVhbiB7XG5cdHJldHVybiBpc0Zpbml0ZSh2YWx1ZSkgJiYgTWF0aC5mbG9vcih2YWx1ZSkgPT09IHZhbHVlO1xufVxuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciB0aGUgcGFzc2VkIHZhbHVlIGlzIGFuIGludGVnZXIgdGhhdCBpcyAnc2FmZSwnIG1lYW5pbmc6XG4gKiAgIDEuIGl0IGNhbiBiZSBleHByZXNzZWQgYXMgYW4gSUVFRS03NTQgZG91YmxlIHByZWNpc2lvbiBudW1iZXJcbiAqICAgMi4gaXQgaGFzIGEgb25lLXRvLW9uZSBtYXBwaW5nIHRvIGEgbWF0aGVtYXRpY2FsIGludGVnZXIsIG1lYW5pbmcgaXRzXG4gKiAgICAgIElFRUUtNzU0IHJlcHJlc2VudGF0aW9uIGNhbm5vdCBiZSB0aGUgcmVzdWx0IG9mIHJvdW5kaW5nIGFueSBvdGhlclxuICogICAgICBpbnRlZ2VyIHRvIGZpdCB0aGUgSUVFRS03NTQgcmVwcmVzZW50YXRpb25cbiAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gdGVzdFxuICogQHJldHVybiB0cnVlIGlmIHRoZSB2YWx1ZSBpcyBhbiBpbnRlZ2VyLCBmYWxzZSBpZiBpdCBpcyBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2FmZUludGVnZXIodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gaXNJbnRlZ2VyKHZhbHVlKSAmJiBNYXRoLmFicyh2YWx1ZSkgPD0gTUFYX1NBRkVfSU5URUdFUjtcbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
/** | ||
@@ -22,2 +23,2 @@ * Determines whether two values are the same value. | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL29iamVjdC50cyJdLCJuYW1lcyI6WyJpcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFBQTs7O09BR0c7SUFDSCxZQUFtQixNQUFXLEVBQUUsTUFBVztRQUMxQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsTUFBTUEsS0FBS0EsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDdkJBLE1BQU1BLENBQUNBLE1BQU1BLEtBQUtBLENBQUNBLElBQUlBLENBQUNBLEdBQUdBLE1BQU1BLEtBQUtBLENBQUNBLEdBQUdBLE1BQU1BLENBQUNBLENBQUNBLEtBQUtBO1FBQ3hEQSxDQUFDQTtRQUNEQSxNQUFNQSxDQUFDQSxNQUFNQSxLQUFLQSxNQUFNQSxJQUFJQSxNQUFNQSxLQUFLQSxNQUFNQSxDQUFDQSxDQUFDQSxNQUFNQTtJQUN0REEsQ0FBQ0E7SUFMZSxVQUFFLEtBS2pCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERldGVybWluZXMgd2hldGhlciB0d28gdmFsdWVzIGFyZSB0aGUgc2FtZSB2YWx1ZS5cbiAqIEByZXR1cm4gdHJ1ZSBpZiB0aGUgdmFsdWVzIGFyZSB0aGUgc2FtZTsgZmFsc2Ugb3RoZXJ3aXNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpcyh2YWx1ZTE6IGFueSwgdmFsdWUyOiBhbnkpOiBib29sZWFuIHtcblx0aWYgKHZhbHVlMSA9PT0gdmFsdWUyKSB7XG5cdFx0cmV0dXJuIHZhbHVlMSAhPT0gMCB8fCAxIC8gdmFsdWUxID09PSAxIC8gdmFsdWUyOyAvLyAtMFxuXHR9XG5cdHJldHVybiB2YWx1ZTEgIT09IHZhbHVlMSAmJiB2YWx1ZTIgIT09IHZhbHVlMjsgLy8gTmFOXG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL29iamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQTs7O09BR0c7SUFDSCxZQUFtQixNQUFXLEVBQUUsTUFBVztRQUMxQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN2QixNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxLQUFLO1FBQ3hELENBQUM7UUFDRCxNQUFNLENBQUMsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLEtBQUssTUFBTSxDQUFDLENBQUMsTUFBTTtJQUN0RCxDQUFDO0lBTGUsVUFBRSxLQUtqQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdHdvIHZhbHVlcyBhcmUgdGhlIHNhbWUgdmFsdWUuXG4gKiBAcmV0dXJuIHRydWUgaWYgdGhlIHZhbHVlcyBhcmUgdGhlIHNhbWU7IGZhbHNlIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXModmFsdWUxOiBhbnksIHZhbHVlMjogYW55KTogYm9vbGVhbiB7XG5cdGlmICh2YWx1ZTEgPT09IHZhbHVlMikge1xuXHRcdHJldHVybiB2YWx1ZTEgIT09IDAgfHwgMSAvIHZhbHVlMSA9PT0gMSAvIHZhbHVlMjsgLy8gLTBcblx0fVxuXHRyZXR1cm4gdmFsdWUxICE9PSB2YWx1ZTEgJiYgdmFsdWUyICE9PSB2YWx1ZTI7IC8vIE5hTlxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var lang_1 = require('./lang'); | ||
@@ -27,2 +28,3 @@ function emit(target, event) { | ||
if (target.removeListener) { | ||
// Node.js EventEmitter | ||
target.emit(event.type, event); | ||
@@ -32,2 +34,3 @@ return false; | ||
else if (target.on) { | ||
// Dojo Evented or similar | ||
target.emit(event); | ||
@@ -98,2 +101,2 @@ return false; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvb24udHMiXSwibmFtZXMiOlsiZW1pdCIsIm9uIiwib25jZSIsInBhdXNhYmxlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUNBLHFCQUFvRCxRQUFRLENBQUMsQ0FBQTtJQXdCN0QsY0FBNEMsTUFBVyxFQUFFLEtBQXNCO1FBQzlFQSxFQUFFQSxDQUFDQSxDQUNGQSxNQUFNQSxDQUFDQSxhQUFhQTtZQUNuQkEsQ0FBQ0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsYUFBYUEsSUFBSUEsTUFBTUEsQ0FBQ0EsYUFBYUEsQ0FBQ0EsV0FBV0EsQ0FBQ0E7Z0JBQzNEQSxDQUFDQSxNQUFNQSxDQUFDQSxRQUFRQSxJQUFJQSxNQUFNQSxDQUFDQSxRQUFRQSxDQUFDQSxXQUFXQSxDQUFDQTtnQkFDaERBLE1BQU1BLENBQUNBLFdBQVdBLENBQUNBLENBQUNBLHNCQUN0QkEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDRkEsSUFBTUEsV0FBV0EsR0FBR0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsYUFBYUEsSUFBSUEsTUFBTUEsQ0FBQ0EsUUFBUUEsSUFBSUEsTUFBTUEsQ0FBQ0EsQ0FBQ0EsV0FBV0EsQ0FBQ0EsWUFBWUEsQ0FBQ0EsQ0FBQ0E7WUFDbEdBLFdBQVdBLENBQUNBLFNBQVNBLENBQ3BCQSxLQUFLQSxDQUFDQSxJQUFJQSxFQUNWQSxPQUFPQSxDQUFtQkEsS0FBTUEsQ0FBQ0EsT0FBT0EsQ0FBQ0EsRUFDekNBLE9BQU9BLENBQW1CQSxLQUFNQSxDQUFDQSxVQUFVQSxDQUFDQSxDQUM1Q0EsQ0FBQ0E7WUFFRkEsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsR0FBR0EsSUFBSUEsS0FBS0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ3ZCQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQSxHQUFHQSxJQUFJQSxXQUFXQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtvQkFDM0JBLFdBQVdBLENBQUNBLEdBQUdB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QUFDQSxNQUFNQSxDQUFDQTtJQUNmQSxDQUFDQTtJQWxCZSxnQkFBUSxXQWtCdkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhbmRsZSwgRXZlbnRPYmplY3QgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlSGFuZGxlLCBjcmVhdGVDb21wb3NpdGVIYW5kbGUgfSBmcm9tICcuL2xhbmcnO1xuaW1wb3J0IEV2ZW50ZWQgZnJvbSAnLi9FdmVudGVkJztcblxuZXhwb3J0IGludGVyZmFjZSBFdmVudENhbGxiYWNrIHtcblx0KGV2ZW50OiBFdmVudE9iamVjdCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRFbWl0dGVyIHtcblx0b24oZXZlbnQ6IHN0cmluZywgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2spOiBFdmVudEVtaXR0ZXI7XG5cdHJlbW92ZUxpc3RlbmVyKGV2ZW50OiBzdHJpbmcsIGxpc3RlbmVyOiBFdmVudENhbGxiYWNrKTogRXZlbnRFbWl0dGVyO1xufVxuXG5pbnRlcmZhY2UgRE9NRXZlbnRPYmplY3QgZXh0ZW5kcyBFdmVudE9iamVjdCB7XG5cdGJ1YmJsZXM6IGJvb2xlYW47XG5cdGNhbmNlbGFibGU6IGJvb2xlYW47XG59XG5cbi8qKlxuICogUHJvdmlkZXMgYSBub3JtYWxpemVkIG1lY2hhbmlzbSBmb3IgZGlzcGF0Y2hpbmcgZXZlbnRzIGZvciBldmVudCBlbWl0dGVycywgRXZlbnRlZCBvYmplY3RzLCBvciBET00gbm9kZXMuXG4gKiBAcGFyYW0gdGFyZ2V0IFRoZSB0YXJnZXQgdG8gZW1pdCB0aGUgZXZlbnQgZnJvbVxuICogQHBhcmFtIGV2ZW50IFRoZSBldmVudCBvYmplY3QgdG8gZW1pdFxuICogQHJldHVybiBCb29sZWFuIGluZGljYXRpbmcgV2hldGhlciB0aGUgZXZlbnQgd2FzIGNhbmNlbGVkICh0aGlzIHdpbGwgYWx3YXlzIGJlIGZhbHNlIGZvciBldmVudCBlbWl0dGVycylcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVtaXQ8VCBleHRlbmRzIEV2ZW50T2JqZWN0Pih0YXJnZXQ6IEV2ZW50ZWQgfCBFdmVudFRhcmdldCB8IEV2ZW50RW1pdHRlciwgZXZlbnQ6IFQgfCBFdmVudE9iamVjdCk6IGJvb2xlYW47XG5leHBvcnQgZnVuY3Rpb24gZW1pdDxUIGV4dGVuZHMgRXZlbnRPYmplY3Q+KHRhcmdldDogYW55LCBldmVudDogVCB8IEV2ZW50T2JqZWN0KTogYm9vbGVhbiB7XG5cdGlmIChcblx0XHR0YXJnZXQuZGlzcGF0Y2hFdmVudCAmJiAvKiBpbmNsdWRlcyB3aW5kb3cgYW5kIGRvY3VtZW50ICovXG5cdFx0XHQoKHRhcmdldC5vd25lckRvY3VtZW50ICYmIHRhcmdldC5vd25lckRvY3VtZW50LmNyZWF0ZUV2ZW50KSB8fCAvKiBtYXRjaGVzIG5vZGVzICovXG5cdFx0XHQodGFyZ2V0LmRvY3VtZW50ICYmIHRhcmdldC5kb2N1bWVudC5jcmVhdGVFdmVudCkgfHwgLyogbWF0Y2hlcyB3aW5kb3cgKi9cblx0XHRcdHRhcmdldC5jcmVhdGVFdmVudCkgLyogbWF0Y2hlcyBkb2N1bWVudCAqL1xuXHQpIHtcblx0XHRjb25zdCBuYXRpdmVFdmVudCA9ICh0YXJnZXQub3duZXJEb2N1bWVudCB8fCB0YXJnZXQuZG9jdW1lbnQgfHwgdGFyZ2V0KS5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpO1xuXHRcdG5hdGl2ZUV2ZW50LmluaXRFdmVudChcblx0XHRcdGV2ZW50LnR5cGUsXG5cdFx0XHRCb29sZWFuKCg8RE9NRXZlbnRPYmplY3Q+IGV2ZW50KS5idWJibGVzKSxcblx0XHRcdEJvb2xlYW4oKDxET01FdmVudE9iamVjdD4gZXZlbnQpLmNhbmNlbGFibGUpXG5cdFx0KTtcblxuXHRcdGZvciAobGV0IGtleSBpbiBldmVudCkge1xuXHRcdFx0aWYgKCEoa2V5IGluIG5hdGl2ZUV2ZW50KSkge1xuXHRcdFx0XHRuYXRpdmVFdmVudFtrZXldID0gKDxhbnk+IGV2ZW50KVtrZXldO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiB0YXJnZXQuZGlzcGF0Y2hFdmVudChuYXRpdmVFdmVudCk7XG5cdH1cblxuXHRpZiAodGFyZ2V0LmVtaXQpIHtcblx0XHRpZiAodGFyZ2V0LnJlbW92ZUxpc3RlbmVyKSB7XG5cdFx0XHR0YXJnZXQuZW1pdChldmVudC50eXBlLCBldmVudCk7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHRhcmdldC5vbikge1xuXHRcdFx0dGFyZ2V0LmVtaXQoZXZlbnQpO1xuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblx0fVxuXG5cdHRocm93IG5ldyBFcnJvcignVGFyZ2V0IG11c3QgYmUgYW4gZXZlbnQgZW1pdHRlcicpO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGEgbm9ybWFsaXplZCBtZWNoYW5pc20gZm9yIGxpc3RlbmluZyB0byBldmVudHMgZnJvbSBldmVudCBlbWl0dGVycywgRXZlbnRlZCBvYmplY3RzLCBvciBET00gbm9kZXMuXG4gKiBAcGFyYW0gdGFyZ2V0IFRhcmdldCB0byBsaXN0ZW4gZm9yIGV2ZW50IG9uXG4gKiBAcGFyYW0gdHlwZSBFdmVudCBldmVudCB0eXBlKHMpIHRvIGxpc3RlbiBmb3I7IG1heSBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzXG4gKiBAcGFyYW0gbGlzdGVuZXIgQ2FsbGJhY2sgdG8gaGFuZGxlIHRoZSBldmVudCB3aGVuIGl0IGZpcmVzXG4gKiBAcGFyYW0gY2FwdHVyZSBXaGV0aGVyIHRoZSBsaXN0ZW5lciBzaG91bGQgYmUgcmVnaXN0ZXJlZCBpbiB0aGUgY2FwdHVyZSBwaGFzZSAoRE9NIGV2ZW50cyBvbmx5KVxuICogQHJldHVybiBBIGhhbmRsZSB3aGljaCB3aWxsIHJlbW92ZSB0aGUgbGlzdGVuZXIgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvbih0YXJnZXQ6IEV2ZW50VGFyZ2V0LCB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSwgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2ssIGNhcHR1cmU/OiBib29sZWFuKTogSGFuZGxlO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gb24odGFyZ2V0OiBFdmVudEVtaXR0ZXIgfCBFdmVudGVkLCB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSwgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2spOiBIYW5kbGU7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvbih0YXJnZXQ6IGFueSwgdHlwZTogYW55LCBsaXN0ZW5lcjogYW55LCBjYXB0dXJlPzogYm9vbGVhbik6IEhhbmRsZSB7XG5cdGlmIChBcnJheS5pc0FycmF5KHR5cGUpKSB7XG5cdFx0bGV0IGhhbmRsZXM6IEhhbmRsZVtdID0gdHlwZS5tYXAoZnVuY3Rpb24gKHR5cGU6IHN0cmluZyk6IEhhbmRsZSB7XG5cdFx0XHRyZXR1cm4gb24odGFyZ2V0LCB0eXBlLCBsaXN0ZW5lciwgY2FwdHVyZSk7XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gY3JlYXRlQ29tcG9zaXRlSGFuZGxlKC4uLmhhbmRsZXMpO1xuXHR9XG5cblx0Y29uc3QgY2FsbGJhY2sgPSBmdW5jdGlvbiAoKSB7XG5cdFx0bGlzdGVuZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcblx0fTtcblxuXHQvLyBET00gRXZlbnRUYXJnZXRcblx0aWYgKHRhcmdldC5hZGRFdmVudExpc3RlbmVyICYmIHRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKSB7XG5cdFx0dGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIodHlwZSwgY2FsbGJhY2ssIGNhcHR1cmUpO1xuXHRcdHJldHVybiBjcmVhdGVIYW5kbGUoZnVuY3Rpb24gKCkge1xuXHRcdFx0dGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIodHlwZSwgY2FsbGJhY2ssIGNhcHR1cmUpO1xuXHRcdH0pO1xuXHR9XG5cblx0aWYgKHRhcmdldC5vbikge1xuXHRcdC8vIEV2ZW50RW1pdHRlclxuXHRcdGlmICh0YXJnZXQucmVtb3ZlTGlzdGVuZXIpIHtcblx0XHRcdHRhcmdldC5vbih0eXBlLCBjYWxsYmFjayk7XG5cdFx0XHRyZXR1cm4gY3JlYXRlSGFuZGxlKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0dGFyZ2V0LnJlbW92ZUxpc3RlbmVyKHR5cGUsIGNhbGxiYWNrKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0XHQvLyBFdmVudGVkXG5cdFx0ZWxzZSBpZiAodGFyZ2V0LmVtaXQpIHtcblx0XHRcdHJldHVybiB0YXJnZXQub24odHlwZSwgbGlzdGVuZXIpO1xuXHRcdH1cblx0fVxuXG5cdHRocm93IG5ldyBUeXBlRXJyb3IoJ1Vua25vd24gZXZlbnQgZW1pdHRlciBvYmplY3QnKTtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBhIG1lY2hhbmlzbSBmb3IgbGlzdGVuaW5nIHRvIHRoZSBuZXh0IG9jY3VycmVuY2Ugb2YgYW4gZXZlbnQgZnJvbSBldmVudFxuICogZW1pdHRlcnMsIEV2ZW50ZWQgb2JqZWN0cywgb3IgRE9NIG5vZGVzLlxuICogQHBhcmFtIHRhcmdldCBUYXJnZXQgdG8gbGlzdGVuIGZvciBldmVudCBvblxuICogQHBhcmFtIHR5cGUgRXZlbnQgZXZlbnQgdHlwZShzKSB0byBsaXN0ZW4gZm9yOyBtYXkgYmUgYSBzdHJpbmcgb3IgYW4gYXJyYXkgb2Ygc3RyaW5nc1xuICogQHBhcmFtIGxpc3RlbmVyIENhbGxiYWNrIHRvIGhhbmRsZSB0aGUgZXZlbnQgd2hlbiBpdCBmaXJlc1xuICogQHBhcmFtIGNhcHR1cmUgV2hldGhlciB0aGUgbGlzdGVuZXIgc2hvdWxkIGJlIHJlZ2lzdGVyZWQgaW4gdGhlIGNhcHR1cmUgcGhhc2UgKERPTSBldmVudHMgb25seSlcbiAqIEByZXR1cm4gQSBoYW5kbGUgd2hpY2ggd2lsbCByZW1vdmUgdGhlIGxpc3RlbmVyIHdoZW4gZGVzdHJveSBpcyBjYWxsZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9uY2UodGFyZ2V0OiBFdmVudFRhcmdldCwgdHlwZTogc3RyaW5nIHwgc3RyaW5nW10sIGxpc3RlbmVyOiBFdmVudENhbGxiYWNrLCBjYXB0dXJlPzogYm9vbGVhbik6IEhhbmRsZTtcbmV4cG9ydCBmdW5jdGlvbiBvbmNlKHRhcmdldDogRXZlbnRFbWl0dGVyIHwgRXZlbnRlZCwgdHlwZTogc3RyaW5nIHwgc3RyaW5nW10sIGxpc3RlbmVyOiBFdmVudENhbGxiYWNrKTogSGFuZGxlO1xuZXhwb3J0IGZ1bmN0aW9uIG9uY2UodGFyZ2V0OiBhbnksIHR5cGU6IGFueSwgbGlzdGVuZXI6IGFueSwgY2FwdHVyZT86IGJvb2xlYW4pOiBIYW5kbGUge1xuXHRjb25zdCBoYW5kbGUgPSBvbih0YXJnZXQsIHR5cGUsIGZ1bmN0aW9uICgpIHtcblx0XHRoYW5kbGUuZGVzdHJveSgpO1xuXHRcdHJldHVybiBsaXN0ZW5lci5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuXHR9LCBjYXB0dXJlKTtcblxuXHRyZXR1cm4gaGFuZGxlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhdXNhYmxlSGFuZGxlIGV4dGVuZHMgSGFuZGxlIHtcblx0cGF1c2UoKTogdm9pZDtcblx0cmVzdW1lKCk6IHZvaWQ7XG59XG5cbi8qKlxuICogUHJvdmlkZXMgYSBtZWNoYW5pc20gZm9yIGNyZWF0aW5nIHBhdXNhYmxlIGxpc3RlbmVycyBmb3IgZXZlbnRzIGZyb20gZXZlbnQgZW1pdHRlcnMsIEV2ZW50ZWQgb2JqZWN0cywgb3IgRE9NIG5vZGVzLlxuICogQHBhcmFtIHRhcmdldCBUYXJnZXQgdG8gbGlzdGVuIGZvciBldmVudCBvblxuICogQHBhcmFtIHR5cGUgRXZlbnQgZXZlbnQgdHlwZShzKSB0byBsaXN0ZW4gZm9yOyBtYXkgYSBzdHJpbmcgb3IgYW4gYXJyYXkgb2Ygc3RyaW5nc1xuICogQHBhcmFtIGxpc3RlbmVyIENhbGxiYWNrIHRvIGhhbmRsZSB0aGUgZXZlbnQgd2hlbiBpdCBmaXJlc1xuICogQHBhcmFtIGNhcHR1cmUgV2hldGhlciB0aGUgbGlzdGVuZXIgc2hvdWxkIGJlIHJlZ2lzdGVyZWQgaW4gdGhlIGNhcHR1cmUgcGhhc2UgKERPTSBldmVudHMgb25seSlcbiAqIEByZXR1cm4gQSBoYW5kbGUgd2l0aCBhZGRpdGlvbmFsIHBhdXNlIGFuZCByZXN1bWUgbWV0aG9kczsgdGhlIGxpc3RlbmVyIHdpbGwgbmV2ZXIgZmlyZSB3aGVuIHBhdXNlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGF1c2FibGUodGFyZ2V0OiBFdmVudFRhcmdldCwgdHlwZTogc3RyaW5nIHwgc3RyaW5nW10sIGxpc3RlbmVyOiBFdmVudENhbGxiYWNrLCBjYXB0dXJlPzogYm9vbGVhbik6IFBhdXNhYmxlSGFuZGxlO1xuZXhwb3J0IGZ1bmN0aW9uIHBhdXNhYmxlKHRhcmdldDogRXZlbnRFbWl0dGVyIHwgRXZlbnRlZCwgdHlwZTogc3RyaW5nIHwgc3RyaW5nW10sIGxpc3RlbmVyOiBFdmVudENhbGxiYWNrKTogUGF1c2FibGVIYW5kbGU7XG5leHBvcnQgZnVuY3Rpb24gcGF1c2FibGUodGFyZ2V0OiBhbnksIHR5cGU6IGFueSwgbGlzdGVuZXI6IGFueSwgY2FwdHVyZT86IGJvb2xlYW4pOiBQYXVzYWJsZUhhbmRsZSB7XG5cdGxldCBwYXVzZWQ6IGJvb2xlYW47XG5cblx0Y29uc3QgaGFuZGxlID0gPFBhdXNhYmxlSGFuZGxlPiBvbih0YXJnZXQsIHR5cGUsIGZ1bmN0aW9uICgpIHtcblx0XHRpZiAoIXBhdXNlZCkge1xuXHRcdFx0cmV0dXJuIGxpc3RlbmVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG5cdFx0fVxuXHR9LCBjYXB0dXJlKTtcblxuXHRoYW5kbGUucGF1c2UgPSBmdW5jdGlvbiAoKSB7XG5cdFx0cGF1c2VkID0gdHJ1ZTtcblx0fTtcblxuXHRoYW5kbGUucmVzdW1lID0gZnVuY3Rpb24gKCkge1xuXHRcdHBhdXNlZCA9IGZhbHNlO1xuXHR9O1xuXG5cdHJldHVybiBoYW5kbGU7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQ0EscUJBQW9ELFFBQVEsQ0FBQyxDQUFBO0lBeUI3RCxjQUE0QyxNQUFXLEVBQUUsS0FBc0I7UUFDOUUsRUFBRSxDQUFDLENBQ0YsTUFBTSxDQUFDLGFBQWE7WUFDbkIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7Z0JBQzNELENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztnQkFDaEQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLHNCQUN0QixDQUFDLENBQUMsQ0FBQztZQUNGLElBQU0sV0FBVyxHQUFHLENBQUMsTUFBTSxDQUFDLGFBQWEsSUFBSSxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNsRyxXQUFXLENBQUMsU0FBUyxDQUNwQixLQUFLLENBQUMsSUFBSSxFQUNWLE9BQU8sQ0FBbUIsS0FBTSxDQUFDLE9BQU8sQ0FBQyxFQUN6QyxPQUFPLENBQW1CLEtBQU0sQ0FBQyxVQUFVLENBQUMsQ0FDNUMsQ0FBQztZQUVGLEdBQUcsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUMzQixXQUFXLENBQUMsR0FBRyxDQUFDLEdBQVUsS0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QyxDQUFDO1lBQ0YsQ0FBQztZQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMs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O1FBRVosTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUNmLENBQUM7SUFQZSxZQUFJLE9BT25CLENBQUE7SUFpQkQsa0JBQXlCLE1BQVcsRUFBRSxJQUFTLEVBQUUsUUFBYSxFQUFFLE9BQWlCO1FBQ2hGLElBQUksTUFBZSxDQUFDO1FBRXBCLElBQU0sTUFBTSxHQUFvQixFQUFFLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRTtZQUNoRCxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ2IsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLENBQUM7UUFDRixDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFWixNQUFNLENBQUMsS0FBSyxHQUFHO1lBQ2QsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNmLENBQUMsQ0FBQztRQUVGLE1BQU0sQ0FBQyxNQUFNLEdBQUc7WUFDZixNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLENBQUMsQ0FBQztRQUVGLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDZixDQUFDO0lBbEJlLGdCQUFRLFdBa0J2QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFuZGxlLCBFdmVudE9iamVjdCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBjcmVhdGVIYW5kbGUsIGNyZWF0ZUNvbXBvc2l0ZUhhbmRsZSB9IGZyb20gJy4vbGFuZyc7XG5pbXBvcnQgRXZlbnRlZCBmcm9tICcuL0V2ZW50ZWQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50Q2FsbGJhY2sge1xuXHQoZXZlbnQ6IEV2ZW50T2JqZWN0KTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdmVudEVtaXR0ZXIge1xuXHRvbihldmVudDogc3RyaW5nLCBsaXN0ZW5lcjogRXZlbnRDYWxsYmFjayk6IEV2ZW50RW1pdHRlcjtcblx0cmVtb3ZlTGlzdGVuZXIoZXZlbnQ6IHN0cmluZywgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2spOiBFdmVudEVtaXR0ZXI7XG59XG5cbmludGVyZmFjZSBET01FdmVudE9iamVjdCBleHRlbmRzIEV2ZW50T2JqZWN0IHtcblx0YnViYmxlczogYm9vbGVhbjtcblx0Y2FuY2VsYWJsZTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBhIG5vcm1hbGl6ZWQgbWVjaGFuaXNtIGZvciBkaXNwYXRjaGluZyBldmVudHMgZm9yIGV2ZW50IGVtaXR0ZXJzLCBFdmVudGVkIG9iamVjdHMsIG9yIERPTSBub2Rlcy5cbiAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCB0byBlbWl0IHRoZSBldmVudCBmcm9tXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGV2ZW50IG9iamVjdCB0byBlbWl0XG4gKiBAcmV0dXJuIEJvb2xlYW4gaW5kaWNhdGluZyBpZiBwcmV2ZW50RGVmYXVsdCB3YXMgY2FsbGVkIG9uIHRoZSBldmVudCBvYmplY3QgKG9ubHkgcmVsZXZhbnQgZm9yIERPTSBldmVudHM7XG4gKiAgICAgYWx3YXlzIGZhbHNlIGZvciBvdGhlciBldmVudCBlbWl0dGVycylcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVtaXQ8VCBleHRlbmRzIEV2ZW50T2JqZWN0Pih0YXJnZXQ6IEV2ZW50ZWQgfCBFdmVudFRhcmdldCB8IEV2ZW50RW1pdHRlciwgZXZlbnQ6IFQgfCBFdmVudE9iamVjdCk6IGJvb2xlYW47XG5leHBvcnQgZnVuY3Rpb24gZW1pdDxUIGV4dGVuZHMgRXZlbnRPYmplY3Q+KHRhcmdldDogYW55LCBldmVudDogVCB8IEV2ZW50T2JqZWN0KTogYm9vbGVhbiB7XG5cdGlmIChcblx0XHR0YXJnZXQuZGlzcGF0Y2hFdmVudCAmJiAvKiBpbmNsdWRlcyB3aW5kb3cgYW5kIGRvY3VtZW50ICovXG5cdFx0XHQoKHRhcmdldC5vd25lckRvY3VtZW50ICYmIHRhcmdldC5vd25lckRvY3VtZW50LmNyZWF0ZUV2ZW50KSB8fCAvKiBtYXRjaGVzIG5vZGVzICovXG5cdFx0XHQodGFyZ2V0LmRvY3VtZW50ICYmIHRhcmdldC5kb2N1bWVudC5jcmVhdGVFdmVudCkgfHwgLyogbWF0Y2hlcyB3aW5kb3cgKi9cblx0XHRcdHRhcmdldC5jcmVhdGVFdmVudCkgLyogbWF0Y2hlcyBkb2N1bWVudCAqL1xuXHQpIHtcblx0XHRjb25zdCBuYXRpdmVFdmVudCA9ICh0YXJnZXQub3duZXJEb2N1bWVudCB8fCB0YXJnZXQuZG9jdW1lbnQgfHwgdGFyZ2V0KS5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpO1xuXHRcdG5hdGl2ZUV2ZW50LmluaXRFdmVudChcblx0XHRcdGV2ZW50LnR5cGUsXG5cdFx0XHRCb29sZWFuKCg8RE9NRXZlbnRPYmplY3Q+IGV2ZW50KS5idWJibGVzKSxcblx0XHRcdEJvb2xlYW4oKDxET01FdmVudE9iamVjdD4gZXZlbnQpLmNhbmNlbGFibGUpXG5cdFx0KTtcblxuXHRcdGZvciAobGV0IGtleSBpbiBldmVudCkge1xuXHRcdFx0aWYgKCEoa2V5IGluIG5hdGl2ZUV2ZW50KSkge1xuXHRcdFx0XHRuYXRpdmVFdmVudFtrZXldID0gKDxhbnk+IGV2ZW50KVtrZXldO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiB0YXJnZXQuZGlzcGF0Y2hFdmVudChuYXRpdmVFdmVudCk7XG5cdH1cblxuXHRpZiAodGFyZ2V0LmVtaXQpIHtcblx0XHRpZiAodGFyZ2V0LnJlbW92ZUxpc3RlbmVyKSB7XG5cdFx0XHQvLyBOb2RlLmpzIEV2ZW50RW1pdHRlclxuXHRcdFx0dGFyZ2V0LmVtaXQoZXZlbnQudHlwZSwgZXZlbnQpO1xuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblx0XHRlbHNlIGlmICh0YXJnZXQub24pIHtcblx0XHRcdC8vIERvam8gRXZlbnRlZCBvciBzaW1pbGFyXG5cdFx0XHR0YXJnZXQuZW1pdChldmVudCk7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXHR9XG5cblx0dGhyb3cgbmV3IEVycm9yKCdUYXJnZXQgbXVzdCBiZSBhbiBldmVudCBlbWl0dGVyJyk7XG59XG5cbi8qKlxuICogUHJvdmlkZXMgYSBub3JtYWxpemVkIG1lY2hhbmlzbSBmb3IgbGlzdGVuaW5nIHRvIGV2ZW50cyBmcm9tIGV2ZW50IGVtaXR0ZXJzLCBFdmVudGVkIG9iamVjdHMsIG9yIERPTSBub2Rlcy5cbiAqIEBwYXJhbSB0YXJnZXQgVGFyZ2V0IHRvIGxpc3RlbiBmb3IgZXZlbnQgb25cbiAqIEBwYXJhbSB0eXBlIEV2ZW50IGV2ZW50IHR5cGUocykgdG8gbGlzdGVuIGZvcjsgbWF5IGEgc3RyaW5nIG9yIGFuIGFycmF5IG9mIHN0cmluZ3NcbiAqIEBwYXJhbSBsaXN0ZW5lciBDYWxsYmFjayB0byBoYW5kbGUgdGhlIGV2ZW50IHdoZW4gaXQgZmlyZXNcbiAqIEBwYXJhbSBjYXB0dXJlIFdoZXRoZXIgdGhlIGxpc3RlbmVyIHNob3VsZCBiZSByZWdpc3RlcmVkIGluIHRoZSBjYXB0dXJlIHBoYXNlIChET00gZXZlbnRzIG9ubHkpXG4gKiBAcmV0dXJuIEEgaGFuZGxlIHdoaWNoIHdpbGwgcmVtb3ZlIHRoZSBsaXN0ZW5lciB3aGVuIGRlc3Ryb3kgaXMgY2FsbGVkXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG9uKHRhcmdldDogRXZlbnRUYXJnZXQsIHR5cGU6IHN0cmluZyB8IHN0cmluZ1tdLCBsaXN0ZW5lcjogRXZlbnRDYWxsYmFjaywgY2FwdHVyZT86IGJvb2xlYW4pOiBIYW5kbGU7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvbih0YXJnZXQ6IEV2ZW50RW1pdHRlciB8IEV2ZW50ZWQsIHR5cGU6IHN0cmluZyB8IHN0cmluZ1tdLCBsaXN0ZW5lcjogRXZlbnRDYWxsYmFjayk6IEhhbmRsZTtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG9uKHRhcmdldDogYW55LCB0eXBlOiBhbnksIGxpc3RlbmVyOiBhbnksIGNhcHR1cmU/OiBib29sZWFuKTogSGFuZGxlIHtcblx0aWYgKEFycmF5LmlzQXJyYXkodHlwZSkpIHtcblx0XHRsZXQgaGFuZGxlczogSGFuZGxlW10gPSB0eXBlLm1hcChmdW5jdGlvbiAodHlwZTogc3RyaW5nKTogSGFuZGxlIHtcblx0XHRcdHJldHVybiBvbih0YXJnZXQsIHR5cGUsIGxpc3RlbmVyLCBjYXB0dXJlKTtcblx0XHR9KTtcblxuXHRcdHJldHVybiBjcmVhdGVDb21wb3NpdGVIYW5kbGUoLi4uaGFuZGxlcyk7XG5cdH1cblxuXHRjb25zdCBjYWxsYmFjayA9IGZ1bmN0aW9uICgpIHtcblx0XHRsaXN0ZW5lci5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuXHR9O1xuXG5cdC8vIERPTSBFdmVudFRhcmdldFxuXHRpZiAodGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIgJiYgdGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIpIHtcblx0XHR0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcih0eXBlLCBjYWxsYmFjaywgY2FwdHVyZSk7XG5cdFx0cmV0dXJuIGNyZWF0ZUhhbmRsZShmdW5jdGlvbiAoKSB7XG5cdFx0XHR0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBlLCBjYWxsYmFjaywgY2FwdHVyZSk7XG5cdFx0fSk7XG5cdH1cblxuXHRpZiAodGFyZ2V0Lm9uKSB7XG5cdFx0Ly8gRXZlbnRFbWl0dGVyXG5cdFx0aWYgKHRhcmdldC5yZW1vdmVMaXN0ZW5lcikge1xuXHRcdFx0dGFyZ2V0Lm9uKHR5cGUsIGNhbGxiYWNrKTtcblx0XHRcdHJldHVybiBjcmVhdGVIYW5kbGUoZnVuY3Rpb24gKCkge1xuXHRcdFx0XHR0YXJnZXQucmVtb3ZlTGlzdGVuZXIodHlwZSwgY2FsbGJhY2spO1xuXHRcdFx0fSk7XG5cdFx0fVxuXHRcdC8vIEV2ZW50ZWRcblx0XHRlbHNlIGlmICh0YXJnZXQuZW1pdCkge1xuXHRcdFx0cmV0dXJuIHRhcmdldC5vbih0eXBlLCBsaXN0ZW5lcik7XG5cdFx0fVxuXHR9XG5cblx0dGhyb3cgbmV3IFR5cGVFcnJvcignVW5rbm93biBldmVudCBlbWl0dGVyIG9iamVjdCcpO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGEgbWVjaGFuaXNtIGZvciBsaXN0ZW5pbmcgdG8gdGhlIG5leHQgb2NjdXJyZW5jZSBvZiBhbiBldmVudCBmcm9tIGV2ZW50XG4gKiBlbWl0dGVycywgRXZlbnRlZCBvYmplY3RzLCBvciBET00gbm9kZXMuXG4gKiBAcGFyYW0gdGFyZ2V0IFRhcmdldCB0byBsaXN0ZW4gZm9yIGV2ZW50IG9uXG4gKiBAcGFyYW0gdHlwZSBFdmVudCBldmVudCB0eXBlKHMpIHRvIGxpc3RlbiBmb3I7IG1heSBiZSBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzXG4gKiBAcGFyYW0gbGlzdGVuZXIgQ2FsbGJhY2sgdG8gaGFuZGxlIHRoZSBldmVudCB3aGVuIGl0IGZpcmVzXG4gKiBAcGFyYW0gY2FwdHVyZSBXaGV0aGVyIHRoZSBsaXN0ZW5lciBzaG91bGQgYmUgcmVnaXN0ZXJlZCBpbiB0aGUgY2FwdHVyZSBwaGFzZSAoRE9NIGV2ZW50cyBvbmx5KVxuICogQHJldHVybiBBIGhhbmRsZSB3aGljaCB3aWxsIHJlbW92ZSB0aGUgbGlzdGVuZXIgd2hlbiBkZXN0cm95IGlzIGNhbGxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gb25jZSh0YXJnZXQ6IEV2ZW50VGFyZ2V0LCB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSwgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2ssIGNhcHR1cmU/OiBib29sZWFuKTogSGFuZGxlO1xuZXhwb3J0IGZ1bmN0aW9uIG9uY2UodGFyZ2V0OiBFdmVudEVtaXR0ZXIgfCBFdmVudGVkLCB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSwgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2spOiBIYW5kbGU7XG5leHBvcnQgZnVuY3Rpb24gb25jZSh0YXJnZXQ6IGFueSwgdHlwZTogYW55LCBsaXN0ZW5lcjogYW55LCBjYXB0dXJlPzogYm9vbGVhbik6IEhhbmRsZSB7XG5cdGNvbnN0IGhhbmRsZSA9IG9uKHRhcmdldCwgdHlwZSwgZnVuY3Rpb24gKCkge1xuXHRcdGhhbmRsZS5kZXN0cm95KCk7XG5cdFx0cmV0dXJuIGxpc3RlbmVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG5cdH0sIGNhcHR1cmUpO1xuXG5cdHJldHVybiBoYW5kbGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF1c2FibGVIYW5kbGUgZXh0ZW5kcyBIYW5kbGUge1xuXHRwYXVzZSgpOiB2b2lkO1xuXHRyZXN1bWUoKTogdm9pZDtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBhIG1lY2hhbmlzbSBmb3IgY3JlYXRpbmcgcGF1c2FibGUgbGlzdGVuZXJzIGZvciBldmVudHMgZnJvbSBldmVudCBlbWl0dGVycywgRXZlbnRlZCBvYmplY3RzLCBvciBET00gbm9kZXMuXG4gKiBAcGFyYW0gdGFyZ2V0IFRhcmdldCB0byBsaXN0ZW4gZm9yIGV2ZW50IG9uXG4gKiBAcGFyYW0gdHlwZSBFdmVudCBldmVudCB0eXBlKHMpIHRvIGxpc3RlbiBmb3I7IG1heSBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzXG4gKiBAcGFyYW0gbGlzdGVuZXIgQ2FsbGJhY2sgdG8gaGFuZGxlIHRoZSBldmVudCB3aGVuIGl0IGZpcmVzXG4gKiBAcGFyYW0gY2FwdHVyZSBXaGV0aGVyIHRoZSBsaXN0ZW5lciBzaG91bGQgYmUgcmVnaXN0ZXJlZCBpbiB0aGUgY2FwdHVyZSBwaGFzZSAoRE9NIGV2ZW50cyBvbmx5KVxuICogQHJldHVybiBBIGhhbmRsZSB3aXRoIGFkZGl0aW9uYWwgcGF1c2UgYW5kIHJlc3VtZSBtZXRob2RzOyB0aGUgbGlzdGVuZXIgd2lsbCBuZXZlciBmaXJlIHdoZW4gcGF1c2VkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXVzYWJsZSh0YXJnZXQ6IEV2ZW50VGFyZ2V0LCB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSwgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2ssIGNhcHR1cmU/OiBib29sZWFuKTogUGF1c2FibGVIYW5kbGU7XG5leHBvcnQgZnVuY3Rpb24gcGF1c2FibGUodGFyZ2V0OiBFdmVudEVtaXR0ZXIgfCBFdmVudGVkLCB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSwgbGlzdGVuZXI6IEV2ZW50Q2FsbGJhY2spOiBQYXVzYWJsZUhhbmRsZTtcbmV4cG9ydCBmdW5jdGlvbiBwYXVzYWJsZSh0YXJnZXQ6IGFueSwgdHlwZTogYW55LCBsaXN0ZW5lcjogYW55LCBjYXB0dXJlPzogYm9vbGVhbik6IFBhdXNhYmxlSGFuZGxlIHtcblx0bGV0IHBhdXNlZDogYm9vbGVhbjtcblxuXHRjb25zdCBoYW5kbGUgPSA8UGF1c2FibGVIYW5kbGU+IG9uKHRhcmdldCwgdHlwZSwgZnVuY3Rpb24gKCkge1xuXHRcdGlmICghcGF1c2VkKSB7XG5cdFx0XHRyZXR1cm4gbGlzdGVuZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcblx0XHR9XG5cdH0sIGNhcHR1cmUpO1xuXG5cdGhhbmRsZS5wYXVzZSA9IGZ1bmN0aW9uICgpIHtcblx0XHRwYXVzZWQgPSB0cnVlO1xuXHR9O1xuXG5cdGhhbmRsZS5yZXN1bWUgPSBmdW5jdGlvbiAoKSB7XG5cdFx0cGF1c2VkID0gZmFsc2U7XG5cdH07XG5cblx0cmV0dXJuIGhhbmRsZTtcbn1cbiJdfQ== |
{ | ||
"name": "dojo-core", | ||
"version": "2.0.0-alpha.2", | ||
"version": "2.0.0-alpha.3", | ||
"description": "Basic utilites for common TypeScript development", | ||
@@ -17,22 +17,23 @@ "homepage": "http://dojotoolkit.org", | ||
"codecov.io": "0.1.6", | ||
"dojo-loader": "2.0.0-alpha.4", | ||
"dts-generator": "1.6.3", | ||
"dojo-loader": "2.0.0-beta.2", | ||
"dts-generator": "1.7.0", | ||
"formidable": "1.0.14", | ||
"glob": "3.2.7", | ||
"glob": "7.0.3", | ||
"grunt": "0.4.5", | ||
"grunt-contrib-clean": "0.6.0", | ||
"grunt-contrib-copy": "0.8.0", | ||
"grunt-contrib-watch": "0.6.1", | ||
"grunt-contrib-clean": "1.0.0", | ||
"grunt-contrib-copy": "1.0.0", | ||
"grunt-contrib-watch": "1.0.0", | ||
"grunt-text-replace": "0.4.0", | ||
"grunt-ts": "5.2.0", | ||
"grunt-tslint": "3.0.1", | ||
"grunt-ts": "5.3.2", | ||
"grunt-tslint": "3.0.3", | ||
"http-proxy": "0.10.3", | ||
"intern": "3.0.6", | ||
"istanbul": "0.4.1", | ||
"remap-istanbul": "0.4.0", | ||
"intern": "theintern/intern#75c1472d6d1e3fcf7b1ed7f92deb14ea8b631a44", | ||
"istanbul": "0.4.2", | ||
"leadfoot": "^1.6.5", | ||
"remap-istanbul": "0.5.1", | ||
"sinon": "1.14.1", | ||
"tslint": "3.2.1", | ||
"typescript": "1.7.3" | ||
"tslint": "3.6.0", | ||
"typescript": "1.8.9" | ||
}, | ||
"typings": "typings/dojo-core/dojo-core-2.0.0-alpha.2.d.ts" | ||
"typings": "typings/dojo-core/dojo-core-2.0.0-alpha.3.d.ts" | ||
} |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var queue_1 = require('./queue'); | ||
@@ -229,3 +230,3 @@ var global_1 = require('./global'); | ||
return PromiseShim; | ||
})(); | ||
}()); | ||
exports.PromiseShim = PromiseShim; | ||
@@ -334,5 +335,2 @@ /** | ||
}; | ||
/** | ||
* Adds a callback to the promise to be invoked when the asynchronous operation throws an error. | ||
*/ | ||
Promise.prototype.catch = function (onRejected) { | ||
@@ -381,5 +379,2 @@ return this.then(null, onRejected); | ||
}); | ||
/** | ||
* Adds a callback to the promise to be invoked when the asynchronous operation completes successfully. | ||
*/ | ||
Promise.prototype.then = function (onFulfilled, onRejected) { | ||
@@ -393,3 +388,3 @@ return this.constructor.copy(this.promise.then(onFulfilled, onRejected)); | ||
return Promise; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
@@ -407,2 +402,2 @@ exports.default = Promise; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvbWlzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Qcm9taXNlLnRzIl0sIm5hbWVzIjpbInVud3JhcFByb21pc2VzIiwiaXNUaGVuYWJsZSIsIlByb21pc2VTaGltIiwiUHJvbWlzZVNoaW0uY29uc3RydWN0b3IiLCJQcm9taXNlU2hpbS5hbGwiLCJmdWxmaWxsIiwiZmluaXNoIiwicHJvY2Vzc0l0ZW0iLCJQcm9taXNlU2hpbS5yYWNlIiwiUHJvbWlzZVNoaW0ucmVqZWN0IiwiUHJvbWlzZVNoaW0ucmVzb2x2ZSIsIlByb21pc2UiLCJQcm9taXNlLmNvbnN0cnVjdG9yIiwiUHJvbWlzZS5hbGwiLCJQcm9taXNlLnJhY2UiLCJQcm9taXNlLnJlamVjdCIsIlByb21pc2UucmVzb2x2ZSIsIlByb21pc2UuY29weSIsIlByb21pc2UuY2F0Y2giLCJQcm9taXNlLmZpbmFsbHkiLCJQcm9taXNlLmZpbmFsbHkuaGFuZGxlciIsIlByb21pc2Uuc3RhdGUiLCJQcm9taXNlLnRoZW4iLCJTdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFBQSxzQkFBK0IsU0FBUyxDQUFDLENBQUE7SUFDekMsdUJBQW1CLFVBQVUsQ0FBQyxDQUFBO0lBQzlCLG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQUV4Qjs7O09BR0c7SUFDSCx3QkFBd0IsS0FBWTtRQUNuQ0EsSUFBTUEsU0FBU0EsR0FBaUJBLEVBQUVBLENBQUNBO1FBQ25DQSxJQUFNQSxLQUFLQSxHQUFHQSxLQUFLQSxDQUFDQSxNQUFNQSxDQUFDQTtRQUMzQkEsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsRUFBRUEsQ0FBQ0EsR0FBR0EsS0FBS0EsRUFBRUEsQ0FBQ0EsRUFBRUEsRUFBRUEsQ0FBQ0E7WUFDaENBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLENBQUNBLElBQUlBLEtBQUtBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO2dCQUNuQkEs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QUFHQSxhQUFHQSxDQUFDQSxTQUFTQSxDQUFDQSxHQUFHQSxnQkFBTUEsQ0FBQ0EsT0FBT0EsR0FBR0EsV0FBV0EsQ0FBQ0E7UUF3TDNFQSxjQUFDQTtJQUFEQSxDQUFDQSxBQTVMRCxJQTRMQztJQTVMRDs2QkE0TEMsQ0FBQTtJQUVEOztPQUVHO0lBQ0gsV0FBWSxLQUFLO1FBQ2hCWSwyQ0FBU0EsQ0FBQUE7UUFDVEEsdUNBQU9BLENBQUFBO1FBQ1BBLHlDQUFRQSxDQUFBQTtJQUNUQSxDQUFDQSxFQUpXLGFBQUssS0FBTCxhQUFLLFFBSWhCO0lBSkQsSUFBWSxLQUFLLEdBQUwsYUFJWCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcXVldWVNaWNyb1Rhc2sgfSBmcm9tICcuL3F1ZXVlJztcbmltcG9ydCBnbG9iYWwgZnJvbSAnLi9nbG9iYWwnO1xuaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5cbi8qKlxuICogQ29waWVzIGFuIGFycmF5IG9mIHZhbHVlcywgcmVwbGFjaW5nIGFueSBQbGF0Zm9ybVByb21pc2VzIGluIHRoZSBjb3B5IHdpdGggdW53cmFwcGVkIGdsb2JhbC5Qcm9taXNlcy4gVGhpcyBpcyBuZWNlc3NhcnlcbiAqIGZvciAuYWxsIGFuZCAucmFjZSBzbyB0aGF0IHRoZSBuYXRpdmUgcHJvbWlzZSBkb2Vzbid0IHRyZWF0IHRoZSBQbGF0Zm9ybVByb21pc2VzIGxpa2UgZ2VuZXJpYyB0aGVuYWJsZXMuXG4gKi9cbmZ1bmN0aW9uIHVud3JhcFByb21pc2VzKGl0ZW1zOiBhbnlbXSk6IGFueVtdIHtcblx0Y29uc3QgdW53cmFwcGVkOiB0eXBlb2YgaXRlbXMgPSBbXTtcblx0Y29uc3QgY291bnQgPSBpdGVtcy5sZW5ndGg7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuXHRcdGlmICghKGkgaW4gaXRlbXMpKSB7XG5cdFx0XHRjb250aW51ZTtcblx0XHR9XG5cdFx0bGV0IGl0ZW0gPSBpdGVtc1tpXTtcblx0XHR1bndyYXBwZWRbaV0gPSBpdGVtIGluc3RhbmNlb2YgUHJvbWlzZSA/IGl0ZW0ucHJvbWlzZSA6IGl0ZW07XG5cdH1cblx0cmV0dXJuIHVud3JhcHBlZDtcbn1cblxuLyoqXG4gKiBFeGVjdXRvciBpcyB0aGUgaW50ZXJmYWNlIGZvciBmdW5jdGlvbnMgdXNlZCB0byBpbml0aWFsaXplIGEgUHJvbWlzZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRvcjxUPiB7XG5cdChyZXNvbHZlOiAodmFsdWU/OiBUIHwgVGhlbmFibGU8VD4pID0+IHZvaWQsIHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZCk6IHZvaWQ7XG59XG5cbi8qKlxuICogUmV0dXJucyB0cnVlIGlmIGEgZ2l2ZW4gdmFsdWUgaGFzIGEgYHRoZW5gIG1ldGhvZC5cbiAqIEBwYXJhbSB7YW55fSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2sgaWYgaXMgVGhlbmFibGVcbiAqIEByZXR1cm5zIHtpcyBUaGVuYWJsZTxUPn0gQSB0eXBlIGd1YXJkIGlmIHRoZSB2YWx1ZSBpcyB0aGVuYWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNUaGVuYWJsZTxUPih2YWx1ZTogYW55KTogdmFsdWUgaXMgVGhlbmFibGU8VD4ge1xuXHRyZXR1cm4gdmFsdWUgJiYgdHlwZW9mIHZhbHVlLnRoZW4gPT09ICdmdW5jdGlvbic7XG59XG5cbi8qKlxuICogUHJvbWlzZVNoaW0gaXMgYSBwYXJ0aWFsIGltcGxlbWVudGF0aW9uIG9mIHRoZSBFUzIwMTUgUHJvbWlzZSBzcGVjaWZpY2F0aW9uLiBJdCByZWxpZXMgb24gUHJvbWlzZSB0byBkbyBzb21lIHNhZmV0eVxuICogY2hlY2tzIHN1Y2ggYXMgdmVyaWZ5aW5nIHRoYXQgYSBQcm9taXNlIGlzbid0IHJlc29sdmVkIHdpdGggaXRzZWxmLiBUaGlzIGNsYXNzIGlzIGV4cG9ydGVkIGZvciB0ZXN0YWJpbGl0eSwgYW5kIGlzXG4gKiBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseS5cbiAqXG4gKiBAYm9ycm93cyBQcm9taXNlLmFsbCBhcyBQcm9taXNlU2hpbS5hbGxcbiAqIEBib3Jyb3dzIFByb21pc2UucmFjZSBhcyBQcm9taXNlU2hpbS5yYWNlXG4gKiBAYm9ycm93cyBQcm9taXNlLnJlamVjdCBhcyBQcm9taXNlU2hpbS5yZWplY3RcbiAqIEBib3Jyb3dzIFByb21pc2UucmVzb2x2ZSBhcyBQcm9taXNlU2hpbS5yZXNvbHZlXG4gKiBAYm9ycm93cyBQcm9taXNlI2NhdGNoIGFzIFByb21pc2VTaGltI2NhdGNoXG4gKiBAYm9ycm93cyBQcm9taXNlI3RoZW4gYXMgUHJvbWlzZVNoaW0jdGhlblxuICovXG5leHBvcnQgY2xhc3MgUHJvbWlzZVNoaW08VD4gaW1wbGVtZW50cyBUaGVuYWJsZTxUPiB7XG5cdHN0YXRpYyBhbGw8VD4oaXRlbXM6IChUIHwgVGhlbmFibGU8VD4pW10pOiBQcm9taXNlU2hpbTxUW10+IHtcblx0XHRyZXR1cm4gbmV3IHRoaXMoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuXHRcdFx0Y29uc3QgdmFsdWVzOiBUW10gPSBbXTtcblx0XHRcdGxldCBjb21wbGV0ZSA9IDA7XG5cdFx0XHRsZXQgdG90YWwgPSAwO1xuXHRcdFx0bGV0IHBvcHVsYXRpbmcgPSB0cnVlO1xuXG5cdFx0XHRmdW5jdGlvbiBmdWxmaWxsKGluZGV4OiBudW1iZXIsIHZhbHVlOiBhbnkpOiB2b2lkIHtcblx0XHRcdFx0dmFsdWVzW2luZGV4XSA9IHZhbHVlO1xuXHRcdFx0XHQrK2NvbXBsZXRlO1xuXHRcdFx0XHRmaW5pc2goKTtcblx0XHRcdH1cblxuXHRcdFx0ZnVuY3Rpb24gZmluaXNoKCk6IHZvaWQge1xuXHRcdFx0XHRpZiAocG9wdWxhdGluZyB8fCBjb21wbGV0ZSA8IHRvdGFsKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJlc29sdmUodmFsdWVzKTtcblx0XHRcdH1cblxuXHRcdFx0ZnVuY3Rpb24gcHJvY2Vzc0l0ZW0oaW5kZXg6IG51bWJlciwgaXRlbTogKFQgfCBUaGVuYWJsZTxUPikpOiB2b2lkIHtcblx0XHRcdFx0Kyt0b3RhbDtcblx0XHRcdFx0aWYgKGl0ZW0gaW5zdGFuY2VvZiBQcm9taXNlU2hpbSkge1xuXHRcdFx0XHRcdC8vIElmIGFuIGl0ZW0gUHJvbWlzZVNoaW0gcmVqZWN0cywgdGhpcyBQcm9taXNlU2hpbSBpcyBpbW1lZGlhdGVseSByZWplY3RlZCB3aXRoIHRoZSBpdGVtXG5cdFx0XHRcdFx0Ly8gUHJvbWlzZVNoaW0ncyByZWplY3Rpb24gZXJyb3IuXG5cdFx0XHRcdFx0aXRlbS50aGVuKGZ1bGZpbGwuYmluZChudWxsLCBpbmRleCksIHJlamVjdCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0UHJvbWlzZVNoaW0ucmVzb2x2ZShpdGVtKS50aGVuKGZ1bGZpbGwuYmluZChudWxsLCBpbmRleCkpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGxldCBjb3VudCA9IGl0ZW1zLmxlbmd0aDtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7ICsraSkge1xuXHRcdFx0XHRwcm9jZXNzSXRlbShpLCBpdGVtc1tpXSk7XG5cdFx0XHR9XG5cdFx0XHRwb3B1bGF0aW5nID0gZmFsc2U7XG5cblx0XHRcdGZpbmlzaCgpO1xuXHRcdH0pO1xuXHR9XG5cblx0c3RhdGljIHJhY2U8VD4oaXRlbXM6IChUIHwgVGhlbmFibGU8VD4pW10pOiBQcm9taXNlU2hpbTxUPiB7XG5cdFx0cmV0dXJuIG5ldyB0aGlzKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcblx0XHRcdGNvbnN0IGNvdW50ID0gaXRlbXMubGVuZ3RoO1xuXHRcdFx0bGV0IGl0ZW06IChUIHwgVGhlbmFibGU8VD4pO1xuXG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHtcblx0XHRcdFx0aXRlbSA9IGl0ZW1zW2ldO1xuXG5cdFx0XHRcdGlmIChpdGVtIGluc3RhbmNlb2YgUHJvbWlzZVNoaW0pIHtcblx0XHRcdFx0XHQvLyBJZiBhIFByb21pc2VTaGltIGl0ZW0gcmVqZWN0cywgdGhpcyBQcm9taXNlU2hpbSBpcyBpbW1lZGlhdGVseSByZWplY3RlZCB3aXRoIHRoZSBpdGVtXG5cdFx0XHRcdFx0Ly8gUHJvbWlzZVNoaW0ncyByZWplY3Rpb24gZXJyb3IuXG5cdFx0XHRcdFx0aXRlbS50aGVuKHJlc29sdmUsIHJlamVjdCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0UHJvbWlzZVNoaW0ucmVzb2x2ZShpdGVtKS50aGVuKHJlc29sdmUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRzdGF0aWMgcmVqZWN0PFQ+KHJlYXNvbj86IEVycm9yKTogUHJvbWlzZVNoaW08VD4ge1xuXHRcdHJldHVybiBuZXcgdGhpcyhmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0XHRyZWplY3QocmVhc29uKTtcblx0XHR9KTtcblx0fVxuXG5cdHN0YXRpYyByZXNvbHZlKCk6IFByb21pc2VTaGltPHZvaWQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZTogKFQgfCBUaGVuYWJsZTxUPikpOiBQcm9taXNlU2hpbTxUPjtcblx0c3RhdGljIHJlc29sdmU8VD4odmFsdWU/OiBhbnkpOiBQcm9taXNlU2hpbTxUPiB7XG5cdFx0cmV0dXJuIG5ldyB0aGlzKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRyZXNvbHZlKDxUPiB2YWx1ZSk7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIG5ldyBQcm9taXNlU2hpbS5cblx0ICpcblx0ICogQGNvbnN0cnVjdG9yXG5cdCAqXG5cdCAqIEBwYXJhbSBleGVjdXRvclxuXHQgKiBUaGUgZXhlY3V0b3IgZnVuY3Rpb24gaXMgY2FsbGVkIGltbWVkaWF0ZWx5IHdoZW4gdGhlIFByb21pc2VTaGltIGlzIGluc3RhbnRpYXRlZC4gSXQgaXMgcmVzcG9uc2libGUgZm9yXG5cdCAqIHN0YXJ0aW5nIHRoZSBhc3luY2hyb25vdXMgb3BlcmF0aW9uIHdoZW4gaXQgaXMgaW52b2tlZC5cblx0ICpcblx0ICogVGhlIGV4ZWN1dG9yIG11c3QgY2FsbCBlaXRoZXIgdGhlIHBhc3NlZCBgcmVzb2x2ZWAgZnVuY3Rpb24gd2hlbiB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbiBoYXMgY29tcGxldGVkXG5cdCAqIHN1Y2Nlc3NmdWxseSwgb3IgdGhlIGByZWplY3RgIGZ1bmN0aW9uIHdoZW4gdGhlIG9wZXJhdGlvbiBmYWlscy5cblx0ICovXG5cdGNvbnN0cnVjdG9yKGV4ZWN1dG9yOiBFeGVjdXRvcjxUPikge1xuXHRcdC8qKlxuXHRcdCAqIElmIHRydWUsIHRoZSByZXNvbHV0aW9uIG9mIHRoaXMgcHJvbWlzZSBpcyBjaGFpbmVkIChcImxvY2tlZCBpblwiKSB0byBhbm90aGVyIHByb21pc2UuXG5cdFx0ICovXG5cdFx0bGV0IGlzQ2hhaW5lZCA9IGZhbHNlO1xuXG5cdFx0LyoqXG5cdFx0ICogV2hldGhlciBvciBub3QgdGhpcyBwcm9taXNlIGlzIGluIGEgcmVzb2x2ZWQgc3RhdGUuXG5cdFx0ICovXG5cdFx0Y29uc3QgaXNSZXNvbHZlZCA9ICgpOiBib29sZWFuID0+IHtcblx0XHRcdHJldHVybiB0aGlzLnN0YXRlICE9PSBTdGF0ZS5QZW5kaW5nIHx8IGlzQ2hhaW5lZDtcblx0XHR9O1xuXG5cdFx0LyoqXG5cdFx0ICogQ2FsbGJhY2tzIHRoYXQgc2hvdWxkIGJlIGludm9rZWQgb25jZSB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbiBoYXMgY29tcGxldGVkLlxuXHRcdCAqL1xuXHRcdGxldCBjYWxsYmFja3M6IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XG5cblx0XHQvKipcblx0XHQgKiBJbml0aWFsbHkgcHVzaGVzIGNhbGxiYWNrcyBvbnRvIGEgcXVldWUgZm9yIGV4ZWN1dGlvbiBvbmNlIHRoaXMgcHJvbWlzZSBzZXR0bGVzLiBBZnRlciB0aGUgcHJvbWlzZSBzZXR0bGVzLFxuXHRcdCAqIGVucXVldWVzIGNhbGxiYWNrcyBmb3IgZXhlY3V0aW9uIG9uIHRoZSBuZXh0IGV2ZW50IGxvb3AgdHVybi5cblx0XHQgKi9cblx0XHRsZXQgd2hlbkZpbmlzaGVkID0gZnVuY3Rpb24gKGNhbGxiYWNrOiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0XHRjYWxsYmFja3MucHVzaChjYWxsYmFjayk7XG5cdFx0fTtcblxuXHRcdC8qKlxuXHRcdCAqIFNldHRsZXMgdGhpcyBwcm9taXNlLlxuXHRcdCAqXG5cdFx0ICogQHBhcmFtIG5ld1N0YXRlIFRoZSByZXNvbHZlZCBzdGF0ZSBmb3IgdGhpcyBwcm9taXNlLlxuXHRcdCAqIEBwYXJhbSB7VHxFcnJvcn0gdmFsdWUgVGhlIHJlc29sdmVkIHZhbHVlIGZvciB0aGlzIHByb21pc2UuXG5cdFx0ICovXG5cdFx0Y29uc3Qgc2V0dGxlID0gKG5ld1N0YXRlOiBTdGF0ZSwgdmFsdWU6IGFueSk6IHZvaWQgPT4ge1xuXHRcdFx0Ly8gQSBwcm9taXNlIGNhbiBvbmx5IGJlIHNldHRsZWQgb25jZS5cblx0XHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5QZW5kaW5nKSB7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5zdGF0ZSA9IG5ld1N0YXRlO1xuXHRcdFx0dGhpcy5yZXNvbHZlZFZhbHVlID0gdmFsdWU7XG5cdFx0XHR3aGVuRmluaXNoZWQgPSBxdWV1ZU1pY3JvVGFzaztcblxuXHRcdFx0Ly8gT25seSBlbnF1ZXVlIGEgY2FsbGJhY2sgcnVubmVyIGlmIHRoZXJlIGFyZSBjYWxsYmFja3Mgc28gdGhhdCBpbml0aWFsbHkgZnVsZmlsbGVkIFByb21pc2VzIGRvbid0IGhhdmUgdG9cblx0XHRcdC8vIHdhaXQgYW4gZXh0cmEgdHVybi5cblx0XHRcdGlmIChjYWxsYmFja3MubGVuZ3RoID4gMCkge1xuXHRcdFx0XHRxdWV1ZU1pY3JvVGFzayhmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHRcdFx0bGV0IGNvdW50ID0gY2FsbGJhY2tzLmxlbmd0aDtcblx0XHRcdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHtcblx0XHRcdFx0XHRcdGNhbGxiYWNrc1tpXS5jYWxsKG51bGwpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRjYWxsYmFja3MgPSBudWxsO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0LyoqXG5cdFx0ICogUmVzb2x2ZXMgdGhpcyBwcm9taXNlLlxuXHRcdCAqXG5cdFx0ICogQHBhcmFtIG5ld1N0YXRlIFRoZSByZXNvbHZlZCBzdGF0ZSBmb3IgdGhpcyBwcm9taXNlLlxuXHRcdCAqIEBwYXJhbSB7VHxFcnJvcn0gdmFsdWUgVGhlIHJlc29sdmVkIHZhbHVlIGZvciB0aGlzIHByb21pc2UuXG5cdFx0ICovXG5cdFx0Y29uc3QgcmVzb2x2ZSA9IChuZXdTdGF0ZTogU3RhdGUsIHZhbHVlOiBhbnkpOiB2b2lkID0+IHtcblx0XHRcdGlmIChpc1Jlc29sdmVkKCkpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoaXNUaGVuYWJsZSh2YWx1ZSkpIHtcblx0XHRcdFx0dmFsdWUudGhlbihcblx0XHRcdFx0XHRzZXR0bGUuYmluZChudWxsLCBTdGF0ZS5GdWxmaWxsZWQpLFxuXHRcdFx0XHRcdHNldHRsZS5iaW5kKG51bGwsIFN0YXRlLlJlamVjdGVkKVxuXHRcdFx0XHQpO1xuXHRcdFx0XHRpc0NoYWluZWQgPSB0cnVlO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHNldHRsZShuZXdTdGF0ZSwgdmFsdWUpO1xuXHRcdFx0fVxuXHRcdH07XG5cblx0XHR0aGlzLnRoZW4gPSA8VT4oXG5cdFx0XHRvbkZ1bGZpbGxlZD86ICh2YWx1ZT86IFQpID0+IChVIHwgUHJvbWlzZVNoaW08VT4pLFxuXHRcdFx0b25SZWplY3RlZD86IChyZWFzb24/OiBFcnJvcikgPT4gKFUgfCBQcm9taXNlU2hpbTxVPilcblx0XHQpOiBQcm9taXNlU2hpbTxVPiA9PiB7XG5cdFx0XHRyZXR1cm4gbmV3IFByb21pc2VTaGltPFU+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdFx0Ly8gd2hlbkZpbmlzaGVkIGluaXRpYWxseSBxdWV1ZXMgdXAgY2FsbGJhY2tzIGZvciBleGVjdXRpb24gYWZ0ZXIgdGhlIHByb21pc2UgaGFzIHNldHRsZWQuIE9uY2UgdGhlXG5cdFx0XHRcdC8vIHByb21pc2UgaGFzIHNldHRsZWQsIHdoZW5GaW5pc2hlZCB3aWxsIHNjaGVkdWxlIGNhbGxiYWNrcyBmb3IgZXhlY3V0aW9uIG9uIHRoZSBuZXh0IHR1cm4gdGhyb3VnaCB0aGVcblx0XHRcdFx0Ly8gZXZlbnQgbG9vcC5cblx0XHRcdFx0d2hlbkZpbmlzaGVkKCgpID0+IHtcblx0XHRcdFx0XHRjb25zdCBjYWxsYmFjazogKHZhbHVlPzogYW55KSA9PiBhbnkgPSB0aGlzLnN0YXRlID09PSBTdGF0ZS5SZWplY3RlZCA/IG9uUmVqZWN0ZWQgOiBvbkZ1bGZpbGxlZDtcblxuXHRcdFx0XHRcdGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHtcblx0XHRcdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0XHRcdHJlc29sdmUoY2FsbGJhY2sodGhpcy5yZXNvbHZlZFZhbHVlKSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSBpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuUmVqZWN0ZWQpIHtcblx0XHRcdFx0XHRcdHJlamVjdCh0aGlzLnJlc29sdmVkVmFsdWUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRcdHJlc29sdmUodGhpcy5yZXNvbHZlZFZhbHVlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSk7XG5cdFx0fTtcblxuXHRcdHRyeSB7XG5cdFx0XHQoPEV4ZWN1dG9yPFQ+PiBleGVjdXRvcikoXG5cdFx0XHRcdHJlc29sdmUuYmluZChudWxsLCBTdGF0ZS5GdWxmaWxsZWQpLFxuXHRcdFx0XHRyZXNvbHZlLmJpbmQobnVsbCwgU3RhdGUuUmVqZWN0ZWQpXG5cdFx0XHQpO1xuXHRcdH1cblx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdHNldHRsZShTdGF0ZS5SZWplY3RlZCwgZXJyb3IpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBUaGUgY3VycmVudCBzdGF0ZSBvZiB0aGlzIHByb21pc2UuXG5cdCAqL1xuXHRwcml2YXRlIHN0YXRlID0gU3RhdGUuUGVuZGluZztcblxuXHQvKipcblx0ICogVGhlIHJlc29sdmVkIHZhbHVlIGZvciB0aGlzIHByb21pc2UuXG5cdCAqXG5cdCAqIEB0eXBlIHtUfEVycm9yfVxuXHQgKi9cblx0cHJpdmF0ZSByZXNvbHZlZFZhbHVlOiBhbnk7XG5cblx0dGhlbjogPFU+KFxuXHRcdG9uRnVsZmlsbGVkPzogKHZhbHVlPzogVCkgPT4gKFUgfCBUaGVuYWJsZTxVPiksXG5cdFx0b25SZWplY3RlZD86IChyZWFzb24/OiBFcnJvcikgPT4gKFUgfCBUaGVuYWJsZTxVPilcblx0KSA9PiBQcm9taXNlU2hpbTxVPjtcbn1cblxuLyoqXG4gKiBQbGF0Zm9ybVByb21pc2UgaXMgYSB2ZXJ5IHRoaW4gd3JhcHBlciBhcm91bmQgZWl0aGVyIGEgbmF0aXZlIHByb21pc2UgaW1wbGVtZW50YXRpb24gb3IgUHJvbWlzZVNoaW0uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFByb21pc2U8VD4gaW1wbGVtZW50cyBUaGVuYWJsZTxUPiB7XG5cdC8qKlxuXHQgKiBQb2ludHMgdG8gdGhlIHByb21pc2UgY29uc3RydWN0b3IgdGhpcyBwbGF0Zm9ybSBzaG91bGQgdXNlLlxuXHQgKi9cblx0c3RhdGljIFByb21pc2VDb25zdHJ1Y3RvciA9IGhhcygncHJvbWlzZScpID8gZ2xvYmFsLlByb21pc2UgOiBQcm9taXNlU2hpbTtcblxuXHQvKipcblx0ICogQ29udmVydHMgYW4gaXRlcmFibGUgb2JqZWN0IGNvbnRhaW5pbmcgcHJvbWlzZXMgaW50byBhIHNpbmdsZSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBuZXcgaXRlcmFibGUgb2JqZWN0XG5cdCAqIGNvbnRhaW5pbmcgdGhlIGZ1bGZpbGxlZCB2YWx1ZXMgb2YgYWxsIHRoZSBwcm9taXNlcyBpbiB0aGUgaXRlcmFibGUsIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBQcm9taXNlcyBpbiB0aGVcblx0ICogaXRlcmFibGUuIEl0ZXJhYmxlIHZhbHVlcyB0aGF0IGFyZSBub3QgcHJvbWlzZXMgYXJlIGNvbnZlcnRlZCB0byBwcm9taXNlcyB1c2luZyBQcm9taXNlU2hpbS5yZXNvbHZlLlxuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBQcm9taXNlU2hpbS5hbGwoWyBQcm9taXNlU2hpbS5yZXNvbHZlKCdmb28nKSwgJ2JhcicgXSkudGhlbihmdW5jdGlvbiAodmFsdWUpIHtcblx0ICogICAgIHZhbHVlWzBdID09PSAnZm9vJzsgLy8gdHJ1ZVxuXHQgKiAgICAgdmFsdWVbMV0gPT09ICdiYXInOyAvLyB0cnVlXG5cdCAqIH0pO1xuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBQcm9taXNlU2hpbS5hbGwoe1xuXHQgKiAgICAgZm9vOiBQcm9taXNlU2hpbS5yZXNvbHZlKCdmb28nKSxcblx0ICogICAgIGJhcjogJ2Jhcidcblx0ICogfSkudGhlbigodmFsdWUpID0+IHtcblx0ICogICAgIHZhbHVlLmZvbyA9PT0gJ2Zvbyc7IC8vIHRydWVcblx0ICogICAgIHZhbHVlLmJhciA9PT0gJ2Jhcic7IC8vIHRydWVcblx0ICogfSk7XG5cdCAqL1xuXHRzdGF0aWMgYWxsPFQ+KGl0ZW1zOiAoVCB8IFRoZW5hYmxlPFQ+KVtdKTogUHJvbWlzZTxUW10+IHtcblx0XHRyZXR1cm4gdGhpcy5jb3B5KFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yLmFsbCh1bndyYXBQcm9taXNlcyhpdGVtcykpKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb252ZXJ0cyBhbiBpdGVyYWJsZSBvYmplY3QgY29udGFpbmluZyBwcm9taXNlcyBpbnRvIGEgc2luZ2xlIHByb21pc2UgdGhhdCByZXNvbHZlcyBvciByZWplY3RzIGFzIHNvb24gYXMgb25lIG9mXG5cdCAqIHRoZSBwcm9taXNlcyBpbiB0aGUgaXRlcmFibGUgcmVzb2x2ZXMgb3IgcmVqZWN0cywgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIHJlc29sdmVkIG9yIHJlamVjdGVkIHByb21pc2UuIFZhbHVlcyBpblxuXHQgKiB0aGUgaXRlcmFibGUgdGhhdCBhcmUgbm90IFByb21pc2VzIGFyZSBjb252ZXJ0ZWQgdG8gUHJvbWlzZXMgd2l0aCBQcm9taXNlU2hpbS5yZXNvbHZlLlxuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBQcm9taXNlU2hpbS5yYWNlKFsgUHJvbWlzZVNoaW0ucmVzb2x2ZSgnZm9vJyksIFByb21pc2VTaGltLnJlc29sdmUoJ2JhcicpIF0pLnRoZW4oKHZhbHVlKSA9PiB7XG5cdCAqICAgICB2YWx1ZSA9PT0gJ2Zvbyc7IC8vIHRydWVcblx0ICogfSk7XG5cdCAqXG5cdCAqIEBleGFtcGxlXG5cdCAqIFByb21pc2VTaGltLnJhY2Uoe1xuXHQgKiAgICAgZm9vOiBQcm9taXNlU2hpbS5yZXNvbHZlKCdmb28nKSxcblx0ICogICAgIGJhcjogUHJvbWlzZVNoaW0ucmVzb2x2ZSgnYmFyJylcblx0ICogfSkudGhlbigodmFsdWUpID0+IHtcblx0ICogICAgIHZhbHVlID09PSAnZm9vJzsgLy8gdHJ1ZVxuXHQgKiB9KTtcblx0ICovXG5cdHN0YXRpYyByYWNlPFQ+KGl0ZW1zOiAoVCB8IFRoZW5hYmxlPFQ+KVtdKTogUHJvbWlzZTxUPiB7XG5cdFx0cmV0dXJuIHRoaXMuY29weShQcm9taXNlLlByb21pc2VDb25zdHJ1Y3Rvci5yYWNlKHVud3JhcFByb21pc2VzKGl0ZW1zKSkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBuZXcgcHJvbWlzZSB0aGF0IGlzIHJlamVjdGVkIHdpdGggdGhlIGdpdmVuIGVycm9yLlxuXHQgKi9cblx0c3RhdGljIHJlamVjdDxUPihyZWFzb246IEVycm9yKTogUHJvbWlzZTxhbnk+IHtcblx0XHRyZXR1cm4gdGhpcy5jb3B5KFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yLnJlamVjdChyZWFzb24pKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgbmV3IHByb21pc2UgdGhhdCBpcyByZXNvbHZlZCB3aXRoIHRoZSBnaXZlbiB2YWx1ZS4gSWYgdGhlIHBhc3NlZCB2YWx1ZSBpcyBhbHJlYWR5IGEgUHJvbWlzZVNoaW0sIGl0XG5cdCAqIHdpbGwgYmUgcmV0dXJuZWQgYXMtaXMuXG5cdCAqL1xuXHRzdGF0aWMgcmVzb2x2ZSgpOiBQcm9taXNlPHZvaWQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZTogKFQgfCBUaGVuYWJsZTxUPikpOiBQcm9taXNlPFQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZT86IGFueSk6IFByb21pc2U8VD4ge1xuXHRcdGlmICh2YWx1ZSBpbnN0YW5jZW9mIFByb21pc2UpIHtcblx0XHRcdHJldHVybiB2YWx1ZTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuY29weShQcm9taXNlLlByb21pc2VDb25zdHJ1Y3Rvci5yZXNvbHZlKHZhbHVlKSk7XG5cdH1cblxuXHQvKipcblx0ICogQ29waWVzIGFub3RoZXIgUHJvbWlzZSwgdGFraW5nIG9uIGl0cyBpbm5lciBzdGF0ZS5cblx0ICovXG5cdHByb3RlY3RlZCBzdGF0aWMgY29weTxVPihvdGhlcjogUHJvbWlzZTxVPik6IFByb21pc2U8VT4ge1xuXHRcdGNvbnN0IHByb21pc2UgPSBPYmplY3QuY3JlYXRlKHRoaXMucHJvdG90eXBlLCB7XG5cdFx0XHRwcm9taXNlOiB7IHZhbHVlOiBvdGhlciBpbnN0YW5jZW9mIFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yID8gb3RoZXIgOiBvdGhlci5wcm9taXNlIH1cblx0XHR9KTtcblxuXHRcdHByb21pc2UuX3N0YXRlID0gU3RhdGUuUGVuZGluZztcblx0XHRwcm9taXNlLnByb21pc2UudGhlbihcblx0XHRcdGZ1bmN0aW9uICgpIHsgcHJvbWlzZS5fc3RhdGUgPSBTdGF0ZS5GdWxmaWxsZWQ7IH0sXG5cdFx0XHRmdW5jdGlvbiAoKSB7IHByb21pc2UuX3N0YXRlID0gU3RhdGUuUmVqZWN0ZWQ7IH1cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHByb21pc2U7XG5cdH1cblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIG5ldyBQcm9taXNlLlxuXHQgKlxuXHQgKiBAY29uc3RydWN0b3Jcblx0ICpcblx0ICogQHBhcmFtIGV4ZWN1dG9yXG5cdCAqIFRoZSBleGVjdXRvciBmdW5jdGlvbiBpcyBjYWxsZWQgaW1tZWRpYXRlbHkgd2hlbiB0aGUgUHJvbWlzZVNoaW0gaXMgaW5zdGFudGlhdGVkLiBJdCBpcyByZXNwb25zaWJsZSBmb3Jcblx0ICogc3RhcnRpbmcgdGhlIGFzeW5jaHJvbm91cyBvcGVyYXRpb24gd2hlbiBpdCBpcyBpbnZva2VkLlxuXHQgKlxuXHQgKiBUaGUgZXhlY3V0b3IgbXVzdCBjYWxsIGVpdGhlciB0aGUgcGFzc2VkIGByZXNvbHZlYCBmdW5jdGlvbiB3aGVuIHRoZSBhc3luY2hyb25vdXMgb3BlcmF0aW9uIGhhcyBjb21wbGV0ZWRcblx0ICogc3VjY2Vzc2Z1bGx5LCBvciB0aGUgYHJlamVjdGAgZnVuY3Rpb24gd2hlbiB0aGUgb3BlcmF0aW9uIGZhaWxzLlxuXHQgKi9cblx0Y29uc3RydWN0b3IoZXhlY3V0b3I6IEV4ZWN1dG9yPFQ+KSB7XG5cdFx0Ly8gV3JhcCB0aGUgZXhlY3V0b3IgdG8gdmVyaWZ5IHRoYXQgdGhlIHRoZSByZXNvbHV0aW9uIHZhbHVlIGlzbid0IHRoaXMgcHJvbWlzZS4gU2luY2UgYW55IGluY29taW5nIHByb21pc2Vcblx0XHQvLyBzaG91bGQgYmUgd3JhcHBlZCwgdGhlIG5hdGl2ZSByZXNvbHZlciBjYW4ndCBhdXRvbWF0aWNhbGx5IGRldGVjdCBzZWxmLXJlc29sdXRpb24uXG5cdFx0dGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yKDxFeGVjdXRvcjxUPj4gKChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdGV4ZWN1dG9yKFxuXHRcdFx0XHQodmFsdWUpID0+IHtcblx0XHRcdFx0XHRpZiAodmFsdWUgPT09IHRoaXMpIHtcblx0XHRcdFx0XHRcdHJlamVjdChuZXcgVHlwZUVycm9yKCdDYW5ub3QgY2hhaW4gYSBwcm9taXNlIHRvIGl0c2VsZicpKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0XHRyZXNvbHZlKHZhbHVlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0sXG5cdFx0XHRcdGZ1bmN0aW9uIChyZWFzb24pOiB2b2lkIHtcblx0XHRcdFx0XHRyZWplY3QocmVhc29uKTtcblx0XHRcdFx0fVxuXHRcdFx0KTtcblx0XHR9KSk7XG5cblx0XHR0aGlzLl9zdGF0ZSA9IFN0YXRlLlBlbmRpbmc7XG5cdFx0dGhpcy5wcm9taXNlLnRoZW4oXG5cdFx0XHQoKSA9PiB7IHRoaXMuX3N0YXRlID0gU3RhdGUuRnVsZmlsbGVkOyB9LFxuXHRcdFx0KCkgPT4geyB0aGlzLl9zdGF0ZSA9IFN0YXRlLlJlamVjdGVkOyB9XG5cdFx0KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBbiBvYmplY3Qgd3JhcHBlZCBieSB0aGlzIGNsYXNzIHRoYXQgYWN0dWFsbHkgaW1wbGVtZW50cyB0aGUgUHJvbWlzZSBBUEkuXG5cdCAqL1xuXHRwcml2YXRlIHByb21pc2U6IGFueTtcblxuXHQvKipcblx0ICogVGhlIGludGVybmFsIHN0YXRlIG9mIHRoaXMgcHJvbWlzZS4gVGhpcyBtYXkgYmUgdXBkYXRlZCBkaXJlY3RseSBieSBzdWJjbGFzc2VzLlxuXHQgKi9cblx0cHJvdGVjdGVkIF9zdGF0ZTogU3RhdGU7XG5cblx0LyoqXG5cdCAqIEFkZHMgYSBjYWxsYmFjayB0byB0aGUgcHJvbWlzZSB0byBiZSBpbnZva2VkIHdoZW4gdGhlIGFzeW5jaHJvbm91cyBvcGVyYXRpb24gdGhyb3dzIGFuIGVycm9yLlxuXHQgKi9cblx0Y2F0Y2g8VT4ob25SZWplY3RlZDogKHJlYXNvbj86IEVycm9yKSA9PiAoVSB8IFRoZW5hYmxlPFU+KSk6IFByb21pc2U8VT4ge1xuXHRcdHJldHVybiB0aGlzLnRoZW48VT4obnVsbCwgb25SZWplY3RlZCk7XG5cdH1cblxuXHQvKipcblx0ICogQWxsb3dzIGZvciBjbGVhbnVwIGFjdGlvbnMgdG8gYmUgcGVyZm9ybWVkIGFmdGVyIHJlc29sdXRpb24gb2YgYSBQcm9taXNlLlxuXHQgKi9cblx0ZmluYWxseShjYWxsYmFjazogKCkgPT4gdm9pZCB8IFRoZW5hYmxlPGFueT4pOiBQcm9taXNlPFQ+IHtcblx0XHQvLyBIYW5kbGVyIHRvIGJlIHVzZWQgZm9yIGZ1bGZpbGxtZW50IGFuZCByZWplY3Rpb247IHdoZXRoZXIgaXQgd2FzIGZ1bGZpbGxlZCBvciByZWplY3RlZCBpcyBleHBsaWNpdGx5XG5cdFx0Ly8gaW5kaWNhdGVkIGJ5IHRoZSBmaXJzdCBhcmd1bWVudFxuXHRcdGZ1bmN0aW9uIGhhbmRsZXIocmVqZWN0ZWQ6IGJvb2xlYW4sIHZhbHVlT3JFcnJvcjogYW55KSB7XG5cdFx0XHQvLyBJZiBjYWxsYmFjayB0aHJvd3MsIHRoZSBoYW5kbGVyIHdpbGwgdGhyb3dcblx0XHRcdGNvbnN0IHJlc3VsdCA9IGNhbGxiYWNrKCk7XG5cdFx0XHRpZiAoaXNUaGVuYWJsZShyZXN1bHQpKSB7XG5cdFx0XHRcdC8vIElmIGNhbGxiYWNrIHJldHVybnMgYSBUaGVuYWJsZSB0aGF0IHJlamVjdHMsIHJldHVybiB0aGUgcmVqZWN0aW9uLiBPdGhlcndpc2UsIHJldHVybiBvciB0aHJvdyB0aGVcblx0XHRcdFx0Ly8gaW5jb21pbmcgdmFsdWUgYXMgYXBwcm9wcmlhdGUgd2hlbiB0aGUgVGhlbmFibGUgcmVzb2x2ZXMuXG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzdWx0KS50aGVuKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0XHRpZiAocmVqZWN0ZWQpIHtcblx0XHRcdFx0XHRcdHRocm93IHZhbHVlT3JFcnJvcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHZhbHVlT3JFcnJvcjtcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0Ly8gSWYgY2FsbGJhY2sgcmV0dXJucyBhIG5vbi1UaGVuYWJsZSwgcmV0dXJuIG9yIHRocm93IHRoZSBpbmNvbWluZyB2YWx1ZSBhcyBhcHByb3ByaWF0ZS5cblx0XHRcdFx0aWYgKHJlamVjdGVkKSB7XG5cdFx0XHRcdFx0dGhyb3cgdmFsdWVPckVycm9yO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiB2YWx1ZU9yRXJyb3I7XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdHJldHVybiB0aGlzLnRoZW48VD4oaGFuZGxlci5iaW5kKG51bGwsIGZhbHNlKSwgaGFuZGxlci5iaW5kKG51bGwsIHRydWUpKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGUgY3VycmVudCBQcm9taXNlIHN0YXRlLlxuXHQgKi9cblx0Z2V0IHN0YXRlKCk6IFN0YXRlIHtcblx0XHRyZXR1cm4gdGhpcy5fc3RhdGU7XG5cdH1cblxuXHQvKipcblx0ICogQWRkcyBhIGNhbGxiYWNrIHRvIHRoZSBwcm9taXNlIHRvIGJlIGludm9rZWQgd2hlbiB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbiBjb21wbGV0ZXMgc3VjY2Vzc2Z1bGx5LlxuXHQgKi9cblx0dGhlbjxVPihvbkZ1bGZpbGxlZD86ICh2YWx1ZT86IFQpID0+IChVIHwgVGhlbmFibGU8VT4pLCBvblJlamVjdGVkPzogKHJlYXNvbj86IEVycm9yKSA9PiAoVSB8IFRoZW5hYmxlPFU+KSk6IFByb21pc2U8VT4ge1xuXHRcdHJldHVybiAoPHR5cGVvZiBQcm9taXNlPiB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMucHJvbWlzZS50aGVuKG9uRnVsZmlsbGVkLCBvblJlamVjdGVkKSk7XG5cdH1cbn1cblxuLyoqXG4gKiBUaGUgU3RhdGUgZW51bSByZXByZXNlbnRzIHRoZSBwb3NzaWJsZSBzdGF0ZXMgb2YgYSBwcm9taXNlLlxuICovXG5leHBvcnQgZW51bSBTdGF0ZSB7XG5cdEZ1bGZpbGxlZCxcblx0UGVuZGluZyxcblx0UmVqZWN0ZWRcbn1cblxuLyoqXG4gKiBUaGVuYWJsZSByZXByZXNlbnRzIGFueSBvYmplY3Qgd2l0aCBhIGNhbGxhYmxlIGB0aGVuYCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUaGVuYWJsZTxUPiB7XG5cdHRoZW48VT4ob25GdWxmaWxsZWQ/OiAodmFsdWU/OiBUKSA9PiBVIHwgVGhlbmFibGU8VT4sIG9uUmVqZWN0ZWQ/OiAoZXJyb3I/OiBhbnkpID0+IFUgfCBUaGVuYWJsZTxVPik6IFRoZW5hYmxlPFU+O1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvbWlzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Qcm9taXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLHNCQUErQixTQUFTLENBQUMsQ0FBQTtJQUN6Qyx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFDOUIsb0JBQWdCLE9BQU8sQ0FBQyxDQUFBO0lBRXhCOzs7T0FHRztJQUNILHdCQUF3QixLQUFZO1FBQ25DLElBQU0sU0FBUyxHQUFpQixFQUFFLENBQUM7UUFDbkMsSUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUMzQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2hDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNuQixRQUFRLENBQUM7WUFDVixDQUFDO1lBQ0QsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BCLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLFlBQVksT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQzlELENBQUM7UUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQ2xCLENBQUM7SUFTRDs7OztPQUlHO0lBQ0gsb0JBQThCLEtBQVU7UUFDdkMsTUFBTSxDQUFDLEtBQUssSUFBSSxPQUFPLEtBQUssQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDO0lBQ2xELENBQUM7SUFGZSxrQkFBVSxhQUV6QixDQUFBO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSDtRQTZFQzs7Ozs7Ozs7Ozs7V0FXRztRQUNILHFCQUFZLFFBQXFCO1lBekZsQyxpQkErTkM7WUFoQkE7O2VBRUc7WUFDSyxVQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZ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VUFBUSxXQUE4QyxFQUFFLFVBQWtEO1lBQ3pHLE1BQU0sQ0FBbUIsSUFBSSxDQUFDLFdBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDN0YsQ0FBQztRQTVMRDs7V0FFRztRQUNJLDBCQUFrQixHQUFHLGFBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxnQkFBTSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUM7UUEwTDNFLGNBQUM7SUFBRCxDQUFDLEFBOUxELElBOExDO0lBOUxEOzZCQThMQyxDQUFBO0lBRUQ7O09BRUc7SUFDSCxXQUFZLEtBQUs7UUFDaEIsMkNBQVMsQ0FBQTtRQUNULHVDQUFPLENBQUE7UUFDUCx5Q0FBUSxDQUFBO0lBQ1QsQ0FBQyxFQUpXLGFBQUssS0FBTCxhQUFLLFFBSWhCO0lBSkQsSUFBWSxLQUFLLEdBQUwsYUFJWCxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcXVldWVNaWNyb1Rhc2sgfSBmcm9tICcuL3F1ZXVlJztcbmltcG9ydCBnbG9iYWwgZnJvbSAnLi9nbG9iYWwnO1xuaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5cbi8qKlxuICogQ29waWVzIGFuIGFycmF5IG9mIHZhbHVlcywgcmVwbGFjaW5nIGFueSBQbGF0Zm9ybVByb21pc2VzIGluIHRoZSBjb3B5IHdpdGggdW53cmFwcGVkIGdsb2JhbC5Qcm9taXNlcy4gVGhpcyBpcyBuZWNlc3NhcnlcbiAqIGZvciAuYWxsIGFuZCAucmFjZSBzbyB0aGF0IHRoZSBuYXRpdmUgcHJvbWlzZSBkb2Vzbid0IHRyZWF0IHRoZSBQbGF0Zm9ybVByb21pc2VzIGxpa2UgZ2VuZXJpYyB0aGVuYWJsZXMuXG4gKi9cbmZ1bmN0aW9uIHVud3JhcFByb21pc2VzKGl0ZW1zOiBhbnlbXSk6IGFueVtdIHtcblx0Y29uc3QgdW53cmFwcGVkOiB0eXBlb2YgaXRlbXMgPSBbXTtcblx0Y29uc3QgY291bnQgPSBpdGVtcy5sZW5ndGg7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuXHRcdGlmICghKGkgaW4gaXRlbXMpKSB7XG5cdFx0XHRjb250aW51ZTtcblx0XHR9XG5cdFx0bGV0IGl0ZW0gPSBpdGVtc1tpXTtcblx0XHR1bndyYXBwZWRbaV0gPSBpdGVtIGluc3RhbmNlb2YgUHJvbWlzZSA/IGl0ZW0ucHJvbWlzZSA6IGl0ZW07XG5cdH1cblx0cmV0dXJuIHVud3JhcHBlZDtcbn1cblxuLyoqXG4gKiBFeGVjdXRvciBpcyB0aGUgaW50ZXJmYWNlIGZvciBmdW5jdGlvbnMgdXNlZCB0byBpbml0aWFsaXplIGEgUHJvbWlzZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRvcjxUPiB7XG5cdChyZXNvbHZlOiAodmFsdWU/OiBUIHwgVGhlbmFibGU8VD4pID0+IHZvaWQsIHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZCk6IHZvaWQ7XG59XG5cbi8qKlxuICogUmV0dXJucyB0cnVlIGlmIGEgZ2l2ZW4gdmFsdWUgaGFzIGEgYHRoZW5gIG1ldGhvZC5cbiAqIEBwYXJhbSB7YW55fSB2YWx1ZSBUaGUgdmFsdWUgdG8gY2hlY2sgaWYgaXMgVGhlbmFibGVcbiAqIEByZXR1cm5zIHtpcyBUaGVuYWJsZTxUPn0gQSB0eXBlIGd1YXJkIGlmIHRoZSB2YWx1ZSBpcyB0aGVuYWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNUaGVuYWJsZTxUPih2YWx1ZTogYW55KTogdmFsdWUgaXMgVGhlbmFibGU8VD4ge1xuXHRyZXR1cm4gdmFsdWUgJiYgdHlwZW9mIHZhbHVlLnRoZW4gPT09ICdmdW5jdGlvbic7XG59XG5cbi8qKlxuICogUHJvbWlzZVNoaW0gaXMgYSBwYXJ0aWFsIGltcGxlbWVudGF0aW9uIG9mIHRoZSBFUzIwMTUgUHJvbWlzZSBzcGVjaWZpY2F0aW9uLiBJdCByZWxpZXMgb24gUHJvbWlzZSB0byBkbyBzb21lIHNhZmV0eVxuICogY2hlY2tzIHN1Y2ggYXMgdmVyaWZ5aW5nIHRoYXQgYSBQcm9taXNlIGlzbid0IHJlc29sdmVkIHdpdGggaXRzZWxmLiBUaGlzIGNsYXNzIGlzIGV4cG9ydGVkIGZvciB0ZXN0YWJpbGl0eSwgYW5kIGlzXG4gKiBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseS5cbiAqXG4gKiBAYm9ycm93cyBQcm9taXNlLmFsbCBhcyBQcm9taXNlU2hpbS5hbGxcbiAqIEBib3Jyb3dzIFByb21pc2UucmFjZSBhcyBQcm9taXNlU2hpbS5yYWNlXG4gKiBAYm9ycm93cyBQcm9taXNlLnJlamVjdCBhcyBQcm9taXNlU2hpbS5yZWplY3RcbiAqIEBib3Jyb3dzIFByb21pc2UucmVzb2x2ZSBhcyBQcm9taXNlU2hpbS5yZXNvbHZlXG4gKiBAYm9ycm93cyBQcm9taXNlI2NhdGNoIGFzIFByb21pc2VTaGltI2NhdGNoXG4gKiBAYm9ycm93cyBQcm9taXNlI3RoZW4gYXMgUHJvbWlzZVNoaW0jdGhlblxuICovXG5leHBvcnQgY2xhc3MgUHJvbWlzZVNoaW08VD4gaW1wbGVtZW50cyBUaGVuYWJsZTxUPiB7XG5cdHN0YXRpYyBhbGw8VD4oaXRlbXM6IChUIHwgVGhlbmFibGU8VD4pW10pOiBQcm9taXNlU2hpbTxUW10+IHtcblx0XHRyZXR1cm4gbmV3IHRoaXMoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuXHRcdFx0Y29uc3QgdmFsdWVzOiBUW10gPSBbXTtcblx0XHRcdGxldCBjb21wbGV0ZSA9IDA7XG5cdFx0XHRsZXQgdG90YWwgPSAwO1xuXHRcdFx0bGV0IHBvcHVsYXRpbmcgPSB0cnVlO1xuXG5cdFx0XHRmdW5jdGlvbiBmdWxmaWxsKGluZGV4OiBudW1iZXIsIHZhbHVlOiBhbnkpOiB2b2lkIHtcblx0XHRcdFx0dmFsdWVzW2luZGV4XSA9IHZhbHVlO1xuXHRcdFx0XHQrK2NvbXBsZXRlO1xuXHRcdFx0XHRmaW5pc2goKTtcblx0XHRcdH1cblxuXHRcdFx0ZnVuY3Rpb24gZmluaXNoKCk6IHZvaWQge1xuXHRcdFx0XHRpZiAocG9wdWxhdGluZyB8fCBjb21wbGV0ZSA8IHRvdGFsKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJlc29sdmUodmFsdWVzKTtcblx0XHRcdH1cblxuXHRcdFx0ZnVuY3Rpb24gcHJvY2Vzc0l0ZW0oaW5kZXg6IG51bWJlciwgaXRlbTogKFQgfCBUaGVuYWJsZTxUPikpOiB2b2lkIHtcblx0XHRcdFx0Kyt0b3RhbDtcblx0XHRcdFx0aWYgKGl0ZW0gaW5zdGFuY2VvZiBQcm9taXNlU2hpbSkge1xuXHRcdFx0XHRcdC8vIElmIGFuIGl0ZW0gUHJvbWlzZVNoaW0gcmVqZWN0cywgdGhpcyBQcm9taXNlU2hpbSBpcyBpbW1lZGlhdGVseSByZWplY3RlZCB3aXRoIHRoZSBpdGVtXG5cdFx0XHRcdFx0Ly8gUHJvbWlzZVNoaW0ncyByZWplY3Rpb24gZXJyb3IuXG5cdFx0XHRcdFx0aXRlbS50aGVuKGZ1bGZpbGwuYmluZChudWxsLCBpbmRleCksIHJlamVjdCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0UHJvbWlzZVNoaW0ucmVzb2x2ZShpdGVtKS50aGVuKGZ1bGZpbGwuYmluZChudWxsLCBpbmRleCkpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGxldCBjb3VudCA9IGl0ZW1zLmxlbmd0aDtcblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7ICsraSkge1xuXHRcdFx0XHRwcm9jZXNzSXRlbShpLCBpdGVtc1tpXSk7XG5cdFx0XHR9XG5cdFx0XHRwb3B1bGF0aW5nID0gZmFsc2U7XG5cblx0XHRcdGZpbmlzaCgpO1xuXHRcdH0pO1xuXHR9XG5cblx0c3RhdGljIHJhY2U8VD4oaXRlbXM6IChUIHwgVGhlbmFibGU8VD4pW10pOiBQcm9taXNlU2hpbTxUPiB7XG5cdFx0cmV0dXJuIG5ldyB0aGlzKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcblx0XHRcdGNvbnN0IGNvdW50ID0gaXRlbXMubGVuZ3RoO1xuXHRcdFx0bGV0IGl0ZW06IChUIHwgVGhlbmFibGU8VD4pO1xuXG5cdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHtcblx0XHRcdFx0aXRlbSA9IGl0ZW1zW2ldO1xuXG5cdFx0XHRcdGlmIChpdGVtIGluc3RhbmNlb2YgUHJvbWlzZVNoaW0pIHtcblx0XHRcdFx0XHQvLyBJZiBhIFByb21pc2VTaGltIGl0ZW0gcmVqZWN0cywgdGhpcyBQcm9taXNlU2hpbSBpcyBpbW1lZGlhdGVseSByZWplY3RlZCB3aXRoIHRoZSBpdGVtXG5cdFx0XHRcdFx0Ly8gUHJvbWlzZVNoaW0ncyByZWplY3Rpb24gZXJyb3IuXG5cdFx0XHRcdFx0aXRlbS50aGVuKHJlc29sdmUsIHJlamVjdCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0UHJvbWlzZVNoaW0ucmVzb2x2ZShpdGVtKS50aGVuKHJlc29sdmUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRzdGF0aWMgcmVqZWN0PFQ+KHJlYXNvbj86IEVycm9yKTogUHJvbWlzZVNoaW08VD4ge1xuXHRcdHJldHVybiBuZXcgdGhpcyhmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0XHRyZWplY3QocmVhc29uKTtcblx0XHR9KTtcblx0fVxuXG5cdHN0YXRpYyByZXNvbHZlKCk6IFByb21pc2VTaGltPHZvaWQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZTogKFQgfCBUaGVuYWJsZTxUPikpOiBQcm9taXNlU2hpbTxUPjtcblx0c3RhdGljIHJlc29sdmU8VD4odmFsdWU/OiBhbnkpOiBQcm9taXNlU2hpbTxUPiB7XG5cdFx0cmV0dXJuIG5ldyB0aGlzKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRyZXNvbHZlKDxUPiB2YWx1ZSk7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIG5ldyBQcm9taXNlU2hpbS5cblx0ICpcblx0ICogQGNvbnN0cnVjdG9yXG5cdCAqXG5cdCAqIEBwYXJhbSBleGVjdXRvclxuXHQgKiBUaGUgZXhlY3V0b3IgZnVuY3Rpb24gaXMgY2FsbGVkIGltbWVkaWF0ZWx5IHdoZW4gdGhlIFByb21pc2VTaGltIGlzIGluc3RhbnRpYXRlZC4gSXQgaXMgcmVzcG9uc2libGUgZm9yXG5cdCAqIHN0YXJ0aW5nIHRoZSBhc3luY2hyb25vdXMgb3BlcmF0aW9uIHdoZW4gaXQgaXMgaW52b2tlZC5cblx0ICpcblx0ICogVGhlIGV4ZWN1dG9yIG11c3QgY2FsbCBlaXRoZXIgdGhlIHBhc3NlZCBgcmVzb2x2ZWAgZnVuY3Rpb24gd2hlbiB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbiBoYXMgY29tcGxldGVkXG5cdCAqIHN1Y2Nlc3NmdWxseSwgb3IgdGhlIGByZWplY3RgIGZ1bmN0aW9uIHdoZW4gdGhlIG9wZXJhdGlvbiBmYWlscy5cblx0ICovXG5cdGNvbnN0cnVjdG9yKGV4ZWN1dG9yOiBFeGVjdXRvcjxUPikge1xuXHRcdC8qKlxuXHRcdCAqIElmIHRydWUsIHRoZSByZXNvbHV0aW9uIG9mIHRoaXMgcHJvbWlzZSBpcyBjaGFpbmVkIChcImxvY2tlZCBpblwiKSB0byBhbm90aGVyIHByb21pc2UuXG5cdFx0ICovXG5cdFx0bGV0IGlzQ2hhaW5lZCA9IGZhbHNlO1xuXG5cdFx0LyoqXG5cdFx0ICogV2hldGhlciBvciBub3QgdGhpcyBwcm9taXNlIGlzIGluIGEgcmVzb2x2ZWQgc3RhdGUuXG5cdFx0ICovXG5cdFx0Y29uc3QgaXNSZXNvbHZlZCA9ICgpOiBib29sZWFuID0+IHtcblx0XHRcdHJldHVybiB0aGlzLnN0YXRlICE9PSBTdGF0ZS5QZW5kaW5nIHx8IGlzQ2hhaW5lZDtcblx0XHR9O1xuXG5cdFx0LyoqXG5cdFx0ICogQ2FsbGJhY2tzIHRoYXQgc2hvdWxkIGJlIGludm9rZWQgb25jZSB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbiBoYXMgY29tcGxldGVkLlxuXHRcdCAqL1xuXHRcdGxldCBjYWxsYmFja3M6IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XG5cblx0XHQvKipcblx0XHQgKiBJbml0aWFsbHkgcHVzaGVzIGNhbGxiYWNrcyBvbnRvIGEgcXVldWUgZm9yIGV4ZWN1dGlvbiBvbmNlIHRoaXMgcHJvbWlzZSBzZXR0bGVzLiBBZnRlciB0aGUgcHJvbWlzZSBzZXR0bGVzLFxuXHRcdCAqIGVucXVldWVzIGNhbGxiYWNrcyBmb3IgZXhlY3V0aW9uIG9uIHRoZSBuZXh0IGV2ZW50IGxvb3AgdHVybi5cblx0XHQgKi9cblx0XHRsZXQgd2hlbkZpbmlzaGVkID0gZnVuY3Rpb24gKGNhbGxiYWNrOiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0XHRjYWxsYmFja3MucHVzaChjYWxsYmFjayk7XG5cdFx0fTtcblxuXHRcdC8qKlxuXHRcdCAqIFNldHRsZXMgdGhpcyBwcm9taXNlLlxuXHRcdCAqXG5cdFx0ICogQHBhcmFtIG5ld1N0YXRlIFRoZSByZXNvbHZlZCBzdGF0ZSBmb3IgdGhpcyBwcm9taXNlLlxuXHRcdCAqIEBwYXJhbSB7VHxFcnJvcn0gdmFsdWUgVGhlIHJlc29sdmVkIHZhbHVlIGZvciB0aGlzIHByb21pc2UuXG5cdFx0ICovXG5cdFx0Y29uc3Qgc2V0dGxlID0gKG5ld1N0YXRlOiBTdGF0ZSwgdmFsdWU6IGFueSk6IHZvaWQgPT4ge1xuXHRcdFx0Ly8gQSBwcm9taXNlIGNhbiBvbmx5IGJlIHNldHRsZWQgb25jZS5cblx0XHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5QZW5kaW5nKSB7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5zdGF0ZSA9IG5ld1N0YXRlO1xuXHRcdFx0dGhpcy5yZXNvbHZlZFZhbHVlID0gdmFsdWU7XG5cdFx0XHR3aGVuRmluaXNoZWQgPSBxdWV1ZU1pY3JvVGFzaztcblxuXHRcdFx0Ly8gT25seSBlbnF1ZXVlIGEgY2FsbGJhY2sgcnVubmVyIGlmIHRoZXJlIGFyZSBjYWxsYmFja3Mgc28gdGhhdCBpbml0aWFsbHkgZnVsZmlsbGVkIFByb21pc2VzIGRvbid0IGhhdmUgdG9cblx0XHRcdC8vIHdhaXQgYW4gZXh0cmEgdHVybi5cblx0XHRcdGlmIChjYWxsYmFja3MubGVuZ3RoID4gMCkge1xuXHRcdFx0XHRxdWV1ZU1pY3JvVGFzayhmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHRcdFx0bGV0IGNvdW50ID0gY2FsbGJhY2tzLmxlbmd0aDtcblx0XHRcdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHtcblx0XHRcdFx0XHRcdGNhbGxiYWNrc1tpXS5jYWxsKG51bGwpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRjYWxsYmFja3MgPSBudWxsO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9O1xuXG5cdFx0LyoqXG5cdFx0ICogUmVzb2x2ZXMgdGhpcyBwcm9taXNlLlxuXHRcdCAqXG5cdFx0ICogQHBhcmFtIG5ld1N0YXRlIFRoZSByZXNvbHZlZCBzdGF0ZSBmb3IgdGhpcyBwcm9taXNlLlxuXHRcdCAqIEBwYXJhbSB7VHxFcnJvcn0gdmFsdWUgVGhlIHJlc29sdmVkIHZhbHVlIGZvciB0aGlzIHByb21pc2UuXG5cdFx0ICovXG5cdFx0Y29uc3QgcmVzb2x2ZSA9IChuZXdTdGF0ZTogU3RhdGUsIHZhbHVlOiBhbnkpOiB2b2lkID0+IHtcblx0XHRcdGlmIChpc1Jlc29sdmVkKCkpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoaXNUaGVuYWJsZSh2YWx1ZSkpIHtcblx0XHRcdFx0dmFsdWUudGhlbihcblx0XHRcdFx0XHRzZXR0bGUuYmluZChudWxsLCBTdGF0ZS5GdWxmaWxsZWQpLFxuXHRcdFx0XHRcdHNldHRsZS5iaW5kKG51bGwsIFN0YXRlLlJlamVjdGVkKVxuXHRcdFx0XHQpO1xuXHRcdFx0XHRpc0NoYWluZWQgPSB0cnVlO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHNldHRsZShuZXdTdGF0ZSwgdmFsdWUpO1xuXHRcdFx0fVxuXHRcdH07XG5cblx0XHR0aGlzLnRoZW4gPSA8VT4oXG5cdFx0XHRvbkZ1bGZpbGxlZD86ICh2YWx1ZT86IFQpID0+IChVIHwgUHJvbWlzZVNoaW08VT4pLFxuXHRcdFx0b25SZWplY3RlZD86IChyZWFzb24/OiBFcnJvcikgPT4gKFUgfCBQcm9taXNlU2hpbTxVPilcblx0XHQpOiBQcm9taXNlU2hpbTxVPiA9PiB7XG5cdFx0XHRyZXR1cm4gbmV3IFByb21pc2VTaGltPFU+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdFx0Ly8gd2hlbkZpbmlzaGVkIGluaXRpYWxseSBxdWV1ZXMgdXAgY2FsbGJhY2tzIGZvciBleGVjdXRpb24gYWZ0ZXIgdGhlIHByb21pc2UgaGFzIHNldHRsZWQuIE9uY2UgdGhlXG5cdFx0XHRcdC8vIHByb21pc2UgaGFzIHNldHRsZWQsIHdoZW5GaW5pc2hlZCB3aWxsIHNjaGVkdWxlIGNhbGxiYWNrcyBmb3IgZXhlY3V0aW9uIG9uIHRoZSBuZXh0IHR1cm4gdGhyb3VnaCB0aGVcblx0XHRcdFx0Ly8gZXZlbnQgbG9vcC5cblx0XHRcdFx0d2hlbkZpbmlzaGVkKCgpID0+IHtcblx0XHRcdFx0XHRjb25zdCBjYWxsYmFjazogKHZhbHVlPzogYW55KSA9PiBhbnkgPSB0aGlzLnN0YXRlID09PSBTdGF0ZS5SZWplY3RlZCA/IG9uUmVqZWN0ZWQgOiBvbkZ1bGZpbGxlZDtcblxuXHRcdFx0XHRcdGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHtcblx0XHRcdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0XHRcdHJlc29sdmUoY2FsbGJhY2sodGhpcy5yZXNvbHZlZFZhbHVlKSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSBpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuUmVqZWN0ZWQpIHtcblx0XHRcdFx0XHRcdHJlamVjdCh0aGlzLnJlc29sdmVkVmFsdWUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRcdHJlc29sdmUodGhpcy5yZXNvbHZlZFZhbHVlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSk7XG5cdFx0fTtcblxuXHRcdHRyeSB7XG5cdFx0XHQoPEV4ZWN1dG9yPFQ+PiBleGVjdXRvcikoXG5cdFx0XHRcdHJlc29sdmUuYmluZChudWxsLCBTdGF0ZS5GdWxmaWxsZWQpLFxuXHRcdFx0XHRyZXNvbHZlLmJpbmQobnVsbCwgU3RhdGUuUmVqZWN0ZWQpXG5cdFx0XHQpO1xuXHRcdH1cblx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdHNldHRsZShTdGF0ZS5SZWplY3RlZCwgZXJyb3IpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBUaGUgY3VycmVudCBzdGF0ZSBvZiB0aGlzIHByb21pc2UuXG5cdCAqL1xuXHRwcml2YXRlIHN0YXRlID0gU3RhdGUuUGVuZGluZztcblxuXHQvKipcblx0ICogVGhlIHJlc29sdmVkIHZhbHVlIGZvciB0aGlzIHByb21pc2UuXG5cdCAqXG5cdCAqIEB0eXBlIHtUfEVycm9yfVxuXHQgKi9cblx0cHJpdmF0ZSByZXNvbHZlZFZhbHVlOiBhbnk7XG5cblx0dGhlbjogPFU+KFxuXHRcdG9uRnVsZmlsbGVkPzogKHZhbHVlPzogVCkgPT4gKFUgfCBUaGVuYWJsZTxVPiksXG5cdFx0b25SZWplY3RlZD86IChyZWFzb24/OiBFcnJvcikgPT4gKFUgfCBUaGVuYWJsZTxVPilcblx0KSA9PiBQcm9taXNlU2hpbTxVPjtcbn1cblxuLyoqXG4gKiBQbGF0Zm9ybVByb21pc2UgaXMgYSB2ZXJ5IHRoaW4gd3JhcHBlciBhcm91bmQgZWl0aGVyIGEgbmF0aXZlIHByb21pc2UgaW1wbGVtZW50YXRpb24gb3IgUHJvbWlzZVNoaW0uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFByb21pc2U8VD4gaW1wbGVtZW50cyBUaGVuYWJsZTxUPiB7XG5cdC8qKlxuXHQgKiBQb2ludHMgdG8gdGhlIHByb21pc2UgY29uc3RydWN0b3IgdGhpcyBwbGF0Zm9ybSBzaG91bGQgdXNlLlxuXHQgKi9cblx0c3RhdGljIFByb21pc2VDb25zdHJ1Y3RvciA9IGhhcygncHJvbWlzZScpID8gZ2xvYmFsLlByb21pc2UgOiBQcm9taXNlU2hpbTtcblxuXHQvKipcblx0ICogQ29udmVydHMgYW4gaXRlcmFibGUgb2JqZWN0IGNvbnRhaW5pbmcgcHJvbWlzZXMgaW50byBhIHNpbmdsZSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBuZXcgaXRlcmFibGUgb2JqZWN0XG5cdCAqIGNvbnRhaW5pbmcgdGhlIGZ1bGZpbGxlZCB2YWx1ZXMgb2YgYWxsIHRoZSBwcm9taXNlcyBpbiB0aGUgaXRlcmFibGUsIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBQcm9taXNlcyBpbiB0aGVcblx0ICogaXRlcmFibGUuIEl0ZXJhYmxlIHZhbHVlcyB0aGF0IGFyZSBub3QgcHJvbWlzZXMgYXJlIGNvbnZlcnRlZCB0byBwcm9taXNlcyB1c2luZyBQcm9taXNlU2hpbS5yZXNvbHZlLlxuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBQcm9taXNlU2hpbS5hbGwoWyBQcm9taXNlU2hpbS5yZXNvbHZlKCdmb28nKSwgJ2JhcicgXSkudGhlbihmdW5jdGlvbiAodmFsdWUpIHtcblx0ICogICAgIHZhbHVlWzBdID09PSAnZm9vJzsgLy8gdHJ1ZVxuXHQgKiAgICAgdmFsdWVbMV0gPT09ICdiYXInOyAvLyB0cnVlXG5cdCAqIH0pO1xuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBQcm9taXNlU2hpbS5hbGwoe1xuXHQgKiAgICAgZm9vOiBQcm9taXNlU2hpbS5yZXNvbHZlKCdmb28nKSxcblx0ICogICAgIGJhcjogJ2Jhcidcblx0ICogfSkudGhlbigodmFsdWUpID0+IHtcblx0ICogICAgIHZhbHVlLmZvbyA9PT0gJ2Zvbyc7IC8vIHRydWVcblx0ICogICAgIHZhbHVlLmJhciA9PT0gJ2Jhcic7IC8vIHRydWVcblx0ICogfSk7XG5cdCAqL1xuXHRzdGF0aWMgYWxsPFQ+KGl0ZW1zOiAoVCB8IFRoZW5hYmxlPFQ+KVtdKTogUHJvbWlzZTxUW10+IHtcblx0XHRyZXR1cm4gdGhpcy5jb3B5KFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yLmFsbCh1bndyYXBQcm9taXNlcyhpdGVtcykpKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb252ZXJ0cyBhbiBpdGVyYWJsZSBvYmplY3QgY29udGFpbmluZyBwcm9taXNlcyBpbnRvIGEgc2luZ2xlIHByb21pc2UgdGhhdCByZXNvbHZlcyBvciByZWplY3RzIGFzIHNvb24gYXMgb25lIG9mXG5cdCAqIHRoZSBwcm9taXNlcyBpbiB0aGUgaXRlcmFibGUgcmVzb2x2ZXMgb3IgcmVqZWN0cywgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIHJlc29sdmVkIG9yIHJlamVjdGVkIHByb21pc2UuIFZhbHVlcyBpblxuXHQgKiB0aGUgaXRlcmFibGUgdGhhdCBhcmUgbm90IFByb21pc2VzIGFyZSBjb252ZXJ0ZWQgdG8gUHJvbWlzZXMgd2l0aCBQcm9taXNlU2hpbS5yZXNvbHZlLlxuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBQcm9taXNlU2hpbS5yYWNlKFsgUHJvbWlzZVNoaW0ucmVzb2x2ZSgnZm9vJyksIFByb21pc2VTaGltLnJlc29sdmUoJ2JhcicpIF0pLnRoZW4oKHZhbHVlKSA9PiB7XG5cdCAqICAgICB2YWx1ZSA9PT0gJ2Zvbyc7IC8vIHRydWVcblx0ICogfSk7XG5cdCAqXG5cdCAqIEBleGFtcGxlXG5cdCAqIFByb21pc2VTaGltLnJhY2Uoe1xuXHQgKiAgICAgZm9vOiBQcm9taXNlU2hpbS5yZXNvbHZlKCdmb28nKSxcblx0ICogICAgIGJhcjogUHJvbWlzZVNoaW0ucmVzb2x2ZSgnYmFyJylcblx0ICogfSkudGhlbigodmFsdWUpID0+IHtcblx0ICogICAgIHZhbHVlID09PSAnZm9vJzsgLy8gdHJ1ZVxuXHQgKiB9KTtcblx0ICovXG5cdHN0YXRpYyByYWNlPFQ+KGl0ZW1zOiAoVCB8IFRoZW5hYmxlPFQ+KVtdKTogUHJvbWlzZTxUPiB7XG5cdFx0cmV0dXJuIHRoaXMuY29weShQcm9taXNlLlByb21pc2VDb25zdHJ1Y3Rvci5yYWNlKHVud3JhcFByb21pc2VzKGl0ZW1zKSkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBuZXcgcHJvbWlzZSB0aGF0IGlzIHJlamVjdGVkIHdpdGggdGhlIGdpdmVuIGVycm9yLlxuXHQgKi9cblx0c3RhdGljIHJlamVjdDxUPihyZWFzb246IEVycm9yKTogUHJvbWlzZTxhbnk+IHtcblx0XHRyZXR1cm4gdGhpcy5jb3B5KFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yLnJlamVjdChyZWFzb24pKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgbmV3IHByb21pc2UgdGhhdCBpcyByZXNvbHZlZCB3aXRoIHRoZSBnaXZlbiB2YWx1ZS4gSWYgdGhlIHBhc3NlZCB2YWx1ZSBpcyBhbHJlYWR5IGEgUHJvbWlzZVNoaW0sIGl0XG5cdCAqIHdpbGwgYmUgcmV0dXJuZWQgYXMtaXMuXG5cdCAqL1xuXHRzdGF0aWMgcmVzb2x2ZSgpOiBQcm9taXNlPHZvaWQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZTogKFQgfCBUaGVuYWJsZTxUPikpOiBQcm9taXNlPFQ+O1xuXHRzdGF0aWMgcmVzb2x2ZTxUPih2YWx1ZT86IGFueSk6IFByb21pc2U8VD4ge1xuXHRcdGlmICh2YWx1ZSBpbnN0YW5jZW9mIFByb21pc2UpIHtcblx0XHRcdHJldHVybiB2YWx1ZTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuY29weShQcm9taXNlLlByb21pc2VDb25zdHJ1Y3Rvci5yZXNvbHZlKHZhbHVlKSk7XG5cdH1cblxuXHQvKipcblx0ICogQ29waWVzIGFub3RoZXIgUHJvbWlzZSwgdGFraW5nIG9uIGl0cyBpbm5lciBzdGF0ZS5cblx0ICovXG5cdHByb3RlY3RlZCBzdGF0aWMgY29weTxVPihvdGhlcjogUHJvbWlzZTxVPik6IFByb21pc2U8VT4ge1xuXHRcdGNvbnN0IHByb21pc2UgPSBPYmplY3QuY3JlYXRlKHRoaXMucHJvdG90eXBlLCB7XG5cdFx0XHRwcm9taXNlOiB7IHZhbHVlOiBvdGhlciBpbnN0YW5jZW9mIFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yID8gb3RoZXIgOiBvdGhlci5wcm9taXNlIH1cblx0XHR9KTtcblxuXHRcdHByb21pc2UuX3N0YXRlID0gU3RhdGUuUGVuZGluZztcblx0XHRwcm9taXNlLnByb21pc2UudGhlbihcblx0XHRcdGZ1bmN0aW9uICgpIHsgcHJvbWlzZS5fc3RhdGUgPSBTdGF0ZS5GdWxmaWxsZWQ7IH0sXG5cdFx0XHRmdW5jdGlvbiAoKSB7IHByb21pc2UuX3N0YXRlID0gU3RhdGUuUmVqZWN0ZWQ7IH1cblx0XHQpO1xuXG5cdFx0cmV0dXJuIHByb21pc2U7XG5cdH1cblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIG5ldyBQcm9taXNlLlxuXHQgKlxuXHQgKiBAY29uc3RydWN0b3Jcblx0ICpcblx0ICogQHBhcmFtIGV4ZWN1dG9yXG5cdCAqIFRoZSBleGVjdXRvciBmdW5jdGlvbiBpcyBjYWxsZWQgaW1tZWRpYXRlbHkgd2hlbiB0aGUgUHJvbWlzZVNoaW0gaXMgaW5zdGFudGlhdGVkLiBJdCBpcyByZXNwb25zaWJsZSBmb3Jcblx0ICogc3RhcnRpbmcgdGhlIGFzeW5jaHJvbm91cyBvcGVyYXRpb24gd2hlbiBpdCBpcyBpbnZva2VkLlxuXHQgKlxuXHQgKiBUaGUgZXhlY3V0b3IgbXVzdCBjYWxsIGVpdGhlciB0aGUgcGFzc2VkIGByZXNvbHZlYCBmdW5jdGlvbiB3aGVuIHRoZSBhc3luY2hyb25vdXMgb3BlcmF0aW9uIGhhcyBjb21wbGV0ZWRcblx0ICogc3VjY2Vzc2Z1bGx5LCBvciB0aGUgYHJlamVjdGAgZnVuY3Rpb24gd2hlbiB0aGUgb3BlcmF0aW9uIGZhaWxzLlxuXHQgKi9cblx0Y29uc3RydWN0b3IoZXhlY3V0b3I6IEV4ZWN1dG9yPFQ+KSB7XG5cdFx0Ly8gV3JhcCB0aGUgZXhlY3V0b3IgdG8gdmVyaWZ5IHRoYXQgdGhlIHRoZSByZXNvbHV0aW9uIHZhbHVlIGlzbid0IHRoaXMgcHJvbWlzZS4gU2luY2UgYW55IGluY29taW5nIHByb21pc2Vcblx0XHQvLyBzaG91bGQgYmUgd3JhcHBlZCwgdGhlIG5hdGl2ZSByZXNvbHZlciBjYW4ndCBhdXRvbWF0aWNhbGx5IGRldGVjdCBzZWxmLXJlc29sdXRpb24uXG5cdFx0dGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UuUHJvbWlzZUNvbnN0cnVjdG9yKDxFeGVjdXRvcjxUPj4gKChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdGV4ZWN1dG9yKFxuXHRcdFx0XHQodmFsdWUpID0+IHtcblx0XHRcdFx0XHRpZiAodmFsdWUgPT09IHRoaXMpIHtcblx0XHRcdFx0XHRcdHJlamVjdChuZXcgVHlwZUVycm9yKCdDYW5ub3QgY2hhaW4gYSBwcm9taXNlIHRvIGl0c2VsZicpKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0XHRyZXNvbHZlKHZhbHVlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0sXG5cdFx0XHRcdGZ1bmN0aW9uIChyZWFzb24pOiB2b2lkIHtcblx0XHRcdFx0XHRyZWplY3QocmVhc29uKTtcblx0XHRcdFx0fVxuXHRcdFx0KTtcblx0XHR9KSk7XG5cblx0XHR0aGlzLl9zdGF0ZSA9IFN0YXRlLlBlbmRpbmc7XG5cdFx0dGhpcy5wcm9taXNlLnRoZW4oXG5cdFx0XHQoKSA9PiB7IHRoaXMuX3N0YXRlID0gU3RhdGUuRnVsZmlsbGVkOyB9LFxuXHRcdFx0KCkgPT4geyB0aGlzLl9zdGF0ZSA9IFN0YXRlLlJlamVjdGVkOyB9XG5cdFx0KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBbiBvYmplY3Qgd3JhcHBlZCBieSB0aGlzIGNsYXNzIHRoYXQgYWN0dWFsbHkgaW1wbGVtZW50cyB0aGUgUHJvbWlzZSBBUEkuXG5cdCAqL1xuXHRwcml2YXRlIHByb21pc2U6IGFueTtcblxuXHQvKipcblx0ICogVGhlIGludGVybmFsIHN0YXRlIG9mIHRoaXMgcHJvbWlzZS4gVGhpcyBtYXkgYmUgdXBkYXRlZCBkaXJlY3RseSBieSBzdWJjbGFzc2VzLlxuXHQgKi9cblx0cHJvdGVjdGVkIF9zdGF0ZTogU3RhdGU7XG5cblx0LyoqXG5cdCAqIEFkZHMgYSBjYWxsYmFjayB0byB0aGUgcHJvbWlzZSB0byBiZSBpbnZva2VkIHdoZW4gdGhlIGFzeW5jaHJvbm91cyBvcGVyYXRpb24gdGhyb3dzIGFuIGVycm9yLlxuXHQgKi9cblx0Y2F0Y2g8VT4ob25SZWplY3RlZDogKHJlYXNvbj86IEVycm9yKSA9PiAoVSB8IFRoZW5hYmxlPFU+KSk6IFByb21pc2U8VT47XG5cdGNhdGNoPFU+KG9uUmVqZWN0ZWQ6IChyZWFzb24/OiBFcnJvcikgPT4gdm9pZCk6IFByb21pc2U8VT4ge1xuXHRcdHJldHVybiB0aGlzLnRoZW48VT4obnVsbCwgb25SZWplY3RlZCk7XG5cdH1cblxuXHQvKipcblx0ICogQWxsb3dzIGZvciBjbGVhbnVwIGFjdGlvbnMgdG8gYmUgcGVyZm9ybWVkIGFmdGVyIHJlc29sdXRpb24gb2YgYSBQcm9taXNlLlxuXHQgKi9cblx0ZmluYWxseShjYWxsYmFjazogKCkgPT4gdm9pZCB8IFRoZW5hYmxlPGFueT4pOiBQcm9taXNlPFQ+IHtcblx0XHQvLyBIYW5kbGVyIHRvIGJlIHVzZWQgZm9yIGZ1bGZpbGxtZW50IGFuZCByZWplY3Rpb247IHdoZXRoZXIgaXQgd2FzIGZ1bGZpbGxlZCBvciByZWplY3RlZCBpcyBleHBsaWNpdGx5XG5cdFx0Ly8gaW5kaWNhdGVkIGJ5IHRoZSBmaXJzdCBhcmd1bWVudFxuXHRcdGZ1bmN0aW9uIGhhbmRsZXIocmVqZWN0ZWQ6IGJvb2xlYW4sIHZhbHVlT3JFcnJvcjogYW55KSB7XG5cdFx0XHQvLyBJZiBjYWxsYmFjayB0aHJvd3MsIHRoZSBoYW5kbGVyIHdpbGwgdGhyb3dcblx0XHRcdGNvbnN0IHJlc3VsdCA9IGNhbGxiYWNrKCk7XG5cdFx0XHRpZiAoaXNUaGVuYWJsZShyZXN1bHQpKSB7XG5cdFx0XHRcdC8vIElmIGNhbGxiYWNrIHJldHVybnMgYSBUaGVuYWJsZSB0aGF0IHJlamVjdHMsIHJldHVybiB0aGUgcmVqZWN0aW9uLiBPdGhlcndpc2UsIHJldHVybiBvciB0aHJvdyB0aGVcblx0XHRcdFx0Ly8gaW5jb21pbmcgdmFsdWUgYXMgYXBwcm9wcmlhdGUgd2hlbiB0aGUgVGhlbmFibGUgcmVzb2x2ZXMuXG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzdWx0KS50aGVuKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0XHRpZiAocmVqZWN0ZWQpIHtcblx0XHRcdFx0XHRcdHRocm93IHZhbHVlT3JFcnJvcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHZhbHVlT3JFcnJvcjtcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0Ly8gSWYgY2FsbGJhY2sgcmV0dXJucyBhIG5vbi1UaGVuYWJsZSwgcmV0dXJuIG9yIHRocm93IHRoZSBpbmNvbWluZyB2YWx1ZSBhcyBhcHByb3ByaWF0ZS5cblx0XHRcdFx0aWYgKHJlamVjdGVkKSB7XG5cdFx0XHRcdFx0dGhyb3cgdmFsdWVPckVycm9yO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiB2YWx1ZU9yRXJyb3I7XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdHJldHVybiB0aGlzLnRoZW48VD4oaGFuZGxlci5iaW5kKG51bGwsIGZhbHNlKSwgaGFuZGxlci5iaW5kKG51bGwsIHRydWUpKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGUgY3VycmVudCBQcm9taXNlIHN0YXRlLlxuXHQgKi9cblx0Z2V0IHN0YXRlKCk6IFN0YXRlIHtcblx0XHRyZXR1cm4gdGhpcy5fc3RhdGU7XG5cdH1cblxuXHQvKipcblx0ICogQWRkcyBhIGNhbGxiYWNrIHRvIHRoZSBwcm9taXNlIHRvIGJlIGludm9rZWQgd2hlbiB0aGUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbiBjb21wbGV0ZXMgc3VjY2Vzc2Z1bGx5LlxuXHQgKi9cblx0dGhlbjxVPihvbkZ1bGZpbGxlZD86ICh2YWx1ZT86IFQpID0+IChVIHwgVGhlbmFibGU8VT4pLCBvblJlamVjdGVkPzogKHJlYXNvbj86IEVycm9yKSA9PiB2b2lkKTogUHJvbWlzZTxVPjtcblx0dGhlbjxVPihvbkZ1bGZpbGxlZD86ICh2YWx1ZT86IFQpID0+IChVIHwgVGhlbmFibGU8VT4pLCBvblJlamVjdGVkPzogKHJlYXNvbj86IEVycm9yKSA9PiAoVSB8IFRoZW5hYmxlPFU+KSk6IFByb21pc2U8VT4ge1xuXHRcdHJldHVybiAoPHR5cGVvZiBQcm9taXNlPiB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMucHJvbWlzZS50aGVuKG9uRnVsZmlsbGVkLCBvblJlamVjdGVkKSk7XG5cdH1cbn1cblxuLyoqXG4gKiBUaGUgU3RhdGUgZW51bSByZXByZXNlbnRzIHRoZSBwb3NzaWJsZSBzdGF0ZXMgb2YgYSBwcm9taXNlLlxuICovXG5leHBvcnQgZW51bSBTdGF0ZSB7XG5cdEZ1bGZpbGxlZCxcblx0UGVuZGluZyxcblx0UmVqZWN0ZWRcbn1cblxuLyoqXG4gKiBUaGVuYWJsZSByZXByZXNlbnRzIGFueSBvYmplY3Qgd2l0aCBhIGNhbGxhYmxlIGB0aGVuYCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUaGVuYWJsZTxUPiB7XG5cdHRoZW48VT4ob25GdWxmaWxsZWQ/OiAodmFsdWU/OiBUKSA9PiBVIHwgVGhlbmFibGU8VT4sIG9uUmVqZWN0ZWQ/OiAoZXJyb3I/OiBhbnkpID0+IFUgfCBUaGVuYWJsZTxVPik6IFRoZW5hYmxlPFU+O1xuXHR0aGVuPFU+KG9uRnVsZmlsbGVkPzogKHZhbHVlPzogVCkgPT4gVSB8IFRoZW5hYmxlPFU+LCBvblJlamVjdGVkPzogKGVycm9yPzogYW55KSA9PiB2b2lkKTogVGhlbmFibGU8VT47XG59XG4iXX0= |
35
queue.js
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var global_1 = require('./global'); | ||
@@ -34,11 +35,11 @@ var has_1 = require('./has'); | ||
if (!has_1.default('microtasks')) { | ||
var isMicroTaskQueued = false; | ||
var isMicroTaskQueued_1 = false; | ||
microTasks = []; | ||
checkMicroTaskQueue = function () { | ||
if (!isMicroTaskQueued) { | ||
isMicroTaskQueued = true; | ||
if (!isMicroTaskQueued_1) { | ||
isMicroTaskQueued_1 = true; | ||
exports.queueTask(function () { | ||
isMicroTaskQueued = false; | ||
isMicroTaskQueued_1 = false; | ||
if (microTasks.length) { | ||
var item; | ||
var item = void 0; | ||
while (item = microTasks.shift()) { | ||
@@ -63,3 +64,3 @@ executeTask(item); | ||
if (has_1.default('postmessage')) { | ||
var queue = []; | ||
var queue_1 = []; | ||
global_1.default.addEventListener('message', function (event) { | ||
@@ -69,4 +70,4 @@ // Confirm that the event was triggered by the current window and by this particular implementation. | ||
event.stopPropagation(); | ||
if (queue.length) { | ||
executeTask(queue.shift()); | ||
if (queue_1.length) { | ||
executeTask(queue_1.shift()); | ||
} | ||
@@ -76,3 +77,3 @@ } | ||
enqueue = function (item) { | ||
queue.push(item); | ||
queue_1.push(item); | ||
global_1.default.postMessage('dojo-queue-message', '*'); | ||
@@ -163,7 +164,7 @@ }; | ||
var HostMutationObserver = global_1.default.MutationObserver || global_1.default.WebKitMutationObserver; | ||
var node = document.createElement('div'); | ||
var queue = []; | ||
var node_1 = document.createElement('div'); | ||
var queue_2 = []; | ||
var observer = new HostMutationObserver(function () { | ||
while (queue.length > 0) { | ||
var item = queue.shift(); | ||
while (queue_2.length > 0) { | ||
var item = queue_2.shift(); | ||
if (item && item.isActive) { | ||
@@ -174,6 +175,6 @@ item.callback(); | ||
}); | ||
observer.observe(node, { attributes: true }); | ||
observer.observe(node_1, { attributes: true }); | ||
enqueue = function (item) { | ||
queue.push(item); | ||
node.setAttribute('queueStatus', '1'); | ||
queue_2.push(item); | ||
node_1.setAttribute('queueStatus', '1'); | ||
}; | ||
@@ -197,2 +198,2 @@ } | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcXVldWUudHMiXSwibmFtZXMiOlsiZXhlY3V0ZVRhc2siLCJnZXRRdWV1ZUhhbmRsZSIsInF1ZXVlVGFzayIsInF1ZXVlQW5pbWF0aW9uVGFzayJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFBQSx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFDOUIsb0JBQWdCLE9BQU8sQ0FBQyxDQUFBO0lBR3hCLHFCQUFxQixJQUFlO1FBQ25DQSxFQUFFQSxDQUFDQSxDQUFDQSxJQUFJQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNuQkEsSUFBSUEsQ0FBQ0EsUUFBUUEsRUFBRUEsQ0FBQ0E7UUFDakJBLENBQUNBO0lBQ0ZBLENBQUNBO0lBRUQsd0JBQXdCLElBQWUsRUFBRSxVQUFvQztRQUM1RUMsTUFBTUEsQ0FBQ0E7WUFDTkEsT0FBT0EsRUFBRUE7Z0JBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFhLENBQUMsQ0FBQztnQkFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2dCQUVyQixFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUNoQixVQUFVLEVBQUUsQ0FBQztnQkFDZCxDQUFDO1lBQ0YsQ0FBQztTQUNEQSxDQUFDQTtJQUNIQSxDQUFDQTtJQVlELDhGQUE4RjtJQUM5Riw4RkFBOEY7SUFDOUYsSUFBSSxtQkFBK0IsQ0FBQztJQUNwQyxJQUFJLFVBQXVCLENBQUM7SUFDNUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hCLElBQUksaUJBQWlCLEdBQVksS0FBSyxDQUFDO1FBRXZDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsbUJBQW1CLEdBQUc7WUFDckIsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLGlCQUFpQixHQUFHLElBQUksQ0FBQztnQkFDekIsaUJBQVMsQ0FBQztvQkFDVCxpQkFBaUIsR0FBRyxLQUFLLENBQUM7b0JBRTFCLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO3dCQUN2QixJQUFJLElBQWUsQ0FBQzt3QkFDcEIsT0FBTyxJQUFJLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7NEJBQ2xDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDbkIsQ0FBQztvQkFDRixDQUFDO2dCQUNGLENBQUMsQ0FBQyxDQUFDO1lBQ0osQ0FBQztRQUNGLENBQUMsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNVLGlCQUFTLEdBQUcsQ0FBQztRQUN6QixJQUFJLFVBQW1DLENBQUM7UUFDeEMsSUFBSSxPQUFrQyxDQUFDO1FBRXZDLHVHQUF1RztRQUN2RyxFQUFFLENBQUMsQ0FBQyxhQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hCLElBQU0sS0FBSyxHQUFnQixFQUFFLENBQUM7WUFFOUIsZ0JBQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsVUFBVSxLQUF1QjtnQkFDbkUsb0dBQW9HO2dCQUNwRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLGdCQUFNLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7b0JBQ3BFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztvQkFFeEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7d0JBQ2xCLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztvQkFDNUIsQ0FBQztnQkFDRixDQUFDO1lBQ0YsQ0FBQyxDQUFDLENBQUM7WUFFSCxPQUFPLEdBQUcsVUFBVSxJQUFlO2dCQUNsQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNqQixnQkFBTSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUMvQyxDQUFDLENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLGFBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsVUFBVSxHQUFHLGdCQUFNLENBQUMsY0FBYyxDQUFDO1lBQ25DLE9BQU8sR0FBRyxVQUFVLElBQWU7Z0JBQ2xDLE1BQU0sQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNuRCxDQUFDLENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUM7WUFDTCxVQUFVLEdBQUcsZ0JBQU0sQ0FBQyxZQUFZLENBQUM7WUFDakMsT0FBTyxHQUFHLFVBQVUsSUFBZTtnQkFDbEMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxDQUFDLENBQUM7UUFDSCxDQUFDO1FBRUQsbUJBQW1CLFFBQWlDO1lBQ25EQyxJQUFNQSxJQUFJQSxHQUFjQTtnQkFDdkJBLFFBQVFBLEVBQUVBLElBQUlBO2dCQUNkQSxRQUFRQSxFQUFFQSxRQUFRQTthQUNsQkEsQ0FBQ0E7WUFDRkEsSUFBTUEsRUFBRUEsR0FBUUEsT0FBT0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7WUFFOUJBLE1BQU1BLENBQUNBLGNBQWNBLENBQUNBLElBQUlBLEVBQUVBLFVBQVVBLElBQUlBO2dCQUN6QyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEIsQ0FBQyxDQUFDQSxDQUFDQTtRQUNKQSxDQUFDQTtRQUFBLENBQUM7UUFFRixnREFBZ0Q7UUFDaEQsTUFBTSxDQUFDLGFBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxTQUFTLEdBQUcsVUFBVSxRQUFpQztZQUNqRixtQkFBbUIsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDO0lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUVMOzs7Ozs7OztPQVFHO0lBQ1UsMEJBQWtCLEdBQUcsQ0FBQztRQUNsQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsTUFBTSxDQUFDLGlCQUFTLENBQUM7UUFDbEIsQ0FBQztRQUVELDRCQUE0QixRQUFpQztZQUM1REMsSUFBTUEsSUFBSUEsR0FBY0E7Z0JBQ3ZCQSxRQUFRQSxFQUFFQSxJQUFJQTtnQkFDZEEsUUFBUUEsRUFBRUEsUUFBUUE7YUFDbEJBLENBQUNBO1lBQ0ZBLElBQU1BLEtBQUtBLEdBQVdBLHFCQUFxQkEsQ0FBQ0EsV0FBV0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsSUFBSUEsRUFBRUEsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFFMUVBLE1BQU1BLENBQUNBLGNBQWNBLENBQUNBLElBQUlBLEVBQUVBO2dCQUMzQixvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QixDQUFDLENBQUNBLENBQUNBO1FBQ0pBLENBQUNBO1FBRUQsZ0RBQWdEO1FBQ2hELE1BQU0sQ0FBQyxhQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsa0JBQWtCLEdBQUcsVUFBVSxRQUFpQztZQUMxRixtQkFBbUIsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUM7SUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRUw7Ozs7Ozs7OztPQVNHO0lBQ1Esc0JBQWMsR0FBRyxDQUFDO1FBQzVCLElBQUksT0FBa0MsQ0FBQztRQUV2QyxFQUFFLENBQUMsQ0FBQyxhQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sR0FBRyxVQUFVLElBQWU7Z0JBQ2xDLGdCQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsYUFBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QixPQUFPLEdBQUcsVUFBVSxJQUFlO2dCQUNsQyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2hELENBQUMsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsYUFBRyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLElBQU0sb0JBQW9CLEdBQUcsZ0JBQU0sQ0FBQyxnQkFBZ0IsSUFBSSxnQkFBTSxDQUFDLHNCQUFzQixDQUFDO1lBQ3RGLElBQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0MsSUFBTSxLQUFLLEdBQWdCLEVBQUUsQ0FBQztZQUM5QixJQUFNLFFBQVEsR0FBRyxJQUFJLG9CQUFvQixDQUFDO2dCQUN6QyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3pCLElBQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDM0IsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3dCQUMzQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ2pCLENBQUM7Z0JBQ0YsQ0FBQztZQUNGLENBQUMsQ0FBQyxDQUFDO1lBRUgsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUU3QyxPQUFPLEdBQUcsVUFBVSxJQUFlO2dCQUNsQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNqQixJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUN2QyxDQUFDLENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUM7WUFDTCxPQUFPLEdBQUcsVUFBVSxJQUFlO2dCQUNsQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUN0QixVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZCLENBQUMsQ0FBQztRQUNILENBQUM7UUFFRCxNQUFNLENBQUMsVUFBVSxRQUFpQztZQUNqRCxJQUFNLElBQUksR0FBYztnQkFDdkIsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsUUFBUSxFQUFFLFFBQVE7YUFDbEIsQ0FBQztZQUVGLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVkLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDO0lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnbG9iYWwgZnJvbSAnLi9nbG9iYWwnO1xuaW1wb3J0IGhhcyBmcm9tICcuL2hhcyc7XG5pbXBvcnQgeyBIYW5kbGUgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5mdW5jdGlvbiBleGVjdXRlVGFzayhpdGVtOiBRdWV1ZUl0ZW0pOiB2b2lkIHtcblx0aWYgKGl0ZW0uaXNBY3RpdmUpIHtcblx0XHRpdGVtLmNhbGxiYWNrKCk7XG5cdH1cbn1cblxuZnVuY3Rpb24gZ2V0UXVldWVIYW5kbGUoaXRlbTogUXVldWVJdGVtLCBkZXN0cnVjdG9yPzogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpOiBIYW5kbGUge1xuXHRyZXR1cm4ge1xuXHRcdGRlc3Ryb3k6IGZ1bmN0aW9uICgpIHtcblx0XHRcdHRoaXMuZGVzdHJveSA9IGZ1bmN0aW9uICgpIHt9O1xuXHRcdFx0aXRlbS5pc0FjdGl2ZSA9IGZhbHNlO1xuXHRcdFx0aXRlbS5jYWxsYmFjayA9IG51bGw7XG5cblx0XHRcdGlmIChkZXN0cnVjdG9yKSB7XG5cdFx0XHRcdGRlc3RydWN0b3IoKTtcblx0XHRcdH1cblx0XHR9XG5cdH07XG59XG5cbmludGVyZmFjZSBQb3N0TWVzc2FnZUV2ZW50IGV4dGVuZHMgRXZlbnQge1xuXHRzb3VyY2U6IGFueTtcblx0ZGF0YTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXVlSXRlbSB7XG5cdGlzQWN0aXZlOiBib29sZWFuO1xuXHRjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk7XG59XG5cbi8vIFdoZW4gbm8gbWVjaGFuaXNtIGZvciByZWdpc3RlcmluZyBtaWNyb3Rhc2tzIGlzIGV4cG9zZWQgYnkgdGhlIGVudmlyb25tZW50LCBtaWNyb3Rhc2tzIHdpbGxcbi8vIGJlIHF1ZXVlZCBhbmQgdGhlbiBleGVjdXRlZCBpbiBhIHNpbmdsZSBtYWNyb3Rhc2sgYmVmb3JlIHRoZSBvdGhlciBtYWNyb3Rhc2tzIGFyZSBleGVjdXRlZC5cbmxldCBjaGVja01pY3JvVGFza1F1ZXVlOiAoKSA9PiB2b2lkO1xubGV0IG1pY3JvVGFza3M6IFF1ZXVlSXRlbVtdO1xuaWYgKCFoYXMoJ21pY3JvdGFza3MnKSkge1xuXHRsZXQgaXNNaWNyb1Rhc2tRdWV1ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHRtaWNyb1Rhc2tzID0gW107XG5cdGNoZWNrTWljcm9UYXNrUXVldWUgPSBmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0aWYgKCFpc01pY3JvVGFza1F1ZXVlZCkge1xuXHRcdFx0aXNNaWNyb1Rhc2tRdWV1ZWQgPSB0cnVlO1xuXHRcdFx0cXVldWVUYXNrKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0aXNNaWNyb1Rhc2tRdWV1ZWQgPSBmYWxzZTtcblxuXHRcdFx0XHRpZiAobWljcm9UYXNrcy5sZW5ndGgpIHtcblx0XHRcdFx0XHRsZXQgaXRlbTogUXVldWVJdGVtO1xuXHRcdFx0XHRcdHdoaWxlIChpdGVtID0gbWljcm9UYXNrcy5zaGlmdCgpKSB7XG5cdFx0XHRcdFx0XHRleGVjdXRlVGFzayhpdGVtKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH1cblx0fTtcbn1cblxuLyoqXG4gKiBTY2hlZHVsZXMgYSBjYWxsYmFjayB0byB0aGUgbWFjcm90YXNrIHF1ZXVlLlxuICpcbiAqIEBwYXJhbSBjYWxsYmFjayB0aGUgZnVuY3Rpb24gdG8gYmUgcXVldWVkIGFuZCBsYXRlciBleGVjdXRlZC5cbiAqIEByZXR1cm5zIEFuIG9iamVjdCB3aXRoIGEgYGRlc3Ryb3lgIG1ldGhvZCB0aGF0LCB3aGVuIGNhbGxlZCwgcHJldmVudHMgdGhlIHJlZ2lzdGVyZWQgY2FsbGJhY2sgZnJvbSBleGVjdXRpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBxdWV1ZVRhc2sgPSAoZnVuY3Rpb24oKSB7XG5cdGxldCBkZXN0cnVjdG9yOiAoLi4uYXJnczogYW55W10pID0+IGFueTtcblx0bGV0IGVucXVldWU6IChpdGVtOiBRdWV1ZUl0ZW0pID0+IHZvaWQ7XG5cblx0Ly8gU2luY2UgdGhlIElFIGltcGxlbWVudGF0aW9uIG9mIGBzZXRJbW1lZGlhdGVgIGlzIG5vdCBmbGF3bGVzcywgd2Ugd2lsbCB0ZXN0IGZvciBgcG9zdE1lc3NhZ2VgIGZpcnN0LlxuXHRpZiAoaGFzKCdwb3N0bWVzc2FnZScpKSB7XG5cdFx0Y29uc3QgcXVldWU6IFF1ZXVlSXRlbVtdID0gW107XG5cblx0XHRnbG9iYWwuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGZ1bmN0aW9uIChldmVudDogUG9zdE1lc3NhZ2VFdmVudCk6IHZvaWQge1xuXHRcdFx0Ly8gQ29uZmlybSB0aGF0IHRoZSBldmVudCB3YXMgdHJpZ2dlcmVkIGJ5IHRoZSBjdXJyZW50IHdpbmRvdyBhbmQgYnkgdGhpcyBwYXJ0aWN1bGFyIGltcGxlbWVudGF0aW9uLlxuXHRcdFx0aWYgKGV2ZW50LnNvdXJjZSA9PT0gZ2xvYmFsICYmIGV2ZW50LmRhdGEgPT09ICdkb2pvLXF1ZXVlLW1lc3NhZ2UnKSB7XG5cdFx0XHRcdGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG5cdFx0XHRcdGlmIChxdWV1ZS5sZW5ndGgpIHtcblx0XHRcdFx0XHRleGVjdXRlVGFzayhxdWV1ZS5zaGlmdCgpKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXG5cdFx0ZW5xdWV1ZSA9IGZ1bmN0aW9uIChpdGVtOiBRdWV1ZUl0ZW0pOiB2b2lkIHtcblx0XHRcdHF1ZXVlLnB1c2goaXRlbSk7XG5cdFx0XHRnbG9iYWwucG9zdE1lc3NhZ2UoJ2Rvam8tcXVldWUtbWVzc2FnZScsICcqJyk7XG5cdFx0fTtcblx0fVxuXHRlbHNlIGlmIChoYXMoJ3NldGltbWVkaWF0ZScpKSB7XG5cdFx0ZGVzdHJ1Y3RvciA9IGdsb2JhbC5jbGVhckltbWVkaWF0ZTtcblx0XHRlbnF1ZXVlID0gZnVuY3Rpb24gKGl0ZW06IFF1ZXVlSXRlbSk6IGFueSB7XG5cdFx0XHRyZXR1cm4gc2V0SW1tZWRpYXRlKGV4ZWN1dGVUYXNrLmJpbmQobnVsbCwgaXRlbSkpO1xuXHRcdH07XG5cdH1cblx0ZWxzZSB7XG5cdFx0ZGVzdHJ1Y3RvciA9IGdsb2JhbC5jbGVhclRpbWVvdXQ7XG5cdFx0ZW5xdWV1ZSA9IGZ1bmN0aW9uIChpdGVtOiBRdWV1ZUl0ZW0pOiBhbnkge1xuXHRcdFx0cmV0dXJuIHNldFRpbWVvdXQoZXhlY3V0ZVRhc2suYmluZChudWxsLCBpdGVtKSwgMCk7XG5cdFx0fTtcblx0fVxuXG5cdGZ1bmN0aW9uIHF1ZXVlVGFzayhjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpOiBIYW5kbGUge1xuXHRcdGNvbnN0IGl0ZW06IFF1ZXVlSXRlbSA9IHtcblx0XHRcdGlzQWN0aXZlOiB0cnVlLFxuXHRcdFx0Y2FsbGJhY2s6IGNhbGxiYWNrXG5cdFx0fTtcblx0XHRjb25zdCBpZDogYW55ID0gZW5xdWV1ZShpdGVtKTtcblxuXHRcdHJldHVybiBnZXRRdWV1ZUhhbmRsZShpdGVtLCBkZXN0cnVjdG9yICYmIGZ1bmN0aW9uICgpIHtcblx0XHRcdGRlc3RydWN0b3IoaWQpO1xuXHRcdH0pO1xuXHR9O1xuXG5cdC8vIFRPRE86IFVzZSBhc3BlY3QuYmVmb3JlIHdoZW4gaXQgaXMgYXZhaWxhYmxlLlxuXHRyZXR1cm4gaGFzKCdtaWNyb3Rhc2tzJykgPyBxdWV1ZVRhc2sgOiBmdW5jdGlvbiAoY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogSGFuZGxlIHtcblx0XHRjaGVja01pY3JvVGFza1F1ZXVlKCk7XG5cdFx0cmV0dXJuIHF1ZXVlVGFzayhjYWxsYmFjayk7XG5cdH07XG59KSgpO1xuXG4vKipcbiAqIFNjaGVkdWxlcyBhbiBhbmltYXRpb24gdGFzayB3aXRoIGB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lYCBpZiBpdCBleGlzdHMsIG9yIHdpdGggYHF1ZXVlVGFza2Agb3RoZXJ3aXNlLlxuICpcbiAqIFNpbmNlIHJlcXVlc3RBbmltYXRpb25GcmFtZSdzIGJlaGF2aW9yIGRvZXMgbm90IG1hdGNoIHRoYXQgZXhwZWN0ZWQgZnJvbSBgcXVldWVUYXNrYCwgaXQgaXMgbm90IHVzZWQgdGhlcmUuXG4gKiBIb3dldmVyLCBhdCB0aW1lcyBpdCBtYWtlcyBtb3JlIHNlbnNlIHRvIGRlbGVnYXRlIHRvIHJlcXVlc3RBbmltYXRpb25GcmFtZTsgaGVuY2UgdGhlIGZvbGxvd2luZyBtZXRob2QuXG4gKlxuICogQHBhcmFtIGNhbGxiYWNrIHRoZSBmdW5jdGlvbiB0byBiZSBxdWV1ZWQgYW5kIGxhdGVyIGV4ZWN1dGVkLlxuICogQHJldHVybnMgQW4gb2JqZWN0IHdpdGggYSBgZGVzdHJveWAgbWV0aG9kIHRoYXQsIHdoZW4gY2FsbGVkLCBwcmV2ZW50cyB0aGUgcmVnaXN0ZXJlZCBjYWxsYmFjayBmcm9tIGV4ZWN1dGluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IHF1ZXVlQW5pbWF0aW9uVGFzayA9IChmdW5jdGlvbiAoKSB7XG5cdGlmICghaGFzKCdyYWYnKSkge1xuXHRcdHJldHVybiBxdWV1ZVRhc2s7XG5cdH1cblxuXHRmdW5jdGlvbiBxdWV1ZUFuaW1hdGlvblRhc2soY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogSGFuZGxlIHtcblx0XHRjb25zdCBpdGVtOiBRdWV1ZUl0ZW0gPSB7XG5cdFx0XHRpc0FjdGl2ZTogdHJ1ZSxcblx0XHRcdGNhbGxiYWNrOiBjYWxsYmFja1xuXHRcdH07XG5cdFx0Y29uc3QgcmFmSWQ6IG51bWJlciA9IHJlcXVlc3RBbmltYXRpb25GcmFtZShleGVjdXRlVGFzay5iaW5kKG51bGwsIGl0ZW0pKTtcblxuXHRcdHJldHVybiBnZXRRdWV1ZUhhbmRsZShpdGVtLCBmdW5jdGlvbiAoKSB7XG5cdFx0XHRjYW5jZWxBbmltYXRpb25GcmFtZShyYWZJZCk7XG5cdFx0fSk7XG5cdH1cblxuXHQvLyBUT0RPOiBVc2UgYXNwZWN0LmJlZm9yZSB3aGVuIGl0IGlzIGF2YWlsYWJsZS5cblx0cmV0dXJuIGhhcygnbWljcm90YXNrcycpID8gcXVldWVBbmltYXRpb25UYXNrIDogZnVuY3Rpb24gKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IGFueSk6IEhhbmRsZSB7XG5cdFx0Y2hlY2tNaWNyb1Rhc2tRdWV1ZSgpO1xuXHRcdHJldHVybiBxdWV1ZUFuaW1hdGlvblRhc2soY2FsbGJhY2spO1xuXHR9O1xufSkoKTtcblxuLyoqXG4gKiBTY2hlZHVsZXMgYSBjYWxsYmFjayB0byB0aGUgbWljcm90YXNrIHF1ZXVlLlxuICpcbiAqIEFueSBjYWxsYmFja3MgcmVnaXN0ZXJlZCB3aXRoIGBxdWV1ZU1pY3JvVGFza2Agd2lsbCBiZSBleGVjdXRlZCBiZWZvcmUgdGhlIG5leHQgbWFjcm90YXNrLiBJZiBubyBuYXRpdmVcbiAqIG1lY2hhbmlzbSBmb3Igc2NoZWR1bGluZyBtYWNyb3Rhc2tzIGlzIGV4cG9zZWQsIHRoZW4gYW55IGNhbGxiYWNrcyB3aWxsIGJlIGZpcmVkIGJlZm9yZSBhbnkgbWFjcm90YXNrXG4gKiByZWdpc3RlcmVkIHdpdGggYHF1ZXVlVGFza2Agb3IgYHF1ZXVlQW5pbWF0aW9uVGFza2AuXG4gKlxuICogQHBhcmFtIGNhbGxiYWNrIHRoZSBmdW5jdGlvbiB0byBiZSBxdWV1ZWQgYW5kIGxhdGVyIGV4ZWN1dGVkLlxuICogQHJldHVybnMgQW4gb2JqZWN0IHdpdGggYSBgZGVzdHJveWAgbWV0aG9kIHRoYXQsIHdoZW4gY2FsbGVkLCBwcmV2ZW50cyB0aGUgcmVnaXN0ZXJlZCBjYWxsYmFjayBmcm9tIGV4ZWN1dGluZy5cbiAqL1xuZXhwb3J0IGxldCBxdWV1ZU1pY3JvVGFzayA9IChmdW5jdGlvbiAoKSB7XG5cdGxldCBlbnF1ZXVlOiAoaXRlbTogUXVldWVJdGVtKSA9PiB2b2lkO1xuXG5cdGlmIChoYXMoJ2hvc3Qtbm9kZScpKSB7XG5cdFx0ZW5xdWV1ZSA9IGZ1bmN0aW9uIChpdGVtOiBRdWV1ZUl0ZW0pOiB2b2lkIHtcblx0XHRcdGdsb2JhbC5wcm9jZXNzLm5leHRUaWNrKGV4ZWN1dGVUYXNrLmJpbmQobnVsbCwgaXRlbSkpO1xuXHRcdH07XG5cdH1cblx0ZWxzZSBpZiAoaGFzKCdwcm9taXNlJykpIHtcblx0XHRlbnF1ZXVlID0gZnVuY3Rpb24gKGl0ZW06IFF1ZXVlSXRlbSk6IHZvaWQge1xuXHRcdFx0Z2xvYmFsLlByb21pc2UucmVzb2x2ZShpdGVtKS50aGVuKGV4ZWN1dGVUYXNrKTtcblx0XHR9O1xuXHR9XG5cdGVsc2UgaWYgKGhhcygnZG9tLW11dGF0aW9ub2JzZXJ2ZXInKSkge1xuXHRcdGNvbnN0IEhvc3RNdXRhdGlvbk9ic2VydmVyID0gZ2xvYmFsLk11dGF0aW9uT2JzZXJ2ZXIgfHwgZ2xvYmFsLldlYktpdE11dGF0aW9uT2JzZXJ2ZXI7XG5cdFx0Y29uc3Qgbm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXHRcdGNvbnN0IHF1ZXVlOiBRdWV1ZUl0ZW1bXSA9IFtdO1xuXHRcdGNvbnN0IG9ic2VydmVyID0gbmV3IEhvc3RNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uICgpOiB2b2lkIHtcblx0XHRcdHdoaWxlIChxdWV1ZS5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdGNvbnN0IGl0ZW0gPSBxdWV1ZS5zaGlmdCgpO1xuXHRcdFx0XHRpZiAoaXRlbSAmJiBpdGVtLmlzQWN0aXZlKSB7XG5cdFx0XHRcdFx0aXRlbS5jYWxsYmFjaygpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHRvYnNlcnZlci5vYnNlcnZlKG5vZGUsIHsgYXR0cmlidXRlczogdHJ1ZSB9KTtcblxuXHRcdGVucXVldWUgPSBmdW5jdGlvbiAoaXRlbTogUXVldWVJdGVtKTogdm9pZCB7XG5cdFx0XHRxdWV1ZS5wdXNoKGl0ZW0pO1xuXHRcdFx0bm9kZS5zZXRBdHRyaWJ1dGUoJ3F1ZXVlU3RhdHVzJywgJzEnKTtcblx0XHR9O1xuXHR9XG5cdGVsc2Uge1xuXHRcdGVucXVldWUgPSBmdW5jdGlvbiAoaXRlbTogUXVldWVJdGVtKTogdm9pZCB7XG5cdFx0XHRjaGVja01pY3JvVGFza1F1ZXVlKCk7XG5cdFx0XHRtaWNyb1Rhc2tzLnB1c2goaXRlbSk7XG5cdFx0fTtcblx0fVxuXG5cdHJldHVybiBmdW5jdGlvbiAoY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogSGFuZGxlIHtcblx0XHRjb25zdCBpdGVtOiBRdWV1ZUl0ZW0gPSB7XG5cdFx0XHRpc0FjdGl2ZTogdHJ1ZSxcblx0XHRcdGNhbGxiYWNrOiBjYWxsYmFja1xuXHRcdH07XG5cblx0XHRlbnF1ZXVlKGl0ZW0pO1xuXG5cdFx0cmV0dXJuIGdldFF1ZXVlSGFuZGxlKGl0ZW0pO1xuXHR9O1xufSkoKTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcXVldWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsdUJBQW1CLFVBQVUsQ0FBQyxDQUFBO0lBQzlCLG9CQUFnQixPQUFPLENBQUMsQ0FBQTtJQUd4QixxQkFBcUIsSUFBZTtRQUNuQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsQ0FBQztJQUNGLENBQUM7SUFFRCx3QkFBd0IsSUFBZSxFQUFFLFVBQW9DO1FBQzVFLE1BQU0sQ0FBQztZQUNOLE9BQU8sRUFBRTtnQkFDUixJQUFJLENBQUMsT0FBTyxHQUFHLGNBQWEsQ0FBQyxDQUFDO2dCQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7Z0JBRXJCLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7b0JBQ2hCLFVBQVUsRUFBRSxDQUFDO2dCQUNkLENBQUM7WUFDRixDQUFDO1NBQ0QsQ0FBQztJQUNILENBQUM7SUFZRCw4RkFBOEY7SUFDOUYsOEZBQThGO0lBQzlGLElBQUksbUJBQStCLENBQUM7SUFDcEMsSUFBSSxVQUF1QixDQUFDO0lBQzVCLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QixJQUFJLG1CQUFpQixHQUFZLEtBQUssQ0FBQztRQUV2QyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLG1CQUFtQixHQUFHO1lBQ3JCLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQWlCLENBQUMsQ0FBQyxDQUFDO2dCQUN4QixtQkFBaUIsR0FBRyxJQUFJLENBQUM7Z0JBQ3pCLGlCQUFTLENBQUM7b0JBQ1QsbUJBQWlCLEdBQUcsS0FBSyxDQUFDO29CQUUx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QUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2QixDQUFDLENBQUM7UUFDSCxDQUFDO1FBRUQsTUFBTSxDQUFDLFVBQVUsUUFBaUM7WUFDakQsSUFBTSxJQUFJLEdBQWM7Z0JBQ3ZCLFFBQVEsRUFBRSxJQUFJO2dCQUNkLFFBQVEsRUFBRSxRQUFRO2FBQ2xCLENBQUM7WUFFRixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFZCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQztJQUNILENBQUMsQ0FBQyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ2xvYmFsIGZyb20gJy4vZ2xvYmFsJztcbmltcG9ydCBoYXMgZnJvbSAnLi9oYXMnO1xuaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZnVuY3Rpb24gZXhlY3V0ZVRhc2soaXRlbTogUXVldWVJdGVtKTogdm9pZCB7XG5cdGlmIChpdGVtLmlzQWN0aXZlKSB7XG5cdFx0aXRlbS5jYWxsYmFjaygpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIGdldFF1ZXVlSGFuZGxlKGl0ZW06IFF1ZXVlSXRlbSwgZGVzdHJ1Y3Rvcj86ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogSGFuZGxlIHtcblx0cmV0dXJuIHtcblx0XHRkZXN0cm95OiBmdW5jdGlvbiAoKSB7XG5cdFx0XHR0aGlzLmRlc3Ryb3kgPSBmdW5jdGlvbiAoKSB7fTtcblx0XHRcdGl0ZW0uaXNBY3RpdmUgPSBmYWxzZTtcblx0XHRcdGl0ZW0uY2FsbGJhY2sgPSBudWxsO1xuXG5cdFx0XHRpZiAoZGVzdHJ1Y3Rvcikge1xuXHRcdFx0XHRkZXN0cnVjdG9yKCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9O1xufVxuXG5pbnRlcmZhY2UgUG9zdE1lc3NhZ2VFdmVudCBleHRlbmRzIEV2ZW50IHtcblx0c291cmNlOiBhbnk7XG5cdGRhdGE6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWV1ZUl0ZW0ge1xuXHRpc0FjdGl2ZTogYm9vbGVhbjtcblx0Y2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55O1xufVxuXG4vLyBXaGVuIG5vIG1lY2hhbmlzbSBmb3IgcmVnaXN0ZXJpbmcgbWljcm90YXNrcyBpcyBleHBvc2VkIGJ5IHRoZSBlbnZpcm9ubWVudCwgbWljcm90YXNrcyB3aWxsXG4vLyBiZSBxdWV1ZWQgYW5kIHRoZW4gZXhlY3V0ZWQgaW4gYSBzaW5nbGUgbWFjcm90YXNrIGJlZm9yZSB0aGUgb3RoZXIgbWFjcm90YXNrcyBhcmUgZXhlY3V0ZWQuXG5sZXQgY2hlY2tNaWNyb1Rhc2tRdWV1ZTogKCkgPT4gdm9pZDtcbmxldCBtaWNyb1Rhc2tzOiBRdWV1ZUl0ZW1bXTtcbmlmICghaGFzKCdtaWNyb3Rhc2tzJykpIHtcblx0bGV0IGlzTWljcm9UYXNrUXVldWVkOiBib29sZWFuID0gZmFsc2U7XG5cblx0bWljcm9UYXNrcyA9IFtdO1xuXHRjaGVja01pY3JvVGFza1F1ZXVlID0gZnVuY3Rpb24gKCk6IHZvaWQge1xuXHRcdGlmICghaXNNaWNyb1Rhc2tRdWV1ZWQpIHtcblx0XHRcdGlzTWljcm9UYXNrUXVldWVkID0gdHJ1ZTtcblx0XHRcdHF1ZXVlVGFzayhmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdGlzTWljcm9UYXNrUXVldWVkID0gZmFsc2U7XG5cblx0XHRcdFx0aWYgKG1pY3JvVGFza3MubGVuZ3RoKSB7XG5cdFx0XHRcdFx0bGV0IGl0ZW06IFF1ZXVlSXRlbTtcblx0XHRcdFx0XHR3aGlsZSAoaXRlbSA9IG1pY3JvVGFza3Muc2hpZnQoKSkge1xuXHRcdFx0XHRcdFx0ZXhlY3V0ZVRhc2soaXRlbSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9XG5cdH07XG59XG5cbi8qKlxuICogU2NoZWR1bGVzIGEgY2FsbGJhY2sgdG8gdGhlIG1hY3JvdGFzayBxdWV1ZS5cbiAqXG4gKiBAcGFyYW0gY2FsbGJhY2sgdGhlIGZ1bmN0aW9uIHRvIGJlIHF1ZXVlZCBhbmQgbGF0ZXIgZXhlY3V0ZWQuXG4gKiBAcmV0dXJucyBBbiBvYmplY3Qgd2l0aCBhIGBkZXN0cm95YCBtZXRob2QgdGhhdCwgd2hlbiBjYWxsZWQsIHByZXZlbnRzIHRoZSByZWdpc3RlcmVkIGNhbGxiYWNrIGZyb20gZXhlY3V0aW5nLlxuICovXG5leHBvcnQgY29uc3QgcXVldWVUYXNrID0gKGZ1bmN0aW9uKCkge1xuXHRsZXQgZGVzdHJ1Y3RvcjogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk7XG5cdGxldCBlbnF1ZXVlOiAoaXRlbTogUXVldWVJdGVtKSA9PiB2b2lkO1xuXG5cdC8vIFNpbmNlIHRoZSBJRSBpbXBsZW1lbnRhdGlvbiBvZiBgc2V0SW1tZWRpYXRlYCBpcyBub3QgZmxhd2xlc3MsIHdlIHdpbGwgdGVzdCBmb3IgYHBvc3RNZXNzYWdlYCBmaXJzdC5cblx0aWYgKGhhcygncG9zdG1lc3NhZ2UnKSkge1xuXHRcdGNvbnN0IHF1ZXVlOiBRdWV1ZUl0ZW1bXSA9IFtdO1xuXG5cdFx0Z2xvYmFsLmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCBmdW5jdGlvbiAoZXZlbnQ6IFBvc3RNZXNzYWdlRXZlbnQpOiB2b2lkIHtcblx0XHRcdC8vIENvbmZpcm0gdGhhdCB0aGUgZXZlbnQgd2FzIHRyaWdnZXJlZCBieSB0aGUgY3VycmVudCB3aW5kb3cgYW5kIGJ5IHRoaXMgcGFydGljdWxhciBpbXBsZW1lbnRhdGlvbi5cblx0XHRcdGlmIChldmVudC5zb3VyY2UgPT09IGdsb2JhbCAmJiBldmVudC5kYXRhID09PSAnZG9qby1xdWV1ZS1tZXNzYWdlJykge1xuXHRcdFx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuXHRcdFx0XHRpZiAocXVldWUubGVuZ3RoKSB7XG5cdFx0XHRcdFx0ZXhlY3V0ZVRhc2socXVldWUuc2hpZnQoKSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KTtcblxuXHRcdGVucXVldWUgPSBmdW5jdGlvbiAoaXRlbTogUXVldWVJdGVtKTogdm9pZCB7XG5cdFx0XHRxdWV1ZS5wdXNoKGl0ZW0pO1xuXHRcdFx0Z2xvYmFsLnBvc3RNZXNzYWdlKCdkb2pvLXF1ZXVlLW1lc3NhZ2UnLCAnKicpO1xuXHRcdH07XG5cdH1cblx0ZWxzZSBpZiAoaGFzKCdzZXRpbW1lZGlhdGUnKSkge1xuXHRcdGRlc3RydWN0b3IgPSBnbG9iYWwuY2xlYXJJbW1lZGlhdGU7XG5cdFx0ZW5xdWV1ZSA9IGZ1bmN0aW9uIChpdGVtOiBRdWV1ZUl0ZW0pOiBhbnkge1xuXHRcdFx0cmV0dXJuIHNldEltbWVkaWF0ZShleGVjdXRlVGFzay5iaW5kKG51bGwsIGl0ZW0pKTtcblx0XHR9O1xuXHR9XG5cdGVsc2Uge1xuXHRcdGRlc3RydWN0b3IgPSBnbG9iYWwuY2xlYXJUaW1lb3V0O1xuXHRcdGVucXVldWUgPSBmdW5jdGlvbiAoaXRlbTogUXVldWVJdGVtKTogYW55IHtcblx0XHRcdHJldHVybiBzZXRUaW1lb3V0KGV4ZWN1dGVUYXNrLmJpbmQobnVsbCwgaXRlbSksIDApO1xuXHRcdH07XG5cdH1cblxuXHRmdW5jdGlvbiBxdWV1ZVRhc2soY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogSGFuZGxlIHtcblx0XHRjb25zdCBpdGVtOiBRdWV1ZUl0ZW0gPSB7XG5cdFx0XHRpc0FjdGl2ZTogdHJ1ZSxcblx0XHRcdGNhbGxiYWNrOiBjYWxsYmFja1xuXHRcdH07XG5cdFx0Y29uc3QgaWQ6IGFueSA9IGVucXVldWUoaXRlbSk7XG5cblx0XHRyZXR1cm4gZ2V0UXVldWVIYW5kbGUoaXRlbSwgZGVzdHJ1Y3RvciAmJiBmdW5jdGlvbiAoKSB7XG5cdFx0XHRkZXN0cnVjdG9yKGlkKTtcblx0XHR9KTtcblx0fTtcblxuXHQvLyBUT0RPOiBVc2UgYXNwZWN0LmJlZm9yZSB3aGVuIGl0IGlzIGF2YWlsYWJsZS5cblx0cmV0dXJuIGhhcygnbWljcm90YXNrcycpID8gcXVldWVUYXNrIDogZnVuY3Rpb24gKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IGFueSk6IEhhbmRsZSB7XG5cdFx0Y2hlY2tNaWNyb1Rhc2tRdWV1ZSgpO1xuXHRcdHJldHVybiBxdWV1ZVRhc2soY2FsbGJhY2spO1xuXHR9O1xufSkoKTtcblxuLyoqXG4gKiBTY2hlZHVsZXMgYW4gYW5pbWF0aW9uIHRhc2sgd2l0aCBgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZWAgaWYgaXQgZXhpc3RzLCBvciB3aXRoIGBxdWV1ZVRhc2tgIG90aGVyd2lzZS5cbiAqXG4gKiBTaW5jZSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUncyBiZWhhdmlvciBkb2VzIG5vdCBtYXRjaCB0aGF0IGV4cGVjdGVkIGZyb20gYHF1ZXVlVGFza2AsIGl0IGlzIG5vdCB1c2VkIHRoZXJlLlxuICogSG93ZXZlciwgYXQgdGltZXMgaXQgbWFrZXMgbW9yZSBzZW5zZSB0byBkZWxlZ2F0ZSB0byByZXF1ZXN0QW5pbWF0aW9uRnJhbWU7IGhlbmNlIHRoZSBmb2xsb3dpbmcgbWV0aG9kLlxuICpcbiAqIEBwYXJhbSBjYWxsYmFjayB0aGUgZnVuY3Rpb24gdG8gYmUgcXVldWVkIGFuZCBsYXRlciBleGVjdXRlZC5cbiAqIEByZXR1cm5zIEFuIG9iamVjdCB3aXRoIGEgYGRlc3Ryb3lgIG1ldGhvZCB0aGF0LCB3aGVuIGNhbGxlZCwgcHJldmVudHMgdGhlIHJlZ2lzdGVyZWQgY2FsbGJhY2sgZnJvbSBleGVjdXRpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBxdWV1ZUFuaW1hdGlvblRhc2sgPSAoZnVuY3Rpb24gKCkge1xuXHRpZiAoIWhhcygncmFmJykpIHtcblx0XHRyZXR1cm4gcXVldWVUYXNrO1xuXHR9XG5cblx0ZnVuY3Rpb24gcXVldWVBbmltYXRpb25UYXNrKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IGFueSk6IEhhbmRsZSB7XG5cdFx0Y29uc3QgaXRlbTogUXVldWVJdGVtID0ge1xuXHRcdFx0aXNBY3RpdmU6IHRydWUsXG5cdFx0XHRjYWxsYmFjazogY2FsbGJhY2tcblx0XHR9O1xuXHRcdGNvbnN0IHJhZklkOiBudW1iZXIgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZXhlY3V0ZVRhc2suYmluZChudWxsLCBpdGVtKSk7XG5cblx0XHRyZXR1cm4gZ2V0UXVldWVIYW5kbGUoaXRlbSwgZnVuY3Rpb24gKCkge1xuXHRcdFx0Y2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmSWQpO1xuXHRcdH0pO1xuXHR9XG5cblx0Ly8gVE9ETzogVXNlIGFzcGVjdC5iZWZvcmUgd2hlbiBpdCBpcyBhdmFpbGFibGUuXG5cdHJldHVybiBoYXMoJ21pY3JvdGFza3MnKSA/IHF1ZXVlQW5pbWF0aW9uVGFzayA6IGZ1bmN0aW9uIChjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpOiBIYW5kbGUge1xuXHRcdGNoZWNrTWljcm9UYXNrUXVldWUoKTtcblx0XHRyZXR1cm4gcXVldWVBbmltYXRpb25UYXNrKGNhbGxiYWNrKTtcblx0fTtcbn0pKCk7XG5cbi8qKlxuICogU2NoZWR1bGVzIGEgY2FsbGJhY2sgdG8gdGhlIG1pY3JvdGFzayBxdWV1ZS5cbiAqXG4gKiBBbnkgY2FsbGJhY2tzIHJlZ2lzdGVyZWQgd2l0aCBgcXVldWVNaWNyb1Rhc2tgIHdpbGwgYmUgZXhlY3V0ZWQgYmVmb3JlIHRoZSBuZXh0IG1hY3JvdGFzay4gSWYgbm8gbmF0aXZlXG4gKiBtZWNoYW5pc20gZm9yIHNjaGVkdWxpbmcgbWFjcm90YXNrcyBpcyBleHBvc2VkLCB0aGVuIGFueSBjYWxsYmFja3Mgd2lsbCBiZSBmaXJlZCBiZWZvcmUgYW55IG1hY3JvdGFza1xuICogcmVnaXN0ZXJlZCB3aXRoIGBxdWV1ZVRhc2tgIG9yIGBxdWV1ZUFuaW1hdGlvblRhc2tgLlxuICpcbiAqIEBwYXJhbSBjYWxsYmFjayB0aGUgZnVuY3Rpb24gdG8gYmUgcXVldWVkIGFuZCBsYXRlciBleGVjdXRlZC5cbiAqIEByZXR1cm5zIEFuIG9iamVjdCB3aXRoIGEgYGRlc3Ryb3lgIG1ldGhvZCB0aGF0LCB3aGVuIGNhbGxlZCwgcHJldmVudHMgdGhlIHJlZ2lzdGVyZWQgY2FsbGJhY2sgZnJvbSBleGVjdXRpbmcuXG4gKi9cbmV4cG9ydCBsZXQgcXVldWVNaWNyb1Rhc2sgPSAoZnVuY3Rpb24gKCkge1xuXHRsZXQgZW5xdWV1ZTogKGl0ZW06IFF1ZXVlSXRlbSkgPT4gdm9pZDtcblxuXHRpZiAoaGFzKCdob3N0LW5vZGUnKSkge1xuXHRcdGVucXVldWUgPSBmdW5jdGlvbiAoaXRlbTogUXVldWVJdGVtKTogdm9pZCB7XG5cdFx0XHRnbG9iYWwucHJvY2Vzcy5uZXh0VGljayhleGVjdXRlVGFzay5iaW5kKG51bGwsIGl0ZW0pKTtcblx0XHR9O1xuXHR9XG5cdGVsc2UgaWYgKGhhcygncHJvbWlzZScpKSB7XG5cdFx0ZW5xdWV1ZSA9IGZ1bmN0aW9uIChpdGVtOiBRdWV1ZUl0ZW0pOiB2b2lkIHtcblx0XHRcdGdsb2JhbC5Qcm9taXNlLnJlc29sdmUoaXRlbSkudGhlbihleGVjdXRlVGFzayk7XG5cdFx0fTtcblx0fVxuXHRlbHNlIGlmIChoYXMoJ2RvbS1tdXRhdGlvbm9ic2VydmVyJykpIHtcblx0XHRjb25zdCBIb3N0TXV0YXRpb25PYnNlcnZlciA9IGdsb2JhbC5NdXRhdGlvbk9ic2VydmVyIHx8IGdsb2JhbC5XZWJLaXRNdXRhdGlvbk9ic2VydmVyO1xuXHRcdGNvbnN0IG5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblx0XHRjb25zdCBxdWV1ZTogUXVldWVJdGVtW10gPSBbXTtcblx0XHRjb25zdCBvYnNlcnZlciA9IG5ldyBIb3N0TXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHR3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuXHRcdFx0XHRjb25zdCBpdGVtID0gcXVldWUuc2hpZnQoKTtcblx0XHRcdFx0aWYgKGl0ZW0gJiYgaXRlbS5pc0FjdGl2ZSkge1xuXHRcdFx0XHRcdGl0ZW0uY2FsbGJhY2soKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXG5cdFx0b2JzZXJ2ZXIub2JzZXJ2ZShub2RlLCB7IGF0dHJpYnV0ZXM6IHRydWUgfSk7XG5cblx0XHRlbnF1ZXVlID0gZnVuY3Rpb24gKGl0ZW06IFF1ZXVlSXRlbSk6IHZvaWQge1xuXHRcdFx0cXVldWUucHVzaChpdGVtKTtcblx0XHRcdG5vZGUuc2V0QXR0cmlidXRlKCdxdWV1ZVN0YXR1cycsICcxJyk7XG5cdFx0fTtcblx0fVxuXHRlbHNlIHtcblx0XHRlbnF1ZXVlID0gZnVuY3Rpb24gKGl0ZW06IFF1ZXVlSXRlbSk6IHZvaWQge1xuXHRcdFx0Y2hlY2tNaWNyb1Rhc2tRdWV1ZSgpO1xuXHRcdFx0bWljcm9UYXNrcy5wdXNoKGl0ZW0pO1xuXHRcdH07XG5cdH1cblxuXHRyZXR1cm4gZnVuY3Rpb24gKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IGFueSk6IEhhbmRsZSB7XG5cdFx0Y29uc3QgaXRlbTogUXVldWVJdGVtID0ge1xuXHRcdFx0aXNBY3RpdmU6IHRydWUsXG5cdFx0XHRjYWxsYmFjazogY2FsbGJhY2tcblx0XHR9O1xuXG5cdFx0ZW5xdWV1ZShpdGVtKTtcblxuXHRcdHJldHVybiBnZXRRdWV1ZUhhbmRsZShpdGVtKTtcblx0fTtcbn0pKCk7XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
/** | ||
@@ -71,6 +72,6 @@ * A registry of values tagged with matchers. | ||
return Registry; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = Registry; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvUmVnaXN0cnkudHMiXSwibmFtZXMiOlsiUmVnaXN0cnkiLCJSZWdpc3RyeS5jb25zdHJ1Y3RvciIsIlJlZ2lzdHJ5Lm1hdGNoIiwiUmVnaXN0cnkucmVnaXN0ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBV0E7O09BRUc7SUFDSDtRQUlDQTs7V0FFR0E7UUFDSEEsa0JBQVlBLFlBQWdCQTtZQUMzQkMsSUFBSUEsQ0FBQ0EsYUFBYUEsR0FBR0EsWUFBWUEsQ0FBQ0E7WUFDbENBLElBQUlBLENBQUNBLFFBQVFBLEdBQUdBLEVBQUVBLENBQUNBO1FBQ3BCQSxDQUFDQTtRQUVERDs7Ozs7O1dBTUdBO1FBQ0hBLHdCQUFLQSxHQUFMQTtZQUFNRSxjQUFjQTtpQkFBZEEsV0FBY0EsQ0FBZEEsc0JBQWNBLENBQWRBLElBQWNBO2dCQUFkQSw2QkFBY0E7O1lBQ25CQSxJQUFJQSxPQUFPQSxHQUFHQSxJQUFJQSxDQUFDQSxRQUFRQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNyQ0EsSUFBSUEsS0FBZUEsQ0FBQ0E7WUFFcEJBLEdBQUdBLENBQUNBLENBQUNBLEdBQUdBLENBQUNBLENBQUNBLEdBQUdBLENBQUNBLEVBQUVBLENBQUNBLEtBQUtBLEdBQUdBLE9BQU9BLENBQUNBLENBQUNBLENBQUNBLENBQUNBLEVBQUVBLEVBQUVBLENBQUNBLEVBQUVBLENBQUNBO2dCQUMzQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsSUFBSUEsRUFBRUEsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7b0JBQ2xDQSxNQUFNQSxDQUFDQSxLQUFLQSxDQUFDQSxLQUFLQSxDQUFDQTtnQkFDcEJBLENBQUNBO1lBQ0ZBLENBQUNBO1lBRURBLEVBQUVBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLGFBQWFBLEtBQUtBLFNBQVNBLENBQUNBLENBQUNBLENBQUNBO2dCQUN0Q0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsYUFBYUEsQ0FBQ0E7WUFDM0JBLENBQUNBO1lBRURBLE1BQU1BLElBQUlBLEtBQUtBLENBQUNBLGdCQUFnQkEsQ0FBQ0EsQ0FBQ0E7UUFDbkNBLENBQUNBO1FBRURGOzs7Ozs7V0FNR0E7UUFDSEEsMkJBQVFBLEdBQVJBLFVBQVNBLElBQVVBLEVBQUVBLEtBQVFBLEVBQUVBLEtBQWVBO1lBQzdDRyxJQUFJQSxPQUFPQSxHQUFHQSxJQUFJQSxDQUFDQSxRQUFRQSxDQUFDQTtZQUM1QkEsSUFBSUEsS0FBS0EsR0FBYUE7Z0JBQ3JCQSxJQUFJQSxFQUFFQSxJQUFJQTtnQkFDVkEsS0FBS0EsRUFBRUEsS0FBS0E7YUFDWkEsQ0FBQ0E7WUFFS0EsT0FBUUEsQ0FBQ0EsQ0FBQ0EsS0FBS0EsR0FBR0EsU0FBU0EsR0FBR0EsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7WUFFckRBLE1BQU1BLENBQUNBO2dCQUNOQSxPQUFPQSxFQUFFQTtvQkFDUixJQUFJLENBQUMsT0FBTyxHQUFHLGNBQW1CLENBQUMsQ0FBQztvQkFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUNWLE9BQU8sQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO3dCQUM3QyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDdEIsQ0FBQztvQkFDRCxJQUFJLEdBQUcsS0FBSyxHQUFHLE9BQU8sR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDO2dCQUN2QyxDQUFDO2FBQ0RBLENBQUNBO1FBQ0hBLENBQUNBO1FBQ0ZILGVBQUNBO0lBQURBLENBQUNBLEFBL0RELElBK0RDO0lBL0REOzhCQStEQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuLyoqXG4gKiBBbiBlbnRyeSBpbiBhIFJlZ2lzdHJ5LiBFYWNoIEVudHJ5IGNvbnRhaW5zIGEgdGVzdCB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgRW50cnkgaXMgYXBwbGljYWJsZSwgYW5kIGEgdmFsdWUgZm9yIHRoZVxuICogZW50cnkuXG4gKi9cbmludGVyZmFjZSBFbnRyeTxUPiB7XG5cdHRlc3Q6IFRlc3Q7XG5cdHZhbHVlOiBUO1xufVxuXG4vKipcbiAqIEEgcmVnaXN0cnkgb2YgdmFsdWVzIHRhZ2dlZCB3aXRoIG1hdGNoZXJzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZWdpc3RyeTxUPiB7XG5cdHByb3RlY3RlZCBfZGVmYXVsdFZhbHVlOiBUO1xuXHRwcml2YXRlIF9lbnRyaWVzOiBFbnRyeTxUPltdO1xuXG5cdC8qKlxuXHQgKiBDb25zdHJ1Y3QgYSBuZXcgUmVnaXN0cnksIG9wdGlvbmFsbHkgY29udGFpbmluZyBhIGdpdmVuIGRlZmF1bHQgdmFsdWUuXG5cdCAqL1xuXHRjb25zdHJ1Y3RvcihkZWZhdWx0VmFsdWU/OiBUKSB7XG5cdFx0dGhpcy5fZGVmYXVsdFZhbHVlID0gZGVmYXVsdFZhbHVlO1xuXHRcdHRoaXMuX2VudHJpZXMgPSBbXTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm4gdGhlIGZpcnN0IGVudHJ5IGluIHRoaXMgcmVnaXN0cnkgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBhcmd1bWVudHMuIElmIG5vIGVudHJ5IG1hdGNoZXMgYW5kIHRoZSByZWdpc3RyeVxuXHQgKiB3YXMgY3JlYXRlZCB3aXRoIGEgZGVmYXVsdCB2YWx1ZSwgdGhhdCB2YWx1ZSB3aWxsIGJlIHJldHVybmVkLiBPdGhlcndpc2UsIGFuIGV4Y2VwdGlvbiBpcyB0aHJvd24uXG5cdCAqXG5cdCAqIEBwYXJhbSAuLi5hcmdzIEFyZ3VtZW50cyB0aGF0IHdpbGwgYmUgdXNlZCB0byBzZWxlY3QgYSBtYXRjaGluZyB2YWx1ZS5cblx0ICogQHJldHVybnMgdGhlIG1hdGNoaW5nIHZhbHVlLCBvciBhIGRlZmF1bHQgdmFsdWUgaWYgb25lIGV4aXN0cy5cblx0ICovXG5cdG1hdGNoKC4uLmFyZ3M6IGFueVtdKTogVCB7XG5cdFx0bGV0IGVudHJpZXMgPSB0aGlzLl9lbnRyaWVzLnNsaWNlKDApO1xuXHRcdGxldCBlbnRyeTogRW50cnk8VD47XG5cblx0XHRmb3IgKGxldCBpID0gMDsgKGVudHJ5ID0gZW50cmllc1tpXSk7ICsraSkge1xuXHRcdFx0aWYgKGVudHJ5LnRlc3QuYXBwbHkobnVsbCwgYXJncykpIHtcblx0XHRcdFx0cmV0dXJuIGVudHJ5LnZhbHVlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLl9kZWZhdWx0VmFsdWUgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0cmV0dXJuIHRoaXMuX2RlZmF1bHRWYWx1ZTtcblx0XHR9XG5cblx0XHR0aHJvdyBuZXcgRXJyb3IoJ05vIG1hdGNoIGZvdW5kJyk7XG5cdH1cblxuXHQvKipcblx0ICogUmVnaXN0ZXIgYSB0ZXN0ICsgdmFsdWUgcGFpciB3aXRoIHRoaXMgcmVnaXN0cnkuXG5cdCAqXG5cdCAqIEBwYXJhbSB0ZXN0IFRoZSB0ZXN0IHRoYXQgd2lsbCBiZSB1c2VkIHRvIGRldGVybWluZSBpZiB0aGUgcmVnaXN0ZXJlZCB2YWx1ZSBtYXRjaGVzIGEgc2V0IG9mIGFyZ3VtZW50cy5cblx0ICogQHBhcmFtIHZhbHVlIEEgdmFsdWUgYmVpbmcgcmVnaXN0ZXJlZC5cblx0ICogQHBhcmFtIGZpcnN0IElmIHRydWUsIHRoZSBuZXdseSByZWdpc3RlcmVkIHRlc3QgYW5kIHZhbHVlIHdpbGwgYmUgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSByZWdpc3RyeS5cblx0ICovXG5cdHJlZ2lzdGVyKHRlc3Q6IFRlc3QsIHZhbHVlOiBULCBmaXJzdD86IGJvb2xlYW4pOiBIYW5kbGUge1xuXHRcdGxldCBlbnRyaWVzID0gdGhpcy5fZW50cmllcztcblx0XHRsZXQgZW50cnk6IEVudHJ5PFQ+ID0ge1xuXHRcdFx0dGVzdDogdGVzdCxcblx0XHRcdHZhbHVlOiB2YWx1ZVxuXHRcdH07XG5cblx0XHQoPGFueT4gZW50cmllcylbKGZpcnN0ID8gJ3Vuc2hpZnQnIDogJ3B1c2gnKV0oZW50cnkpO1xuXG5cdFx0cmV0dXJuIHtcblx0XHRcdGRlc3Ryb3k6IGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0dGhpcy5kZXN0cm95ID0gZnVuY3Rpb24gKCk6IHZvaWQge307XG5cdFx0XHRcdGxldCBpID0gMDtcblx0XHRcdFx0d2hpbGUgKChpID0gZW50cmllcy5pbmRleE9mKGVudHJ5LCBpKSkgPiAtMSkge1xuXHRcdFx0XHRcdGVudHJpZXMuc3BsaWNlKGksIDEpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRlc3QgPSB2YWx1ZSA9IGVudHJpZXMgPSBlbnRyeSA9IG51bGw7XG5cdFx0XHR9XG5cdFx0fTtcblx0fVxufVxuXG4vKipcbiAqIFRoZSBpbnRlcmZhY2UgdGhhdCBhIHRlc3QgZnVuY3Rpb24gbXVzdCBpbXBsZW1lbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdCB7XG5cdCguLi5hcmdzOiBhbnlbXSk6IGJvb2xlYW47XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvUmVnaXN0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBV0E7O09BRUc7SUFDSDtRQUlDOztXQUVHO1FBQ0gsa0JBQVksWUFBZ0I7WUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUM7WUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVEOzs7Ozs7V0FNRztRQUNILHdCQUFLLEdBQUw7WUFBTSxjQUFjO2lCQUFkLFdBQWMsQ0FBZCxzQkFBYyxDQUFkLElBQWM7Z0JBQWQsNkJBQWM7O1lBQ25CLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JDLElBQUksS0FBZSxDQUFDO1lBRXBCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO2dCQUMzQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNsQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztnQkFDcEIsQ0FBQztZQUNGLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQzNCLENBQUM7WUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUVEOzs7Ozs7V0FNRztRQUNILDJCQUFRLEdBQVIsVUFBUyxJQUFVLEVBQUUsS0FBUSxFQUFFLEtBQWU7WUFDN0MsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM1QixJQUFJLEtBQUssR0FBYTtnQkFDckIsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsS0FBSyxFQUFFLEtBQUs7YUFDWixDQUFDO1lBRUssT0FBUSxDQUFDLENBQUMsS0FBSyxHQUFHLFNBQVMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXJELE1BQU0sQ0FBQztnQkFDTixPQUFPLEVBQUU7b0JBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFtQixDQUFDLENBQUM7b0JBQ3BDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDVixPQUFPLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDN0MsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ3RCLENBQUM7b0JBQ0QsSUFBSSxHQUFHLEtBQUssR0FBRyxPQUFPLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQztnQkFDdkMsQ0FBQzthQUNELENBQUM7UUFDSCxDQUFDO1FBQ0YsZUFBQztJQUFELENBQUMsQUEvREQsSUErREM7SUEvREQ7OEJBK0RDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYW5kbGUgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG4vKipcbiAqIEFuIGVudHJ5IGluIGEgUmVnaXN0cnkuIEVhY2ggRW50cnkgY29udGFpbnMgYSB0ZXN0IHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBFbnRyeSBpcyBhcHBsaWNhYmxlLCBhbmQgYSB2YWx1ZSBmb3IgdGhlXG4gKiBlbnRyeS5cbiAqL1xuaW50ZXJmYWNlIEVudHJ5PFQ+IHtcblx0dGVzdDogVGVzdDtcblx0dmFsdWU6IFQ7XG59XG5cbi8qKlxuICogQSByZWdpc3RyeSBvZiB2YWx1ZXMgdGFnZ2VkIHdpdGggbWF0Y2hlcnMuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlZ2lzdHJ5PFQ+IHtcblx0cHJvdGVjdGVkIF9kZWZhdWx0VmFsdWU6IFQ7XG5cdHByaXZhdGUgX2VudHJpZXM6IEVudHJ5PFQ+W107XG5cblx0LyoqXG5cdCAqIENvbnN0cnVjdCBhIG5ldyBSZWdpc3RyeSwgb3B0aW9uYWxseSBjb250YWluaW5nIGEgZ2l2ZW4gZGVmYXVsdCB2YWx1ZS5cblx0ICovXG5cdGNvbnN0cnVjdG9yKGRlZmF1bHRWYWx1ZT86IFQpIHtcblx0XHR0aGlzLl9kZWZhdWx0VmFsdWUgPSBkZWZhdWx0VmFsdWU7XG5cdFx0dGhpcy5fZW50cmllcyA9IFtdO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHVybiB0aGUgZmlyc3QgZW50cnkgaW4gdGhpcyByZWdpc3RyeSB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIGFyZ3VtZW50cy4gSWYgbm8gZW50cnkgbWF0Y2hlcyBhbmQgdGhlIHJlZ2lzdHJ5XG5cdCAqIHdhcyBjcmVhdGVkIHdpdGggYSBkZWZhdWx0IHZhbHVlLCB0aGF0IHZhbHVlIHdpbGwgYmUgcmV0dXJuZWQuIE90aGVyd2lzZSwgYW4gZXhjZXB0aW9uIGlzIHRocm93bi5cblx0ICpcblx0ICogQHBhcmFtIC4uLmFyZ3MgQXJndW1lbnRzIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHNlbGVjdCBhIG1hdGNoaW5nIHZhbHVlLlxuXHQgKiBAcmV0dXJucyB0aGUgbWF0Y2hpbmcgdmFsdWUsIG9yIGEgZGVmYXVsdCB2YWx1ZSBpZiBvbmUgZXhpc3RzLlxuXHQgKi9cblx0bWF0Y2goLi4uYXJnczogYW55W10pOiBUIHtcblx0XHRsZXQgZW50cmllcyA9IHRoaXMuX2VudHJpZXMuc2xpY2UoMCk7XG5cdFx0bGV0IGVudHJ5OiBFbnRyeTxUPjtcblxuXHRcdGZvciAobGV0IGkgPSAwOyAoZW50cnkgPSBlbnRyaWVzW2ldKTsgKytpKSB7XG5cdFx0XHRpZiAoZW50cnkudGVzdC5hcHBseShudWxsLCBhcmdzKSkge1xuXHRcdFx0XHRyZXR1cm4gZW50cnkudmFsdWU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuX2RlZmF1bHRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5fZGVmYXVsdFZhbHVlO1xuXHRcdH1cblxuXHRcdHRocm93IG5ldyBFcnJvcignTm8gbWF0Y2ggZm91bmQnKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZWdpc3RlciBhIHRlc3QgKyB2YWx1ZSBwYWlyIHdpdGggdGhpcyByZWdpc3RyeS5cblx0ICpcblx0ICogQHBhcmFtIHRlc3QgVGhlIHRlc3QgdGhhdCB3aWxsIGJlIHVzZWQgdG8gZGV0ZXJtaW5lIGlmIHRoZSByZWdpc3RlcmVkIHZhbHVlIG1hdGNoZXMgYSBzZXQgb2YgYXJndW1lbnRzLlxuXHQgKiBAcGFyYW0gdmFsdWUgQSB2YWx1ZSBiZWluZyByZWdpc3RlcmVkLlxuXHQgKiBAcGFyYW0gZmlyc3QgSWYgdHJ1ZSwgdGhlIG5ld2x5IHJlZ2lzdGVyZWQgdGVzdCBhbmQgdmFsdWUgd2lsbCBiZSB0aGUgZmlyc3QgZW50cnkgaW4gdGhlIHJlZ2lzdHJ5LlxuXHQgKi9cblx0cmVnaXN0ZXIodGVzdDogVGVzdCwgdmFsdWU6IFQsIGZpcnN0PzogYm9vbGVhbik6IEhhbmRsZSB7XG5cdFx0bGV0IGVudHJpZXMgPSB0aGlzLl9lbnRyaWVzO1xuXHRcdGxldCBlbnRyeTogRW50cnk8VD4gPSB7XG5cdFx0XHR0ZXN0OiB0ZXN0LFxuXHRcdFx0dmFsdWU6IHZhbHVlXG5cdFx0fTtcblxuXHRcdCg8YW55PiBlbnRyaWVzKVsoZmlyc3QgPyAndW5zaGlmdCcgOiAncHVzaCcpXShlbnRyeSk7XG5cblx0XHRyZXR1cm4ge1xuXHRcdFx0ZGVzdHJveTogZnVuY3Rpb24gKCkge1xuXHRcdFx0XHR0aGlzLmRlc3Ryb3kgPSBmdW5jdGlvbiAoKTogdm9pZCB7fTtcblx0XHRcdFx0bGV0IGkgPSAwO1xuXHRcdFx0XHR3aGlsZSAoKGkgPSBlbnRyaWVzLmluZGV4T2YoZW50cnksIGkpKSA+IC0xKSB7XG5cdFx0XHRcdFx0ZW50cmllcy5zcGxpY2UoaSwgMSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGVzdCA9IHZhbHVlID0gZW50cmllcyA9IGVudHJ5ID0gbnVsbDtcblx0XHRcdH1cblx0XHR9O1xuXHR9XG59XG5cbi8qKlxuICogVGhlIGludGVyZmFjZSB0aGF0IGEgdGVzdCBmdW5jdGlvbiBtdXN0IGltcGxlbWVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXN0IHtcblx0KC4uLmFyZ3M6IGFueVtdKTogYm9vbGVhbjtcbn1cbiJdfQ== |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Task_1 = require('./async/Task'); | ||
@@ -42,3 +43,3 @@ var has_1 = require('./request/has'); | ||
return FilterRegistry; | ||
})(Registry_1.default); | ||
}(Registry_1.default)); | ||
exports.FilterRegistry = FilterRegistry; | ||
@@ -105,3 +106,3 @@ var defaultProvider = './request/xhr'; | ||
return ProviderRegistry; | ||
})(Registry_1.default); | ||
}(Registry_1.default)); | ||
exports.ProviderRegistry = ProviderRegistry; | ||
@@ -154,2 +155,2 @@ /** | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbIkZpbHRlclJlZ2lzdHJ5IiwiRmlsdGVyUmVnaXN0cnkuY29uc3RydWN0b3IiLCJGaWx0ZXJSZWdpc3RyeS5yZWdpc3RlciIsIlByb3ZpZGVyUmVnaXN0cnkiLCJQcm92aWRlclJlZ2lzdHJ5LmNvbnN0cnVjdG9yIiwiUHJvdmlkZXJSZWdpc3RyeS5yZWdpc3RlciIsInJlcXVlc3QiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7SUFBQSxxQkFBaUIsY0FBYyxDQUFDLENBQUE7SUFDaEMsb0JBQWdCLGVBQWUsQ0FBQyxDQUFBO0lBR2hDLHlCQUErQixZQUFZLENBQUMsQ0FBQTtJQUM1QyxxQkFBaUIsUUFBUSxDQUFDLENBQUE7SUFLMUI7UUFBb0NBLGtDQUF1QkE7UUFBM0RBO1lBQW9DQyw4QkFBdUJBO1FBb0IzREEsQ0FBQ0E7UUFuQkFELGlDQUFRQSxHQUFSQSxVQUFTQSxJQUF5Q0EsRUFBRUEsS0FBb0JBLEVBQUVBLEtBQWVBO1lBQ3hGRSxJQUFJQSxTQUFlQSxDQUFDQTtZQUVwQkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsT0FBT0EsSUFBSUEsS0FBS0EsUUFBUUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQzlCQSxTQUFTQSxHQUFHQSxVQUFDQSxRQUFRQSxFQUFFQSxHQUFHQSxFQUFFQSxPQUFPQTtvQkFDbENBLE1BQU1BLENBQUNBLElBQUlBLEtBQUtBLEdBQUdBLENBQUNBO2dCQUNyQkEsQ0FBQ0EsQ0FBQ0E7WUFDSEEsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsSUFBSUEsWUFBWUEsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ2pDQSxTQUFTQSxHQUFHQSxVQUFDQSxRQUFRQSxFQUFFQSxHQUFHQSxFQUFFQSxPQUFPQTtvQkFDbENBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLEdB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VSxRQUF1QixFQUFFLEdBQVcsRUFBRSxPQUF1QjtRQUN0RSxNQUFNLENBQUM7WUFDTixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3ZDLENBQUM7SUFDSCxDQUFDLENBQ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBUYXNrIGZyb20gJy4vYXN5bmMvVGFzayc7XG5pbXBvcnQgaGFzIGZyb20gJy4vcmVxdWVzdC9oYXMnO1xuaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4vUHJvbWlzZSc7XG5pbXBvcnQgUmVnaXN0cnksIHsgVGVzdCB9IGZyb20gJy4vUmVnaXN0cnknO1xuaW1wb3J0IGxvYWQgZnJvbSAnLi9sb2FkJztcbmltcG9ydCB7IFBhcmFtTGlzdCB9IGZyb20gJy4vVXJsU2VhcmNoUGFyYW1zJztcblxuZGVjbGFyZSB2YXIgcmVxdWlyZTogYW55O1xuXG5leHBvcnQgY2xhc3MgRmlsdGVyUmVnaXN0cnkgZXh0ZW5kcyBSZWdpc3RyeTxSZXF1ZXN0RmlsdGVyPiB7XG5cdHJlZ2lzdGVyKHRlc3Q6IHN0cmluZyB8IFJlZ0V4cCB8IFJlcXVlc3RGaWx0ZXJUZXN0LCB2YWx1ZTogUmVxdWVzdEZpbHRlciwgZmlyc3Q/OiBib29sZWFuKTogSGFuZGxlIHtcblx0XHRsZXQgZW50cnlUZXN0OiBUZXN0O1xuXG5cdFx0aWYgKHR5cGVvZiB0ZXN0ID09PSAnc3RyaW5nJykge1xuXHRcdFx0ZW50cnlUZXN0ID0gKHJlc3BvbnNlLCB1cmwsIG9wdGlvbnMpID0+IHtcblx0XHRcdFx0cmV0dXJuIHRlc3QgPT09IHVybDtcblx0XHRcdH07XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHRlc3QgaW5zdGFuY2VvZiBSZWdFeHApIHtcblx0XHRcdGVudHJ5VGVzdCA9IChyZXNwb25zZSwgdXJsLCBvcHRpb25zKSA9PiB7XG5cdFx0XHRcdHJldHVybiB0ZXN0LnRlc3QodXJsKTtcblx0XHRcdH07XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0ZW50cnlUZXN0ID0gPFJlcXVlc3RGaWx0ZXJUZXN0PiB0ZXN0O1xuXHRcdH1cblxuXHRcdHJldHVybiBzdXBlci5yZWdpc3RlcihlbnRyeVRlc3QsIHZhbHVlLCBmaXJzdCk7XG5cdH1cbn1cblxubGV0IGRlZmF1bHRQcm92aWRlcjogc3RyaW5nID0gJy4vcmVxdWVzdC94aHInO1xuaWYgKGhhcygnaG9zdC1ub2RlJykpIHtcblx0ZGVmYXVsdFByb3ZpZGVyID0gJy4vcmVxdWVzdC9ub2RlJztcbn1cblxuZXhwb3J0IGNsYXNzIFByb3ZpZGVyUmVnaXN0cnkgZXh0ZW5kcyBSZWdpc3RyeTxSZXF1ZXN0UHJvdmlkZXI+IHtcblx0cHJpdmF0ZSBfcHJvdmlkZXJQcm9taXNlOiBQcm9taXNlPFJlcXVlc3RQcm92aWRlcj47XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0c3VwZXIoKTtcblxuXHRcdGNvbnN0IGRlZmVyUmVxdWVzdCA9ICh1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUmVzcG9uc2VQcm9taXNlPGFueT4gPT4ge1xuXHRcdFx0bGV0IGNhbmNlbGVkID0gZmFsc2U7XG5cdFx0XHRsZXQgYWN0dWFsUmVzcG9uc2U6IFJlc3BvbnNlUHJvbWlzZTxhbnk+O1xuXHRcdFx0cmV0dXJuIG5ldyBUYXNrPFJlc3BvbnNlPGFueT4+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdFx0dGhpcy5fcHJvdmlkZXJQcm9taXNlLnRoZW4oZnVuY3Rpb24gKHByb3ZpZGVyKSB7XG5cdFx0XHRcdFx0aWYgKGNhbmNlbGVkKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGFjdHVhbFJlc3BvbnNlID0gcHJvdmlkZXIodXJsLCBvcHRpb25zKTtcblx0XHRcdFx0XHRhY3R1YWxSZXNwb25zZS50aGVuKHJlc29sdmUsIHJlamVjdCk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSwgZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRpZiAoIWNhbmNlbGVkKSB7XG5cdFx0XHRcdFx0Y2FuY2VsZWQgPSB0cnVlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChhY3R1YWxSZXNwb25zZSkge1xuXHRcdFx0XHRcdGFjdHVhbFJlc3BvbnNlLmNhbmNlbCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9O1xuXG5cdFx0Ly8gVGhlIGZpcnN0IHJlcXVlc3QgdG8gaGl0IHRoZSBkZWZhdWx0IHZhbHVlIHdpbGwga2ljayBvZmYgdGhlIGltcG9ydCBvZiB0aGUgZGVmYXVsdFxuXHRcdC8vIHByb3ZpZGVyLiBXaGlsZSB0aGF0IGltcG9ydCBpcyBpbi1mbGlnaHQsIHN1YnNlcXVlbnQgcmVxdWVzdHMgd2lsbCBxdWV1ZSB1cCB3aGlsZVxuXHRcdC8vIHdhaXRpbmcgZm9yIHRoZSBwcm92aWRlciB0byBiZSBmdWxmaWxsZWQuXG5cdFx0dGhpcy5fZGVmYXVsdFZhbHVlID0gKHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBSZXNwb25zZVByb21pc2U8YW55PiA9PiB7XG5cdFx0XHR0aGlzLl9wcm92aWRlclByb21pc2UgPSBsb2FkKHJlcXVpcmUsIGRlZmF1bHRQcm92aWRlcikudGhlbigoWyBwcm92aWRlck1vZHVsZSBdOiBbIHsgZGVmYXVsdDogUmVxdWVzdFByb3ZpZGVyIH0gXSk6IFJlcXVlc3RQcm92aWRlciA9PiB7XG5cdFx0XHRcdHRoaXMuX2RlZmF1bHRWYWx1ZSA9IHByb3ZpZGVyTW9kdWxlLmRlZmF1bHQ7XG5cdFx0XHRcdHJldHVybiBwcm92aWRlck1vZHVsZS5kZWZhdWx0O1xuXHRcdFx0fSk7XG5cdFx0XHR0aGlzLl9kZWZhdWx0VmFsdWUgPSBkZWZlclJlcXVlc3Q7XG5cdFx0XHRyZXR1cm4gZGVmZXJSZXF1ZXN0KHVybCwgb3B0aW9ucyk7XG5cdFx0fTtcblx0fVxuXG5cdHJlZ2lzdGVyKHRlc3Q6IHN0cmluZyB8IFJlZ0V4cCB8IFJlcXVlc3RQcm92aWRlclRlc3QsIHZhbHVlOiBSZXF1ZXN0UHJvdmlkZXIsIGZpcnN0PzogYm9vbGVhbik6IEhhbmRsZSB7XG5cdFx0bGV0IGVudHJ5VGVzdDogVGVzdDtcblxuXHRcdGlmICh0eXBlb2YgdGVzdCA9PT0gJ3N0cmluZycpIHtcblx0XHRcdGVudHJ5VGVzdCA9ICh1cmwsIG9wdGlvbnMpID0+IHtcblx0XHRcdFx0cmV0dXJuIHRlc3QgPT09IHVybDtcblx0XHRcdH07XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHRlc3QgaW5zdGFuY2VvZiBSZWdFeHApIHtcblx0XHRcdGVudHJ5VGVzdCA9ICh1cmwsIG9wdGlvbnMpID0+IHtcblx0XHRcdFx0cmV0dXJuIHRlc3QudGVzdCh1cmwpO1xuXHRcdFx0fTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRlbnRyeVRlc3QgPSA8UmVxdWVzdFByb3ZpZGVyVGVzdD4gdGVzdDtcblx0XHR9XG5cblx0XHRyZXR1cm4gc3VwZXIucmVnaXN0ZXIoZW50cnlUZXN0LCB2YWx1ZSwgZmlyc3QpO1xuXHR9XG59XG5cbi8qKlxuICogUmVxdWVzdCBmaWx0ZXJzLCB3aGljaCBmaWx0ZXIgb3IgbW9kaWZ5IHJlc3BvbnNlcy4gVGhlIGRlZmF1bHQgZmlsdGVyIHNpbXBseSBwYXNzZXMgYSByZXNwb25zZSB0aHJvdWdoIHVuY2hhbmdlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGZpbHRlclJlZ2lzdHJ5ID0gbmV3IEZpbHRlclJlZ2lzdHJ5KGZ1bmN0aW9uIChyZXNwb25zZTogUmVzcG9uc2U8YW55Pik6IFJlc3BvbnNlPGFueT4ge1xuXHRyZXR1cm4gcmVzcG9uc2U7XG59KTtcblxuLyoqXG4gKiBSZXF1ZXN0IHByb3ZpZGVycywgd2hpY2ggZnVsZmlsbCByZXF1ZXN0cy5cbiAqL1xuZXhwb3J0IGNvbnN0IHByb3ZpZGVyUmVnaXN0cnkgPSBuZXcgUHJvdmlkZXJSZWdpc3RyeSgpO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RFcnJvcjxUPiBleHRlbmRzIEVycm9yIHtcblx0cmVzcG9uc2U6IFJlc3BvbnNlPFQ+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RGaWx0ZXIge1xuXHQ8VD4ocmVzcG9uc2U6IFJlc3BvbnNlPFQ+LCB1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0RmlsdGVyVGVzdCBleHRlbmRzIFRlc3Qge1xuXHQ8VD4ocmVzcG9uc2U6IFJlc3BvbnNlPGFueT4sIHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RPcHRpb25zIHtcblx0YXV0aD86IHN0cmluZztcblx0Y2FjaGVCdXN0PzogYW55O1xuXHRkYXRhPzogYW55O1xuXHRoYW5kbGVBcz86IHN0cmluZztcblx0aGVhZGVycz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZzsgfTtcblx0bWV0aG9kPzogc3RyaW5nO1xuXHRwYXNzd29yZD86IHN0cmluZztcblx0cXVlcnk/OiBzdHJpbmcgfCBQYXJhbUxpc3Q7XG5cdHJlc3BvbnNlVHlwZT86IHN0cmluZztcblx0dGltZW91dD86IG51bWJlcjtcblx0dXNlcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0UHJvdmlkZXIge1xuXHQ8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFJlc3BvbnNlUHJvbWlzZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0UHJvdmlkZXJUZXN0IGV4dGVuZHMgVGVzdCB7XG5cdCh1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25zZTxUPiB7XG5cdGRhdGE6IFQ7XG5cdG5hdGl2ZVJlc3BvbnNlPzogYW55O1xuXHRyZXF1ZXN0T3B0aW9uczogUmVxdWVzdE9wdGlvbnM7XG5cdHN0YXR1c0NvZGU6IG51bWJlcjtcblx0c3RhdHVzVGV4dD86IHN0cmluZztcblx0dXJsOiBzdHJpbmc7XG5cblx0Z2V0SGVhZGVyKG5hbWU6IHN0cmluZyk6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGUgdGFzayByZXR1cm5lZCBieSBhIHJlcXVlc3QsIHdoaWNoIHdpbGwgcmVzb2x2ZSB0byBhIFJlc3BvbnNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzcG9uc2VQcm9taXNlPFQ+IGV4dGVuZHMgVGFzazxSZXNwb25zZTxUPj4ge31cblxuLyoqXG4gKiBNYWtlIGEgcmVxdWVzdCwgcmV0dXJuaW5nIGEgUHJvbWlzZSB0aGF0IHdpbGwgcmVzb2x2ZSBvciByZWplY3Qgd2hlbiB0aGUgcmVxdWVzdCBjb21wbGV0ZXMuXG4gKi9cbmNvbnN0IHJlcXVlc3Q6IHtcblx0PFQ+KHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBSZXNwb25zZVByb21pc2U8VD47XG5cdGRlbGV0ZTxUPih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUmVzcG9uc2VQcm9taXNlPFQ+O1xuXHRnZXQ8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFJlc3BvbnNlUHJvbWlzZTxUPjtcblx0cG9zdDxUPih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUmVzcG9uc2VQcm9taXNlPFQ+O1xuXHRwdXQ8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFJlc3BvbnNlUHJvbWlzZTxUPjtcbn0gPSA8YW55PiBmdW5jdGlvbiByZXF1ZXN0PFQ+KHVybDogc3RyaW5nLCBvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogUmVzcG9uc2VQcm9taXNlPFQ+IHtcblx0Y29uc3QgcHJvbWlzZSA9IHByb3ZpZGVyUmVnaXN0cnkubWF0Y2godXJsLCBvcHRpb25zKSh1cmwsIG9wdGlvbnMpXG5cdFx0LnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlOiBSZXNwb25zZTxUPikge1xuXHRcdFx0cmV0dXJuIFRhc2sucmVzb2x2ZShmaWx0ZXJSZWdpc3RyeS5tYXRjaChyZXNwb25zZSwgdXJsLCBvcHRpb25zKShyZXNwb25zZSwgdXJsLCBvcHRpb25zKSlcblx0XHRcdFx0LnRoZW4oZnVuY3Rpb24gKGZpbHRlclJlc3BvbnNlOiBhbnkpIHtcblx0XHRcdFx0XHRyZXNwb25zZS5kYXRhID0gZmlsdGVyUmVzcG9uc2UuZGF0YTtcblx0XHRcdFx0XHRyZXR1cm4gcmVzcG9uc2U7XG5cdFx0XHRcdH0pO1xuXHRcdH0pO1xuXG5cdHJldHVybiBwcm9taXNlO1xufTtcblxuWyAnREVMRVRFJywgJ0dFVCcsICdQT1NUJywgJ1BVVCcgXS5mb3JFYWNoKGZ1bmN0aW9uIChtZXRob2QpIHtcblx0KDxhbnk+IHJlcXVlc3QpW21ldGhvZC50b0xvd2VyQ2FzZSgpXSA9IGZ1bmN0aW9uIDxUPih1cmw6IHN0cmluZywgb3B0aW9uczogUmVxdWVzdE9wdGlvbnMgPSB7fSk6IFJlc3BvbnNlUHJvbWlzZTxUPiB7XG5cdFx0b3B0aW9ucyA9IE9iamVjdC5jcmVhdGUob3B0aW9ucyk7XG5cdFx0b3B0aW9ucy5tZXRob2QgPSBtZXRob2Q7XG5cdFx0cmV0dXJuIHJlcXVlc3QodXJsLCBvcHRpb25zKTtcblx0fTtcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCByZXF1ZXN0O1xuXG4vKipcbiAqIEFkZCBhIGZpbHRlciB0aGF0IGF1dG9tYXRpY2FsbHkgcGFyc2VzIGluY29taW5nIEpTT04gcmVzcG9uc2VzLlxuICovXG5maWx0ZXJSZWdpc3RyeS5yZWdpc3Rlcihcblx0ZnVuY3Rpb24gKHJlc3BvbnNlOiBSZXNwb25zZTxhbnk+LCB1cmw6IHN0cmluZywgb3B0aW9uczogUmVxdWVzdE9wdGlvbnMpIHtcblx0XHRyZXR1cm4gdHlwZW9mIHJlc3BvbnNlLmRhdGEgJiYgb3B0aW9ucyAmJiAob3B0aW9ucy5yZXNwb25zZVR5cGUgPT09ICdqc29uJyB8fCBvcHRpb25zLmhhbmRsZUFzID09PSAnanNvbicpO1xuXHR9LFxuXHRmdW5jdGlvbiAocmVzcG9uc2U6IFJlc3BvbnNlPGFueT4sIHVybDogc3RyaW5nLCBvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6IE9iamVjdCB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdGRhdGE6IEpTT04ucGFyc2UoU3RyaW5nKHJlc3BvbnNlLmRhdGEpKVxuXHRcdH07XG5cdH1cbik7XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0lBQUEscUJBQWlCLGNBQWMsQ0FBQyxDQUFBO0lBQ2hDLG9CQUFnQixlQUFlLENBQUMsQ0FBQTtJQUdoQyx5QkFBK0IsWUFBWSxDQUFDLENBQUE7SUFDNUMscUJBQWlCLFFBQVEsQ0FBQyxDQUFBO0lBSzFCO1FBQW9DLGtDQUF1QjtRQUEzRDtZQUFvQyw4QkFBdUI7UUFvQjNELENBQUM7UUFuQkEsaUNBQVEsR0FBUixVQUFTLElBQXlDLEVBQUUsS0FBb0IsRUFBRSxLQUFlO1lBQ3hGLElBQUksU0FBZSxDQUFDO1lBRXBCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzlCLFNBQVMsR0FBRyxVQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsT0FBTztvQkFDbEMsTUFBTSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUM7Z0JBQ3JCLENBQUMsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxZQUFZLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ2pDLFNBQVMsR0FBRyxVQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsT0FBTztvQkFDbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3ZCLENBQUMsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDTCxTQUFTLEdBQXVCLElBQUksQ0FBQztZQUN0QyxDQUFDO1lBRUQsTUFBTSxDQUFDLGdCQUFLLENBQUMsUUFBUSxZQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUNGLHFCQUFDO0lBQUQsQ0FBQyxBQXBCRCxDQUFvQyxrQkFBUSxHQW9CM0M7SUFwQlksc0JBQWMsaUJBb0IxQixDQUFBO0lBRUQsSUFBSSxlQUFlLEdBQVcsZUFBZSxDQUFDO0lBQzlDLEVBQUUsQ0FBQyxDQUFDLGFBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsZUFBZSxHQUFHLGdCQUFnQixDQUFDO0lBQ3BDLENBQUM7SUFFRDtRQUFzQyxvQ0FBeUI7UUFHOUQ7WUFIRCxpQkEyREM7WUF2REMsaUJBQU8sQ0FBQztZQUVSLElBQU0sWUFBWSxHQUFHLFVBQUMsR0FBVyxFQUFFLE9BQXdCO2dCQUMxRCxJQUFJLFFBQVEsR0FBRyxLQUFLLENBQUM7Z0JBQ3JCLElBQUksY0FBb0MsQ0FBQztnQkFDekMsTUFBTSxDQUFDLElBQUksY0FBSSxDQUFnQixVQUFDLE9BQU8sRUFBRSxNQUFNO29CQUM5QyxLQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsUUFBUTt3QkFDNUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQzs0QkFDZCxNQUFNLENBQUM7d0JBQ1IsQ0FBQzt3QkFDRCxjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQzt3QkFDeEMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBQ3RDLENBQUMsQ0FBQyxDQUFDO2dCQUNKLENBQUMsRUFBRTtvQkFDRixFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQ2YsUUFBUSxHQUFHLElBQUksQ0FBQztvQkFDakIsQ0FBQztvQkFDRCxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO3dCQUNwQixjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3pCLENBQUM7Z0JBQ0YsQ0FBQyxDQUFDLENBQUM7WUFDSixDQUFDLENBQUM7WUFFRixxRkFBcUY7WUFDckYsb0ZBQW9GO1lBQ3BGLDRDQUE0QztZQUM1QyxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQUMsR0FBVyxFQUFFLE9BQXdCO2dCQUMxRCxLQUFJLENBQUMsZ0JBQWdCLEdBQUcsY0FBSSxDQUFDLE9BQU8sRUFBRSxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxFQUFvRDt3QkFBbEQsc0JBQWM7b0JBQzVFLEtBQUksQ0FBQyxhQUFhLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQztvQkFDNUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxDQUFDO2dCQUNILEtBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO2dCQUNsQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDLENBQUM7UUFDSCxDQUFDO1FBRUQsbUNBQVEsR0FBUixVQUFTLElBQTJDLEVBQUUsS0FBc0IsRUFBRSxLQUFlO1lBQzVGLElBQUksU0FBZSxDQUFDO1lBRXBCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzlCLFNBQVMsR0FBRyxVQUFDLEdBQUcsRUFBRSxPQUFPO29CQUN4QixNQUFNLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQztnQkFDckIsQ0FBQyxDQUFDO1lBQ0gsQ0FBQztZQUNELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLFlBQVksTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDakMsU0FBUyxHQUFHLFVBQUMsR0FBRyxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QixDQUFDLENBQUM7WUFDSCxDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUM7Z0JBQ0wsU0FBUyxHQUF5QixJQUFJLENBQUM7WUFDeEMsQ0FBQztZQUVELE1BQU0sQ0FBQyxnQkFBSyxDQUFDLFFBQVEsWUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFDRix1QkFBQztJQUFELENBQUMsQUEzREQsQ0FBc0Msa0JBQVEsR0EyRDdDO0lBM0RZLHdCQUFnQixtQkEyRDVCLENBQUE7SUFFRDs7T0FFRztJQUNVLHNCQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsVUFBVSxRQUF1QjtRQUNqRixNQUFNLENBQUMsUUFBUSxDQUFDO0lBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBRUg7O09BRUc7SUFDVSx3QkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFvRHZEOztPQUVHO0lBQ0gsSUFBTSxPQUFPLEdBTUgsaUJBQW9CLEdBQVcsRUFBRSxPQUE0QjtRQUE1Qix1QkFBNEIsR0FBNUIsWUFBNEI7UUFDdEUsSUFBTSxPQUFPLEdBQUcsd0JBQWdCLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDO2FBQ2hFLElBQUksQ0FBQyxVQUFVLFFBQXFCO1lBQ3BDLE1BQU0sQ0FBQyxjQUFJLENBQUMsT0FBTyxDQUFDLHNCQUFjLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztpQkFDdkYsSUFBSSxDQUFDLFVBQVUsY0FBbUI7Z0JBQ2xDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQztnQkFDcEMsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNqQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUosTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUNoQixDQUFDLENBQUM7SUFFRixDQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBRSxDQUFDLE9BQU8sQ0FBQyxVQUFVLE1BQU07UUFDbkQsT0FBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLFVBQWEsR0FBVyxFQUFFLE9BQTRCO1lBQTVCLHVCQUE0QixHQUE1QixZQUE0QjtZQUM3RixPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqQyxPQUFPLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUN4QixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVIO3NCQUFlLE9BQU8sQ0FBQztJQUV2Qjs7T0FFRztJQUNILHNCQUFjLENBQUMsUUFBUSxDQUN0QixVQUFVLFFBQXVCLEVBQUUsR0FBVyxFQUFFLE9BQXVCO1FBQ3RFLE1BQU0sQ0FBQyxPQUFPLFFBQVEsQ0FBQyxJQUFJLElBQUksT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxNQUFNLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUM1RyxDQUFDLEVBQ0QsVUFBVSxRQUF1QixFQUFFLEdBQVcsRUFBRSxPQUF1QjtRQUN0RSxNQUFNLENBQUM7WUFDTixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3ZDLENBQUM7SUFDSCxDQUFDLENBQ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBUYXNrIGZyb20gJy4vYXN5bmMvVGFzayc7XG5pbXBvcnQgaGFzIGZyb20gJy4vcmVxdWVzdC9oYXMnO1xuaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4vUHJvbWlzZSc7XG5pbXBvcnQgUmVnaXN0cnksIHsgVGVzdCB9IGZyb20gJy4vUmVnaXN0cnknO1xuaW1wb3J0IGxvYWQgZnJvbSAnLi9sb2FkJztcbmltcG9ydCB7IFBhcmFtTGlzdCB9IGZyb20gJy4vVXJsU2VhcmNoUGFyYW1zJztcblxuZGVjbGFyZSB2YXIgcmVxdWlyZTogYW55O1xuXG5leHBvcnQgY2xhc3MgRmlsdGVyUmVnaXN0cnkgZXh0ZW5kcyBSZWdpc3RyeTxSZXF1ZXN0RmlsdGVyPiB7XG5cdHJlZ2lzdGVyKHRlc3Q6IHN0cmluZyB8IFJlZ0V4cCB8IFJlcXVlc3RGaWx0ZXJUZXN0LCB2YWx1ZTogUmVxdWVzdEZpbHRlciwgZmlyc3Q/OiBib29sZWFuKTogSGFuZGxlIHtcblx0XHRsZXQgZW50cnlUZXN0OiBUZXN0O1xuXG5cdFx0aWYgKHR5cGVvZiB0ZXN0ID09PSAnc3RyaW5nJykge1xuXHRcdFx0ZW50cnlUZXN0ID0gKHJlc3BvbnNlLCB1cmwsIG9wdGlvbnMpID0+IHtcblx0XHRcdFx0cmV0dXJuIHRlc3QgPT09IHVybDtcblx0XHRcdH07XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHRlc3QgaW5zdGFuY2VvZiBSZWdFeHApIHtcblx0XHRcdGVudHJ5VGVzdCA9IChyZXNwb25zZSwgdXJsLCBvcHRpb25zKSA9PiB7XG5cdFx0XHRcdHJldHVybiB0ZXN0LnRlc3QodXJsKTtcblx0XHRcdH07XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0ZW50cnlUZXN0ID0gPFJlcXVlc3RGaWx0ZXJUZXN0PiB0ZXN0O1xuXHRcdH1cblxuXHRcdHJldHVybiBzdXBlci5yZWdpc3RlcihlbnRyeVRlc3QsIHZhbHVlLCBmaXJzdCk7XG5cdH1cbn1cblxubGV0IGRlZmF1bHRQcm92aWRlcjogc3RyaW5nID0gJy4vcmVxdWVzdC94aHInO1xuaWYgKGhhcygnaG9zdC1ub2RlJykpIHtcblx0ZGVmYXVsdFByb3ZpZGVyID0gJy4vcmVxdWVzdC9ub2RlJztcbn1cblxuZXhwb3J0IGNsYXNzIFByb3ZpZGVyUmVnaXN0cnkgZXh0ZW5kcyBSZWdpc3RyeTxSZXF1ZXN0UHJvdmlkZXI+IHtcblx0cHJpdmF0ZSBfcHJvdmlkZXJQcm9taXNlOiBQcm9taXNlPFJlcXVlc3RQcm92aWRlcj47XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0c3VwZXIoKTtcblxuXHRcdGNvbnN0IGRlZmVyUmVxdWVzdCA9ICh1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUmVzcG9uc2VQcm9taXNlPGFueT4gPT4ge1xuXHRcdFx0bGV0IGNhbmNlbGVkID0gZmFsc2U7XG5cdFx0XHRsZXQgYWN0dWFsUmVzcG9uc2U6IFJlc3BvbnNlUHJvbWlzZTxhbnk+O1xuXHRcdFx0cmV0dXJuIG5ldyBUYXNrPFJlc3BvbnNlPGFueT4+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdFx0dGhpcy5fcHJvdmlkZXJQcm9taXNlLnRoZW4oZnVuY3Rpb24gKHByb3ZpZGVyKSB7XG5cdFx0XHRcdFx0aWYgKGNhbmNlbGVkKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGFjdHVhbFJlc3BvbnNlID0gcHJvdmlkZXIodXJsLCBvcHRpb25zKTtcblx0XHRcdFx0XHRhY3R1YWxSZXNwb25zZS50aGVuKHJlc29sdmUsIHJlamVjdCk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fSwgZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRpZiAoIWNhbmNlbGVkKSB7XG5cdFx0XHRcdFx0Y2FuY2VsZWQgPSB0cnVlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChhY3R1YWxSZXNwb25zZSkge1xuXHRcdFx0XHRcdGFjdHVhbFJlc3BvbnNlLmNhbmNlbCgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9O1xuXG5cdFx0Ly8gVGhlIGZpcnN0IHJlcXVlc3QgdG8gaGl0IHRoZSBkZWZhdWx0IHZhbHVlIHdpbGwga2ljayBvZmYgdGhlIGltcG9ydCBvZiB0aGUgZGVmYXVsdFxuXHRcdC8vIHByb3ZpZGVyLiBXaGlsZSB0aGF0IGltcG9ydCBpcyBpbi1mbGlnaHQsIHN1YnNlcXVlbnQgcmVxdWVzdHMgd2lsbCBxdWV1ZSB1cCB3aGlsZVxuXHRcdC8vIHdhaXRpbmcgZm9yIHRoZSBwcm92aWRlciB0byBiZSBmdWxmaWxsZWQuXG5cdFx0dGhpcy5fZGVmYXVsdFZhbHVlID0gKHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBSZXNwb25zZVByb21pc2U8YW55PiA9PiB7XG5cdFx0XHR0aGlzLl9wcm92aWRlclByb21pc2UgPSBsb2FkKHJlcXVpcmUsIGRlZmF1bHRQcm92aWRlcikudGhlbigoWyBwcm92aWRlck1vZHVsZSBdOiBbIHsgZGVmYXVsdDogUmVxdWVzdFByb3ZpZGVyIH0gXSk6IFJlcXVlc3RQcm92aWRlciA9PiB7XG5cdFx0XHRcdHRoaXMuX2RlZmF1bHRWYWx1ZSA9IHByb3ZpZGVyTW9kdWxlLmRlZmF1bHQ7XG5cdFx0XHRcdHJldHVybiBwcm92aWRlck1vZHVsZS5kZWZhdWx0O1xuXHRcdFx0fSk7XG5cdFx0XHR0aGlzLl9kZWZhdWx0VmFsdWUgPSBkZWZlclJlcXVlc3Q7XG5cdFx0XHRyZXR1cm4gZGVmZXJSZXF1ZXN0KHVybCwgb3B0aW9ucyk7XG5cdFx0fTtcblx0fVxuXG5cdHJlZ2lzdGVyKHRlc3Q6IHN0cmluZyB8IFJlZ0V4cCB8IFJlcXVlc3RQcm92aWRlclRlc3QsIHZhbHVlOiBSZXF1ZXN0UHJvdmlkZXIsIGZpcnN0PzogYm9vbGVhbik6IEhhbmRsZSB7XG5cdFx0bGV0IGVudHJ5VGVzdDogVGVzdDtcblxuXHRcdGlmICh0eXBlb2YgdGVzdCA9PT0gJ3N0cmluZycpIHtcblx0XHRcdGVudHJ5VGVzdCA9ICh1cmwsIG9wdGlvbnMpID0+IHtcblx0XHRcdFx0cmV0dXJuIHRlc3QgPT09IHVybDtcblx0XHRcdH07XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHRlc3QgaW5zdGFuY2VvZiBSZWdFeHApIHtcblx0XHRcdGVudHJ5VGVzdCA9ICh1cmwsIG9wdGlvbnMpID0+IHtcblx0XHRcdFx0cmV0dXJuIHRlc3QudGVzdCh1cmwpO1xuXHRcdFx0fTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRlbnRyeVRlc3QgPSA8UmVxdWVzdFByb3ZpZGVyVGVzdD4gdGVzdDtcblx0XHR9XG5cblx0XHRyZXR1cm4gc3VwZXIucmVnaXN0ZXIoZW50cnlUZXN0LCB2YWx1ZSwgZmlyc3QpO1xuXHR9XG59XG5cbi8qKlxuICogUmVxdWVzdCBmaWx0ZXJzLCB3aGljaCBmaWx0ZXIgb3IgbW9kaWZ5IHJlc3BvbnNlcy4gVGhlIGRlZmF1bHQgZmlsdGVyIHNpbXBseSBwYXNzZXMgYSByZXNwb25zZSB0aHJvdWdoIHVuY2hhbmdlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGZpbHRlclJlZ2lzdHJ5ID0gbmV3IEZpbHRlclJlZ2lzdHJ5KGZ1bmN0aW9uIChyZXNwb25zZTogUmVzcG9uc2U8YW55Pik6IFJlc3BvbnNlPGFueT4ge1xuXHRyZXR1cm4gcmVzcG9uc2U7XG59KTtcblxuLyoqXG4gKiBSZXF1ZXN0IHByb3ZpZGVycywgd2hpY2ggZnVsZmlsbCByZXF1ZXN0cy5cbiAqL1xuZXhwb3J0IGNvbnN0IHByb3ZpZGVyUmVnaXN0cnkgPSBuZXcgUHJvdmlkZXJSZWdpc3RyeSgpO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RFcnJvcjxUPiBleHRlbmRzIEVycm9yIHtcblx0cmVzcG9uc2U6IFJlc3BvbnNlPFQ+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RGaWx0ZXIge1xuXHQ8VD4ocmVzcG9uc2U6IFJlc3BvbnNlPFQ+LCB1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0RmlsdGVyVGVzdCBleHRlbmRzIFRlc3Qge1xuXHQ8VD4ocmVzcG9uc2U6IFJlc3BvbnNlPGFueT4sIHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RPcHRpb25zIHtcblx0YXV0aD86IHN0cmluZztcblx0Y2FjaGVCdXN0PzogYW55O1xuXHRkYXRhPzogYW55O1xuXHRoYW5kbGVBcz86IHN0cmluZztcblx0aGVhZGVycz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZzsgfTtcblx0bWV0aG9kPzogc3RyaW5nO1xuXHRwYXNzd29yZD86IHN0cmluZztcblx0cXVlcnk/OiBzdHJpbmcgfCBQYXJhbUxpc3Q7XG5cdHJlc3BvbnNlVHlwZT86IHN0cmluZztcblx0dGltZW91dD86IG51bWJlcjtcblx0dXNlcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0UHJvdmlkZXIge1xuXHQ8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFJlc3BvbnNlUHJvbWlzZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0UHJvdmlkZXJUZXN0IGV4dGVuZHMgVGVzdCB7XG5cdCh1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25zZTxUPiB7XG5cdGRhdGE6IFQ7XG5cdG5hdGl2ZVJlc3BvbnNlPzogYW55O1xuXHRyZXF1ZXN0T3B0aW9uczogUmVxdWVzdE9wdGlvbnM7XG5cdHN0YXR1c0NvZGU6IG51bWJlcjtcblx0c3RhdHVzVGV4dD86IHN0cmluZztcblx0dXJsOiBzdHJpbmc7XG5cblx0Z2V0SGVhZGVyKG5hbWU6IHN0cmluZyk6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGUgdGFzayByZXR1cm5lZCBieSBhIHJlcXVlc3QsIHdoaWNoIHdpbGwgcmVzb2x2ZSB0byBhIFJlc3BvbnNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzcG9uc2VQcm9taXNlPFQ+IGV4dGVuZHMgVGFzazxSZXNwb25zZTxUPj4ge31cblxuLyoqXG4gKiBNYWtlIGEgcmVxdWVzdCwgcmV0dXJuaW5nIGEgUHJvbWlzZSB0aGF0IHdpbGwgcmVzb2x2ZSBvciByZWplY3Qgd2hlbiB0aGUgcmVxdWVzdCBjb21wbGV0ZXMuXG4gKi9cbmNvbnN0IHJlcXVlc3Q6IHtcblx0PFQ+KHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBSZXNwb25zZVByb21pc2U8VD47XG5cdGRlbGV0ZTxUPih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUmVzcG9uc2VQcm9taXNlPFQ+O1xuXHRnZXQ8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFJlc3BvbnNlUHJvbWlzZTxUPjtcblx0cG9zdDxUPih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUmVzcG9uc2VQcm9taXNlPFQ+O1xuXHRwdXQ8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFJlc3BvbnNlUHJvbWlzZTxUPjtcbn0gPSA8YW55PiBmdW5jdGlvbiByZXF1ZXN0PFQ+KHVybDogc3RyaW5nLCBvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogUmVzcG9uc2VQcm9taXNlPFQ+IHtcblx0Y29uc3QgcHJvbWlzZSA9IHByb3ZpZGVyUmVnaXN0cnkubWF0Y2godXJsLCBvcHRpb25zKSh1cmwsIG9wdGlvbnMpXG5cdFx0LnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlOiBSZXNwb25zZTxUPikge1xuXHRcdFx0cmV0dXJuIFRhc2sucmVzb2x2ZShmaWx0ZXJSZWdpc3RyeS5tYXRjaChyZXNwb25zZSwgdXJsLCBvcHRpb25zKShyZXNwb25zZSwgdXJsLCBvcHRpb25zKSlcblx0XHRcdFx0LnRoZW4oZnVuY3Rpb24gKGZpbHRlclJlc3BvbnNlOiBhbnkpIHtcblx0XHRcdFx0XHRyZXNwb25zZS5kYXRhID0gZmlsdGVyUmVzcG9uc2UuZGF0YTtcblx0XHRcdFx0XHRyZXR1cm4gcmVzcG9uc2U7XG5cdFx0XHRcdH0pO1xuXHRcdH0pO1xuXG5cdHJldHVybiBwcm9taXNlO1xufTtcblxuWyAnREVMRVRFJywgJ0dFVCcsICdQT1NUJywgJ1BVVCcgXS5mb3JFYWNoKGZ1bmN0aW9uIChtZXRob2QpIHtcblx0KDxhbnk+IHJlcXVlc3QpW21ldGhvZC50b0xvd2VyQ2FzZSgpXSA9IGZ1bmN0aW9uIDxUPih1cmw6IHN0cmluZywgb3B0aW9uczogUmVxdWVzdE9wdGlvbnMgPSB7fSk6IFJlc3BvbnNlUHJvbWlzZTxUPiB7XG5cdFx0b3B0aW9ucyA9IE9iamVjdC5jcmVhdGUob3B0aW9ucyk7XG5cdFx0b3B0aW9ucy5tZXRob2QgPSBtZXRob2Q7XG5cdFx0cmV0dXJuIHJlcXVlc3QodXJsLCBvcHRpb25zKTtcblx0fTtcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCByZXF1ZXN0O1xuXG4vKipcbiAqIEFkZCBhIGZpbHRlciB0aGF0IGF1dG9tYXRpY2FsbHkgcGFyc2VzIGluY29taW5nIEpTT04gcmVzcG9uc2VzLlxuICovXG5maWx0ZXJSZWdpc3RyeS5yZWdpc3Rlcihcblx0ZnVuY3Rpb24gKHJlc3BvbnNlOiBSZXNwb25zZTxhbnk+LCB1cmw6IHN0cmluZywgb3B0aW9uczogUmVxdWVzdE9wdGlvbnMpIHtcblx0XHRyZXR1cm4gdHlwZW9mIHJlc3BvbnNlLmRhdGEgJiYgb3B0aW9ucyAmJiAob3B0aW9ucy5yZXNwb25zZVR5cGUgPT09ICdqc29uJyB8fCBvcHRpb25zLmhhbmRsZUFzID09PSAnanNvbicpO1xuXHR9LFxuXHRmdW5jdGlvbiAocmVzcG9uc2U6IFJlc3BvbnNlPGFueT4sIHVybDogc3RyaW5nLCBvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6IE9iamVjdCB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdGRhdGE6IEpTT04ucGFyc2UoU3RyaW5nKHJlc3BvbnNlLmRhdGEpKVxuXHRcdH07XG5cdH1cbik7XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var RequestTimeoutError = (function () { | ||
@@ -22,6 +23,6 @@ function RequestTimeoutError(message) { | ||
return RequestTimeoutError; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = RequestTimeoutError; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdFRpbWVvdXRFcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZXF1ZXN0L2Vycm9ycy9SZXF1ZXN0VGltZW91dEVycm9yLnRzIl0sIm5hbWVzIjpbIlJlcXVlc3RUaW1lb3V0RXJyb3IiLCJSZXF1ZXN0VGltZW91dEVycm9yLmNvbnN0cnVjdG9yIiwiUmVxdWVzdFRpbWVvdXRFcnJvci5uYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUVBO1FBUUNBLDZCQUFZQSxPQUFnQkE7WUFDM0JDLElBQUlBLENBQUNBLE9BQU9BLEdBQUdBLE9BQU9BLElBQUlBLHdCQUF3QkEsQ0FBQ0E7UUFDcERBLENBQUNBO1FBUkRELHNCQUFJQSxxQ0FBSUE7aUJBQVJBO2dCQUNDRSxNQUFNQSxDQUFDQSxxQkFBcUJBLENBQUNBO1lBQzlCQSxDQUFDQTs7O1dBQUFGO1FBT0ZBLDBCQUFDQTtJQUFEQSxDQUFDQSxBQVhELElBV0M7SUFYRDt5Q0FXQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdEVycm9yLCBSZXNwb25zZSB9IGZyb20gJy4uLy4uL3JlcXVlc3QnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZXF1ZXN0VGltZW91dEVycm9yPFQ+IGltcGxlbWVudHMgUmVxdWVzdEVycm9yPFQ+IHtcblx0bWVzc2FnZTogc3RyaW5nO1xuXHRnZXQgbmFtZSgpOiBzdHJpbmcge1xuXHRcdHJldHVybiAnUmVxdWVzdFRpbWVvdXRFcnJvcic7XG5cdH1cblxuXHRyZXNwb25zZTogUmVzcG9uc2U8VD47XG5cblx0Y29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuXHRcdHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1RoZSByZXF1ZXN0IHRpbWVkIG91dC4nO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdFRpbWVvdXRFcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZXF1ZXN0L2Vycm9ycy9SZXF1ZXN0VGltZW91dEVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUVBO1FBUUMsNkJBQVksT0FBZ0I7WUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksd0JBQXdCLENBQUM7UUFDcEQsQ0FBQztRQVJELHNCQUFJLHFDQUFJO2lCQUFSO2dCQUNDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQztZQUM5QixDQUFDOzs7V0FBQTtRQU9GLDBCQUFDO0lBQUQsQ0FBQyxBQVhELElBV0M7SUFYRDt5Q0FXQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdEVycm9yLCBSZXNwb25zZSB9IGZyb20gJy4uLy4uL3JlcXVlc3QnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZXF1ZXN0VGltZW91dEVycm9yPFQ+IGltcGxlbWVudHMgUmVxdWVzdEVycm9yPFQ+IHtcblx0bWVzc2FnZTogc3RyaW5nO1xuXHRnZXQgbmFtZSgpOiBzdHJpbmcge1xuXHRcdHJldHVybiAnUmVxdWVzdFRpbWVvdXRFcnJvcic7XG5cdH1cblxuXHRyZXNwb25zZTogUmVzcG9uc2U8VD47XG5cblx0Y29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuXHRcdHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1RoZSByZXF1ZXN0IHRpbWVkIG91dC4nO1xuXHR9XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var has_1 = require('../has'); | ||
@@ -16,2 +17,2 @@ var global_1 = require('../global'); | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlcXVlc3QvaGFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsb0JBQXlCLFFBQVEsQ0FBQyxDQUFBO0lBQ2xDLHVCQUFtQixXQUFXLENBQUMsQ0FBQTtJQUUvQixTQUFHLENBQUMsYUFBYSxFQUFFLFFBQVEsSUFBSSxnQkFBTSxJQUFJLE9BQU8sZ0JBQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLENBQUM7SUFFOUU7c0JBQWUsYUFBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGhhcywgeyBhZGQgfSBmcm9tICcuLi9oYXMnO1xuaW1wb3J0IGdsb2JhbCBmcm9tICcuLi9nbG9iYWwnO1xuXG5hZGQoJ25vZGUtYnVmZmVyJywgJ0J1ZmZlcicgaW4gZ2xvYmFsICYmIHR5cGVvZiBnbG9iYWwuQnVmZmVyID09PSAnZnVuY3Rpb24nKTtcblxuZXhwb3J0IGRlZmF1bHQgaGFzO1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlcXVlc3QvaGFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLG9CQUF5QixRQUFRLENBQUMsQ0FBQTtJQUNsQyx1QkFBbUIsV0FBVyxDQUFDLENBQUE7SUFFL0IsU0FBRyxDQUFDLGFBQWEsRUFBRSxRQUFRLElBQUksZ0JBQU0sSUFBSSxPQUFPLGdCQUFNLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQyxDQUFDO0lBRTlFO3NCQUFlLGFBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBoYXMsIHsgYWRkIH0gZnJvbSAnLi4vaGFzJztcbmltcG9ydCBnbG9iYWwgZnJvbSAnLi4vZ2xvYmFsJztcblxuYWRkKCdub2RlLWJ1ZmZlcicsICdCdWZmZXInIGluIGdsb2JhbCAmJiB0eXBlb2YgZ2xvYmFsLkJ1ZmZlciA9PT0gJ2Z1bmN0aW9uJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGhhcztcbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Task_1 = require('../async/Task'); | ||
@@ -153,7 +154,7 @@ var RequestTimeoutError_1 = require('./errors/RequestTimeoutError'); | ||
var requestSink = new WritableNodeStreamSink_1.default(request); | ||
var writableRequest = new WritableStream_1.default(requestSink); | ||
options.data.pipeTo(writableRequest) | ||
var writableRequest_1 = new WritableStream_1.default(requestSink); | ||
options.data.pipeTo(writableRequest_1) | ||
.catch(function (error) { | ||
error.response = response; | ||
writableRequest.abort(error); | ||
writableRequest_1.abort(error); | ||
reject(error); | ||
@@ -163,3 +164,3 @@ }); | ||
else { | ||
request.end(); | ||
request.end(options.data); | ||
} | ||
@@ -198,2 +199,2 @@ } | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXF1ZXN0L25vZGUudHMiXSwibmFtZXMiOlsibm9ybWFsaXplSGVhZGVycyIsIm5vZGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEscUJBQWlCLGVBQWUsQ0FBQyxDQUFBO0lBQ2pDLG9DQUFnQyw4QkFBOEIsQ0FBQyxDQUFBO0lBRS9ELElBQVksSUFBSSxXQUFNLE1BQU0sQ0FBQyxDQUFBO0lBQzdCLElBQVksS0FBSyxXQUFNLE9BQU8sQ0FBQyxDQUFBO0lBQy9CLHFCQUE2QixTQUFTLENBQUMsQ0FBQTtJQUV2Qyx5Q0FBcUMsOENBQThDLENBQUMsQ0FBQTtJQUNwRix1Q0FBbUMsNENBQTRDLENBQUMsQ0FBQTtJQUNoRiwrQkFBMkIsMkJBQTJCLENBQUMsQ0FBQTtJQUN2RCwrQkFBMkIsMkJBQTJCLENBQUMsQ0FBQTtJQUN2RCxJQUFZLE9BQU8sV0FBTSxLQUFLLENBQUMsQ0FBQTtJQUMvQixxQkFBbUMsUUFBUSxDQUFDLENBQUE7SUFFNUMsK0ZBQStGO0lBQy9GLElBQUksT0FBTyxHQUFHLFdBQVcsQ0FBQztJQW1EMUIsMEJBQTBCLE9BQW1DO1FBQzVEQSxJQUFNQSxpQkFBaUJBLEdBQStCQSxFQUFFQSxDQUFDQTtRQUN6REEsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsR0FBR0EsSUFBSUEsT0FBT0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDekJBLGlCQUFpQkEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsV0FBV0EsRUFBRUEsQ0FBQ0EsR0FBR0EsT0FBT0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0E7UUFDckRBLENBQUNBO1FBRURBLE1BQU1BLENBQUNBLGlCQUFpQkEsQ0FBQ0E7SUFDMUJBLENBQUNBO0lBRUQsY0FBZ0MsR0FBVyxFQUFFLE9BQW1DO1FBQW5DQyx1QkFBbUNBLEdBQW5DQSxZQUFtQ0E7UUFDL0VBLElBQU1BLFVBQVVBLEdBQUdBLHlCQUFrQkEsQ0FBQ0Es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QUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLFNBQVMsQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDO1lBQy9CLENBQUM7WUFFRCxJQUFJLFlBQVksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRTdDLEtBQUssQ0FBQyxPQUFPLEdBQUcsR0FBRyxHQUFHLGNBQWMsQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFHLFlBQVksR0FBRyxJQUFJLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUN4RixNQUFNLEtBQUssQ0FBQztRQUNiLENBQUMsQ0FBQ0EsQ0FBQ0E7UUFFSEEsTUFBTUEsQ0FBQ0EsT0FBT0EsQ0FBQ0E7SUFDaEJBLENBQUNBO0lBL0xEOzBCQStMQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFRhc2sgZnJvbSAnLi4vYXN5bmMvVGFzayc7XG5pbXBvcnQgUmVxdWVzdFRpbWVvdXRFcnJvciBmcm9tICcuL2Vycm9ycy9SZXF1ZXN0VGltZW91dEVycm9yJztcbmltcG9ydCB7IEhhbmRsZSB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0ICogYXMgaHR0cCBmcm9tICdodHRwJztcbmltcG9ydCAqIGFzIGh0dHBzIGZyb20gJ2h0dHBzJztcbmltcG9ydCB7IGNyZWF0ZUhhbmRsZSB9IGZyb20gJy4uL2xhbmcnO1xuaW1wb3J0IHsgUmVxdWVzdEVycm9yLCBSZXF1ZXN0T3B0aW9ucywgUmVzcG9uc2UsIFJlc3BvbnNlUHJvbWlzZSB9IGZyb20gJy4uL3JlcXVlc3QnO1xuaW1wb3J0IFJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZSBmcm9tICcuLi9zdHJlYW1zL2FkYXB0ZXJzL1JlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZSc7XG5pbXBvcnQgV3JpdGFibGVOb2RlU3RyZWFtU2luayBmcm9tICcuLi9zdHJlYW1zL2FkYXB0ZXJzL1dyaXRhYmxlTm9kZVN0cmVhbVNpbmsnO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtIGZyb20gJy4uL3N0cmVhbXMvUmVhZGFibGVTdHJlYW0nO1xuaW1wb3J0IFdyaXRhYmxlU3RyZWFtIGZyb20gJy4uL3N0cmVhbXMvV3JpdGFibGVTdHJlYW0nO1xuaW1wb3J0ICogYXMgdXJsVXRpbCBmcm9tICd1cmwnO1xuaW1wb3J0IHsgZ2VuZXJhdGVSZXF1ZXN0VXJsIH0gZnJvbSAnLi91dGlsJztcblxuLy8gVE9ETzogV2hlcmUgc2hvdWxkIHRoZSBkb2pvIHZlcnNpb24gY29tZSBmcm9tPyBJdCB1c2VkIHRvIGJlIGtlcm5lbCwgYnV0IHdlIGRvbid0IGhhdmUgdGhhdC5cbmxldCB2ZXJzaW9uID0gJzIuMC4wLXByZSc7XG5cbmludGVyZmFjZSBPcHRpb25zIHtcblx0YWdlbnQ/OiBhbnk7XG5cdGF1dGg/OiBzdHJpbmc7XG5cdGhlYWRlcnM/OiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmc7IH07XG5cdGhvc3Q/OiBzdHJpbmc7XG5cdGhvc3RuYW1lPzogc3RyaW5nO1xuXHRsb2NhbEFkZHJlc3M/OiBzdHJpbmc7XG5cdG1ldGhvZD86IHN0cmluZztcblx0cGF0aD86IHN0cmluZztcblx0cG9ydD86IG51bWJlcjtcblx0c29ja2V0UGF0aD86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIEh0dHBzT3B0aW9ucyBleHRlbmRzIE9wdGlvbnMge1xuXHRjYT86IGFueTtcblx0Y2VydD86IHN0cmluZztcblx0Y2lwaGVycz86IHN0cmluZztcblx0a2V5Pzogc3RyaW5nO1xuXHRwYXNzcGhyYXNlPzogc3RyaW5nO1xuXHRwZng/OiBhbnk7XG5cdHJlamVjdFVuYXV0aG9yaXplZD86IGJvb2xlYW47XG5cdHNlY3VyZVByb3RvY29sPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVSZXF1ZXN0T3B0aW9uczxUPiBleHRlbmRzIFJlcXVlc3RPcHRpb25zIHtcblx0YWdlbnQ/OiBhbnk7XG5cdGNhPzogYW55O1xuXHRjZXJ0Pzogc3RyaW5nO1xuXHRjaXBoZXJzPzogc3RyaW5nO1xuXHRkYXRhRW5jb2Rpbmc/OiBzdHJpbmc7XG5cdGZvbGxvd1JlZGlyZWN0cz86IGJvb2xlYW47XG5cdGtleT86IHN0cmluZztcblx0bG9jYWxBZGRyZXNzPzogc3RyaW5nO1xuXHRwYXNzcGhyYXNlPzogc3RyaW5nO1xuXHRwZng/OiBhbnk7XG5cdHByb3h5Pzogc3RyaW5nO1xuXHRyZWplY3RVbmF1dGhvcml6ZWQ/OiBib29sZWFuO1xuXHRzZWN1cmVQcm90b2NvbD86IHN0cmluZztcblx0c29ja2V0UGF0aD86IHN0cmluZztcblx0c29ja2V0T3B0aW9ucz86IHtcblx0XHRrZWVwQWxpdmU/OiBudW1iZXI7XG5cdFx0bm9EZWxheT86IGJvb2xlYW47XG5cdFx0dGltZW91dD86IG51bWJlcjtcblx0fTtcblx0c3RyZWFtRGF0YT86IGJvb2xlYW47XG5cdHN0cmVhbUVuY29kaW5nPzogc3RyaW5nO1xuXHRzdHJlYW1UYXJnZXQ/OiBXcml0YWJsZVN0cmVhbTxUPjtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplSGVhZGVycyhoZWFkZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSk6IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9IHtcblx0Y29uc3Qgbm9ybWFsaXplZEhlYWRlcnM6IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG5cdGZvciAobGV0IGtleSBpbiBoZWFkZXJzKSB7XG5cdFx0bm9ybWFsaXplZEhlYWRlcnNba2V5LnRvTG93ZXJDYXNlKCldID0gaGVhZGVyc1trZXldO1xuXHR9XG5cblx0cmV0dXJuIG5vcm1hbGl6ZWRIZWFkZXJzO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBub2RlPFQ+KHVybDogc3RyaW5nLCBvcHRpb25zOiBOb2RlUmVxdWVzdE9wdGlvbnM8VD4gPSB7fSk6IFJlc3BvbnNlUHJvbWlzZTxUPiB7XG5cdGNvbnN0IHJlcXVlc3RVcmwgPSBnZW5lcmF0ZVJlcXVlc3RVcmwodXJsLCBvcHRpb25zKTtcblx0Y29uc3QgcGFyc2VkVXJsID0gdXJsVXRpbC5wYXJzZShvcHRpb25zLnByb3h5IHx8IHJlcXVlc3RVcmwpO1xuXHRjb25zdCByZXF1ZXN0T3B0aW9uczogSHR0cHNPcHRpb25zID0ge1xuXHRcdGFnZW50OiBvcHRpb25zLmFnZW50LFxuXHRcdGF1dGg6IHBhcnNlZFVybC5hdXRoIHx8IG9wdGlvbnMuYXV0aCxcblx0XHRjYTogb3B0aW9ucy5jYSxcblx0XHRjZXJ0OiBvcHRpb25zLmNlcnQsXG5cdFx0Y2lwaGVyczogb3B0aW9ucy5jaXBoZXJzLFxuXHRcdGhlYWRlcnM6IG5vcm1hbGl6ZUhlYWRlcnMob3B0aW9ucy5oZWFkZXJzIHx8IHt9KSxcblx0XHRob3N0OiBwYXJzZWRVcmwuaG9zdCxcblx0XHRob3N0bmFtZTogcGFyc2VkVXJsLmhvc3RuYW1lLFxuXHRcdGtleTogb3B0aW9ucy5rZXksXG5cdFx0bG9jYWxBZGRyZXNzOiBvcHRpb25zLmxvY2FsQWRkcmVzcyxcblx0XHRtZXRob2Q6IG9wdGlvbnMubWV0aG9kID8gb3B0aW9ucy5tZXRob2QudG9VcHBlckNhc2UoKSA6ICdHRVQnLFxuXHRcdHBhc3NwaHJhc2U6IG9wdGlvbnMucGFzc3BocmFzZSxcblx0XHRwYXRoOiBwYXJzZWRVcmwucGF0aCxcblx0XHRwZng6IG9wdGlvbnMucGZ4LFxuXHRcdHBvcnQ6IE51bWJlcihwYXJzZWRVcmwucG9ydCksXG5cdFx0cmVqZWN0VW5hdXRob3JpemVkOiBvcHRpb25zLnJlamVjdFVuYXV0aG9yaXplZCxcblx0XHRzZWN1cmVQcm90b2NvbDogb3B0aW9ucy5zZWN1cmVQcm90b2NvbCxcblx0XHRzb2NrZXRQYXRoOiBvcHRpb25zLnNvY2tldFBhdGhcblx0fTtcblxuXHRpZiAoISgndXNlci1hZ2VudCcgaW4gcmVxdWVzdE9wdGlvbnMuaGVhZGVycykpIHtcblx0XHRyZXF1ZXN0T3B0aW9ucy5oZWFkZXJzWyd1c2VyLWFnZW50J10gPSAnZG9qby8nICsgdmVyc2lvbiArICcgTm9kZS5qcy8nICsgcHJvY2Vzcy52ZXJzaW9uLnJlcGxhY2UoL152LywgJycpO1xuXHR9XG5cblx0aWYgKG9wdGlvbnMucHJveHkpIHtcblx0XHRyZXF1ZXN0T3B0aW9ucy5wYXRoID0gcmVxdWVzdFVybDtcblx0XHRpZiAocGFyc2VkVXJsLmF1dGgpIHtcblx0XHRcdHJlcXVlc3RPcHRpb25zLmhlYWRlcnNbJ3Byb3h5LWF1dGhvcml6YXRpb24nXSA9ICdCYXNpYyAnICsgbmV3IEJ1ZmZlcihwYXJzZWRVcmwuYXV0aCkudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuXHRcdH1cblxuXHRcdGxldCBfcGFyc2VkVXJsID0gdXJsVXRpbC5wYXJzZShyZXF1ZXN0VXJsKTtcblx0XHRyZXF1ZXN0T3B0aW9ucy5oZWFkZXJzWydob3N0J10gPSBfcGFyc2VkVXJsLmhvc3Q7XG5cdFx0cmVxdWVzdE9wdGlvbnMuYXV0aCA9IF9wYXJzZWRVcmwuYXV0aCB8fCBvcHRpb25zLmF1dGg7XG5cdH1cblxuXHRpZiAoIW9wdGlvbnMuYXV0aCAmJiAob3B0aW9ucy51c2VyIHx8IG9wdGlvbnMucGFzc3dvcmQpKSB7XG5cdFx0cmVxdWVzdE9wdGlvbnMuYXV0aCA9IGVuY29kZVVSSUNvbXBvbmVudChvcHRpb25zLnVzZXIgfHwgJycpICsgJzonICsgZW5jb2RlVVJJQ29tcG9uZW50KG9wdGlvbnMucGFzc3dvcmQgfHwgJycpO1xuXHR9XG5cblx0Y29uc3QgcmVxdWVzdCA9IChwYXJzZWRVcmwucHJvdG9jb2wgPT09ICdodHRwczonID8gaHR0cHMgOiBodHRwKS5yZXF1ZXN0KHJlcXVlc3RPcHRpb25zKTtcblx0Y29uc3QgcmVzcG9uc2U6IFJlc3BvbnNlPFQ+ID0ge1xuXHRcdGRhdGE6IG51bGwsXG5cdFx0Z2V0SGVhZGVyOiBmdW5jdGlvbiAobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRcdHJldHVybiAodGhpcy5uYXRpdmVSZXNwb25zZSAmJiB0aGlzLm5hdGl2ZVJlc3BvbnNlLmhlYWRlcnNbbmFtZS50b0xvd2VyQ2FzZSgpXSkgfHwgbnVsbDtcblx0XHR9LFxuXHRcdHJlcXVlc3RPcHRpb25zOiBvcHRpb25zLFxuXHRcdHN0YXR1c0NvZGU6IG51bGwsXG5cdFx0dXJsOiByZXF1ZXN0VXJsXG5cdH07XG5cblx0Y29uc3QgcHJvbWlzZSA9IG5ldyBUYXNrPFJlc3BvbnNlPFQ+PihmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0aWYgKG9wdGlvbnMuc29ja2V0T3B0aW9ucykge1xuXHRcdFx0aWYgKCd0aW1lb3V0JyBpbiBvcHRpb25zLnNvY2tldE9wdGlvbnMpIHtcblx0XHRcdFx0cmVxdWVzdC5zZXRUaW1lb3V0KG9wdGlvbnMuc29ja2V0T3B0aW9ucy50aW1lb3V0KTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKCdub0RlbGF5JyBpbiBvcHRpb25zLnNvY2tldE9wdGlvbnMpIHtcblx0XHRcdFx0cmVxdWVzdC5zZXROb0RlbGF5KG9wdGlvbnMuc29ja2V0T3B0aW9ucy5ub0RlbGF5KTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKCdrZWVwQWxpdmUnIGluIG9wdGlvbnMuc29ja2V0T3B0aW9ucykge1xuXHRcdFx0XHRjb25zdCBpbml0aWFsRGVsYXk6IG51bWJlciA9IG9wdGlvbnMuc29ja2V0T3B0aW9ucy5rZWVwQWxpdmU7XG5cdFx0XHRcdHJlcXVlc3Quc2V0U29ja2V0S2VlcEFsaXZlKGluaXRpYWxEZWxheSA+PSAwLCBpbml0aWFsRGVsYXkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGxldCB0aW1lb3V0OiBIYW5kbGU7XG5cdFx0cmVxdWVzdC5vbmNlKCdyZXNwb25zZScsIGZ1bmN0aW9uIChuYXRpdmVSZXNwb25zZTogaHR0cC5DbGllbnRSZXNwb25zZSk6IHZvaWQge1xuXHRcdFx0cmVzcG9uc2UubmF0aXZlUmVzcG9uc2UgPSBuYXRpdmVSZXNwb25zZTtcblx0XHRcdHJlc3BvbnNlLnN0YXR1c0NvZGUgPSBuYXRpdmVSZXNwb25zZS5zdGF0dXNDb2RlO1xuXG5cdFx0XHQvLyBSZWRpcmVjdGlvbiBoYW5kbGluZyBkZWZhdWx0cyB0byB0cnVlIGluIG9yZGVyIHRvIGhhcm1vbmlzZSB3aXRoIHRoZSBYSFIgcHJvdmlkZXIsIHdoaWNoIHdpbGwgYWx3YXlzXG5cdFx0XHQvLyBmb2xsb3cgcmVkaXJlY3RzXG5cdFx0XHQvLyBUT0RPOiBUaGlzIHJlZGlyZWN0IGNvZGUgaXMgbm90IDEwMCUgY29ycmVjdCBhY2NvcmRpbmcgdG8gdGhlIFJGQzsgbmVlZHMgdG8gaGFuZGxlIHJlZGlyZWN0IGxvb3BzIGFuZFxuXHRcdFx0Ly8gcmVzdHJpY3QvbW9kaWZ5IGNlcnRhaW4gcmVkaXJlY3RzXG5cdFx0XHRpZiAoXG5cdFx0XHRcdHJlc3BvbnNlLnN0YXR1c0NvZGUgPj0gMzAwICYmXG5cdFx0XHRcdHJlc3BvbnNlLnN0YXR1c0NvZGUgPCA0MDAgJiZcblx0XHRcdFx0cmVzcG9uc2Uuc3RhdHVzQ29kZSAhPT0gMzA0ICYmXG5cdFx0XHRcdG9wdGlvbnMuZm9sbG93UmVkaXJlY3RzICE9PSBmYWxzZSAmJlxuXHRcdFx0XHRuYXRpdmVSZXNwb25zZS5oZWFkZXJzLmxvY2F0aW9uXG5cdFx0XHQpIHtcblx0XHRcdFx0cmVzb2x2ZShub2RlKG5hdGl2ZVJlc3BvbnNlLmhlYWRlcnMubG9jYXRpb24sIG9wdGlvbnMpKTtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRvcHRpb25zLnN0cmVhbUVuY29kaW5nICYmIG5hdGl2ZVJlc3BvbnNlLnNldEVuY29kaW5nKG9wdGlvbnMuc3RyZWFtRW5jb2RpbmcpO1xuXHRcdFx0aWYgKG9wdGlvbnMuc3RyZWFtVGFyZ2V0KSB7XG5cdFx0XHRcdGNvbnN0IHJlc3BvbnNlU291cmNlID0gbmV3IFJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZShuYXRpdmVSZXNwb25zZSk7XG5cdFx0XHRcdGNvbnN0IHJlc3BvbnNlUmVhZGFibGVTdHJlYW0gPSBuZXcgUmVhZGFibGVTdHJlYW0ocmVzcG9uc2VTb3VyY2UpO1xuXG5cdFx0XHRcdHJlc3BvbnNlUmVhZGFibGVTdHJlYW0ucGlwZVRvKDxhbnk+IG9wdGlvbnMuc3RyZWFtVGFyZ2V0KVxuXHRcdFx0XHRcdC50aGVuKFxuXHRcdFx0XHRcdFx0ZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdFx0XHRyZXNvbHZlKHJlc3BvbnNlKTtcblx0XHRcdFx0XHRcdH0sXG5cdFx0XHRcdFx0XHRmdW5jdGlvbiAoZXJyb3I6IFJlcXVlc3RFcnJvcjxUPikge1xuXHRcdFx0XHRcdFx0XHRvcHRpb25zLnN0cmVhbVRhcmdldC5hYm9ydChlcnJvcik7XG5cdFx0XHRcdFx0XHRcdHJlcXVlc3QuYWJvcnQoKTtcblx0XHRcdFx0XHRcdFx0ZXJyb3IucmVzcG9uc2UgPSByZXNwb25zZTtcblx0XHRcdFx0XHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHQpO1xuXHRcdFx0fVxuXG5cdFx0XHRsZXQgZGF0YTogYW55W107XG5cdFx0XHRsZXQgbG9hZGVkOiBudW1iZXI7XG5cdFx0XHRpZiAoIW9wdGlvbnMuc3RyZWFtRGF0YSkge1xuXHRcdFx0XHRkYXRhID0gW107XG5cdFx0XHRcdGxvYWRlZCA9IDA7XG5cblx0XHRcdFx0bmF0aXZlUmVzcG9uc2Uub24oJ2RhdGEnLCBmdW5jdGlvbiAoY2h1bms6IGFueSk6IHZvaWQge1xuXHRcdFx0XHRcdGRhdGEucHVzaChjaHVuayk7XG5cdFx0XHRcdFx0bG9hZGVkICs9ICh0eXBlb2YgY2h1bmsgPT09ICdzdHJpbmcnKSA/XG5cdFx0XHRcdFx0XHRCdWZmZXIuYnl0ZUxlbmd0aChjaHVuaywgb3B0aW9ucy5zdHJlYW1FbmNvZGluZykgOlxuXHRcdFx0XHRcdFx0Y2h1bmsubGVuZ3RoO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblxuXHRcdFx0bmF0aXZlUmVzcG9uc2Uub25jZSgnZW5kJywgZnVuY3Rpb24gKCk6IHZvaWQge1xuXHRcdFx0XHR0aW1lb3V0ICYmIHRpbWVvdXQuZGVzdHJveSgpO1xuXG5cdFx0XHRcdGlmICghb3B0aW9ucy5zdHJlYW1EYXRhKSB7XG5cdFx0XHRcdFx0Ly8gVE9ETzogd2hhdCB0eXBlIHNob3VsZCBkYXRhIGhhdmU/XG5cdFx0XHRcdFx0cmVzcG9uc2UuZGF0YSA9IDxhbnk+IChvcHRpb25zLnN0cmVhbUVuY29kaW5nID8gZGF0YS5qb2luKCcnKSA6IEJ1ZmZlci5jb25jYXQoZGF0YSwgbG9hZGVkKSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBJZiB1c2luZyBhIHN0cmVhbVRhcmdldCwgd2FpdCBmb3IgaXQgdG8gZmluaXNoIGluIGNhc2UgaXQgdGhyb3dzIGFuIGVycm9yXG5cdFx0XHRcdGlmICghb3B0aW9ucy5zdHJlYW1UYXJnZXQpIHtcblx0XHRcdFx0XHRyZXNvbHZlKHJlc3BvbnNlKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRvcHRpb25zLnN0cmVhbVRhcmdldC5jbG9zZSgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9KTtcblxuXHRcdHJlcXVlc3Qub25jZSgnZXJyb3InLCByZWplY3QpO1xuXG5cdFx0aWYgKG9wdGlvbnMuZGF0YSkge1xuXHRcdFx0aWYgKG9wdGlvbnMuZGF0YSBpbnN0YW5jZW9mIFJlYWRhYmxlU3RyZWFtKSB7XG5cdFx0XHRcdGNvbnN0IHJlcXVlc3RTaW5rID0gbmV3IFdyaXRhYmxlTm9kZVN0cmVhbVNpbmsocmVxdWVzdCk7XG5cdFx0XHRcdGNvbnN0IHdyaXRhYmxlUmVxdWVzdCA9IG5ldyBXcml0YWJsZVN0cmVhbShyZXF1ZXN0U2luayk7XG5cdFx0XHRcdG9wdGlvbnMuZGF0YS5waXBlVG8od3JpdGFibGVSZXF1ZXN0KVxuXHRcdFx0XHRcdC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IFJlcXVlc3RFcnJvcjxUPikge1xuXHRcdFx0XHRcdFx0ZXJyb3IucmVzcG9uc2UgPSByZXNwb25zZTtcblx0XHRcdFx0XHRcdHdyaXRhYmxlUmVxdWVzdC5hYm9ydChlcnJvcik7XG5cdFx0XHRcdFx0XHRyZWplY3QoZXJyb3IpO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHJlcXVlc3QuZW5kKCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0cmVxdWVzdC5lbmQoKTtcblx0XHR9XG5cblx0XHRpZiAob3B0aW9ucy50aW1lb3V0ID4gMCAmJiBvcHRpb25zLnRpbWVvdXQgIT09IEluZmluaXR5KSB7XG5cdFx0XHR0aW1lb3V0ID0gKGZ1bmN0aW9uICgpOiBIYW5kbGUge1xuXHRcdFx0XHRjb25zdCB0aW1lciA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCk6IHZvaWQge1xuXHRcdFx0XHRcdGNvbnN0IGVycm9yID0gbmV3IFJlcXVlc3RUaW1lb3V0RXJyb3IoJ1JlcXVlc3QgdGltZWQgb3V0IGFmdGVyICcgKyBvcHRpb25zLnRpbWVvdXQgKyAnbXMnKTtcblx0XHRcdFx0XHRlcnJvci5yZXNwb25zZSA9IHJlc3BvbnNlO1xuXHRcdFx0XHRcdHJlamVjdChlcnJvcik7XG5cdFx0XHRcdH0sIG9wdGlvbnMudGltZW91dCk7XG5cblx0XHRcdFx0cmV0dXJuIGNyZWF0ZUhhbmRsZShmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHRcdFx0Y2xlYXJUaW1lb3V0KHRpbWVyKTtcblx0XHRcdFx0fSk7XG5cdFx0XHR9KSgpO1xuXHRcdH1cblx0fSwgZnVuY3Rpb24gKCkge1xuXHRcdHJlcXVlc3QuYWJvcnQoKTtcblx0fSkuY2F0Y2goZnVuY3Rpb24gKGVycm9yOiBFcnJvcik6IGFueSB7XG5cdFx0bGV0IHBhcnNlZFVybCA9IHVybFV0aWwucGFyc2UodXJsKTtcblxuXHRcdGlmIChwYXJzZWRVcmwuYXV0aCkge1xuXHRcdFx0cGFyc2VkVXJsLmF1dGggPSAnKHJlZGFjdGVkKSc7XG5cdFx0fVxuXG5cdFx0bGV0IHNhbml0aXplZFVybCA9IHVybFV0aWwuZm9ybWF0KHBhcnNlZFVybCk7XG5cblx0XHRlcnJvci5tZXNzYWdlID0gJ1snICsgcmVxdWVzdE9wdGlvbnMubWV0aG9kICsgJyAnICsgc2FuaXRpemVkVXJsICsgJ10gJyArIGVycm9yLm1lc3NhZ2U7XG5cdFx0dGhyb3cgZXJyb3I7XG5cdH0pO1xuXG5cdHJldHVybiBwcm9taXNlO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXF1ZXN0L25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEscUJBQWlCLGVBQWUsQ0FBQyxDQUFBO0lBQ2pDLG9DQUFnQyw4QkFBOEIsQ0FBQyxDQUFBO0lBRS9ELElBQVksSUFBSSxXQUFNLE1BQU0sQ0FBQyxDQUFBO0lBQzdCLElBQVksS0FBSyxXQUFNLE9BQU8sQ0FBQyxDQUFBO0lBQy9CLHFCQUE2QixTQUFTLENBQUMsQ0FBQTtJQUV2Qyx5Q0FBcUMsOENBQThDLENBQUMsQ0FBQTtJQUNwRix1Q0FBbUMsNENBQTRDLENBQUMsQ0FBQTtJQUNoRiwrQkFBMkIsMkJBQTJCLENBQUMsQ0FBQTtJQUN2RCwrQkFBMkIsMkJBQTJCLENBQUMsQ0FBQTtJQUN2RCxJQUFZLE9BQU8sV0FBTSxLQUFLLENBQUMsQ0FBQTtJQUMvQixxQkFBbUMsUUFBUSxDQUFDLENBQUE7SUFFNUMsK0ZBQStGO0lBQy9GLElBQUksT0FBTyxHQUFHLFdBQVcsQ0FBQztJQW1EMUIsMEJBQTBCLE9BQW1DO1FBQzVELElBQU0saUJBQWlCLEdBQStCLEVBQUUsQ0FBQztRQUN6RCxHQUFHLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBRUQsTUFBTSxDQUFDLGlCQUFpQixDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFnQyxHQUFXLEVBQUUsT0FBbUM7UUFBbkMsdUJBQW1DLEdBQW5DLFlBQW1DO1FBQy9FLElBQU0sVUFBVSxHQUFHLHlCQUFrQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNwRCxJQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLENBQUM7UUFDN0QsSUFBTSxjQUFjLEdBQWlCO1lBQ3BDLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztZQUNwQixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsSUFBSTtZQUNwQyxFQUFFLEVBQUUsT0FBTyxDQUFDLEVBQUU7WUFDZCxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNoRCxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUk7WUFDcEIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxRQUFRO1lBQzVCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRztZQUNoQixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7WUFDbEMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLO1lBQzdELFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtZQUM5QixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUk7WUFDcEIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1lBQ2hCLElBQUksRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUM1QixrQkFBa0IsRUFBRSxPQUFPLENBQUMsa0JBQWtCO1lBQzlDLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztZQUN0QyxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7U0FDOUIsQ0FBQztRQUVGLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLElBQUksY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQyxjQUFjLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLE9BQU8sR0FBRyxPQUFPLEdBQUcsV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1RyxDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDbkIsY0FBYyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7WUFDakMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLGNBQWMsQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsR0FBRyxRQUFRLEdBQUcsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMxRyxDQUFDO1lBRUQsSUFBSSxVQUFVLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUMzQyxjQUFjLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDakQsY0FBYyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDdkQsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6RCxjQUFjLENBQUMsSUFBSSxHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEdBQUcsR0FBRyxHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7UUFDakgsQ0FBQztRQUVELElBQU0sT0FBTyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsS0FBSyxRQUFRLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6RixJQUFNLFFBQVEsR0FBZ0I7WUFDN0IsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUUsVUFBVSxJQUFZO2dCQUNoQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO1lBQ3pGLENBQUM7WUFDRCxjQUFjLEVBQUUsT0FBTztZQUN2QixVQUFVLEVBQUUsSUFBSTtZQUNoQixHQUFHLEVBQUUsVUFBVTtTQUNmLENBQUM7UUFFRixJQUFNLE9BQU8sR0FBRyxJQUFJLGNBQUksQ0FBYyxVQUFVLE9BQU8sRUFBRSxNQUFNO1lBQzlELEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO2dCQUMzQixFQUFFLENBQUMsQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7b0JBQ3hDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDbkQsQ0FBQztnQkFFRCxFQUFFLENBQUMsQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7b0JBQ3hDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDbkQsQ0FBQztnQkFFRCxFQUFFLENBQUMsQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7b0JBQzFDLElBQU0sWUFBWSxHQUFXLE9BQU8sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO29CQUM3RCxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxJQUFJLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztnQkFDN0QsQ0FBQztZQUNGLENBQUM7WUFFRCxJQUFJLE9BQWUsQ0FBQztZQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxVQUFVLGNBQW1DO2dCQUNyRSxRQUFRLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztnQkFDekMsUUFBUSxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsVUFBVSxDQUFDO2dCQUVoRCx1R0FBdUc7Z0JBQ3ZHLG1CQUFtQjtnQkFDbkIsd0dBQXdHO2dCQUN4RyxvQ0FBb0M7Z0JBQ3BDLEVBQUUsQ0FBQyxDQUNGLFFBQVEsQ0FBQyxVQUFVLElBQUksR0FBRztvQkFDMUIsUUFBUSxDQUFDLFVBQVUsR0FBRyxHQUFHO29CQUN6QixRQUFRLENBQUMsVUFBVSxLQUFLLEdBQUc7b0JBQzNCLE9BQU8sQ0FBQyxlQUFlLEtBQUssS0FBSztvQkFDakMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUN4QixDQUFDLENBQUMsQ0FBQztvQkFDRixPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7b0JBQ3hELE1BQU0sQ0FBQztnQkFDUixDQUFDO2dCQUVELE9BQU8sQ0FBQyxjQUFjLElBQUksY0FBYyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQzdFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO29CQUMxQixJQUFNLGNBQWMsR0FBRyxJQUFJLGtDQUF3QixDQUFDLGNBQWMsQ0FBQyxDQUFDO29CQUNwRSxJQUFNLHNCQUFzQixHQUFHLElBQUksd0JBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztvQkFFbEUsc0JBQXNCLENBQUMsTUFBTSxDQUFPLE9BQU8sQ0FBQyxZQUFZLENBQUM7eUJBQ3ZELElBQUksQ0FDSjt3QkFDQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQ25CLENBQUMsRUFDRCxVQUFVLEtBQXNCO3dCQUMvQixPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDbEMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUNoQixLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQzt3QkFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNmLENBQUMsQ0FDRCxDQUFDO2dCQUNKLENBQUM7Z0JBRUQsSUFBSSxJQUFXLENBQUM7Z0JBQ2hCLElBQUksTUFBYyxDQUFDO2dCQUNuQixFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUN6QixJQUFJLEdBQUcsRUFBRSxDQUFDO29CQUNWLE1BQU0sR0FBRyxDQUFDLENBQUM7b0JBRVgsY0FBYyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsVUFBVSxLQUFVO3dCQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUNqQixNQUFNLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7NEJBQ3BDLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxjQUFjLENBQUM7NEJBQ2hELEtBQUssQ0FBQyxNQUFNLENBQUM7b0JBQ2YsQ0FBQyxDQUFDLENBQUM7Z0JBQ0osQ0FBQztnQkFFRCxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDMUIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFFN0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQzt3QkFDekIsb0NBQW9DO3dCQUNwQyxRQUFRLENBQUMsSUFBSSxHQUFTLENBQUMsT0FBTyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7b0JBQzlGLENBQUM7b0JBRUQsNEVBQTRFO29CQUM1RSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO3dCQUMzQixPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQ25CLENBQUM7b0JBQ0QsSUFBSSxDQUFDLENBQUM7d0JBQ0wsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDOUIsQ0FBQztnQkFDRixDQUFDLENBQUMsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBRUgsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFOUIsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ2xCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLFlBQVksd0JBQWMsQ0FBQyxDQUFDLENBQUM7b0JBQzVDLElBQU0sV0FBVyxHQUFHLElBQUksZ0NBQXNCLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ3hELElBQU0saUJBQWUsR0FBRyxJQUFJLHdCQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQ3hELE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFlLENBQUM7eUJBQ2xDLEtBQUssQ0FBQyxVQUFVLEtBQXNCO3dCQUN0QyxLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQzt3QkFDMUIsaUJBQWUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQzdCLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDZixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksQ0FBQyxDQUFDO29CQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMzQixDQUFDO1lBQ0YsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNMLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNmLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pELE9BQU8sR0FBRyxDQUFDO29CQUNWLElBQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQzt3QkFDeEIsSUFBTSxLQUFLLEdBQUcsSUFBSSw2QkFBbUIsQ0FBQywwQkFBMEIsR0FBRyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDO3dCQUMzRixLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQzt3QkFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNmLENBQUMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBRXBCLE1BQU0sQ0FBQyxtQkFBWSxDQUFDO3dCQUNuQixZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JCLENBQUMsQ0FBQyxDQUFDO2dCQUNKLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDTixDQUFDO1FBQ0YsQ0FBQyxFQUFFO1lBQ0YsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLEtBQVk7WUFDOUIsSUFBSSxTQUFTLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUVuQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDcEIsU0FBUyxDQUFDLElBQUksR0FBRyxZQUFZLENBQUM7WUFDL0IsQ0FBQztZQUVELElBQUksWUFBWSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFN0MsS0FBSyxDQUFDLE9BQU8sR0FBRyxHQUFHLEdBQUcsY0FBYyxDQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsWUFBWSxHQUFHLElBQUksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3hGLE1BQU0sS0FBSyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsT0FBTyxDQUFDO0lBQ2hCLENBQUM7SUEvTEQ7MEJBK0xDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVGFzayBmcm9tICcuLi9hc3luYy9UYXNrJztcbmltcG9ydCBSZXF1ZXN0VGltZW91dEVycm9yIGZyb20gJy4vZXJyb3JzL1JlcXVlc3RUaW1lb3V0RXJyb3InO1xuaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgKiBhcyBodHRwIGZyb20gJ2h0dHAnO1xuaW1wb3J0ICogYXMgaHR0cHMgZnJvbSAnaHR0cHMnO1xuaW1wb3J0IHsgY3JlYXRlSGFuZGxlIH0gZnJvbSAnLi4vbGFuZyc7XG5pbXBvcnQgeyBSZXF1ZXN0RXJyb3IsIFJlcXVlc3RPcHRpb25zLCBSZXNwb25zZSwgUmVzcG9uc2VQcm9taXNlIH0gZnJvbSAnLi4vcmVxdWVzdCc7XG5pbXBvcnQgUmVhZGFibGVOb2RlU3RyZWFtU291cmNlIGZyb20gJy4uL3N0cmVhbXMvYWRhcHRlcnMvUmVhZGFibGVOb2RlU3RyZWFtU291cmNlJztcbmltcG9ydCBXcml0YWJsZU5vZGVTdHJlYW1TaW5rIGZyb20gJy4uL3N0cmVhbXMvYWRhcHRlcnMvV3JpdGFibGVOb2RlU3RyZWFtU2luayc7XG5pbXBvcnQgUmVhZGFibGVTdHJlYW0gZnJvbSAnLi4vc3RyZWFtcy9SZWFkYWJsZVN0cmVhbSc7XG5pbXBvcnQgV3JpdGFibGVTdHJlYW0gZnJvbSAnLi4vc3RyZWFtcy9Xcml0YWJsZVN0cmVhbSc7XG5pbXBvcnQgKiBhcyB1cmxVdGlsIGZyb20gJ3VybCc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJlcXVlc3RVcmwgfSBmcm9tICcuL3V0aWwnO1xuXG4vLyBUT0RPOiBXaGVyZSBzaG91bGQgdGhlIGRvam8gdmVyc2lvbiBjb21lIGZyb20/IEl0IHVzZWQgdG8gYmUga2VybmVsLCBidXQgd2UgZG9uJ3QgaGF2ZSB0aGF0LlxubGV0IHZlcnNpb24gPSAnMi4wLjAtcHJlJztcblxuaW50ZXJmYWNlIE9wdGlvbnMge1xuXHRhZ2VudD86IGFueTtcblx0YXV0aD86IHN0cmluZztcblx0aGVhZGVycz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZzsgfTtcblx0aG9zdD86IHN0cmluZztcblx0aG9zdG5hbWU/OiBzdHJpbmc7XG5cdGxvY2FsQWRkcmVzcz86IHN0cmluZztcblx0bWV0aG9kPzogc3RyaW5nO1xuXHRwYXRoPzogc3RyaW5nO1xuXHRwb3J0PzogbnVtYmVyO1xuXHRzb2NrZXRQYXRoPzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgSHR0cHNPcHRpb25zIGV4dGVuZHMgT3B0aW9ucyB7XG5cdGNhPzogYW55O1xuXHRjZXJ0Pzogc3RyaW5nO1xuXHRjaXBoZXJzPzogc3RyaW5nO1xuXHRrZXk/OiBzdHJpbmc7XG5cdHBhc3NwaHJhc2U/OiBzdHJpbmc7XG5cdHBmeD86IGFueTtcblx0cmVqZWN0VW5hdXRob3JpemVkPzogYm9vbGVhbjtcblx0c2VjdXJlUHJvdG9jb2w/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm9kZVJlcXVlc3RPcHRpb25zPFQ+IGV4dGVuZHMgUmVxdWVzdE9wdGlvbnMge1xuXHRhZ2VudD86IGFueTtcblx0Y2E/OiBhbnk7XG5cdGNlcnQ/OiBzdHJpbmc7XG5cdGNpcGhlcnM/OiBzdHJpbmc7XG5cdGRhdGFFbmNvZGluZz86IHN0cmluZztcblx0Zm9sbG93UmVkaXJlY3RzPzogYm9vbGVhbjtcblx0a2V5Pzogc3RyaW5nO1xuXHRsb2NhbEFkZHJlc3M/OiBzdHJpbmc7XG5cdHBhc3NwaHJhc2U/OiBzdHJpbmc7XG5cdHBmeD86IGFueTtcblx0cHJveHk/OiBzdHJpbmc7XG5cdHJlamVjdFVuYXV0aG9yaXplZD86IGJvb2xlYW47XG5cdHNlY3VyZVByb3RvY29sPzogc3RyaW5nO1xuXHRzb2NrZXRQYXRoPzogc3RyaW5nO1xuXHRzb2NrZXRPcHRpb25zPzoge1xuXHRcdGtlZXBBbGl2ZT86IG51bWJlcjtcblx0XHRub0RlbGF5PzogYm9vbGVhbjtcblx0XHR0aW1lb3V0PzogbnVtYmVyO1xuXHR9O1xuXHRzdHJlYW1EYXRhPzogYm9vbGVhbjtcblx0c3RyZWFtRW5jb2Rpbmc/OiBzdHJpbmc7XG5cdHN0cmVhbVRhcmdldD86IFdyaXRhYmxlU3RyZWFtPFQ+O1xufVxuXG5mdW5jdGlvbiBub3JtYWxpemVIZWFkZXJzKGhlYWRlcnM6IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9KTogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0ge1xuXHRjb25zdCBub3JtYWxpemVkSGVhZGVyczogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcblx0Zm9yIChsZXQga2V5IGluIGhlYWRlcnMpIHtcblx0XHRub3JtYWxpemVkSGVhZGVyc1trZXkudG9Mb3dlckNhc2UoKV0gPSBoZWFkZXJzW2tleV07XG5cdH1cblxuXHRyZXR1cm4gbm9ybWFsaXplZEhlYWRlcnM7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG5vZGU8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM6IE5vZGVSZXF1ZXN0T3B0aW9uczxUPiA9IHt9KTogUmVzcG9uc2VQcm9taXNlPFQ+IHtcblx0Y29uc3QgcmVxdWVzdFVybCA9IGdlbmVyYXRlUmVxdWVzdFVybCh1cmwsIG9wdGlvbnMpO1xuXHRjb25zdCBwYXJzZWRVcmwgPSB1cmxVdGlsLnBhcnNlKG9wdGlvbnMucHJveHkgfHwgcmVxdWVzdFVybCk7XG5cdGNvbnN0IHJlcXVlc3RPcHRpb25zOiBIdHRwc09wdGlvbnMgPSB7XG5cdFx0YWdlbnQ6IG9wdGlvbnMuYWdlbnQsXG5cdFx0YXV0aDogcGFyc2VkVXJsLmF1dGggfHwgb3B0aW9ucy5hdXRoLFxuXHRcdGNhOiBvcHRpb25zLmNhLFxuXHRcdGNlcnQ6IG9wdGlvbnMuY2VydCxcblx0XHRjaXBoZXJzOiBvcHRpb25zLmNpcGhlcnMsXG5cdFx0aGVhZGVyczogbm9ybWFsaXplSGVhZGVycyhvcHRpb25zLmhlYWRlcnMgfHwge30pLFxuXHRcdGhvc3Q6IHBhcnNlZFVybC5ob3N0LFxuXHRcdGhvc3RuYW1lOiBwYXJzZWRVcmwuaG9zdG5hbWUsXG5cdFx0a2V5OiBvcHRpb25zLmtleSxcblx0XHRsb2NhbEFkZHJlc3M6IG9wdGlvbnMubG9jYWxBZGRyZXNzLFxuXHRcdG1ldGhvZDogb3B0aW9ucy5tZXRob2QgPyBvcHRpb25zLm1ldGhvZC50b1VwcGVyQ2FzZSgpIDogJ0dFVCcsXG5cdFx0cGFzc3BocmFzZTogb3B0aW9ucy5wYXNzcGhyYXNlLFxuXHRcdHBhdGg6IHBhcnNlZFVybC5wYXRoLFxuXHRcdHBmeDogb3B0aW9ucy5wZngsXG5cdFx0cG9ydDogTnVtYmVyKHBhcnNlZFVybC5wb3J0KSxcblx0XHRyZWplY3RVbmF1dGhvcml6ZWQ6IG9wdGlvbnMucmVqZWN0VW5hdXRob3JpemVkLFxuXHRcdHNlY3VyZVByb3RvY29sOiBvcHRpb25zLnNlY3VyZVByb3RvY29sLFxuXHRcdHNvY2tldFBhdGg6IG9wdGlvbnMuc29ja2V0UGF0aFxuXHR9O1xuXG5cdGlmICghKCd1c2VyLWFnZW50JyBpbiByZXF1ZXN0T3B0aW9ucy5oZWFkZXJzKSkge1xuXHRcdHJlcXVlc3RPcHRpb25zLmhlYWRlcnNbJ3VzZXItYWdlbnQnXSA9ICdkb2pvLycgKyB2ZXJzaW9uICsgJyBOb2RlLmpzLycgKyBwcm9jZXNzLnZlcnNpb24ucmVwbGFjZSgvXnYvLCAnJyk7XG5cdH1cblxuXHRpZiAob3B0aW9ucy5wcm94eSkge1xuXHRcdHJlcXVlc3RPcHRpb25zLnBhdGggPSByZXF1ZXN0VXJsO1xuXHRcdGlmIChwYXJzZWRVcmwuYXV0aCkge1xuXHRcdFx0cmVxdWVzdE9wdGlvbnMuaGVhZGVyc1sncHJveHktYXV0aG9yaXphdGlvbiddID0gJ0Jhc2ljICcgKyBuZXcgQnVmZmVyKHBhcnNlZFVybC5hdXRoKS50b1N0cmluZygnYmFzZTY0Jyk7XG5cdFx0fVxuXG5cdFx0bGV0IF9wYXJzZWRVcmwgPSB1cmxVdGlsLnBhcnNlKHJlcXVlc3RVcmwpO1xuXHRcdHJlcXVlc3RPcHRpb25zLmhlYWRlcnNbJ2hvc3QnXSA9IF9wYXJzZWRVcmwuaG9zdDtcblx0XHRyZXF1ZXN0T3B0aW9ucy5hdXRoID0gX3BhcnNlZFVybC5hdXRoIHx8IG9wdGlvbnMuYXV0aDtcblx0fVxuXG5cdGlmICghb3B0aW9ucy5hdXRoICYmIChvcHRpb25zLnVzZXIgfHwgb3B0aW9ucy5wYXNzd29yZCkpIHtcblx0XHRyZXF1ZXN0T3B0aW9ucy5hdXRoID0gZW5jb2RlVVJJQ29tcG9uZW50KG9wdGlvbnMudXNlciB8fCAnJykgKyAnOicgKyBlbmNvZGVVUklDb21wb25lbnQob3B0aW9ucy5wYXNzd29yZCB8fCAnJyk7XG5cdH1cblxuXHRjb25zdCByZXF1ZXN0ID0gKHBhcnNlZFVybC5wcm90b2NvbCA9PT0gJ2h0dHBzOicgPyBodHRwcyA6IGh0dHApLnJlcXVlc3QocmVxdWVzdE9wdGlvbnMpO1xuXHRjb25zdCByZXNwb25zZTogUmVzcG9uc2U8VD4gPSB7XG5cdFx0ZGF0YTogbnVsbCxcblx0XHRnZXRIZWFkZXI6IGZ1bmN0aW9uIChuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdFx0cmV0dXJuICh0aGlzLm5hdGl2ZVJlc3BvbnNlICYmIHRoaXMubmF0aXZlUmVzcG9uc2UuaGVhZGVyc1tuYW1lLnRvTG93ZXJDYXNlKCldKSB8fCBudWxsO1xuXHRcdH0sXG5cdFx0cmVxdWVzdE9wdGlvbnM6IG9wdGlvbnMsXG5cdFx0c3RhdHVzQ29kZTogbnVsbCxcblx0XHR1cmw6IHJlcXVlc3RVcmxcblx0fTtcblxuXHRjb25zdCBwcm9taXNlID0gbmV3IFRhc2s8UmVzcG9uc2U8VD4+KGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcblx0XHRpZiAob3B0aW9ucy5zb2NrZXRPcHRpb25zKSB7XG5cdFx0XHRpZiAoJ3RpbWVvdXQnIGluIG9wdGlvbnMuc29ja2V0T3B0aW9ucykge1xuXHRcdFx0XHRyZXF1ZXN0LnNldFRpbWVvdXQob3B0aW9ucy5zb2NrZXRPcHRpb25zLnRpbWVvdXQpO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoJ25vRGVsYXknIGluIG9wdGlvbnMuc29ja2V0T3B0aW9ucykge1xuXHRcdFx0XHRyZXF1ZXN0LnNldE5vRGVsYXkob3B0aW9ucy5zb2NrZXRPcHRpb25zLm5vRGVsYXkpO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoJ2tlZXBBbGl2ZScgaW4gb3B0aW9ucy5zb2NrZXRPcHRpb25zKSB7XG5cdFx0XHRcdGNvbnN0IGluaXRpYWxEZWxheTogbnVtYmVyID0gb3B0aW9ucy5zb2NrZXRPcHRpb25zLmtlZXBBbGl2ZTtcblx0XHRcdFx0cmVxdWVzdC5zZXRTb2NrZXRLZWVwQWxpdmUoaW5pdGlhbERlbGF5ID49IDAsIGluaXRpYWxEZWxheSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0bGV0IHRpbWVvdXQ6IEhhbmRsZTtcblx0XHRyZXF1ZXN0Lm9uY2UoJ3Jlc3BvbnNlJywgZnVuY3Rpb24gKG5hdGl2ZVJlc3BvbnNlOiBodHRwLkNsaWVudFJlc3BvbnNlKTogdm9pZCB7XG5cdFx0XHRyZXNwb25zZS5uYXRpdmVSZXNwb25zZSA9IG5hdGl2ZVJlc3BvbnNlO1xuXHRcdFx0cmVzcG9uc2Uuc3RhdHVzQ29kZSA9IG5hdGl2ZVJlc3BvbnNlLnN0YXR1c0NvZGU7XG5cblx0XHRcdC8vIFJlZGlyZWN0aW9uIGhhbmRsaW5nIGRlZmF1bHRzIHRvIHRydWUgaW4gb3JkZXIgdG8gaGFybW9uaXNlIHdpdGggdGhlIFhIUiBwcm92aWRlciwgd2hpY2ggd2lsbCBhbHdheXNcblx0XHRcdC8vIGZvbGxvdyByZWRpcmVjdHNcblx0XHRcdC8vIFRPRE86IFRoaXMgcmVkaXJlY3QgY29kZSBpcyBub3QgMTAwJSBjb3JyZWN0IGFjY29yZGluZyB0byB0aGUgUkZDOyBuZWVkcyB0byBoYW5kbGUgcmVkaXJlY3QgbG9vcHMgYW5kXG5cdFx0XHQvLyByZXN0cmljdC9tb2RpZnkgY2VydGFpbiByZWRpcmVjdHNcblx0XHRcdGlmIChcblx0XHRcdFx0cmVzcG9uc2Uuc3RhdHVzQ29kZSA+PSAzMDAgJiZcblx0XHRcdFx0cmVzcG9uc2Uuc3RhdHVzQ29kZSA8IDQwMCAmJlxuXHRcdFx0XHRyZXNwb25zZS5zdGF0dXNDb2RlICE9PSAzMDQgJiZcblx0XHRcdFx0b3B0aW9ucy5mb2xsb3dSZWRpcmVjdHMgIT09IGZhbHNlICYmXG5cdFx0XHRcdG5hdGl2ZVJlc3BvbnNlLmhlYWRlcnMubG9jYXRpb25cblx0XHRcdCkge1xuXHRcdFx0XHRyZXNvbHZlKG5vZGUobmF0aXZlUmVzcG9uc2UuaGVhZGVycy5sb2NhdGlvbiwgb3B0aW9ucykpO1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9XG5cblx0XHRcdG9wdGlvbnMuc3RyZWFtRW5jb2RpbmcgJiYgbmF0aXZlUmVzcG9uc2Uuc2V0RW5jb2Rpbmcob3B0aW9ucy5zdHJlYW1FbmNvZGluZyk7XG5cdFx0XHRpZiAob3B0aW9ucy5zdHJlYW1UYXJnZXQpIHtcblx0XHRcdFx0Y29uc3QgcmVzcG9uc2VTb3VyY2UgPSBuZXcgUmVhZGFibGVOb2RlU3RyZWFtU291cmNlKG5hdGl2ZVJlc3BvbnNlKTtcblx0XHRcdFx0Y29uc3QgcmVzcG9uc2VSZWFkYWJsZVN0cmVhbSA9IG5ldyBSZWFkYWJsZVN0cmVhbShyZXNwb25zZVNvdXJjZSk7XG5cblx0XHRcdFx0cmVzcG9uc2VSZWFkYWJsZVN0cmVhbS5waXBlVG8oPGFueT4gb3B0aW9ucy5zdHJlYW1UYXJnZXQpXG5cdFx0XHRcdFx0LnRoZW4oXG5cdFx0XHRcdFx0XHRmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0XHRcdHJlc29sdmUocmVzcG9uc2UpO1xuXHRcdFx0XHRcdFx0fSxcblx0XHRcdFx0XHRcdGZ1bmN0aW9uIChlcnJvcjogUmVxdWVzdEVycm9yPFQ+KSB7XG5cdFx0XHRcdFx0XHRcdG9wdGlvbnMuc3RyZWFtVGFyZ2V0LmFib3J0KGVycm9yKTtcblx0XHRcdFx0XHRcdFx0cmVxdWVzdC5hYm9ydCgpO1xuXHRcdFx0XHRcdFx0XHRlcnJvci5yZXNwb25zZSA9IHJlc3BvbnNlO1xuXHRcdFx0XHRcdFx0XHRyZWplY3QoZXJyb3IpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCk7XG5cdFx0XHR9XG5cblx0XHRcdGxldCBkYXRhOiBhbnlbXTtcblx0XHRcdGxldCBsb2FkZWQ6IG51bWJlcjtcblx0XHRcdGlmICghb3B0aW9ucy5zdHJlYW1EYXRhKSB7XG5cdFx0XHRcdGRhdGEgPSBbXTtcblx0XHRcdFx0bG9hZGVkID0gMDtcblxuXHRcdFx0XHRuYXRpdmVSZXNwb25zZS5vbignZGF0YScsIGZ1bmN0aW9uIChjaHVuazogYW55KTogdm9pZCB7XG5cdFx0XHRcdFx0ZGF0YS5wdXNoKGNodW5rKTtcblx0XHRcdFx0XHRsb2FkZWQgKz0gKHR5cGVvZiBjaHVuayA9PT0gJ3N0cmluZycpID9cblx0XHRcdFx0XHRcdEJ1ZmZlci5ieXRlTGVuZ3RoKGNodW5rLCBvcHRpb25zLnN0cmVhbUVuY29kaW5nKSA6XG5cdFx0XHRcdFx0XHRjaHVuay5sZW5ndGg7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fVxuXG5cdFx0XHRuYXRpdmVSZXNwb25zZS5vbmNlKCdlbmQnLCBmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHRcdHRpbWVvdXQgJiYgdGltZW91dC5kZXN0cm95KCk7XG5cblx0XHRcdFx0aWYgKCFvcHRpb25zLnN0cmVhbURhdGEpIHtcblx0XHRcdFx0XHQvLyBUT0RPOiB3aGF0IHR5cGUgc2hvdWxkIGRhdGEgaGF2ZT9cblx0XHRcdFx0XHRyZXNwb25zZS5kYXRhID0gPGFueT4gKG9wdGlvbnMuc3RyZWFtRW5jb2RpbmcgPyBkYXRhLmpvaW4oJycpIDogQnVmZmVyLmNvbmNhdChkYXRhLCBsb2FkZWQpKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIElmIHVzaW5nIGEgc3RyZWFtVGFyZ2V0LCB3YWl0IGZvciBpdCB0byBmaW5pc2ggaW4gY2FzZSBpdCB0aHJvd3MgYW4gZXJyb3Jcblx0XHRcdFx0aWYgKCFvcHRpb25zLnN0cmVhbVRhcmdldCkge1xuXHRcdFx0XHRcdHJlc29sdmUocmVzcG9uc2UpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdG9wdGlvbnMuc3RyZWFtVGFyZ2V0LmNsb3NlKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH0pO1xuXG5cdFx0cmVxdWVzdC5vbmNlKCdlcnJvcicsIHJlamVjdCk7XG5cblx0XHRpZiAob3B0aW9ucy5kYXRhKSB7XG5cdFx0XHRpZiAob3B0aW9ucy5kYXRhIGluc3RhbmNlb2YgUmVhZGFibGVTdHJlYW0pIHtcblx0XHRcdFx0Y29uc3QgcmVxdWVzdFNpbmsgPSBuZXcgV3JpdGFibGVOb2RlU3RyZWFtU2luayhyZXF1ZXN0KTtcblx0XHRcdFx0Y29uc3Qgd3JpdGFibGVSZXF1ZXN0ID0gbmV3IFdyaXRhYmxlU3RyZWFtKHJlcXVlc3RTaW5rKTtcblx0XHRcdFx0b3B0aW9ucy5kYXRhLnBpcGVUbyh3cml0YWJsZVJlcXVlc3QpXG5cdFx0XHRcdFx0LmNhdGNoKGZ1bmN0aW9uIChlcnJvcjogUmVxdWVzdEVycm9yPFQ+KSB7XG5cdFx0XHRcdFx0XHRlcnJvci5yZXNwb25zZSA9IHJlc3BvbnNlO1xuXHRcdFx0XHRcdFx0d3JpdGFibGVSZXF1ZXN0LmFib3J0KGVycm9yKTtcblx0XHRcdFx0XHRcdHJlamVjdChlcnJvcik7XG5cdFx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0cmVxdWVzdC5lbmQob3B0aW9ucy5kYXRhKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRyZXF1ZXN0LmVuZCgpO1xuXHRcdH1cblxuXHRcdGlmIChvcHRpb25zLnRpbWVvdXQgPiAwICYmIG9wdGlvbnMudGltZW91dCAhPT0gSW5maW5pdHkpIHtcblx0XHRcdHRpbWVvdXQgPSAoZnVuY3Rpb24gKCk6IEhhbmRsZSB7XG5cdFx0XHRcdGNvbnN0IHRpbWVyID0gc2V0VGltZW91dChmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHRcdFx0Y29uc3QgZXJyb3IgPSBuZXcgUmVxdWVzdFRpbWVvdXRFcnJvcignUmVxdWVzdCB0aW1lZCBvdXQgYWZ0ZXIgJyArIG9wdGlvbnMudGltZW91dCArICdtcycpO1xuXHRcdFx0XHRcdGVycm9yLnJlc3BvbnNlID0gcmVzcG9uc2U7XG5cdFx0XHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdFx0fSwgb3B0aW9ucy50aW1lb3V0KTtcblxuXHRcdFx0XHRyZXR1cm4gY3JlYXRlSGFuZGxlKGZ1bmN0aW9uICgpOiB2b2lkIHtcblx0XHRcdFx0XHRjbGVhclRpbWVvdXQodGltZXIpO1xuXHRcdFx0XHR9KTtcblx0XHRcdH0pKCk7XG5cdFx0fVxuXHR9LCBmdW5jdGlvbiAoKSB7XG5cdFx0cmVxdWVzdC5hYm9ydCgpO1xuXHR9KS5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IEVycm9yKTogYW55IHtcblx0XHRsZXQgcGFyc2VkVXJsID0gdXJsVXRpbC5wYXJzZSh1cmwpO1xuXG5cdFx0aWYgKHBhcnNlZFVybC5hdXRoKSB7XG5cdFx0XHRwYXJzZWRVcmwuYXV0aCA9ICcocmVkYWN0ZWQpJztcblx0XHR9XG5cblx0XHRsZXQgc2FuaXRpemVkVXJsID0gdXJsVXRpbC5mb3JtYXQocGFyc2VkVXJsKTtcblxuXHRcdGVycm9yLm1lc3NhZ2UgPSAnWycgKyByZXF1ZXN0T3B0aW9ucy5tZXRob2QgKyAnICcgKyBzYW5pdGl6ZWRVcmwgKyAnXSAnICsgZXJyb3IubWVzc2FnZTtcblx0XHR0aHJvdyBlcnJvcjtcblx0fSk7XG5cblx0cmV0dXJuIHByb21pc2U7XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var UrlSearchParams_1 = require('../UrlSearchParams'); | ||
@@ -28,2 +29,2 @@ /** | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXF1ZXN0L3V0aWwudHMiXSwibmFtZXMiOlsiZ2VuZXJhdGVSZXF1ZXN0VXJsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUNBLGdDQUE0QixvQkFBb0IsQ0FBQyxDQUFBO0lBRWpEOzs7OztPQUtHO0lBQ0gsNEJBQW1DLEdBQVcsRUFBRSxPQUF1QjtRQUN0RUEsSUFBSUEsS0FBS0EsR0FBR0EsSUFBSUEseUJBQWVBLENBQUNBLE9BQU9BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBLFFBQVFBLEVBQUVBLENBQUNBO1FBRTFEQSxFQUFFQSxDQUFDQSxDQUFDQSxPQUFPQSxDQUFDQSxTQUFTQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUN2QkEsSUFBTUEsU0FBU0EsR0FBR0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsR0FBR0EsRUFBRUEsQ0FBQ0EsQ0FBQ0E7WUFDckNBLEtBQUtBLElBQUlBLEtBQUtBLEdBQUdBLEdBQUdBLEdBQUdBLFNBQVNBLEdBQUdBLFNBQVNBLENBQUNBO1FBQzlDQSxDQUFDQTtRQUVEQSxJQUFNQSxTQUFTQSxHQUFHQSxHQUFHQSxDQUFDQSxPQUFPQSxDQUFDQSxHQUFHQSxDQUFDQSxHQUFHQSxDQUFDQSxDQUFDQSxHQUFHQSxHQUFHQSxHQUFHQSxHQUFHQSxDQUFDQTtRQUNwREEsTUFBTUEsQ0FBQ0EsS0FBS0EsR0FBR0EsR0FBR0EsR0FBR0EsU0FBU0EsR0FBR0EsS0FBS0EsR0FBR0EsR0FBR0EsQ0FBQ0E7SUFDOUNBLENBQUNBO0lBVmUsMEJBQWtCLHFCQVVqQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdE9wdGlvbnMgfSBmcm9tICcuLi9yZXF1ZXN0JztcbmltcG9ydCBVcmxTZWFyY2hQYXJhbXMgZnJvbSAnLi4vVXJsU2VhcmNoUGFyYW1zJztcblxuLyoqXG4gKiBSZXR1cm5zIGEgVVJMIGZvcm1hdHRlZCB3aXRoIG9wdGlvbmFsIHF1ZXJ5IHN0cmluZyBhbmQgY2FjaGUtYnVzdGluZyBzZWdtZW50cy5cbiAqXG4gKiBAcGFyYW0gdXJsIFRoZSBiYXNlIFVSTC5cbiAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGhhc2ggdGhhdCBpcyB1c2VkIHRvIGdlbmVyYXRlIHRoZSBxdWVyeSBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVJlcXVlc3RVcmwodXJsOiBzdHJpbmcsIG9wdGlvbnM6IFJlcXVlc3RPcHRpb25zKTogc3RyaW5nIHtcblx0bGV0IHF1ZXJ5ID0gbmV3IFVybFNlYXJjaFBhcmFtcyhvcHRpb25zLnF1ZXJ5KS50b1N0cmluZygpO1xuXG5cdGlmIChvcHRpb25zLmNhY2hlQnVzdCkge1xuXHRcdGNvbnN0IGNhY2hlQnVzdCA9IFN0cmluZyhEYXRlLm5vdygpKTtcblx0XHRxdWVyeSArPSBxdWVyeSA/ICcmJyArIGNhY2hlQnVzdCA6IGNhY2hlQnVzdDtcblx0fVxuXG5cdGNvbnN0IHNlcGFyYXRvciA9IHVybC5pbmRleE9mKCc/JykgPiAtMSA/ICcmJyA6ICc/Jztcblx0cmV0dXJuIHF1ZXJ5ID8gdXJsICsgc2VwYXJhdG9yICsgcXVlcnkgOiB1cmw7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXF1ZXN0L3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQ0EsZ0NBQTRCLG9CQUFvQixDQUFDLENBQUE7SUFFakQ7Ozs7O09BS0c7SUFDSCw0QkFBbUMsR0FBVyxFQUFFLE9BQXVCO1FBQ3RFLElBQUksS0FBSyxHQUFHLElBQUkseUJBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFMUQsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsSUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3JDLEtBQUssSUFBSSxLQUFLLEdBQUcsR0FBRyxHQUFHLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDOUMsQ0FBQztRQUVELElBQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNwRCxNQUFNLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxTQUFTLEdBQUcsS0FBSyxHQUFHLEdBQUcsQ0FBQztJQUM5QyxDQUFDO0lBVmUsMEJBQWtCLHFCQVVqQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdE9wdGlvbnMgfSBmcm9tICcuLi9yZXF1ZXN0JztcbmltcG9ydCBVcmxTZWFyY2hQYXJhbXMgZnJvbSAnLi4vVXJsU2VhcmNoUGFyYW1zJztcblxuLyoqXG4gKiBSZXR1cm5zIGEgVVJMIGZvcm1hdHRlZCB3aXRoIG9wdGlvbmFsIHF1ZXJ5IHN0cmluZyBhbmQgY2FjaGUtYnVzdGluZyBzZWdtZW50cy5cbiAqXG4gKiBAcGFyYW0gdXJsIFRoZSBiYXNlIFVSTC5cbiAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGhhc2ggdGhhdCBpcyB1c2VkIHRvIGdlbmVyYXRlIHRoZSBxdWVyeSBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVJlcXVlc3RVcmwodXJsOiBzdHJpbmcsIG9wdGlvbnM6IFJlcXVlc3RPcHRpb25zKTogc3RyaW5nIHtcblx0bGV0IHF1ZXJ5ID0gbmV3IFVybFNlYXJjaFBhcmFtcyhvcHRpb25zLnF1ZXJ5KS50b1N0cmluZygpO1xuXG5cdGlmIChvcHRpb25zLmNhY2hlQnVzdCkge1xuXHRcdGNvbnN0IGNhY2hlQnVzdCA9IFN0cmluZyhEYXRlLm5vdygpKTtcblx0XHRxdWVyeSArPSBxdWVyeSA/ICcmJyArIGNhY2hlQnVzdCA6IGNhY2hlQnVzdDtcblx0fVxuXG5cdGNvbnN0IHNlcGFyYXRvciA9IHVybC5pbmRleE9mKCc/JykgPiAtMSA/ICcmJyA6ICc/Jztcblx0cmV0dXJuIHF1ZXJ5ID8gdXJsICsgc2VwYXJhdG9yICsgcXVlcnkgOiB1cmw7XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Task_1 = require('../async/Task'); | ||
@@ -31,2 +32,15 @@ var RequestTimeoutError_1 = require('./errors/RequestTimeoutError'); | ||
var noop = function () { }; | ||
/** | ||
* Converts a string to an array buffer | ||
* @param str The string to convert | ||
*/ | ||
function stringToArrayBuffer(str) { | ||
var buf = new ArrayBuffer(str.length * 2); | ||
var bufView = new Uint8Array(buf); | ||
for (var i = 0; i < str.length; i++) { | ||
bufView[i] = str.charCodeAt(i); | ||
} | ||
return buf; | ||
} | ||
; | ||
function xhr(url, options) { | ||
@@ -78,2 +92,7 @@ if (options === void 0) { options = {}; } | ||
response.data = ('response' in request) ? request.response : request.responseText; | ||
/* Android 4 has a defect where it doesn't respect the responseType | ||
* See https://github.com/dojo/core/issues/125 */ | ||
if (options.responseType === 'arraybuffer' && typeof response.data === 'string' && has_1.default('arraybuffer')) { | ||
response.data = stringToArrayBuffer(response.data); | ||
} | ||
} | ||
@@ -130,2 +149,2 @@ response.statusCode = request.status; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGhyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlcXVlc3QveGhyLnRzIl0sIm5hbWVzIjpbInhociIsInhoci5nZXRIZWFkZXIiLCJ4aHIuYWJvcnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEscUJBQWlCLGVBQWUsQ0FBQyxDQUFBO0lBQ2pDLG9DQUFnQyw4QkFBOEIsQ0FBQyxDQUFBO0lBQy9ELHVCQUFtQixXQUFXLENBQUMsQ0FBQTtJQUMvQixvQkFBZ0IsUUFBUSxDQUFDLENBQUE7SUFFekIscUJBQTRCLFNBQVMsQ0FBQyxDQUFBO0lBRXRDLHFCQUFtQyxRQUFRLENBQUMsQ0FBQTtJQU01Qzs7Ozs7T0FLRztJQUNILElBQU0sZUFBZSxHQUErQjtRQUNuRCxXQUFXLEVBQUUsYUFBYTtRQUMxQixzR0FBc0c7UUFDdEcsK0VBQStFO1FBQy9FLElBQUksRUFBRSxhQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsTUFBTSxHQUFHLGFBQWE7UUFDL0MsUUFBUSxFQUFFLFVBQVU7S0FDcEIsQ0FBQztJQUVGLDBDQUEwQztJQUMxQyxJQUFNLElBQUksR0FBRyxjQUFhLENBQUMsQ0FBQztJQUU1QixhQUErQixHQUFXLEVBQUUsT0FBK0I7UUFBL0JBLHVCQUErQkEsR0FBL0JBLFlBQStCQTtRQUMxRUEsSUFBTUEsT0FBT0EsR0FBR0EsSUFBSUEsY0FBY0EsRUFBRUEsQ0FBQ0E7UUFDckNBLElBQU1BLFVBQVVBLEdBQUdBLHlCQUFrQkEsQ0FBQ0EsR0FBR0EsRUFBRUEsT0FBT0EsQ0FBQ0EsQ0FBQ0E7UUFDcERBLElBQU1BLFFBQVFBLEdBQWdCQTtZQUM3QkEsSUFBSUEsRUFBRUEsSUFBSUE7WUFDVkEsY0FBY0EsRUFBRUEsT0FBT0E7WUFDdkJBLGNBQWNBLEVBQUVBLE9BQU9BO1lBQ3ZCQSxVQUFVQSxFQUFFQSxJQUFJQTtZQUNoQkEsVUFBVUEsRUFBRUEsSUFBSUE7WUFDaEJBLEdBQUdBLEVBQUVBLFVBQVVBO1lBRWZBLFNBQVNBLFlBQUNBLElBQVlBO2dCQUNyQkMsTUFBTUEsQ0FBQ0EsT0FBT0EsQ0FBQ0EsaUJBQWlCQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtZQUN4Q0EsQ0FBQ0E7U0FDREQsQ0FBQ0E7UUFDRkEsSUFBSUEsU0FBU0EsR0FBR0EsS0FBS0EsQ0FBQ0E7UUFFdEJBO1lBQ0NFLFNBQVNBLEdBQUdBLElBQUlBLENBQUNBO1lBQ2pCQSxFQUFFQSxDQUFDQSxDQUFDQSxPQUFPQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDYkEsT0FBT0EsQ0FBQ0EsS0FBS0EsRUFBRUEsQ0FBQ0E7Z0JBQ2hCQSxPQUFPQSxDQUFDQSxrQkFBa0JBLEdBQUdBLElBQUlBLENBQUNBO1lBQ25DQSxDQUFDQTtRQUNGQSxDQUFDQTtRQUVERixJQUFNQSxPQUFPQSxHQUFHQSxJQUFJQSxjQUFJQSxDQUFjQSxVQUFVQSxPQUFPQSxFQUFFQSxNQUFNQTtZQUM5RCxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNyQixPQUFPLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUN4QixDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQzFELElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNuQyxPQUFPLENBQUMsSUFBSSxHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzQyxPQUFPLENBQUMsUUFBUSxHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hELENBQUM7WUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVuRyxFQUFFLENBQUMsQ0FBQyxhQUFHLENBQUMsTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDO2dCQUM1RCxPQUFPLENBQUMsWUFBWSxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDOUQsQ0FBQztZQUVELElBQUksYUFBcUIsQ0FBQztZQUMxQixPQUFPLENBQUMsa0JBQWtCLEdBQUc7Z0JBQzVCLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDNUMsT0FBTyxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztvQkFDbEMsYUFBYSxJQUFJLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFFekMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO3dCQUNwQyxRQUFRLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7b0JBQ3JDLENBQUM7b0JBQ0QsSUFBSSxDQUFDLENBQUM7d0JBQ0wsUUFBUSxDQUFDLElBQUksR0FBRyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUM7b0JBQ25GLENBQUM7b0JBRUQsUUFBUSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO29CQUNyQyxRQUFRLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7b0JBQ3pDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNuQixDQUFDO29CQUNELElBQUksQ0FBQyxDQUFDO3dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVTs0QkFDekIsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQzs0QkFDOUIsSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FDMUQsQ0FBQztvQkFDSCxDQUFDO2dCQUNGLENBQUM7WUFDRixDQUFDLENBQUM7WUFFRixFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pELGFBQWEsR0FBRyxrQkFBVyxDQUFDO29CQUMzQiwyRkFBMkY7b0JBQzNGLHNGQUFzRjtvQkFDdEYsb0dBQW9HO29CQUNwRyxNQUFNLENBQUMsSUFBSSw2QkFBbUIsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3pFLEtBQUssRUFBRSxDQUFDO2dCQUNULENBQUMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckIsQ0FBQztZQUVELElBQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDaEMsSUFBSSxvQkFBb0IsR0FBWSxLQUFLLENBQUM7WUFDMUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLEtBQUssY0FBYyxDQUFDLENBQUMsQ0FBQztvQkFDN0Msb0JBQW9CLEdBQUcsSUFBSSxDQUFDO2dCQUM3QixDQUFDO2dCQUVELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbkQsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ2hFLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixJQUFJLGFBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLENBQUMsSUFBSSxZQUFZLGdCQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDekYscUZBQXFGO2dCQUNyRix3RkFBd0Y7Z0JBQ3hGLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsbUNBQW1DLENBQUMsQ0FBQztZQUMvRSxDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxLQUFLLElBQUksT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztnQkFDaEUsc0dBQXNHO2dCQUN0RyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdEMsQ0FBQztZQUVELE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLENBQUMsRUFBRUE7WUFDRixLQUFLLEVBQUUsQ0FBQztRQUNULENBQUMsQ0FBQ0EsQ0FBQ0E7UUFFSEEsTUFBTUEsQ0FBQ0EsT0FBT0EsQ0FBQ0E7SUFDaEJBLENBQUNBO0lBOUdEO3lCQThHQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFRhc2sgZnJvbSAnLi4vYXN5bmMvVGFzayc7XG5pbXBvcnQgUmVxdWVzdFRpbWVvdXRFcnJvciBmcm9tICcuL2Vycm9ycy9SZXF1ZXN0VGltZW91dEVycm9yJztcbmltcG9ydCBnbG9iYWwgZnJvbSAnLi4vZ2xvYmFsJztcbmltcG9ydCBoYXMgZnJvbSAnLi4vaGFzJztcbmltcG9ydCB7IEhhbmRsZSB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlVGltZXIgfSBmcm9tICcuLi91dGlsJztcbmltcG9ydCB7IFJlcXVlc3RPcHRpb25zLCBSZXNwb25zZSwgUmVzcG9uc2VQcm9taXNlIH0gZnJvbSAnLi4vcmVxdWVzdCc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJlcXVlc3RVcmwgfSBmcm9tICcuL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFhoclJlcXVlc3RPcHRpb25zIGV4dGVuZHMgUmVxdWVzdE9wdGlvbnMge1xuXHRibG9ja01haW5UaHJlYWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEEgbG9va3VwIHRhYmxlIGZvciB2YWxpZCBgWE1MSHR0cFJlcXVlc3QjcmVzcG9uc2VUeXBlYCB2YWx1ZXMuXG4gKlxuICogJ2pzb24nIGRlbGliZXJhdGVseSBleGNsdWRlZCBzaW5jZSBpdCBpcyBub3Qgc3VwcG9ydGVkIGluIGFsbCBlbnZpcm9ubWVudHMsIGFuZCBhcyB0aGVyZSBpc1xuICogYWxyZWFkeSBhIGZpbHRlciBmb3IgaXQgaW4gJy4uL3JlcXVlc3QnLiBEZWZhdWx0ICcnIGFuZCAndGV4dCcgdmFsdWVzIGFsc28gZGVsaWJlcmF0ZWx5IGV4Y2x1ZGVkLlxuICovXG5jb25zdCByZXNwb25zZVR5cGVNYXA6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nOyB9ID0ge1xuXHRhcnJheWJ1ZmZlcjogJ2FycmF5YnVmZmVyJyxcblx0Ly8gWEhSMiBlbnZpcm9ubWVudHMgdGhhdCBkbyBub3Qgc3VwcG9ydCBgcmVzcG9uc2VUeXBlPWJsb2JgIHN0aWxsIHN1cHBvcnQgYHJlc3BvbnNlVHlwZT1hcnJheWJ1ZmZlcmAsXG5cdC8vIHdoaWNoIGlzIGEgYmV0dGVyIHdheSBvZiBoYW5kbGluZyBibG9iIGRhdGEgdGhhbiBhcyBhIHN0cmluZyByZXByZXNlbnRhdGlvbi5cblx0YmxvYjogaGFzKCd4aHIyLWJsb2InKSA/ICdibG9iJyA6ICdhcnJheWJ1ZmZlcicsXG5cdGRvY3VtZW50OiAnZG9jdW1lbnQnXG59O1xuXG4vKiBhIG5vb3AgaGFuZGxlIGZvciBjYW5jZWxsZWQgcmVxdWVzdHMgKi9cbmNvbnN0IG5vb3AgPSBmdW5jdGlvbigpIHsgfTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24geGhyPFQ+KHVybDogc3RyaW5nLCBvcHRpb25zOiBYaHJSZXF1ZXN0T3B0aW9ucyA9IHt9KTogUmVzcG9uc2VQcm9taXNlPFQ+IHtcblx0Y29uc3QgcmVxdWVzdCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuXHRjb25zdCByZXF1ZXN0VXJsID0gZ2VuZXJhdGVSZXF1ZXN0VXJsKHVybCwgb3B0aW9ucyk7XG5cdGNvbnN0IHJlc3BvbnNlOiBSZXNwb25zZTxUPiA9IHtcblx0XHRkYXRhOiBudWxsLFxuXHRcdG5hdGl2ZVJlc3BvbnNlOiByZXF1ZXN0LFxuXHRcdHJlcXVlc3RPcHRpb25zOiBvcHRpb25zLFxuXHRcdHN0YXR1c0NvZGU6IG51bGwsXG5cdFx0c3RhdHVzVGV4dDogbnVsbCxcblx0XHR1cmw6IHJlcXVlc3RVcmwsXG5cblx0XHRnZXRIZWFkZXIobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRcdHJldHVybiByZXF1ZXN0LmdldFJlc3BvbnNlSGVhZGVyKG5hbWUpO1xuXHRcdH1cblx0fTtcblx0bGV0IGlzQWJvcnRlZCA9IGZhbHNlO1xuXG5cdGZ1bmN0aW9uIGFib3J0KCkge1xuXHRcdGlzQWJvcnRlZCA9IHRydWU7XG5cdFx0aWYgKHJlcXVlc3QpIHtcblx0XHRcdHJlcXVlc3QuYWJvcnQoKTtcblx0XHRcdHJlcXVlc3Qub25yZWFkeXN0YXRlY2hhbmdlID0gbm9vcDtcblx0XHR9XG5cdH1cblxuXHRjb25zdCBwcm9taXNlID0gbmV3IFRhc2s8UmVzcG9uc2U8VD4+KGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpOiB2b2lkIHtcblx0XHRpZiAoIW9wdGlvbnMubWV0aG9kKSB7XG5cdFx0XHRvcHRpb25zLm1ldGhvZCA9ICdHRVQnO1xuXHRcdH1cblxuXHRcdGlmICgoIW9wdGlvbnMudXNlciB8fCAhb3B0aW9ucy5wYXNzd29yZCkgJiYgb3B0aW9ucy5hdXRoKSB7XG5cdFx0XHRsZXQgYXV0aCA9IG9wdGlvbnMuYXV0aC5zcGxpdCgnOicpO1xuXHRcdFx0b3B0aW9ucy51c2VyID0gZGVjb2RlVVJJQ29tcG9uZW50KGF1dGhbMF0pO1xuXHRcdFx0b3B0aW9ucy5wYXNzd29yZCA9IGRlY29kZVVSSUNvbXBvbmVudChhdXRoWzFdKTtcblx0XHR9XG5cblx0XHRyZXF1ZXN0Lm9wZW4ob3B0aW9ucy5tZXRob2QsIHJlcXVlc3RVcmwsICFvcHRpb25zLmJsb2NrTWFpblRocmVhZCwgb3B0aW9ucy51c2VyLCBvcHRpb25zLnBhc3N3b3JkKTtcblxuXHRcdGlmIChoYXMoJ3hocjInKSAmJiBvcHRpb25zLnJlc3BvbnNlVHlwZSBpbiByZXNwb25zZVR5cGVNYXApIHtcblx0XHRcdHJlcXVlc3QucmVzcG9uc2VUeXBlID0gcmVzcG9uc2VUeXBlTWFwW29wdGlvbnMucmVzcG9uc2VUeXBlXTtcblx0XHR9XG5cblx0XHRsZXQgdGltZW91dEhhbmRsZTogSGFuZGxlO1xuXHRcdHJlcXVlc3Qub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24gKCk6IHZvaWQge1xuXHRcdFx0aWYgKCFpc0Fib3J0ZWQgJiYgcmVxdWVzdC5yZWFkeVN0YXRlID09PSA0KSB7XG5cdFx0XHRcdHJlcXVlc3Qub25yZWFkeXN0YXRlY2hhbmdlID0gbm9vcDtcblx0XHRcdFx0dGltZW91dEhhbmRsZSAmJiB0aW1lb3V0SGFuZGxlLmRlc3Ryb3koKTtcblxuXHRcdFx0XHRpZiAob3B0aW9ucy5yZXNwb25zZVR5cGUgPT09ICd4bWwnKSB7XG5cdFx0XHRcdFx0cmVzcG9uc2UuZGF0YSA9IHJlcXVlc3QucmVzcG9uc2VYTUw7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0cmVzcG9uc2UuZGF0YSA9ICgncmVzcG9uc2UnIGluIHJlcXVlc3QpID8gcmVxdWVzdC5yZXNwb25zZSA6IHJlcXVlc3QucmVzcG9uc2VUZXh0O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0cmVzcG9uc2Uuc3RhdHVzQ29kZSA9IHJlcXVlc3Quc3RhdHVzO1xuXHRcdFx0XHRyZXNwb25zZS5zdGF0dXNUZXh0ID0gcmVxdWVzdC5zdGF0dXNUZXh0O1xuXHRcdFx0XHRpZiAocmVzcG9uc2Uuc3RhdHVzQ29kZSA+IDAgJiYgcmVzcG9uc2Uuc3RhdHVzQ29kZSA8IDQwMCkge1xuXHRcdFx0XHRcdHJlc29sdmUocmVzcG9uc2UpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdHJlamVjdChyZXNwb25zZS5zdGF0dXNUZXh0ID9cblx0XHRcdFx0XHRcdG5ldyBFcnJvcihyZXNwb25zZS5zdGF0dXNUZXh0KSA6XG5cdFx0XHRcdFx0XHRuZXcgRXJyb3IoJ0FuIGVycm9yIHByZXZlbnRlZCBjb21wbGV0aW9uIG9mIHRoZSByZXF1ZXN0LicpXG5cdFx0XHRcdFx0KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH07XG5cblx0XHRpZiAob3B0aW9ucy50aW1lb3V0ID4gMCAmJiBvcHRpb25zLnRpbWVvdXQgIT09IEluZmluaXR5KSB7XG5cdFx0XHR0aW1lb3V0SGFuZGxlID0gY3JlYXRlVGltZXIoZnVuY3Rpb24gKCkge1xuXHRcdFx0XHQvLyBSZWplY3QgZmlyc3QsIHNpbmNlIGFib3J0aW5nIHdpbGwgYWxzbyBmaXJlIG9ucmVhZHlzdGF0ZWNoYW5nZSB3aGljaCB3b3VsZCByZWplY3Qgd2l0aCBhXG5cdFx0XHRcdC8vIGxlc3Mgc3BlY2lmaWMgZXJyb3IuICAoVGhpcyBpcyBhbHNvIHdoeSB3ZSBzZXQgdXAgb3VyIG93biB0aW1lb3V0IHJhdGhlciB0aGFuIHVzaW5nXG5cdFx0XHRcdC8vIG5hdGl2ZSB0aW1lb3V0IGFuZCBvbnRpbWVvdXQsIGJlY2F1c2UgdGhhdCBhYm9ydHMgYW5kIGZpcmVzIG9ucmVhZHlzdGF0ZWNoYW5nZSBiZWZvcmUgb250aW1lb3V0Lilcblx0XHRcdFx0cmVqZWN0KG5ldyBSZXF1ZXN0VGltZW91dEVycm9yKCdUaGUgWE1MSHR0cFJlcXVlc3QgcmVxdWVzdCB0aW1lZCBvdXQuJykpO1xuXHRcdFx0XHRhYm9ydCgpO1xuXHRcdFx0fSwgb3B0aW9ucy50aW1lb3V0KTtcblx0XHR9XG5cblx0XHRjb25zdCBoZWFkZXJzID0gb3B0aW9ucy5oZWFkZXJzO1xuXHRcdGxldCBoYXNDb250ZW50VHlwZUhlYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xuXHRcdGZvciAobGV0IGhlYWRlciBpbiBoZWFkZXJzKSB7XG5cdFx0XHRpZiAoaGVhZGVyLnRvTG93ZXJDYXNlKCkgPT09ICdjb250ZW50LXR5cGUnKSB7XG5cdFx0XHRcdGhhc0NvbnRlbnRUeXBlSGVhZGVyID0gdHJ1ZTtcblx0XHRcdH1cblxuXHRcdFx0cmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKGhlYWRlciwgaGVhZGVyc1toZWFkZXJdKTtcblx0XHR9XG5cblx0XHRpZiAoIWhlYWRlcnMgfHwgISgnWC1SZXF1ZXN0ZWQtV2l0aCcgaW4gaGVhZGVycykpIHtcblx0XHRcdHJlcXVlc3Quc2V0UmVxdWVzdEhlYWRlcignWC1SZXF1ZXN0ZWQtV2l0aCcsICdYTUxIdHRwUmVxdWVzdCcpO1xuXHRcdH1cblxuXHRcdGlmICghaGFzQ29udGVudFR5cGVIZWFkZXIgJiYgaGFzKCdmb3JtZGF0YScpICYmIG9wdGlvbnMuZGF0YSBpbnN0YW5jZW9mIGdsb2JhbC5Gb3JtRGF0YSkge1xuXHRcdFx0Ly8gQXNzdW1lIHRoYXQgbW9zdCBmb3JtcyBkbyBub3QgY29udGFpbiBsYXJnZSBiaW5hcnkgZmlsZXMuIElmIHRoYXQgaXMgbm90IHRoZSBjYXNlLFxuXHRcdFx0Ly8gdGhlbiBcIm11bHRpcGFydC9mb3JtLWRhdGFcIiBzaG91bGQgYmUgbWFudWFsbHkgc3BlY2lmaWVkIGFzIHRoZSBcIkNvbnRlbnQtVHlwZVwiIGhlYWRlci5cblx0XHRcdHJlcXVlc3Quc2V0UmVxdWVzdEhlYWRlcignQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpO1xuXHRcdH1cblxuXHRcdGlmIChvcHRpb25zLnJlc3BvbnNlVHlwZSA9PT0gJ3htbCcgJiYgcmVxdWVzdC5vdmVycmlkZU1pbWVUeXBlKSB7XG5cdFx0XHQvLyBUaGlzIGZvcmNlcyB0aGUgWEhSIHRvIHBhcnNlIHRoZSByZXNwb25zZSBhcyBYTUwgcmVnYXJkbGVzcyBvZiB0aGUgTUlNRS10eXBlIHJldHVybmVkIGJ5IHRoZSBzZXJ2ZXJcblx0XHRcdHJlcXVlc3Qub3ZlcnJpZGVNaW1lVHlwZSgndGV4dC94bWwnKTtcblx0XHR9XG5cblx0XHRyZXF1ZXN0LnNlbmQob3B0aW9ucy5kYXRhKTtcblx0fSwgZnVuY3Rpb24gKCkge1xuXHRcdGFib3J0KCk7XG5cdH0pO1xuXG5cdHJldHVybiBwcm9taXNlO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGhyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JlcXVlc3QveGhyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLHFCQUFpQixlQUFlLENBQUMsQ0FBQTtJQUNqQyxvQ0FBZ0MsOEJBQThCLENBQUMsQ0FBQTtJQUMvRCx1QkFBbUIsV0FBVyxDQUFDLENBQUE7SUFDL0Isb0JBQWdCLFFBQVEsQ0FBQyxDQUFBO0lBRXpCLHFCQUE0QixTQUFTLENBQUMsQ0FBQTtJQUV0QyxxQkFBbUMsUUFBUSxDQUFDLENBQUE7SUFNNUM7Ozs7O09BS0c7SUFDSCxJQUFNLGVBQWUsR0FBK0I7UUFDbkQsV0FBVyxFQUFFLGFBQWE7UUFDMUIsc0dBQXNHO1FBQ3RHLCtFQUErRTtRQUMvRSxJQUFJLEVBQUUsYUFBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLE1BQU0sR0FBRyxhQUFhO1FBQy9DLFFBQVEsRUFBRSxVQUFVO0tBQ3BCLENBQUM7SUFFRiwwQ0FBMEM7SUFDMUMsSUFBTSxJQUFJLEdBQUcsY0FBYSxDQUFDLENBQUM7SUFFNUI7OztPQUdHO0lBQ0gsNkJBQTZCLEdBQVc7UUFDdkMsSUFBTSxHQUFHLEdBQUcsSUFBSSxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM1QyxJQUFNLE9BQU8sR0FBRyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNyQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBQztJQUNaLENBQUM7SUFBQSxDQUFDO0lBRUYsYUFBK0IsR0FBVyxFQUFFLE9BQStC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QUFDO1FBQ1QsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsT0FBTyxDQUFDO0lBQ2hCLENBQUM7SUFuSEQ7eUJBbUhDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVGFzayBmcm9tICcuLi9hc3luYy9UYXNrJztcbmltcG9ydCBSZXF1ZXN0VGltZW91dEVycm9yIGZyb20gJy4vZXJyb3JzL1JlcXVlc3RUaW1lb3V0RXJyb3InO1xuaW1wb3J0IGdsb2JhbCBmcm9tICcuLi9nbG9iYWwnO1xuaW1wb3J0IGhhcyBmcm9tICcuLi9oYXMnO1xuaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBjcmVhdGVUaW1lciB9IGZyb20gJy4uL3V0aWwnO1xuaW1wb3J0IHsgUmVxdWVzdE9wdGlvbnMsIFJlc3BvbnNlLCBSZXNwb25zZVByb21pc2UgfSBmcm9tICcuLi9yZXF1ZXN0JztcbmltcG9ydCB7IGdlbmVyYXRlUmVxdWVzdFVybCB9IGZyb20gJy4vdXRpbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgWGhyUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBSZXF1ZXN0T3B0aW9ucyB7XG5cdGJsb2NrTWFpblRocmVhZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQSBsb29rdXAgdGFibGUgZm9yIHZhbGlkIGBYTUxIdHRwUmVxdWVzdCNyZXNwb25zZVR5cGVgIHZhbHVlcy5cbiAqXG4gKiAnanNvbicgZGVsaWJlcmF0ZWx5IGV4Y2x1ZGVkIHNpbmNlIGl0IGlzIG5vdCBzdXBwb3J0ZWQgaW4gYWxsIGVudmlyb25tZW50cywgYW5kIGFzIHRoZXJlIGlzXG4gKiBhbHJlYWR5IGEgZmlsdGVyIGZvciBpdCBpbiAnLi4vcmVxdWVzdCcuIERlZmF1bHQgJycgYW5kICd0ZXh0JyB2YWx1ZXMgYWxzbyBkZWxpYmVyYXRlbHkgZXhjbHVkZWQuXG4gKi9cbmNvbnN0IHJlc3BvbnNlVHlwZU1hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmc7IH0gPSB7XG5cdGFycmF5YnVmZmVyOiAnYXJyYXlidWZmZXInLFxuXHQvLyBYSFIyIGVudmlyb25tZW50cyB0aGF0IGRvIG5vdCBzdXBwb3J0IGByZXNwb25zZVR5cGU9YmxvYmAgc3RpbGwgc3VwcG9ydCBgcmVzcG9uc2VUeXBlPWFycmF5YnVmZmVyYCxcblx0Ly8gd2hpY2ggaXMgYSBiZXR0ZXIgd2F5IG9mIGhhbmRsaW5nIGJsb2IgZGF0YSB0aGFuIGFzIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uLlxuXHRibG9iOiBoYXMoJ3hocjItYmxvYicpID8gJ2Jsb2InIDogJ2FycmF5YnVmZmVyJyxcblx0ZG9jdW1lbnQ6ICdkb2N1bWVudCdcbn07XG5cbi8qIGEgbm9vcCBoYW5kbGUgZm9yIGNhbmNlbGxlZCByZXF1ZXN0cyAqL1xuY29uc3Qgbm9vcCA9IGZ1bmN0aW9uKCkgeyB9O1xuXG4vKipcbiAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGFuIGFycmF5IGJ1ZmZlclxuICogQHBhcmFtIHN0ciBUaGUgc3RyaW5nIHRvIGNvbnZlcnRcbiAqL1xuZnVuY3Rpb24gc3RyaW5nVG9BcnJheUJ1ZmZlcihzdHI6IHN0cmluZyk6IEFycmF5QnVmZmVyIHtcblx0Y29uc3QgYnVmID0gbmV3IEFycmF5QnVmZmVyKHN0ci5sZW5ndGggKiAyKTtcblx0Y29uc3QgYnVmVmlldyA9IG5ldyBVaW50OEFycmF5KGJ1Zik7XG5cdGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG5cdFx0YnVmVmlld1tpXSA9IHN0ci5jaGFyQ29kZUF0KGkpO1xuXHR9XG5cdHJldHVybiBidWY7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB4aHI8VD4odXJsOiBzdHJpbmcsIG9wdGlvbnM6IFhoclJlcXVlc3RPcHRpb25zID0ge30pOiBSZXNwb25zZVByb21pc2U8VD4ge1xuXHRjb25zdCByZXF1ZXN0ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG5cdGNvbnN0IHJlcXVlc3RVcmwgPSBnZW5lcmF0ZVJlcXVlc3RVcmwodXJsLCBvcHRpb25zKTtcblx0Y29uc3QgcmVzcG9uc2U6IFJlc3BvbnNlPFQ+ID0ge1xuXHRcdGRhdGE6IG51bGwsXG5cdFx0bmF0aXZlUmVzcG9uc2U6IHJlcXVlc3QsXG5cdFx0cmVxdWVzdE9wdGlvbnM6IG9wdGlvbnMsXG5cdFx0c3RhdHVzQ29kZTogbnVsbCxcblx0XHRzdGF0dXNUZXh0OiBudWxsLFxuXHRcdHVybDogcmVxdWVzdFVybCxcblxuXHRcdGdldEhlYWRlcihuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdFx0cmV0dXJuIHJlcXVlc3QuZ2V0UmVzcG9uc2VIZWFkZXIobmFtZSk7XG5cdFx0fVxuXHR9O1xuXHRsZXQgaXNBYm9ydGVkID0gZmFsc2U7XG5cblx0ZnVuY3Rpb24gYWJvcnQoKSB7XG5cdFx0aXNBYm9ydGVkID0gdHJ1ZTtcblx0XHRpZiAocmVxdWVzdCkge1xuXHRcdFx0cmVxdWVzdC5hYm9ydCgpO1xuXHRcdFx0cmVxdWVzdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBub29wO1xuXHRcdH1cblx0fVxuXG5cdGNvbnN0IHByb21pc2UgPSBuZXcgVGFzazxSZXNwb25zZTxUPj4oZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCk6IHZvaWQge1xuXHRcdGlmICghb3B0aW9ucy5tZXRob2QpIHtcblx0XHRcdG9wdGlvbnMubWV0aG9kID0gJ0dFVCc7XG5cdFx0fVxuXG5cdFx0aWYgKCghb3B0aW9ucy51c2VyIHx8ICFvcHRpb25zLnBhc3N3b3JkKSAmJiBvcHRpb25zLmF1dGgpIHtcblx0XHRcdGxldCBhdXRoID0gb3B0aW9ucy5hdXRoLnNwbGl0KCc6Jyk7XG5cdFx0XHRvcHRpb25zLnVzZXIgPSBkZWNvZGVVUklDb21wb25lbnQoYXV0aFswXSk7XG5cdFx0XHRvcHRpb25zLnBhc3N3b3JkID0gZGVjb2RlVVJJQ29tcG9uZW50KGF1dGhbMV0pO1xuXHRcdH1cblxuXHRcdHJlcXVlc3Qub3BlbihvcHRpb25zLm1ldGhvZCwgcmVxdWVzdFVybCwgIW9wdGlvbnMuYmxvY2tNYWluVGhyZWFkLCBvcHRpb25zLnVzZXIsIG9wdGlvbnMucGFzc3dvcmQpO1xuXG5cdFx0aWYgKGhhcygneGhyMicpICYmIG9wdGlvbnMucmVzcG9uc2VUeXBlIGluIHJlc3BvbnNlVHlwZU1hcCkge1xuXHRcdFx0cmVxdWVzdC5yZXNwb25zZVR5cGUgPSByZXNwb25zZVR5cGVNYXBbb3B0aW9ucy5yZXNwb25zZVR5cGVdO1xuXHRcdH1cblxuXHRcdGxldCB0aW1lb3V0SGFuZGxlOiBIYW5kbGU7XG5cdFx0cmVxdWVzdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKTogdm9pZCB7XG5cdFx0XHRpZiAoIWlzQWJvcnRlZCAmJiByZXF1ZXN0LnJlYWR5U3RhdGUgPT09IDQpIHtcblx0XHRcdFx0cmVxdWVzdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBub29wO1xuXHRcdFx0XHR0aW1lb3V0SGFuZGxlICYmIHRpbWVvdXRIYW5kbGUuZGVzdHJveSgpO1xuXG5cdFx0XHRcdGlmIChvcHRpb25zLnJlc3BvbnNlVHlwZSA9PT0gJ3htbCcpIHtcblx0XHRcdFx0XHRyZXNwb25zZS5kYXRhID0gcmVxdWVzdC5yZXNwb25zZVhNTDtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRyZXNwb25zZS5kYXRhID0gKCdyZXNwb25zZScgaW4gcmVxdWVzdCkgPyByZXF1ZXN0LnJlc3BvbnNlIDogcmVxdWVzdC5yZXNwb25zZVRleHQ7XG5cdFx0XHRcdFx0LyogQW5kcm9pZCA0IGhhcyBhIGRlZmVjdCB3aGVyZSBpdCBkb2Vzbid0IHJlc3BlY3QgdGhlIHJlc3BvbnNlVHlwZVxuXHRcdFx0XHRcdCAqIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZG9qby9jb3JlL2lzc3Vlcy8xMjUgKi9cblx0XHRcdFx0XHRpZiAob3B0aW9ucy5yZXNwb25zZVR5cGUgPT09ICdhcnJheWJ1ZmZlcicgJiYgdHlwZW9mIHJlc3BvbnNlLmRhdGEgPT09ICdzdHJpbmcnICYmIGhhcygnYXJyYXlidWZmZXInKSkge1xuXHRcdFx0XHRcdFx0cmVzcG9uc2UuZGF0YSA9IDxhbnk+IHN0cmluZ1RvQXJyYXlCdWZmZXIoKDxhbnk+IHJlc3BvbnNlKS5kYXRhKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXNwb25zZS5zdGF0dXNDb2RlID0gcmVxdWVzdC5zdGF0dXM7XG5cdFx0XHRcdHJlc3BvbnNlLnN0YXR1c1RleHQgPSByZXF1ZXN0LnN0YXR1c1RleHQ7XG5cdFx0XHRcdGlmIChyZXNwb25zZS5zdGF0dXNDb2RlID4gMCAmJiByZXNwb25zZS5zdGF0dXNDb2RlIDwgNDAwKSB7XG5cdFx0XHRcdFx0cmVzb2x2ZShyZXNwb25zZSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0cmVqZWN0KHJlc3BvbnNlLnN0YXR1c1RleHQgP1xuXHRcdFx0XHRcdFx0bmV3IEVycm9yKHJlc3BvbnNlLnN0YXR1c1RleHQpIDpcblx0XHRcdFx0XHRcdG5ldyBFcnJvcignQW4gZXJyb3IgcHJldmVudGVkIGNvbXBsZXRpb24gb2YgdGhlIHJlcXVlc3QuJylcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fTtcblxuXHRcdGlmIChvcHRpb25zLnRpbWVvdXQgPiAwICYmIG9wdGlvbnMudGltZW91dCAhPT0gSW5maW5pdHkpIHtcblx0XHRcdHRpbWVvdXRIYW5kbGUgPSBjcmVhdGVUaW1lcihmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdC8vIFJlamVjdCBmaXJzdCwgc2luY2UgYWJvcnRpbmcgd2lsbCBhbHNvIGZpcmUgb25yZWFkeXN0YXRlY2hhbmdlIHdoaWNoIHdvdWxkIHJlamVjdCB3aXRoIGFcblx0XHRcdFx0Ly8gbGVzcyBzcGVjaWZpYyBlcnJvci4gIChUaGlzIGlzIGFsc28gd2h5IHdlIHNldCB1cCBvdXIgb3duIHRpbWVvdXQgcmF0aGVyIHRoYW4gdXNpbmdcblx0XHRcdFx0Ly8gbmF0aXZlIHRpbWVvdXQgYW5kIG9udGltZW91dCwgYmVjYXVzZSB0aGF0IGFib3J0cyBhbmQgZmlyZXMgb25yZWFkeXN0YXRlY2hhbmdlIGJlZm9yZSBvbnRpbWVvdXQuKVxuXHRcdFx0XHRyZWplY3QobmV3IFJlcXVlc3RUaW1lb3V0RXJyb3IoJ1RoZSBYTUxIdHRwUmVxdWVzdCByZXF1ZXN0IHRpbWVkIG91dC4nKSk7XG5cdFx0XHRcdGFib3J0KCk7XG5cdFx0XHR9LCBvcHRpb25zLnRpbWVvdXQpO1xuXHRcdH1cblxuXHRcdGNvbnN0IGhlYWRlcnMgPSBvcHRpb25zLmhlYWRlcnM7XG5cdFx0bGV0IGhhc0NvbnRlbnRUeXBlSGVhZGVyOiBib29sZWFuID0gZmFsc2U7XG5cdFx0Zm9yIChsZXQgaGVhZGVyIGluIGhlYWRlcnMpIHtcblx0XHRcdGlmIChoZWFkZXIudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtdHlwZScpIHtcblx0XHRcdFx0aGFzQ29udGVudFR5cGVIZWFkZXIgPSB0cnVlO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXF1ZXN0LnNldFJlcXVlc3RIZWFkZXIoaGVhZGVyLCBoZWFkZXJzW2hlYWRlcl0pO1xuXHRcdH1cblxuXHRcdGlmICghaGVhZGVycyB8fCAhKCdYLVJlcXVlc3RlZC1XaXRoJyBpbiBoZWFkZXJzKSkge1xuXHRcdFx0cmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKCdYLVJlcXVlc3RlZC1XaXRoJywgJ1hNTEh0dHBSZXF1ZXN0Jyk7XG5cdFx0fVxuXG5cdFx0aWYgKCFoYXNDb250ZW50VHlwZUhlYWRlciAmJiBoYXMoJ2Zvcm1kYXRhJykgJiYgb3B0aW9ucy5kYXRhIGluc3RhbmNlb2YgZ2xvYmFsLkZvcm1EYXRhKSB7XG5cdFx0XHQvLyBBc3N1bWUgdGhhdCBtb3N0IGZvcm1zIGRvIG5vdCBjb250YWluIGxhcmdlIGJpbmFyeSBmaWxlcy4gSWYgdGhhdCBpcyBub3QgdGhlIGNhc2UsXG5cdFx0XHQvLyB0aGVuIFwibXVsdGlwYXJ0L2Zvcm0tZGF0YVwiIHNob3VsZCBiZSBtYW51YWxseSBzcGVjaWZpZWQgYXMgdGhlIFwiQ29udGVudC1UeXBlXCIgaGVhZGVyLlxuXHRcdFx0cmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKCdDb250ZW50LVR5cGUnLCAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyk7XG5cdFx0fVxuXG5cdFx0aWYgKG9wdGlvbnMucmVzcG9uc2VUeXBlID09PSAneG1sJyAmJiByZXF1ZXN0Lm92ZXJyaWRlTWltZVR5cGUpIHtcblx0XHRcdC8vIFRoaXMgZm9yY2VzIHRoZSBYSFIgdG8gcGFyc2UgdGhlIHJlc3BvbnNlIGFzIFhNTCByZWdhcmRsZXNzIG9mIHRoZSBNSU1FLXR5cGUgcmV0dXJuZWQgYnkgdGhlIHNlcnZlclxuXHRcdFx0cmVxdWVzdC5vdmVycmlkZU1pbWVUeXBlKCd0ZXh0L3htbCcpO1xuXHRcdH1cblxuXHRcdHJlcXVlc3Quc2VuZChvcHRpb25zLmRhdGEpO1xuXHR9LCBmdW5jdGlvbiAoKSB7XG5cdFx0YWJvcnQoKTtcblx0fSk7XG5cblx0cmV0dXJuIHByb21pc2U7XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var queue_1 = require('./queue'); | ||
@@ -78,6 +79,6 @@ function getQueueHandle(item) { | ||
return Scheduler; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = Scheduler; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NoZWR1bGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NjaGVkdWxlci50cyJdLCJuYW1lcyI6WyJnZXRRdWV1ZUhhbmRsZSIsIlNjaGVkdWxlciIsIlNjaGVkdWxlci5jb25zdHJ1Y3RvciIsIlNjaGVkdWxlci5fZGVmZXIiLCJTY2hlZHVsZXIuX2Rpc3BhdGNoIiwiU2NoZWR1bGVyLl9zY2hlZHVsZSIsIlNjaGVkdWxlci5zY2hlZHVsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFDQSxzQkFBcUMsU0FBUyxDQUFDLENBQUE7SUFFL0Msd0JBQXdCLElBQWU7UUFDdENBLE1BQU1BLENBQUNBO1lBQ05BLE9BQU9BLEVBQUVBO2dCQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsY0FBYSxDQUFDLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUN0QixDQUFDO1NBQ0RBLENBQUNBO0lBQ0hBLENBQUNBO0lBT0Q7UUFxRUNDLG1CQUFZQSxNQUFlQTtZQUMxQkMsSUFBSUEsQ0FBQ0Esb0JBQW9CQSxHQUFHQSxDQUFDQSxNQUFNQSxJQUFJQSxzQkFBc0JBLElBQUlBLE1BQU1BLENBQUNBLEdBQUdBLE1BQU1BLENBQUNBLG9CQUFvQkEsR0FBR0EsSUFBSUEsQ0FBQ0E7WUFDOUdBLElBQUlBLENBQUNBLGFBQWFBLEdBQUdBLENBQUNBLE1BQU1BLElBQUlBLE1BQU1BLENBQUNBLGFBQWFBLENBQUNBLEdBQUdBLE1BQU1BLENBQUNBLGFBQWFBLEdBQUdBLGlCQUFTQSxDQUFDQTtZQUV6RkEsSUFBSUEsQ0FBQ0EsY0FBY0EsR0FBR0EsSUFBSUEsQ0FBQ0EsU0FBU0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7WUFDaERBLElBQUlBLENBQUNBLGFBQWFBLEdBQUdBLEtBQUtBLENBQUNBO1lBQzNCQSxJQUFJQSxDQUFDQSxNQUFNQSxH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O1lBRXJCQSxNQUFNQSxDQUFDQSxjQUFjQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtRQUM3QkEsQ0FBQ0E7UUFDRkwsZ0JBQUNBO0lBQURBLENBQUNBLEFBNUZELElBNEZDO0lBNUZEOytCQTRGQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFF1ZXVlSXRlbSwgcXVldWVUYXNrIH0gZnJvbSAnLi9xdWV1ZSc7XG5cbmZ1bmN0aW9uIGdldFF1ZXVlSGFuZGxlKGl0ZW06IFF1ZXVlSXRlbSk6IEhhbmRsZSB7XG5cdHJldHVybiB7XG5cdFx0ZGVzdHJveTogZnVuY3Rpb24gKCkge1xuXHRcdFx0dGhpcy5kZXN0cm95ID0gZnVuY3Rpb24gKCkge307XG5cdFx0XHRpdGVtLmlzQWN0aXZlID0gZmFsc2U7XG5cdFx0XHRpdGVtLmNhbGxiYWNrID0gbnVsbDtcblx0XHR9XG5cdH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS3dBcmdzIHtcblx0ZGVmZXJXaGlsZVByb2Nlc3Npbmc/OiBib29sZWFuO1xuXHRxdWV1ZUZ1bmN0aW9uPzogKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IGFueSkgPT4gSGFuZGxlO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTY2hlZHVsZXIge1xuXHRwcm90ZWN0ZWQgX2JvdW5kRGlzcGF0Y2g6ICgpID0+IHZvaWQ7XG5cdHByb3RlY3RlZCBfZGVmZXJyZWQ6IFF1ZXVlSXRlbVtdO1xuXHRwcm90ZWN0ZWQgX2lzUHJvY2Vzc2luZzogYm9vbGVhbjtcblx0cHJvdGVjdGVkIF9xdWV1ZTogUXVldWVJdGVtW107XG5cdHByb3RlY3RlZCBfdGFzazogSGFuZGxlO1xuXG5cdC8qKlxuXHQgKiBEZXRlcm1pbmVzIHdoZXRoZXIgYW55IGNhbGxiYWNrcyByZWdpc3RlcmVkIGR1cmluZyBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGN1cnJlbnQgYmF0Y2ggKGBmYWxzZWApXG5cdCAqIG9yIGRlZmVycmVkIHVudGlsIHRoZSBuZXh0IGJhdGNoIChgdHJ1ZWAsIGRlZmF1bHQpLlxuXHQgKi9cblx0ZGVmZXJXaGlsZVByb2Nlc3Npbmc6IGJvb2xlYW47XG5cblx0LyoqXG5cdCAqIEFsbG93cyB1c2VycyB0byBzcGVjaWZ5IHRoZSBmdW5jdGlvbiB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIHNjaGVkdWxlIGNhbGxiYWNrcy5cblx0ICogSWYgbm8gZnVuY3Rpb24gaXMgcHJvdmlkZWQsIHRoZW4gYHF1ZXVlVGFza2Agd2lsbCBiZSB1c2VkLlxuXHQgKi9cblx0cXVldWVGdW5jdGlvbjogKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IGFueSkgPT4gSGFuZGxlO1xuXG5cdHByb3RlY3RlZCBfZGVmZXIoY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCk6IEhhbmRsZSB7XG5cdFx0Y29uc3QgaXRlbTogUXVldWVJdGVtID0ge1xuXHRcdFx0aXNBY3RpdmU6IHRydWUsXG5cdFx0XHRjYWxsYmFjazogY2FsbGJhY2tcblx0XHR9O1xuXG5cdFx0aWYgKCF0aGlzLl9kZWZlcnJlZCkge1xuXHRcdFx0dGhpcy5fZGVmZXJyZWQgPSBbXTtcblx0XHR9XG5cblx0XHR0aGlzLl9kZWZlcnJlZC5wdXNoKGl0ZW0pO1xuXG5cdFx0cmV0dXJuIGdldFF1ZXVlSGFuZGxlKGl0ZW0pO1xuXHR9XG5cblx0cHJvdGVjdGVkIF9kaXNwYXRjaCgpOiB2b2lkIHtcblx0XHR0aGlzLl9pc1Byb2Nlc3NpbmcgPSB0cnVlO1xuXHRcdHRoaXMuX3Rhc2suZGVzdHJveSgpO1xuXHRcdHRoaXMuX3Rhc2sgPSBudWxsO1xuXG5cdFx0Y29uc3QgcXVldWUgPSB0aGlzLl9xdWV1ZTtcblx0XHRsZXQgaXRlbTogUXVldWVJdGVtO1xuXG5cdFx0d2hpbGUgKGl0ZW0gPSBxdWV1ZS5zaGlmdCgpKSB7XG5cdFx0XHRpZiAoaXRlbS5pc0FjdGl2ZSkge1xuXHRcdFx0XHRpdGVtLmNhbGxiYWNrKCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5faXNQcm9jZXNzaW5nID0gZmFsc2U7XG5cblx0XHRsZXQgZGVmZXJyZWQ6IFF1ZXVlSXRlbVtdID0gdGhpcy5fZGVmZXJyZWQ7XG5cdFx0aWYgKGRlZmVycmVkICYmIGRlZmVycmVkLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5fZGVmZXJyZWQgPSBudWxsO1xuXG5cdFx0XHRsZXQgaXRlbTogUXVldWVJdGVtO1xuXHRcdFx0d2hpbGUgKGl0ZW0gPSBkZWZlcnJlZC5zaGlmdCgpKSB7XG5cdFx0XHRcdHRoaXMuX3NjaGVkdWxlKGl0ZW0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHByb3RlY3RlZCBfc2NoZWR1bGUoaXRlbTogUXVldWVJdGVtKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl90YXNrKSB7XG5cdFx0XHR0aGlzLl90YXNrID0gdGhpcy5xdWV1ZUZ1bmN0aW9uKHRoaXMuX2JvdW5kRGlzcGF0Y2gpO1xuXHRcdH1cblxuXHRcdHRoaXMuX3F1ZXVlLnB1c2goaXRlbSk7XG5cdH1cblxuXHRjb25zdHJ1Y3Rvcihrd0FyZ3M/OiBLd0FyZ3MpIHtcblx0XHR0aGlzLmRlZmVyV2hpbGVQcm9jZXNzaW5nID0gKGt3QXJncyAmJiAnZGVmZXJXaGlsZVByb2Nlc3NpbmcnIGluIGt3QXJncykgPyBrd0FyZ3MuZGVmZXJXaGlsZVByb2Nlc3NpbmcgOiB0cnVlO1xuXHRcdHRoaXMucXVldWVGdW5jdGlvbiA9IChrd0FyZ3MgJiYga3dBcmdzLnF1ZXVlRnVuY3Rpb24pID8ga3dBcmdzLnF1ZXVlRnVuY3Rpb24gOiBxdWV1ZVRhc2s7XG5cblx0XHR0aGlzLl9ib3VuZERpc3BhdGNoID0gdGhpcy5fZGlzcGF0Y2guYmluZCh0aGlzKTtcblx0XHR0aGlzLl9pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcblx0XHR0aGlzLl9xdWV1ZSA9IFtdO1xuXHR9XG5cblx0c2NoZWR1bGUoY2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCk6IEhhbmRsZSB7XG5cdFx0aWYgKHRoaXMuX2lzUHJvY2Vzc2luZyAmJiB0aGlzLmRlZmVyV2hpbGVQcm9jZXNzaW5nKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5fZGVmZXIoY2FsbGJhY2spO1xuXHRcdH1cblxuXHRcdGNvbnN0IGl0ZW06IFF1ZXVlSXRlbSA9IHtcblx0XHRcdGlzQWN0aXZlOiB0cnVlLFxuXHRcdFx0Y2FsbGJhY2s6IGNhbGxiYWNrXG5cdFx0fTtcblxuXHRcdHRoaXMuX3NjaGVkdWxlKGl0ZW0pO1xuXG5cdFx0cmV0dXJuIGdldFF1ZXVlSGFuZGxlKGl0ZW0pO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NoZWR1bGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NjaGVkdWxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFDQSxzQkFBcUMsU0FBUyxDQUFDLENBQUE7SUFFL0Msd0JBQXdCLElBQWU7UUFDdEMsTUFBTSxDQUFDO1lBQ04sT0FBTyxFQUFFO2dCQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsY0FBYSxDQUFDLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUN0QixDQUFDO1NBQ0QsQ0FBQztJQUNILENBQUM7SUFPRDtRQXFFQyxtQkFBWSxNQUFlO1lBQzFCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLE1BQU0sSUFBSSxzQkFBc0IsSUFBSSxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDO1lBQzlHLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLEdBQUcsaUJBQVMsQ0FBQztZQUV6RixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLENBQUM7UUF6RFMsMEJBQU0sR0FBaEIsVUFBaUIsUUFBa0M7WUFDbEQsSUFBTSxJQUFJLEdBQWM7Z0JBQ3ZCLFFBQVEsRUFBRSxJQUFJO2dCQUNkLFFBQVEsRUFBRSxRQUFRO2FBQ2xCLENBQUM7WUFFRixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFMUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBRVMsNkJBQVMsR0FBbkI7WUFDQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBRWxCLElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDMUIsSUFBSSxJQUFlLENBQUM7WUFFcEIsT0FBTyxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7Z0JBQzdCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO29CQUNuQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLENBQUM7WUFDRixDQUFDO1lBRUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7WUFFM0IsSUFBSSxRQUFRLEdBQWdCLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDM0MsRUFBRSxDQUFDLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztnQkFFdEIsSUFBSSxNQUFlLENBQUM7Z0JBQ3BCLE9BQU8sTUFBSSxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO29CQUNoQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQUksQ0FBQyxDQUFDO2dCQUN0QixDQUFDO1lBQ0YsQ0FBQztRQUNGLENBQUM7UUFFUyw2QkFBUyxHQUFuQixVQUFvQixJQUFlO1lBQ2xDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDdEQsQ0FBQztZQUVELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUM7UUFXRCw0QkFBUSxHQUFSLFVBQVMsUUFBa0M7WUFDMUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO2dCQUNyRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixDQUFDO1lBRUQsSUFBTSxJQUFJLEdBQWM7Z0JBQ3ZCLFFBQVEsRUFBRSxJQUFJO2dCQUNkLFFBQVEsRUFBRSxRQUFRO2FBQ2xCLENBQUM7WUFFRixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXJCLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNGLGdCQUFDO0lBQUQsQ0FBQyxBQTVGRCxJQTRGQztJQTVGRDsrQkE0RkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhbmRsZSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBRdWV1ZUl0ZW0sIHF1ZXVlVGFzayB9IGZyb20gJy4vcXVldWUnO1xuXG5mdW5jdGlvbiBnZXRRdWV1ZUhhbmRsZShpdGVtOiBRdWV1ZUl0ZW0pOiBIYW5kbGUge1xuXHRyZXR1cm4ge1xuXHRcdGRlc3Ryb3k6IGZ1bmN0aW9uICgpIHtcblx0XHRcdHRoaXMuZGVzdHJveSA9IGZ1bmN0aW9uICgpIHt9O1xuXHRcdFx0aXRlbS5pc0FjdGl2ZSA9IGZhbHNlO1xuXHRcdFx0aXRlbS5jYWxsYmFjayA9IG51bGw7XG5cdFx0fVxuXHR9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEt3QXJncyB7XG5cdGRlZmVyV2hpbGVQcm9jZXNzaW5nPzogYm9vbGVhbjtcblx0cXVldWVGdW5jdGlvbj86IChjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpID0+IEhhbmRsZTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2NoZWR1bGVyIHtcblx0cHJvdGVjdGVkIF9ib3VuZERpc3BhdGNoOiAoKSA9PiB2b2lkO1xuXHRwcm90ZWN0ZWQgX2RlZmVycmVkOiBRdWV1ZUl0ZW1bXTtcblx0cHJvdGVjdGVkIF9pc1Byb2Nlc3Npbmc6IGJvb2xlYW47XG5cdHByb3RlY3RlZCBfcXVldWU6IFF1ZXVlSXRlbVtdO1xuXHRwcm90ZWN0ZWQgX3Rhc2s6IEhhbmRsZTtcblxuXHQvKipcblx0ICogRGV0ZXJtaW5lcyB3aGV0aGVyIGFueSBjYWxsYmFja3MgcmVnaXN0ZXJlZCBkdXJpbmcgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBjdXJyZW50IGJhdGNoIChgZmFsc2VgKVxuXHQgKiBvciBkZWZlcnJlZCB1bnRpbCB0aGUgbmV4dCBiYXRjaCAoYHRydWVgLCBkZWZhdWx0KS5cblx0ICovXG5cdGRlZmVyV2hpbGVQcm9jZXNzaW5nOiBib29sZWFuO1xuXG5cdC8qKlxuXHQgKiBBbGxvd3MgdXNlcnMgdG8gc3BlY2lmeSB0aGUgZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgdXNlZCB0byBzY2hlZHVsZSBjYWxsYmFja3MuXG5cdCAqIElmIG5vIGZ1bmN0aW9uIGlzIHByb3ZpZGVkLCB0aGVuIGBxdWV1ZVRhc2tgIHdpbGwgYmUgdXNlZC5cblx0ICovXG5cdHF1ZXVlRnVuY3Rpb246IChjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpID0+IEhhbmRsZTtcblxuXHRwcm90ZWN0ZWQgX2RlZmVyKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQpOiBIYW5kbGUge1xuXHRcdGNvbnN0IGl0ZW06IFF1ZXVlSXRlbSA9IHtcblx0XHRcdGlzQWN0aXZlOiB0cnVlLFxuXHRcdFx0Y2FsbGJhY2s6IGNhbGxiYWNrXG5cdFx0fTtcblxuXHRcdGlmICghdGhpcy5fZGVmZXJyZWQpIHtcblx0XHRcdHRoaXMuX2RlZmVycmVkID0gW107XG5cdFx0fVxuXG5cdFx0dGhpcy5fZGVmZXJyZWQucHVzaChpdGVtKTtcblxuXHRcdHJldHVybiBnZXRRdWV1ZUhhbmRsZShpdGVtKTtcblx0fVxuXG5cdHByb3RlY3RlZCBfZGlzcGF0Y2goKTogdm9pZCB7XG5cdFx0dGhpcy5faXNQcm9jZXNzaW5nID0gdHJ1ZTtcblx0XHR0aGlzLl90YXNrLmRlc3Ryb3koKTtcblx0XHR0aGlzLl90YXNrID0gbnVsbDtcblxuXHRcdGNvbnN0IHF1ZXVlID0gdGhpcy5fcXVldWU7XG5cdFx0bGV0IGl0ZW06IFF1ZXVlSXRlbTtcblxuXHRcdHdoaWxlIChpdGVtID0gcXVldWUuc2hpZnQoKSkge1xuXHRcdFx0aWYgKGl0ZW0uaXNBY3RpdmUpIHtcblx0XHRcdFx0aXRlbS5jYWxsYmFjaygpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRoaXMuX2lzUHJvY2Vzc2luZyA9IGZhbHNlO1xuXG5cdFx0bGV0IGRlZmVycmVkOiBRdWV1ZUl0ZW1bXSA9IHRoaXMuX2RlZmVycmVkO1xuXHRcdGlmIChkZWZlcnJlZCAmJiBkZWZlcnJlZC5sZW5ndGgpIHtcblx0XHRcdHRoaXMuX2RlZmVycmVkID0gbnVsbDtcblxuXHRcdFx0bGV0IGl0ZW06IFF1ZXVlSXRlbTtcblx0XHRcdHdoaWxlIChpdGVtID0gZGVmZXJyZWQuc2hpZnQoKSkge1xuXHRcdFx0XHR0aGlzLl9zY2hlZHVsZShpdGVtKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRwcm90ZWN0ZWQgX3NjaGVkdWxlKGl0ZW06IFF1ZXVlSXRlbSk6IHZvaWQge1xuXHRcdGlmICghdGhpcy5fdGFzaykge1xuXHRcdFx0dGhpcy5fdGFzayA9IHRoaXMucXVldWVGdW5jdGlvbih0aGlzLl9ib3VuZERpc3BhdGNoKTtcblx0XHR9XG5cblx0XHR0aGlzLl9xdWV1ZS5wdXNoKGl0ZW0pO1xuXHR9XG5cblx0Y29uc3RydWN0b3Ioa3dBcmdzPzogS3dBcmdzKSB7XG5cdFx0dGhpcy5kZWZlcldoaWxlUHJvY2Vzc2luZyA9IChrd0FyZ3MgJiYgJ2RlZmVyV2hpbGVQcm9jZXNzaW5nJyBpbiBrd0FyZ3MpID8ga3dBcmdzLmRlZmVyV2hpbGVQcm9jZXNzaW5nIDogdHJ1ZTtcblx0XHR0aGlzLnF1ZXVlRnVuY3Rpb24gPSAoa3dBcmdzICYmIGt3QXJncy5xdWV1ZUZ1bmN0aW9uKSA/IGt3QXJncy5xdWV1ZUZ1bmN0aW9uIDogcXVldWVUYXNrO1xuXG5cdFx0dGhpcy5fYm91bmREaXNwYXRjaCA9IHRoaXMuX2Rpc3BhdGNoLmJpbmQodGhpcyk7XG5cdFx0dGhpcy5faXNQcm9jZXNzaW5nID0gZmFsc2U7XG5cdFx0dGhpcy5fcXVldWUgPSBbXTtcblx0fVxuXG5cdHNjaGVkdWxlKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQpOiBIYW5kbGUge1xuXHRcdGlmICh0aGlzLl9pc1Byb2Nlc3NpbmcgJiYgdGhpcy5kZWZlcldoaWxlUHJvY2Vzc2luZykge1xuXHRcdFx0cmV0dXJuIHRoaXMuX2RlZmVyKGNhbGxiYWNrKTtcblx0XHR9XG5cblx0XHRjb25zdCBpdGVtOiBRdWV1ZUl0ZW0gPSB7XG5cdFx0XHRpc0FjdGl2ZTogdHJ1ZSxcblx0XHRcdGNhbGxiYWNrOiBjYWxsYmFja1xuXHRcdH07XG5cblx0XHR0aGlzLl9zY2hlZHVsZShpdGVtKTtcblxuXHRcdHJldHVybiBnZXRRdWV1ZUhhbmRsZShpdGVtKTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var on_1 = require('../../on'); | ||
@@ -41,6 +42,6 @@ var Promise_1 = require('../../Promise'); | ||
return EventedStreamSource; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = EventedStreamSource; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRlZFN0cmVhbVNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdHJlYW1zL2FkYXB0ZXJzL0V2ZW50ZWRTdHJlYW1Tb3VyY2UudHMiXSwibmFtZXMiOlsiRXZlbnRlZFN0cmVhbVNvdXJjZSIsIkV2ZW50ZWRTdHJlYW1Tb3VyY2UuY29uc3RydWN0b3IiLCJFdmVudGVkU3RyZWFtU291cmNlLnN0YXJ0IiwiRXZlbnRlZFN0cmVhbVNvdXJjZS5jYW5jZWwiLCJFdmVudGVkU3RyZWFtU291cmNlLl9oYW5kbGVFdmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFFQSxtQkFBaUMsVUFBVSxDQUFDLENBQUE7SUFDNUMsd0JBQW9CLGVBQWUsQ0FBQyxDQUFBO0lBT3BDO1FBTUNBLDZCQUFZQSxNQUF3QkEsRUFBRUEsSUFBZ0JBO1lBQ3JEQyxJQUFJQSxDQUFDQSxPQUFPQSxHQUFHQSxNQUFNQSxDQUFDQTtZQUV0QkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsT0FBT0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ3pCQSxJQUFJQSxDQUFDQSxPQUFPQSxHQUFTQSxJQUFJQSxDQUFDQTtZQUMzQkEsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7Z0JBQ0xBLElBQUlBLENBQUNBLE9BQU9BLEdBQUdBLENBQVFBLElBQUlBLENBQUVBLENBQUNBO1lBQy9CQSxDQUFDQTtZQUVEQSxJQUFJQSxDQUFDQSxRQUFRQSxHQUFHQSxFQUFFQSxDQUFDQTtRQUNwQkEsQ0FBQ0E7UUFFREQsbUNBQUtBLEdBQUxBLFVBQU1BLFVBQTJDQTtZQUFqREUsaUJBT0NBO1lBTkFBLElBQUlBLENBQUNBLFdBQVdBLEdBQUdBLFVBQVVBLENBQUNBO1lBQzlCQSxJQUFJQSxDQUFDQSxPQUFPQSxDQUFDQSxPQUFPQSxDQUFDQSxVQUFDQSxTQUFpQkE7Z0JBQ3RDQSxLQUFJQSxDQUFDQSxRQUFRQSxDQUFDQSxJQUFJQSxDQUFDQSxZQUFFQSxDQUFPQSxLQUFJQSxDQUFDQSxPQUFPQSxFQUFFQSxTQUFTQSxFQUFFQSxLQUFJQSxDQUFDQSxZQUFZQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFJQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtZQUNyRkEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFFSEEsTUFBTUEsQ0FBQ0EsaUJBQU9BLENBQUNBLE9BQU9BLEVBQUVBLENBQUNBO1FBQzFCQSxDQUFDQTtRQUVERixvQ0FBTUEsR0FBTkEsVUFBT0EsTUFBWUE7WUFDbEJHLE9BQU9BLElBQUlBLENBQUNBLFFBQVFBLENBQUNBLE1BQU1BLEVBQUVBLENBQUNBO2dCQUM3QkEsSUFBSUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsS0FBS0EsRUFBRUEsQ0FBQ0EsT0FBT0EsRUFBRUEsQ0FBQ0E7WUFDakNBLENBQUNBO1lBRURBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxPQUFPQSxFQUFFQSxDQUFDQTtRQUMxQkEsQ0FBQ0E7UUFFU0gsMENBQVlBLEdBQXRCQSxVQUF1QkEsS0FBWUE7WUFDbENJLElBQUlBLENBQUNBLFdBQVdBLENBQUNBLE9BQU9BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO1FBQ2pDQSxDQUFDQTtRQUNGSiwwQkFBQ0E7SUFBREEsQ0FBQ0EsQUF2Q0QsSUF1Q0M7SUF2Q0Q7eUNBdUNDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRXZlbnRlZCBmcm9tICcuLi8uLi9FdmVudGVkJztcbmltcG9ydCB7IEhhbmRsZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IG9uLCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uLy4uL29uJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uLy4uL1Byb21pc2UnO1xuaW1wb3J0IHsgU291cmNlIH0gZnJvbSAnLi4vUmVhZGFibGVTdHJlYW0nO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciBmcm9tICcuLi9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInO1xuXG5leHBvcnQgdHlwZSBFdmVudFRhcmdldFR5cGVzID0gRXZlbnRlZCB8IEV2ZW50RW1pdHRlciB8IEV2ZW50VGFyZ2V0O1xuZXhwb3J0IHR5cGUgRXZlbnRUeXBlcyA9IHN0cmluZyB8IHN0cmluZ1tdO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFdmVudGVkU3RyZWFtU291cmNlIGltcGxlbWVudHMgU291cmNlPEV2ZW50PiB7XG5cdHByb3RlY3RlZCBfY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPEV2ZW50Pjtcblx0cHJvdGVjdGVkIF90YXJnZXQ6IEV2ZW50VGFyZ2V0VHlwZXM7XG5cdHByb3RlY3RlZCBfZXZlbnRzOiBzdHJpbmdbXTtcblx0cHJvdGVjdGVkIF9oYW5kbGVzOiBIYW5kbGVbXTtcblxuXHRjb25zdHJ1Y3Rvcih0YXJnZXQ6IEV2ZW50VGFyZ2V0VHlwZXMsIHR5cGU6IEV2ZW50VHlwZXMpIHtcblx0XHR0aGlzLl90YXJnZXQgPSB0YXJnZXQ7XG5cblx0XHRpZiAoQXJyYXkuaXNBcnJheSh0eXBlKSkge1xuXHRcdFx0dGhpcy5fZXZlbnRzID0gPGFueT4gdHlwZTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHR0aGlzLl9ldmVudHMgPSBbIDxhbnk+IHR5cGUgXTtcblx0XHR9XG5cblx0XHR0aGlzLl9oYW5kbGVzID0gW107XG5cdH1cblxuXHRzdGFydChjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8RXZlbnQ+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5fY29udHJvbGxlciA9IGNvbnRyb2xsZXI7XG5cdFx0dGhpcy5fZXZlbnRzLmZvckVhY2goKGV2ZW50TmFtZTogc3RyaW5nKSA9PiB7XG5cdFx0XHR0aGlzLl9oYW5kbGVzLnB1c2gob24oPGFueT4gdGhpcy5fdGFyZ2V0LCBldmVudE5hbWUsIHRoaXMuX2hhbmRsZUV2ZW50LmJpbmQodGhpcykpKTtcblx0XHR9KTtcblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxuXG5cdGNhbmNlbChyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHR3aGlsZSAodGhpcy5faGFuZGxlcy5sZW5ndGgpIHtcblx0XHRcdHRoaXMuX2hhbmRsZXMuc2hpZnQoKS5kZXN0cm95KCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG5cblx0cHJvdGVjdGVkIF9oYW5kbGVFdmVudChldmVudDogRXZlbnQpIHtcblx0XHR0aGlzLl9jb250cm9sbGVyLmVucXVldWUoZXZlbnQpO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRlZFN0cmVhbVNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdHJlYW1zL2FkYXB0ZXJzL0V2ZW50ZWRTdHJlYW1Tb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBRUEsbUJBQWlDLFVBQVUsQ0FBQyxDQUFBO0lBQzVDLHdCQUFvQixlQUFlLENBQUMsQ0FBQTtJQU9wQztRQU1DLDZCQUFZLE1BQXdCLEVBQUUsSUFBZ0I7WUFDckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7WUFFdEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQVMsSUFBSSxDQUFDO1lBQzNCLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDTCxJQUFJLENBQUMsT0FBTyxHQUFHLENBQVEsSUFBSSxDQUFFLENBQUM7WUFDL0IsQ0FBQztZQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxtQ0FBSyxHQUFMLFVBQU0sVUFBMkM7WUFBakQsaUJBT0M7WUFOQSxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFDLFNBQWlCO2dCQUN0QyxLQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFFLENBQU8sS0FBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JGLENBQUMsQ0FBQyxDQUFDO1lBRUgsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUVELG9DQUFNLEdBQU4sVUFBTyxNQUFZO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQyxDQUFDO1lBRUQsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUVTLDBDQUFZLEdBQXRCLFVBQXVCLEtBQVk7WUFDbEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUNGLDBCQUFDO0lBQUQsQ0FBQyxBQXZDRCxJQXVDQztJQXZDRDt5Q0F1Q0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFdmVudGVkIGZyb20gJy4uLy4uL0V2ZW50ZWQnO1xuaW1wb3J0IHsgSGFuZGxlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgb24sIHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnLi4vLi4vb24nO1xuaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vLi4vUHJvbWlzZSc7XG5pbXBvcnQgeyBTb3VyY2UgfSBmcm9tICcuLi9SZWFkYWJsZVN0cmVhbSc7XG5pbXBvcnQgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyIGZyb20gJy4uL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcic7XG5cbmV4cG9ydCB0eXBlIEV2ZW50VGFyZ2V0VHlwZXMgPSBFdmVudGVkIHwgRXZlbnRFbWl0dGVyIHwgRXZlbnRUYXJnZXQ7XG5leHBvcnQgdHlwZSBFdmVudFR5cGVzID0gc3RyaW5nIHwgc3RyaW5nW107XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEV2ZW50ZWRTdHJlYW1Tb3VyY2UgaW1wbGVtZW50cyBTb3VyY2U8RXZlbnQ+IHtcblx0cHJvdGVjdGVkIF9jb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8RXZlbnQ+O1xuXHRwcm90ZWN0ZWQgX3RhcmdldDogRXZlbnRUYXJnZXRUeXBlcztcblx0cHJvdGVjdGVkIF9ldmVudHM6IHN0cmluZ1tdO1xuXHRwcm90ZWN0ZWQgX2hhbmRsZXM6IEhhbmRsZVtdO1xuXG5cdGNvbnN0cnVjdG9yKHRhcmdldDogRXZlbnRUYXJnZXRUeXBlcywgdHlwZTogRXZlbnRUeXBlcykge1xuXHRcdHRoaXMuX3RhcmdldCA9IHRhcmdldDtcblxuXHRcdGlmIChBcnJheS5pc0FycmF5KHR5cGUpKSB7XG5cdFx0XHR0aGlzLl9ldmVudHMgPSA8YW55PiB0eXBlO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHRoaXMuX2V2ZW50cyA9IFsgPGFueT4gdHlwZSBdO1xuXHRcdH1cblxuXHRcdHRoaXMuX2hhbmRsZXMgPSBbXTtcblx0fVxuXG5cdHN0YXJ0KGNvbnRyb2xsZXI6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcjxFdmVudD4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHR0aGlzLl9jb250cm9sbGVyID0gY29udHJvbGxlcjtcblx0XHR0aGlzLl9ldmVudHMuZm9yRWFjaCgoZXZlbnROYW1lOiBzdHJpbmcpID0+IHtcblx0XHRcdHRoaXMuX2hhbmRsZXMucHVzaChvbig8YW55PiB0aGlzLl90YXJnZXQsIGV2ZW50TmFtZSwgdGhpcy5faGFuZGxlRXZlbnQuYmluZCh0aGlzKSkpO1xuXHRcdH0pO1xuXG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG5cblx0Y2FuY2VsKHJlYXNvbj86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHdoaWxlICh0aGlzLl9oYW5kbGVzLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5faGFuZGxlcy5zaGlmdCgpLmRlc3Ryb3koKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX2hhbmRsZUV2ZW50KGV2ZW50OiBFdmVudCkge1xuXHRcdHRoaXMuX2NvbnRyb2xsZXIuZW5xdWV1ZShldmVudCk7XG5cdH1cbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../../Promise'); | ||
@@ -73,6 +74,6 @@ var ReadableNodeStreamSource = (function () { | ||
return ReadableNodeStreamSource; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ReadableNodeStreamSource; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0cmVhbXMvYWRhcHRlcnMvUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLnRzIl0sIm5hbWVzIjpbIlJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZSIsIlJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZS5jb25zdHJ1Y3RvciIsIlJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZS5fY2xvc2UiLCJSZWFkYWJsZU5vZGVTdHJlYW1Tb3VyY2UuX2hhbmRsZUNsb3NlIiwiUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLl9oYW5kbGVFcnJvciIsIlJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZS5fcmVtb3ZlTGlzdGVuZXJzIiwiUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLmNhbmNlbCIsIlJlYWRhYmxlTm9kZVN0cmVhbVNvdXJjZS5wdWxsIiwiUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLnN0YXJ0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUFBLHdCQUFvQixlQUFlLENBQUMsQ0FBQTtJQU9wQztRQVFDQSxrQ0FBWUEsVUFBb0JBO1lBQUdDLENBQUNBO1lBQ25DQSxJQUFJQSxDQUFDQSxTQUFTQSxHQUFHQSxLQUFLQSxDQUFDQTtZQUN2QkEsSUFBSUEsQ0FBQ0EsV0FBV0EsR0FBR0EsVUFBVUEsQ0FBQ0E7WUFFOUJBLGlFQUFpRUE7WUFDakVBLElBQUlBLENBQUNBLGFBQWFBLEdBQUdBLENBQVFBLElBQUlBLENBQUNBLFdBQVlBLENBQUNBLFFBQVFBLEVBQUVBLENBQUNBO1lBRTFEQSxFQUFFQSxDQUFDQSxDQUFDQSxJQUFJQSxDQUFDQSxhQUFhQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDeEJBLHNGQUFzRkE7Z0JBQ3RGQSxJQUFJQSxDQUFDQSxXQUFXQSxDQUFDQSxLQUFLQSxFQUFFQSxDQUFDQTtZQUMxQkEsQ0FBQ0E7UUFDRkEsQ0FBQ0E7UUFFREQsK0JBQStC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QUVBLElBQUlBLENBQUNBLFFBQVFBLENBQUNBLENBQUNBO1lBQzVDQSxJQUFJQSxDQUFDQSxXQUFXQSxDQUFDQSxFQUFFQSxDQUFDQSxLQUFLQSxFQUFFQSxJQUFJQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQTtZQUMxQ0EsSUFBSUEsQ0FBQ0EsV0FBV0EsQ0FBQ0EsRUFBRUEsQ0FBQ0EsT0FBT0EsRUFBRUEsSUFBSUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsQ0FBQ0E7WUFFNUNBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxPQUFPQSxFQUFFQSxDQUFDQTtRQUMxQkEsQ0FBQ0E7UUFDRlIsK0JBQUNBO0lBQURBLENBQUNBLEFBbkZELElBbUZDO0lBbkZEOzhDQW1GQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vLi4vUHJvbWlzZSc7XG5pbXBvcnQgeyBTb3VyY2UgfSBmcm9tICcuLi9SZWFkYWJsZVN0cmVhbSc7XG5pbXBvcnQgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyIGZyb20gJy4uL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcic7XG5pbXBvcnQgeyBSZWFkYWJsZSB9IGZyb20gJ3N0cmVhbSc7XG5cbmV4cG9ydCB0eXBlIE5vZGVTb3VyY2VUeXBlID0gQnVmZmVyIHwgc3RyaW5nO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZWFkYWJsZU5vZGVTdHJlYW1Tb3VyY2UgaW1wbGVtZW50cyBTb3VyY2U8Tm9kZVNvdXJjZVR5cGU+IHtcblx0cHJvdGVjdGVkIF9jb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8Tm9kZVNvdXJjZVR5cGU+O1xuXHRwcm90ZWN0ZWQgX2lzQ2xvc2VkOiBib29sZWFuO1xuXHRwcm90ZWN0ZWQgX29uQ2xvc2U6ICgpID0+IHZvaWQ7XG5cdHByb3RlY3RlZCBfb25FcnJvcjogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcblx0cHJvdGVjdGVkIF9ub2RlU3RyZWFtOiBSZWFkYWJsZTtcblx0cHJvdGVjdGVkIF9zaG91bGRSZXN1bWU6IGJvb2xlYW47XG5cblx0Y29uc3RydWN0b3Iobm9kZVN0cmVhbTogUmVhZGFibGUpIHs7XG5cdFx0dGhpcy5faXNDbG9zZWQgPSBmYWxzZTtcblx0XHR0aGlzLl9ub2RlU3RyZWFtID0gbm9kZVN0cmVhbTtcblxuXHRcdC8vIFRPRE86IHJlbW92ZSA8YW55PiB3aGVuIHR5cGVkZWYgaXMgZml4ZWQgdG8gaW5jbHVkZSAnaXNQYXVzZWQnXG5cdFx0dGhpcy5fc2hvdWxkUmVzdW1lID0gISg8YW55PiB0aGlzLl9ub2RlU3RyZWFtKS5pc1BhdXNlZCgpO1xuXG5cdFx0aWYgKHRoaXMuX3Nob3VsZFJlc3VtZSkge1xuXHRcdFx0Ly8gcHV0IHN0cmVhbSBpbiBwYXVzZWQgbW9kZSBzbyBpdCBiZWhhdmVzIGFzIGEgcHVsbCBzb3VyY2UsIHJhdGhlciB0aGFuIGEgcHVzaCBzb3VyY2Vcblx0XHRcdHRoaXMuX25vZGVTdHJlYW0ucGF1c2UoKTtcblx0XHR9XG5cdH1cblxuXHQvLyBQZXJmb3JtIGludGVybmFsIGNsb3NlIGxvZ2ljXG5cdHByb3RlY3RlZCBfY2xvc2UoKTogdm9pZCB7XG5cdFx0dGhpcy5faXNDbG9zZWQgPSB0cnVlO1xuXHRcdHRoaXMuX3JlbW92ZUxpc3RlbmVycygpO1xuXHRcdHRoaXMuX25vZGVTdHJlYW0udW5waXBlKCk7XG5cblx0XHRpZiAodGhpcy5fc2hvdWxkUmVzdW1lKSB7XG5cdFx0XHR0aGlzLl9ub2RlU3RyZWFtLnJlc3VtZSgpO1xuXHRcdH1cblx0fVxuXG5cdC8vIEhhbmRsZSBleHRlcm5hbCByZXF1ZXN0IHRvIGNsb3NlXG5cdHByb3RlY3RlZCBfaGFuZGxlQ2xvc2UoKTogdm9pZCB7XG5cdFx0dGhpcy5fY2xvc2UoKTtcblx0XHR0aGlzLl9jb250cm9sbGVyLmNsb3NlKCk7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX2hhbmRsZUVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuXHRcdHRoaXMuX2Nsb3NlKCk7XG5cdFx0dGhpcy5fY29udHJvbGxlci5lcnJvcihlcnJvcik7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX3JlbW92ZUxpc3RlbmVycygpOiB2b2lkIHtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdjbG9zZScsIHRoaXMuX29uQ2xvc2UpO1xuXHRcdHRoaXMuX25vZGVTdHJlYW0ucmVtb3ZlTGlzdGVuZXIoJ2VuZCcsIHRoaXMuX29uQ2xvc2UpO1xuXHRcdHRoaXMuX25vZGVTdHJlYW0ucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgdGhpcy5fb25FcnJvcik7XG5cdH1cblxuXHRjYW5jZWwocmVhc29uPzogYW55KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5faGFuZGxlQ2xvc2UoKTtcblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxuXG5cdHB1bGwoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPE5vZGVTb3VyY2VUeXBlPik6IFByb21pc2U8dm9pZD4ge1xuXHRcdGlmICh0aGlzLl9pc0Nsb3NlZCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignU3RyZWFtIGlzIGNsb3NlZCcpKTtcblx0XHR9XG5cblx0XHRjb25zdCBjaHVuayA9IHRoaXMuX25vZGVTdHJlYW0ucmVhZCgpO1xuXG5cdFx0aWYgKGNodW5rID09PSBudWxsKSB7XG5cdFx0XHR0aGlzLl9oYW5kbGVDbG9zZSgpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdGNvbnRyb2xsZXIuZW5xdWV1ZShjaHVuayk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG5cblx0c3RhcnQoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPE5vZGVTb3VyY2VUeXBlPik6IFByb21pc2U8dm9pZD4ge1xuXHRcdHRoaXMuX2NvbnRyb2xsZXIgPSBjb250cm9sbGVyO1xuXHRcdHRoaXMuX29uQ2xvc2UgPSB0aGlzLl9oYW5kbGVDbG9zZS5iaW5kKHRoaXMpO1xuXHRcdHRoaXMuX29uRXJyb3IgPSB0aGlzLl9oYW5kbGVFcnJvci5iaW5kKHRoaXMpO1xuXG5cdFx0dGhpcy5fbm9kZVN0cmVhbS5vbignY2xvc2UnLCB0aGlzLl9vbkNsb3NlKTtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLm9uKCdlbmQnLCB0aGlzLl9vbkNsb3NlKTtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLm9uKCdlcnJvcicsIHRoaXMuX29uRXJyb3IpO1xuXG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0cmVhbXMvYWRhcHRlcnMvUmVhZGFibGVOb2RlU3RyZWFtU291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLHdCQUFvQixlQUFlLENBQUMsQ0FBQTtJQU9wQztRQVFDLGtDQUFZLFVBQW9CO1lBQUcsQ0FBQztZQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUU5QixpRUFBaUU7WUFDakUsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFRLElBQUksQ0FBQyxXQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFMUQsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLHNGQUFzRjtnQkFDdEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMxQixDQUFDO1FBQ0YsQ0FBQztRQUVELCtCQUErQjtRQUNyQix5Q0FBTSxHQUFoQjtZQUNDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFFMUIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDM0IsQ0FBQztRQUNGLENBQUM7UUFFRCxtQ0FBbUM7UUFDekIsK0NBQVksR0FBdEI7WUFDQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzFCLENBQUM7UUFFUywrQ0FBWSxHQUF0QixVQUF1QixLQUFZO1lBQ2xDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFFUyxtREFBZ0IsR0FBMUI7WUFDQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBRUQseUNBQU0sR0FBTixVQUFPLE1BQVk7WUFDbEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXBCLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzFCLENBQUM7UUFFRCx1Q0FBSSxHQUFKLFVBQUssVUFBb0Q7WUFDeEQsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7WUFDdEQsQ0FBQztZQUVELElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFdEMsRUFBRSxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUM7Z0JBQ0wsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzQixDQUFDO1lBRUQsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUVELHdDQUFLLEdBQUwsVUFBTSxVQUFvRDtZQUN6RCxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFN0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFNUMsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUNGLCtCQUFDO0lBQUQsQ0FBQyxBQW5GRCxJQW1GQztJQW5GRDs4Q0FtRkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4uLy4uL1Byb21pc2UnO1xuaW1wb3J0IHsgU291cmNlIH0gZnJvbSAnLi4vUmVhZGFibGVTdHJlYW0nO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciBmcm9tICcuLi9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInO1xuaW1wb3J0IHsgUmVhZGFibGUgfSBmcm9tICdzdHJlYW0nO1xuXG5leHBvcnQgdHlwZSBOb2RlU291cmNlVHlwZSA9IEJ1ZmZlciB8IHN0cmluZztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhZGFibGVOb2RlU3RyZWFtU291cmNlIGltcGxlbWVudHMgU291cmNlPE5vZGVTb3VyY2VUeXBlPiB7XG5cdHByb3RlY3RlZCBfY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPE5vZGVTb3VyY2VUeXBlPjtcblx0cHJvdGVjdGVkIF9pc0Nsb3NlZDogYm9vbGVhbjtcblx0cHJvdGVjdGVkIF9vbkNsb3NlOiAoKSA9PiB2b2lkO1xuXHRwcm90ZWN0ZWQgX29uRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XG5cdHByb3RlY3RlZCBfbm9kZVN0cmVhbTogUmVhZGFibGU7XG5cdHByb3RlY3RlZCBfc2hvdWxkUmVzdW1lOiBib29sZWFuO1xuXG5cdGNvbnN0cnVjdG9yKG5vZGVTdHJlYW06IFJlYWRhYmxlKSB7O1xuXHRcdHRoaXMuX2lzQ2xvc2VkID0gZmFsc2U7XG5cdFx0dGhpcy5fbm9kZVN0cmVhbSA9IG5vZGVTdHJlYW07XG5cblx0XHQvLyBUT0RPOiByZW1vdmUgPGFueT4gd2hlbiB0eXBlZGVmIGlzIGZpeGVkIHRvIGluY2x1ZGUgJ2lzUGF1c2VkJ1xuXHRcdHRoaXMuX3Nob3VsZFJlc3VtZSA9ICEoPGFueT4gdGhpcy5fbm9kZVN0cmVhbSkuaXNQYXVzZWQoKTtcblxuXHRcdGlmICh0aGlzLl9zaG91bGRSZXN1bWUpIHtcblx0XHRcdC8vIHB1dCBzdHJlYW0gaW4gcGF1c2VkIG1vZGUgc28gaXQgYmVoYXZlcyBhcyBhIHB1bGwgc291cmNlLCByYXRoZXIgdGhhbiBhIHB1c2ggc291cmNlXG5cdFx0XHR0aGlzLl9ub2RlU3RyZWFtLnBhdXNlKCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gUGVyZm9ybSBpbnRlcm5hbCBjbG9zZSBsb2dpY1xuXHRwcm90ZWN0ZWQgX2Nsb3NlKCk6IHZvaWQge1xuXHRcdHRoaXMuX2lzQ2xvc2VkID0gdHJ1ZTtcblx0XHR0aGlzLl9yZW1vdmVMaXN0ZW5lcnMoKTtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLnVucGlwZSgpO1xuXG5cdFx0aWYgKHRoaXMuX3Nob3VsZFJlc3VtZSkge1xuXHRcdFx0dGhpcy5fbm9kZVN0cmVhbS5yZXN1bWUoKTtcblx0XHR9XG5cdH1cblxuXHQvLyBIYW5kbGUgZXh0ZXJuYWwgcmVxdWVzdCB0byBjbG9zZVxuXHRwcm90ZWN0ZWQgX2hhbmRsZUNsb3NlKCk6IHZvaWQge1xuXHRcdHRoaXMuX2Nsb3NlKCk7XG5cdFx0dGhpcy5fY29udHJvbGxlci5jbG9zZSgpO1xuXHR9XG5cblx0cHJvdGVjdGVkIF9oYW5kbGVFcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcblx0XHR0aGlzLl9jbG9zZSgpO1xuXHRcdHRoaXMuX2NvbnRyb2xsZXIuZXJyb3IoZXJyb3IpO1xuXHR9XG5cblx0cHJvdGVjdGVkIF9yZW1vdmVMaXN0ZW5lcnMoKTogdm9pZCB7XG5cdFx0dGhpcy5fbm9kZVN0cmVhbS5yZW1vdmVMaXN0ZW5lcignY2xvc2UnLCB0aGlzLl9vbkNsb3NlKTtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlbmQnLCB0aGlzLl9vbkNsb3NlKTtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIHRoaXMuX29uRXJyb3IpO1xuXHR9XG5cblx0Y2FuY2VsKHJlYXNvbj86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHRoaXMuX2hhbmRsZUNsb3NlKCk7XG5cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdH1cblxuXHRwdWxsKGNvbnRyb2xsZXI6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcjxOb2RlU291cmNlVHlwZT4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAodGhpcy5faXNDbG9zZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1N0cmVhbSBpcyBjbG9zZWQnKSk7XG5cdFx0fVxuXG5cdFx0Y29uc3QgY2h1bmsgPSB0aGlzLl9ub2RlU3RyZWFtLnJlYWQoKTtcblxuXHRcdGlmIChjaHVuayA9PT0gbnVsbCkge1xuXHRcdFx0dGhpcy5faGFuZGxlQ2xvc2UoKTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRjb250cm9sbGVyLmVucXVldWUoY2h1bmspO1xuXHRcdH1cblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxuXG5cdHN0YXJ0KGNvbnRyb2xsZXI6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcjxOb2RlU291cmNlVHlwZT4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHR0aGlzLl9jb250cm9sbGVyID0gY29udHJvbGxlcjtcblx0XHR0aGlzLl9vbkNsb3NlID0gdGhpcy5faGFuZGxlQ2xvc2UuYmluZCh0aGlzKTtcblx0XHR0aGlzLl9vbkVycm9yID0gdGhpcy5faGFuZGxlRXJyb3IuYmluZCh0aGlzKTtcblxuXHRcdHRoaXMuX25vZGVTdHJlYW0ub24oJ2Nsb3NlJywgdGhpcy5fb25DbG9zZSk7XG5cdFx0dGhpcy5fbm9kZVN0cmVhbS5vbignZW5kJywgdGhpcy5fb25DbG9zZSk7XG5cdFx0dGhpcy5fbm9kZVN0cmVhbS5vbignZXJyb3InLCB0aGlzLl9vbkVycm9yKTtcblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../../Promise'); | ||
@@ -79,6 +80,6 @@ var WritableNodeStreamSink = (function () { | ||
return WritableNodeStreamSink; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = WritableNodeStreamSink; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV3JpdGFibGVOb2RlU3RyZWFtU2luay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdHJlYW1zL2FkYXB0ZXJzL1dyaXRhYmxlTm9kZVN0cmVhbVNpbmsudHMiXSwibmFtZXMiOlsiV3JpdGFibGVOb2RlU3RyZWFtU2luayIsIldyaXRhYmxlTm9kZVN0cmVhbVNpbmsuY29uc3RydWN0b3IiLCJXcml0YWJsZU5vZGVTdHJlYW1TaW5rLl9oYW5kbGVFcnJvciIsIldyaXRhYmxlTm9kZVN0cmVhbVNpbmsuX3JlbW92ZUxpc3RlbmVycyIsIldyaXRhYmxlTm9kZVN0cmVhbVNpbmsuYWJvcnQiLCJXcml0YWJsZU5vZGVTdHJlYW1TaW5rLmNsb3NlIiwiV3JpdGFibGVOb2RlU3RyZWFtU2luay5zdGFydCIsIldyaXRhYmxlTm9kZVN0cmVhbVNpbmsud3JpdGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsd0JBQW9CLGVBQWUsQ0FBQyxDQUFBO0lBS3BDO1FBT0NBLGdDQUFZQSxVQUFpQ0EsRUFBRUEsUUFBcUJBO1lBQXJCQyx3QkFBcUJBLEdBQXJCQSxhQUFxQkE7WUFDbkVBLElBQUlBLENBQUNBLFNBQVNBLEdBQUdBLEtBQUtBLENBQUNBO1lBRXZCQSxJQUFJQSxDQUFDQSxTQUFTQSxHQUFHQSxRQUFRQSxDQUFDQTtZQUMxQkEsSUFBSUEsQ0FBQ0EsV0FBV0EsR0FBR0EsVUFBVUEsQ0FBQ0E7WUFDOUJBLElBQUlBLENBQUNBLFFBQVFBLEdBQUdBLElBQUlBLENBQUNBLFlBQVlBLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLENBQUNBO1lBQzdDQSxJQUFJQSxDQUFDQSxXQUFXQSxDQUFDQSxFQUFFQSxDQUFDQSxPQUFPQSxFQUFFQSxJQUFJQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQTtRQUM3Q0EsQ0FBQ0E7UUFFU0QsNkNBQVlBLEdBQXRCQSxVQUF1QkEsS0FBWUE7WUFDbENFLElBQUlBLENBQUNBLFNBQVNBLEdBQUdB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Q0FBQ0E7d0JBQ0xBLEtBQUlBLENBQUNBLG1CQUFtQkEsR0FBR0EsU0FBU0EsQ0FBQ0E7d0JBQ3JDQSxPQUFPQSxFQUFFQSxDQUFDQTtvQkFDWEEsQ0FBQ0E7Z0JBQ0ZBLENBQUNBLENBQUNBLENBQUNBO1lBQ0pBLENBQUNBLENBQUNBLENBQUNBO1FBQ0pBLENBQUNBO1FBQ0ZQLDZCQUFDQTtJQUFEQSxDQUFDQSxBQW5GRCxJQW1GQztJQW5GRDs0Q0FtRkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4uLy4uL1Byb21pc2UnO1xuaW1wb3J0IHsgU2luayB9IGZyb20gJy4uL1dyaXRhYmxlU3RyZWFtJztcblxuZXhwb3J0IHR5cGUgTm9kZVNvdXJjZVR5cGUgPSBCdWZmZXIgfCBzdHJpbmc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFdyaXRhYmxlTm9kZVN0cmVhbVNpbmsgaW1wbGVtZW50cyBTaW5rPE5vZGVTb3VyY2VUeXBlPiB7XG5cdHByb3RlY3RlZCBfZW5jb2Rpbmc6IHN0cmluZztcblx0cHJvdGVjdGVkIF9pc0Nsb3NlZDogYm9vbGVhbjtcblx0cHJvdGVjdGVkIF9ub2RlU3RyZWFtOiBOb2RlSlMuV3JpdGFibGVTdHJlYW07XG5cdHByb3RlY3RlZCBfb25FcnJvcjogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcblx0cHJvdGVjdGVkIF9yZWplY3RXcml0ZVByb21pc2U6IEZ1bmN0aW9uO1xuXG5cdGNvbnN0cnVjdG9yKG5vZGVTdHJlYW06IE5vZGVKUy5Xcml0YWJsZVN0cmVhbSwgZW5jb2Rpbmc6IHN0cmluZyA9ICcnKSB7XG5cdFx0dGhpcy5faXNDbG9zZWQgPSBmYWxzZTtcblxuXHRcdHRoaXMuX2VuY29kaW5nID0gZW5jb2Rpbmc7XG5cdFx0dGhpcy5fbm9kZVN0cmVhbSA9IG5vZGVTdHJlYW07XG5cdFx0dGhpcy5fb25FcnJvciA9IHRoaXMuX2hhbmRsZUVycm9yLmJpbmQodGhpcyk7XG5cdFx0dGhpcy5fbm9kZVN0cmVhbS5vbignZXJyb3InLCB0aGlzLl9vbkVycm9yKTtcblx0fVxuXG5cdHByb3RlY3RlZCBfaGFuZGxlRXJyb3IoZXJyb3I6IEVycm9yKTogdm9pZCB7XG5cdFx0dGhpcy5faXNDbG9zZWQgPSB0cnVlO1xuXHRcdHRoaXMuX3JlbW92ZUxpc3RlbmVycygpO1xuXG5cdFx0aWYgKHRoaXMuX3JlamVjdFdyaXRlUHJvbWlzZSkge1xuXHRcdFx0dGhpcy5fcmVqZWN0V3JpdGVQcm9taXNlKGVycm9yKTtcblx0XHRcdHRoaXMuX3JlamVjdFdyaXRlUHJvbWlzZSA9IHVuZGVmaW5lZDtcblx0XHR9XG5cblx0XHR0aHJvdyBlcnJvcjtcblx0fVxuXG5cdHByb3RlY3RlZCBfcmVtb3ZlTGlzdGVuZXJzKCk6IHZvaWQge1xuXHRcdHRoaXMuX25vZGVTdHJlYW0ucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgdGhpcy5fb25FcnJvcik7XG5cdH1cblxuXHRhYm9ydChyZWFzb246IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIFRPRE86IGlzIHRoZXJlIGFueXRoaW5nIGVsc2UgdG8gZG8gaGVyZT9cblx0XHRyZXR1cm4gdGhpcy5jbG9zZSgpO1xuXHR9XG5cblx0Y2xvc2UoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5faXNDbG9zZWQgPSB0cnVlO1xuXHRcdHRoaXMuX3JlbW92ZUxpc3RlbmVycygpO1xuXG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdC8vIFRPRE86IGlmIHRoZSBub2RlIHN0cmVhbSByZXR1cm5zIGFuIGVycm9yIGZyb20gJ2VuZCcsIHNob3VsZCB3ZTpcblx0XHRcdC8vIDEuIHJlamVjdCB0aGlzLmNsb3NlIHdpdGggdGhlIGVycm9yPyAoaW1wbGVtZW50ZWQpXG5cdFx0XHQvLyAyLiBwdXQgJ3RoaXMnIGludG8gYW4gZXJyb3Igc3RhdGU/ICh0aGlzLl9oYW5kbGVFcnJvcilcblx0XHRcdHRoaXMuX25vZGVTdHJlYW0uZW5kKG51bGwsIG51bGwsIChlcnJvcjogRXJyb3IpID0+IHtcblx0XHRcdFx0aWYgKGVycm9yKSB7XG5cdFx0XHRcdFx0cmVqZWN0KGVycm9yKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRyZXNvbHZlKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH0pO1xuXHR9XG5cblx0c3RhcnQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuX2lzQ2xvc2VkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdTdHJlYW0gaXMgY2xvc2VkJykpO1xuXHRcdH1cblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxuXG5cdHdyaXRlKGNodW5rOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAodGhpcy5faXNDbG9zZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1N0cmVhbSBpcyBjbG9zZWQnKSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdHRoaXMuX3JlamVjdFdyaXRlUHJvbWlzZSA9IHJlamVjdDtcblxuXHRcdFx0dGhpcy5fbm9kZVN0cmVhbS53cml0ZShjaHVuaywgdGhpcy5fZW5jb2RpbmcsIChlcnJvcj86IEVycm9yKSA9PiB7XG5cdFx0XHRcdGlmIChlcnJvcikge1xuXHRcdFx0XHRcdHRoaXMuX2hhbmRsZUVycm9yKGVycm9yKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHR0aGlzLl9yZWplY3RXcml0ZVByb21pc2UgPSB1bmRlZmluZWQ7XG5cdFx0XHRcdFx0cmVzb2x2ZSgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV3JpdGFibGVOb2RlU3RyZWFtU2luay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdHJlYW1zL2FkYXB0ZXJzL1dyaXRhYmxlTm9kZVN0cmVhbVNpbmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsd0JBQW9CLGVBQWUsQ0FBQyxDQUFBO0lBS3BDO1FBT0MsZ0NBQVksVUFBaUMsRUFBRSxRQUFxQjtZQUFyQix3QkFBcUIsR0FBckIsYUFBcUI7WUFDbkUsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFFdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7WUFDMUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7WUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFFUyw2Q0FBWSxHQUF0QixVQUF1QixLQUFZO1lBQ2xDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBRXhCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQztZQUN0QyxDQUFDO1lBRUQsTUFBTSxLQUFLLENBQUM7UUFDYixDQUFDO1FBRVMsaURBQWdCLEdBQTFCO1lBQ0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBRUQsc0NBQUssR0FBTCxVQUFNLE1BQVc7WUFDaEIsMkNBQTJDO1lBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUVELHNDQUFLLEdBQUw7WUFBQSxpQkFpQkM7WUFoQkEsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFFeEIsTUFBTSxDQUFDLElBQUksaUJBQU8sQ0FBTyxVQUFDLE9BQU8sRUFBRSxNQUFNO2dCQUN4QyxtRUFBbUU7Z0JBQ25FLHFEQUFxRDtnQkFDckQseURBQXlEO2dCQUN6RCxLQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFVBQUMsS0FBWTtvQkFDN0MsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzt3QkFDWCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2YsQ0FBQztvQkFDRCxJQUFJLENBQUMsQ0FBQzt3QkFDTCxPQUFPLEVBQUUsQ0FBQztvQkFDWCxDQUFDO2dCQUNGLENBQUMsQ0FBQyxDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSixDQUFDO1FBRUQsc0NBQUssR0FBTDtZQUNDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNwQixNQUFNLENBQUMsaUJBQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1lBQ3RELENBQUM7WUFFRCxNQUFNLENBQUMsaUJBQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixDQUFDO1FBRUQsc0NBQUssR0FBTCxVQUFNLEtBQWE7WUFBbkIsaUJBa0JDO1lBakJBLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNwQixNQUFNLENBQUMsaUJBQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1lBQ3RELENBQUM7WUFFRCxNQUFNLENBQUMsSUFBSSxpQkFBTyxDQUFPLFVBQUMsT0FBTyxFQUFFLE1BQU07Z0JBQ3hDLEtBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUM7Z0JBRWxDLEtBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFJLENBQUMsU0FBUyxFQUFFLFVBQUMsS0FBYTtvQkFDM0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzt3QkFDWCxLQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUMxQixDQUFDO29CQUNELElBQUksQ0FBQyxDQUFDO3dCQUNMLEtBQUksQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7d0JBQ3JDLE9BQU8sRUFBRSxDQUFDO29CQUNYLENBQUM7Z0JBQ0YsQ0FBQyxDQUFDLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztRQUNKLENBQUM7UUFDRiw2QkFBQztJQUFELENBQUMsQUFuRkQsSUFtRkM7SUFuRkQ7NENBbUZDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvbWlzZSBmcm9tICcuLi8uLi9Qcm9taXNlJztcbmltcG9ydCB7IFNpbmsgfSBmcm9tICcuLi9Xcml0YWJsZVN0cmVhbSc7XG5cbmV4cG9ydCB0eXBlIE5vZGVTb3VyY2VUeXBlID0gQnVmZmVyIHwgc3RyaW5nO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXcml0YWJsZU5vZGVTdHJlYW1TaW5rIGltcGxlbWVudHMgU2luazxOb2RlU291cmNlVHlwZT4ge1xuXHRwcm90ZWN0ZWQgX2VuY29kaW5nOiBzdHJpbmc7XG5cdHByb3RlY3RlZCBfaXNDbG9zZWQ6IGJvb2xlYW47XG5cdHByb3RlY3RlZCBfbm9kZVN0cmVhbTogTm9kZUpTLldyaXRhYmxlU3RyZWFtO1xuXHRwcm90ZWN0ZWQgX29uRXJyb3I6IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XG5cdHByb3RlY3RlZCBfcmVqZWN0V3JpdGVQcm9taXNlOiBGdW5jdGlvbjtcblxuXHRjb25zdHJ1Y3Rvcihub2RlU3RyZWFtOiBOb2RlSlMuV3JpdGFibGVTdHJlYW0sIGVuY29kaW5nOiBzdHJpbmcgPSAnJykge1xuXHRcdHRoaXMuX2lzQ2xvc2VkID0gZmFsc2U7XG5cblx0XHR0aGlzLl9lbmNvZGluZyA9IGVuY29kaW5nO1xuXHRcdHRoaXMuX25vZGVTdHJlYW0gPSBub2RlU3RyZWFtO1xuXHRcdHRoaXMuX29uRXJyb3IgPSB0aGlzLl9oYW5kbGVFcnJvci5iaW5kKHRoaXMpO1xuXHRcdHRoaXMuX25vZGVTdHJlYW0ub24oJ2Vycm9yJywgdGhpcy5fb25FcnJvcik7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX2hhbmRsZUVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuXHRcdHRoaXMuX2lzQ2xvc2VkID0gdHJ1ZTtcblx0XHR0aGlzLl9yZW1vdmVMaXN0ZW5lcnMoKTtcblxuXHRcdGlmICh0aGlzLl9yZWplY3RXcml0ZVByb21pc2UpIHtcblx0XHRcdHRoaXMuX3JlamVjdFdyaXRlUHJvbWlzZShlcnJvcik7XG5cdFx0XHR0aGlzLl9yZWplY3RXcml0ZVByb21pc2UgPSB1bmRlZmluZWQ7XG5cdFx0fVxuXG5cdFx0dGhyb3cgZXJyb3I7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX3JlbW92ZUxpc3RlbmVycygpOiB2b2lkIHtcblx0XHR0aGlzLl9ub2RlU3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIHRoaXMuX29uRXJyb3IpO1xuXHR9XG5cblx0YWJvcnQocmVhc29uOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyBUT0RPOiBpcyB0aGVyZSBhbnl0aGluZyBlbHNlIHRvIGRvIGhlcmU/XG5cdFx0cmV0dXJuIHRoaXMuY2xvc2UoKTtcblx0fVxuXG5cdGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHRoaXMuX2lzQ2xvc2VkID0gdHJ1ZTtcblx0XHR0aGlzLl9yZW1vdmVMaXN0ZW5lcnMoKTtcblxuXHRcdHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHQvLyBUT0RPOiBpZiB0aGUgbm9kZSBzdHJlYW0gcmV0dXJucyBhbiBlcnJvciBmcm9tICdlbmQnLCBzaG91bGQgd2U6XG5cdFx0XHQvLyAxLiByZWplY3QgdGhpcy5jbG9zZSB3aXRoIHRoZSBlcnJvcj8gKGltcGxlbWVudGVkKVxuXHRcdFx0Ly8gMi4gcHV0ICd0aGlzJyBpbnRvIGFuIGVycm9yIHN0YXRlPyAodGhpcy5faGFuZGxlRXJyb3IpXG5cdFx0XHR0aGlzLl9ub2RlU3RyZWFtLmVuZChudWxsLCBudWxsLCAoZXJyb3I6IEVycm9yKSA9PiB7XG5cdFx0XHRcdGlmIChlcnJvcikge1xuXHRcdFx0XHRcdHJlamVjdChlcnJvcik7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0cmVzb2x2ZSgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxuXG5cdHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGlmICh0aGlzLl9pc0Nsb3NlZCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignU3RyZWFtIGlzIGNsb3NlZCcpKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdH1cblxuXHR3cml0ZShjaHVuazogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuX2lzQ2xvc2VkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdTdHJlYW0gaXMgY2xvc2VkJykpO1xuXHRcdH1cblxuXHRcdHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHR0aGlzLl9yZWplY3RXcml0ZVByb21pc2UgPSByZWplY3Q7XG5cblx0XHRcdHRoaXMuX25vZGVTdHJlYW0ud3JpdGUoY2h1bmssIHRoaXMuX2VuY29kaW5nLCAoZXJyb3I/OiBFcnJvcikgPT4ge1xuXHRcdFx0XHRpZiAoZXJyb3IpIHtcblx0XHRcdFx0XHR0aGlzLl9oYW5kbGVFcnJvcihlcnJvcik7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0dGhpcy5fcmVqZWN0V3JpdGVQcm9taXNlID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRcdHJlc29sdmUoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -39,6 +40,6 @@ // Since this Sink is doing no asynchronous operations, | ||
return ArraySink; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ArraySink; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJyYXlTaW5rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvQXJyYXlTaW5rLnRzIl0sIm5hbWVzIjpbIkFycmF5U2luayIsIkFycmF5U2luay5jb25zdHJ1Y3RvciIsIkFycmF5U2luay5hYm9ydCIsIkFycmF5U2luay5jbG9zZSIsIkFycmF5U2luay5zdGFydCIsIkFycmF5U2luay53cml0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFBQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFHakMsdURBQXVEO0lBQ3ZELDJEQUEyRDtJQUMzRCxJQUFJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBRWpDOzs7O09BSUc7SUFDSDtRQUFBQTtRQXVCQUMsQ0FBQ0E7UUFuQkFELHlCQUFLQSxHQUFMQSxVQUFNQSxNQUFXQTtZQUNoQkUsTUFBTUEsQ0FBQ0EsUUFBUUEsQ0FBQ0E7UUFDakJBLENBQUNBO1FBRURGLHlCQUFLQSxHQUFMQTtZQUNDRyxNQUFNQSxDQUFDQSxpQkFBT0EsQ0FBQ0EsT0FBT0EsRUFBRUEsQ0FBQ0E7UUFDMUJBLENBQUNBO1FBRURILHlCQUFLQSxHQUFMQSxVQUFNQSxLQUFpQkE7WUFDdEJJLElBQUlBLENBQUNBLE1BQU1BLEdBQUdBLEVBQUVBLENBQUNBO1lBQ2pCQSxNQUFNQSxDQUFDQSxRQUFRQSxDQUFDQTtRQUNqQkEsQ0FBQ0E7UUFFREoseUJBQUtBLEdBQUxBLFVBQU1BLEtBQVFBO1lBQ2JLLEVBQUVBLENBQUNBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBLENBQUNBO2dCQUNYQSxJQUFJQSxDQUFDQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtZQUN6QkEsQ0FBQ0E7WUFDREEsTUFBTUEsQ0FBQ0EsUUFBUUEsQ0FBQ0E7UUFDakJBLENBQUNBO1FBQ0ZMLGdCQUFDQTtJQUFEQSxDQUFDQSxBQXZCRCxJQXVCQztJQXZCRDsrQkF1QkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IHsgU2luayB9IGZyb20gJy4vV3JpdGFibGVTdHJlYW0nO1xuXG4vLyBTaW5jZSB0aGlzIFNpbmsgaXMgZG9pbmcgbm8gYXN5bmNocm9ub3VzIG9wZXJhdGlvbnMsXG4vLyB1c2UgYSBzaW5nbGUgcmVzb2x2ZWQgcHJvbWlzZSBmb3IgYWxsIHJldHVybmVkIHByb21pc2VzLlxubGV0IHJlc29sdmVkID0gUHJvbWlzZS5yZXNvbHZlKCk7XG5cbi8qKlxuICogQSBXcml0YWJsZVN0cmVhbSBzaW5rIHRoYXQgY29sbGVjdHMgdGhlIGNodW5rcyBpdCByZWNlaXZlcyBhbmRcbiAqIHN0b3JlcyB0aGVtIGludG8gYW4gYXJyYXkuICBVc2UgdGhlIGNodW5rcyBwcm9wZXJ0eSB0byByZXRyaWV2ZVxuICogdGhlIGNvbGxlY3Rpb24gb2YgY2h1bmtzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBcnJheVNpbms8VD4gaW1wbGVtZW50cyBTaW5rPFQ+IHtcblxuXHRjaHVua3M6IFRbXTtcblxuXHRhYm9ydChyZWFzb246IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiByZXNvbHZlZDtcblx0fVxuXG5cdGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxuXG5cdHN0YXJ0KGVycm9yOiAoKSA9PiB2b2lkKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5jaHVua3MgPSBbXTtcblx0XHRyZXR1cm4gcmVzb2x2ZWQ7XG5cdH1cblxuXHR3cml0ZShjaHVuazogVCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGlmIChjaHVuaykge1xuXHRcdFx0dGhpcy5jaHVua3MucHVzaChjaHVuayk7XG5cdFx0fVxuXHRcdHJldHVybiByZXNvbHZlZDtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJyYXlTaW5rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvQXJyYXlTaW5rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUdqQyx1REFBdUQ7SUFDdkQsMkRBQTJEO0lBQzNELElBQUksUUFBUSxHQUFHLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFakM7Ozs7T0FJRztJQUNIO1FBQUE7UUF1QkEsQ0FBQztRQW5CQSx5QkFBSyxHQUFMLFVBQU0sTUFBVztZQUNoQixNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2pCLENBQUM7UUFFRCx5QkFBSyxHQUFMO1lBQ0MsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUVELHlCQUFLLEdBQUwsVUFBTSxLQUFpQjtZQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNqQixNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2pCLENBQUM7UUFFRCx5QkFBSyxHQUFMLFVBQU0sS0FBUTtZQUNiLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekIsQ0FBQztZQUNELE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDakIsQ0FBQztRQUNGLGdCQUFDO0lBQUQsQ0FBQyxBQXZCRCxJQXVCQztJQXZCRDsrQkF1QkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IHsgU2luayB9IGZyb20gJy4vV3JpdGFibGVTdHJlYW0nO1xuXG4vLyBTaW5jZSB0aGlzIFNpbmsgaXMgZG9pbmcgbm8gYXN5bmNocm9ub3VzIG9wZXJhdGlvbnMsXG4vLyB1c2UgYSBzaW5nbGUgcmVzb2x2ZWQgcHJvbWlzZSBmb3IgYWxsIHJldHVybmVkIHByb21pc2VzLlxubGV0IHJlc29sdmVkID0gUHJvbWlzZS5yZXNvbHZlKCk7XG5cbi8qKlxuICogQSBXcml0YWJsZVN0cmVhbSBzaW5rIHRoYXQgY29sbGVjdHMgdGhlIGNodW5rcyBpdCByZWNlaXZlcyBhbmRcbiAqIHN0b3JlcyB0aGVtIGludG8gYW4gYXJyYXkuICBVc2UgdGhlIGNodW5rcyBwcm9wZXJ0eSB0byByZXRyaWV2ZVxuICogdGhlIGNvbGxlY3Rpb24gb2YgY2h1bmtzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBcnJheVNpbms8VD4gaW1wbGVtZW50cyBTaW5rPFQ+IHtcblxuXHRjaHVua3M6IFRbXTtcblxuXHRhYm9ydChyZWFzb246IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiByZXNvbHZlZDtcblx0fVxuXG5cdGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0fVxuXG5cdHN0YXJ0KGVycm9yOiAoKSA9PiB2b2lkKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0dGhpcy5jaHVua3MgPSBbXTtcblx0XHRyZXR1cm4gcmVzb2x2ZWQ7XG5cdH1cblxuXHR3cml0ZShjaHVuazogVCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGlmIChjaHVuaykge1xuXHRcdFx0dGhpcy5jaHVua3MucHVzaChjaHVuayk7XG5cdFx0fVxuXHRcdHJldHVybiByZXNvbHZlZDtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -49,6 +50,6 @@ var resolved = Promise_1.default.resolve(); | ||
return ArraySource; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ArraySource; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJyYXlTb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9BcnJheVNvdXJjZS50cyJdLCJuYW1lcyI6WyJBcnJheVNvdXJjZSIsIkFycmF5U291cmNlLmNvbnN0cnVjdG9yIiwiQXJyYXlTb3VyY2Uuc2VlayIsIkFycmF5U291cmNlLnN0YXJ0IiwiQXJyYXlTb3VyY2UucHVsbCIsIkFycmF5U291cmNlLmNhbmNlbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFBQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFJakMsSUFBTSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUVuQzs7T0FFRztJQUNIO1FBT0NBLHFCQUFZQSxJQUFjQTtZQUN6QkMsSUFBSUEsQ0FBQ0EsZUFBZUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7WUFDekJBLElBQUlBLENBQUNBLElBQUlBLEdBQUdBLEVBQUVBLENBQUNBO1lBRWZBLEVBQUVBLENBQUNBLENBQUNBLElBQUlBLElBQUlBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO2dCQUN6QkEsSUFBSUEsQ0FBQ0EsSUFBSUEsR0FBR0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7WUFDcENBLENBQUNBO1FBQ0ZBLENBQUNBO1FBRURELDBCQUFJQSxHQUFKQSxVQUFLQSxVQUF1Q0EsRUFBRUEsUUFBZ0JBO1lBQzdERSxFQUFFQSxDQUFDQSxDQUFDQSxRQUFRQSxJQUFJQSxJQUFJQSxDQUFDQSxJQUFJQSxDQUFDQSxNQUFNQSxJQUFJQSxRQUFRQSxHQUFHQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDbERBLElBQUlBLEtBQUtBLEdBQUdBLElBQUlBLEtBQUtBLENBQUNBLHlCQUF5QkEsR0FBR0EsUUFBUUEsQ0FBQ0EsQ0FBQ0E7Z0JBQzVEQSxVQUFVQSxDQUFDQSxLQUFLQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtnQkFFeEJBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxNQUFNQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtZQUM5QkEsQ0FBQ0E7WUFFREEsSUFBSUEsQ0FBQ0EsZUFBZUEsR0FBR0EsUUFBUUEsQ0FBQ0E7WUFFaENBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxPQUFPQSxDQUFDQSxJQUFJQSxDQUFDQSxlQUFlQSxDQUFDQSxDQUFDQTtRQUM5Q0EsQ0FBQ0E7UUFFREYsMkJBQUtBLEdBQUxBLFVBQU1BLFVBQXVDQTtZQUM1Q0csTUFBTUEsQ0FBQ0EsUUFBUUEsQ0FBQ0E7UUFDakJBLENBQUNBO1FBRURILDBCQUFJQSxHQUFKQSxVQUFLQSxVQUF1Q0E7WUFDM0NJLEVBQUVBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLGVBQWVBLElBQUlBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO2dCQUM5Q0EsVUFBVUEsQ0FBQ0EsS0FBS0EsRUFBRUEsQ0FBQ0E7WUFDcEJBLENBQUNBO1lBQ0RBLElBQUlBLENBQUNBLENBQUNBO2dCQUNMQSxJQUFJQSxDQUFDQSxlQUFlQSxJQUFJQSxDQUFDQSxDQUFDQTtnQkFDMUJBLFVBQVVBLENBQUNBLE9BQU9BLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLGVBQWVBLEdBQUdBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1lBQ3pEQSxDQUFDQTtZQUVEQSxNQUFNQSxDQUFDQSxRQUFRQSxDQUFDQTtRQUNqQkEsQ0FBQ0E7UUFFREosNEJBQU1BLEdBQU5BLFVBQU9BLE1BQVlBO1lBQ2xCSyxNQUFNQSxDQUFDQSxRQUFRQSxDQUFDQTtRQUNqQkEsQ0FBQ0E7UUFDRkwsa0JBQUNBO0lBQURBLENBQUNBLEFBaERELElBZ0RDO0lBaEREO2lDQWdEQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vUHJvbWlzZSc7XG5pbXBvcnQgeyBTb3VyY2UgfSBmcm9tICcuL1JlYWRhYmxlU3RyZWFtJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIgZnJvbSAnLi9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInO1xuXG5jb25zdCByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpO1xuXG4vKipcbiAqIEEgc2Vla2FibGUgYXJyYXkgc291cmNlXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFycmF5U291cmNlPFQ+IGltcGxlbWVudHMgU291cmNlPFQ+IHtcblx0Ly8gY3VycmVudCBzZWVrIHBvc2l0aW9uIGluIHRoZSBkYXRhIGFycmF5XG5cdGN1cnJlbnRQb3NpdGlvbjogbnVtYmVyO1xuXG5cdC8vIHNoYWxsb3cgY29weSBvZiBkYXRhIGFycmF5IHBhc3NlZCB0byBjb25zdHJ1Y3RvclxuXHRkYXRhOiBBcnJheTxUPjtcblxuXHRjb25zdHJ1Y3RvcihkYXRhOiBBcnJheTxUPikge1xuXHRcdHRoaXMuY3VycmVudFBvc2l0aW9uID0gMDtcblx0XHR0aGlzLmRhdGEgPSBbXTtcblxuXHRcdGlmIChkYXRhICYmIGRhdGEubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KGRhdGEpO1xuXHRcdH1cblx0fVxuXG5cdHNlZWsoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+LCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRpZiAocG9zaXRpb24gPj0gdGhpcy5kYXRhLmxlbmd0aCB8fCBwb3NpdGlvbiA8IDApIHtcblx0XHRcdGxldCBlcnJvciA9IG5ldyBFcnJvcignSW52YWxpZCBzZWVrIHBvc2l0aW9uOiAnICsgcG9zaXRpb24pO1xuXHRcdFx0Y29udHJvbGxlci5lcnJvcihlcnJvcik7XG5cblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdFx0fVxuXG5cdFx0dGhpcy5jdXJyZW50UG9zaXRpb24gPSBwb3NpdGlvbjtcblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5jdXJyZW50UG9zaXRpb24pO1xuXHR9XG5cblx0c3RhcnQoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0cmV0dXJuIHJlc29sdmVkO1xuXHR9XG5cblx0cHVsbChjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAodGhpcy5jdXJyZW50UG9zaXRpb24gPj0gdGhpcy5kYXRhLmxlbmd0aCkge1xuXHRcdFx0Y29udHJvbGxlci5jbG9zZSgpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHRoaXMuY3VycmVudFBvc2l0aW9uICs9IDE7XG5cdFx0XHRjb250cm9sbGVyLmVucXVldWUodGhpcy5kYXRhW3RoaXMuY3VycmVudFBvc2l0aW9uIC0gMV0pO1xuXHRcdH1cblxuXHRcdHJldHVybiByZXNvbHZlZDtcblx0fVxuXG5cdGNhbmNlbChyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gcmVzb2x2ZWQ7XG5cdH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJyYXlTb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9BcnJheVNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFJakMsSUFBTSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUVuQzs7T0FFRztJQUNIO1FBT0MscUJBQVksSUFBYztZQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUVmLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQyxDQUFDO1FBQ0YsQ0FBQztRQUVELDBCQUFJLEdBQUosVUFBSyxVQUF1QyxFQUFFLFFBQWdCO1lBQzdELEVBQUUsQ0FBQyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMseUJBQXlCLEdBQUcsUUFBUSxDQUFDLENBQUM7Z0JBQzVELFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRXhCLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixDQUFDO1lBRUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7WUFFaEMsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBRUQsMkJBQUssR0FBTCxVQUFNLFVBQXVDO1lBQzVDLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDakIsQ0FBQztRQUVELDBCQUFJLEdBQUosVUFBSyxVQUF1QztZQUMzQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDOUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDTCxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQztnQkFDMUIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6RCxDQUFDO1lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNqQixDQUFDO1FBRUQsNEJBQU0sR0FBTixVQUFPLE1BQVk7WUFDbEIsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNqQixDQUFDO1FBQ0Ysa0JBQUM7SUFBRCxDQUFDLEFBaERELElBZ0RDO0lBaEREO2lDQWdEQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vUHJvbWlzZSc7XG5pbXBvcnQgeyBTb3VyY2UgfSBmcm9tICcuL1JlYWRhYmxlU3RyZWFtJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIgZnJvbSAnLi9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInO1xuXG5jb25zdCByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpO1xuXG4vKipcbiAqIEEgc2Vla2FibGUgYXJyYXkgc291cmNlXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFycmF5U291cmNlPFQ+IGltcGxlbWVudHMgU291cmNlPFQ+IHtcblx0Ly8gY3VycmVudCBzZWVrIHBvc2l0aW9uIGluIHRoZSBkYXRhIGFycmF5XG5cdGN1cnJlbnRQb3NpdGlvbjogbnVtYmVyO1xuXG5cdC8vIHNoYWxsb3cgY29weSBvZiBkYXRhIGFycmF5IHBhc3NlZCB0byBjb25zdHJ1Y3RvclxuXHRkYXRhOiBBcnJheTxUPjtcblxuXHRjb25zdHJ1Y3RvcihkYXRhOiBBcnJheTxUPikge1xuXHRcdHRoaXMuY3VycmVudFBvc2l0aW9uID0gMDtcblx0XHR0aGlzLmRhdGEgPSBbXTtcblxuXHRcdGlmIChkYXRhICYmIGRhdGEubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KGRhdGEpO1xuXHRcdH1cblx0fVxuXG5cdHNlZWsoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+LCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRpZiAocG9zaXRpb24gPj0gdGhpcy5kYXRhLmxlbmd0aCB8fCBwb3NpdGlvbiA8IDApIHtcblx0XHRcdGxldCBlcnJvciA9IG5ldyBFcnJvcignSW52YWxpZCBzZWVrIHBvc2l0aW9uOiAnICsgcG9zaXRpb24pO1xuXHRcdFx0Y29udHJvbGxlci5lcnJvcihlcnJvcik7XG5cblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdFx0fVxuXG5cdFx0dGhpcy5jdXJyZW50UG9zaXRpb24gPSBwb3NpdGlvbjtcblxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5jdXJyZW50UG9zaXRpb24pO1xuXHR9XG5cblx0c3RhcnQoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0cmV0dXJuIHJlc29sdmVkO1xuXHR9XG5cblx0cHVsbChjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAodGhpcy5jdXJyZW50UG9zaXRpb24gPj0gdGhpcy5kYXRhLmxlbmd0aCkge1xuXHRcdFx0Y29udHJvbGxlci5jbG9zZSgpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHRoaXMuY3VycmVudFBvc2l0aW9uICs9IDE7XG5cdFx0XHRjb250cm9sbGVyLmVucXVldWUodGhpcy5kYXRhW3RoaXMuY3VycmVudFBvc2l0aW9uIC0gMV0pO1xuXHRcdH1cblxuXHRcdHJldHVybiByZXNvbHZlZDtcblx0fVxuXG5cdGNhbmNlbChyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gcmVzb2x2ZWQ7XG5cdH1cbn1cbiJdfQ== |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var QueuingStrategy_1 = require('./QueuingStrategy'); | ||
@@ -31,6 +32,6 @@ var util_1 = require('./util'); | ||
return ByteLengthQueuingStrategy; | ||
})(QueuingStrategy_1.default); | ||
}(QueuingStrategy_1.default)); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ByteLengthQueuingStrategy; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdHJlYW1zL0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kudHMiXSwibmFtZXMiOlsiQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneSIsIkJ5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuY29uc3RydWN0b3IiLCJCeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5LnNpemUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7SUFBQSxnQ0FBNEIsbUJBQW1CLENBQUMsQ0FBQTtJQUNoRCxxQkFBdUMsUUFBUSxDQUFDLENBQUE7SUFFaEQ7UUFBMERBLDZDQUFrQkE7UUFBNUVBO1lBQTBEQyw4QkFBa0JBO1FBUzVFQSxDQUFDQTtRQVJBRCx3Q0FBSUEsR0FBSkEsVUFBS0EsS0FBUUE7WUFDWkUsRUFBRUEsQ0FBQ0EsQ0FBUUEsS0FBTUEsQ0FBQ0EsVUFBVUEsS0FBS0EsU0FBU0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQzVDQSxNQUFNQSxDQUFRQSxLQUFNQSxDQUFDQSxVQUFVQSxDQUFDQTtZQUNqQ0EsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7Z0JBQ0xBLE1BQU1BLENBQUNBLDZCQUFzQkEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7WUFDdENBLENBQUNBO1FBQ0ZBLENBQUNBO1FBQ0ZGLGdDQUFDQTtJQUFEQSxDQUFDQSxBQVRELEVBQTBELHlCQUFlLEVBU3hFO0lBVEQ7K0NBU0MsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBRdWV1aW5nU3RyYXRlZ3kgZnJvbSAnLi9RdWV1aW5nU3RyYXRlZ3knO1xuaW1wb3J0IHsgZ2V0QXBwcm94aW1hdGVCeXRlU2l6ZSB9IGZyb20gJy4vdXRpbCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJ5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3k8VD4gZXh0ZW5kcyBRdWV1aW5nU3RyYXRlZ3k8VD4ge1xuXHRzaXplKGNodW5rOiBUKTogbnVtYmVyIHtcblx0XHRpZiAoKDxhbnk+IGNodW5rKS5ieXRlTGVuZ3RoICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdHJldHVybiAoPGFueT4gY2h1bmspLmJ5dGVMZW5ndGg7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0cmV0dXJuIGdldEFwcHJveGltYXRlQnl0ZVNpemUoY2h1bmspO1xuXHRcdH1cblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdHJlYW1zL0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7SUFBQSxnQ0FBNEIsbUJBQW1CLENBQUMsQ0FBQTtJQUNoRCxxQkFBdUMsUUFBUSxDQUFDLENBQUE7SUFFaEQ7UUFBMEQsNkNBQWtCO1FBQTVFO1lBQTBELDhCQUFrQjtRQVM1RSxDQUFDO1FBUkEsd0NBQUksR0FBSixVQUFLLEtBQVE7WUFDWixFQUFFLENBQUMsQ0FBUSxLQUFNLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQzVDLE1BQU0sQ0FBUSxLQUFNLENBQUMsVUFBVSxDQUFDO1lBQ2pDLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsNkJBQXNCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEMsQ0FBQztRQUNGLENBQUM7UUFDRixnQ0FBQztJQUFELENBQUMsQUFURCxDQUEwRCx5QkFBZSxHQVN4RTtJQVREOytDQVNDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUXVldWluZ1N0cmF0ZWd5IGZyb20gJy4vUXVldWluZ1N0cmF0ZWd5JztcbmltcG9ydCB7IGdldEFwcHJveGltYXRlQnl0ZVNpemUgfSBmcm9tICcuL3V0aWwnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5PFQ+IGV4dGVuZHMgUXVldWluZ1N0cmF0ZWd5PFQ+IHtcblx0c2l6ZShjaHVuazogVCk6IG51bWJlciB7XG5cdFx0aWYgKCg8YW55PiBjaHVuaykuYnl0ZUxlbmd0aCAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRyZXR1cm4gKDxhbnk+IGNodW5rKS5ieXRlTGVuZ3RoO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHJldHVybiBnZXRBcHByb3hpbWF0ZUJ5dGVTaXplKGNodW5rKTtcblx0XHR9XG5cdH1cbn1cbiJdfQ== |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var QueuingStrategy_1 = require('./QueuingStrategy'); | ||
@@ -25,6 +26,6 @@ var CountQueuingStrategy = (function (_super) { | ||
return CountQueuingStrategy; | ||
})(QueuingStrategy_1.default); | ||
}(QueuingStrategy_1.default)); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = CountQueuingStrategy; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ291bnRRdWV1aW5nU3RyYXRlZ3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9Db3VudFF1ZXVpbmdTdHJhdGVneS50cyJdLCJuYW1lcyI6WyJDb3VudFF1ZXVpbmdTdHJhdGVneSIsIkNvdW50UXVldWluZ1N0cmF0ZWd5LmNvbnN0cnVjdG9yIiwiQ291bnRRdWV1aW5nU3RyYXRlZ3kuc2l6ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztJQUFBLGdDQUE0QixtQkFBbUIsQ0FBQyxDQUFBO0lBRWhEO1FBQXFEQSx3Q0FBa0JBO1FBQXZFQTtZQUFxREMsOEJBQWtCQTtRQUl2RUEsQ0FBQ0E7UUFIQUQsbUNBQUlBLEdBQUpBLFVBQUtBLEtBQVFBO1lBQ1pFLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO1FBQ1ZBLENBQUNBO1FBQ0ZGLDJCQUFDQTtJQUFEQSxDQUFDQSxBQUpELEVBQXFELHlCQUFlLEVBSW5FO0lBSkQ7MENBSUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBRdWV1aW5nU3RyYXRlZ3kgZnJvbSAnLi9RdWV1aW5nU3RyYXRlZ3knO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb3VudFF1ZXVpbmdTdHJhdGVneTxUPiBleHRlbmRzIFF1ZXVpbmdTdHJhdGVneTxUPiB7XG5cdHNpemUoY2h1bms6IFQpOiBudW1iZXIge1xuXHRcdHJldHVybiAxO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ291bnRRdWV1aW5nU3RyYXRlZ3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9Db3VudFF1ZXVpbmdTdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztJQUFBLGdDQUE0QixtQkFBbUIsQ0FBQyxDQUFBO0lBRWhEO1FBQXFELHdDQUFrQjtRQUF2RTtZQUFxRCw4QkFBa0I7UUFJdkUsQ0FBQztRQUhBLG1DQUFJLEdBQUosVUFBSyxLQUFRO1lBQ1osTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNWLENBQUM7UUFDRiwyQkFBQztJQUFELENBQUMsQUFKRCxDQUFxRCx5QkFBZSxHQUluRTtJQUpEOzBDQUlDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUXVldWluZ1N0cmF0ZWd5IGZyb20gJy4vUXVldWluZ1N0cmF0ZWd5JztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ291bnRRdWV1aW5nU3RyYXRlZ3k8VD4gZXh0ZW5kcyBRdWV1aW5nU3RyYXRlZ3k8VD4ge1xuXHRzaXplKGNodW5rOiBUKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gMTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var QueuingStrategy = (function () { | ||
@@ -15,6 +16,6 @@ function QueuingStrategy(kwArgs) { | ||
return QueuingStrategy; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = QueuingStrategy; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVldWluZ1N0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvUXVldWluZ1N0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbIlF1ZXVpbmdTdHJhdGVneSIsIlF1ZXVpbmdTdHJhdGVneS5jb25zdHJ1Y3RvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7SUFFQTtRQUdDQSx5QkFBWUEsTUFBY0E7WUFDekJDLElBQUlBLENBQUNBLGFBQWFBLEdBQUdBLE1BQU1BLENBQUNBLGFBQWFBLENBQUNBO1FBQzNDQSxDQUFDQTtRQUNGRCxzQkFBQ0E7SUFBREEsQ0FBQ0EsQUFORCxJQU1DO0lBTkQ7cUNBTUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUXVldWluZ1N0cmF0ZWd5PFQ+IGltcGxlbWVudHMgU3RyYXRlZ3k8VD4ge1xuXHRoaWdoV2F0ZXJNYXJrOiBudW1iZXI7XG5cblx0Y29uc3RydWN0b3Ioa3dBcmdzOiBLd0FyZ3MpIHtcblx0XHR0aGlzLmhpZ2hXYXRlck1hcmsgPSBrd0FyZ3MuaGlnaFdhdGVyTWFyaztcblx0fVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEt3QXJncyB7XG5cdGhpZ2hXYXRlck1hcms6IG51bWJlcjtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXVldWluZ1N0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvUXVldWluZ1N0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUVBO1FBR0MseUJBQVksTUFBYztZQUN6QixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7UUFDM0MsQ0FBQztRQUNGLHNCQUFDO0lBQUQsQ0FBQyxBQU5ELElBTUM7SUFORDtxQ0FNQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RyYXRlZ3kgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBRdWV1aW5nU3RyYXRlZ3k8VD4gaW1wbGVtZW50cyBTdHJhdGVneTxUPiB7XG5cdGhpZ2hXYXRlck1hcms6IG51bWJlcjtcblxuXHRjb25zdHJ1Y3Rvcihrd0FyZ3M6IEt3QXJncykge1xuXHRcdHRoaXMuaGlnaFdhdGVyTWFyayA9IGt3QXJncy5oaWdoV2F0ZXJNYXJrO1xuXHR9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS3dBcmdzIHtcblx0aGlnaFdhdGVyTWFyazogbnVtYmVyO1xufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -403,6 +404,6 @@ var ReadableStreamController_1 = require('./ReadableStreamController'); | ||
return ReadableStream; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ReadableStream; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVTdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS50cyJdLCJuYW1lcyI6WyJTdGF0ZSIsIlJlYWRhYmxlU3RyZWFtIiwiUmVhZGFibGVTdHJlYW0uY29uc3RydWN0b3IiLCJSZWFkYWJsZVN0cmVhbS5fYWxsb3dQdWxsIiwiUmVhZGFibGVTdHJlYW0uZGVzaXJlZFNpemUiLCJSZWFkYWJsZVN0cmVhbS5oYXNTb3VyY2UiLCJSZWFkYWJsZVN0cmVhbS5sb2NrZWQiLCJSZWFkYWJsZVN0cmVhbS5yZWFkYWJsZSIsIlJlYWRhYmxlU3RyZWFtLnN0YXJ0ZWQiLCJSZWFkYWJsZVN0cmVhbS5xdWV1ZVNpemUiLCJSZWFkYWJsZVN0cmVhbS5fY2FuY2VsIiwiUmVhZGFibGVTdHJlYW0uX3Nob3VsZEFwcGx5QmFja1ByZXNzdXJlIiwiUmVhZGFibGVTdHJlYW0uY2FuY2VsIiwiUmVhZGFibGVTdHJlYW0uY2xvc2UiLCJSZWFkYWJsZVN0cmVhbS5lbnF1ZXVlIiwiUmVhZGFibGVTdHJlYW0uZXJyb3IiLCJSZWFkYWJsZVN0cmVhbS5nZXRSZWFkZXIiLCJSZWFkYWJsZVN0cmVhbS5waXBlVGhyb3VnaCIsIlJlYWRhYmxlU3RyZWFtLnBpcGVUbyIsIlJlYWRhYmxlU3RyZWFtLnBpcGVUby5kb1BpcGUiLCJSZWFkYWJsZVN0cmVhbS5waXBlVG8uY2FuY2VsU291cmNlIiwiUmVhZGFibGVTdHJlYW0ucGlwZVRvLmNsb3NlRGVzdCIsIlJlYWRhYmxlU3RyZWFtLnB1bGwiLCJSZWFkYWJsZVN0cmVhbS5yZXF1ZXN0Q2xvc2UiLCJSZWFkYWJsZVN0cmVhbS50ZWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQ0Esd0JBQW9CLFlBQVksQ0FBQyxDQUFBO0lBQ2pDLHlDQUFxQyw0QkFBNEIsQ0FBQyxDQUFBO0lBQ2xFLHFDQUFpQyx3QkFBd0IsQ0FBQyxDQUFBO0lBQzFELDBCQUFzQixhQUFhLENB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QSxvQkFBb0JBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1lBQ3hDQSxJQUFNQSxPQUFPQSxHQUFHQSxvQkFBb0JBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1lBQ3hDQSxJQUFNQSxpQkFBaUJBLEdBQTBCQTtnQkFDaERBLElBQUlBLEVBQUVBLElBQUlBO2dCQUNWQSxNQUFNQSxFQUFFQSxPQUFPQTthQUNmQSxDQUFDQTtZQUNGQSxPQUFPQSxHQUFHQSxJQUFJQSxjQUFjQSxDQUFDQSxpQkFBaUJBLENBQUNBLENBQUNBO1lBRWhEQSxJQUFNQSxpQkFBaUJBLEdBQTBCQTtnQkFDaERBLElBQUlBLEVBQUVBLElBQUlBO2dCQUNWQSxNQUFNQSxFQUFFQSxPQUFPQTthQUNmQSxDQUFDQTtZQUNGQSxPQUFPQSxHQUFHQSxJQUFJQSxjQUFjQSxDQUFDQSxpQkFBaUJBLENBQUNBLENBQUNBO1lBRWhEQSxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQSxLQUFLQSxDQUFDQSxVQUFVQSxDQUFNQTtnQkFDbkMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7b0JBQzlCLE1BQU0sQ0FBQztnQkFDUixDQUFDO2dCQUVELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLFFBQVEsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQ2pDLENBQUMsQ0FBQ0EsQ0FBQ0E7WUFFSEEsTUFBTUEsQ0FBQ0EsQ0FBRUEsT0FBT0EsRUFBRUEsT0FBT0EsQ0FBRUEsQ0FBQ0E7UUFDN0JBLENBQUNBO1FBQ0Z2QixxQkFBQ0E7SUFBREEsQ0FBQ0EsQUE5WkQsSUE4WkM7SUE5WkQ7b0NBOFpDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdHJhdGVneSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgUHJvbWlzZSBmcm9tICcuLi9Qcm9taXNlJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIgZnJvbSAnLi9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtUmVhZGVyIGZyb20gJy4vUmVhZGFibGVTdHJlYW1SZWFkZXInO1xuaW1wb3J0IFNpemVRdWV1ZSBmcm9tICcuL1NpemVRdWV1ZSc7XG5pbXBvcnQgVHJhbnNmb3JtU3RyZWFtIGZyb20gJy4vVHJhbnNmb3JtU3RyZWFtJztcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSAnLi91dGlsJztcbmltcG9ydCBXcml0YWJsZVN0cmVhbSwgeyBTdGF0ZSBhcyBXcml0ZWFibGVTdGF0ZSB9IGZyb20gJy4vV3JpdGFibGVTdHJlYW0nO1xuXG4vKipcbiAqIE9wdGlvbnMgdXNlZCB3aGVuIHBpcGluZyBhIHJlYWRhYmxlIHN0cmVhbSB0byBhIHdyaXRhYmxlIHN0cmVhbS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQaXBlT3B0aW9ucyB7XG5cdC8qKlxuXHQgKiBQcmV2ZW50cyB0aGUgd3JpdGFibGUgc3RyZWFtIGZyb20gZXJyb3JpbmcgaWYgdGhlIHJlYWRhYmxlIHN0cmVhbSBlbmNvdW50ZXJzIGFuIGVycm9yLlxuXHQgKi9cblx0cHJldmVudEFib3J0PzogYm9vbGVhbjtcblxuXHQvKipcblx0ICogIFByZXZlbnRzIHRoZSByZWFkYWJsZSBzdHJlYW0gZnJvbSBlcnJvcmluZyBpZiB0aGUgd3JpdGFibGUgc3RyZWFtIGVuY291bnRlcnMgYW4gZXJyb3IuXG5cdCAqL1xuXHRwcmV2ZW50Q2FuY2VsPzogYm9vbGVhbjtcblxuXHQvKipcblx0ICogUHJldmVudHMgdGhlIHdyaXRhYmxlIHN0cmVhbSBmcm9tIGNsb3Npbmcgd2hlbiB0aGUgcGlwZSBvcGVyYXRpb24gY29tcGxldGVzLlxuXHQgKi9cblx0cHJldmVudENsb3NlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgU291cmNlIGludGVyZmFjZSBkZWZpbmVzIHRoZSBtZXRob2RzIGEgbW9kdWxlIGNhbiBpbXBsZW1lbnQgdG8gY3JlYXRlIGEgc291cmNlIGZvciBhIHtAbGluayBSZWFkYWJsZVN0cmVhbX0uXG4gKlxuICogVGhlIFN0cmVhbSBBUEkgcHJvdmlkZXMgYSBjb25zaXN0ZW50IHN0cmVhbSBBUEkgd2hpbGUge0BsaW5rIFJlYWRhYmxlU3RyZWFtLlNvdXJjZX0gYW5kIHtAbGluayBXcml0YWJsZVN0cmVhbS5TaW5rfVxuICogaW1wbGVtZW50YXRpb25zIHByb3ZpZGUgdGhlIGxvZ2ljIHRvIGNvbm5lY3QgYSBzdHJlYW0gdG8gc3BlY2lmaWMgZGF0YSBzb3VyY2VzICYgc2lua3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU291cmNlPFQ+IHtcblxuXHQvKipcblx0ICogVGVsbHMgdGhlIHNvdXJjZSB0byBwcmVwYXJlIGZvciBwcm92aWRpbmcgY2h1bmtzIHRvIHRoZSBzdHJlYW0uICBXaGlsZSB0aGUgc291cmNlIG1heSBlbnF1ZXVlIGNodW5rcyBhdCB0aGlzXG5cdCAqIHBvaW50LCBpdCBpcyBub3QgcmVxdWlyZWQuXG5cdCAqXG5cdCAqIEBwYXJhbSBjb250cm9sbGVyIFRoZSBzb3VyY2UgY2FuIHVzZSB0aGUgY29udHJvbGxlciB0byBlbnF1ZXVlIGNodW5rcywgY2xvc2UgdGhlIHN0cmVhbSBvciByZXBvcnQgYW4gZXJyb3IuXG5cdCAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHNvdXJjZSdzIHN0YXJ0IG9wZXJhdGlvbiBoYXMgZmluaXNoZWQuICBJZiB0aGUgcHJvbWlzZSByZWplY3RzLFxuXHQgKiBcdFx0dGhlIHN0cmVhbSB3aWxsIGJlIGVycm9yZWQuXG5cdCAqL1xuXHRzdGFydD8oY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKipcblx0ICogUmVxdWVzdHMgdGhhdCBzb3VyY2UgZW5xdWV1ZSBjaHVua3MuICBVc2UgdGhlIGNvbnRyb2xsZXIgdG8gY2xvc2UgdGhlIHN0cmVhbSB3aGVuIG5vIG1vcmUgY2h1bmtzIGNhblxuXHQgKiBiZSBwcm92aWRlZC5cblx0ICpcblx0ICogQHBhcmFtIGNvbnRyb2xsZXIgVGhlIHNvdXJjZSBjYW4gdXNlIHRoZSBjb250cm9sbGVyIHRvIGVucXVldWUgY2h1bmtzLCBjbG9zZSB0aGUgc3RyZWFtIG9yIHJlcG9ydCBhbiBlcnJvci5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc291cmNlJ3MgcHVsbCBvcGVyYXRpb24gaGFzIGZpbmlzaGVkLiAgSWYgdGhlIHByb21pc2UgcmVqZWN0cyxcblx0ICogXHRcdHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0cHVsbD8oY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKipcblx0ICogT3B0aW9uYWwgbWV0aG9kIGltcGxlbWVudGVkIGJ5IHNlZWthYmxlIHNvdXJjZXMgdG8gc2V0IHRoZSBzZWVrIHBvc2l0aW9uLiBVc2UgdGhlIGNvbnRyb2xsZXIgdG8gcmVwb3J0IGFuIGVycm9yLlxuXHQgKiBAcGFyYW0gY29udHJvbGxlciBUaGUgc291cmNlIGNhbiB1c2UgdGhlIGNvbnRyb2xsZXIgdG8gcmVwb3J0IGFuIGVycm9yLlxuXHQgKiBAcGFyYW0gcG9zaXRpb24gVGhlIHBvc2l0aW9uIGluIHRoZSBzdHJlYW0gdG8gc2VlayB0by5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIG5ldyBzZWVrIHBvc2l0aW9uIHdoZW4gdGhlIHNvdXJjZSdzIHNlZWsgb3BlcmF0aW9uIGhhcyBmaW5pc2hlZC4gIElmIHRoZVxuXHQgKiAgXHRwcm9taXNlIHJlamVjdHMsIHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0c2Vlaz8oY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+LCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTxudW1iZXI+O1xuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhlIHN0cmVhbSBpcyBwcmVtYXR1cmVseSBjbG9zaW5nIGFuZCBhbGxvd3MgdGhlIHNvdXJjZSB0byBkbyBhbnkgbmVjZXNzYXJ5IGNsZWFuIHVwLlxuXHQgKlxuXHQgKiBAcGFyYW0gcmVhc29uIFRoZSByZWFzb24gd2h5IHRoZSBzdHJlYW0gaXMgY2xvc2luZy5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc291cmNlJ3MgcHVsbCBvcGVyYXRpb24gaGFzIGZpbmlzaGVkLiAgSWYgdGhlIHByb21pc2UgcmVqZWN0cyxcblx0ICogXHRcdHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0Y2FuY2VsPyhyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIGBSZWFkYWJsZVN0cmVhbWAncyBwb3NzaWJsZSBzdGF0ZXNcbiAqL1xuZXhwb3J0IGVudW0gU3RhdGUgeyBSZWFkYWJsZSwgQ2xvc2VkLCBFcnJvcmVkIH1cblxuLyoqXG4gKiBJbXBsZW1lbnRhdGlvbiBvZiBhIHJlYWRhYmxlIHN0cmVhbS5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhZGFibGVTdHJlYW08VD4ge1xuXG5cdC8vIFNob3VsZFJlYWRhYmxlU3RyZWFtUHVsbFxuXHRwcm90ZWN0ZWQgZ2V0IF9hbGxvd1B1bGwoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuICF0aGlzLnB1bGxTY2hlZHVsZWQgJiZcblx0XHRcdCF0aGlzLmNsb3NlUmVxdWVzdGVkICYmXG5cdFx0XHR0aGlzLl9zdGFydGVkICYmXG5cdFx0XHR0aGlzLnN0YXRlICE9PSBTdGF0ZS5DbG9zZWQgJiZcblx0XHRcdHRoaXMuc3RhdGUgIT09IFN0YXRlLkVycm9yZWQgJiZcblx0XHRcdCF0aGlzLl9zaG91bGRBcHBseUJhY2tQcmVzc3VyZSgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHVybnMgYSBudW1iZXIgaW5kaWNhdGluZyBob3cgbXVjaCBhZGRpdGlvbmFsIGRhdGEgY2FuIGJlIHB1c2hlZCBieSB0aGUgc291cmNlIHRvIHRoZSBzdHJlYW0ncyBxdWV1ZSBiZWZvcmUgaXRcblx0ICogZXhjZWVkcyBpdHMgYGhpZ2hXYXRlck1hcmtgLiBBbiB1bmRlcmx5aW5nIHNvdXJjZSBzaG91bGQgdXNlIHRoaXMgaW5mb3JtYXRpb24gdG8gZGV0ZXJtaW5lIHdoZW4gYW5kIGhvdyB0byBhcHBseVxuXHQgKiBiYWNrcHJlc3N1cmUuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBzdHJlYW0ncyBzdHJhdGVneSdzIGBoaWdoV2F0ZXJNYXJrYCB2YWx1ZSBtaW51cyB0aGUgcXVldWUgc2l6ZVxuXHQgKi9cblx0Ly8gMy41LjcuIEdldFJlYWRhYmxlU3RyZWFtRGVzaXJlZFNpemUgKCBzdHJlYW0gKVxuXHRnZXQgZGVzaXJlZFNpemUoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fc3RyYXRlZ3kuaGlnaFdhdGVyTWFyayAtIHRoaXMucXVldWVTaXplO1xuXHR9XG5cblx0Z2V0IGhhc1NvdXJjZSgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5fdW5kZXJseWluZ1NvdXJjZSAhPSBudWxsO1xuXHR9XG5cblx0LyoqXG5cdCAqIEEgc3RyZWFtIGNhbiBvbmx5IGhhdmUgb25lIHJlYWRlciBhdCBhIHRpbWUuIFRoaXMgdmFsdWUgaW5kaWNhdGVzIGlmIGEgc3RyZWFtIGFscmVhZHkgaGFzIGEgcmVhZGVyLCBhbmQgaGVuY2Vcblx0ICogY2Fubm90IGJlIHJlYWQgZnJvbSBvdGhlciB0aGFuIGJ5IHRoYXQgcmVhZGVyLiBXaGVuIGEgY29uc3VtZXIgaXMgZG9uZSB3aXRoIGEgcmVhZGVyIHRoZXkgY2FuIGRpc3NvY2lhdGUgaXRcblx0ICogYnkgY2FsbGluZyB7QGxpbmsgUmVhZGFibGVTdHJlYW1SZWFkZXIjcmVsZWFzZUxvY2t9LlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBzdHJlYW0gaGFzIGEgcmVhZGVyIGFzc29jaWF0ZWQgd2l0aCBpdFxuXHQgKi9cblx0Ly8gSXNSZWFkYWJsZVN0cmVhbUxvY2tlZFxuXHRnZXQgbG9ja2VkKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmhhc1NvdXJjZSAmJiAhIXRoaXMucmVhZGVyO1xuXHR9XG5cblx0Z2V0IHJlYWRhYmxlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmhhc1NvdXJjZSAmJiB0aGlzLnN0YXRlID09PSBTdGF0ZS5SZWFkYWJsZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGlzIHByb21pc2Ugd2lsbCByZXNvbHZlIHdoZW4gdGhlIHN0cmVhbSdzIHVuZGVybHlpbmcgc291cmNlIGhhcyBzdGFydGVkIGFuZCBpcyByZWFkeSB0byBwcm92aWRlIGRhdGEuIElmXG5cdCAqIHRoZSB7QGxpbmsgUmVhZGFibGVTdHJlYW1SZWFkZXIjcmVhZH0gbWV0aG9kIGlzIGNhbGxlZCBiZWZvcmUgdGhlIHN0cmVhbSBoYXMgc3RhcnRlZCBpdCB3aWxsIG5vdCBkbyBhbnl0aGluZy5cblx0ICogV2FpdCBmb3IgdGhpcyBwcm9taXNlIHRvIHJlc29sdmUgdG8gZW5zdXJlIHRoYXQgeW91ciBgcmVhZGAgY2FsbHMgYXJlIHJlc3BvbmRlZCB0byBhcyBwcm9tcHRseSBhcyBwb3NzaWJsZS5cblx0ICpcblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc3RyZWFtIGlzIHJlYWR5IHRvIGJlIHJlYWQgZnJvbS5cblx0ICovXG5cdGdldCBzdGFydGVkKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiB0aGlzLl9zdGFydGVkUHJvbWlzZTtcblx0fVxuXG5cdGdldCBxdWV1ZVNpemUoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5xdWV1ZS50b3RhbFNpemU7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX3B1bGxpbmdQcm9taXNlOiBQcm9taXNlPHZvaWQ+O1xuXHRwcm90ZWN0ZWQgX3N0YXJ0ZWQ6IGJvb2xlYW47XG5cdHByb3RlY3RlZCBfc3RhcnRlZFByb21pc2U6IFByb21pc2U8dm9pZD47XG5cdHByb3RlY3RlZCBfc3RyYXRlZ3k6IFN0cmF0ZWd5PFQ+O1xuXHRwcm90ZWN0ZWQgX3VuZGVybHlpbmdTb3VyY2U6IFNvdXJjZTxUPjtcblxuXHRjbG9zZVJlcXVlc3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuXHRjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD47XG5cdHB1bGxTY2hlZHVsZWQ6IGJvb2xlYW47XG5cdHF1ZXVlOiBTaXplUXVldWU8VD47XG5cdHJlYWRlcjogUmVhZGFibGVTdHJlYW1SZWFkZXI8VD47XG5cdHN0YXRlOiBTdGF0ZTtcblx0c3RvcmVkRXJyb3I6IEVycm9yO1xuXG5cdC8qKlxuXHQgKiBBIGBSZWFkYWJsZVN0cmVhbWAgcmVxdWlyZXMgYW4gdW5kZXJseWluZyBzb3VyY2UgdG8gc3VwcGx5IGRhdGEuIFRoZSBzb3VyY2UgaW50ZXJhY3RzIHdpdGggdGhlIHN0cmVhbSB0aHJvdWdoXG5cdCAqIGEge0BsaW5rIFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcn0gdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIHN0cmVhbSwgYW5kIHByb3ZpZGVkIHRvIHRoZSBzb3VyY2UuXG5cdCAqXG5cdCAqIEBjb25zdHJ1Y3RvclxuXHQgKiBAcGFyYW0gdW5kZXJseWluZ1NvdXJjZSBUaGUgc291cmNlIG9iamVjdCB0aGF0IHN1cHBsaWVzIGRhdGEgdG8gdGhlIHN0cmVhbSBieSBpbnRlcmFjdGluZyB3aXRoIGl0cyBjb250cm9sbGVyLlxuXHQgKiBAcGFyYW0gc3RyYXRlZ3kgVGhlIHN0cmF0ZWd5IGZvciB0aGlzIHN0cmVhbS5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHVuZGVybHlpbmdTb3VyY2U6IFNvdXJjZTxUPiwgc3RyYXRlZ3k6IFN0cmF0ZWd5PFQ+ID0ge30pIHtcblx0XHRpZiAoIXVuZGVybHlpbmdTb3VyY2UpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcignQW4gUmVhZGFibGVTdHJlYW0gU291cmNlIG11c3QgYmUgcHJvdmlkZWQuJyk7XG5cdFx0fVxuXHRcdHRoaXMuc3RhdGUgPSBTdGF0ZS5SZWFkYWJsZTtcblx0XHR0aGlzLl91bmRlcmx5aW5nU291cmNlID0gdW5kZXJseWluZ1NvdXJjZTtcblx0XHR0aGlzLmNvbnRyb2xsZXIgPSBuZXcgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyKHRoaXMpO1xuXHRcdHRoaXMuX3N0cmF0ZWd5ID0gdXRpbC5ub3JtYWxpemVTdHJhdGVneShzdHJhdGVneSk7XG5cdFx0dGhpcy5xdWV1ZSA9IG5ldyBTaXplUXVldWU8VD4oKTtcblx0XHR0aGlzLl9zdGFydGVkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlU3RhcnRlZCkgPT4ge1xuXHRcdFx0Y29uc3Qgc3RhcnRSZXN1bHQgPSB1dGlsLmludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU291cmNlLCAnc3RhcnQnLCBbIHRoaXMuY29udHJvbGxlciBdKTtcblx0XHRcdFByb21pc2UucmVzb2x2ZShzdGFydFJlc3VsdCkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMuX3N0YXJ0ZWQgPSB0cnVlO1xuXHRcdFx0XHRyZXNvbHZlU3RhcnRlZCgpO1xuXHRcdFx0XHR0aGlzLnB1bGwoKTtcblx0XHRcdH0sIChlcnJvcjogRXJyb3IpID0+IHtcblx0XHRcdFx0dGhpcy5lcnJvcihlcnJvcik7XG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxuXG5cdHByb3RlY3RlZCBfY2FuY2VsKHJlYXNvbj86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIDMuMi40LjEtMzogcmV0dXJuIGNhbmNlbFJlYWRhYmxlU3RyZWFtKHRoaXMsIHJlYXNvbik7XG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkNsb3NlZCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignMy41LjMtMjogU3RhdGUgaXMgZXJyb3JlZCcpKTtcblx0XHR9XG5cblx0XHR0aGlzLnF1ZXVlLmVtcHR5KCk7XG5cdFx0dGhpcy5jbG9zZSgpO1xuXHRcdHJldHVybiB1dGlsLnByb21pc2VJbnZva2VPck5vb3AodGhpcy5fdW5kZXJseWluZ1NvdXJjZSwgJ2NhbmNlbCcsIFsgcmVhc29uIF0pLnRoZW4oZnVuY3Rpb24gKCkge30pO1xuXHR9XG5cblx0Ly8gc2hvdWxkUmVhZGFibGVTdHJlYW1BcHBseUJhY2tQcmVzc3VyZVxuXHRwcm90ZWN0ZWQgX3Nob3VsZEFwcGx5QmFja1ByZXNzdXJlKCk6IGJvb2xlYW4ge1xuXHRcdGNvbnN0IHF1ZXVlU2l6ZSA9IHRoaXMucXVldWUudG90YWxTaXplO1xuXG5cdFx0cmV0dXJuIHF1ZXVlU2l6ZSA+IHRoaXMuX3N0cmF0ZWd5LmhpZ2hXYXRlck1hcms7XG5cdH1cblxuXHQvKipcblx0ICpcblx0ICogQHBhcmFtIHJlYXNvbiBBIGRlc2NyaXB0aW9uIG9mIHRoZSByZWFzb24gdGhlIHN0cmVhbSBpcyBiZWluZyBjYW5jZWxlZC5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc3RyZWFtIGhhcyBjbG9zZWQgYW5kIHRoZSBjYWxsIHRvIHRoZSB1bmRlcmx5aW5nIHNvdXJjZSdzIGBjYW5jZWxgXG5cdCAqIG1ldGhvZCBoYXMgY29tcGxldGVkLlxuXHQgKi9cblx0Y2FuY2VsKHJlYXNvbj86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGlmICghdGhpcy5oYXNTb3VyY2UpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCczLjIuNC4xLTE6IE11c3QgYmUgYSBSZWFkYWJsZVN0cmVhbScpKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5fY2FuY2VsKHJlYXNvbik7XG5cdH1cblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBzdHJlYW0gd2l0aG91dCByZWdhcmQgdG8gdGhlIHN0YXR1cyBvZiB0aGUgcXVldWUuICBVc2Uge0BsaW5rIHJlcXVlc3RDbG9zZX0gdG8gY2xvc2UgdGhlXG5cdCAqIHN0cmVhbSBhbmQgYWxsb3cgdGhlIHF1ZXVlIHRvIGZsdXNoLlxuXHQgKlxuXHQgKi9cblx0Ly8gMy41LjQuIEZpbmlzaENsb3NpbmdSZWFkYWJsZVN0cmVhbSAoIHN0cmVhbSApXG5cdGNsb3NlKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5SZWFkYWJsZSkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdHRoaXMuc3RhdGUgPSBTdGF0ZS5DbG9zZWQ7XG5cblx0XHRpZiAodGhpcy5sb2NrZWQpIHtcblx0XHRcdHRoaXMucmVhZGVyLnJlbGVhc2UoKTtcblx0XHR9XG5cdH1cblxuXHQvLyBFbnF1ZXVlSW5SZWFkYWJsZVN0cmVhbVxuXHRlbnF1ZXVlKGNodW5rOiBUKTogdm9pZCB7XG5cdFx0Y29uc3Qgc2l6ZSA9IHRoaXMuX3N0cmF0ZWd5LnNpemU7XG5cblx0XHRpZiAoIXRoaXMucmVhZGFibGUgfHwgdGhpcy5jbG9zZVJlcXVlc3RlZCkge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCczLjUuNi0xLDI6IFN0cmVhbS5fc3RhdGUgc2hvdWxkIGJlIFJlYWRhYmxlIGFuZCBzdHJlYW0uY2xvc2VSZXF1ZXN0ZWQgc2hvdWxkIGJlIHRydWUnKTtcblx0XHR9XG5cblx0XHRpZiAoIXRoaXMubG9ja2VkIHx8ICF0aGlzLnJlYWRlci5yZXNvbHZlUmVhZFJlcXVlc3QoY2h1bmspKSB7XG5cblx0XHRcdHRyeSB7XG5cdFx0XHRcdGxldCBjaHVua1NpemUgPSAxO1xuXHRcdFx0XHRpZiAoc2l6ZSkge1xuXHRcdFx0XHRcdGNodW5rU2l6ZSA9IHNpemUoY2h1bmspO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMucXVldWUuZW5xdWV1ZShjaHVuaywgY2h1bmtTaXplKTtcblx0XHRcdH1cblx0XHRcdGNhdGNoIChlcnJvcikge1xuXHRcdFx0XHR0aGlzLmVycm9yKGVycm9yKTtcblx0XHRcdFx0dGhyb3cgZXJyb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5wdWxsKCk7XG5cdH1cblxuXHRlcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuUmVhZGFibGUpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcignMy41LjctMTogU3RhdGUgbXVzdCBiZSBSZWFkYWJsZScpO1xuXHRcdH1cblxuXHRcdHRoaXMucXVldWUuZW1wdHkoKTtcblx0XHR0aGlzLnN0b3JlZEVycm9yID0gZXJyb3I7XG5cdFx0dGhpcy5zdGF0ZSA9IFN0YXRlLkVycm9yZWQ7XG5cblx0XHRpZiAodGhpcy5sb2NrZWQpIHtcblx0XHRcdHRoaXMucmVhZGVyLnJlbGVhc2UoKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogY3JlYXRlIGEgbmV3IHtAbGluayBSZWFkYWJsZVN0cmVhbVJlYWRlcn0gYW5kIGxvY2sgdGhlIHN0cmVhbSB0byB0aGUgbmV3IHJlYWRlclxuXHQgKi9cblx0Ly8gQWNxdWlyZVJlYWRhYmxlU3RyZWFtUmVhZGVyXG5cdGdldFJlYWRlcigpOiBSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPiB7XG5cdFx0aWYgKCF0aGlzLnJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjIuNC4yLTE6IG11c3QgYmUgYSBSZWFkYWJsZVN0cmVhbSBpbnN0YW5jZScpO1xuXHRcdH1cblxuXHRcdHJldHVybiBuZXcgUmVhZGFibGVTdHJlYW1SZWFkZXIodGhpcyk7XG5cdH1cblxuXHRwaXBlVGhyb3VnaCh0cmFuc2Zvcm1TdHJlYW06IFRyYW5zZm9ybVN0cmVhbTxULCBhbnk+LCBvcHRpb25zPzogUGlwZU9wdGlvbnMpOiBSZWFkYWJsZVN0cmVhbTxUPiB7XG5cdFx0dGhpcy5waXBlVG8odHJhbnNmb3JtU3RyZWFtLndyaXRhYmxlLCBvcHRpb25zKTtcblx0XHRyZXR1cm4gdHJhbnNmb3JtU3RyZWFtLnJlYWRhYmxlO1xuXHR9XG5cblx0cGlwZVRvKGRlc3Q6IFdyaXRhYmxlU3RyZWFtPFQ+LCBvcHRpb25zOiBQaXBlT3B0aW9ucyA9IHt9KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0bGV0IHJlc29sdmVQaXBlVG9Qcm9taXNlOiAoKSA9PiB2b2lkO1xuXHRcdGxldCByZWplY3RQaXBlVG9Qcm9taXNlOiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkO1xuXHRcdGxldCBjbG9zZWRQdXJwb3NlZnVsbHkgPSBmYWxzZTtcblx0XHRsZXQgbGFzdFJlYWQ6IGFueTtcblx0XHRsZXQgcmVhZGVyOiBSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPjtcblxuXHRcdGZ1bmN0aW9uIGRvUGlwZSgpOiB2b2lkIHtcblx0XHRcdGxhc3RSZWFkID0gcmVhZGVyLnJlYWQoKTtcblx0XHRcdFByb21pc2UuYWxsKFsgbGFzdFJlYWQsIGRlc3QucmVhZHkgXSkudGhlbihmdW5jdGlvbiAoWyByZWFkUmVzdWx0IF0pIHtcblx0XHRcdFx0aWYgKHJlYWRSZXN1bHQuZG9uZSkge1xuXHRcdFx0XHRcdGNsb3NlRGVzdCgpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2UgaWYgKGRlc3Quc3RhdGUgPT09IFdyaXRlYWJsZVN0YXRlLldyaXRhYmxlICkge1xuXHRcdFx0XHRcdGRlc3Qud3JpdGUocmVhZFJlc3VsdC52YWx1ZSk7XG5cdFx0XHRcdFx0ZG9QaXBlKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdGZ1bmN0aW9uIGNhbmNlbFNvdXJjZShyZWFzb246IGFueSk6IHZvaWQge1xuXHRcdFx0aWYgKCFvcHRpb25zLnByZXZlbnRDYW5jZWwpIHtcblx0XHRcdFx0cmVhZGVyLmNhbmNlbChyZWFzb24pO1xuXHRcdFx0XHRyZWplY3RQaXBlVG9Qcm9taXNlKHJlYXNvbik7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0bGFzdFJlYWQudGhlbihmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0cmVhZGVyLnJlbGVhc2VMb2NrKCk7XG5cdFx0XHRcdFx0cmVqZWN0UGlwZVRvUHJvbWlzZShyZWFzb24pO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRmdW5jdGlvbiBjbG9zZURlc3QoKTogdm9pZCB7XG5cdFx0XHRjb25zdCBkZXN0U3RhdGUgPSBkZXN0LnN0YXRlO1xuXHRcdFx0aWYgKCFvcHRpb25zLnByZXZlbnRDbG9zZSAmJlxuXHRcdFx0XHQoZGVzdFN0YXRlID09PSBXcml0ZWFibGVTdGF0ZS5XYWl0aW5nIHx8IGRlc3RTdGF0ZSA9PT0gV3JpdGVhYmxlU3RhdGUuV3JpdGFibGUpKSB7XG5cblx0XHRcdFx0Y2xvc2VkUHVycG9zZWZ1bGx5ID0gdHJ1ZTtcblx0XHRcdFx0ZGVzdC5jbG9zZSgpLnRoZW4ocmVzb2x2ZVBpcGVUb1Byb21pc2UsIHJlamVjdFBpcGVUb1Byb21pc2UpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHJlc29sdmVQaXBlVG9Qcm9taXNlKCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdHJlc29sdmVQaXBlVG9Qcm9taXNlID0gcmVzb2x2ZTtcblx0XHRcdHJlamVjdFBpcGVUb1Byb21pc2UgPSByZWplY3Q7XG5cblx0XHRcdHJlYWRlciA9IHRoaXMuZ2V0UmVhZGVyKCk7XG5cdFx0XHRyZWFkZXIuY2xvc2VkLmNhdGNoKChyZWFzb246IGFueSkgPT4ge1xuXHRcdFx0XHQvLyBhYm9ydERlc3Rcblx0XHRcdFx0aWYgKCFvcHRpb25zLnByZXZlbnRBYm9ydCkge1xuXHRcdFx0XHRcdGRlc3QuYWJvcnQocmVhc29uKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZWplY3RQaXBlVG9Qcm9taXNlKHJlYXNvbik7XG5cdFx0XHR9KTtcblxuXHRcdFx0ZGVzdC5jbG9zZWQudGhlbihcblx0XHRcdFx0ZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdGlmICghY2xvc2VkUHVycG9zZWZ1bGx5KSB7XG5cdFx0XHRcdFx0XHRjYW5jZWxTb3VyY2UobmV3IFR5cGVFcnJvcignZGVzdGluYXRpb24gaXMgY2xvc2luZyBvciBjbG9zZWQgYW5kIGNhbm5vdCBiZSBwaXBlZCB0byBhbnltb3JlJykpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSxcblx0XHRcdFx0Y2FuY2VsU291cmNlXG5cdFx0XHQpO1xuXHRcdFx0ZG9QaXBlKCk7XG5cdFx0fSk7XG5cdH1cblxuXHQvLyBSZXF1ZXN0UmVhZGFibGVTdHJlYW1QdWxsXG5cdHB1bGwoKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9hbGxvd1B1bGwpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5fcHVsbGluZ1Byb21pc2UpIHtcblx0XHRcdHRoaXMucHVsbFNjaGVkdWxlZCA9IHRydWU7XG5cdFx0XHR0aGlzLl9wdWxsaW5nUHJvbWlzZS50aGVuKCgpID0+IHtcblx0XHRcdFx0dGhpcy5wdWxsU2NoZWR1bGVkID0gZmFsc2U7XG5cdFx0XHRcdHRoaXMucHVsbCgpO1xuXHRcdFx0fSk7XG5cblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLl9wdWxsaW5nUHJvbWlzZSA9IHV0aWwucHJvbWlzZUludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU291cmNlLCAncHVsbCcsIFsgdGhpcy5jb250cm9sbGVyIF0pO1xuXHRcdHRoaXMuX3B1bGxpbmdQcm9taXNlLnRoZW4oKCkgPT4ge1xuXHRcdFx0dGhpcy5fcHVsbGluZ1Byb21pc2UgPSB1bmRlZmluZWQ7XG5cdFx0fSwgKGVycm9yOiBFcnJvcikgPT4ge1xuXHRcdFx0dGhpcy5lcnJvcihlcnJvcik7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogUmVxdWVzdHMgdGhlIHN0cmVhbSBiZSBjbG9zZWQuICBUaGlzIG1ldGhvZCBhbGxvd3MgdGhlIHF1ZXVlIHRvIGJlIGVtcHRpZWQgYmVmb3JlIHRoZSBzdHJlYW0gY2xvc2VzLlxuXHQgKlxuXHQgKi9cblx0Ly8gMy41LjMuIENsb3NlUmVhZGFibGVTdHJlYW0gKCBzdHJlYW0gKVxuXHRyZXF1ZXN0Q2xvc2UoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuY2xvc2VSZXF1ZXN0ZWQgfHwgdGhpcy5zdGF0ZSAhPT0gU3RhdGUuUmVhZGFibGUpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLmNsb3NlUmVxdWVzdGVkID0gdHJ1ZTtcblxuXHRcdGlmICh0aGlzLnF1ZXVlLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0dGhpcy5jbG9zZSgpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBUZWUgYSByZWFkYWJsZSBzdHJlYW0sIHJldHVybmluZyBhIHR3by1lbGVtZW50IGFycmF5IGNvbnRhaW5pbmdcblx0ICogdGhlIHR3byByZXN1bHRpbmcgUmVhZGFibGVTdHJlYW0gaW5zdGFuY2VzXG5cdCAqL1xuXHQvLyBUZWVSZWFkYWJsZVN0cmVhbVxuXHR0ZWUoKTogWyBSZWFkYWJsZVN0cmVhbTxUPiwgUmVhZGFibGVTdHJlYW08VD4gXSB7XG5cdFx0aWYgKCF0aGlzLnJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjIuNC41LTE6IG11c3QgYmUgYSBSZWFkYWJsZVNyZWFtJyk7XG5cdFx0fVxuXG5cdFx0bGV0IGJyYW5jaDE6IFJlYWRhYmxlU3RyZWFtPFQ+O1xuXHRcdGxldCBicmFuY2gyOiBSZWFkYWJsZVN0cmVhbTxUPjtcblxuXHRcdGNvbnN0IHJlYWRlciA9IHRoaXMuZ2V0UmVhZGVyKCk7XG5cdFx0Y29uc3QgdGVlU3RhdGU6IGFueSA9IHtcblx0XHRcdGNsb3NlZE9yRXJyb3JlZDogZmFsc2UsXG5cdFx0XHRjYW5jZWxlZDE6IGZhbHNlLFxuXHRcdFx0Y2FuY2VsZWQyOiBmYWxzZSxcblx0XHRcdHJlYXNvbjE6IHVuZGVmaW5lZCxcblx0XHRcdHJlYXNvbjI6IHVuZGVmaW5lZFxuXHRcdH07XG5cdFx0dGVlU3RhdGUucHJvbWlzZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHR0ZWVTdGF0ZS5fcmVzb2x2ZSA9IHJlc29sdmU7XG5cdFx0fSk7XG5cblx0XHRjb25zdCBjcmVhdGVDYW5jZWxGdW5jdGlvbiA9IChicmFuY2g6IG51bWJlcikgPT4ge1xuXHRcdFx0cmV0dXJuIChyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+ID0+IHtcblx0XHRcdFx0dGVlU3RhdGVbJ2NhbmNlbGVkJyArIGJyYW5jaF0gPSB0cnVlO1xuXHRcdFx0XHR0ZWVTdGF0ZVsncmVhc29uJyArIGJyYW5jaF0gPSByZWFzb247XG5cdFx0XHRcdGlmICh0ZWVTdGF0ZVsnY2FuY2VsZWQnICsgKGJyYW5jaCA9PT0gMSA/IDIgOiAxKV0pIHtcblx0XHRcdFx0XHRjb25zdCBjYW5jZWxSZXN1bHQgPSB0aGlzLl9jYW5jZWwoW3RlZVN0YXRlLnJlYXNvbjEsIHRlZVN0YXRlLnJlYXNvbjJdKTtcblx0XHRcdFx0XHR0ZWVTdGF0ZS5fcmVzb2x2ZShjYW5jZWxSZXN1bHQpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiB0ZWVTdGF0ZS5wcm9taXNlO1xuXHRcdFx0fTtcblx0XHR9O1xuXG5cdFx0Y29uc3QgcHVsbCA9IGZ1bmN0aW9uIChjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD4pIHtcblx0XHRcdHJldHVybiByZWFkZXIucmVhZCgpLnRoZW4oZnVuY3Rpb24gKHJlc3VsdDogYW55KSB7XG5cdFx0XHRcdGNvbnN0IHZhbHVlID0gcmVzdWx0LnZhbHVlO1xuXHRcdFx0XHRjb25zdCBkb25lID0gcmVzdWx0LmRvbmU7XG5cblx0XHRcdFx0aWYgKGRvbmUgJiYgIXRlZVN0YXRlLmNsb3NlZE9yRXJyb3JlZCkge1xuXHRcdFx0XHRcdGJyYW5jaDEucmVxdWVzdENsb3NlKCk7XG5cdFx0XHRcdFx0YnJhbmNoMi5yZXF1ZXN0Q2xvc2UoKTtcblxuXHRcdFx0XHRcdHRlZVN0YXRlLmNsb3NlZE9yRXJyb3JlZCA9IHRydWU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAodGVlU3RhdGUuY2xvc2VkT3JFcnJvcmVkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKCF0ZWVTdGF0ZS5jYW5jZWxlZDEpIHtcblx0XHRcdFx0XHRicmFuY2gxLmVucXVldWUodmFsdWUpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKCF0ZWVTdGF0ZS5jYW5jZWxlZDIpIHtcblx0XHRcdFx0XHRicmFuY2gyLmVucXVldWUodmFsdWUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9O1xuXG5cdFx0Y29uc3QgY2FuY2VsMSA9IGNyZWF0ZUNhbmNlbEZ1bmN0aW9uKDEpO1xuXHRcdGNvbnN0IGNhbmNlbDIgPSBjcmVhdGVDYW5jZWxGdW5jdGlvbigyKTtcblx0XHRjb25zdCB1bmRlcmx5aW5nU291cmNlMTogU291cmNlPFQ+ID0gPFNvdXJjZTxUPj4ge1xuXHRcdFx0cHVsbDogcHVsbCxcblx0XHRcdGNhbmNlbDogY2FuY2VsMVxuXHRcdH07XG5cdFx0YnJhbmNoMSA9IG5ldyBSZWFkYWJsZVN0cmVhbSh1bmRlcmx5aW5nU291cmNlMSk7XG5cblx0XHRjb25zdCB1bmRlcmx5aW5nU291cmNlMjogU291cmNlPFQ+ID0gPFNvdXJjZTxUPj4ge1xuXHRcdFx0cHVsbDogcHVsbCxcblx0XHRcdGNhbmNlbDogY2FuY2VsMlxuXHRcdH07XG5cdFx0YnJhbmNoMiA9IG5ldyBSZWFkYWJsZVN0cmVhbSh1bmRlcmx5aW5nU291cmNlMik7XG5cblx0XHRyZWFkZXIuY2xvc2VkLmNhdGNoKGZ1bmN0aW9uIChyOiBhbnkpIHtcblx0XHRcdGlmICh0ZWVTdGF0ZS5jbG9zZWRPckVycm9yZWQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRicmFuY2gxLmVycm9yKHIpO1xuXHRcdFx0YnJhbmNoMi5lcnJvcihyKTtcblx0XHRcdHRlZVN0YXRlLmNsb3NlZE9yRXJyb3JlZCA9IHRydWU7XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gWyBicmFuY2gxLCBicmFuY2gyIF07XG5cdH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVTdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFDQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFDakMseUNBQXFDLDRCQUE0QixDQUFDLENBQUE7SUFDbEUscUNBQWlDLHdCQUF3QixDQUFDLENBQUE7SUFDMUQsMEJBQXNCLGFBQWEsQ0FBQyxDQUFBO0lBRXBDLElBQVksSUFBSSxXQUFNLFFBQVEsQ0FBQyxDQUFBO0lBQy9CLCtCQUF3RCxrQkFBa0IsQ0FBQyxDQUFBO0lBcUUzRTs7T0FFRztJQUNILFdBQVksS0FBSztRQUFHLHlDQUFRLENBQUE7UUFBRSxxQ0FBTSxDQUFBO1FBQUUsdUNBQU8sQ0FBQTtJQUFDLENBQUMsRUFBbkMsYUFBSyxLQUFMLGFBQUssUUFBOEI7SUFBL0MsSUFBWSxLQUFLLEdBQUwsYUFBbUMsQ0FBQTtJQUUvQzs7T0FFRztJQUNIO1FBeUVDOzs7Ozs7O1dBT0c7UUFDSCx3QkFBWSxnQkFBMkIsRUFBRSxRQUEwQjtZQWpGcEUsaUJBOFpDO1lBN1V5Qyx3QkFBMEIsR0FBMUIsYUFBMEI7WUFoQm5FLG1CQUFjLEdBQVksS0FBSyxDQUFDO1lBaUIvQixFQUFFLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztnQkFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO1lBQy9ELENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDNUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDO1lBQzFDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxrQ0FBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMs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QUFDLFVBQVUsQ0FBTTtnQkFDbkMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7b0JBQzlCLE1BQU0sQ0FBQztnQkFDUixDQUFDO2dCQUVELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLFFBQVEsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQ2pDLENBQUMsQ0FBQyxDQUFDO1lBRUgsTUFBTSxDQUFDLENBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBRSxDQUFDO1FBQzdCLENBQUM7UUFDRixxQkFBQztJQUFELENBQUMsQUE5WkQsSUE4WkM7SUE5WkQ7b0NBOFpDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdHJhdGVneSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgUHJvbWlzZSBmcm9tICcuLi9Qcm9taXNlJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIgZnJvbSAnLi9SZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtUmVhZGVyIGZyb20gJy4vUmVhZGFibGVTdHJlYW1SZWFkZXInO1xuaW1wb3J0IFNpemVRdWV1ZSBmcm9tICcuL1NpemVRdWV1ZSc7XG5pbXBvcnQgVHJhbnNmb3JtU3RyZWFtIGZyb20gJy4vVHJhbnNmb3JtU3RyZWFtJztcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSAnLi91dGlsJztcbmltcG9ydCBXcml0YWJsZVN0cmVhbSwgeyBTdGF0ZSBhcyBXcml0ZWFibGVTdGF0ZSB9IGZyb20gJy4vV3JpdGFibGVTdHJlYW0nO1xuXG4vKipcbiAqIE9wdGlvbnMgdXNlZCB3aGVuIHBpcGluZyBhIHJlYWRhYmxlIHN0cmVhbSB0byBhIHdyaXRhYmxlIHN0cmVhbS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQaXBlT3B0aW9ucyB7XG5cdC8qKlxuXHQgKiBQcmV2ZW50cyB0aGUgd3JpdGFibGUgc3RyZWFtIGZyb20gZXJyb3JpbmcgaWYgdGhlIHJlYWRhYmxlIHN0cmVhbSBlbmNvdW50ZXJzIGFuIGVycm9yLlxuXHQgKi9cblx0cHJldmVudEFib3J0PzogYm9vbGVhbjtcblxuXHQvKipcblx0ICogIFByZXZlbnRzIHRoZSByZWFkYWJsZSBzdHJlYW0gZnJvbSBlcnJvcmluZyBpZiB0aGUgd3JpdGFibGUgc3RyZWFtIGVuY291bnRlcnMgYW4gZXJyb3IuXG5cdCAqL1xuXHRwcmV2ZW50Q2FuY2VsPzogYm9vbGVhbjtcblxuXHQvKipcblx0ICogUHJldmVudHMgdGhlIHdyaXRhYmxlIHN0cmVhbSBmcm9tIGNsb3Npbmcgd2hlbiB0aGUgcGlwZSBvcGVyYXRpb24gY29tcGxldGVzLlxuXHQgKi9cblx0cHJldmVudENsb3NlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgU291cmNlIGludGVyZmFjZSBkZWZpbmVzIHRoZSBtZXRob2RzIGEgbW9kdWxlIGNhbiBpbXBsZW1lbnQgdG8gY3JlYXRlIGEgc291cmNlIGZvciBhIHtAbGluayBSZWFkYWJsZVN0cmVhbX0uXG4gKlxuICogVGhlIFN0cmVhbSBBUEkgcHJvdmlkZXMgYSBjb25zaXN0ZW50IHN0cmVhbSBBUEkgd2hpbGUge0BsaW5rIFJlYWRhYmxlU3RyZWFtLlNvdXJjZX0gYW5kIHtAbGluayBXcml0YWJsZVN0cmVhbS5TaW5rfVxuICogaW1wbGVtZW50YXRpb25zIHByb3ZpZGUgdGhlIGxvZ2ljIHRvIGNvbm5lY3QgYSBzdHJlYW0gdG8gc3BlY2lmaWMgZGF0YSBzb3VyY2VzICYgc2lua3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU291cmNlPFQ+IHtcblxuXHQvKipcblx0ICogVGVsbHMgdGhlIHNvdXJjZSB0byBwcmVwYXJlIGZvciBwcm92aWRpbmcgY2h1bmtzIHRvIHRoZSBzdHJlYW0uICBXaGlsZSB0aGUgc291cmNlIG1heSBlbnF1ZXVlIGNodW5rcyBhdCB0aGlzXG5cdCAqIHBvaW50LCBpdCBpcyBub3QgcmVxdWlyZWQuXG5cdCAqXG5cdCAqIEBwYXJhbSBjb250cm9sbGVyIFRoZSBzb3VyY2UgY2FuIHVzZSB0aGUgY29udHJvbGxlciB0byBlbnF1ZXVlIGNodW5rcywgY2xvc2UgdGhlIHN0cmVhbSBvciByZXBvcnQgYW4gZXJyb3IuXG5cdCAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHNvdXJjZSdzIHN0YXJ0IG9wZXJhdGlvbiBoYXMgZmluaXNoZWQuICBJZiB0aGUgcHJvbWlzZSByZWplY3RzLFxuXHQgKiBcdFx0dGhlIHN0cmVhbSB3aWxsIGJlIGVycm9yZWQuXG5cdCAqL1xuXHRzdGFydD8oY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKipcblx0ICogUmVxdWVzdHMgdGhhdCBzb3VyY2UgZW5xdWV1ZSBjaHVua3MuICBVc2UgdGhlIGNvbnRyb2xsZXIgdG8gY2xvc2UgdGhlIHN0cmVhbSB3aGVuIG5vIG1vcmUgY2h1bmtzIGNhblxuXHQgKiBiZSBwcm92aWRlZC5cblx0ICpcblx0ICogQHBhcmFtIGNvbnRyb2xsZXIgVGhlIHNvdXJjZSBjYW4gdXNlIHRoZSBjb250cm9sbGVyIHRvIGVucXVldWUgY2h1bmtzLCBjbG9zZSB0aGUgc3RyZWFtIG9yIHJlcG9ydCBhbiBlcnJvci5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc291cmNlJ3MgcHVsbCBvcGVyYXRpb24gaGFzIGZpbmlzaGVkLiAgSWYgdGhlIHByb21pc2UgcmVqZWN0cyxcblx0ICogXHRcdHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0cHVsbD8oY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKipcblx0ICogT3B0aW9uYWwgbWV0aG9kIGltcGxlbWVudGVkIGJ5IHNlZWthYmxlIHNvdXJjZXMgdG8gc2V0IHRoZSBzZWVrIHBvc2l0aW9uLiBVc2UgdGhlIGNvbnRyb2xsZXIgdG8gcmVwb3J0IGFuIGVycm9yLlxuXHQgKiBAcGFyYW0gY29udHJvbGxlciBUaGUgc291cmNlIGNhbiB1c2UgdGhlIGNvbnRyb2xsZXIgdG8gcmVwb3J0IGFuIGVycm9yLlxuXHQgKiBAcGFyYW0gcG9zaXRpb24gVGhlIHBvc2l0aW9uIGluIHRoZSBzdHJlYW0gdG8gc2VlayB0by5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIG5ldyBzZWVrIHBvc2l0aW9uIHdoZW4gdGhlIHNvdXJjZSdzIHNlZWsgb3BlcmF0aW9uIGhhcyBmaW5pc2hlZC4gIElmIHRoZVxuXHQgKiAgXHRwcm9taXNlIHJlamVjdHMsIHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0c2Vlaz8oY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFQ+LCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTxudW1iZXI+O1xuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhlIHN0cmVhbSBpcyBwcmVtYXR1cmVseSBjbG9zaW5nIGFuZCBhbGxvd3MgdGhlIHNvdXJjZSB0byBkbyBhbnkgbmVjZXNzYXJ5IGNsZWFuIHVwLlxuXHQgKlxuXHQgKiBAcGFyYW0gcmVhc29uIFRoZSByZWFzb24gd2h5IHRoZSBzdHJlYW0gaXMgY2xvc2luZy5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc291cmNlJ3MgcHVsbCBvcGVyYXRpb24gaGFzIGZpbmlzaGVkLiAgSWYgdGhlIHByb21pc2UgcmVqZWN0cyxcblx0ICogXHRcdHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0Y2FuY2VsPyhyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIGBSZWFkYWJsZVN0cmVhbWAncyBwb3NzaWJsZSBzdGF0ZXNcbiAqL1xuZXhwb3J0IGVudW0gU3RhdGUgeyBSZWFkYWJsZSwgQ2xvc2VkLCBFcnJvcmVkIH1cblxuLyoqXG4gKiBJbXBsZW1lbnRhdGlvbiBvZiBhIHJlYWRhYmxlIHN0cmVhbS5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhZGFibGVTdHJlYW08VD4ge1xuXG5cdC8vIFNob3VsZFJlYWRhYmxlU3RyZWFtUHVsbFxuXHRwcm90ZWN0ZWQgZ2V0IF9hbGxvd1B1bGwoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuICF0aGlzLnB1bGxTY2hlZHVsZWQgJiZcblx0XHRcdCF0aGlzLmNsb3NlUmVxdWVzdGVkICYmXG5cdFx0XHR0aGlzLl9zdGFydGVkICYmXG5cdFx0XHR0aGlzLnN0YXRlICE9PSBTdGF0ZS5DbG9zZWQgJiZcblx0XHRcdHRoaXMuc3RhdGUgIT09IFN0YXRlLkVycm9yZWQgJiZcblx0XHRcdCF0aGlzLl9zaG91bGRBcHBseUJhY2tQcmVzc3VyZSgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHVybnMgYSBudW1iZXIgaW5kaWNhdGluZyBob3cgbXVjaCBhZGRpdGlvbmFsIGRhdGEgY2FuIGJlIHB1c2hlZCBieSB0aGUgc291cmNlIHRvIHRoZSBzdHJlYW0ncyBxdWV1ZSBiZWZvcmUgaXRcblx0ICogZXhjZWVkcyBpdHMgYGhpZ2hXYXRlck1hcmtgLiBBbiB1bmRlcmx5aW5nIHNvdXJjZSBzaG91bGQgdXNlIHRoaXMgaW5mb3JtYXRpb24gdG8gZGV0ZXJtaW5lIHdoZW4gYW5kIGhvdyB0byBhcHBseVxuXHQgKiBiYWNrcHJlc3N1cmUuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBzdHJlYW0ncyBzdHJhdGVneSdzIGBoaWdoV2F0ZXJNYXJrYCB2YWx1ZSBtaW51cyB0aGUgcXVldWUgc2l6ZVxuXHQgKi9cblx0Ly8gMy41LjcuIEdldFJlYWRhYmxlU3RyZWFtRGVzaXJlZFNpemUgKCBzdHJlYW0gKVxuXHRnZXQgZGVzaXJlZFNpemUoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fc3RyYXRlZ3kuaGlnaFdhdGVyTWFyayAtIHRoaXMucXVldWVTaXplO1xuXHR9XG5cblx0Z2V0IGhhc1NvdXJjZSgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5fdW5kZXJseWluZ1NvdXJjZSAhPSBudWxsO1xuXHR9XG5cblx0LyoqXG5cdCAqIEEgc3RyZWFtIGNhbiBvbmx5IGhhdmUgb25lIHJlYWRlciBhdCBhIHRpbWUuIFRoaXMgdmFsdWUgaW5kaWNhdGVzIGlmIGEgc3RyZWFtIGFscmVhZHkgaGFzIGEgcmVhZGVyLCBhbmQgaGVuY2Vcblx0ICogY2Fubm90IGJlIHJlYWQgZnJvbSBvdGhlciB0aGFuIGJ5IHRoYXQgcmVhZGVyLiBXaGVuIGEgY29uc3VtZXIgaXMgZG9uZSB3aXRoIGEgcmVhZGVyIHRoZXkgY2FuIGRpc3NvY2lhdGUgaXRcblx0ICogYnkgY2FsbGluZyB7QGxpbmsgUmVhZGFibGVTdHJlYW1SZWFkZXIjcmVsZWFzZUxvY2t9LlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBzdHJlYW0gaGFzIGEgcmVhZGVyIGFzc29jaWF0ZWQgd2l0aCBpdFxuXHQgKi9cblx0Ly8gSXNSZWFkYWJsZVN0cmVhbUxvY2tlZFxuXHRnZXQgbG9ja2VkKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmhhc1NvdXJjZSAmJiAhIXRoaXMucmVhZGVyO1xuXHR9XG5cblx0Z2V0IHJlYWRhYmxlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmhhc1NvdXJjZSAmJiB0aGlzLnN0YXRlID09PSBTdGF0ZS5SZWFkYWJsZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGlzIHByb21pc2Ugd2lsbCByZXNvbHZlIHdoZW4gdGhlIHN0cmVhbSdzIHVuZGVybHlpbmcgc291cmNlIGhhcyBzdGFydGVkIGFuZCBpcyByZWFkeSB0byBwcm92aWRlIGRhdGEuIElmXG5cdCAqIHRoZSB7QGxpbmsgUmVhZGFibGVTdHJlYW1SZWFkZXIjcmVhZH0gbWV0aG9kIGlzIGNhbGxlZCBiZWZvcmUgdGhlIHN0cmVhbSBoYXMgc3RhcnRlZCBpdCB3aWxsIG5vdCBkbyBhbnl0aGluZy5cblx0ICogV2FpdCBmb3IgdGhpcyBwcm9taXNlIHRvIHJlc29sdmUgdG8gZW5zdXJlIHRoYXQgeW91ciBgcmVhZGAgY2FsbHMgYXJlIHJlc3BvbmRlZCB0byBhcyBwcm9tcHRseSBhcyBwb3NzaWJsZS5cblx0ICpcblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc3RyZWFtIGlzIHJlYWR5IHRvIGJlIHJlYWQgZnJvbS5cblx0ICovXG5cdGdldCBzdGFydGVkKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiB0aGlzLl9zdGFydGVkUHJvbWlzZTtcblx0fVxuXG5cdGdldCBxdWV1ZVNpemUoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5xdWV1ZS50b3RhbFNpemU7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX3B1bGxpbmdQcm9taXNlOiBQcm9taXNlPHZvaWQ+O1xuXHRwcm90ZWN0ZWQgX3N0YXJ0ZWQ6IGJvb2xlYW47XG5cdHByb3RlY3RlZCBfc3RhcnRlZFByb21pc2U6IFByb21pc2U8dm9pZD47XG5cdHByb3RlY3RlZCBfc3RyYXRlZ3k6IFN0cmF0ZWd5PFQ+O1xuXHRwcm90ZWN0ZWQgX3VuZGVybHlpbmdTb3VyY2U6IFNvdXJjZTxUPjtcblxuXHRjbG9zZVJlcXVlc3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuXHRjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD47XG5cdHB1bGxTY2hlZHVsZWQ6IGJvb2xlYW47XG5cdHF1ZXVlOiBTaXplUXVldWU8VD47XG5cdHJlYWRlcjogUmVhZGFibGVTdHJlYW1SZWFkZXI8VD47XG5cdHN0YXRlOiBTdGF0ZTtcblx0c3RvcmVkRXJyb3I6IEVycm9yO1xuXG5cdC8qKlxuXHQgKiBBIGBSZWFkYWJsZVN0cmVhbWAgcmVxdWlyZXMgYW4gdW5kZXJseWluZyBzb3VyY2UgdG8gc3VwcGx5IGRhdGEuIFRoZSBzb3VyY2UgaW50ZXJhY3RzIHdpdGggdGhlIHN0cmVhbSB0aHJvdWdoXG5cdCAqIGEge0BsaW5rIFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcn0gdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggdGhlIHN0cmVhbSwgYW5kIHByb3ZpZGVkIHRvIHRoZSBzb3VyY2UuXG5cdCAqXG5cdCAqIEBjb25zdHJ1Y3RvclxuXHQgKiBAcGFyYW0gdW5kZXJseWluZ1NvdXJjZSBUaGUgc291cmNlIG9iamVjdCB0aGF0IHN1cHBsaWVzIGRhdGEgdG8gdGhlIHN0cmVhbSBieSBpbnRlcmFjdGluZyB3aXRoIGl0cyBjb250cm9sbGVyLlxuXHQgKiBAcGFyYW0gc3RyYXRlZ3kgVGhlIHN0cmF0ZWd5IGZvciB0aGlzIHN0cmVhbS5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHVuZGVybHlpbmdTb3VyY2U6IFNvdXJjZTxUPiwgc3RyYXRlZ3k6IFN0cmF0ZWd5PFQ+ID0ge30pIHtcblx0XHRpZiAoIXVuZGVybHlpbmdTb3VyY2UpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcignQW4gUmVhZGFibGVTdHJlYW0gU291cmNlIG11c3QgYmUgcHJvdmlkZWQuJyk7XG5cdFx0fVxuXHRcdHRoaXMuc3RhdGUgPSBTdGF0ZS5SZWFkYWJsZTtcblx0XHR0aGlzLl91bmRlcmx5aW5nU291cmNlID0gdW5kZXJseWluZ1NvdXJjZTtcblx0XHR0aGlzLmNvbnRyb2xsZXIgPSBuZXcgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyKHRoaXMpO1xuXHRcdHRoaXMuX3N0cmF0ZWd5ID0gdXRpbC5ub3JtYWxpemVTdHJhdGVneShzdHJhdGVneSk7XG5cdFx0dGhpcy5xdWV1ZSA9IG5ldyBTaXplUXVldWU8VD4oKTtcblx0XHR0aGlzLl9zdGFydGVkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlU3RhcnRlZCkgPT4ge1xuXHRcdFx0Y29uc3Qgc3RhcnRSZXN1bHQgPSB1dGlsLmludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU291cmNlLCAnc3RhcnQnLCBbIHRoaXMuY29udHJvbGxlciBdKTtcblx0XHRcdFByb21pc2UucmVzb2x2ZShzdGFydFJlc3VsdCkudGhlbigoKSA9PiB7XG5cdFx0XHRcdHRoaXMuX3N0YXJ0ZWQgPSB0cnVlO1xuXHRcdFx0XHRyZXNvbHZlU3RhcnRlZCgpO1xuXHRcdFx0XHR0aGlzLnB1bGwoKTtcblx0XHRcdH0sIChlcnJvcjogRXJyb3IpID0+IHtcblx0XHRcdFx0dGhpcy5lcnJvcihlcnJvcik7XG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxuXG5cdHByb3RlY3RlZCBfY2FuY2VsKHJlYXNvbj86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIDMuMi40LjEtMzogcmV0dXJuIGNhbmNlbFJlYWRhYmxlU3RyZWFtKHRoaXMsIHJlYXNvbik7XG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkNsb3NlZCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignMy41LjMtMjogU3RhdGUgaXMgZXJyb3JlZCcpKTtcblx0XHR9XG5cblx0XHR0aGlzLnF1ZXVlLmVtcHR5KCk7XG5cdFx0dGhpcy5jbG9zZSgpO1xuXHRcdHJldHVybiB1dGlsLnByb21pc2VJbnZva2VPck5vb3AodGhpcy5fdW5kZXJseWluZ1NvdXJjZSwgJ2NhbmNlbCcsIFsgcmVhc29uIF0pLnRoZW4oZnVuY3Rpb24gKCkge30pO1xuXHR9XG5cblx0Ly8gc2hvdWxkUmVhZGFibGVTdHJlYW1BcHBseUJhY2tQcmVzc3VyZVxuXHRwcm90ZWN0ZWQgX3Nob3VsZEFwcGx5QmFja1ByZXNzdXJlKCk6IGJvb2xlYW4ge1xuXHRcdGNvbnN0IHF1ZXVlU2l6ZSA9IHRoaXMucXVldWUudG90YWxTaXplO1xuXG5cdFx0cmV0dXJuIHF1ZXVlU2l6ZSA+IHRoaXMuX3N0cmF0ZWd5LmhpZ2hXYXRlck1hcms7XG5cdH1cblxuXHQvKipcblx0ICpcblx0ICogQHBhcmFtIHJlYXNvbiBBIGRlc2NyaXB0aW9uIG9mIHRoZSByZWFzb24gdGhlIHN0cmVhbSBpcyBiZWluZyBjYW5jZWxlZC5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc3RyZWFtIGhhcyBjbG9zZWQgYW5kIHRoZSBjYWxsIHRvIHRoZSB1bmRlcmx5aW5nIHNvdXJjZSdzIGBjYW5jZWxgXG5cdCAqIG1ldGhvZCBoYXMgY29tcGxldGVkLlxuXHQgKi9cblx0Y2FuY2VsKHJlYXNvbj86IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGlmICghdGhpcy5oYXNTb3VyY2UpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCczLjIuNC4xLTE6IE11c3QgYmUgYSBSZWFkYWJsZVN0cmVhbScpKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5fY2FuY2VsKHJlYXNvbik7XG5cdH1cblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBzdHJlYW0gd2l0aG91dCByZWdhcmQgdG8gdGhlIHN0YXR1cyBvZiB0aGUgcXVldWUuICBVc2Uge0BsaW5rIHJlcXVlc3RDbG9zZX0gdG8gY2xvc2UgdGhlXG5cdCAqIHN0cmVhbSBhbmQgYWxsb3cgdGhlIHF1ZXVlIHRvIGZsdXNoLlxuXHQgKlxuXHQgKi9cblx0Ly8gMy41LjQuIEZpbmlzaENsb3NpbmdSZWFkYWJsZVN0cmVhbSAoIHN0cmVhbSApXG5cdGNsb3NlKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5SZWFkYWJsZSkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdHRoaXMuc3RhdGUgPSBTdGF0ZS5DbG9zZWQ7XG5cblx0XHRpZiAodGhpcy5sb2NrZWQpIHtcblx0XHRcdHRoaXMucmVhZGVyLnJlbGVhc2UoKTtcblx0XHR9XG5cdH1cblxuXHQvLyBFbnF1ZXVlSW5SZWFkYWJsZVN0cmVhbVxuXHRlbnF1ZXVlKGNodW5rOiBUKTogdm9pZCB7XG5cdFx0Y29uc3Qgc2l6ZSA9IHRoaXMuX3N0cmF0ZWd5LnNpemU7XG5cblx0XHRpZiAoIXRoaXMucmVhZGFibGUgfHwgdGhpcy5jbG9zZVJlcXVlc3RlZCkge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCczLjUuNi0xLDI6IFN0cmVhbS5fc3RhdGUgc2hvdWxkIGJlIFJlYWRhYmxlIGFuZCBzdHJlYW0uY2xvc2VSZXF1ZXN0ZWQgc2hvdWxkIGJlIHRydWUnKTtcblx0XHR9XG5cblx0XHRpZiAoIXRoaXMubG9ja2VkIHx8ICF0aGlzLnJlYWRlci5yZXNvbHZlUmVhZFJlcXVlc3QoY2h1bmspKSB7XG5cblx0XHRcdHRyeSB7XG5cdFx0XHRcdGxldCBjaHVua1NpemUgPSAxO1xuXHRcdFx0XHRpZiAoc2l6ZSkge1xuXHRcdFx0XHRcdGNodW5rU2l6ZSA9IHNpemUoY2h1bmspO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMucXVldWUuZW5xdWV1ZShjaHVuaywgY2h1bmtTaXplKTtcblx0XHRcdH1cblx0XHRcdGNhdGNoIChlcnJvcikge1xuXHRcdFx0XHR0aGlzLmVycm9yKGVycm9yKTtcblx0XHRcdFx0dGhyb3cgZXJyb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5wdWxsKCk7XG5cdH1cblxuXHRlcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuUmVhZGFibGUpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcignMy41LjctMTogU3RhdGUgbXVzdCBiZSBSZWFkYWJsZScpO1xuXHRcdH1cblxuXHRcdHRoaXMucXVldWUuZW1wdHkoKTtcblx0XHR0aGlzLnN0b3JlZEVycm9yID0gZXJyb3I7XG5cdFx0dGhpcy5zdGF0ZSA9IFN0YXRlLkVycm9yZWQ7XG5cblx0XHRpZiAodGhpcy5sb2NrZWQpIHtcblx0XHRcdHRoaXMucmVhZGVyLnJlbGVhc2UoKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogY3JlYXRlIGEgbmV3IHtAbGluayBSZWFkYWJsZVN0cmVhbVJlYWRlcn0gYW5kIGxvY2sgdGhlIHN0cmVhbSB0byB0aGUgbmV3IHJlYWRlclxuXHQgKi9cblx0Ly8gQWNxdWlyZVJlYWRhYmxlU3RyZWFtUmVhZGVyXG5cdGdldFJlYWRlcigpOiBSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPiB7XG5cdFx0aWYgKCF0aGlzLnJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjIuNC4yLTE6IG11c3QgYmUgYSBSZWFkYWJsZVN0cmVhbSBpbnN0YW5jZScpO1xuXHRcdH1cblxuXHRcdHJldHVybiBuZXcgUmVhZGFibGVTdHJlYW1SZWFkZXIodGhpcyk7XG5cdH1cblxuXHRwaXBlVGhyb3VnaCh0cmFuc2Zvcm1TdHJlYW06IFRyYW5zZm9ybVN0cmVhbTxULCBhbnk+LCBvcHRpb25zPzogUGlwZU9wdGlvbnMpOiBSZWFkYWJsZVN0cmVhbTxUPiB7XG5cdFx0dGhpcy5waXBlVG8odHJhbnNmb3JtU3RyZWFtLndyaXRhYmxlLCBvcHRpb25zKTtcblx0XHRyZXR1cm4gdHJhbnNmb3JtU3RyZWFtLnJlYWRhYmxlO1xuXHR9XG5cblx0cGlwZVRvKGRlc3Q6IFdyaXRhYmxlU3RyZWFtPFQ+LCBvcHRpb25zOiBQaXBlT3B0aW9ucyA9IHt9KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0bGV0IHJlc29sdmVQaXBlVG9Qcm9taXNlOiAoKSA9PiB2b2lkO1xuXHRcdGxldCByZWplY3RQaXBlVG9Qcm9taXNlOiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkO1xuXHRcdGxldCBjbG9zZWRQdXJwb3NlZnVsbHkgPSBmYWxzZTtcblx0XHRsZXQgbGFzdFJlYWQ6IGFueTtcblx0XHRsZXQgcmVhZGVyOiBSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPjtcblxuXHRcdGZ1bmN0aW9uIGRvUGlwZSgpOiB2b2lkIHtcblx0XHRcdGxhc3RSZWFkID0gcmVhZGVyLnJlYWQoKTtcblx0XHRcdFByb21pc2UuYWxsKFsgbGFzdFJlYWQsIGRlc3QucmVhZHkgXSkudGhlbihmdW5jdGlvbiAoWyByZWFkUmVzdWx0IF0pIHtcblx0XHRcdFx0aWYgKHJlYWRSZXN1bHQuZG9uZSkge1xuXHRcdFx0XHRcdGNsb3NlRGVzdCgpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2UgaWYgKGRlc3Quc3RhdGUgPT09IFdyaXRlYWJsZVN0YXRlLldyaXRhYmxlICkge1xuXHRcdFx0XHRcdGRlc3Qud3JpdGUocmVhZFJlc3VsdC52YWx1ZSk7XG5cdFx0XHRcdFx0ZG9QaXBlKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdGZ1bmN0aW9uIGNhbmNlbFNvdXJjZShyZWFzb246IGFueSk6IHZvaWQge1xuXHRcdFx0aWYgKCFvcHRpb25zLnByZXZlbnRDYW5jZWwpIHtcblx0XHRcdFx0cmVhZGVyLmNhbmNlbChyZWFzb24pO1xuXHRcdFx0XHRyZWplY3RQaXBlVG9Qcm9taXNlKHJlYXNvbik7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0bGFzdFJlYWQudGhlbihmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0cmVhZGVyLnJlbGVhc2VMb2NrKCk7XG5cdFx0XHRcdFx0cmVqZWN0UGlwZVRvUHJvbWlzZShyZWFzb24pO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRmdW5jdGlvbiBjbG9zZURlc3QoKTogdm9pZCB7XG5cdFx0XHRjb25zdCBkZXN0U3RhdGUgPSBkZXN0LnN0YXRlO1xuXHRcdFx0aWYgKCFvcHRpb25zLnByZXZlbnRDbG9zZSAmJlxuXHRcdFx0XHQoZGVzdFN0YXRlID09PSBXcml0ZWFibGVTdGF0ZS5XYWl0aW5nIHx8IGRlc3RTdGF0ZSA9PT0gV3JpdGVhYmxlU3RhdGUuV3JpdGFibGUpKSB7XG5cblx0XHRcdFx0Y2xvc2VkUHVycG9zZWZ1bGx5ID0gdHJ1ZTtcblx0XHRcdFx0ZGVzdC5jbG9zZSgpLnRoZW4ocmVzb2x2ZVBpcGVUb1Byb21pc2UsIHJlamVjdFBpcGVUb1Byb21pc2UpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHJlc29sdmVQaXBlVG9Qcm9taXNlKCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdHJlc29sdmVQaXBlVG9Qcm9taXNlID0gcmVzb2x2ZTtcblx0XHRcdHJlamVjdFBpcGVUb1Byb21pc2UgPSByZWplY3Q7XG5cblx0XHRcdHJlYWRlciA9IHRoaXMuZ2V0UmVhZGVyKCk7XG5cdFx0XHRyZWFkZXIuY2xvc2VkLmNhdGNoKChyZWFzb246IGFueSkgPT4ge1xuXHRcdFx0XHQvLyBhYm9ydERlc3Rcblx0XHRcdFx0aWYgKCFvcHRpb25zLnByZXZlbnRBYm9ydCkge1xuXHRcdFx0XHRcdGRlc3QuYWJvcnQocmVhc29uKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZWplY3RQaXBlVG9Qcm9taXNlKHJlYXNvbik7XG5cdFx0XHR9KTtcblxuXHRcdFx0ZGVzdC5jbG9zZWQudGhlbihcblx0XHRcdFx0ZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdGlmICghY2xvc2VkUHVycG9zZWZ1bGx5KSB7XG5cdFx0XHRcdFx0XHRjYW5jZWxTb3VyY2UobmV3IFR5cGVFcnJvcignZGVzdGluYXRpb24gaXMgY2xvc2luZyBvciBjbG9zZWQgYW5kIGNhbm5vdCBiZSBwaXBlZCB0byBhbnltb3JlJykpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSxcblx0XHRcdFx0Y2FuY2VsU291cmNlXG5cdFx0XHQpO1xuXHRcdFx0ZG9QaXBlKCk7XG5cdFx0fSk7XG5cdH1cblxuXHQvLyBSZXF1ZXN0UmVhZGFibGVTdHJlYW1QdWxsXG5cdHB1bGwoKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9hbGxvd1B1bGwpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5fcHVsbGluZ1Byb21pc2UpIHtcblx0XHRcdHRoaXMucHVsbFNjaGVkdWxlZCA9IHRydWU7XG5cdFx0XHR0aGlzLl9wdWxsaW5nUHJvbWlzZS50aGVuKCgpID0+IHtcblx0XHRcdFx0dGhpcy5wdWxsU2NoZWR1bGVkID0gZmFsc2U7XG5cdFx0XHRcdHRoaXMucHVsbCgpO1xuXHRcdFx0fSk7XG5cblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLl9wdWxsaW5nUHJvbWlzZSA9IHV0aWwucHJvbWlzZUludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU291cmNlLCAncHVsbCcsIFsgdGhpcy5jb250cm9sbGVyIF0pO1xuXHRcdHRoaXMuX3B1bGxpbmdQcm9taXNlLnRoZW4oKCkgPT4ge1xuXHRcdFx0dGhpcy5fcHVsbGluZ1Byb21pc2UgPSB1bmRlZmluZWQ7XG5cdFx0fSwgKGVycm9yOiBFcnJvcikgPT4ge1xuXHRcdFx0dGhpcy5lcnJvcihlcnJvcik7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogUmVxdWVzdHMgdGhlIHN0cmVhbSBiZSBjbG9zZWQuICBUaGlzIG1ldGhvZCBhbGxvd3MgdGhlIHF1ZXVlIHRvIGJlIGVtcHRpZWQgYmVmb3JlIHRoZSBzdHJlYW0gY2xvc2VzLlxuXHQgKlxuXHQgKi9cblx0Ly8gMy41LjMuIENsb3NlUmVhZGFibGVTdHJlYW0gKCBzdHJlYW0gKVxuXHRyZXF1ZXN0Q2xvc2UoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuY2xvc2VSZXF1ZXN0ZWQgfHwgdGhpcy5zdGF0ZSAhPT0gU3RhdGUuUmVhZGFibGUpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLmNsb3NlUmVxdWVzdGVkID0gdHJ1ZTtcblxuXHRcdGlmICh0aGlzLnF1ZXVlLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0dGhpcy5jbG9zZSgpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBUZWUgYSByZWFkYWJsZSBzdHJlYW0sIHJldHVybmluZyBhIHR3by1lbGVtZW50IGFycmF5IGNvbnRhaW5pbmdcblx0ICogdGhlIHR3byByZXN1bHRpbmcgUmVhZGFibGVTdHJlYW0gaW5zdGFuY2VzXG5cdCAqL1xuXHQvLyBUZWVSZWFkYWJsZVN0cmVhbVxuXHR0ZWUoKTogWyBSZWFkYWJsZVN0cmVhbTxUPiwgUmVhZGFibGVTdHJlYW08VD4gXSB7XG5cdFx0aWYgKCF0aGlzLnJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjIuNC41LTE6IG11c3QgYmUgYSBSZWFkYWJsZVNyZWFtJyk7XG5cdFx0fVxuXG5cdFx0bGV0IGJyYW5jaDE6IFJlYWRhYmxlU3RyZWFtPFQ+O1xuXHRcdGxldCBicmFuY2gyOiBSZWFkYWJsZVN0cmVhbTxUPjtcblxuXHRcdGNvbnN0IHJlYWRlciA9IHRoaXMuZ2V0UmVhZGVyKCk7XG5cdFx0Y29uc3QgdGVlU3RhdGU6IGFueSA9IHtcblx0XHRcdGNsb3NlZE9yRXJyb3JlZDogZmFsc2UsXG5cdFx0XHRjYW5jZWxlZDE6IGZhbHNlLFxuXHRcdFx0Y2FuY2VsZWQyOiBmYWxzZSxcblx0XHRcdHJlYXNvbjE6IHVuZGVmaW5lZCxcblx0XHRcdHJlYXNvbjI6IHVuZGVmaW5lZFxuXHRcdH07XG5cdFx0dGVlU3RhdGUucHJvbWlzZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHR0ZWVTdGF0ZS5fcmVzb2x2ZSA9IHJlc29sdmU7XG5cdFx0fSk7XG5cblx0XHRjb25zdCBjcmVhdGVDYW5jZWxGdW5jdGlvbiA9IChicmFuY2g6IG51bWJlcikgPT4ge1xuXHRcdFx0cmV0dXJuIChyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+ID0+IHtcblx0XHRcdFx0dGVlU3RhdGVbJ2NhbmNlbGVkJyArIGJyYW5jaF0gPSB0cnVlO1xuXHRcdFx0XHR0ZWVTdGF0ZVsncmVhc29uJyArIGJyYW5jaF0gPSByZWFzb247XG5cdFx0XHRcdGlmICh0ZWVTdGF0ZVsnY2FuY2VsZWQnICsgKGJyYW5jaCA9PT0gMSA/IDIgOiAxKV0pIHtcblx0XHRcdFx0XHRjb25zdCBjYW5jZWxSZXN1bHQgPSB0aGlzLl9jYW5jZWwoW3RlZVN0YXRlLnJlYXNvbjEsIHRlZVN0YXRlLnJlYXNvbjJdKTtcblx0XHRcdFx0XHR0ZWVTdGF0ZS5fcmVzb2x2ZShjYW5jZWxSZXN1bHQpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiB0ZWVTdGF0ZS5wcm9taXNlO1xuXHRcdFx0fTtcblx0XHR9O1xuXG5cdFx0Y29uc3QgcHVsbCA9IGZ1bmN0aW9uIChjb250cm9sbGVyOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD4pIHtcblx0XHRcdHJldHVybiByZWFkZXIucmVhZCgpLnRoZW4oZnVuY3Rpb24gKHJlc3VsdDogYW55KSB7XG5cdFx0XHRcdGNvbnN0IHZhbHVlID0gcmVzdWx0LnZhbHVlO1xuXHRcdFx0XHRjb25zdCBkb25lID0gcmVzdWx0LmRvbmU7XG5cblx0XHRcdFx0aWYgKGRvbmUgJiYgIXRlZVN0YXRlLmNsb3NlZE9yRXJyb3JlZCkge1xuXHRcdFx0XHRcdGJyYW5jaDEucmVxdWVzdENsb3NlKCk7XG5cdFx0XHRcdFx0YnJhbmNoMi5yZXF1ZXN0Q2xvc2UoKTtcblxuXHRcdFx0XHRcdHRlZVN0YXRlLmNsb3NlZE9yRXJyb3JlZCA9IHRydWU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAodGVlU3RhdGUuY2xvc2VkT3JFcnJvcmVkKSB7XG5cdFx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKCF0ZWVTdGF0ZS5jYW5jZWxlZDEpIHtcblx0XHRcdFx0XHRicmFuY2gxLmVucXVldWUodmFsdWUpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKCF0ZWVTdGF0ZS5jYW5jZWxlZDIpIHtcblx0XHRcdFx0XHRicmFuY2gyLmVucXVldWUodmFsdWUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9O1xuXG5cdFx0Y29uc3QgY2FuY2VsMSA9IGNyZWF0ZUNhbmNlbEZ1bmN0aW9uKDEpO1xuXHRcdGNvbnN0IGNhbmNlbDIgPSBjcmVhdGVDYW5jZWxGdW5jdGlvbigyKTtcblx0XHRjb25zdCB1bmRlcmx5aW5nU291cmNlMTogU291cmNlPFQ+ID0gPFNvdXJjZTxUPj4ge1xuXHRcdFx0cHVsbDogcHVsbCxcblx0XHRcdGNhbmNlbDogY2FuY2VsMVxuXHRcdH07XG5cdFx0YnJhbmNoMSA9IG5ldyBSZWFkYWJsZVN0cmVhbSh1bmRlcmx5aW5nU291cmNlMSk7XG5cblx0XHRjb25zdCB1bmRlcmx5aW5nU291cmNlMjogU291cmNlPFQ+ID0gPFNvdXJjZTxUPj4ge1xuXHRcdFx0cHVsbDogcHVsbCxcblx0XHRcdGNhbmNlbDogY2FuY2VsMlxuXHRcdH07XG5cdFx0YnJhbmNoMiA9IG5ldyBSZWFkYWJsZVN0cmVhbSh1bmRlcmx5aW5nU291cmNlMik7XG5cblx0XHRyZWFkZXIuY2xvc2VkLmNhdGNoKGZ1bmN0aW9uIChyOiBhbnkpIHtcblx0XHRcdGlmICh0ZWVTdGF0ZS5jbG9zZWRPckVycm9yZWQpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRicmFuY2gxLmVycm9yKHIpO1xuXHRcdFx0YnJhbmNoMi5lcnJvcihyKTtcblx0XHRcdHRlZVN0YXRlLmNsb3NlZE9yRXJyb3JlZCA9IHRydWU7XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gWyBicmFuY2gxLCBicmFuY2gyIF07XG5cdH1cbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var ReadableStream_1 = require('./ReadableStream'); | ||
@@ -94,6 +95,6 @@ // 3.5.9-1 has been ignored | ||
return ReadableStreamController; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ReadableStreamController; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLnRzIl0sIm5hbWVzIjpbImlzUmVhZGFibGVTdHJlYW1Db250cm9sbGVyIiwiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyIiwiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmNvbnN0cnVjdG9yIiwiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmRlc2lyZWRTaXplIiwiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmNsb3NlIiwiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmVucXVldWUiLCJSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIuZXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsK0JBQXNDLGtCQUFrQixDQUFDLENBQUE7SUFFekQsMkJBQTJCO0lBQzNCLG9DQUEyQyxDQUFNO1FBQ2hEQSxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQSxTQUFTQSxDQUFDQSxjQUFjQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQSxFQUFFQSwyQkFBMkJBLENBQUNBLENBQUNBO0lBQzdFQSxDQUFDQTtJQUZlLGtDQUEwQiw2QkFFekMsQ0FBQTtJQUVEO1FBZUNDLGtDQUFZQSxNQUF5QkE7WUFDcENDLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLE1BQU1BLENBQUNBLFFBQVFBLENBQUNBLENBQUNBLENBQUNBO2dCQUN0QkEsTUFBTUEsSUFBSUEsU0FBU0EsQ0FBQ0EsMEZBQTBGQSxDQUFDQSxDQUFDQTtZQUNqSEEsQ0FBQ0E7WUFFREEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsVUFBVUEsS0FBS0EsU0FBU0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ3JDQSxNQUFNQSxJQUFJQSxTQUFTQSxDQUFDQSwwRkFBMEZBLENBQUNBLENBQUNBO1lBQ2pIQSxDQUFDQTtZQUVEQSxJQUFJQSxDQUFDQSx5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QXpGRCxJQXlGQztJQXpGRDs4Q0F5RkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFkYWJsZVN0cmVhbSwgeyBTdGF0ZSB9IGZyb20gJy4vUmVhZGFibGVTdHJlYW0nO1xuXG4vLyAzLjUuOS0xIGhhcyBiZWVuIGlnbm9yZWRcbmV4cG9ydCBmdW5jdGlvbiBpc1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcih4OiBhbnkpOiBib29sZWFuIHtcblx0cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh4LCAnX2NvbnRyb2xsZWRSZWFkYWJsZVN0cmVhbScpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VD4ge1xuXHRwcml2YXRlIF9jb250cm9sbGVkUmVhZGFibGVTdHJlYW06IFJlYWRhYmxlU3RyZWFtPFQ+O1xuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIGEgbnVtYmVyIGluZGljYXRpbmcgaG93IG11Y2ggYWRkaXRpb25hbCBkYXRhIGNhbiBiZSBwdXNoZWQgYnkgdGhlIHNvdXJjZSB0byB0aGUgc3RyZWFtJ3MgcXVldWUgYmVmb3JlIGl0XG5cdCAqIGV4Y2VlZHMgaXRzIGBoaWdoV2F0ZXJNYXJrYC4gQW4gdW5kZXJseWluZyBzb3VyY2Ugc2hvdWxkIHVzZSB0aGlzIGluZm9ybWF0aW9uIHRvIGRldGVybWluZSB3aGVuIGFuZCBob3cgdG8gYXBwbHlcblx0ICogYmFja3ByZXNzdXJlLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgc3RyZWFtJ3Mgc3RyYXRlZ3kncyBgaGlnaFdhdGVyTWFya2AgdmFsdWUgbWludXMgdGhlIHF1ZXVlIHNpemVcblx0ICovXG5cdC8vIDMuMy40LjEuIGdldCBkZXNpcmVkU2l6ZVxuXHRnZXQgZGVzaXJlZFNpemUoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fY29udHJvbGxlZFJlYWRhYmxlU3RyZWFtLmRlc2lyZWRTaXplO1xuXHR9XG5cblx0Y29uc3RydWN0b3Ioc3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxUPikge1xuXHRcdGlmICghc3RyZWFtLnJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuMy0xOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIgY2FuIG9ubHkgYmUgY29uc3RydWN0ZWQgd2l0aCBhIFJlYWRhYmxlU3RyZWFtIGluc3RhbmNlJyk7XG5cdFx0fVxuXG5cdFx0aWYgKHN0cmVhbS5jb250cm9sbGVyICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlciBpbnN0YW5jZXMgY2FuIG9ubHkgYmUgY3JlYXRlZCBieSB0aGUgUmVhZGFibGVTdHJlYW0gY29uc3RydWN0b3InKTtcblx0XHR9XG5cblx0XHR0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW0gPSBzdHJlYW07XG5cdH1cblxuXHQvKipcblx0ICogQSBzb3VyY2Ugc2hvdWxkIGNhbGwgdGhpcyBtZXRob2Qgd2hlbiBpdCBoYXMgbm8gbW9yZSBkYXRhIHRvIHByb3ZpZGUuIEFmdGVyIHRoaXMgbWV0aG9kIGlzIGNhbGxlZCwgdGhlIHN0cmVhbVxuXHQgKiB3aWxsIHByb3ZpZGVkIGFueSBxdWV1ZWQgZGF0YSB0byB0aGUgcmVhZGVyLCBidXQgb25jZSB0aGUgc3RyZWFtJ3MgcXVldWUgaXMgZXhoYXVzdGVkIHRoZSBzdHJlYW0gd2lsbCBiZSBjbG9zZWRcblx0ICogYW5kIG5vIG1vcmUgZGF0YSBjYW4gYmUgcmVhZCBmcm9tIGl0LlxuXHQgKi9cblx0Y2xvc2UoKTogdm9pZCB7XG5cdFx0aWYgKCFpc1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcih0aGlzKSkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignMy4zLjQuMi0xOiBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIjY2xvc2UgY2FuIG9ubHkgYmUgdXNlZCBvbiBhIFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcicpO1xuXHRcdH1cblxuXHRcdGNvbnN0IHN0cmVhbSA9IHRoaXMuX2NvbnRyb2xsZWRSZWFkYWJsZVN0cmVhbTtcblx0XHRpZiAoc3RyZWFtLmNsb3NlUmVxdWVzdGVkKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuNC4yLTM6IFRoZSBzdHJlYW0gaGFzIGFscmVhZHkgYmVlbiBjbG9zZWQ7IGRvIG5vdCBjbG9zZSBpdCBhZ2FpbiEnKTtcblx0XHR9XG5cblx0XHRpZiAoc3RyZWFtLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuNC4yLTQ6IFRoZSBzdHJlYW0gaXMgaW4gYW4gZXJyb3JlZCBzdGF0ZSBhbmQgY2Fubm90IGJlIGNsb3NlZCcpO1xuXHRcdH1cblxuXHRcdHJldHVybiBzdHJlYW0ucmVxdWVzdENsb3NlKCk7XG5cdH1cblxuXHQvKipcblx0ICogQSBzb3VyY2Ugc2hvdWxkIGNhbGwgdGhpcyBtZXRob2QgdG8gcHJvdmlkZSBkYXRhIHRvIHRoZSBzdHJlYW0uXG5cdCAqXG5cdCAqIEBwYXJhbSBjaHVuayBUaGUgZGF0YSB0byBwcm92aWRlIHRvIHRoZSBzdHJlYW1cblx0ICovXG5cdGVucXVldWUoY2h1bms6IFQpOiB2b2lkIHtcblx0XHRpZiAoIWlzUmVhZGFibGVTdHJlYW1Db250cm9sbGVyKHRoaXMpKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuNC4zLTE6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciNlbnF1ZXVlIGNhbiBvbmx5IGJlIHVzZWQgb24gYSBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInKTtcblx0XHR9XG5cblx0XHRjb25zdCBzdHJlYW0gPSB0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW07XG5cblx0XHRpZiAoc3RyZWFtLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHR0aHJvdyBzdHJlYW0uc3RvcmVkRXJyb3I7XG5cdFx0fVxuXG5cdFx0aWYgKHN0cmVhbS5jbG9zZVJlcXVlc3RlZCkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignMy4zLjQuMy00OiBzdHJlYW0gaXMgZHJhaW5pbmcnKTtcblx0XHR9XG5cblx0XHRzdHJlYW0uZW5xdWV1ZShjaHVuayk7XG5cdH1cblxuXHQvKipcblx0ICogQSBzb3VyY2Ugc2hvdWxkIGNhbGwgdGhpcyBtZXRob2QgdG8gaW5kaWNhdGUgYW4gZXJyb3IgY29uZGl0aW9uIHRvIHRoZSBzdHJlYW0gdGhhdCBpcnJlcGFyYWJseSBkaXNydXB0cyB0aGVcblx0ICogc291cmNlJ3MgKGFuZCB0aHVzIHRoZSBzdHJlYW0ncykgYWJpbGl0eSB0byBwcm92aWRlIGFsbCB0aGUgaW50ZW5kZWQgZGF0YS5cblx0ICpcblx0ICogQHBhcmFtIGVycm9yIEFuIGVycm9yIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGVycm9yIGNvbmRpdGlvbiBpbiB0aGUgc291cmNlXG5cdCAqL1xuXHRlcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcblx0XHRpZiAoIWlzUmVhZGFibGVTdHJlYW1Db250cm9sbGVyKHRoaXMpKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuNC4zLTE6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciNlbnF1ZXVlIGNhbiBvbmx5IGJlIHVzZWQgb24gYSBSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXInKTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5fY29udHJvbGxlZFJlYWRhYmxlU3RyZWFtLnN0YXRlICE9PSBTdGF0ZS5SZWFkYWJsZSkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcihgMy4zLjQuMy0yOiB0aGUgc3RyZWFtIGlzICR7dGhpcy5fY29udHJvbGxlZFJlYWRhYmxlU3RyZWFtLnN0YXRlfSBhbmQgc28gY2Fubm90IGJlIGVycm9yZWRgKTtcblx0XHR9XG5cdFx0Ly8gcmV0dXJuIGVycm9yUmVhZGFibGVTdHJlYW0odGhpcy5fY29udHJvbGxlZFJlYWRhYmxlU3RyZWFtLCBlKTtcblx0XHR0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW0uZXJyb3IoZXJyb3IpO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvUmVhZGFibGVTdHJlYW1Db250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUFBLCtCQUFzQyxrQkFBa0IsQ0FBQyxDQUFBO0lBRXpELDJCQUEyQjtJQUMzQixvQ0FBMkMsQ0FBTTtRQUNoRCxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFGZSxrQ0FBMEIsNkJBRXpDLENBQUE7SUFFRDtRQWVDLGtDQUFZLE1BQXlCO1lBQ3BDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLE1BQU0sSUFBSSxTQUFTLENBQUMsMEZBQTBGLENBQUMsQ0FBQztZQUNqSCxDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNyQyxNQUFNLElBQUksU0FBUyxDQUFDLDBGQUEwRixDQUFDLENBQUM7WUFDakgsQ0FBQztZQUVELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxNQUFNLENBQUM7UUFDekMsQ0FBQztRQWRELHNCQUFJLGlEQUFXO1lBUmY7Ozs7OztlQU1HO1lBQ0gsMkJBQTJCO2lCQUMzQjtnQkFDQyxNQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsQ0FBQztZQUNuRCxDQUFDOzs7V0FBQTtRQWNEOzs7O1dBSUc7UUFDSCx3Q0FBSyxHQUFMO1lBQ0MsRUFBRSxDQUFDLENBQUMsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLE1BQU0sSUFBSSxTQUFTLENBQUMsMEZBQTBGLENBQUMsQ0FBQztZQUNqSCxDQUFDO1lBRUQsSUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1lBQzlDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO2dCQUMzQixNQUFNLElBQUksU0FBUyxDQUFDLHVFQUF1RSxDQUFDLENBQUM7WUFDOUYsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEtBQUssc0JBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxNQUFNLElBQUksU0FBUyxDQUFDLG1FQUFtRSxDQUFDLENBQUM7WUFDMUYsQ0FBQztZQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDOUIsQ0FBQztRQUVEOzs7O1dBSUc7UUFDSCwwQ0FBTyxHQUFQLFVBQVEsS0FBUTtZQUNmLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QyxNQUFNLElBQUksU0FBUyxDQUFDLDRGQUE0RixDQUFDLENBQUM7WUFDbkgsQ0FBQztZQUVELElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztZQUU5QyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLHNCQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDcEMsTUFBTSxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQzFCLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztnQkFDM0IsTUFBTSxJQUFJLFNBQVMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1lBQ3RELENBQUM7WUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7UUFFRDs7Ozs7V0FLRztRQUNILHdDQUFLLEdBQUwsVUFBTSxLQUFZO1lBQ2pCLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QyxNQUFNLElBQUksU0FBUyxDQUFDLDRGQUE0RixDQUFDLENBQUM7WUFDbkgsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLEtBQUssc0JBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2dCQUM3RCxNQUFNLElBQUksU0FBUyxDQUFDLDhCQUE0QixJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyw4QkFBMkIsQ0FBQyxDQUFDO1lBQ2xILENBQUM7WUFDRCxpRUFBaUU7WUFDakUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0YsK0JBQUM7SUFBRCxDQUFDLEFBekZELElBeUZDO0lBekZEOzhDQXlGQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWRhYmxlU3RyZWFtLCB7IFN0YXRlIH0gZnJvbSAnLi9SZWFkYWJsZVN0cmVhbSc7XG5cbi8vIDMuNS45LTEgaGFzIGJlZW4gaWdub3JlZFxuZXhwb3J0IGZ1bmN0aW9uIGlzUmVhZGFibGVTdHJlYW1Db250cm9sbGVyKHg6IGFueSk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHgsICdfY29udHJvbGxlZFJlYWRhYmxlU3RyZWFtJyk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcjxUPiB7XG5cdHByaXZhdGUgX2NvbnRyb2xsZWRSZWFkYWJsZVN0cmVhbTogUmVhZGFibGVTdHJlYW08VD47XG5cblx0LyoqXG5cdCAqIFJldHVybnMgYSBudW1iZXIgaW5kaWNhdGluZyBob3cgbXVjaCBhZGRpdGlvbmFsIGRhdGEgY2FuIGJlIHB1c2hlZCBieSB0aGUgc291cmNlIHRvIHRoZSBzdHJlYW0ncyBxdWV1ZSBiZWZvcmUgaXRcblx0ICogZXhjZWVkcyBpdHMgYGhpZ2hXYXRlck1hcmtgLiBBbiB1bmRlcmx5aW5nIHNvdXJjZSBzaG91bGQgdXNlIHRoaXMgaW5mb3JtYXRpb24gdG8gZGV0ZXJtaW5lIHdoZW4gYW5kIGhvdyB0byBhcHBseVxuXHQgKiBiYWNrcHJlc3N1cmUuXG5cdCAqXG5cdCAqIEByZXR1cm5zIFRoZSBzdHJlYW0ncyBzdHJhdGVneSdzIGBoaWdoV2F0ZXJNYXJrYCB2YWx1ZSBtaW51cyB0aGUgcXVldWUgc2l6ZVxuXHQgKi9cblx0Ly8gMy4zLjQuMS4gZ2V0IGRlc2lyZWRTaXplXG5cdGdldCBkZXNpcmVkU2l6ZSgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW0uZGVzaXJlZFNpemU7XG5cdH1cblxuXHRjb25zdHJ1Y3RvcihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFQ+KSB7XG5cdFx0aWYgKCFzdHJlYW0ucmVhZGFibGUpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuMy4zLTE6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciBjYW4gb25seSBiZSBjb25zdHJ1Y3RlZCB3aXRoIGEgUmVhZGFibGVTdHJlYW0gaW5zdGFuY2UnKTtcblx0XHR9XG5cblx0XHRpZiAoc3RyZWFtLmNvbnRyb2xsZXIgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignUmVhZGFibGVTdHJlYW1Db250cm9sbGVyIGluc3RhbmNlcyBjYW4gb25seSBiZSBjcmVhdGVkIGJ5IHRoZSBSZWFkYWJsZVN0cmVhbSBjb25zdHJ1Y3RvcicpO1xuXHRcdH1cblxuXHRcdHRoaXMuX2NvbnRyb2xsZWRSZWFkYWJsZVN0cmVhbSA9IHN0cmVhbTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBIHNvdXJjZSBzaG91bGQgY2FsbCB0aGlzIG1ldGhvZCB3aGVuIGl0IGhhcyBubyBtb3JlIGRhdGEgdG8gcHJvdmlkZS4gQWZ0ZXIgdGhpcyBtZXRob2QgaXMgY2FsbGVkLCB0aGUgc3RyZWFtXG5cdCAqIHdpbGwgcHJvdmlkZWQgYW55IHF1ZXVlZCBkYXRhIHRvIHRoZSByZWFkZXIsIGJ1dCBvbmNlIHRoZSBzdHJlYW0ncyBxdWV1ZSBpcyBleGhhdXN0ZWQgdGhlIHN0cmVhbSB3aWxsIGJlIGNsb3NlZFxuXHQgKiBhbmQgbm8gbW9yZSBkYXRhIGNhbiBiZSByZWFkIGZyb20gaXQuXG5cdCAqL1xuXHRjbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAoIWlzUmVhZGFibGVTdHJlYW1Db250cm9sbGVyKHRoaXMpKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuNC4yLTE6IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciNjbG9zZSBjYW4gb25seSBiZSB1c2VkIG9uIGEgUmVhZGFibGVTdHJlYW1Db250cm9sbGVyJyk7XG5cdFx0fVxuXG5cdFx0Y29uc3Qgc3RyZWFtID0gdGhpcy5fY29udHJvbGxlZFJlYWRhYmxlU3RyZWFtO1xuXHRcdGlmIChzdHJlYW0uY2xvc2VSZXF1ZXN0ZWQpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuMy40LjItMzogVGhlIHN0cmVhbSBoYXMgYWxyZWFkeSBiZWVuIGNsb3NlZDsgZG8gbm90IGNsb3NlIGl0IGFnYWluIScpO1xuXHRcdH1cblxuXHRcdGlmIChzdHJlYW0uc3RhdGUgPT09IFN0YXRlLkVycm9yZWQpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuMy40LjItNDogVGhlIHN0cmVhbSBpcyBpbiBhbiBlcnJvcmVkIHN0YXRlIGFuZCBjYW5ub3QgYmUgY2xvc2VkJyk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHN0cmVhbS5yZXF1ZXN0Q2xvc2UoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBIHNvdXJjZSBzaG91bGQgY2FsbCB0aGlzIG1ldGhvZCB0byBwcm92aWRlIGRhdGEgdG8gdGhlIHN0cmVhbS5cblx0ICpcblx0ICogQHBhcmFtIGNodW5rIFRoZSBkYXRhIHRvIHByb3ZpZGUgdG8gdGhlIHN0cmVhbVxuXHQgKi9cblx0ZW5xdWV1ZShjaHVuazogVCk6IHZvaWQge1xuXHRcdGlmICghaXNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIodGhpcykpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuMy40LjMtMTogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyI2VucXVldWUgY2FuIG9ubHkgYmUgdXNlZCBvbiBhIFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcicpO1xuXHRcdH1cblxuXHRcdGNvbnN0IHN0cmVhbSA9IHRoaXMuX2NvbnRyb2xsZWRSZWFkYWJsZVN0cmVhbTtcblxuXHRcdGlmIChzdHJlYW0uc3RhdGUgPT09IFN0YXRlLkVycm9yZWQpIHtcblx0XHRcdHRocm93IHN0cmVhbS5zdG9yZWRFcnJvcjtcblx0XHR9XG5cblx0XHRpZiAoc3RyZWFtLmNsb3NlUmVxdWVzdGVkKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjMuNC4zLTQ6IHN0cmVhbSBpcyBkcmFpbmluZycpO1xuXHRcdH1cblxuXHRcdHN0cmVhbS5lbnF1ZXVlKGNodW5rKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBBIHNvdXJjZSBzaG91bGQgY2FsbCB0aGlzIG1ldGhvZCB0byBpbmRpY2F0ZSBhbiBlcnJvciBjb25kaXRpb24gdG8gdGhlIHN0cmVhbSB0aGF0IGlycmVwYXJhYmx5IGRpc3J1cHRzIHRoZVxuXHQgKiBzb3VyY2UncyAoYW5kIHRodXMgdGhlIHN0cmVhbSdzKSBhYmlsaXR5IHRvIHByb3ZpZGUgYWxsIHRoZSBpbnRlbmRlZCBkYXRhLlxuXHQgKlxuXHQgKiBAcGFyYW0gZXJyb3IgQW4gZXJyb3Igb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgZXJyb3IgY29uZGl0aW9uIGluIHRoZSBzb3VyY2Vcblx0ICovXG5cdGVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xuXHRcdGlmICghaXNSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXIodGhpcykpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuMy40LjMtMTogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyI2VucXVldWUgY2FuIG9ubHkgYmUgdXNlZCBvbiBhIFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlcicpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW0uc3RhdGUgIT09IFN0YXRlLlJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKGAzLjMuNC4zLTI6IHRoZSBzdHJlYW0gaXMgJHt0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW0uc3RhdGV9IGFuZCBzbyBjYW5ub3QgYmUgZXJyb3JlZGApO1xuXHRcdH1cblx0XHQvLyByZXR1cm4gZXJyb3JSZWFkYWJsZVN0cmVhbSh0aGlzLl9jb250cm9sbGVkUmVhZGFibGVTdHJlYW0sIGUpO1xuXHRcdHRoaXMuX2NvbnRyb2xsZWRSZWFkYWJsZVN0cmVhbS5lcnJvcihlcnJvcik7XG5cdH1cbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -108,5 +109,5 @@ var ReadableStream_1 = require('./ReadableStream'); | ||
else { | ||
var readPromise = new Promise_1.default(function (resolve, reject) { | ||
var readPromise_1 = new Promise_1.default(function (resolve, reject) { | ||
_this._readRequests.push({ | ||
promise: readPromise, | ||
promise: readPromise_1, | ||
resolve: resolve, | ||
@@ -117,3 +118,3 @@ reject: reject | ||
}); | ||
return readPromise; | ||
return readPromise_1; | ||
} | ||
@@ -182,6 +183,6 @@ }; | ||
return ReadableStreamReader; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = ReadableStreamReader; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVTdHJlYW1SZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci50cyJdLCJuYW1lcyI6WyJpc1JlYWRhYmxlU3RyZWFtUmVhZGVyIiwiUmVhZGFibGVTdHJlYW1SZWFkZXIiLCJSZWFkYWJsZVN0cmVhbVJlYWRlci5jb25zdHJ1Y3RvciIsIlJlYWRhYmxlU3RyZWFtUmVhZGVyLmNsb3NlZCIsIlJlYWRhYmxlU3RyZWFtUmVhZGVyLmNhbmNlbCIsIlJlYWRhYmxlU3RyZWFtUmVhZGVyLnJlYWQiLCJSZWFkYWJsZVN0cmVhbVJlYWRlci5yZWxlYXNlTG9jayIsIlJlYWRhYmxlU3RyZWFtUmVhZGVyLnJlbGVhc2UiLCJSZWFkYWJsZVN0cmVhbVJlYWRlci5yZXNvbHZlUmVhZFJlcXVlc3QiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQUEsd0JBQW9CLFlBQVksQ0FBQyxDQUFBO0lBQ2pDLCtCQUFzQyxrQkFBa0IsQ0FBQyxDQUFBO0lBaUJ6RCxnQ0FBbUMsb0JBQTZDO1FBQy9FQSxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQSxTQUFTQSxDQUFDQSxjQUFjQSxDQUFDQSxJQUFJQSxDQUFDQSxvQkFBb0JBLEVBQUVBLHNCQUFzQkEsQ0FBQ0EsQ0FBQ0E7SUFDM0ZBLENBQUNBO0lBRUQ7Ozs7O09BS0c7SUFDSDtRQWVDQyw4QkFBWUEsTUFBeUJBO1lBZnRDQyxpQkF1TENBO1lBdktDQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxNQUFNQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDdEJBLE1BQU1BLElBQUlBLFNBQVNBLENBQUNBLDBDQUEwQ0EsQ0FBQ0EsQ0FBQ0E7WUFDakVBLENBQUNBO1lBRURBLEVBQUVBLENBQUNBLENBQUNBLE1BQU1BLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBO2dCQUNuQkEsTUFBTUEsSUFBSUEsU0FBU0EsQ0FBQ0Esa0NB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QUlBLEVBQUVBLElBQUlBO3FCQUNWQSxDQUFDQSxDQUFDQTtpQkFDSEE7WUFDRkEsQ0FBQ0E7WUFFREEsSUFBSUEsQ0FBQ0EsYUFBYUEsR0FBR0EsRUFBRUEsQ0FBQ0E7WUFDeEJBLElBQUlBLENBQUNBLG9CQUFvQkEsQ0FBQ0EsTUFBTUEsR0FBR0EsU0FBU0EsQ0FBQ0E7WUFDN0NBLElBQUlBLENBQUNBLG9CQUFvQkEsR0FBR0EsU0FBU0EsQ0FBQ0E7UUFDdkNBLENBQUNBO1FBRUROOzs7O1dBSUdBO1FBQ0hBLGlEQUFrQkEsR0FBbEJBLFVBQW1CQSxLQUFRQTtZQUMxQk8sRUFBRUEsQ0FBQ0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsYUFBYUEsQ0FBQ0EsTUFBTUEsR0FBR0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQ25DQSxJQUFJQSxDQUFDQSxhQUFhQSxDQUFDQSxLQUFLQSxFQUFFQSxDQUFDQSxPQUFPQSxDQUFDQTtvQkFDbENBLEtBQUtBLEVBQUVBLEtBQUtBO29CQUNaQSxJQUFJQSxFQUFFQSxLQUFLQTtpQkFDWEEsQ0FBQ0EsQ0FBQ0E7Z0JBQ0hBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBO1lBQ2JBLENBQUNBO1lBQ0RBLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBO1FBQ2RBLENBQUNBO1FBQ0ZQLDJCQUFDQTtJQUFEQSxDQUFDQSxBQXZMRCxJQXVMQztJQXZMRDswQ0F1TEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtLCB7IFN0YXRlIH0gZnJvbSAnLi9SZWFkYWJsZVN0cmVhbSc7XG5cbmludGVyZmFjZSBSZWFkUmVxdWVzdDxUPiB7XG5cdHByb21pc2U6IFByb21pc2U8UmVhZFJlc3VsdDxUPj47XG5cdHJlc29sdmU6ICh2YWx1ZTogUmVhZFJlc3VsdDxUPikgPT4gdm9pZDtcblx0cmVqZWN0OiAocmVhc29uOiBhbnkpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgb2JqZWN0cyByZXR1cm5lZCBieSB7QGxpbmsgUmVhZGFibGVTdHJlYW1SZWFkZXIjcmVhZH0uIFRoZSBkYXRhIGlzIGFjY2Vzc2libGUgb24gdGhlIGB2YWx1ZWAgcHJvcGVydHkuXG4gKiBJZiB0aGUgYGRvbmVgIHByb3BlcnR5IGlzIHRydWUsIHRoZSBzdHJlYW0gaGFzIG5vIG1vcmUgZGF0YSB0byBwcm92aWRlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlYWRSZXN1bHQ8VD4ge1xuXHR2YWx1ZTogVDtcblx0ZG9uZTogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gaXNSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPihyZWFkYWJsZVN0cmVhbVJlYWRlcjogUmVhZGFibGVTdHJlYW1SZWFkZXI8VD4pOiBib29sZWFuIHtcblx0cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyZWFkYWJsZVN0cmVhbVJlYWRlciwgJ19vd25lclJlYWRhYmxlU3RyZWFtJyk7XG59XG5cbi8qKlxuICogVGhpcyBjbGFzcyBwcm92aWRlcyB0aGUgaW50ZXJmYWNlIGZvciByZWFkaW5nIGRhdGEgZnJvbSBhIHN0cmVhbS4gQSByZWFkZXIgY2FuIGJ5IGFjcXVpcmVkIGJ5IGNhbGxpbmdcbiAqIHtAbGluayBSZWFkYWJsZVN0cmVhbSNnZXRSZWFkZXJ9LiBBIHtAbGluayBSZWFkYWJsZVN0cmVhbX0gY2FuIG9ubHkgaGF2ZSBhIHNpbmdsZSByZWFkZXIgYXQgYW55IHRpbWUuIEEgcmVhZGVyIGNhblxuICogYmUgcmVsZWFzZWQgZnJvbSB0aGUgc3RyZWFtIGJ5IGNhbGxpbmcge0BsaW5rIFJlYWRhYmxlU3RyZWFtUmVhZGVyLnJlbGVhc2VMb2NrfS4gSWYgdGhlIHN0cmVhbSBzdGlsbCBoYXMgZGF0YSwgYSBuZXdcbiAqIHJlYWRlciBjYW4gYmUgYWNxdWlyZWQgdG8gcmVhZCBmcm9tIHRoZSBzdHJlYW0uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlYWRhYmxlU3RyZWFtUmVhZGVyPFQ+IHtcblx0Z2V0IGNsb3NlZCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gdGhpcy5fY2xvc2VkUHJvbWlzZTtcblx0fVxuXG5cdHByaXZhdGUgX2Nsb3NlZFByb21pc2U6IFByb21pc2U8dm9pZD47XG5cdHByaXZhdGUgX3N0b3JlZEVycm9yOiBFcnJvcjtcblx0cHJpdmF0ZSBfcmVhZFJlcXVlc3RzOiBSZWFkUmVxdWVzdDxUPltdO1xuXHRwcml2YXRlIF9yZXNvbHZlQ2xvc2VkUHJvbWlzZTogKCkgPT4gdm9pZDtcblx0cHJpdmF0ZSBfcmVqZWN0Q2xvc2VkUHJvbWlzZTogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcblxuXHRwcm90ZWN0ZWQgX293bmVyUmVhZGFibGVTdHJlYW06IFJlYWRhYmxlU3RyZWFtPFQ+O1xuXG5cdHN0YXRlOiBTdGF0ZTtcblxuXHRjb25zdHJ1Y3RvcihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFQ+KSB7XG5cdFx0aWYgKCFzdHJlYW0ucmVhZGFibGUpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuNC4zLTE6IHN0cmVhbSBtdXN0IGJlIGEgUmVhZGFibGVTdHJlYW0nKTtcblx0XHR9XG5cblx0XHRpZiAoc3RyZWFtLmxvY2tlZCkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignMy40LjMtMjogc3RyZWFtIGNhbm5vdCBiZSBsb2NrZWQnKTtcblx0XHR9XG5cblx0XHRzdHJlYW0ucmVhZGVyID0gdGhpcztcblx0XHR0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtID0gc3RyZWFtO1xuXHRcdHRoaXMuc3RhdGUgPSBTdGF0ZS5SZWFkYWJsZTtcblx0XHR0aGlzLl9zdG9yZWRFcnJvciA9IHVuZGVmaW5lZDtcblx0XHR0aGlzLl9yZWFkUmVxdWVzdHMgPSBbXTtcblx0XHR0aGlzLl9jbG9zZWRQcm9taXNlID0gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuXHRcdFx0dGhpcy5fcmVzb2x2ZUNsb3NlZFByb21pc2UgPSByZXNvbHZlO1xuXHRcdFx0dGhpcy5fcmVqZWN0Q2xvc2VkUHJvbWlzZSA9IHJlamVjdDtcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDYW5jZWwgYSBzdHJlYW0uIFRoZSByZWFkZXIgaXMgcmVsZWFzZWQgYW5kIHRoZSBzdHJlYW0gaXMgY2xvc2VkLiB7QGxpbmsgUmVhZGFibGVTdHJlYW0uU291cmNlI2NhbmNlbH0gaXNcblx0ICogY2FsbGVkIHdpdGggdGhlIHByb3ZpZGVkIGByZWFzb25gLlxuXHQgKlxuXHQgKiBAcGFyYW0gcmVhc29uIFRoZSByZWFzb24gZm9yIGNhbmNlbGluZyB0aGUgc3RyZWFtXG5cdCAqL1xuXHRjYW5jZWwocmVhc29uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAoIWlzUmVhZGFibGVTdHJlYW1SZWFkZXIodGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCczLjQuNC4yLTE6IE11c3QgYmUgYSBSZWFkYWJsZVN0cmVhbVJlYWRlciBpbnN0YW5jZScpKTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2VkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkVycm9yZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdCh0aGlzLl9zdG9yZWRFcnJvcik7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0gJiYgdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5zdGF0ZSA9PT0gU3RhdGUuUmVhZGFibGUpIHtcblx0XHRcdHJldHVybiB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLmNhbmNlbChyZWFzb24pO1xuXHRcdH1cblxuXHRcdC8vIDMuNC40LjItNCw1IC0gdGhlIHNwZWMgY2FsbHMgZm9yIHRoaXMgdG8gdGhyb3cgYW4gZXJyb3IuIFdlIGhhdmUgY2hhbmdlZCBpdCB0byByZWplY3QgaW5zdGVhZFxuXHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCczLjQuNC4yLTQsNTogQ2Fubm90IGNhbmNlbCBSZWFkYWJsZVN0cmVhbVJlYWRlcicpKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZWFkIGRhdGEgZnJvbSB0aGUgc3RyZWFtLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIHtAbGluayBSZWFkUmVzdWx0fS5cblx0ICovXG5cdC8vIFRoaXMgbWV0aG9kIGFsc28gaW5jb3Jwb3JhdGVzIHRoZSBSZWFkRnJvbVJlYWRhYmxlU3RyZWFtUmVhZGVyIGZyb20gMy41LjEyLlxuXHRyZWFkKCk6IFByb21pc2U8UmVhZFJlc3VsdDxUPj4ge1xuXHRcdGlmICghaXNSZWFkYWJsZVN0cmVhbVJlYWRlcih0aGlzKSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0PFJlYWRSZXN1bHQ8VD4+KG5ldyBUeXBlRXJyb3IoJzMuNC40LjMtMTogTXVzdCBiZSBhIFJlYWRhYmxlU3RyZWFtUmVhZGVyIGluc3RhbmNlJykpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuXHRcdFx0XHR2YWx1ZTogdW5kZWZpbmVkLFxuXHRcdFx0XHRkb25lOiB0cnVlXG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuRXJyb3JlZCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0PFJlYWRSZXN1bHQ8VD4+KG5ldyBUeXBlRXJyb3IoJzMuNS4xMi0yOiByZWFkZXIgc3RhdGUgaXMgRXJyb3JlZCcpKTtcblx0XHR9XG5cblx0XHRjb25zdCBzdHJlYW0gPSB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtO1xuXHRcdGlmICghc3RyZWFtIHx8IHN0cmVhbS5zdGF0ZSAhPT0gU3RhdGUuUmVhZGFibGUpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuNS4xMi0zLDQ6IFN0cmVhbSBtdXN0IGV4aXN0IGFuZCBiZSByZWFkYWJsZScpO1xuXHRcdH1cblxuXHRcdGNvbnN0IHF1ZXVlID0gc3RyZWFtLnF1ZXVlO1xuXHRcdGlmIChxdWV1ZS5sZW5ndGggPiAwKSB7XG5cdFx0XHRjb25zdCBjaHVuayA9IHF1ZXVlLmRlcXVldWUoKTtcblx0XHRcdGlmIChzdHJlYW0uY2xvc2VSZXF1ZXN0ZWQgJiYgIXF1ZXVlLmxlbmd0aCkge1xuXHRcdFx0XHRzdHJlYW0uY2xvc2UoKTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHRzdHJlYW0ucHVsbCgpO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG5cdFx0XHRcdHZhbHVlOiBjaHVuayxcblx0XHRcdFx0ZG9uZTogZmFsc2Vcblx0XHRcdH0pO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdGNvbnN0IHJlYWRQcm9taXNlID0gbmV3IFByb21pc2U8UmVhZFJlc3VsdDxUPj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuXHRcdFx0XHR0aGlzLl9yZWFkUmVxdWVzdHMucHVzaCh7XG5cdFx0XHRcdFx0cHJvbWlzZTogcmVhZFByb21pc2UsXG5cdFx0XHRcdFx0cmVzb2x2ZTogcmVzb2x2ZSxcblx0XHRcdFx0XHRyZWplY3Q6IHJlamVjdFxuXHRcdFx0XHR9KTtcblx0XHRcdFx0c3RyZWFtLnB1bGwoKTtcblx0XHRcdH0pO1xuXG5cdFx0XHRyZXR1cm4gcmVhZFByb21pc2U7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFJlbGVhc2UgYSByZWFkZXIncyBsb2NrIG9uIHRoZSBjb3JyZXNwb25kaW5nIHN0cmVhbS4gVGhlIHJlYWRlciB3aWxsIG5vIGxvbmdlciBiZSByZWFkYWJsZS4gRnVydGhlciByZWFkaW5nIG9uXG5cdCAqIHRoZSBzdHJlYW0gY2FuIGJlIGRvbmUgYnkgYWNxdWlyaW5nIGEgbmV3IGBSZWFkYWJsZVN0cmVhbVJlYWRlcmAuXG5cdCAqL1xuXHQvLyAzLjQuNC40LiByZWxlYXNlTG9jaygpXG5cdHJlbGVhc2VMb2NrKCk6IHZvaWQge1xuXHRcdGlmICghaXNSZWFkYWJsZVN0cmVhbVJlYWRlcih0aGlzKSkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignMy40LjQuNC0xOiBNdXN0IGJlIGEgUmVhZGFibGVTdHJlYW1SZWFkZXIgaXNudGFuY2UnKTtcblx0XHR9XG5cblx0XHRpZiAoIXRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0pIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5fcmVhZFJlcXVlc3RzLmxlbmd0aCkge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignMy40LjQuNC0zOiBUcmllZCB0byByZWxlYXNlIGEgcmVhZGVyIGxvY2sgd2hlbiB0aGF0IHJlYWRlciBoYXMgcGVuZGluZyByZWFkIGNhbGxzIHVuLXNldHRsZWQnKTtcblx0XHR9XG5cblx0XHR0aGlzLnJlbGVhc2UoKTtcblx0fVxuXG5cdC8vIDMuNS4xMy4gUmVsZWFzZVJlYWRhYmxlU3RyZWFtUmVhZGVyICggcmVhZGVyIClcblx0cmVsZWFzZSgpOiB2b2lkIHtcblx0XHRsZXQgcmVxdWVzdDogYW55O1xuXHRcdGlmICh0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHR0aGlzLnN0YXRlID0gU3RhdGUuRXJyb3JlZDtcblxuXHRcdFx0Y29uc3QgZSA9IHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RvcmVkRXJyb3I7XG5cdFx0XHR0aGlzLl9zdG9yZWRFcnJvciA9IGU7XG5cdFx0XHR0aGlzLl9yZWplY3RDbG9zZWRQcm9taXNlKGUpO1xuXG5cdFx0XHRmb3IgKHJlcXVlc3Qgb2YgdGhpcy5fcmVhZFJlcXVlc3RzKSB7XG5cdFx0XHRcdHJlcXVlc3QucmVqZWN0KGUpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHRoaXMuc3RhdGUgPSBTdGF0ZS5DbG9zZWQ7XG5cdFx0XHR0aGlzLl9yZXNvbHZlQ2xvc2VkUHJvbWlzZSgpO1xuXHRcdFx0Zm9yIChyZXF1ZXN0IG9mIHRoaXMuX3JlYWRSZXF1ZXN0cykge1xuXHRcdFx0XHRyZXF1ZXN0LnJlc29sdmUoe1xuXHRcdFx0XHRcdHZhbHVlOiB1bmRlZmluZWQsXG5cdFx0XHRcdFx0ZG9uZTogdHJ1ZVxuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHR0aGlzLl9yZWFkUmVxdWVzdHMgPSBbXTtcblx0XHR0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnJlYWRlciA9IHVuZGVmaW5lZDtcblx0XHR0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtID0gdW5kZWZpbmVkO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJlc29sdmVzIGEgcGVuZGluZyByZWFkIHJlcXVlc3QsIGlmIGFueSwgd2l0aCB0aGUgcHJvdmlkZWQgY2h1bmsuXG5cdCAqIEBwYXJhbSBjaHVua1xuXHQgKiBAcmV0dXJuIGJvb2xlYW4gVHJ1ZSBpZiBhIHJlYWQgcmVxdWVzdCB3YXMgcmVzb2x2ZWQuXG5cdCAqL1xuXHRyZXNvbHZlUmVhZFJlcXVlc3QoY2h1bms6IFQpOiBib29sZWFuIHtcblx0XHRpZiAodGhpcy5fcmVhZFJlcXVlc3RzLmxlbmd0aCA+IDApIHtcblx0XHRcdHRoaXMuX3JlYWRSZXF1ZXN0cy5zaGlmdCgpLnJlc29sdmUoe1xuXHRcdFx0XHR2YWx1ZTogY2h1bmssXG5cdFx0XHRcdGRvbmU6IGZhbHNlXG5cdFx0XHR9KTtcblx0XHRcdHJldHVybiB0cnVlO1xuXHRcdH1cblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVhZGFibGVTdHJlYW1SZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9SZWFkYWJsZVN0cmVhbVJlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFBQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFDakMsK0JBQXNDLGtCQUFrQixDQUFDLENBQUE7SUFpQnpELGdDQUFtQyxvQkFBNkM7UUFDL0UsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNIO1FBZUMsOEJBQVksTUFBeUI7WUFmdEMsaUJBdUxDO1lBdktDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLE1BQU0sSUFBSSxTQUFTLENBQUMsMENBQTBDLENBQUMsQ0FBQztZQUNqRSxDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ25CLE1BQU0sSUFBSSxTQUFTLENBQUMsa0NBQWtDLENBQUMsQ0FBQztZQUN6RCxDQUFDO1lBRUQsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLE1BQU0sQ0FBQztZQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLHNCQUFLLENBQUMsUUFBUSxDQUFDO1lBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDO1lBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxpQkFBTyxDQUFPLFVBQUMsT0FBTyxFQUFFLE1BQU07Z0JBQ3ZELEtBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUM7Z0JBQ3JDLEtBQUksQ0FBQyxv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QkFBb0IsR0FBRyxTQUFTLENBQUM7UUFDdkMsQ0FBQztRQUVEOzs7O1dBSUc7UUFDSCxpREFBa0IsR0FBbEIsVUFBbUIsS0FBUTtZQUMxQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEMsS0FBSyxFQUFFLEtBQUs7b0JBQ1osSUFBSSxFQUFFLEtBQUs7aUJBQ1gsQ0FBQyxDQUFDO2dCQUNILE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDYixDQUFDO1lBQ0QsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNkLENBQUM7UUFDRiwyQkFBQztJQUFELENBQUMsQUF2TEQsSUF1TEM7SUF2TEQ7MENBdUxDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvbWlzZSBmcm9tICcuLi9Qcm9taXNlJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbSwgeyBTdGF0ZSB9IGZyb20gJy4vUmVhZGFibGVTdHJlYW0nO1xuXG5pbnRlcmZhY2UgUmVhZFJlcXVlc3Q8VD4ge1xuXHRwcm9taXNlOiBQcm9taXNlPFJlYWRSZXN1bHQ8VD4+O1xuXHRyZXNvbHZlOiAodmFsdWU6IFJlYWRSZXN1bHQ8VD4pID0+IHZvaWQ7XG5cdHJlamVjdDogKHJlYXNvbjogYW55KSA9PiB2b2lkO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIG9iamVjdHMgcmV0dXJuZWQgYnkge0BsaW5rIFJlYWRhYmxlU3RyZWFtUmVhZGVyI3JlYWR9LiBUaGUgZGF0YSBpcyBhY2Nlc3NpYmxlIG9uIHRoZSBgdmFsdWVgIHByb3BlcnR5LlxuICogSWYgdGhlIGBkb25lYCBwcm9wZXJ0eSBpcyB0cnVlLCB0aGUgc3RyZWFtIGhhcyBubyBtb3JlIGRhdGEgdG8gcHJvdmlkZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWFkUmVzdWx0PFQ+IHtcblx0dmFsdWU6IFQ7XG5cdGRvbmU6IGJvb2xlYW47XG59XG5cbmZ1bmN0aW9uIGlzUmVhZGFibGVTdHJlYW1SZWFkZXI8VD4ocmVhZGFibGVTdHJlYW1SZWFkZXI6IFJlYWRhYmxlU3RyZWFtUmVhZGVyPFQ+KTogYm9vbGVhbiB7XG5cdHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocmVhZGFibGVTdHJlYW1SZWFkZXIsICdfb3duZXJSZWFkYWJsZVN0cmVhbScpO1xufVxuXG4vKipcbiAqIFRoaXMgY2xhc3MgcHJvdmlkZXMgdGhlIGludGVyZmFjZSBmb3IgcmVhZGluZyBkYXRhIGZyb20gYSBzdHJlYW0uIEEgcmVhZGVyIGNhbiBieSBhY3F1aXJlZCBieSBjYWxsaW5nXG4gKiB7QGxpbmsgUmVhZGFibGVTdHJlYW0jZ2V0UmVhZGVyfS4gQSB7QGxpbmsgUmVhZGFibGVTdHJlYW19IGNhbiBvbmx5IGhhdmUgYSBzaW5nbGUgcmVhZGVyIGF0IGFueSB0aW1lLiBBIHJlYWRlciBjYW5cbiAqIGJlIHJlbGVhc2VkIGZyb20gdGhlIHN0cmVhbSBieSBjYWxsaW5nIHtAbGluayBSZWFkYWJsZVN0cmVhbVJlYWRlci5yZWxlYXNlTG9ja30uIElmIHRoZSBzdHJlYW0gc3RpbGwgaGFzIGRhdGEsIGEgbmV3XG4gKiByZWFkZXIgY2FuIGJlIGFjcXVpcmVkIHRvIHJlYWQgZnJvbSB0aGUgc3RyZWFtLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPiB7XG5cdGdldCBjbG9zZWQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0cmV0dXJuIHRoaXMuX2Nsb3NlZFByb21pc2U7XG5cdH1cblxuXHRwcml2YXRlIF9jbG9zZWRQcm9taXNlOiBQcm9taXNlPHZvaWQ+O1xuXHRwcml2YXRlIF9zdG9yZWRFcnJvcjogRXJyb3I7XG5cdHByaXZhdGUgX3JlYWRSZXF1ZXN0czogUmVhZFJlcXVlc3Q8VD5bXTtcblx0cHJpdmF0ZSBfcmVzb2x2ZUNsb3NlZFByb21pc2U6ICgpID0+IHZvaWQ7XG5cdHByaXZhdGUgX3JlamVjdENsb3NlZFByb21pc2U6IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XG5cblx0cHJvdGVjdGVkIF9vd25lclJlYWRhYmxlU3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxUPjtcblxuXHRzdGF0ZTogU3RhdGU7XG5cblx0Y29uc3RydWN0b3Ioc3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxUPikge1xuXHRcdGlmICghc3RyZWFtLnJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjQuMy0xOiBzdHJlYW0gbXVzdCBiZSBhIFJlYWRhYmxlU3RyZWFtJyk7XG5cdFx0fVxuXG5cdFx0aWYgKHN0cmVhbS5sb2NrZWQpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuNC4zLTI6IHN0cmVhbSBjYW5ub3QgYmUgbG9ja2VkJyk7XG5cdFx0fVxuXG5cdFx0c3RyZWFtLnJlYWRlciA9IHRoaXM7XG5cdFx0dGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbSA9IHN0cmVhbTtcblx0XHR0aGlzLnN0YXRlID0gU3RhdGUuUmVhZGFibGU7XG5cdFx0dGhpcy5fc3RvcmVkRXJyb3IgPSB1bmRlZmluZWQ7XG5cdFx0dGhpcy5fcmVhZFJlcXVlc3RzID0gW107XG5cdFx0dGhpcy5fY2xvc2VkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdHRoaXMuX3Jlc29sdmVDbG9zZWRQcm9taXNlID0gcmVzb2x2ZTtcblx0XHRcdHRoaXMuX3JlamVjdENsb3NlZFByb21pc2UgPSByZWplY3Q7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQ2FuY2VsIGEgc3RyZWFtLiBUaGUgcmVhZGVyIGlzIHJlbGVhc2VkIGFuZCB0aGUgc3RyZWFtIGlzIGNsb3NlZC4ge0BsaW5rIFJlYWRhYmxlU3RyZWFtLlNvdXJjZSNjYW5jZWx9IGlzXG5cdCAqIGNhbGxlZCB3aXRoIHRoZSBwcm92aWRlZCBgcmVhc29uYC5cblx0ICpcblx0ICogQHBhcmFtIHJlYXNvbiBUaGUgcmVhc29uIGZvciBjYW5jZWxpbmcgdGhlIHN0cmVhbVxuXHQgKi9cblx0Y2FuY2VsKHJlYXNvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKCFpc1JlYWRhYmxlU3RyZWFtUmVhZGVyKHRoaXMpKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignMy40LjQuMi0xOiBNdXN0IGJlIGEgUmVhZGFibGVTdHJlYW1SZWFkZXIgaW5zdGFuY2UnKSk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkNsb3NlZCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QodGhpcy5fc3RvcmVkRXJyb3IpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtICYmIHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RhdGUgPT09IFN0YXRlLlJlYWRhYmxlKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5jYW5jZWwocmVhc29uKTtcblx0XHR9XG5cblx0XHQvLyAzLjQuNC4yLTQsNSAtIHRoZSBzcGVjIGNhbGxzIGZvciB0aGlzIHRvIHRocm93IGFuIGVycm9yLiBXZSBoYXZlIGNoYW5nZWQgaXQgdG8gcmVqZWN0IGluc3RlYWRcblx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignMy40LjQuMi00LDU6IENhbm5vdCBjYW5jZWwgUmVhZGFibGVTdHJlYW1SZWFkZXInKSk7XG5cdH1cblxuXHQvKipcblx0ICogUmVhZCBkYXRhIGZyb20gdGhlIHN0cmVhbS5cblx0ICpcblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSB7QGxpbmsgUmVhZFJlc3VsdH0uXG5cdCAqL1xuXHQvLyBUaGlzIG1ldGhvZCBhbHNvIGluY29ycG9yYXRlcyB0aGUgUmVhZEZyb21SZWFkYWJsZVN0cmVhbVJlYWRlciBmcm9tIDMuNS4xMi5cblx0cmVhZCgpOiBQcm9taXNlPFJlYWRSZXN1bHQ8VD4+IHtcblx0XHRpZiAoIWlzUmVhZGFibGVTdHJlYW1SZWFkZXIodGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdDxSZWFkUmVzdWx0PFQ+PihuZXcgVHlwZUVycm9yKCczLjQuNC4zLTE6IE11c3QgYmUgYSBSZWFkYWJsZVN0cmVhbVJlYWRlciBpbnN0YW5jZScpKTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2VkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtcblx0XHRcdFx0dmFsdWU6IHVuZGVmaW5lZCxcblx0XHRcdFx0ZG9uZTogdHJ1ZVxuXHRcdFx0fSk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkVycm9yZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdDxSZWFkUmVzdWx0PFQ+PihuZXcgVHlwZUVycm9yKCczLjUuMTItMjogcmVhZGVyIHN0YXRlIGlzIEVycm9yZWQnKSk7XG5cdFx0fVxuXG5cdFx0Y29uc3Qgc3RyZWFtID0gdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbTtcblx0XHRpZiAoIXN0cmVhbSB8fCBzdHJlYW0uc3RhdGUgIT09IFN0YXRlLlJlYWRhYmxlKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCczLjUuMTItMyw0OiBTdHJlYW0gbXVzdCBleGlzdCBhbmQgYmUgcmVhZGFibGUnKTtcblx0XHR9XG5cblx0XHRjb25zdCBxdWV1ZSA9IHN0cmVhbS5xdWV1ZTtcblx0XHRpZiAocXVldWUubGVuZ3RoID4gMCkge1xuXHRcdFx0Y29uc3QgY2h1bmsgPSBxdWV1ZS5kZXF1ZXVlKCk7XG5cdFx0XHRpZiAoc3RyZWFtLmNsb3NlUmVxdWVzdGVkICYmICFxdWV1ZS5sZW5ndGgpIHtcblx0XHRcdFx0c3RyZWFtLmNsb3NlKCk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0c3RyZWFtLnB1bGwoKTtcblx0XHRcdH1cblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuXHRcdFx0XHR2YWx1ZTogY2h1bmssXG5cdFx0XHRcdGRvbmU6IGZhbHNlXG5cdFx0XHR9KTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRjb25zdCByZWFkUHJvbWlzZSA9IG5ldyBQcm9taXNlPFJlYWRSZXN1bHQ8VD4+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdFx0dGhpcy5fcmVhZFJlcXVlc3RzLnB1c2goe1xuXHRcdFx0XHRcdHByb21pc2U6IHJlYWRQcm9taXNlLFxuXHRcdFx0XHRcdHJlc29sdmU6IHJlc29sdmUsXG5cdFx0XHRcdFx0cmVqZWN0OiByZWplY3Rcblx0XHRcdFx0fSk7XG5cdFx0XHRcdHN0cmVhbS5wdWxsKCk7XG5cdFx0XHR9KTtcblxuXHRcdFx0cmV0dXJuIHJlYWRQcm9taXNlO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBSZWxlYXNlIGEgcmVhZGVyJ3MgbG9jayBvbiB0aGUgY29ycmVzcG9uZGluZyBzdHJlYW0uIFRoZSByZWFkZXIgd2lsbCBubyBsb25nZXIgYmUgcmVhZGFibGUuIEZ1cnRoZXIgcmVhZGluZyBvblxuXHQgKiB0aGUgc3RyZWFtIGNhbiBiZSBkb25lIGJ5IGFjcXVpcmluZyBhIG5ldyBgUmVhZGFibGVTdHJlYW1SZWFkZXJgLlxuXHQgKi9cblx0Ly8gMy40LjQuNC4gcmVsZWFzZUxvY2soKVxuXHRyZWxlYXNlTG9jaygpOiB2b2lkIHtcblx0XHRpZiAoIWlzUmVhZGFibGVTdHJlYW1SZWFkZXIodGhpcykpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuNC40LjQtMTogTXVzdCBiZSBhIFJlYWRhYmxlU3RyZWFtUmVhZGVyIGlzbnRhbmNlJyk7XG5cdFx0fVxuXG5cdFx0aWYgKCF0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuX3JlYWRSZXF1ZXN0cy5sZW5ndGgpIHtcblx0XHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJzMuNC40LjQtMzogVHJpZWQgdG8gcmVsZWFzZSBhIHJlYWRlciBsb2NrIHdoZW4gdGhhdCByZWFkZXIgaGFzIHBlbmRpbmcgcmVhZCBjYWxscyB1bi1zZXR0bGVkJyk7XG5cdFx0fVxuXG5cdFx0dGhpcy5yZWxlYXNlKCk7XG5cdH1cblxuXHQvLyAzLjUuMTMuIFJlbGVhc2VSZWFkYWJsZVN0cmVhbVJlYWRlciAoIHJlYWRlciApXG5cdHJlbGVhc2UoKTogdm9pZCB7XG5cdFx0bGV0IHJlcXVlc3Q6IGFueTtcblx0XHRpZiAodGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5zdGF0ZSA9PT0gU3RhdGUuRXJyb3JlZCkge1xuXHRcdFx0dGhpcy5zdGF0ZSA9IFN0YXRlLkVycm9yZWQ7XG5cblx0XHRcdGNvbnN0IGUgPSB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnN0b3JlZEVycm9yO1xuXHRcdFx0dGhpcy5fc3RvcmVkRXJyb3IgPSBlO1xuXHRcdFx0dGhpcy5fcmVqZWN0Q2xvc2VkUHJvbWlzZShlKTtcblxuXHRcdFx0Zm9yIChyZXF1ZXN0IG9mIHRoaXMuX3JlYWRSZXF1ZXN0cykge1xuXHRcdFx0XHRyZXF1ZXN0LnJlamVjdChlKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHR0aGlzLnN0YXRlID0gU3RhdGUuQ2xvc2VkO1xuXHRcdFx0dGhpcy5fcmVzb2x2ZUNsb3NlZFByb21pc2UoKTtcblx0XHRcdGZvciAocmVxdWVzdCBvZiB0aGlzLl9yZWFkUmVxdWVzdHMpIHtcblx0XHRcdFx0cmVxdWVzdC5yZXNvbHZlKHtcblx0XHRcdFx0XHR2YWx1ZTogdW5kZWZpbmVkLFxuXHRcdFx0XHRcdGRvbmU6IHRydWVcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5fcmVhZFJlcXVlc3RzID0gW107XG5cdFx0dGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5yZWFkZXIgPSB1bmRlZmluZWQ7XG5cdFx0dGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbSA9IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXNvbHZlcyBhIHBlbmRpbmcgcmVhZCByZXF1ZXN0LCBpZiBhbnksIHdpdGggdGhlIHByb3ZpZGVkIGNodW5rLlxuXHQgKiBAcGFyYW0gY2h1bmtcblx0ICogQHJldHVybiBib29sZWFuIFRydWUgaWYgYSByZWFkIHJlcXVlc3Qgd2FzIHJlc29sdmVkLlxuXHQgKi9cblx0cmVzb2x2ZVJlYWRSZXF1ZXN0KGNodW5rOiBUKTogYm9vbGVhbiB7XG5cdFx0aWYgKHRoaXMuX3JlYWRSZXF1ZXN0cy5sZW5ndGggPiAwKSB7XG5cdFx0XHR0aGlzLl9yZWFkUmVxdWVzdHMuc2hpZnQoKS5yZXNvbHZlKHtcblx0XHRcdFx0dmFsdWU6IGNodW5rLFxuXHRcdFx0XHRkb25lOiBmYWxzZVxuXHRcdFx0fSk7XG5cdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHR9XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG59XG4iXX0= |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -53,3 +54,3 @@ var ReadableStream_1 = require('./ReadableStream'); | ||
else { | ||
var discardNext = function () { | ||
var discardNext_1 = function () { | ||
return _this.reader.read().then(function (result) { | ||
@@ -60,7 +61,7 @@ if (result.done || _this.reader.currentPosition === position) { | ||
else { | ||
return discardNext(); | ||
return discardNext_1(); | ||
} | ||
}); | ||
}; | ||
return discardNext(); | ||
return discardNext_1(); | ||
} | ||
@@ -77,6 +78,6 @@ } | ||
return SeekableStream; | ||
})(ReadableStream_1.default); | ||
}(ReadableStream_1.default)); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = SeekableStream; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Vla2FibGVTdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9TZWVrYWJsZVN0cmVhbS50cyJdLCJuYW1lcyI6WyJTZWVrYWJsZVN0cmVhbSIsIlNlZWthYmxlU3RyZWFtLmNvbnN0cnVjdG9yIiwiU2Vla2FibGVTdHJlYW0uZ2V0UmVhZGVyIiwiU2Vla2FibGVTdHJlYW0ucmVxdWVzdENsb3NlIiwiU2Vla2FibGVTdHJlYW0uc2VlayIsIlNlZWthYmxlU3RyZWFtLnN0cmF0ZWd5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0lBQ0Esd0JBQW9CLFlBQVksQ0FBQyxDQUFBO0lBQ2pDLCtCQUF1QyxrQkFBa0IsQ0FBQyxDQUFBO0lBRTFELHFDQUFpQyx3QkFBd0IsQ0FBQyxDQUFBO0lBRTFEO1FBQStDQSxrQ0FBaUJBO1FBSS9EQTs7Ozs7V0FLR0E7UUFDSEEsd0JBQVlBLGdCQUEyQkEsRUFBRUEsUUFBMEJBLEVBQUVBLFlBQTRCQTtZQUF4REMsd0JBQTBCQSxHQUExQkEsYUFBMEJBO1lBQUVBLDRCQUE0QkEsR0FBNUJBLG1CQUE0QkE7WUFDaEdBLGtCQUFNQSxnQkFBZ0JBLEVBQUVBLFFBQVFBLENBQUNBLENBQUNBO1lBRWxDQSxJQUFJQSxDQUFDQSxZQUFZQSxHQUFHQSxZQUFZQSxDQUFDQTtRQUNsQ0EsQ0FBQ0E7UUFFREQsa0NBQVNBLEdBQVRBO1lBQ0NFLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLFFBQVFBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLENBQUNBLENBQUNBO2dCQUNsQ0EsTUFBTUEsSUFBSUEsU0FBU0EsQ0FBQ0EsbUNBQW1DQSxDQUFDQSxDQUFDQTtZQUMxREEsQ0FBQ0E7WUFFREEsTUFBTUEsQ0FBQ0EsSUFBSUEsOEJBQW9CQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQTtRQUN2Q0EsQ0FBQ0E7UUFFREYscUNBQVlBLEdBQVpBO1lBQ0NHLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLFlBQVlBLENBQUNBLENBQUNBLENBQUNBO2dCQUN4QkEsZ0JBQUtBLENBQUNBLFlBQVlBLFdBQUVBLENBQUNBO1lBQ3RCQSxDQUFDQTtRQUNGQSxDQUFDQTtRQUVESCw2QkFBSUEsR0FBSkEsVUFBS0EsUUFBZ0JBO1lBQXJCSSxpQkF1QkNBO1lBdEJBQSxFQUFFQSxDQUFDQSxDQUFDQSxJQUFJQSxDQUFDQSxpQkFBaUJBLENBQUNBLElBQUlBLENBQUNBLENBQUNBLENBQUNBO2dCQUNqQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsaUJBQWlCQSxDQUFDQSxJQUFJQSxDQUFDQSxJQUFJQSxDQUFDQSxVQUFVQSxFQUFFQSxRQUFRQSxDQUFDQSxDQUFDQTtZQUMvREEsQ0FBQ0E7WUFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7Z0JBQ0xBLEVBQUVBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLE1BQU1BLElBQUlBLFFBQVFBLEdBQUdBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLGVBQWVBLENBQUNBLENBQUNBLENBQUNBO29CQUMzREEsTUFBTUEsQ0FBQ0EsaUJBQU9BLENBQUNBLE1BQU1BLENBQUNBLElBQUlBLEtBQUtBLENBQUNBLHNEQUFzREEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0JBQzFGQSxDQUFDQTtnQkFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7b0JBQ0xBLElBQUlBLFdBQVdBLEdBQUdBO3dCQUNqQkEsTUFBTUEsQ0FBQ0EsS0FBSUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsRUFBRUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsVUFBQ0EsTUFBcUJBOzRCQUNwREEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsSUFBSUEsS0FBSUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsZUFBZUEsS0FBS0EsUUFBUUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7Z0NBQzdEQSxNQUFNQSxDQUFDQSxpQkFBT0EsQ0FBQ0EsT0FBT0EsQ0FBQ0EsS0FBSUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsZUFBZUEsQ0FBQ0EsQ0FBQ0E7NEJBQ3JEQSxDQUFDQTs0QkFDREEsSUFBSUEsQ0FBQ0EsQ0FBQ0E7Z0NBQ0xBLE1BQU1BLENBQUNBLFdBQVdBLEVBQUVBLENBQUNBOzRCQUN0QkEsQ0FBQ0E7d0JBQ0ZBLENBQUNBLENBQUNBLENBQUNBO29CQUNKQSxDQUFDQSxDQUFDQTtvQkFFRkEsTUFBTUEsQ0FBQ0EsV0FBV0EsRUFBRUEsQ0FBQ0E7Z0JBQ3RCQSxDQUFDQTtZQUNGQSxDQUFDQTtRQUNGQSxDQUFDQTtRQUVESixzQkFBSUEsb0NBQVFBO2lCQUFaQTtnQkFDQ0ssTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsU0FBU0EsQ0FBQ0E7WUFDdkJBLENBQUNBOzs7V0FBQUw7UUFDRkEscUJBQUNBO0lBQURBLENBQUNBLEFBMURELEVBQStDLHdCQUFjLEVBMEQ1RDtJQTFERDtvQ0EwREMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtLCB7IFNvdXJjZSB9IGZyb20gJy4vUmVhZGFibGVTdHJlYW0nO1xuaW1wb3J0IHsgUmVhZFJlc3VsdCB9IGZyb20gJy4vUmVhZGFibGVTdHJlYW1SZWFkZXInO1xuaW1wb3J0IFNlZWthYmxlU3RyZWFtUmVhZGVyIGZyb20gJy4vU2Vla2FibGVTdHJlYW1SZWFkZXInO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTZWVrYWJsZVN0cmVhbTxUPiBleHRlbmRzIFJlYWRhYmxlU3RyZWFtPFQ+IHtcblx0cHJldmVudENsb3NlOiBib29sZWFuO1xuXHRyZWFkZXI6IFNlZWthYmxlU3RyZWFtUmVhZGVyPFQ+O1xuXG5cdC8qKlxuXHQgKiBAcGFyYW0gcHJldmVudENsb3NlIChkZWZhdWx0PXRydWUpIFByZXZlbnQgdGhlIHN0cmVhbSBmcm9tIGNsb3Npbmcgd2hlbiBpdCByZWFjaGVzIHRoZSBlbmQuXG5cdCAqIElmIHRydWUsIHRoZSBzdHJlYW0gd2lsbCBub3QgY2xvc2Ugd2hlbiByZXF1ZXN0Q2xvc2UgaXMgY2FsbGVkIG9uIHRoZSBjb250cm9sbGVyICh3aGljaCBpcyB0eXBpY2FsbHkgZG9uZSBieSB0aGVcblx0ICogc291cmNlIHdoZW4gaXQgcmVhY2hlcyBpdHMgZW5kKS4gVGhpcyBhbGxvd3MgZm9yIHJlLXNlZWtpbmcgaW4gYSBzdHJlYW0gdGhhdCBoYXMgYWxyZWFkeSBiZWVuIHJlYWQgdG8gdGhlIGVuZC5cblx0ICogVGhlIHN0cmVhbSBjYW4gYmUgY2xvc2VkIGJ5IGNhbGxpbmcgUmVhZGFibGVTdHJlYW0jY2xvc2UuXG5cdCAqL1xuXHRjb25zdHJ1Y3Rvcih1bmRlcmx5aW5nU291cmNlOiBTb3VyY2U8VD4sIHN0cmF0ZWd5OiBTdHJhdGVneTxUPiA9IHt9LCBwcmV2ZW50Q2xvc2U6IGJvb2xlYW4gPSB0cnVlKSB7XG5cdFx0c3VwZXIodW5kZXJseWluZ1NvdXJjZSwgc3RyYXRlZ3kpO1xuXG5cdFx0dGhpcy5wcmV2ZW50Q2xvc2UgPSBwcmV2ZW50Q2xvc2U7XG5cdH1cblxuXHRnZXRSZWFkZXIoKTogU2Vla2FibGVTdHJlYW1SZWFkZXI8VD4ge1xuXHRcdGlmICghdGhpcy5yZWFkYWJsZSB8fCAhdGhpcy5zZWVrKSB7XG5cdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdNdXN0IGJlIGEgU2Vla2FibGVTdHJlYW0gaW5zdGFuY2UnKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gbmV3IFNlZWthYmxlU3RyZWFtUmVhZGVyKHRoaXMpO1xuXHR9XG5cblx0cmVxdWVzdENsb3NlKCk6IHZvaWQge1xuXHRcdGlmICghdGhpcy5wcmV2ZW50Q2xvc2UpIHtcblx0XHRcdHN1cGVyLnJlcXVlc3RDbG9zZSgpO1xuXHRcdH1cblx0fVxuXG5cdHNlZWsocG9zaXRpb246IG51bWJlcik6IFByb21pc2U8bnVtYmVyPiB7XG5cdFx0aWYgKHRoaXMuX3VuZGVybHlpbmdTb3VyY2Uuc2Vlaykge1xuXHRcdFx0cmV0dXJuIHRoaXMuX3VuZGVybHlpbmdTb3VyY2Uuc2Vlayh0aGlzLmNvbnRyb2xsZXIsIHBvc2l0aW9uKTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRpZiAodGhpcy5yZWFkZXIgJiYgcG9zaXRpb24gPCB0aGlzLnJlYWRlci5jdXJyZW50UG9zaXRpb24pIHtcblx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignU3RyZWFtIHNvdXJjZSBpcyBub3Qgc2Vla2FibGU7IGNhbm5vdCBzZWVrIGJhY2t3YXJkcycpKTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHRsZXQgZGlzY2FyZE5leHQgPSAoKTogUHJvbWlzZTxudW1iZXI+ID0+IHtcblx0XHRcdFx0XHRyZXR1cm4gdGhpcy5yZWFkZXIucmVhZCgpLnRoZW4oKHJlc3VsdDogUmVhZFJlc3VsdDxUPikgPT4ge1xuXHRcdFx0XHRcdFx0aWYgKHJlc3VsdC5kb25lIHx8IHRoaXMucmVhZGVyLmN1cnJlbnRQb3NpdGlvbiA9PT0gcG9zaXRpb24pIHtcblx0XHRcdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLnJlYWRlci5jdXJyZW50UG9zaXRpb24pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0XHRcdHJldHVybiBkaXNjYXJkTmV4dCgpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9O1xuXG5cdFx0XHRcdHJldHVybiBkaXNjYXJkTmV4dCgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdGdldCBzdHJhdGVneSgpIHtcblx0XHRyZXR1cm4gdGhpcy5fc3RyYXRlZ3k7XG5cdH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Vla2FibGVTdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9TZWVrYWJsZVN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztJQUNBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUNqQywrQkFBdUMsa0JBQWtCLENBQUMsQ0FBQTtJQUUxRCxxQ0FBaUMsd0JBQXdCLENBQUMsQ0FBQTtJQUUxRDtRQUErQyxrQ0FBaUI7UUFJL0Q7Ozs7O1dBS0c7UUFDSCx3QkFBWSxnQkFBMkIsRUFBRSxRQUEwQixFQUFFLFlBQTRCO1lBQXhELHdCQUEwQixHQUExQixhQUEwQjtZQUFFLDRCQUE0QixHQUE1QixtQkFBNEI7WUFDaEcsa0JBQU0sZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDbEMsQ0FBQztRQUVELGtDQUFTLEdBQVQ7WUFDQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDbEMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1lBQzFELENBQUM7WUFFRCxNQUFNLENBQUMsSUFBSSw4QkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBRUQscUNBQVksR0FBWjtZQUNDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLGdCQUFLLENBQUMsWUFBWSxXQUFFLENBQUM7WUFDdEIsQ0FBQztRQUNGLENBQUM7UUFFRCw2QkFBSSxHQUFKLFVBQUssUUFBZ0I7WUFBckIsaUJBdUJDO1lBdEJBLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNqQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQy9ELENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDTCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7b0JBQzNELE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDLENBQUM7Z0JBQzFGLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLENBQUM7b0JBQ0wsSUFBSSxhQUFXLEdBQUc7d0JBQ2pCLE1BQU0sQ0FBQyxLQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFDLE1BQXFCOzRCQUNwRCxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEtBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0NBQzdELE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sQ0FBQyxLQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDOzRCQUNyRCxDQUFDOzRCQUNELElBQUksQ0FBQyxDQUFDO2dDQUNMLE1BQU0sQ0FBQyxhQUFXLEVBQUUsQ0FBQzs0QkFDdEIsQ0FBQzt3QkFDRixDQUFDLENBQUMsQ0FBQztvQkFDSixDQUFDLENBQUM7b0JBRUYsTUFBTSxDQUFDLGFBQVcsRUFBRSxDQUFDO2dCQUN0QixDQUFDO1lBQ0YsQ0FBQztRQUNGLENBQUM7UUFFRCxzQkFBSSxvQ0FBUTtpQkFBWjtnQkFDQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN2QixDQUFDOzs7V0FBQTtRQUNGLHFCQUFDO0lBQUQsQ0FBQyxBQTFERCxDQUErQyx3QkFBYyxHQTBENUQ7SUExREQ7b0NBMERDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdHJhdGVneSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgUHJvbWlzZSBmcm9tICcuLi9Qcm9taXNlJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbSwgeyBTb3VyY2UgfSBmcm9tICcuL1JlYWRhYmxlU3RyZWFtJztcbmltcG9ydCB7IFJlYWRSZXN1bHQgfSBmcm9tICcuL1JlYWRhYmxlU3RyZWFtUmVhZGVyJztcbmltcG9ydCBTZWVrYWJsZVN0cmVhbVJlYWRlciBmcm9tICcuL1NlZWthYmxlU3RyZWFtUmVhZGVyJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2Vla2FibGVTdHJlYW08VD4gZXh0ZW5kcyBSZWFkYWJsZVN0cmVhbTxUPiB7XG5cdHByZXZlbnRDbG9zZTogYm9vbGVhbjtcblx0cmVhZGVyOiBTZWVrYWJsZVN0cmVhbVJlYWRlcjxUPjtcblxuXHQvKipcblx0ICogQHBhcmFtIHByZXZlbnRDbG9zZSAoZGVmYXVsdD10cnVlKSBQcmV2ZW50IHRoZSBzdHJlYW0gZnJvbSBjbG9zaW5nIHdoZW4gaXQgcmVhY2hlcyB0aGUgZW5kLlxuXHQgKiBJZiB0cnVlLCB0aGUgc3RyZWFtIHdpbGwgbm90IGNsb3NlIHdoZW4gcmVxdWVzdENsb3NlIGlzIGNhbGxlZCBvbiB0aGUgY29udHJvbGxlciAod2hpY2ggaXMgdHlwaWNhbGx5IGRvbmUgYnkgdGhlXG5cdCAqIHNvdXJjZSB3aGVuIGl0IHJlYWNoZXMgaXRzIGVuZCkuIFRoaXMgYWxsb3dzIGZvciByZS1zZWVraW5nIGluIGEgc3RyZWFtIHRoYXQgaGFzIGFscmVhZHkgYmVlbiByZWFkIHRvIHRoZSBlbmQuXG5cdCAqIFRoZSBzdHJlYW0gY2FuIGJlIGNsb3NlZCBieSBjYWxsaW5nIFJlYWRhYmxlU3RyZWFtI2Nsb3NlLlxuXHQgKi9cblx0Y29uc3RydWN0b3IodW5kZXJseWluZ1NvdXJjZTogU291cmNlPFQ+LCBzdHJhdGVneTogU3RyYXRlZ3k8VD4gPSB7fSwgcHJldmVudENsb3NlOiBib29sZWFuID0gdHJ1ZSkge1xuXHRcdHN1cGVyKHVuZGVybHlpbmdTb3VyY2UsIHN0cmF0ZWd5KTtcblxuXHRcdHRoaXMucHJldmVudENsb3NlID0gcHJldmVudENsb3NlO1xuXHR9XG5cblx0Z2V0UmVhZGVyKCk6IFNlZWthYmxlU3RyZWFtUmVhZGVyPFQ+IHtcblx0XHRpZiAoIXRoaXMucmVhZGFibGUgfHwgIXRoaXMuc2Vlaykge1xuXHRcdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignTXVzdCBiZSBhIFNlZWthYmxlU3RyZWFtIGluc3RhbmNlJyk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG5ldyBTZWVrYWJsZVN0cmVhbVJlYWRlcih0aGlzKTtcblx0fVxuXG5cdHJlcXVlc3RDbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAoIXRoaXMucHJldmVudENsb3NlKSB7XG5cdFx0XHRzdXBlci5yZXF1ZXN0Q2xvc2UoKTtcblx0XHR9XG5cdH1cblxuXHRzZWVrKHBvc2l0aW9uOiBudW1iZXIpOiBQcm9taXNlPG51bWJlcj4ge1xuXHRcdGlmICh0aGlzLl91bmRlcmx5aW5nU291cmNlLnNlZWspIHtcblx0XHRcdHJldHVybiB0aGlzLl91bmRlcmx5aW5nU291cmNlLnNlZWsodGhpcy5jb250cm9sbGVyLCBwb3NpdGlvbik7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0aWYgKHRoaXMucmVhZGVyICYmIHBvc2l0aW9uIDwgdGhpcy5yZWFkZXIuY3VycmVudFBvc2l0aW9uKSB7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1N0cmVhbSBzb3VyY2UgaXMgbm90IHNlZWthYmxlOyBjYW5ub3Qgc2VlayBiYWNrd2FyZHMnKSk7XG5cdFx0XHR9XG5cdFx0XHRlbHNlIHtcblx0XHRcdFx0bGV0IGRpc2NhcmROZXh0ID0gKCk6IFByb21pc2U8bnVtYmVyPiA9PiB7XG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMucmVhZGVyLnJlYWQoKS50aGVuKChyZXN1bHQ6IFJlYWRSZXN1bHQ8VD4pID0+IHtcblx0XHRcdFx0XHRcdGlmIChyZXN1bHQuZG9uZSB8fCB0aGlzLnJlYWRlci5jdXJyZW50UG9zaXRpb24gPT09IHBvc2l0aW9uKSB7XG5cdFx0XHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5yZWFkZXIuY3VycmVudFBvc2l0aW9uKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gZGlzY2FyZE5leHQoKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fTtcblxuXHRcdFx0XHRyZXR1cm4gZGlzY2FyZE5leHQoKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRnZXQgc3RyYXRlZ3koKSB7XG5cdFx0cmV0dXJuIHRoaXMuX3N0cmF0ZWd5O1xuXHR9XG59XG4iXX0= |
@@ -14,2 +14,3 @@ var __extends = (this && this.__extends) || function (d, b) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -85,6 +86,6 @@ var ReadableStreamReader_1 = require('./ReadableStreamReader'); | ||
return SeekableStreamReader; | ||
})(ReadableStreamReader_1.default); | ||
}(ReadableStreamReader_1.default)); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = SeekableStreamReader; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Vla2FibGVTdHJlYW1SZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9TZWVrYWJsZVN0cmVhbVJlYWRlci50cyJdLCJuYW1lcyI6WyJTZWVrYWJsZVN0cmVhbVJlYWRlciIsIlNlZWthYmxlU3RyZWFtUmVhZGVyLmNvbnN0cnVjdG9yIiwiU2Vla2FibGVTdHJlYW1SZWFkZXIuY3VycmVudFBvc2l0aW9uIiwiU2Vla2FibGVTdHJlYW1SZWFkZXIucmVhZCIsIlNlZWthYmxlU3RyZWFtUmVhZGVyLnNlZWsiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7SUFBQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFDakMscUNBQWlELHdCQUF3QixDQUFDLENBQUE7SUFHMUU7UUFBcURBLHdDQUF1QkE7UUFBNUVBO1lBQXFEQyw4QkFBdUJBO1lBQ2pFQSxxQkFBZ0JBLEdBQVdBLENBQUNBLENBQUNBO1FBdUV4Q0EsQ0FBQ0E7UUFwRUFELHNCQUFJQSxpREFBZUE7aUJBQW5CQTtnQkFDQ0UsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsZ0JBQWdCQSxDQUFDQTtZQUM5QkEsQ0FBQ0E7OztXQUFBRjtRQUVEQSxtQ0FBSUEsR0FBSkE7WUFBQUcsaUJBdUJDQTtZQXRCQUEsTUFBTUEsQ0FBQ0EsZ0JBQUtBLENBQUNBLElBQUlBLFdBQUVBLENBQUNBLElBQUlBLENBQUNBLFVBQUNBLE1BQXFCQTtnQkFDOUNBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLENBQUNBLENBQUNBO29CQUNsQkEsSUFBSUEsU0FBU0EsR0FBR0EsQ0FBQ0EsQ0FBQ0E7b0JBRWxCQSxJQUFJQSxDQUFDQTt3QkFDSkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsS0FBSUEsQ0FBQ0Esb0JBQW9CQSxDQUFDQSxRQUFRQSxJQUFJQSxLQUFJQSxDQUFDQSxvQkFBb0JBLENBQUNBLFFBQVFBLENBQUNBLElBQUlBLENBQUNBLENBQUNB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O1lBRURBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLG9CQUFvQkEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsUUFBUUEsQ0FBQ0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsVUFBQ0EsUUFBZ0JBO2dCQUNyRUEsS0FBSUEsQ0FBQ0EsZ0JBQWdCQSxHQUFHQSxRQUFRQSxDQUFDQTtnQkFFakNBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxPQUFPQSxDQUFDQSxRQUFRQSxDQUFDQSxDQUFDQTtZQUNsQ0EsQ0FBQ0EsRUFBRUEsVUFBQ0EsS0FBWUE7Z0JBQ2ZBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxNQUFNQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtZQUM5QkEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDSkEsQ0FBQ0E7UUFDRkosMkJBQUNBO0lBQURBLENBQUNBLEFBeEVELEVBQXFELDhCQUFvQixFQXdFeEU7SUF4RUQ7MENBd0VDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvbWlzZSBmcm9tICcuLi9Qcm9taXNlJztcbmltcG9ydCBSZWFkYWJsZVN0cmVhbVJlYWRlciwgeyBSZWFkUmVzdWx0IH0gZnJvbSAnLi9SZWFkYWJsZVN0cmVhbVJlYWRlcic7XG5pbXBvcnQgU2Vla2FibGVTdHJlYW0gZnJvbSAnLi9TZWVrYWJsZVN0cmVhbSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNlZWthYmxlU3RyZWFtUmVhZGVyPFQ+IGV4dGVuZHMgUmVhZGFibGVTdHJlYW1SZWFkZXI8VD4ge1xuXHRwcm90ZWN0ZWQgX2N1cnJlbnRQb3NpdGlvbjogbnVtYmVyID0gMDtcblx0cHJvdGVjdGVkIF9vd25lclJlYWRhYmxlU3RyZWFtOiBTZWVrYWJsZVN0cmVhbTxUPjtcblxuXHRnZXQgY3VycmVudFBvc2l0aW9uKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX2N1cnJlbnRQb3NpdGlvbjtcblx0fVxuXG5cdHJlYWQoKTogUHJvbWlzZTxSZWFkUmVzdWx0PFQ+PiB7XG5cdFx0cmV0dXJuIHN1cGVyLnJlYWQoKS50aGVuKChyZXN1bHQ6IFJlYWRSZXN1bHQ8VD4pID0+IHtcblx0XHRcdGlmICghcmVzdWx0LmRvbmUpIHtcblx0XHRcdFx0bGV0IGNodW5rU2l6ZSA9IDE7XG5cblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHRpZiAodGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5zdHJhdGVneSAmJiB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnN0cmF0ZWd5LnNpemUpIHtcblx0XHRcdFx0XHRcdGNodW5rU2l6ZSA9IHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RyYXRlZ3kuc2l6ZShyZXN1bHQudmFsdWUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHR0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLmVycm9yKGVycm9yKTtcblxuXHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0aGlzLl9jdXJyZW50UG9zaXRpb24gKz0gY2h1bmtTaXplO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCk7XG5cdFx0fSwgZnVuY3Rpb24gKGVycm9yOiBFcnJvcikge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0XHR9KTtcblx0fVxuXG5cdHNlZWsocG9zaXRpb246IG51bWJlcik6IFByb21pc2U8bnVtYmVyPiB7XG5cdFx0aWYgKHBvc2l0aW9uID09PSB0aGlzLl9jdXJyZW50UG9zaXRpb24pIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5fY3VycmVudFBvc2l0aW9uKTtcblx0XHR9XG5cblx0XHRpZiAocG9zaXRpb24gPCB0aGlzLl9jdXJyZW50UG9zaXRpb24pIHtcblx0XHRcdHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0ucXVldWUuZW1wdHkoKTtcblx0XHR9XG5cblx0XHQvLyBEcmFpbiB0aGUgcXVldWUgb2YgYW55IGl0ZW1zIHByaW9yIHRvIHRoZSBkZXNpcmVkIHNlZWsgcG9zaXRpb25cblx0XHR3aGlsZSAocG9zaXRpb24gPiB0aGlzLl9jdXJyZW50UG9zaXRpb24gJiYgdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5xdWV1ZS5sZW5ndGgpIHtcblx0XHRcdGxldCBjaHVua1NpemUgPSAxO1xuXHRcdFx0bGV0IGNodW5rID0gdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5xdWV1ZS5kZXF1ZXVlKCk7XG5cblx0XHRcdGlmICh0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnN0cmF0ZWd5ICYmIHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RyYXRlZ3kuc2l6ZSkge1xuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdGNodW5rU2l6ZSA9IHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RyYXRlZ3kuc2l6ZShjaHVuayk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLl9jdXJyZW50UG9zaXRpb24gKz0gY2h1bmtTaXplO1xuXHRcdH1cblxuXHRcdC8vIElmIHRoZXJlJ3MgYW55dGhpbmcgbGVmdCBpbiB0aGUgcXVldWUsIHdlIGRvbid0IG5lZWQgdG8gc2VlayBpbiB0aGUgc291cmNlLCB3ZSBjYW4gcmVhZCBmcm9tIHRoZSBxdWV1ZVxuXHRcdGlmICh0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnF1ZXVlLmxlbmd0aCkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9jdXJyZW50UG9zaXRpb24pO1xuXHRcdH1cblxuXHRcdHJldHVybiB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnNlZWsocG9zaXRpb24pLnRoZW4oKHBvc2l0aW9uOiBudW1iZXIpID0+IHtcblx0XHRcdHRoaXMuX2N1cnJlbnRQb3NpdGlvbiA9IHBvc2l0aW9uO1xuXG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBvc2l0aW9uKTtcblx0XHR9LCAoZXJyb3I6IEVycm9yKSA9PiB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Vla2FibGVTdHJlYW1SZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9TZWVrYWJsZVN0cmVhbVJlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztJQUFBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUNqQyxxQ0FBaUQsd0JBQXdCLENBQUMsQ0FBQTtJQUcxRTtRQUFxRCx3Q0FBdUI7UUFBNUU7WUFBcUQsOEJBQXVCO1lBQ2pFLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQXVFeEMsQ0FBQztRQXBFQSxzQkFBSSxpREFBZTtpQkFBbkI7Z0JBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUM5QixDQUFDOzs7V0FBQTtRQUVELG1DQUFJLEdBQUo7WUFBQSxpQkF1QkM7WUF0QkEsTUFBTSxDQUFDLGdCQUFLLENBQUMsSUFBSSxXQUFFLENBQUMsSUFBSSxDQUFDLFVBQUMsTUFBcUI7Z0JBQzlDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQ2xCLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztvQkFFbEIsSUFBSSxDQUFDO3dCQUNKLEVBQUUsQ0FBQyxDQUFDLEtBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLElBQUksS0FBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDOzRCQUNuRixTQUFTLEdBQUcsS0FBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUNuRSxDQUFDO29CQUNGLENBQ0E7b0JBQUEsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzt3QkFDZCxLQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUV2QyxNQUFNLENBQUMsaUJBQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzlCLENBQUM7b0JBRUQsS0FBSSxDQUFDLGdCQUFnQixJQUFJLFNBQVMsQ0FBQztnQkFDcEMsQ0FBQztnQkFFRCxNQUFNLENBQUMsaUJBQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEMsQ0FBQyxFQUFFLFVBQVUsS0FBWTtnQkFDeEIsTUFBTSxDQUFDLGlCQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0osQ0FBQztRQUVELG1DQUFJLEdBQUosVUFBSyxRQUFnQjtZQUFyQixpQkFzQ0M7WUFyQ0EsRUFBRSxDQUFDLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hDLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUMvQyxDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDekMsQ0FBQztZQUVELGtFQUFrRTtZQUNsRSxPQUFPLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbkYsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUV0RCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDbkYsSUFBSSxDQUFDO3dCQUNKLFNBQVMsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDNUQsQ0FDQTtvQkFBQSxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO3dCQUNkLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDOUIsQ0FBQztnQkFDRixDQUFDO2dCQUVELElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxTQUFTLENBQUM7WUFDcEMsQ0FBQztZQUVELHlHQUF5RztZQUN6RyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQzVDLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUMvQyxDQUFDO1lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsUUFBZ0I7Z0JBQ3JFLEtBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7Z0JBRWpDLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsQyxDQUFDLEVBQUUsVUFBQyxLQUFZO2dCQUNmLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztRQUNKLENBQUM7UUFDRiwyQkFBQztJQUFELENBQUMsQUF4RUQsQ0FBcUQsOEJBQW9CLEdBd0V4RTtJQXhFRDswQ0F3RUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtUmVhZGVyLCB7IFJlYWRSZXN1bHQgfSBmcm9tICcuL1JlYWRhYmxlU3RyZWFtUmVhZGVyJztcbmltcG9ydCBTZWVrYWJsZVN0cmVhbSBmcm9tICcuL1NlZWthYmxlU3RyZWFtJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2Vla2FibGVTdHJlYW1SZWFkZXI8VD4gZXh0ZW5kcyBSZWFkYWJsZVN0cmVhbVJlYWRlcjxUPiB7XG5cdHByb3RlY3RlZCBfY3VycmVudFBvc2l0aW9uOiBudW1iZXIgPSAwO1xuXHRwcm90ZWN0ZWQgX293bmVyUmVhZGFibGVTdHJlYW06IFNlZWthYmxlU3RyZWFtPFQ+O1xuXG5cdGdldCBjdXJyZW50UG9zaXRpb24oKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fY3VycmVudFBvc2l0aW9uO1xuXHR9XG5cblx0cmVhZCgpOiBQcm9taXNlPFJlYWRSZXN1bHQ8VD4+IHtcblx0XHRyZXR1cm4gc3VwZXIucmVhZCgpLnRoZW4oKHJlc3VsdDogUmVhZFJlc3VsdDxUPikgPT4ge1xuXHRcdFx0aWYgKCFyZXN1bHQuZG9uZSkge1xuXHRcdFx0XHRsZXQgY2h1bmtTaXplID0gMTtcblxuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdGlmICh0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnN0cmF0ZWd5ICYmIHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RyYXRlZ3kuc2l6ZSkge1xuXHRcdFx0XHRcdFx0Y2h1bmtTaXplID0gdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5zdHJhdGVneS5zaXplKHJlc3VsdC52YWx1ZSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGNhdGNoIChlcnJvcikge1xuXHRcdFx0XHRcdHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uZXJyb3IoZXJyb3IpO1xuXG5cdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRoaXMuX2N1cnJlbnRQb3NpdGlvbiArPSBjaHVua1NpemU7XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzdWx0KTtcblx0XHR9LCBmdW5jdGlvbiAoZXJyb3I6IEVycm9yKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuXHRcdH0pO1xuXHR9XG5cblx0c2Vlayhwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRpZiAocG9zaXRpb24gPT09IHRoaXMuX2N1cnJlbnRQb3NpdGlvbikge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9jdXJyZW50UG9zaXRpb24pO1xuXHRcdH1cblxuXHRcdGlmIChwb3NpdGlvbiA8IHRoaXMuX2N1cnJlbnRQb3NpdGlvbikge1xuXHRcdFx0dGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5xdWV1ZS5lbXB0eSgpO1xuXHRcdH1cblxuXHRcdC8vIERyYWluIHRoZSBxdWV1ZSBvZiBhbnkgaXRlbXMgcHJpb3IgdG8gdGhlIGRlc2lyZWQgc2VlayBwb3NpdGlvblxuXHRcdHdoaWxlIChwb3NpdGlvbiA+IHRoaXMuX2N1cnJlbnRQb3NpdGlvbiAmJiB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnF1ZXVlLmxlbmd0aCkge1xuXHRcdFx0bGV0IGNodW5rU2l6ZSA9IDE7XG5cdFx0XHRsZXQgY2h1bmsgPSB0aGlzLl9vd25lclJlYWRhYmxlU3RyZWFtLnF1ZXVlLmRlcXVldWUoKTtcblxuXHRcdFx0aWYgKHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc3RyYXRlZ3kgJiYgdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5zdHJhdGVneS5zaXplKSB7XG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0Y2h1bmtTaXplID0gdGhpcy5fb3duZXJSZWFkYWJsZVN0cmVhbS5zdHJhdGVneS5zaXplKGNodW5rKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMuX2N1cnJlbnRQb3NpdGlvbiArPSBjaHVua1NpemU7XG5cdFx0fVxuXG5cdFx0Ly8gSWYgdGhlcmUncyBhbnl0aGluZyBsZWZ0IGluIHRoZSBxdWV1ZSwgd2UgZG9uJ3QgbmVlZCB0byBzZWVrIGluIHRoZSBzb3VyY2UsIHdlIGNhbiByZWFkIGZyb20gdGhlIHF1ZXVlXG5cdFx0aWYgKHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0ucXVldWUubGVuZ3RoKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2N1cnJlbnRQb3NpdGlvbik7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMuX293bmVyUmVhZGFibGVTdHJlYW0uc2Vlayhwb3NpdGlvbikudGhlbigocG9zaXRpb246IG51bWJlcikgPT4ge1xuXHRcdFx0dGhpcy5fY3VycmVudFBvc2l0aW9uID0gcG9zaXRpb247XG5cblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUocG9zaXRpb24pO1xuXHRcdH0sIChlcnJvcjogRXJyb3IpID0+IHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ== |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
/** | ||
@@ -51,6 +52,6 @@ * This class is used internally by {@link ReadableStream} and {@link WritableStream} as a simple queue. | ||
return SizeQueue; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = SizeQueue; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2l6ZVF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvU2l6ZVF1ZXVlLnRzIl0sIm5hbWVzIjpbIlNpemVRdWV1ZSIsIlNpemVRdWV1ZS5jb25zdHJ1Y3RvciIsIlNpemVRdWV1ZS50b3RhbFNpemUiLCJTaXplUXVldWUubGVuZ3RoIiwiU2l6ZVF1ZXVlLmVtcHR5IiwiU2l6ZVF1ZXVlLmVucXVldWUiLCJTaXplUXVldWUuZGVxdWV1ZSIsIlNpemVRdWV1ZS5wZWVrIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUtBOzs7T0FHRztJQUNIO1FBQUFBO1lBYVNDLFdBQU1BLEdBQWNBLEVBQUVBLENBQUNBO1FBbUJoQ0EsQ0FBQ0E7UUEvQkFELHNCQUFJQSxnQ0FBU0E7aUJBQWJBO2dCQUNDRSxJQUFJQSxTQUFTQSxHQUFHQSxDQUFDQSxDQUFDQTtnQkFDbEJBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLE9BQU9BLENBQUNBLFVBQVVBLElBQUlBO29CQUNqQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDeEIsQ0FBQyxDQUFDQSxDQUFDQTtnQkFDSEEsTUFBTUEsQ0FBQ0EsU0FBU0EsQ0FBQ0E7WUFDbEJBLENBQUNBOzs7V0FBQUY7UUFFREEsc0JBQUlBLDZCQUFNQTtpQkFBVkE7Z0JBQ0NHLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLE1BQU1BLENBQUNBO1lBQzNCQSxDQUFDQTs7O1dBQUFIO1FBSURBLHlCQUFLQSxHQUFMQTtZQUNDSSxJQUFJQSxDQUFDQSxNQUFNQSxHQUFHQSxFQUFFQSxDQUFDQTtRQUNsQkEsQ0FBQ0E7UUFFREosMkJBQU9BLEdBQVBBLFVBQVFBLEtBQVFBLEVBQUVBLElBQVlBO1lBQzdCSyxJQUFJQSxDQUFDQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxFQUFFQSxLQUFLQSxFQUFFQSxLQUFLQSxFQUFFQSxJQUFJQSxFQUFFQSxJQUFJQSxFQUFFQSxDQUFDQSxDQUFDQTtRQUNoREEsQ0FBQ0E7UUFFREwsMkJBQU9BLEdBQVBBO1lBQ0NNLElBQU1BLElBQUlBLEdBQUdBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLEtBQUtBLEVBQUVBLENBQUNBO1lBQ2pDQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQTtRQUNuQkEsQ0FBQ0E7UUFFRE4sd0JBQUlBLEdBQUpBO1lBQ0NPLElBQU1BLElBQUlBLEdBQUdBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1lBQzVCQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQTtRQUNuQkEsQ0FBQ0E7UUFDRlAsZ0JBQUNBO0lBQURBLENBQUNBLEFBaENELElBZ0NDO0lBaENEOytCQWdDQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW50ZXJmYWNlIFBhaXI8VD4ge1xuXHR2YWx1ZTogVDtcblx0c2l6ZTogbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoaXMgY2xhc3MgaXMgdXNlZCBpbnRlcm5hbGx5IGJ5IHtAbGluayBSZWFkYWJsZVN0cmVhbX0gYW5kIHtAbGluayBXcml0YWJsZVN0cmVhbX0gYXMgYSBzaW1wbGUgcXVldWUuXG4gKiBFYWNoIHZhbHVlIGluIHRoZSBxdWV1ZSBpbmNsdWRlcyBhIHBpZWNlIG9mIG1ldGFkYXRhOiB0aGUgc2l6ZSBvZiB0aGUgdmFsdWUuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNpemVRdWV1ZTxUPiB7XG5cdGdldCB0b3RhbFNpemUoKTogbnVtYmVyIHtcblx0XHRsZXQgdG90YWxTaXplID0gMDtcblx0XHR0aGlzLl9xdWV1ZS5mb3JFYWNoKGZ1bmN0aW9uIChwYWlyKSB7XG5cdFx0XHR0b3RhbFNpemUgKz0gcGFpci5zaXplO1xuXHRcdH0pO1xuXHRcdHJldHVybiB0b3RhbFNpemU7XG5cdH1cblxuXHRnZXQgbGVuZ3RoKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuX3F1ZXVlLmxlbmd0aDtcblx0fVxuXG5cdHByaXZhdGUgX3F1ZXVlOiBQYWlyPFQ+W10gPSBbXTtcblxuXHRlbXB0eSgpIHtcblx0XHR0aGlzLl9xdWV1ZSA9IFtdO1xuXHR9XG5cblx0ZW5xdWV1ZSh2YWx1ZTogVCwgc2l6ZTogbnVtYmVyKTogdm9pZCB7XG5cdFx0dGhpcy5fcXVldWUucHVzaCh7IHZhbHVlOiB2YWx1ZSwgc2l6ZTogc2l6ZSB9KTtcblx0fVxuXG5cdGRlcXVldWUoKTogVCB7XG5cdFx0Y29uc3QgcGFpciA9IHRoaXMuX3F1ZXVlLnNoaWZ0KCk7XG5cdFx0cmV0dXJuIHBhaXIudmFsdWU7XG5cdH1cblxuXHRwZWVrKCk6IFQge1xuXHRcdGNvbnN0IHBhaXIgPSB0aGlzLl9xdWV1ZVswXTtcblx0XHRyZXR1cm4gcGFpci52YWx1ZTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2l6ZVF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvU2l6ZVF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUtBOzs7T0FHRztJQUNIO1FBQUE7WUFhUyxXQUFNLEdBQWMsRUFBRSxDQUFDO1FBbUJoQyxDQUFDO1FBL0JBLHNCQUFJLGdDQUFTO2lCQUFiO2dCQUNDLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJO29CQUNqQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDeEIsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsTUFBTSxDQUFDLFNBQVMsQ0FBQztZQUNsQixDQUFDOzs7V0FBQTtRQUVELHNCQUFJLDZCQUFNO2lCQUFWO2dCQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUMzQixDQUFDOzs7V0FBQTtRQUlELHlCQUFLLEdBQUw7WUFDQyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNsQixDQUFDO1FBRUQsMkJBQU8sR0FBUCxVQUFRLEtBQVEsRUFBRSxJQUFZO1lBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNoRCxDQUFDO1FBRUQsMkJBQU8sR0FBUDtZQUNDLElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDbkIsQ0FBQztRQUVELHdCQUFJLEdBQUo7WUFDQyxJQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ25CLENBQUM7UUFDRixnQkFBQztJQUFELENBQUMsQUFoQ0QsSUFnQ0M7SUFoQ0Q7K0JBZ0NDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgUGFpcjxUPiB7XG5cdHZhbHVlOiBUO1xuXHRzaXplOiBudW1iZXI7XG59XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyB1c2VkIGludGVybmFsbHkgYnkge0BsaW5rIFJlYWRhYmxlU3RyZWFtfSBhbmQge0BsaW5rIFdyaXRhYmxlU3RyZWFtfSBhcyBhIHNpbXBsZSBxdWV1ZS5cbiAqIEVhY2ggdmFsdWUgaW4gdGhlIHF1ZXVlIGluY2x1ZGVzIGEgcGllY2Ugb2YgbWV0YWRhdGE6IHRoZSBzaXplIG9mIHRoZSB2YWx1ZS5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2l6ZVF1ZXVlPFQ+IHtcblx0Z2V0IHRvdGFsU2l6ZSgpOiBudW1iZXIge1xuXHRcdGxldCB0b3RhbFNpemUgPSAwO1xuXHRcdHRoaXMuX3F1ZXVlLmZvckVhY2goZnVuY3Rpb24gKHBhaXIpIHtcblx0XHRcdHRvdGFsU2l6ZSArPSBwYWlyLnNpemU7XG5cdFx0fSk7XG5cdFx0cmV0dXJuIHRvdGFsU2l6ZTtcblx0fVxuXG5cdGdldCBsZW5ndGgoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy5fcXVldWUubGVuZ3RoO1xuXHR9XG5cblx0cHJpdmF0ZSBfcXVldWU6IFBhaXI8VD5bXSA9IFtdO1xuXG5cdGVtcHR5KCkge1xuXHRcdHRoaXMuX3F1ZXVlID0gW107XG5cdH1cblxuXHRlbnF1ZXVlKHZhbHVlOiBULCBzaXplOiBudW1iZXIpOiB2b2lkIHtcblx0XHR0aGlzLl9xdWV1ZS5wdXNoKHsgdmFsdWU6IHZhbHVlLCBzaXplOiBzaXplIH0pO1xuXHR9XG5cblx0ZGVxdWV1ZSgpOiBUIHtcblx0XHRjb25zdCBwYWlyID0gdGhpcy5fcXVldWUuc2hpZnQoKTtcblx0XHRyZXR1cm4gcGFpci52YWx1ZTtcblx0fVxuXG5cdHBlZWsoKTogVCB7XG5cdFx0Y29uc3QgcGFpciA9IHRoaXMuX3F1ZXVlWzBdO1xuXHRcdHJldHVybiBwYWlyLnZhbHVlO1xuXHR9XG59XG4iXX0= |
@@ -11,2 +11,3 @@ // This is a simple adaptation to TypeScript of the reference implementation (as of May 2015): | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -104,6 +105,6 @@ var ReadableStream_1 = require('./ReadableStream'); | ||
return TransformStream; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = TransformStream; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNmb3JtU3RyZWFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvVHJhbnNmb3JtU3RyZWFtLnRzIl0sIm5hbWVzIjpbIlRyYW5zZm9ybVN0cmVhbSIsIlRyYW5zZm9ybVN0cmVhbS5jb25zdHJ1Y3RvciIsIlRyYW5zZm9ybVN0cmVhbS5jb25zdHJ1Y3Rvci5tYXliZURvVHJhbnNmb3JtIiwiVHJhbnNmb3JtU3RyZWFtLmNvbnN0cnVjdG9yLnRyYW5zZm9ybURvbmUiLCJUcmFuc2Zvcm1TdHJlYW0uY29uc3RydWN0b3IuYWJvcnQiLCJUcmFuc2Zvcm1TdHJlYW0uY29uc3RydWN0b3Iuc3RhcnQiLCJUcmFuc2Zvcm1TdHJlYW0uY29uc3RydWN0b3Iud3JpdGUiLCJUcmFuc2Zvcm1TdHJlYW0uY29uc3RydWN0b3IuY2xvc2UiLCJUcmFuc2Zvcm1TdHJlYW0uY29uc3RydWN0b3IucHVsbCIsIlRyYW5zZm9ybVN0cmVhbS5jb25zdHJ1Y3Rvci5jYW5jZWwiXSwibWFwcGluZ3MiOiJBQUFBLDhGQUE4RjtBQUM5RixpR0FBaUc7Ozs7Ozs7OztJQUdqRyx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFDakMsK0JBQXVDLGtCQUFrQixDQUFDLENBQUE7SUFFMUQsK0JBQXFDLGtCQUFrQixDQUFDLENBQUE7SUFrQ3hEOzs7Ozs7Ozs7OztPQVdHO0lBQ0g7UUFJQ0EseUJBQVlBLFdBQTRCQTtZQUN2Q0MsSUFBSUEsVUFBYUEsQ0FBQ0E7WUFDbEJBLElBQUlBLFNBQXFCQSxDQUFDQTtZQUMxQkEsSUFBSUEsYUFBb0NBLENBQUNBO1lBQ3pDQSxJQUFJQSxZQUFZQSxHQUFHQSxLQUFLQSxDQUFDQTtZQUN6QkEsSUFBSUEsZ0NBQWdDQSxHQUFHQSxLQUFLQSxDQUFDQTtZQUM3Q0EsSUFBSUEsaUJBQTZCQSxDQUFDQTtZQUNsQ0EsSUFBSUEsYUFBb0NBLENBQUNBO1lBQ3pDQSxJQUFJQSxhQUFvQ0EsQ0FBQ0E7WUFFekNBO2dCQUNDQyxF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T0EsRUFBRUEsQ0FBQ0E7Z0JBQzFCQSxDQUFDQTtnQkFFREosSUFBSUEsWUFBQ0EsVUFBdUNBO29CQUMzQ08sRUFBRUEsQ0FBQ0EsQ0FBQ0EsZ0NBQWdDQSxDQUFDQSxDQUFDQSxDQUFDQTt3QkFDdENBLGdCQUFnQkEsRUFBRUEsQ0FBQ0E7b0JBQ3BCQSxDQUFDQTtvQkFDREEsTUFBTUEsQ0FBQ0EsaUJBQU9BLENBQUNBLE9BQU9BLEVBQUVBLENBQUNBO2dCQUMxQkEsQ0FBQ0E7Z0JBRURQLE1BQU1BO29CQUNMUSxNQUFNQSxDQUFDQSxpQkFBT0EsQ0FBQ0EsT0FBT0EsRUFBRUEsQ0FBQ0E7Z0JBQzFCQSxDQUFDQTthQUNEUixFQUFFQSxXQUFXQSxDQUFDQSxnQkFBZ0JBLENBQUNBLENBQUNBO1FBQ2xDQSxDQUFDQTtRQUNGRCxzQkFBQ0E7SUFBREEsQ0FBQ0EsQUF0RkQsSUFzRkM7SUF0RkQ7cUNBc0ZDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGlzIGlzIGEgc2ltcGxlIGFkYXB0YXRpb24gdG8gVHlwZVNjcmlwdCBvZiB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIChhcyBvZiBNYXkgMjAxNSk6XG4vLyBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL3N0cmVhbXMvYmxvYi9tYXN0ZXIvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL2xpYi90cmFuc2Zvcm0tc3RyZWFtLmpzXG5cbmltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtLCB7IFNvdXJjZSB9IGZyb20gJy4vUmVhZGFibGVTdHJlYW0nO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciBmcm9tICcuL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcic7XG5pbXBvcnQgV3JpdGFibGVTdHJlYW0sIHsgU2luayB9IGZyb20gJy4vV3JpdGFibGVTdHJlYW0nO1xuXG4vKipcbiAqIFRoZSBgVHJhbnNmb3JtYCBpbnRlcmZhY2UgZGVmaW5lcyB0aGUgcmVxdWlyZW1lbnRzIGZvciBhIHRyYW5zZm9ybSBvYmplY3QgdG8gYmUgc3VwcGxpZWQgdG8gYVxuICoge0BsaW5rIFRyYW5zZm9ybVN0cmVhbX0gaW5zdGFuY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmb3JtPFIsIFc+IHtcblx0LyoqXG5cdCAqIFRoZSBgdHJhbnNmb3JtYCBtZXRob2Qgc2hvdWxkIGFjY2VwdCBhIGNodW5rLCBhbiBgZW5xdWV1ZUluUmVhZGFibGVgIGZ1bmN0aW9uLCBhbmQgYSBgdHJhbnNmb3JtRG9uZWAgZnVuY3Rpb24uXG5cdCAqIFRoZSBjaHVuayBpcyB0aGUgZGF0YSB0byBiZSB0cmFuc2Zvcm1lZC4gVGhlIHRyYW5zZm9ybSBmdW5jdGlvbiBzaG91bGQgcGVyZm9ybSBhbnkgdHJhbnNmb3JtIGxvZ2ljIG9uIHRoZSBjaHVua1xuXHQgKiBhbmQgdGhlbiBjYWxsIHRoZSBzdXBwbGllZCBgZW5xdWV1ZUluUmVhZGFibGVgIGZ1bmN0aW9uLCBwYXNzaW5nIGl0IHRoZSB0cmFuc2Zvcm1lZCBkYXRhLiBBZnRlciB0aGF0IGl0IHNob3VsZFxuXHQgKiBjYWxsIHRoZSBzdXBwbGllZCBgdHJhbnNmb3JtRG9uZWAgZnVuY3Rpb24gdG8gbm90aWZ5IHRoZSBgVHJhbnNmb3JtU3RyZWFtYCB0aGF0IHRyYW5zZm9ybWF0aW9uIGlzIGNvbXBsZXRlLlxuXHQgKi9cblx0dHJhbnNmb3JtKGNodW5rOiBXLCBlbnF1ZXVlSW5SZWFkYWJsZTogKGNodW5rOiBSKSA9PiB2b2lkLCB0cmFuc2Zvcm1Eb25lOiAoKSA9PiB2b2lkKTogdm9pZDtcblxuXHQvKipcblx0ICogVGhlIGBmbHVzaGAgbWV0aG9kIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBgVHJhbnNmb3JtU3RyZWFtYCB3aGVuIGl0cyB7QGxpbmsgV3JpdGFibGVTdHJlYW19IGlzIGNsb3NlZC4gQW55IGxvZ2ljXG5cdCAqIHRoZSB0cmFuc2Zvcm1lciBtYXkgd2lzaCB0byBydW4gd2hlbiB0aGUgc3RyZWFtIGlzIGNsb3NlZCBjYW4gYmUgc3VwcGxpZWQgaW4gdGhpcyBmdW5jdGlvbi4gQW55IHBlbmRpbmcgZGF0YVxuXHQgKiBjYW4gc3RpbGwgYmUgZW5xdWV1ZWQgdXNpbmcgdGhlIHN1cHBsaWVkIGBlbnF1ZXVlYCBmdW5jdGlvbi4gV2hlbiB0aGUgdHJhbnNmb3JtZXIgaGFzIGZpbmlzaGVkIHRyYW5zZm9ybWluZyBhbGxcblx0ICogZGF0YSBhbmQgaXMgcmVhZHkgdG8gY2xvc2UgdGhlIHtAbGluayBSZWFkYWJsZVN0cmVhbX0gaXQgc2hvdWxkIGNhbGwgdGhlIHN1cHBsaWVkIGBjbG9zZWAgZnVuY3Rpb24uXG5cdCAqL1xuXHRmbHVzaChlbnF1ZXVlOiBGdW5jdGlvbiwgY2xvc2U6IEZ1bmN0aW9uKTogdm9pZDtcblxuXHQvKipcblx0ICogSWYgc3VwcGxpZWQsIHRoaXMgc3RyYXRlZ3kgd2lsbCBiZSB1c2VkIGZvciB0aGUgYFRyYW5zZm9ybWVyYCdzIGludGVybmFsIHtAbGluayBSZWFkYWJsZVN0cmVhbX1cblx0ICovXG5cdHJlYWRhYmxlU3RyYXRlZ3k6IFN0cmF0ZWd5PFI+O1xuXG5cdC8qKlxuXHQgKiBJZiBzdXBwbGllZCwgdGhpcyBzdHJhdGVneSB3aWxsIGJlIHVzZWQgZm9yIHRoZSBgVHJhbnNmb3JtZXJgJ3MgaW50ZXJuYWwge0BsaW5rIFdyaXRhYmxlU3RyZWFtfVxuXHQgKi9cblx0d3JpdGFibGVTdHJhdGVneTogU3RyYXRlZ3k8Vz47XG59XG5cbi8qKlxuICogQSBgVHJhbnNmb3JtU3RyZWFtYCBpcyBib3RoIHJlYWRhYmxlIGFuZCB3cml0YWJsZS4gSXRzIHB1cnBvc2UgaXMgdG8gYXBwbHkgc29tZSB0cmFuc2Zvcm0gbG9naWMgdG8gZXZlcnl0aGluZyB0aGF0XG4gKiBpcyB3cml0dGVuIHRvIGl0IGFuZCBwcm92aWRlIHRoZSB0cmFuc2Zvcm1lZCBkYXRhIHZpYSBpdHMgcmVhZGVyLiBBcyBzdWNoLCBpdCByZXF1aXJlcyBubyBgUmVhZGFibGVTdHJlYW1gLFxuICogYFdyaXRhYmxlU3RyZWFtYCwgb3IgYFNvdXJjZWAgb3IgYFNpbmtgIHRvIGJlIHN1cHBsaWVkIC0gaXQgcHJvdmlkZXMgaXRzIG93bi5cbiAqXG4gKiBJdCBkb2VzIHJlcXVpcmUgYW4gb2JqZWN0IHRoYXQgaW1wbGVtZW50cyB0aGUge0BsaW5rIFRyYW5zZm9ybX0gaW50ZXJmYWNlIHRvIGJlIHN1cHBsaWVkLiBUaGUgYHRyYW5zZm9ybWAgbWV0aG9kXG4gKiB3aWxsIGJlIGFwcGxpZWQgdG8gYWxsIGRhdGEgd3JpdHRlbiB0byB0aGUgc3RyZWFtLlxuICpcbiAqIFRoZSByZWFkYWJsZSBzdHJlYW0gQVBJIGlzIGF2YWlsYWJsZSB2aWEgdGhlIGBUcmFuc2Zvcm1TdHJlYW1gJ3MgYHJlYWRhYmxlYCBwcm9wZXJ0eSwgd2hpY2ggaXMgYVxuICoge0BsaW5rIFJlYWRhYmxlU3RyZWFtfS4gVGhlIHdyaXRhYmxlIHN0cmVhbSBBUEkgaXMgYXZhaWxhYmxlIHZpYSB0aGUgYFRyYW5zZm9ybVN0cmVhbWAncyBgd3JpdGFibGVgIHByb3BlcnR5LCB3aGljaFxuICogaXMgYSB7QGxpbmsgV3JpdGFibGVTdHJlYW19LlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUcmFuc2Zvcm1TdHJlYW08UiwgVz4ge1xuXHRyZWFkYWJsZTogUmVhZGFibGVTdHJlYW08Uj47XG5cdHdyaXRhYmxlOiBXcml0YWJsZVN0cmVhbTxXPjtcblxuXHRjb25zdHJ1Y3Rvcih0cmFuc2Zvcm1lcjogVHJhbnNmb3JtPFIsIFc+KSB7XG5cdFx0bGV0IHdyaXRlQ2h1bms6IFc7XG5cdFx0bGV0IHdyaXRlRG9uZTogKCkgPT4gdm9pZDtcblx0XHRsZXQgZXJyb3JXcml0YWJsZTogKGVycm9yPzogYW55KSA9PiB2b2lkO1xuXHRcdGxldCB0cmFuc2Zvcm1pbmcgPSBmYWxzZTtcblx0XHRsZXQgY2h1bmtXcml0dGVuQnV0Tm90WWV0VHJhbnNmb3JtZWQgPSBmYWxzZTtcblx0XHRsZXQgZW5xdWV1ZUluUmVhZGFibGU6ICgpID0+IHZvaWQ7XG5cdFx0bGV0IGNsb3NlUmVhZGFibGU6IChlcnJvcj86IGFueSkgPT4gdm9pZDtcblx0XHRsZXQgZXJyb3JSZWFkYWJsZTogKGVycm9yPzogYW55KSA9PiB2b2lkO1xuXG5cdFx0ZnVuY3Rpb24gbWF5YmVEb1RyYW5zZm9ybSgpIHtcblx0XHRcdGlmICghdHJhbnNmb3JtaW5nKSB7XG5cdFx0XHRcdHRyYW5zZm9ybWluZyA9IHRydWU7XG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtZXIudHJhbnNmb3JtKHdyaXRlQ2h1bmssIGVucXVldWVJblJlYWRhYmxlLCB0cmFuc2Zvcm1Eb25lKTtcblx0XHRcdFx0XHR3cml0ZUNodW5rID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRcdGNodW5rV3JpdHRlbkJ1dE5vdFlldFRyYW5zZm9ybWVkID0gZmFsc2U7XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm1pbmcgPSBmYWxzZTtcblx0XHRcdFx0XHRlcnJvcldyaXRhYmxlKGUpO1xuXHRcdFx0XHRcdGVycm9yUmVhZGFibGUoZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRmdW5jdGlvbiB0cmFuc2Zvcm1Eb25lKCkge1xuXHRcdFx0dHJhbnNmb3JtaW5nID0gZmFsc2U7XG5cdFx0XHR3cml0ZURvbmUoKTtcblx0XHR9XG5cblx0XHR0aGlzLndyaXRhYmxlID0gbmV3IFdyaXRhYmxlU3RyZWFtPFc+KDxTaW5rIDxXPj4ge1xuXHRcdFx0YWJvcnQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHRcdH0sXG5cblx0XHRcdHN0YXJ0KGVycm9yOiAoZXJyb3I/OiBhbnkpID0+IHZvaWQpIHtcblx0XHRcdFx0ZXJyb3JXcml0YWJsZSA9IGVycm9yO1xuXHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdFx0XHR9LFxuXG5cdFx0XHR3cml0ZShjaHVuazogVykge1xuXHRcdFx0XHR3cml0ZUNodW5rID0gY2h1bms7XG5cdFx0XHRcdGNodW5rV3JpdHRlbkJ1dE5vdFlldFRyYW5zZm9ybWVkID0gdHJ1ZTtcblx0XHRcdFx0Y29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRcdFx0d3JpdGVEb25lID0gcmVzb2x2ZTtcblx0XHRcdFx0fSk7XG5cdFx0XHRcdG1heWJlRG9UcmFuc2Zvcm0oKTtcblx0XHRcdFx0cmV0dXJuIHByb21pc2U7XG5cdFx0XHR9LFxuXG5cdFx0XHRjbG9zZSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHR0cmFuc2Zvcm1lci5mbHVzaChlbnF1ZXVlSW5SZWFkYWJsZSwgY2xvc2VSZWFkYWJsZSk7XG5cdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdFx0ZXJyb3JXcml0YWJsZShlKTtcblx0XHRcdFx0XHRlcnJvclJlYWRhYmxlKGUpO1xuXHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sIHRyYW5zZm9ybWVyLndyaXRhYmxlU3RyYXRlZ3kpO1xuXG5cdFx0dGhpcy5yZWFkYWJsZSA9IG5ldyBSZWFkYWJsZVN0cmVhbSg8U291cmNlIDxSPj4ge1xuXHRcdFx0c3RhcnQoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFI+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdGVucXVldWVJblJlYWRhYmxlID0gY29udHJvbGxlci5lbnF1ZXVlLmJpbmQoY29udHJvbGxlcik7XG5cdFx0XHRcdGNsb3NlUmVhZGFibGUgPSBjb250cm9sbGVyLmNsb3NlLmJpbmQoY29udHJvbGxlcik7XG5cdFx0XHRcdGVycm9yUmVhZGFibGUgPSBjb250cm9sbGVyLmVycm9yLmJpbmQoY29udHJvbGxlcik7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHRcdH0sXG5cblx0XHRcdHB1bGwoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFI+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdGlmIChjaHVua1dyaXR0ZW5CdXROb3RZZXRUcmFuc2Zvcm1lZCkge1xuXHRcdFx0XHRcdG1heWJlRG9UcmFuc2Zvcm0oKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdFx0XHR9LFxuXG5cdFx0XHRjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHRcdH1cblx0XHR9LCB0cmFuc2Zvcm1lci5yZWFkYWJsZVN0cmF0ZWd5KTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNmb3JtU3RyZWFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVhbXMvVHJhbnNmb3JtU3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDhGQUE4RjtBQUM5RixpR0FBaUc7Ozs7Ozs7Ozs7SUFHakcsd0JBQW9CLFlBQVksQ0FBQyxDQUFBO0lBQ2pDLCtCQUF1QyxrQkFBa0IsQ0FBQyxDQUFBO0lBRTFELCtCQUFxQyxrQkFBa0IsQ0FBQyxDQUFBO0lBa0N4RDs7Ozs7Ozs7Ozs7T0FXRztJQUNIO1FBSUMseUJBQVksV0FBNEI7WUFDdkMsSUFBSSxVQUFhLENBQUM7WUFDbEIsSUFBSSxTQUFxQixDQUFDO1lBQzFCLElBQUksYUFBb0MsQ0FBQztZQUN6QyxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxnQ0FBZ0MsR0FBRyxLQUFLLENBQUM7WUFDN0MsSUFBSSxpQkFBNkIsQ0FBQztZQUNsQyxJQUFJLGFBQW9DLENBQUM7WUFDekMsSUFBSSxhQUFvQyxDQUFDO1lBRXpDO2dCQUNDLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztvQkFDbkIsWUFBWSxHQUFHLElBQUksQ0FBQztvQkFDcEIsSUFBSSxDQUFDO3dCQUNKLFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsQ0FBQyxDQUFDO3dCQUNwRSxVQUFVLEdBQUcsU0FBUyxDQUFDO3dCQUN2QixnQ0FBZ0MsR0FBRyxLQUFLLENBQUM7b0JBQzFDLENBQUU7b0JBQUEsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDWixZQUFZLEdBQUcsS0FBSyxDQUFDO3dCQUNyQixhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQ2pCLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDbEIsQ0FBQztnQkFDRixDQUFDO1lBQ0YsQ0FBQztZQUVEO2dCQUNDLFlBQVksR0FBRyxLQUFLLENBQUM7Z0JBQ3JCLFNBQVMsRUFBRSxDQUFDO1lBQ2IsQ0FBQztZQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSx3QkFBYyxDQUFlO2dCQUNoRCxLQUFLO29CQUNKLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUMxQixDQUFDO2dCQUVELEtBQUssWUFBQyxLQUE0QjtvQkFDakMsYUFBYSxHQUFHLEtBQUssQ0FBQztvQkFDdEIsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzFCLENBQUM7Z0JBRUQsS0FBSyxZQUFDLEtBQVE7b0JBQ2IsVUFBVSxHQUFHLEtBQUssQ0FBQztvQkFDbkIsZ0NBQWdDLEdBQUcsSUFBSSxDQUFDO29CQUN4QyxJQUFNLE9BQU8sR0FBRyxJQUFJLGlCQUFPLENBQU8sVUFBVSxPQUFPO3dCQUNsRCxTQUFTLEdBQUcsT0FBTyxDQUFDO29CQUNyQixDQUFDLENBQUMsQ0FBQztvQkFDSCxnQkFBZ0IsRUFBRSxDQUFDO29CQUNuQixNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUNoQixDQUFDO2dCQUVELEtBQUs7b0JBQ0osSUFBSSxDQUFDO3dCQUNKLFdBQVcsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLENBQUM7d0JBQ3BELE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUMxQixDQUFFO29CQUFBLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQ1osYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUNqQixhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQ2pCLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDMUIsQ0FBQztnQkFDRixDQUFDO2FBQ0QsRUFBRSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUVqQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksd0JBQWMsQ0FBYztnQkFDL0MsS0FBSyxZQUFDLFVBQXVDO29CQUM1QyxpQkFBaUIsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDeEQsYUFBYSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUNsRCxhQUFhLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQ2xELE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUMxQixDQUFDO2dCQUVELElBQUksWUFBQyxVQUF1QztvQkFDM0MsRUFBRSxDQUFDLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDO3dCQUN0QyxnQkFBZ0IsRUFBRSxDQUFDO29CQUNwQixDQUFDO29CQUNELE1BQU0sQ0FBQyxpQkFBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUMxQixDQUFDO2dCQUVELE1BQU07b0JBQ0wsTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzFCLENBQUM7YUFDRCxFQUFFLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFDRixzQkFBQztJQUFELENBQUMsQUF0RkQsSUFzRkM7SUF0RkQ7cUNBc0ZDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGlzIGlzIGEgc2ltcGxlIGFkYXB0YXRpb24gdG8gVHlwZVNjcmlwdCBvZiB0aGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIChhcyBvZiBNYXkgMjAxNSk6XG4vLyBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL3N0cmVhbXMvYmxvYi9tYXN0ZXIvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL2xpYi90cmFuc2Zvcm0tc3RyZWFtLmpzXG5cbmltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtLCB7IFNvdXJjZSB9IGZyb20gJy4vUmVhZGFibGVTdHJlYW0nO1xuaW1wb3J0IFJlYWRhYmxlU3RyZWFtQ29udHJvbGxlciBmcm9tICcuL1JlYWRhYmxlU3RyZWFtQ29udHJvbGxlcic7XG5pbXBvcnQgV3JpdGFibGVTdHJlYW0sIHsgU2luayB9IGZyb20gJy4vV3JpdGFibGVTdHJlYW0nO1xuXG4vKipcbiAqIFRoZSBgVHJhbnNmb3JtYCBpbnRlcmZhY2UgZGVmaW5lcyB0aGUgcmVxdWlyZW1lbnRzIGZvciBhIHRyYW5zZm9ybSBvYmplY3QgdG8gYmUgc3VwcGxpZWQgdG8gYVxuICoge0BsaW5rIFRyYW5zZm9ybVN0cmVhbX0gaW5zdGFuY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmb3JtPFIsIFc+IHtcblx0LyoqXG5cdCAqIFRoZSBgdHJhbnNmb3JtYCBtZXRob2Qgc2hvdWxkIGFjY2VwdCBhIGNodW5rLCBhbiBgZW5xdWV1ZUluUmVhZGFibGVgIGZ1bmN0aW9uLCBhbmQgYSBgdHJhbnNmb3JtRG9uZWAgZnVuY3Rpb24uXG5cdCAqIFRoZSBjaHVuayBpcyB0aGUgZGF0YSB0byBiZSB0cmFuc2Zvcm1lZC4gVGhlIHRyYW5zZm9ybSBmdW5jdGlvbiBzaG91bGQgcGVyZm9ybSBhbnkgdHJhbnNmb3JtIGxvZ2ljIG9uIHRoZSBjaHVua1xuXHQgKiBhbmQgdGhlbiBjYWxsIHRoZSBzdXBwbGllZCBgZW5xdWV1ZUluUmVhZGFibGVgIGZ1bmN0aW9uLCBwYXNzaW5nIGl0IHRoZSB0cmFuc2Zvcm1lZCBkYXRhLiBBZnRlciB0aGF0IGl0IHNob3VsZFxuXHQgKiBjYWxsIHRoZSBzdXBwbGllZCBgdHJhbnNmb3JtRG9uZWAgZnVuY3Rpb24gdG8gbm90aWZ5IHRoZSBgVHJhbnNmb3JtU3RyZWFtYCB0aGF0IHRyYW5zZm9ybWF0aW9uIGlzIGNvbXBsZXRlLlxuXHQgKi9cblx0dHJhbnNmb3JtKGNodW5rOiBXLCBlbnF1ZXVlSW5SZWFkYWJsZTogKGNodW5rOiBSKSA9PiB2b2lkLCB0cmFuc2Zvcm1Eb25lOiAoKSA9PiB2b2lkKTogdm9pZDtcblxuXHQvKipcblx0ICogVGhlIGBmbHVzaGAgbWV0aG9kIHdpbGwgYmUgY2FsbGVkIGJ5IHRoZSBgVHJhbnNmb3JtU3RyZWFtYCB3aGVuIGl0cyB7QGxpbmsgV3JpdGFibGVTdHJlYW19IGlzIGNsb3NlZC4gQW55IGxvZ2ljXG5cdCAqIHRoZSB0cmFuc2Zvcm1lciBtYXkgd2lzaCB0byBydW4gd2hlbiB0aGUgc3RyZWFtIGlzIGNsb3NlZCBjYW4gYmUgc3VwcGxpZWQgaW4gdGhpcyBmdW5jdGlvbi4gQW55IHBlbmRpbmcgZGF0YVxuXHQgKiBjYW4gc3RpbGwgYmUgZW5xdWV1ZWQgdXNpbmcgdGhlIHN1cHBsaWVkIGBlbnF1ZXVlYCBmdW5jdGlvbi4gV2hlbiB0aGUgdHJhbnNmb3JtZXIgaGFzIGZpbmlzaGVkIHRyYW5zZm9ybWluZyBhbGxcblx0ICogZGF0YSBhbmQgaXMgcmVhZHkgdG8gY2xvc2UgdGhlIHtAbGluayBSZWFkYWJsZVN0cmVhbX0gaXQgc2hvdWxkIGNhbGwgdGhlIHN1cHBsaWVkIGBjbG9zZWAgZnVuY3Rpb24uXG5cdCAqL1xuXHRmbHVzaChlbnF1ZXVlOiBGdW5jdGlvbiwgY2xvc2U6IEZ1bmN0aW9uKTogdm9pZDtcblxuXHQvKipcblx0ICogSWYgc3VwcGxpZWQsIHRoaXMgc3RyYXRlZ3kgd2lsbCBiZSB1c2VkIGZvciB0aGUgYFRyYW5zZm9ybWVyYCdzIGludGVybmFsIHtAbGluayBSZWFkYWJsZVN0cmVhbX1cblx0ICovXG5cdHJlYWRhYmxlU3RyYXRlZ3k6IFN0cmF0ZWd5PFI+O1xuXG5cdC8qKlxuXHQgKiBJZiBzdXBwbGllZCwgdGhpcyBzdHJhdGVneSB3aWxsIGJlIHVzZWQgZm9yIHRoZSBgVHJhbnNmb3JtZXJgJ3MgaW50ZXJuYWwge0BsaW5rIFdyaXRhYmxlU3RyZWFtfVxuXHQgKi9cblx0d3JpdGFibGVTdHJhdGVneTogU3RyYXRlZ3k8Vz47XG59XG5cbi8qKlxuICogQSBgVHJhbnNmb3JtU3RyZWFtYCBpcyBib3RoIHJlYWRhYmxlIGFuZCB3cml0YWJsZS4gSXRzIHB1cnBvc2UgaXMgdG8gYXBwbHkgc29tZSB0cmFuc2Zvcm0gbG9naWMgdG8gZXZlcnl0aGluZyB0aGF0XG4gKiBpcyB3cml0dGVuIHRvIGl0IGFuZCBwcm92aWRlIHRoZSB0cmFuc2Zvcm1lZCBkYXRhIHZpYSBpdHMgcmVhZGVyLiBBcyBzdWNoLCBpdCByZXF1aXJlcyBubyBgUmVhZGFibGVTdHJlYW1gLFxuICogYFdyaXRhYmxlU3RyZWFtYCwgb3IgYFNvdXJjZWAgb3IgYFNpbmtgIHRvIGJlIHN1cHBsaWVkIC0gaXQgcHJvdmlkZXMgaXRzIG93bi5cbiAqXG4gKiBJdCBkb2VzIHJlcXVpcmUgYW4gb2JqZWN0IHRoYXQgaW1wbGVtZW50cyB0aGUge0BsaW5rIFRyYW5zZm9ybX0gaW50ZXJmYWNlIHRvIGJlIHN1cHBsaWVkLiBUaGUgYHRyYW5zZm9ybWAgbWV0aG9kXG4gKiB3aWxsIGJlIGFwcGxpZWQgdG8gYWxsIGRhdGEgd3JpdHRlbiB0byB0aGUgc3RyZWFtLlxuICpcbiAqIFRoZSByZWFkYWJsZSBzdHJlYW0gQVBJIGlzIGF2YWlsYWJsZSB2aWEgdGhlIGBUcmFuc2Zvcm1TdHJlYW1gJ3MgYHJlYWRhYmxlYCBwcm9wZXJ0eSwgd2hpY2ggaXMgYVxuICoge0BsaW5rIFJlYWRhYmxlU3RyZWFtfS4gVGhlIHdyaXRhYmxlIHN0cmVhbSBBUEkgaXMgYXZhaWxhYmxlIHZpYSB0aGUgYFRyYW5zZm9ybVN0cmVhbWAncyBgd3JpdGFibGVgIHByb3BlcnR5LCB3aGljaFxuICogaXMgYSB7QGxpbmsgV3JpdGFibGVTdHJlYW19LlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUcmFuc2Zvcm1TdHJlYW08UiwgVz4ge1xuXHRyZWFkYWJsZTogUmVhZGFibGVTdHJlYW08Uj47XG5cdHdyaXRhYmxlOiBXcml0YWJsZVN0cmVhbTxXPjtcblxuXHRjb25zdHJ1Y3Rvcih0cmFuc2Zvcm1lcjogVHJhbnNmb3JtPFIsIFc+KSB7XG5cdFx0bGV0IHdyaXRlQ2h1bms6IFc7XG5cdFx0bGV0IHdyaXRlRG9uZTogKCkgPT4gdm9pZDtcblx0XHRsZXQgZXJyb3JXcml0YWJsZTogKGVycm9yPzogYW55KSA9PiB2b2lkO1xuXHRcdGxldCB0cmFuc2Zvcm1pbmcgPSBmYWxzZTtcblx0XHRsZXQgY2h1bmtXcml0dGVuQnV0Tm90WWV0VHJhbnNmb3JtZWQgPSBmYWxzZTtcblx0XHRsZXQgZW5xdWV1ZUluUmVhZGFibGU6ICgpID0+IHZvaWQ7XG5cdFx0bGV0IGNsb3NlUmVhZGFibGU6IChlcnJvcj86IGFueSkgPT4gdm9pZDtcblx0XHRsZXQgZXJyb3JSZWFkYWJsZTogKGVycm9yPzogYW55KSA9PiB2b2lkO1xuXG5cdFx0ZnVuY3Rpb24gbWF5YmVEb1RyYW5zZm9ybSgpIHtcblx0XHRcdGlmICghdHJhbnNmb3JtaW5nKSB7XG5cdFx0XHRcdHRyYW5zZm9ybWluZyA9IHRydWU7XG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtZXIudHJhbnNmb3JtKHdyaXRlQ2h1bmssIGVucXVldWVJblJlYWRhYmxlLCB0cmFuc2Zvcm1Eb25lKTtcblx0XHRcdFx0XHR3cml0ZUNodW5rID0gdW5kZWZpbmVkO1xuXHRcdFx0XHRcdGNodW5rV3JpdHRlbkJ1dE5vdFlldFRyYW5zZm9ybWVkID0gZmFsc2U7XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm1pbmcgPSBmYWxzZTtcblx0XHRcdFx0XHRlcnJvcldyaXRhYmxlKGUpO1xuXHRcdFx0XHRcdGVycm9yUmVhZGFibGUoZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRmdW5jdGlvbiB0cmFuc2Zvcm1Eb25lKCkge1xuXHRcdFx0dHJhbnNmb3JtaW5nID0gZmFsc2U7XG5cdFx0XHR3cml0ZURvbmUoKTtcblx0XHR9XG5cblx0XHR0aGlzLndyaXRhYmxlID0gbmV3IFdyaXRhYmxlU3RyZWFtPFc+KDxTaW5rIDxXPj4ge1xuXHRcdFx0YWJvcnQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHRcdH0sXG5cblx0XHRcdHN0YXJ0KGVycm9yOiAoZXJyb3I/OiBhbnkpID0+IHZvaWQpIHtcblx0XHRcdFx0ZXJyb3JXcml0YWJsZSA9IGVycm9yO1xuXHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdFx0XHR9LFxuXG5cdFx0XHR3cml0ZShjaHVuazogVykge1xuXHRcdFx0XHR3cml0ZUNodW5rID0gY2h1bms7XG5cdFx0XHRcdGNodW5rV3JpdHRlbkJ1dE5vdFlldFRyYW5zZm9ybWVkID0gdHJ1ZTtcblx0XHRcdFx0Y29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRcdFx0d3JpdGVEb25lID0gcmVzb2x2ZTtcblx0XHRcdFx0fSk7XG5cdFx0XHRcdG1heWJlRG9UcmFuc2Zvcm0oKTtcblx0XHRcdFx0cmV0dXJuIHByb21pc2U7XG5cdFx0XHR9LFxuXG5cdFx0XHRjbG9zZSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHR0cmFuc2Zvcm1lci5mbHVzaChlbnF1ZXVlSW5SZWFkYWJsZSwgY2xvc2VSZWFkYWJsZSk7XG5cdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdFx0ZXJyb3JXcml0YWJsZShlKTtcblx0XHRcdFx0XHRlcnJvclJlYWRhYmxlKGUpO1xuXHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0sIHRyYW5zZm9ybWVyLndyaXRhYmxlU3RyYXRlZ3kpO1xuXG5cdFx0dGhpcy5yZWFkYWJsZSA9IG5ldyBSZWFkYWJsZVN0cmVhbSg8U291cmNlIDxSPj4ge1xuXHRcdFx0c3RhcnQoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFI+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdGVucXVldWVJblJlYWRhYmxlID0gY29udHJvbGxlci5lbnF1ZXVlLmJpbmQoY29udHJvbGxlcik7XG5cdFx0XHRcdGNsb3NlUmVhZGFibGUgPSBjb250cm9sbGVyLmNsb3NlLmJpbmQoY29udHJvbGxlcik7XG5cdFx0XHRcdGVycm9yUmVhZGFibGUgPSBjb250cm9sbGVyLmVycm9yLmJpbmQoY29udHJvbGxlcik7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHRcdH0sXG5cblx0XHRcdHB1bGwoY29udHJvbGxlcjogUmVhZGFibGVTdHJlYW1Db250cm9sbGVyPFI+KTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdGlmIChjaHVua1dyaXR0ZW5CdXROb3RZZXRUcmFuc2Zvcm1lZCkge1xuXHRcdFx0XHRcdG1heWJlRG9UcmFuc2Zvcm0oKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG5cdFx0XHR9LFxuXG5cdFx0XHRjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHRcdH1cblx0XHR9LCB0cmFuc2Zvcm1lci5yZWFkYWJsZVN0cmF0ZWd5KTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -128,2 +129,2 @@ /* | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdHJlYW1zL3V0aWwudHMiXSwibmFtZXMiOlsiZ2V0QXBwcm94aW1hdGVCeXRlU2l6ZSIsImludm9rZU9yTm9vcCIsIm5vcm1hbGl6ZVN0cmF0ZWd5IiwicHJvbWlzZUludm9rZU9yRmFsbGJhY2tPck5vb3AiLCJwcm9taXNlSW52b2tlT3JOb29wIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUNBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUVqQzs7Ozs7Ozs7Ozs7TUFXRTtJQUNGLGdDQUF1QyxNQUFXO1FBQ2pEQSxJQUFJQSxPQUFPQSxHQUFHQSxDQUFFQSxNQUFNQSxDQUFFQSxDQUFDQTtRQUN6QkEsSUFBSUEsSUFBSUEsR0FBR0EsQ0FBQ0EsQ0FBQ0E7UUFFYkEsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsS0FBS0EsR0FBR0EsQ0FBQ0EsRUFBRUEsS0FBS0EsR0FBR0EsT0FBT0EsQ0FBQ0EsTUFBTUEsRUFBRUEsS0FBS0EsRUFBRUEsRUFBRUEsQ0FBQ0E7WUFDckRBLE1BQU1BLENBQUNBLENBQUNBLE9BQU9BLE9BQU9BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO2dCQUMvQkEsS0FBS0EsU0FBU0E7b0JBQ2JBLElBQUlBLElBQUlBLENBQUNBLENBQUNBO29CQUNWQSxLQUFLQSxDQUFDQTtnQkFFUEEsS0FBS0EsUUFBUUE7b0JBQ1pBLElBQUlBLElBQUlBLENBQUNBLENBQUNBO29CQUNWQSxLQUFLQSxDQUFDQTtnQkFFUEEsS0FBS0EsUUFBUUE7b0JBQ1pBLElBQUlBLElBQUlBLENBQUNBLEdBQUdBLE9BQU9BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBLE1BQU1BLENBQUNBO29CQUNsQ0EsS0FBS0EsQ0FBQ0E7Z0JBRVBBLEtBQUtBLFFBQVFBO29CQUNaQSwyREFBMkRBO29CQUMzREEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsU0FB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Q0E7WUFDYkEsTUFBTUEsQ0FBQ0EsaUJBQU9BLENBQUNBLE9BQU9BLEVBQUVBLENBQUNBO1FBQzFCQSxDQUFDQTtRQUVEQSxJQUFJQSxDQUFDQTtZQUNKQSxNQUFNQSxDQUFDQSxpQkFBT0EsQ0FBQ0EsT0FBT0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0EsRUFBRUEsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDL0NBLENBQ0FBO1FBQUFBLEtBQUtBLENBQUNBLENBQUNBLEtBQUtBLENBQUNBLENBQUNBLENBQUNBO1lBQ2RBLE1BQU1BLENBQUNBLGlCQUFPQSxDQUFDQSxNQUFNQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQTtRQUM5QkEsQ0FBQ0E7SUFDRkEsQ0FBQ0E7SUFwQmUsMkJBQW1CLHNCQW9CbEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuXG4vKlxuQmFzZWQgb24gc2l6ZW9mLmpzIGJ5IFN0ZXBoZW4gTW9ybGV5XG5cbkEgZnVuY3Rpb24gdG8gY2FsY3VsYXRlIHRoZSBhcHByb3hpbWF0ZSBtZW1vcnkgdXNhZ2Ugb2Ygb2JqZWN0c1xuXG5DcmVhdGVkIGJ5IFN0ZXBoZW4gTW9ybGV5IC0gaHR0cDovL2NvZGUuc3RlcGhlbm1vcmxleS5vcmcvIC0gYW5kIHJlbGVhc2VkIHVuZGVyXG50aGUgdGVybXMgb2YgdGhlIENDMCAxLjAgVW5pdmVyc2FsIGxlZ2FsIGNvZGU6XG5cbmh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL3B1YmxpY2RvbWFpbi96ZXJvLzEuMC9sZWdhbGNvZGVcblxuUmV0dXJucyB0aGUgYXBwcm94aW1hdGUgbWVtb3J5IHVzYWdlLCBpbiBieXRlcywgb2YgdGhlIHNwZWNpZmllZCBvYmplY3QuXG4qL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFwcHJveGltYXRlQnl0ZVNpemUob2JqZWN0OiBhbnkpOiBudW1iZXIge1xuXHRsZXQgb2JqZWN0cyA9IFsgb2JqZWN0IF07XG5cdGxldCBzaXplID0gMDtcblxuXHRmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgb2JqZWN0cy5sZW5ndGg7IGluZGV4KyspIHtcblx0XHRzd2l0Y2ggKHR5cGVvZiBvYmplY3RzW2luZGV4XSkge1xuXHRcdFx0Y2FzZSAnYm9vbGVhbic6XG5cdFx0XHRcdHNpemUgKz0gNDtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgJ251bWJlcic6XG5cdFx0XHRcdHNpemUgKz0gODtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgJ3N0cmluZyc6XG5cdFx0XHRcdHNpemUgKz0gMiAqIG9iamVjdHNbaW5kZXhdLmxlbmd0aDtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgJ29iamVjdCc6XG5cdFx0XHRcdC8vIGlmIHRoZSBvYmplY3QgaXMgbm90IGFuIGFycmF5LCBhZGQgdGhlIHNpemVzIG9mIHRoZSBrZXlzXG5cdFx0XHRcdGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0c1tpbmRleF0pICE9PSAnW29iamVjdCBBcnJheV0nKSB7XG5cdFx0XHRcdFx0Zm9yIChsZXQga2V5IGluIG9iamVjdHNbaW5kZXhdKSB7XG5cdFx0XHRcdFx0XHRzaXplICs9IDIgKiBrZXkubGVuZ3RoO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIGxvb3Agb3ZlciB0aGUga2V5c1xuXHRcdFx0XHRmb3IgKGxldCBrZXkgaW4gb2JqZWN0c1tpbmRleF0pIHtcblx0XHRcdFx0XHQvLyBkZXRlcm1pbmUgd2hldGhlciB0aGUgdmFsdWUgaGFzIGFscmVhZHkgYmVlbiBwcm9jZXNzZWRcblx0XHRcdFx0XHRsZXQgcHJvY2Vzc2VkID0gZmFsc2U7XG5cblx0XHRcdFx0XHRmb3IgKGxldCBqID0gMDsgaiA8IG9iamVjdHMubGVuZ3RoOyBqKyspIHtcblx0XHRcdFx0XHRcdGlmIChvYmplY3RzW2pdID09PSBvYmplY3RzW2luZGV4XVtrZXldKSB7XG5cdFx0XHRcdFx0XHRcdHByb2Nlc3NlZCA9IHRydWU7XG5cdFx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8vIHF1ZXVlIHRoZSB2YWx1ZSB0byBiZSBwcm9jZXNzZWQgaWYgYXBwcm9wcmlhdGVcblx0XHRcdFx0XHRpZiAoIXByb2Nlc3NlZCkge1xuXHRcdFx0XHRcdFx0b2JqZWN0cy5wdXNoKG9iamVjdHNbaW5kZXhdW2tleV0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiBzaXplO1xufVxuXG4vKipcbiAqIENhbGxzIHRoZSBtZXRob2Qgb3IgcmV0dXJucyB1bmRlZmluZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnZva2VPck5vb3AoTzogYW55LCBQOiBzdHJpbmcsIGFyZ3M6IGFueVtdID0gW10pOiBhbnkge1xuXHRjb25zdCBtZXRob2Q6IEZ1bmN0aW9uID0gT1tQXTtcblx0cmV0dXJuIG1ldGhvZCA/IG1ldGhvZC5hcHBseShPLCBhcmdzKSA6IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZVN0cmF0ZWd5PFQ+KHsgc2l6ZSwgaGlnaFdhdGVyTWFyayA9IDEgfTogU3RyYXRlZ3k8VD4pOiBTdHJhdGVneTxUPiB7XG5cdHJldHVybiA8U3RyYXRlZ3kgPFQ+PiB7XG5cdFx0c2l6ZTogc2l6ZSxcblx0XHRoaWdoV2F0ZXJNYXJrOiBoaWdoV2F0ZXJNYXJrID4gMCA/IGhpZ2hXYXRlck1hcmsgOiAxXG5cdH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm9taXNlSW52b2tlT3JGYWxsYmFja09yTm9vcChvYmplY3Q6IGFueSwgbWV0aG9kMTogc3RyaW5nLCBhcmdzMTogYW55W10sIG1ldGhvZDI6IHN0cmluZywgYXJnczI6IGFueVtdID0gW10pOiBQcm9taXNlPGFueT4ge1xuXHRsZXQgbWV0aG9kOiBGdW5jdGlvbjtcblxuXHR0cnkge1xuXHRcdG1ldGhvZCA9IG9iamVjdFttZXRob2QxXTtcblx0fVxuXHRjYXRjaCAoZXJyb3IgKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0fVxuXG5cdGlmICghbWV0aG9kKSB7XG5cdFx0cmV0dXJuIHByb21pc2VJbnZva2VPck5vb3Aob2JqZWN0LCBtZXRob2QyLCBhcmdzMik7XG5cdH1cblxuXHRpZiAoIWFyZ3MxKSB7XG5cdFx0YXJnczEgPSBbXTtcblx0fVxuXG5cdHRyeSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShtZXRob2QuYXBwbHkob2JqZWN0LCBhcmdzMSkpO1xuXHR9XG5cdGNhdGNoIChlcnJvcikge1xuXHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRoZSB3aXRoIHJlc3VsdCBvZiB0aGUgbWV0aG9kIGNhbGwgb3IgdW5kZWZpbmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvbWlzZUludm9rZU9yTm9vcChPOiBhbnksIFA6IHN0cmluZywgYXJnczogYW55W10gPSBbXSk6IFByb21pc2U8YW55PiB7XG5cdGxldCBtZXRob2Q6IGFueTtcblxuXHR0cnkge1xuXHRcdG1ldGhvZCA9IE9bUF07XG5cdH1cblx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0fVxuXG5cdGlmICghbWV0aG9kKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG5cblx0dHJ5IHtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ldGhvZC5hcHBseShPLCBhcmdzKSk7XG5cdH1cblx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdHJlYW1zL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQ0Esd0JBQW9CLFlBQVksQ0FBQyxDQUFBO0lBRWpDOzs7Ozs7Ozs7OztNQVdFO0lBQ0YsZ0NBQXVDLE1BQVc7UUFDakQsSUFBSSxPQUFPLEdBQUcsQ0FBRSxNQUFNLENBQUUsQ0FBQztRQUN6QixJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7UUFFYixHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNyRCxNQUFNLENBQUMsQ0FBQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQy9CLEtBQUssU0FBUztvQkFDYixJQUFJLElBQUksQ0FBQyxDQUFDO29CQUNWLEtBQUssQ0FBQztnQkFFUCxLQUFLLFFBQVE7b0JBQ1osSUFBSSxJQUFJLENBQUMsQ0FBQztvQkFDVixLQUFLLENBQUM7Z0JBRVAsS0FBSyxRQUFRO29CQUNaLElBQUksSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQztvQkFDbEMsS0FBSyxDQUFDO2dCQUVQLEtBQUssUUFBUTtvQkFDWiwyREFBMkQ7b0JBQzNELEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7d0JBQ3pFLEdBQUcsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQ2hDLElBQUksSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQzt3QkFDeEIsQ0FBQztvQkFD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Q0FBTSxFQUFFLENBQVMsRUFBRSxJQUFnQjtRQUFoQixvQkFBZ0IsR0FBaEIsU0FBZ0I7UUFDdEUsSUFBSSxNQUFXLENBQUM7UUFFaEIsSUFBSSxDQUFDO1lBQ0osTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLENBQ0E7UUFBQSxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ2QsTUFBTSxDQUFDLGlCQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDYixNQUFNLENBQUMsaUJBQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixDQUFDO1FBRUQsSUFBSSxDQUFDO1lBQ0osTUFBTSxDQUFDLGlCQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDL0MsQ0FDQTtRQUFBLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDZCxNQUFNLENBQUMsaUJBQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsQ0FBQztJQUNGLENBQUM7SUFwQmUsMkJBQW1CLHNCQW9CbEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuXG4vKlxuQmFzZWQgb24gc2l6ZW9mLmpzIGJ5IFN0ZXBoZW4gTW9ybGV5XG5cbkEgZnVuY3Rpb24gdG8gY2FsY3VsYXRlIHRoZSBhcHByb3hpbWF0ZSBtZW1vcnkgdXNhZ2Ugb2Ygb2JqZWN0c1xuXG5DcmVhdGVkIGJ5IFN0ZXBoZW4gTW9ybGV5IC0gaHR0cDovL2NvZGUuc3RlcGhlbm1vcmxleS5vcmcvIC0gYW5kIHJlbGVhc2VkIHVuZGVyXG50aGUgdGVybXMgb2YgdGhlIENDMCAxLjAgVW5pdmVyc2FsIGxlZ2FsIGNvZGU6XG5cbmh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL3B1YmxpY2RvbWFpbi96ZXJvLzEuMC9sZWdhbGNvZGVcblxuUmV0dXJucyB0aGUgYXBwcm94aW1hdGUgbWVtb3J5IHVzYWdlLCBpbiBieXRlcywgb2YgdGhlIHNwZWNpZmllZCBvYmplY3QuXG4qL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFwcHJveGltYXRlQnl0ZVNpemUob2JqZWN0OiBhbnkpOiBudW1iZXIge1xuXHRsZXQgb2JqZWN0cyA9IFsgb2JqZWN0IF07XG5cdGxldCBzaXplID0gMDtcblxuXHRmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgb2JqZWN0cy5sZW5ndGg7IGluZGV4KyspIHtcblx0XHRzd2l0Y2ggKHR5cGVvZiBvYmplY3RzW2luZGV4XSkge1xuXHRcdFx0Y2FzZSAnYm9vbGVhbic6XG5cdFx0XHRcdHNpemUgKz0gNDtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgJ251bWJlcic6XG5cdFx0XHRcdHNpemUgKz0gODtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgJ3N0cmluZyc6XG5cdFx0XHRcdHNpemUgKz0gMiAqIG9iamVjdHNbaW5kZXhdLmxlbmd0aDtcblx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdGNhc2UgJ29iamVjdCc6XG5cdFx0XHRcdC8vIGlmIHRoZSBvYmplY3QgaXMgbm90IGFuIGFycmF5LCBhZGQgdGhlIHNpemVzIG9mIHRoZSBrZXlzXG5cdFx0XHRcdGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqZWN0c1tpbmRleF0pICE9PSAnW29iamVjdCBBcnJheV0nKSB7XG5cdFx0XHRcdFx0Zm9yIChsZXQga2V5IGluIG9iamVjdHNbaW5kZXhdKSB7XG5cdFx0XHRcdFx0XHRzaXplICs9IDIgKiBrZXkubGVuZ3RoO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIGxvb3Agb3ZlciB0aGUga2V5c1xuXHRcdFx0XHRmb3IgKGxldCBrZXkgaW4gb2JqZWN0c1tpbmRleF0pIHtcblx0XHRcdFx0XHQvLyBkZXRlcm1pbmUgd2hldGhlciB0aGUgdmFsdWUgaGFzIGFscmVhZHkgYmVlbiBwcm9jZXNzZWRcblx0XHRcdFx0XHRsZXQgcHJvY2Vzc2VkID0gZmFsc2U7XG5cblx0XHRcdFx0XHRmb3IgKGxldCBqID0gMDsgaiA8IG9iamVjdHMubGVuZ3RoOyBqKyspIHtcblx0XHRcdFx0XHRcdGlmIChvYmplY3RzW2pdID09PSBvYmplY3RzW2luZGV4XVtrZXldKSB7XG5cdFx0XHRcdFx0XHRcdHByb2Nlc3NlZCA9IHRydWU7XG5cdFx0XHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8vIHF1ZXVlIHRoZSB2YWx1ZSB0byBiZSBwcm9jZXNzZWQgaWYgYXBwcm9wcmlhdGVcblx0XHRcdFx0XHRpZiAoIXByb2Nlc3NlZCkge1xuXHRcdFx0XHRcdFx0b2JqZWN0cy5wdXNoKG9iamVjdHNbaW5kZXhdW2tleV0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiBzaXplO1xufVxuXG4vKipcbiAqIENhbGxzIHRoZSBtZXRob2Qgb3IgcmV0dXJucyB1bmRlZmluZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnZva2VPck5vb3AoTzogYW55LCBQOiBzdHJpbmcsIGFyZ3M6IGFueVtdID0gW10pOiBhbnkge1xuXHRjb25zdCBtZXRob2Q6IEZ1bmN0aW9uID0gT1tQXTtcblx0cmV0dXJuIG1ldGhvZCA/IG1ldGhvZC5hcHBseShPLCBhcmdzKSA6IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZVN0cmF0ZWd5PFQ+KHsgc2l6ZSwgaGlnaFdhdGVyTWFyayA9IDEgfTogU3RyYXRlZ3k8VD4pOiBTdHJhdGVneTxUPiB7XG5cdHJldHVybiA8U3RyYXRlZ3kgPFQ+PiB7XG5cdFx0c2l6ZTogc2l6ZSxcblx0XHRoaWdoV2F0ZXJNYXJrOiBoaWdoV2F0ZXJNYXJrID4gMCA/IGhpZ2hXYXRlck1hcmsgOiAxXG5cdH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm9taXNlSW52b2tlT3JGYWxsYmFja09yTm9vcChvYmplY3Q6IGFueSwgbWV0aG9kMTogc3RyaW5nLCBhcmdzMTogYW55W10sIG1ldGhvZDI6IHN0cmluZywgYXJnczI6IGFueVtdID0gW10pOiBQcm9taXNlPGFueT4ge1xuXHRsZXQgbWV0aG9kOiBGdW5jdGlvbjtcblxuXHR0cnkge1xuXHRcdG1ldGhvZCA9IG9iamVjdFttZXRob2QxXTtcblx0fVxuXHRjYXRjaCAoZXJyb3IgKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0fVxuXG5cdGlmICghbWV0aG9kKSB7XG5cdFx0cmV0dXJuIHByb21pc2VJbnZva2VPck5vb3Aob2JqZWN0LCBtZXRob2QyLCBhcmdzMik7XG5cdH1cblxuXHRpZiAoIWFyZ3MxKSB7XG5cdFx0YXJnczEgPSBbXTtcblx0fVxuXG5cdHRyeSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShtZXRob2QuYXBwbHkob2JqZWN0LCBhcmdzMSkpO1xuXHR9XG5cdGNhdGNoIChlcnJvcikge1xuXHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRoZSB3aXRoIHJlc3VsdCBvZiB0aGUgbWV0aG9kIGNhbGwgb3IgdW5kZWZpbmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvbWlzZUludm9rZU9yTm9vcChPOiBhbnksIFA6IHN0cmluZywgYXJnczogYW55W10gPSBbXSk6IFByb21pc2U8YW55PiB7XG5cdGxldCBtZXRob2Q6IGFueTtcblxuXHR0cnkge1xuXHRcdG1ldGhvZCA9IE9bUF07XG5cdH1cblx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0fVxuXG5cdGlmICghbWV0aG9kKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHR9XG5cblx0dHJ5IHtcblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ldGhvZC5hcHBseShPLCBhcmdzKSk7XG5cdH1cblx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var Promise_1 = require('../Promise'); | ||
@@ -297,6 +298,6 @@ var SizeQueue_1 = require('./SizeQueue'); | ||
return WritableStream; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = WritableStream; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV3JpdGFibGVTdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9Xcml0YWJsZVN0cmVhbS50cyJdLCJuYW1lcyI6WyJTdGF0ZSIsImlzV3JpdGFibGVTdHJlYW0iLCJXcml0YWJsZVN0cmVhbSIsIldyaXRhYmxlU3RyZWFtLmNvbnN0cnVjdG9yIiwiV3JpdGFibGVTdHJlYW0uY2xvc2VkIiwiV3JpdGFibGVTdHJlYW0ucmVhZHkiLCJXcml0YWJsZVN0cmVhbS5zdGF0ZSIsIldyaXRhYmxlU3RyZWFtLl9hZHZhbmNlUXVldWUiLCJXcml0YWJsZVN0cmVhbS5fY2xvc2UiLCJXcml0YWJsZVN0cmVhbS5fZXJyb3IiLCJXcml0YWJsZVN0cmVhbS5fc3luY1N0YXRlV2l0aFF1ZXVlIiwiV3JpdGFibGVTdHJlYW0uYWJvcnQiLCJXcml0YWJsZVN0cmVhbS5jbG9zZSIsIldyaXRhYmxlU3RyZWFtLndyaXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUNBLHdCQUFvQixZQUFZLENBQUMsQ0FBQTtJQUNqQywwQkFBc0IsYUFBYSxDQUFDLENBQUE7SUFDcEMsSUFBWSxJQUFJLFdBQU0sUUFBUSxDQUFDLENBQUE7SUFZL0I7O09BRUc7SUFDSCxXQUFZLEtBQUs7UUFBR0EscUNBQU1BLENBQUFBO1FBQUVBLHVDQUFPQSxDQUFBQTtRQUFFQSx1Q0FBT0EsQ0FBQUE7UUFBRUEsdUNBQU9BLENBQUFBO1FBQUVBLHlDQUFRQSxDQUFBQTtJQUFDQSxDQUFDQSxFQUFyRCxhQUFLLEtBQUwsYUFBSyxRQUFnRDtJQUFqRSxJQUFZLEtBQUssR0FBTCxhQUFxRCxDQUFBO0lBRWpFLHNIQUFzSDtJQUN0SCxtRUFBbUU7SUFDbkUsMEJBQTBCLENBQU07UUFDL0JDLE1BQU1BLENBQUNBLE1BQU1BLENBQUNBLFNBQVNBLENBQUNBLGNBQWNBLENBQUNBLElBQUlBLENBQUNBLENBQUNBLEVBQUVBLGlCQUFpQkEsQ0FBQ0EsQ0FBQ0E7SUFDbkVBLENB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Q0FBQ0EsQ0FBQ0E7Z0JBQzVDQSxJQUFJQSxDQUFDQSxtQkFBbUJBLEVBQUVBLENBQUNBO1lBQzVCQSxDQUNBQTtZQUFBQSxLQUFLQSxDQUFDQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDZEEsc0NBQXNDQTtnQkFDdENBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO2dCQUNuQkEsTUFBTUEsQ0FBQ0EsaUJBQU9BLENBQUNBLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBLENBQUNBO1lBQzlCQSxDQUFDQTtZQUVEQSxJQUFJQSxDQUFDQSxhQUFhQSxFQUFFQSxDQUFDQTtZQUVyQkEsTUFBTUEsQ0FBQ0EsT0FBT0EsQ0FBQ0E7UUFDaEJBLENBQUNBO1FBQ0ZYLHFCQUFDQTtJQUFEQSxDQUFDQSxBQS9URCxJQStUQztJQS9URDtvQ0ErVEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0cmF0ZWd5IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCBQcm9taXNlIGZyb20gJy4uL1Byb21pc2UnO1xuaW1wb3J0IFNpemVRdWV1ZSBmcm9tICcuL1NpemVRdWV1ZSc7XG5pbXBvcnQgKiBhcyB1dGlsIGZyb20gJy4vdXRpbCc7XG5cbi8vIEEgUmVjb3JkIGlzIHVzZWQgaW50ZXJuYWxseSBieSB0aGUgc3RyZWFtIHRvIHByb2Nlc3MgcXVldWVkIHdyaXRlcy4gSXQgcmVwcmVzZW50cyB0aGUgY2h1bmsgdG8gYmUgd3JpdHRlbiBwbHVzXG4vLyBhZGRpdGlvbmFsIG1ldGFkYXRhIHVzZWQgaW50ZXJuYWxseS5cbmV4cG9ydCBpbnRlcmZhY2UgUmVjb3JkPFQ+IHtcblx0Ly8gVGhpcyBmbGFnIGluZGljYXRlcyB0aGF0IHRoaXMgcmVjb3JkIGlzIHRoZSBlbmQgb2YgdGhlIHN0cmVhbSBhbmQgdGhlIHN0cmVhbSBzaG91bGQgY2xvc2Ugd2hlbiBwcm9jZXNzaW5nIGl0XG5cdGNsb3NlPzogYm9vbGVhbjtcblx0Y2h1bms/OiBUO1xuXHRyZWplY3Q/OiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkO1xuXHRyZXNvbHZlPzogKCkgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBXcml0YWJsZVN0cmVhbSdzIHBvc3NpYmxlIHN0YXRlc1xuICovXG5leHBvcnQgZW51bSBTdGF0ZSB7IENsb3NlZCwgQ2xvc2luZywgRXJyb3JlZCwgV2FpdGluZywgV3JpdGFibGUgfVxuXG4vLyBUaGlzIGZ1bmN0aW9uIGlzIGJhc2ljYWxseSBhIGNvbnRleHQgY2hlY2sgdG8gcHJvdGVjdCBhZ2FpbnN0IGNhbGxpbmcgV3JpdGFibGVTdHJlYW0gbWV0aG9kcyB3aXRoIGluY29ycmVjdCBjb250ZXh0XG4vLyAoYXMgb25lIG1pZ2h0IGFjY2lkZW50YWxseSBkbyB3aGVuIHBhc3NpbmcgYSBtZXRob2QgYXMgY2FsbGJhY2spXG5mdW5jdGlvbiBpc1dyaXRhYmxlU3RyZWFtKHg6IGFueSk6IGJvb2xlYW4ge1xuXHRyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHgsICdfdW5kZXJseWluZ1NpbmsnKTtcbn1cblxuLyoqXG4gKiBUaGUgU2luayBpbnRlcmZhY2UgZGVmaW5lcyB0aGUgbWV0aG9kcyBhIG1vZHVsZSBjYW4gaW1wbGVtZW50IHRvIGNyZWF0ZSBhIHRhcmdldCBzaW5rIGZvciBhIGBXcml0YWJsZVN0cmVhbWAuXG4gKlxuICogVGhlIFN0cmVhbSBBUEkgcHJvdmlkZXMgYSBjb25zaXN0ZW50IHN0cmVhbSBBUEkgd2hpbGUgYFJlYWRhYmxlU3RyZWFtLlNvdXJjZWAgYW5kIGBXcml0YWJsZVN0cmVhbS5TaW5rYCBpbXBsZW1lbnRvcnNcbiAqIHByb3ZpZGUgdGhlIGxvZ2ljIHRvIGNvbm5lY3QgYSBzdHJlYW0gdG8gc3BlY2lmaWMgZGF0YSBzb3VyY2VzICYgc2lua3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2luazxUPiB7XG5cblx0LyoqXG5cdCAqIEluZGljYXRlcyB0aGUgc3RyZWFtIGlzIHByZW1hdHVyZWx5IGNsb3NpbmcgZHVlIHRvIGFuIGVycm9yLiAgVGhlIHNpbmsgc2hvdWxkIGRvIGFueSBuZWNlc3NhcnkgY2xlYW51cFxuXHQgKiBhbmQgcmVsZWFzZSByZXNvdXJjZXMuIFdoZW4gYSBzdHJlYW0gY2FsbHMgYGFib3J0YCBpdCB3aWxsIGRpc2NhcmQgYW55IHF1ZXVlZCBjaHVua3MuIElmIHRoZSBzaW5rIGRvZXMgbm90XG5cdCAqIHByb3ZpZGUgYW4gYGFib3J0YCBtZXRob2QgdGhlbiB0aGUgc3RyZWFtIHdpbGwgY2FsbCBgY2xvc2VgIGluc3RlYWQuXG5cdCAqXG5cdCAqIEBwYXJhbSByZWFzb24gVGhlIHJlYXNvbiB0aGUgc3RyZWFtIGlzIGNsb3NpbmcuXG5cdCAqL1xuXHRhYm9ydD8ocmVhc29uPzogYW55KTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoZSBzdHJlYW0gaXMgY2xvc2luZy4gIFRoZSBzaW5rIHNob3VsZCBkbyBhbnkgbmVjZXNzYXJ5IGNsZWFudXAgYW5kIHJlbGVhc2UgcmVzb3VyY2VzLiBUaGUgc3RyZWFtXG5cdCAqIHdpbGwgbm90IGNhbGwgdGhpcyBtZXRob2QgdW50aWwgaXMgaGFzIHN1Y2Nlc3NmdWxseSB3cml0dGVuIGFsbCBxdWV1ZWQgY2h1bmtzLlxuXHQgKi9cblx0Y2xvc2U/KCk6IFByb21pc2U8dm9pZD47XG5cblx0LyoqXG5cdCAqIFJlcXVlc3RzIHRoZSBzaW5rIHRvIHByZXBhcmUgZm9yIHJlY2VpdmluZyBjaHVua3MuXG5cdCAqXG5cdCAqIEBwYXJhbSBlcnJvciBBbiBlcnJvciBjYWxsYmFjayB0aGF0IGNhbiBiZSB1c2VkIGF0IGFueSB0aW1lIGJ5IHRoZSBzaW5rIHRvIGluZGljYXRlIGFuIGVycm9yIGhhcyBvY2N1cnJlZC5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc2luaydzIHN0YXJ0IG9wZXJhdGlvbiBoYXMgZmluaXNoZWQuICBJZiB0aGUgcHJvbWlzZSByZWplY3RzLFxuXHQgKiBcdFx0dGhlIHN0cmVhbSB3aWxsIGJlIGVycm9yZWQuXG5cdCAqL1xuXHRzdGFydD8oZXJyb3I6IChlcnJvcjogRXJyb3IpID0+IHZvaWQpOiBQcm9taXNlPHZvaWQ+O1xuXG5cdC8qKlxuXHQgKiBSZXF1ZXN0cyB0aGUgc2luayB3cml0ZSBhIGNodW5rLlxuXHQgKlxuXHQgKiBAcGFyYW0gY2h1bmsgVGhlIGNodW5rIHRvIGJlIHdyaXR0ZW4uXG5cdCAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHNpbmsncyB3cml0ZSBvcGVyYXRpb24gaGFzIGZpbmlzaGVkLiAgSWYgdGhlIHByb21pc2UgcmVqZWN0cyxcblx0ICogXHRcdHRoZSBzdHJlYW0gd2lsbCBiZSBlcnJvcmVkLlxuXHQgKi9cblx0d3JpdGU/KGNodW5rOiBUKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBUaGlzIGNsYXNzIHByb3ZpZGVzIGEgd3JpdGFibGUgc3RyZWFtIGltcGxlbWVudGF0aW9uLiBEYXRhIHdyaXR0ZW4gdG8gYSBzdHJlYW0gd2lsbCBiZSBwYXNzZWQgb24gdG8gdGhlIHVuZGVybHlpbmdcbiAqIHNpbmsgKGBXcml0YWJsZVN0cmVhbS5TaW5rYCksIGFuIGluc3RhbmNlIG9mIHdoaWNoIG11c3QgYmUgc3VwcGxpZWQgdG8gdGhlIHN0cmVhbSB1cG9uIGluc3RhbnRhdGlvbi4gVGhpcyBjbGFzc1xuICogcHJvdmlkZXMgdGhlIHN0YW5kYXJkIHN0cmVhbSBBUEksIHdoaWxlIGltcGxlbWVudGF0aW9ucyBvZiB0aGUgYFNpbmtgIEFQSSBhbGxvdyB0aGUgZGF0YSB0byBiZSB3cml0dGVuIHRvXG4gKiB2YXJpb3VzIHBlcnNpc3RlbmNlIGxheWVycy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV3JpdGFibGVTdHJlYW08VD4ge1xuXHQvKipcblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgc3RyZWFtIGlzIGNsb3NlZCwgb3IgaXMgcmVqZWN0ZWQgaWYgdGhlIHN0cmVhbSBlcnJvcnMuXG5cdCAqL1xuXHRnZXQgY2xvc2VkKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiB0aGlzLl9jbG9zZWRQcm9taXNlO1xuXHR9XG5cblx0LyoqXG5cdCAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IGlzIHJlc29sdmVkIHdoZW4gdGhlIHN0cmVhbSB0cmFuc2l0aW9ucyBhd2F5IGZyb20gdGhlICd3YWl0aW5nJyBzdGF0ZS4gVGhlIHN0cmVhbSB3aWxsXG5cdCAqIHVzZSB0aGlzIHRvIGluZGljYXRlIGJhY2twcmVzc3VyZSAtIGFuIHVucmVzb2x2ZWQgYHJlYWR5YCBwcm9taXNlIGluZGljYXRlcyB0aGF0IHdyaXRlcyBzaG91bGQgbm90IHlldCBiZVxuXHQgKiBwZXJmb3JtZWQuXG5cdCAqL1xuXHRnZXQgcmVhZHkoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0cmV0dXJuIHRoaXMuX3JlYWR5UHJvbWlzZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBAcmV0dXJucyBUaGUgc3RyZWFtJ3MgY3VycmVudCBAU3RhdGVcblx0ICovXG5cdGdldCBzdGF0ZSgpOiBTdGF0ZSB7XG5cdFx0cmV0dXJuIHRoaXMuX3N0YXRlO1xuXHR9XG5cblx0cHJvdGVjdGVkIF9hZHZhbmNpbmc6IGJvb2xlYW47XG5cdHByb3RlY3RlZCBfY2xvc2VkUHJvbWlzZTogUHJvbWlzZTx2b2lkPjtcblx0cHJvdGVjdGVkIF9yZWFkeVByb21pc2U6IFByb21pc2U8dm9pZD47XG5cdHByb3RlY3RlZCBfcmVqZWN0Q2xvc2VkUHJvbWlzZTogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcblx0cHJvdGVjdGVkIF9yZWplY3RSZWFkeVByb21pc2U6IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XG5cdHByb3RlY3RlZCBfcmVzb2x2ZUNsb3NlZFByb21pc2U6ICgpID0+IHZvaWQ7XG5cdHByb3RlY3RlZCBfcmVzb2x2ZVJlYWR5UHJvbWlzZTogKCkgPT4gdm9pZDtcblx0cHJvdGVjdGVkIF9zdGFydGVkOiBib29sZWFuO1xuXHRwcm90ZWN0ZWQgX3N0YXJ0ZWRQcm9taXNlOiBQcm9taXNlPGFueT47XG5cdHByb3RlY3RlZCBfc3RhdGU6IFN0YXRlO1xuXHRwcm90ZWN0ZWQgX3N0b3JlZEVycm9yOiBFcnJvcjtcblx0cHJvdGVjdGVkIF9zdHJhdGVneTogU3RyYXRlZ3k8VD47XG5cdHByb3RlY3RlZCBfdW5kZXJseWluZ1Npbms6IFNpbms8VD47XG5cdHByb3RlY3RlZCBfcXVldWU6IFNpemVRdWV1ZTxSZWNvcmQ8VD4+O1xuXHRwcm90ZWN0ZWQgX3dyaXRpbmc6IGJvb2xlYW47XG5cblx0Y29uc3RydWN0b3IodW5kZXJseWluZ1Npbms6IFNpbms8VD4gPSB7fSwgc3RyYXRlZ3k6IFN0cmF0ZWd5PFQ+ID0ge30pIHtcblx0XHR0aGlzLl91bmRlcmx5aW5nU2luayA9IHVuZGVybHlpbmdTaW5rO1xuXG5cdFx0dGhpcy5fY2xvc2VkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcblx0XHRcdHRoaXMuX3Jlc29sdmVDbG9zZWRQcm9taXNlID0gcmVzb2x2ZTtcblx0XHRcdHRoaXMuX3JlamVjdENsb3NlZFByb21pc2UgPSByZWplY3Q7XG5cdFx0fSk7XG5cblx0XHR0aGlzLl9hZHZhbmNpbmcgPSBmYWxzZTtcblx0XHR0aGlzLl9yZWFkeVByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcblx0XHR0aGlzLl9xdWV1ZSA9IG5ldyBTaXplUXVldWU8UmVjb3JkPFQ+PigpO1xuXHRcdHRoaXMuX3N0YXRlID0gU3RhdGUuV3JpdGFibGU7XG5cdFx0dGhpcy5fc3RhcnRlZCA9IGZhbHNlO1xuXHRcdHRoaXMuX3dyaXRpbmcgPSBmYWxzZTtcblx0XHR0aGlzLl9zdHJhdGVneSA9IHV0aWwubm9ybWFsaXplU3RyYXRlZ3koc3RyYXRlZ3kpO1xuXHRcdHRoaXMuX3N5bmNTdGF0ZVdpdGhRdWV1ZSgpO1xuXG5cdFx0dGhpcy5fc3RhcnRlZFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoXG5cdFx0XHR1dGlsLmludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU2luaywgJ3N0YXJ0JywgWyB0aGlzLl9lcnJvci5iaW5kKHRoaXMpIF0pXG5cdFx0KS50aGVuKCgpID0+IHtcblx0XHRcdHRoaXMuX3N0YXJ0ZWQgPSB0cnVlO1xuXHRcdFx0dGhpcy5fc3RhcnRlZFByb21pc2UgPSB1bmRlZmluZWQ7XG5cdFx0fSwgKGVycm9yOiBFcnJvcikgPT4ge1xuXHRcdFx0dGhpcy5fZXJyb3IoZXJyb3IpO1xuXHRcdH0pO1xuXHR9XG5cblx0Ly8gVGhpcyBtZXRob2QgY29tYmluZXMgdGhlIGxvZ2ljIG9mIHR3byBtZXRob2RzOlxuXHQvLyA0LjMuMSBDYWxsT3JTY2hlZHVsZVdyaXRhYmxlU3RyZWFtQWR2YW5jZVF1ZXVlXG5cdC8vIDQuMy42IFdyaXRhYmxlU3RyZWFtQWR2YW5jZVF1ZXVlXG5cdHByb3RlY3RlZCBfYWR2YW5jZVF1ZXVlKCkge1xuXHRcdGlmICghdGhpcy5fc3RhcnRlZCkge1xuXHRcdFx0aWYgKCF0aGlzLl9hZHZhbmNpbmcpIHtcblx0XHRcdFx0dGhpcy5fYWR2YW5jaW5nID0gdHJ1ZTtcblx0XHRcdFx0dGhpcy5fc3RhcnRlZFByb21pc2UudGhlbigoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5fYWR2YW5jZVF1ZXVlKCk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0aWYgKCF0aGlzLl9xdWV1ZSB8fCB0aGlzLl93cml0aW5nKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Y29uc3Qgd3JpdGVSZWNvcmQ6IFJlY29yZDxUPiA9IHRoaXMuX3F1ZXVlLnBlZWsoKTtcblxuXHRcdGlmICh3cml0ZVJlY29yZC5jbG9zZSkge1xuXHRcdFx0Ly8gVE9ETzogU0tJUD8gQXNzZXJ0IDQuMy42LTMuYVxuXHRcdFx0aWYgKHRoaXMuc3RhdGUgIT09IFN0YXRlLkNsb3NpbmcpIHtcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHJlY29yZCcpO1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLl9xdWV1ZS5kZXF1ZXVlKCk7XG5cdFx0XHQvLyBUT0RPOiBTS0lQPyBBc3NlcnQgNC4zLjYtMy5jXG5cdFx0XHR0aGlzLl9jbG9zZSgpO1xuXG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0dGhpcy5fd3JpdGluZyA9IHRydWU7XG5cblx0XHR1dGlsLnByb21pc2VJbnZva2VPck5vb3AodGhpcy5fdW5kZXJseWluZ1NpbmssICd3cml0ZScsIFsgd3JpdGVSZWNvcmQuY2h1bmsgXSkudGhlbigoKSA9PiB7XG5cdFx0XHRpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuRXJyb3JlZCkge1xuXHRcdFx0XHR0aGlzLl93cml0aW5nID0gZmFsc2U7XG5cdFx0XHRcdHdyaXRlUmVjb3JkLnJlc29sdmUoKTtcblx0XHRcdFx0dGhpcy5fcXVldWUuZGVxdWV1ZSgpO1xuXG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0dGhpcy5fc3luY1N0YXRlV2l0aFF1ZXVlKCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMuX2Vycm9yKGVycm9yKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRoaXMuX2FkdmFuY2VRdWV1ZSgpO1xuXHRcdFx0fVxuXHRcdH0sIChlcnJvcjogRXJyb3IpID0+IHtcblx0XHRcdHRoaXMuX2Vycm9yKGVycm9yKTtcblx0XHR9KTtcblx0fVxuXG5cdC8vIDQuMy4yIENsb3NlV3JpdGFibGVTdHJlYW1cblx0cHJvdGVjdGVkIF9jbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuQ2xvc2luZykge1xuXHRcdFx0Ly8gNC4zLjItMVxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdXcml0YWJsZVN0cmVhbSNfY2xvc2UgY2FsbGVkIHdoaWxlIHN0YXRlIGlzIG5vdCBcIkNsb3NpbmdcIicpO1xuXHRcdH1cblxuXHRcdHV0aWwucHJvbWlzZUludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU2luaywgJ2Nsb3NlJykudGhlbigoKSA9PiB7XG5cdFx0XHRpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuRXJyb3JlZCkge1xuXHRcdFx0XHQvLyBUT0RPOiBBc3NlcnQgNC4zLjIuMi1hLmlpXG5cdFx0XHRcdHRoaXMuX3Jlc29sdmVDbG9zZWRQcm9taXNlKCk7XG5cdFx0XHRcdHRoaXMuX3N0YXRlID0gU3RhdGUuQ2xvc2VkO1xuXHRcdFx0XHR0aGlzLl91bmRlcmx5aW5nU2luayA9IHVuZGVmaW5lZDtcblx0XHRcdH1cblx0XHR9LCAoZXJyb3I6IEVycm9yKSA9PiB7XG5cdFx0XHR0aGlzLl9lcnJvcihlcnJvcik7XG5cdFx0fSk7XG5cdH1cblxuXHQvLyA0LjMuMyBFcnJvcldyaXRhYmxlU3RyZWFtXG5cdHByb3RlY3RlZCBfZXJyb3IoZXJyb3I6IEVycm9yKSB7XG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkNsb3NlZCB8fCB0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0bGV0IHdyaXRlUmVjb3JkOiBSZWNvcmQ8VD47XG5cblx0XHR3aGlsZSAodGhpcy5fcXVldWUubGVuZ3RoKSB7XG5cdFx0XHR3cml0ZVJlY29yZCA9IHRoaXMuX3F1ZXVlLmRlcXVldWUoKTtcblxuXHRcdFx0aWYgKCF3cml0ZVJlY29yZC5jbG9zZSkge1xuXHRcdFx0XHR3cml0ZVJlY29yZC5yZWplY3QoZXJyb3IpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRoaXMuX3N0b3JlZEVycm9yID0gZXJyb3I7XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuV2FpdGluZykge1xuXHRcdFx0dGhpcy5fcmVzb2x2ZVJlYWR5UHJvbWlzZSgpO1xuXHRcdH1cblxuXHRcdHRoaXMuX3JlamVjdENsb3NlZFByb21pc2UoZXJyb3IpO1xuXHRcdHRoaXMuX3N0YXRlID0gU3RhdGUuRXJyb3JlZDtcblx0fVxuXG5cdC8vIDQuMy41IFN5bmNXcml0YWJsZVN0cmVhbVN0YXRlV2l0aFF1ZXVlXG5cdHByb3RlY3RlZCBfc3luY1N0YXRlV2l0aFF1ZXVlKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zaW5nKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Y29uc3QgcXVldWVTaXplID0gdGhpcy5fcXVldWUudG90YWxTaXplO1xuXHRcdGNvbnN0IHNob3VsZEFwcGx5QmFja1ByZXNzdXJlID0gcXVldWVTaXplID4gdGhpcy5fc3RyYXRlZ3kuaGlnaFdhdGVyTWFyaztcblxuXHRcdGlmIChzaG91bGRBcHBseUJhY2tQcmVzc3VyZSAmJiB0aGlzLnN0YXRlID09PSBTdGF0ZS5Xcml0YWJsZSkge1xuXHRcdFx0dGhpcy5fc3RhdGUgPSBTdGF0ZS5XYWl0aW5nO1xuXHRcdFx0dGhpcy5fcmVhZHlQcm9taXNlID0gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuXHRcdFx0XHR0aGlzLl9yZXNvbHZlUmVhZHlQcm9taXNlID0gcmVzb2x2ZTtcblx0XHRcdFx0dGhpcy5fcmVqZWN0UmVhZHlQcm9taXNlID0gcmVqZWN0O1xuXHRcdFx0fSk7XG5cdFx0fVxuXG5cdFx0aWYgKHNob3VsZEFwcGx5QmFja1ByZXNzdXJlID09PSBmYWxzZSAmJiB0aGlzLnN0YXRlID09PSBTdGF0ZS5XYWl0aW5nKSB7XG5cdFx0XHR0aGlzLl9zdGF0ZSA9IFN0YXRlLldyaXRhYmxlO1xuXHRcdFx0dGhpcy5fcmVzb2x2ZVJlYWR5UHJvbWlzZSgpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBTaWduYWxzIHRoYXQgdGhlIHByb2R1Y2VyIGNhbiBubyBsb25nZXIgd3JpdGUgdG8gdGhlIHN0cmVhbSBhbmQgaXQgc2hvdWxkIGJlIGltbWVkaWF0ZWx5IG1vdmVkIHRvIGFuIFwiZXJyb3JlZFwiXG5cdCAqIHN0YXRlLiBBbnkgdW4td3JpdHRlbiBkYXRhIHRoYXQgaXMgcXVldWVkIHdpbGwgYmUgZGlzY2FyZGVkLlxuXHQgKi9cblx0YWJvcnQocmVhc29uOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyA0LjIuNC40LTFcblx0XHRpZiAoIWlzV3JpdGFibGVTdHJlYW0odGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChcblx0XHRcdFx0bmV3IEVycm9yKCdXcml0YWJsZVN0cmVhbSBtZXRob2QgY2FsbGVkIGluIGNvbnRleHQgb2Ygb2JqZWN0IHRoYXQgaXMgbm90IGEgV3JpdGFibGVTdHJlYW0gaW5zdGFuY2UnKVxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2VkKSB7XG5cdFx0XHQvLyA0LjIuNC40LTJcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuRXJyb3JlZCkge1xuXHRcdFx0Ly8gNC4yLjQuNC0zXG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QodGhpcy5fc3RvcmVkRXJyb3IpO1xuXHRcdH1cblxuXHRcdGNvbnN0IGVycm9yOiBFcnJvciA9IHJlYXNvbiBpbnN0YW5jZW9mIEVycm9yID8gcmVhc29uIDogbmV3IEVycm9yKHJlYXNvbik7XG5cblx0XHR0aGlzLl9lcnJvcihlcnJvcik7XG5cblx0XHRyZXR1cm4gdXRpbC5wcm9taXNlSW52b2tlT3JGYWxsYmFja09yTm9vcCh0aGlzLl91bmRlcmx5aW5nU2luaywgJ2Fib3J0JywgWyByZWFzb24gXSwgJ2Nsb3NlJylcblx0XHRcdC50aGVuKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogU2lnbmFscyB0aGF0IHRoZSBwcm9kdWNlciBpcyBkb25lIHdyaXRpbmcgdG8gdGhlIHN0cmVhbSBhbmQgd2lzaGVzIHRvIG1vdmUgaXQgdG8gYSBcImNsb3NlZFwiIHN0YXRlLiBUaGUgc3RyZWFtXG5cdCAqIG1heSBoYXZlIHVuLXdyaXR0ZWQgZGF0YSBxdWV1ZWQ7IHVudGlsIHRoZSBkYXRhIGhhcyBiZWVuIHdyaXR0ZW4gdGhlIHN0cmVhbSB3aWxsIHJlbWFpbiBpbiB0aGUgXCJjbG9zaW5nXCIgc3RhdGUuXG5cdCAqL1xuXHRjbG9zZSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyA0LjIuNC41LTFcblx0XHRpZiAoIWlzV3JpdGFibGVTdHJlYW0odGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChcblx0XHRcdFx0bmV3IEVycm9yKCdXcml0YWJsZVN0cmVhbSBtZXRob2QgY2FsbGVkIGluIGNvbnRleHQgb2Ygb2JqZWN0IHRoYXQgaXMgbm90IGEgV3JpdGFibGVTdHJlYW0gaW5zdGFuY2UnKVxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHQvLyA0LjIuNC41LTJcblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2VkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignU3RyZWFtIGlzIGFscmVhZHkgY2xvc2VkJykpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zaW5nKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignU3RyZWFtIGlzIGFscmVhZHkgY2xvc2luZycpKTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuRXJyb3JlZCkge1xuXHRcdFx0Ly8gNC4yLjQuNS0zXG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QodGhpcy5fc3RvcmVkRXJyb3IpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5XYWl0aW5nKSB7XG5cdFx0XHQvLyA0LjIuNC41LTRcblx0XHRcdHRoaXMuX3Jlc29sdmVSZWFkeVByb21pc2UoKTtcblx0XHR9XG5cblx0XHR0aGlzLl9zdGF0ZSA9IFN0YXRlLkNsb3Npbmc7XG5cdFx0dGhpcy5fcXVldWUuZW5xdWV1ZSh7IGNsb3NlOiB0cnVlIH0sIDApO1xuXHRcdHRoaXMuX2FkdmFuY2VRdWV1ZSgpO1xuXG5cdFx0cmV0dXJuIHRoaXMuX2Nsb3NlZFByb21pc2U7XG5cdH1cblxuXHQvKipcblx0ICogRW5xdWV1ZSBhIGNodW5rIG9mIGRhdGEgdG8gYmUgd3JpdHRlbiB0byB0aGUgdW5kZXJseWluZyBzaW5rLiBgd3JpdGVgIGNhbiBiZSBjYWxsZWQgc3VjY2Vzc2l2ZWx5IHdpdGhvdXQgd2FpdGluZ1xuXHQgKiBmb3IgdGhlIHByZXZpb3VzIHdyaXRlJ3MgcHJvbWlzZSB0byByZXNvbHZlLiBUbyByZXNwZWN0IHRoZSBzdHJlYW0ncyBiYWNrcHJlc3N1cmUgaW5kaWNhdG9yLCBjaGVjayBpZiB0aGUgc3RyZWFtXG5cdCAqIGhhcyBlbnRlcmVkIHRoZSBcIndhaXRpbmdcIiBzdGF0ZSBiZXR3ZWVuIHdyaXRlcy5cblx0ICpcblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgd2lsbCBiZSBmdWxmaWxsZWQgd2hlbiB0aGUgY2h1bmsgaGFzIGJlZW4gd3JpdHRlbiB0byB0aGUgdW5kZXJseWluZyBzaW5rLlxuXHQgKi9cblx0d3JpdGUoY2h1bms6IFQpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyA0LjIuNC42LTFcblx0XHRpZiAoIWlzV3JpdGFibGVTdHJlYW0odGhpcykpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChcblx0XHRcdFx0bmV3IEVycm9yKCdXcml0YWJsZVN0cmVhbSBtZXRob2QgY2FsbGVkIGluIGNvbnRleHQgb2Ygb2JqZWN0IHRoYXQgaXMgbm90IGEgV3JpdGFibGVTdHJlYW0gaW5zdGFuY2UnKVxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHQvLyA0LjIuNC42LTJcblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2VkKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignU3RyZWFtIGlzIGNsb3NlZCcpKTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2luZykge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBUeXBlRXJyb3IoJ1N0cmVhbSBpcyBjbG9zaW5nJykpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHQvLyA0LjIuNC42LTNcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdCh0aGlzLl9zdG9yZWRFcnJvcik7XG5cdFx0fVxuXG5cdFx0bGV0IGNodW5rU2l6ZSA9IDE7XG5cdFx0bGV0IHdyaXRlUmVjb3JkOiBSZWNvcmQ8VD47XG5cdFx0bGV0IHByb21pc2UgPSBuZXcgUHJvbWlzZTx2b2lkPihmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG5cdFx0XHR3cml0ZVJlY29yZCA9IHtcblx0XHRcdFx0Y2h1bms6IGNodW5rLFxuXHRcdFx0XHRyZWplY3Q6IHJlamVjdCxcblx0XHRcdFx0cmVzb2x2ZTogcmVzb2x2ZVxuXHRcdFx0fTtcblx0XHR9KTtcblxuXHRcdC8vIDQuMi40LjYtNi5iXG5cdFx0dHJ5IHtcblx0XHRcdGlmICh0aGlzLl9zdHJhdGVneSAmJiB0aGlzLl9zdHJhdGVneS5zaXplKSB7XG5cdFx0XHRcdGNodW5rU2l6ZSA9IHRoaXMuX3N0cmF0ZWd5LnNpemUoY2h1bmspO1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLl9xdWV1ZS5lbnF1ZXVlKHdyaXRlUmVjb3JkLCBjaHVua1NpemUpO1xuXHRcdFx0dGhpcy5fc3luY1N0YXRlV2l0aFF1ZXVlKCk7XG5cdFx0fVxuXHRcdGNhdGNoIChlcnJvcikge1xuXHRcdFx0Ly8gNC4yLjQuNi02LmIsIDQuMi40LjYtMTAsIDQuMi40LjYtMTJcblx0XHRcdHRoaXMuX2Vycm9yKGVycm9yKTtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG5cdFx0fVxuXG5cdFx0dGhpcy5fYWR2YW5jZVF1ZXVlKCk7XG5cblx0XHRyZXR1cm4gcHJvbWlzZTtcblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV3JpdGFibGVTdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyZWFtcy9Xcml0YWJsZVN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFDQSx3QkFBb0IsWUFBWSxDQUFDLENBQUE7SUFDakMsMEJBQXNCLGFBQWEsQ0FBQyxDQUFBO0lBQ3BDLElBQVksSUFBSSxXQUFNLFFBQVEsQ0FBQyxDQUFBO0lBWS9COztPQUVHO0lBQ0gsV0FBWSxLQUFLO1FBQUcscUNBQU0sQ0FBQTtRQUFFLHVDQUFPLENBQUE7UUFBRSx1Q0FBTyxDQUFBO1FBQUUsdUNBQU8sQ0FBQTtRQUFFLHlDQUFRLENBQUE7SUFBQyxDQUFDLEVBQXJELGFBQUssS0FBTCxhQUFLLFFBQWdEO0lBQWpFLElBQVksS0FBSyxHQUFMLGFBQXFELENBQUE7SUFFakUsc0hBQXNIO0lBQ3RILG1FQUFtRTtJQUNuRSwwQkFBMEIsQ0FBTTtRQUMvQixNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUE0Q0Q7Ozs7O09BS0c7SUFDSDtRQXdDQyx3QkFBWSxjQUE0QixFQUFFLFFBQTBCO1lBeENyRSxpQkErVEM7WUF2UlksOEJBQTRCLEdBQTVCLG1CQUE0QjtZQUFFLHdCQUEwQixHQUExQixhQUEwQjtZQUNuRSxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztZQUV0QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksaUJBQU8sQ0FBTyxVQUFDLE9BQU8sRUFBRSxNQUFNO2dCQUN2RCxLQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDO2dCQUNyQyxLQUFJLENBQUMsb0JBQW9CLEdBQUcsTUFBTSxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDeEIsSUFBSSxD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LE9BQU8sQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzVCLENBQ0E7WUFBQSxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNkLHNDQUFzQztnQkFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbkIsTUFBTSxDQUFDLGlCQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLENBQUM7WUFFRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFFckIsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNoQixDQUFDO1FBQ0YscUJBQUM7SUFBRCxDQUFDLEFBL1RELElBK1RDO0lBL1REO29DQStUQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RyYXRlZ3kgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IFByb21pc2UgZnJvbSAnLi4vUHJvbWlzZSc7XG5pbXBvcnQgU2l6ZVF1ZXVlIGZyb20gJy4vU2l6ZVF1ZXVlJztcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSAnLi91dGlsJztcblxuLy8gQSBSZWNvcmQgaXMgdXNlZCBpbnRlcm5hbGx5IGJ5IHRoZSBzdHJlYW0gdG8gcHJvY2VzcyBxdWV1ZWQgd3JpdGVzLiBJdCByZXByZXNlbnRzIHRoZSBjaHVuayB0byBiZSB3cml0dGVuIHBsdXNcbi8vIGFkZGl0aW9uYWwgbWV0YWRhdGEgdXNlZCBpbnRlcm5hbGx5LlxuZXhwb3J0IGludGVyZmFjZSBSZWNvcmQ8VD4ge1xuXHQvLyBUaGlzIGZsYWcgaW5kaWNhdGVzIHRoYXQgdGhpcyByZWNvcmQgaXMgdGhlIGVuZCBvZiB0aGUgc3RyZWFtIGFuZCB0aGUgc3RyZWFtIHNob3VsZCBjbG9zZSB3aGVuIHByb2Nlc3NpbmcgaXRcblx0Y2xvc2U/OiBib29sZWFuO1xuXHRjaHVuaz86IFQ7XG5cdHJlamVjdD86IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XG5cdHJlc29sdmU/OiAoKSA9PiB2b2lkO1xufVxuXG4vKipcbiAqIFdyaXRhYmxlU3RyZWFtJ3MgcG9zc2libGUgc3RhdGVzXG4gKi9cbmV4cG9ydCBlbnVtIFN0YXRlIHsgQ2xvc2VkLCBDbG9zaW5nLCBFcnJvcmVkLCBXYWl0aW5nLCBXcml0YWJsZSB9XG5cbi8vIFRoaXMgZnVuY3Rpb24gaXMgYmFzaWNhbGx5IGEgY29udGV4dCBjaGVjayB0byBwcm90ZWN0IGFnYWluc3QgY2FsbGluZyBXcml0YWJsZVN0cmVhbSBtZXRob2RzIHdpdGggaW5jb3JyZWN0IGNvbnRleHRcbi8vIChhcyBvbmUgbWlnaHQgYWNjaWRlbnRhbGx5IGRvIHdoZW4gcGFzc2luZyBhIG1ldGhvZCBhcyBjYWxsYmFjaylcbmZ1bmN0aW9uIGlzV3JpdGFibGVTdHJlYW0oeDogYW55KTogYm9vbGVhbiB7XG5cdHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoeCwgJ191bmRlcmx5aW5nU2luaycpO1xufVxuXG4vKipcbiAqIFRoZSBTaW5rIGludGVyZmFjZSBkZWZpbmVzIHRoZSBtZXRob2RzIGEgbW9kdWxlIGNhbiBpbXBsZW1lbnQgdG8gY3JlYXRlIGEgdGFyZ2V0IHNpbmsgZm9yIGEgYFdyaXRhYmxlU3RyZWFtYC5cbiAqXG4gKiBUaGUgU3RyZWFtIEFQSSBwcm92aWRlcyBhIGNvbnNpc3RlbnQgc3RyZWFtIEFQSSB3aGlsZSBgUmVhZGFibGVTdHJlYW0uU291cmNlYCBhbmQgYFdyaXRhYmxlU3RyZWFtLlNpbmtgIGltcGxlbWVudG9yc1xuICogcHJvdmlkZSB0aGUgbG9naWMgdG8gY29ubmVjdCBhIHN0cmVhbSB0byBzcGVjaWZpYyBkYXRhIHNvdXJjZXMgJiBzaW5rcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaW5rPFQ+IHtcblxuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoZSBzdHJlYW0gaXMgcHJlbWF0dXJlbHkgY2xvc2luZyBkdWUgdG8gYW4gZXJyb3IuICBUaGUgc2luayBzaG91bGQgZG8gYW55IG5lY2Vzc2FyeSBjbGVhbnVwXG5cdCAqIGFuZCByZWxlYXNlIHJlc291cmNlcy4gV2hlbiBhIHN0cmVhbSBjYWxscyBgYWJvcnRgIGl0IHdpbGwgZGlzY2FyZCBhbnkgcXVldWVkIGNodW5rcy4gSWYgdGhlIHNpbmsgZG9lcyBub3Rcblx0ICogcHJvdmlkZSBhbiBgYWJvcnRgIG1ldGhvZCB0aGVuIHRoZSBzdHJlYW0gd2lsbCBjYWxsIGBjbG9zZWAgaW5zdGVhZC5cblx0ICpcblx0ICogQHBhcmFtIHJlYXNvbiBUaGUgcmVhc29uIHRoZSBzdHJlYW0gaXMgY2xvc2luZy5cblx0ICovXG5cdGFib3J0PyhyZWFzb24/OiBhbnkpOiBQcm9taXNlPHZvaWQ+O1xuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhlIHN0cmVhbSBpcyBjbG9zaW5nLiAgVGhlIHNpbmsgc2hvdWxkIGRvIGFueSBuZWNlc3NhcnkgY2xlYW51cCBhbmQgcmVsZWFzZSByZXNvdXJjZXMuIFRoZSBzdHJlYW1cblx0ICogd2lsbCBub3QgY2FsbCB0aGlzIG1ldGhvZCB1bnRpbCBpcyBoYXMgc3VjY2Vzc2Z1bGx5IHdyaXR0ZW4gYWxsIHF1ZXVlZCBjaHVua3MuXG5cdCAqL1xuXHRjbG9zZT8oKTogUHJvbWlzZTx2b2lkPjtcblxuXHQvKipcblx0ICogUmVxdWVzdHMgdGhlIHNpbmsgdG8gcHJlcGFyZSBmb3IgcmVjZWl2aW5nIGNodW5rcy5cblx0ICpcblx0ICogQHBhcmFtIGVycm9yIEFuIGVycm9yIGNhbGxiYWNrIHRoYXQgY2FuIGJlIHVzZWQgYXQgYW55IHRpbWUgYnkgdGhlIHNpbmsgdG8gaW5kaWNhdGUgYW4gZXJyb3IgaGFzIG9jY3VycmVkLlxuXHQgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBzaW5rJ3Mgc3RhcnQgb3BlcmF0aW9uIGhhcyBmaW5pc2hlZC4gIElmIHRoZSBwcm9taXNlIHJlamVjdHMsXG5cdCAqIFx0XHR0aGUgc3RyZWFtIHdpbGwgYmUgZXJyb3JlZC5cblx0ICovXG5cdHN0YXJ0PyhlcnJvcjogKGVycm9yOiBFcnJvcikgPT4gdm9pZCk6IFByb21pc2U8dm9pZD47XG5cblx0LyoqXG5cdCAqIFJlcXVlc3RzIHRoZSBzaW5rIHdyaXRlIGEgY2h1bmsuXG5cdCAqXG5cdCAqIEBwYXJhbSBjaHVuayBUaGUgY2h1bmsgdG8gYmUgd3JpdHRlbi5cblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgc2luaydzIHdyaXRlIG9wZXJhdGlvbiBoYXMgZmluaXNoZWQuICBJZiB0aGUgcHJvbWlzZSByZWplY3RzLFxuXHQgKiBcdFx0dGhlIHN0cmVhbSB3aWxsIGJlIGVycm9yZWQuXG5cdCAqL1xuXHR3cml0ZT8oY2h1bms6IFQpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFRoaXMgY2xhc3MgcHJvdmlkZXMgYSB3cml0YWJsZSBzdHJlYW0gaW1wbGVtZW50YXRpb24uIERhdGEgd3JpdHRlbiB0byBhIHN0cmVhbSB3aWxsIGJlIHBhc3NlZCBvbiB0byB0aGUgdW5kZXJseWluZ1xuICogc2luayAoYFdyaXRhYmxlU3RyZWFtLlNpbmtgKSwgYW4gaW5zdGFuY2Ugb2Ygd2hpY2ggbXVzdCBiZSBzdXBwbGllZCB0byB0aGUgc3RyZWFtIHVwb24gaW5zdGFudGF0aW9uLiBUaGlzIGNsYXNzXG4gKiBwcm92aWRlcyB0aGUgc3RhbmRhcmQgc3RyZWFtIEFQSSwgd2hpbGUgaW1wbGVtZW50YXRpb25zIG9mIHRoZSBgU2lua2AgQVBJIGFsbG93IHRoZSBkYXRhIHRvIGJlIHdyaXR0ZW4gdG9cbiAqIHZhcmlvdXMgcGVyc2lzdGVuY2UgbGF5ZXJzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXcml0YWJsZVN0cmVhbTxUPiB7XG5cdC8qKlxuXHQgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCBpcyByZXNvbHZlZCB3aGVuIHRoZSBzdHJlYW0gaXMgY2xvc2VkLCBvciBpcyByZWplY3RlZCBpZiB0aGUgc3RyZWFtIGVycm9ycy5cblx0ICovXG5cdGdldCBjbG9zZWQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0cmV0dXJuIHRoaXMuX2Nsb3NlZFByb21pc2U7XG5cdH1cblxuXHQvKipcblx0ICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgc3RyZWFtIHRyYW5zaXRpb25zIGF3YXkgZnJvbSB0aGUgJ3dhaXRpbmcnIHN0YXRlLiBUaGUgc3RyZWFtIHdpbGxcblx0ICogdXNlIHRoaXMgdG8gaW5kaWNhdGUgYmFja3ByZXNzdXJlIC0gYW4gdW5yZXNvbHZlZCBgcmVhZHlgIHByb21pc2UgaW5kaWNhdGVzIHRoYXQgd3JpdGVzIHNob3VsZCBub3QgeWV0IGJlXG5cdCAqIHBlcmZvcm1lZC5cblx0ICovXG5cdGdldCByZWFkeSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRyZXR1cm4gdGhpcy5fcmVhZHlQcm9taXNlO1xuXHR9XG5cblx0LyoqXG5cdCAqIEByZXR1cm5zIFRoZSBzdHJlYW0ncyBjdXJyZW50IEBTdGF0ZVxuXHQgKi9cblx0Z2V0IHN0YXRlKCk6IFN0YXRlIHtcblx0XHRyZXR1cm4gdGhpcy5fc3RhdGU7XG5cdH1cblxuXHRwcm90ZWN0ZWQgX2FkdmFuY2luZzogYm9vbGVhbjtcblx0cHJvdGVjdGVkIF9jbG9zZWRQcm9taXNlOiBQcm9taXNlPHZvaWQ+O1xuXHRwcm90ZWN0ZWQgX3JlYWR5UHJvbWlzZTogUHJvbWlzZTx2b2lkPjtcblx0cHJvdGVjdGVkIF9yZWplY3RDbG9zZWRQcm9taXNlOiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkO1xuXHRwcm90ZWN0ZWQgX3JlamVjdFJlYWR5UHJvbWlzZTogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcblx0cHJvdGVjdGVkIF9yZXNvbHZlQ2xvc2VkUHJvbWlzZTogKCkgPT4gdm9pZDtcblx0cHJvdGVjdGVkIF9yZXNvbHZlUmVhZHlQcm9taXNlOiAoKSA9PiB2b2lkO1xuXHRwcm90ZWN0ZWQgX3N0YXJ0ZWQ6IGJvb2xlYW47XG5cdHByb3RlY3RlZCBfc3RhcnRlZFByb21pc2U6IFByb21pc2U8YW55Pjtcblx0cHJvdGVjdGVkIF9zdGF0ZTogU3RhdGU7XG5cdHByb3RlY3RlZCBfc3RvcmVkRXJyb3I6IEVycm9yO1xuXHRwcm90ZWN0ZWQgX3N0cmF0ZWd5OiBTdHJhdGVneTxUPjtcblx0cHJvdGVjdGVkIF91bmRlcmx5aW5nU2luazogU2luazxUPjtcblx0cHJvdGVjdGVkIF9xdWV1ZTogU2l6ZVF1ZXVlPFJlY29yZDxUPj47XG5cdHByb3RlY3RlZCBfd3JpdGluZzogYm9vbGVhbjtcblxuXHRjb25zdHJ1Y3Rvcih1bmRlcmx5aW5nU2luazogU2luazxUPiA9IHt9LCBzdHJhdGVneTogU3RyYXRlZ3k8VD4gPSB7fSkge1xuXHRcdHRoaXMuX3VuZGVybHlpbmdTaW5rID0gdW5kZXJseWluZ1Npbms7XG5cblx0XHR0aGlzLl9jbG9zZWRQcm9taXNlID0gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuXHRcdFx0dGhpcy5fcmVzb2x2ZUNsb3NlZFByb21pc2UgPSByZXNvbHZlO1xuXHRcdFx0dGhpcy5fcmVqZWN0Q2xvc2VkUHJvbWlzZSA9IHJlamVjdDtcblx0XHR9KTtcblxuXHRcdHRoaXMuX2FkdmFuY2luZyA9IGZhbHNlO1xuXHRcdHRoaXMuX3JlYWR5UHJvbWlzZSA9IFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdHRoaXMuX3F1ZXVlID0gbmV3IFNpemVRdWV1ZTxSZWNvcmQ8VD4+KCk7XG5cdFx0dGhpcy5fc3RhdGUgPSBTdGF0ZS5Xcml0YWJsZTtcblx0XHR0aGlzLl9zdGFydGVkID0gZmFsc2U7XG5cdFx0dGhpcy5fd3JpdGluZyA9IGZhbHNlO1xuXHRcdHRoaXMuX3N0cmF0ZWd5ID0gdXRpbC5ub3JtYWxpemVTdHJhdGVneShzdHJhdGVneSk7XG5cdFx0dGhpcy5fc3luY1N0YXRlV2l0aFF1ZXVlKCk7XG5cblx0XHR0aGlzLl9zdGFydGVkUHJvbWlzZSA9IFByb21pc2UucmVzb2x2ZShcblx0XHRcdHV0aWwuaW52b2tlT3JOb29wKHRoaXMuX3VuZGVybHlpbmdTaW5rLCAnc3RhcnQnLCBbIHRoaXMuX2Vycm9yLmJpbmQodGhpcykgXSlcblx0XHQpLnRoZW4oKCkgPT4ge1xuXHRcdFx0dGhpcy5fc3RhcnRlZCA9IHRydWU7XG5cdFx0XHR0aGlzLl9zdGFydGVkUHJvbWlzZSA9IHVuZGVmaW5lZDtcblx0XHR9LCAoZXJyb3I6IEVycm9yKSA9PiB7XG5cdFx0XHR0aGlzLl9lcnJvcihlcnJvcik7XG5cdFx0fSk7XG5cdH1cblxuXHQvLyBUaGlzIG1ldGhvZCBjb21iaW5lcyB0aGUgbG9naWMgb2YgdHdvIG1ldGhvZHM6XG5cdC8vIDQuMy4xIENhbGxPclNjaGVkdWxlV3JpdGFibGVTdHJlYW1BZHZhbmNlUXVldWVcblx0Ly8gNC4zLjYgV3JpdGFibGVTdHJlYW1BZHZhbmNlUXVldWVcblx0cHJvdGVjdGVkIF9hZHZhbmNlUXVldWUoKSB7XG5cdFx0aWYgKCF0aGlzLl9zdGFydGVkKSB7XG5cdFx0XHRpZiAoIXRoaXMuX2FkdmFuY2luZykge1xuXHRcdFx0XHR0aGlzLl9hZHZhbmNpbmcgPSB0cnVlO1xuXHRcdFx0XHR0aGlzLl9zdGFydGVkUHJvbWlzZS50aGVuKCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLl9hZHZhbmNlUXVldWUoKTtcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRpZiAoIXRoaXMuX3F1ZXVlIHx8IHRoaXMuX3dyaXRpbmcpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRjb25zdCB3cml0ZVJlY29yZDogUmVjb3JkPFQ+ID0gdGhpcy5fcXVldWUucGVlaygpO1xuXG5cdFx0aWYgKHdyaXRlUmVjb3JkLmNsb3NlKSB7XG5cdFx0XHQvLyBUT0RPOiBTS0lQPyBBc3NlcnQgNC4zLjYtMy5hXG5cdFx0XHRpZiAodGhpcy5zdGF0ZSAhPT0gU3RhdGUuQ2xvc2luZykge1xuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVjb3JkJyk7XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMuX3F1ZXVlLmRlcXVldWUoKTtcblx0XHRcdC8vIFRPRE86IFNLSVA/IEFzc2VydCA0LjMuNi0zLmNcblx0XHRcdHRoaXMuX2Nsb3NlKCk7XG5cblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHR0aGlzLl93cml0aW5nID0gdHJ1ZTtcblxuXHRcdHV0aWwucHJvbWlzZUludm9rZU9yTm9vcCh0aGlzLl91bmRlcmx5aW5nU2luaywgJ3dyaXRlJywgWyB3cml0ZVJlY29yZC5jaHVuayBdKS50aGVuKCgpID0+IHtcblx0XHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHRcdHRoaXMuX3dyaXRpbmcgPSBmYWxzZTtcblx0XHRcdFx0d3JpdGVSZWNvcmQucmVzb2x2ZSgpO1xuXHRcdFx0XHR0aGlzLl9xdWV1ZS5kZXF1ZXVlKCk7XG5cblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHR0aGlzLl9zeW5jU3RhdGVXaXRoUXVldWUoKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRjYXRjaCAoZXJyb3IpIHtcblx0XHRcdFx0XHRyZXR1cm4gdGhpcy5fZXJyb3IoZXJyb3IpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0dGhpcy5fYWR2YW5jZVF1ZXVlKCk7XG5cdFx0XHR9XG5cdFx0fSwgKGVycm9yOiBFcnJvcikgPT4ge1xuXHRcdFx0dGhpcy5fZXJyb3IoZXJyb3IpO1xuXHRcdH0pO1xuXHR9XG5cblx0Ly8gNC4zLjIgQ2xvc2VXcml0YWJsZVN0cmVhbVxuXHRwcm90ZWN0ZWQgX2Nsb3NlKCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5DbG9zaW5nKSB7XG5cdFx0XHQvLyA0LjMuMi0xXG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ1dyaXRhYmxlU3RyZWFtI19jbG9zZSBjYWxsZWQgd2hpbGUgc3RhdGUgaXMgbm90IFwiQ2xvc2luZ1wiJyk7XG5cdFx0fVxuXG5cdFx0dXRpbC5wcm9taXNlSW52b2tlT3JOb29wKHRoaXMuX3VuZGVybHlpbmdTaW5rLCAnY2xvc2UnKS50aGVuKCgpID0+IHtcblx0XHRcdGlmICh0aGlzLnN0YXRlICE9PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHRcdC8vIFRPRE86IEFzc2VydCA0LjMuMi4yLWEuaWlcblx0XHRcdFx0dGhpcy5fcmVzb2x2ZUNsb3NlZFByb21pc2UoKTtcblx0XHRcdFx0dGhpcy5fc3RhdGUgPSBTdGF0ZS5DbG9zZWQ7XG5cdFx0XHRcdHRoaXMuX3VuZGVybHlpbmdTaW5rID0gdW5kZWZpbmVkO1xuXHRcdFx0fVxuXHRcdH0sIChlcnJvcjogRXJyb3IpID0+IHtcblx0XHRcdHRoaXMuX2Vycm9yKGVycm9yKTtcblx0XHR9KTtcblx0fVxuXG5cdC8vIDQuMy4zIEVycm9yV3JpdGFibGVTdHJlYW1cblx0cHJvdGVjdGVkIF9lcnJvcihlcnJvcjogRXJyb3IpIHtcblx0XHRpZiAodGhpcy5zdGF0ZSA9PT0gU3RhdGUuQ2xvc2VkIHx8IHRoaXMuc3RhdGUgPT09IFN0YXRlLkVycm9yZWQpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRsZXQgd3JpdGVSZWNvcmQ6IFJlY29yZDxUPjtcblxuXHRcdHdoaWxlICh0aGlzLl9xdWV1ZS5sZW5ndGgpIHtcblx0XHRcdHdyaXRlUmVjb3JkID0gdGhpcy5fcXVldWUuZGVxdWV1ZSgpO1xuXG5cdFx0XHRpZiAoIXdyaXRlUmVjb3JkLmNsb3NlKSB7XG5cdFx0XHRcdHdyaXRlUmVjb3JkLnJlamVjdChlcnJvcik7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5fc3RvcmVkRXJyb3IgPSBlcnJvcjtcblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5XYWl0aW5nKSB7XG5cdFx0XHR0aGlzLl9yZXNvbHZlUmVhZHlQcm9taXNlKCk7XG5cdFx0fVxuXG5cdFx0dGhpcy5fcmVqZWN0Q2xvc2VkUHJvbWlzZShlcnJvcik7XG5cdFx0dGhpcy5fc3RhdGUgPSBTdGF0ZS5FcnJvcmVkO1xuXHR9XG5cblx0Ly8gNC4zLjUgU3luY1dyaXRhYmxlU3RyZWFtU3RhdGVXaXRoUXVldWVcblx0cHJvdGVjdGVkIF9zeW5jU3RhdGVXaXRoUXVldWUoKTogdm9pZCB7XG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkNsb3NpbmcpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRjb25zdCBxdWV1ZVNpemUgPSB0aGlzLl9xdWV1ZS50b3RhbFNpemU7XG5cdFx0Y29uc3Qgc2hvdWxkQXBwbHlCYWNrUHJlc3N1cmUgPSBxdWV1ZVNpemUgPiB0aGlzLl9zdHJhdGVneS5oaWdoV2F0ZXJNYXJrO1xuXG5cdFx0aWYgKHNob3VsZEFwcGx5QmFja1ByZXNzdXJlICYmIHRoaXMuc3RhdGUgPT09IFN0YXRlLldyaXRhYmxlKSB7XG5cdFx0XHR0aGlzLl9zdGF0ZSA9IFN0YXRlLldhaXRpbmc7XG5cdFx0XHR0aGlzLl9yZWFkeVByb21pc2UgPSBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHRcdHRoaXMuX3Jlc29sdmVSZWFkeVByb21pc2UgPSByZXNvbHZlO1xuXHRcdFx0XHR0aGlzLl9yZWplY3RSZWFkeVByb21pc2UgPSByZWplY3Q7XG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRpZiAoc2hvdWxkQXBwbHlCYWNrUHJlc3N1cmUgPT09IGZhbHNlICYmIHRoaXMuc3RhdGUgPT09IFN0YXRlLldhaXRpbmcpIHtcblx0XHRcdHRoaXMuX3N0YXRlID0gU3RhdGUuV3JpdGFibGU7XG5cdFx0XHR0aGlzLl9yZXNvbHZlUmVhZHlQcm9taXNlKCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIFNpZ25hbHMgdGhhdCB0aGUgcHJvZHVjZXIgY2FuIG5vIGxvbmdlciB3cml0ZSB0byB0aGUgc3RyZWFtIGFuZCBpdCBzaG91bGQgYmUgaW1tZWRpYXRlbHkgbW92ZWQgdG8gYW4gXCJlcnJvcmVkXCJcblx0ICogc3RhdGUuIEFueSB1bi13cml0dGVuIGRhdGEgdGhhdCBpcyBxdWV1ZWQgd2lsbCBiZSBkaXNjYXJkZWQuXG5cdCAqL1xuXHRhYm9ydChyZWFzb246IGFueSk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIDQuMi40LjQtMVxuXHRcdGlmICghaXNXcml0YWJsZVN0cmVhbSh0aGlzKSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KFxuXHRcdFx0XHRuZXcgRXJyb3IoJ1dyaXRhYmxlU3RyZWFtIG1ldGhvZCBjYWxsZWQgaW4gY29udGV4dCBvZiBvYmplY3QgdGhhdCBpcyBub3QgYSBXcml0YWJsZVN0cmVhbSBpbnN0YW5jZScpXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zZWQpIHtcblx0XHRcdC8vIDQuMi40LjQtMlxuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHQvLyA0LjIuNC40LTNcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdCh0aGlzLl9zdG9yZWRFcnJvcik7XG5cdFx0fVxuXG5cdFx0Y29uc3QgZXJyb3I6IEVycm9yID0gcmVhc29uIGluc3RhbmNlb2YgRXJyb3IgPyByZWFzb24gOiBuZXcgRXJyb3IocmVhc29uKTtcblxuXHRcdHRoaXMuX2Vycm9yKGVycm9yKTtcblxuXHRcdHJldHVybiB1dGlsLnByb21pc2VJbnZva2VPckZhbGxiYWNrT3JOb29wKHRoaXMuX3VuZGVybHlpbmdTaW5rLCAnYWJvcnQnLCBbIHJlYXNvbiBdLCAnY2xvc2UnKVxuXHRcdFx0LnRoZW4oZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTaWduYWxzIHRoYXQgdGhlIHByb2R1Y2VyIGlzIGRvbmUgd3JpdGluZyB0byB0aGUgc3RyZWFtIGFuZCB3aXNoZXMgdG8gbW92ZSBpdCB0byBhIFwiY2xvc2VkXCIgc3RhdGUuIFRoZSBzdHJlYW1cblx0ICogbWF5IGhhdmUgdW4td3JpdHRlZCBkYXRhIHF1ZXVlZDsgdW50aWwgdGhlIGRhdGEgaGFzIGJlZW4gd3JpdHRlbiB0aGUgc3RyZWFtIHdpbGwgcmVtYWluIGluIHRoZSBcImNsb3NpbmdcIiBzdGF0ZS5cblx0ICovXG5cdGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIDQuMi40LjUtMVxuXHRcdGlmICghaXNXcml0YWJsZVN0cmVhbSh0aGlzKSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KFxuXHRcdFx0XHRuZXcgRXJyb3IoJ1dyaXRhYmxlU3RyZWFtIG1ldGhvZCBjYWxsZWQgaW4gY29udGV4dCBvZiBvYmplY3QgdGhhdCBpcyBub3QgYSBXcml0YWJsZVN0cmVhbSBpbnN0YW5jZScpXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdC8vIDQuMi40LjUtMlxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCdTdHJlYW0gaXMgYWxyZWFkeSBjbG9zZWQnKSk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkNsb3NpbmcpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCdTdHJlYW0gaXMgYWxyZWFkeSBjbG9zaW5nJykpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5FcnJvcmVkKSB7XG5cdFx0XHQvLyA0LjIuNC41LTNcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdCh0aGlzLl9zdG9yZWRFcnJvcik7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLldhaXRpbmcpIHtcblx0XHRcdC8vIDQuMi40LjUtNFxuXHRcdFx0dGhpcy5fcmVzb2x2ZVJlYWR5UHJvbWlzZSgpO1xuXHRcdH1cblxuXHRcdHRoaXMuX3N0YXRlID0gU3RhdGUuQ2xvc2luZztcblx0XHR0aGlzLl9xdWV1ZS5lbnF1ZXVlKHsgY2xvc2U6IHRydWUgfSwgMCk7XG5cdFx0dGhpcy5fYWR2YW5jZVF1ZXVlKCk7XG5cblx0XHRyZXR1cm4gdGhpcy5fY2xvc2VkUHJvbWlzZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBFbnF1ZXVlIGEgY2h1bmsgb2YgZGF0YSB0byBiZSB3cml0dGVuIHRvIHRoZSB1bmRlcmx5aW5nIHNpbmsuIGB3cml0ZWAgY2FuIGJlIGNhbGxlZCBzdWNjZXNzaXZlbHkgd2l0aG91dCB3YWl0aW5nXG5cdCAqIGZvciB0aGUgcHJldmlvdXMgd3JpdGUncyBwcm9taXNlIHRvIHJlc29sdmUuIFRvIHJlc3BlY3QgdGhlIHN0cmVhbSdzIGJhY2twcmVzc3VyZSBpbmRpY2F0b3IsIGNoZWNrIGlmIHRoZSBzdHJlYW1cblx0ICogaGFzIGVudGVyZWQgdGhlIFwid2FpdGluZ1wiIHN0YXRlIGJldHdlZW4gd3JpdGVzLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCB3aWxsIGJlIGZ1bGZpbGxlZCB3aGVuIHRoZSBjaHVuayBoYXMgYmVlbiB3cml0dGVuIHRvIHRoZSB1bmRlcmx5aW5nIHNpbmsuXG5cdCAqL1xuXHR3cml0ZShjaHVuazogVCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIDQuMi40LjYtMVxuXHRcdGlmICghaXNXcml0YWJsZVN0cmVhbSh0aGlzKSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KFxuXHRcdFx0XHRuZXcgRXJyb3IoJ1dyaXRhYmxlU3RyZWFtIG1ldGhvZCBjYWxsZWQgaW4gY29udGV4dCBvZiBvYmplY3QgdGhhdCBpcyBub3QgYSBXcml0YWJsZVN0cmVhbSBpbnN0YW5jZScpXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdC8vIDQuMi40LjYtMlxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zZWQpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKCdTdHJlYW0gaXMgY2xvc2VkJykpO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXRlID09PSBTdGF0ZS5DbG9zaW5nKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IFR5cGVFcnJvcignU3RyZWFtIGlzIGNsb3NpbmcnKSk7XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT09IFN0YXRlLkVycm9yZWQpIHtcblx0XHRcdC8vIDQuMi40LjYtM1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KHRoaXMuX3N0b3JlZEVycm9yKTtcblx0XHR9XG5cblx0XHRsZXQgY2h1bmtTaXplID0gMTtcblx0XHRsZXQgd3JpdGVSZWNvcmQ6IFJlY29yZDxUPjtcblx0XHRsZXQgcHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcblx0XHRcdHdyaXRlUmVjb3JkID0ge1xuXHRcdFx0XHRjaHVuazogY2h1bmssXG5cdFx0XHRcdHJlamVjdDogcmVqZWN0LFxuXHRcdFx0XHRyZXNvbHZlOiByZXNvbHZlXG5cdFx0XHR9O1xuXHRcdH0pO1xuXG5cdFx0Ly8gNC4yLjQuNi02LmJcblx0XHR0cnkge1xuXHRcdFx0aWYgKHRoaXMuX3N0cmF0ZWd5ICYmIHRoaXMuX3N0cmF0ZWd5LnNpemUpIHtcblx0XHRcdFx0Y2h1bmtTaXplID0gdGhpcy5fc3RyYXRlZ3kuc2l6ZShjaHVuayk7XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMuX3F1ZXVlLmVucXVldWUod3JpdGVSZWNvcmQsIGNodW5rU2l6ZSk7XG5cdFx0XHR0aGlzLl9zeW5jU3RhdGVXaXRoUXVldWUoKTtcblx0XHR9XG5cdFx0Y2F0Y2ggKGVycm9yKSB7XG5cdFx0XHQvLyA0LjIuNC42LTYuYiwgNC4yLjQuNi0xMCwgNC4yLjQuNi0xMlxuXHRcdFx0dGhpcy5fZXJyb3IoZXJyb3IpO1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcblx0XHR9XG5cblx0XHR0aGlzLl9hZHZhbmNlUXVldWUoKTtcblxuXHRcdHJldHVybiBwcm9taXNlO1xuXHR9XG59XG4iXX0= |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var escapeRegExpPattern = /[[\]{}()|\/\\^$.*+?]/g; | ||
@@ -302,2 +303,2 @@ var escapeXmlPattern = /[&<]/g; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3N0cmluZy50cyJdLCJuYW1lcyI6WyJnZXRQYWRkaW5nIiwibm9ybWFsaXplU3Vic3RyaW5nQXJncyIsImNvZGVQb2ludEF0IiwiZW5kc1dpdGgiLCJlc2NhcGVSZWdFeHAiLCJlc2NhcGVYbWwiLCJmcm9tQ29kZVBvaW50IiwiaW5jbHVkZXMiLCJwYWRFbmQiLCJwYWRTdGFydCIsInJhdyIsInJlcGVhdCIsInN0YXJ0c1dpdGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBRUEsSUFBTSxtQkFBbUIsR0FBRyx1QkFBdUIsQ0FBQztJQUNwRCxJQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQztJQUNqQyxJQUFNLG1CQUFtQixHQUFHLFVBQVUsQ0FBQztJQUN2QyxJQUFNLFlBQVksR0FBaUI7UUFDbEMsR0FBRyxFQUFFLE9BQU87UUFDWixHQUFHLEVBQUUsTUFBTTtRQUNYLEdBQUcsRUFBRSxNQUFNO1FBQ1gsR0FBRyxFQUFFLFFBQVE7UUFDYixJQUFJLEVBQUUsT0FBTztLQUNiLENBQUM7SUFDVywwQkFBa0IsR0FBRyxNQUFNLENBQUM7SUFDNUIsMEJBQWtCLEdBQUcsTUFBTSxDQUFDO0lBQzVCLHlCQUFpQixHQUFHLE1BQU0sQ0FBQztJQUMzQix5QkFBaUIsR0FBRyxNQUFNLENBQUM7SUFFeEM7O09BRUc7SUFDSCxvQkFBb0IsSUFBWSxFQUFFLElBQVksRUFBRSxNQUFjLEVBQUUsU0FBdUI7UUFBdkJBLHlCQUF1QkEsR0FBdkJBLGVBQXVCQTtRQUN0RkEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsSUFBSUEsSUFBSUEsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDbEJBLE1BQU1BLElBQUlBLFNBQVNBLENBQUNBLFNBQVNBLEdBQUdBLElBQUlBLEdBQUdBLDJCQUEyQkEsQ0FBQ0EsQ0FBQ0E7UUFDckVBLENBQUNBO1FBRURBLEVBQUVBLENBQUNBLENBQUNBLFNBQVNBLENBQUNBLE1BQU1BLEtB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QkFDZkEsSUFBSUEsSUFBSUEsSUFBSUEsQ0FBQ0E7WUFDZEEsQ0FBQ0E7WUFDREEsS0FBS0EsS0FBS0EsQ0FBQ0EsQ0FBQ0E7UUFDYkEsQ0FBQ0E7UUFDREEsTUFBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0E7SUFDZkEsQ0FBQ0E7SUF2QmUsY0FBTSxTQXVCckIsQ0FBQTtJQUVEOzs7Ozs7T0FNRztJQUNILG9CQUEyQixJQUFZLEVBQUUsTUFBYyxFQUFFLFFBQW9CO1FBQXBCQyx3QkFBb0JBLEdBQXBCQSxZQUFvQkE7UUFDNUVBLE1BQU1BLEdBQUdBLE1BQU1BLENBQUNBLE1BQU1BLENBQUNBLENBQUNBO1FBQ3hCQSxLQUE2QkEsc0JBQXNCQSxDQUFDQSxZQUFZQSxFQUFFQSxJQUFJQSxFQUFFQSxNQUFNQSxFQUFFQSxRQUFRQSxDQUFDQSxFQUF2RkEsSUFBSUEsVUFBRUEsTUFBTUEsVUFBRUEsUUFBUUEsUUFBaUVBLENBQUNBO1FBRTFGQSxJQUFNQSxHQUFHQSxHQUFHQSxRQUFRQSxHQUFHQSxNQUFNQSxDQUFDQSxNQUFNQSxDQUFDQTtRQUNyQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsR0FBR0EsR0FBR0EsSUFBSUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDdkJBLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBO1FBQ2RBLENBQUNBO1FBRURBLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLFFBQVFBLEVBQUVBLEdBQUdBLENBQUNBLEtBQUtBLE1BQU1BLENBQUNBOztJQUM3Q0EsQ0FBQ0E7SUFWZSxrQkFBVSxhQVV6QixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFzaCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbmNvbnN0IGVzY2FwZVJlZ0V4cFBhdHRlcm4gPSAvW1tcXF17fSgpfFxcL1xcXFxeJC4qKz9dL2c7XG5jb25zdCBlc2NhcGVYbWxQYXR0ZXJuID0gL1smPF0vZztcbmNvbnN0IGVzY2FwZVhtbEZvclBhdHRlcm4gPSAvWyY8PidcIl0vZztcbmNvbnN0IGVzY2FwZVhtbE1hcDogSGFzaDxzdHJpbmc+ID0ge1xuXHQnJic6ICcmYW1wOycsXG5cdCc8JzogJyZsdDsnLFxuXHQnPic6ICcmZ3Q7Jyxcblx0J1wiJzogJyZxdW90OycsXG5cdCdcXCcnOiAnJiMzOTsnXG59O1xuZXhwb3J0IGNvbnN0IEhJR0hfU1VSUk9HQVRFX01JTiA9IDB4RDgwMDtcbmV4cG9ydCBjb25zdCBISUdIX1NVUlJPR0FURV9NQVggPSAweERCRkY7XG5leHBvcnQgY29uc3QgTE9XX1NVUlJPR0FURV9NSU4gPSAweERDMDA7XG5leHBvcnQgY29uc3QgTE9XX1NVUlJPR0FURV9NQVggPSAweERGRkY7XG5cbi8qKlxuICogUGVyZm9ybXMgdmFsaWRhdGlvbiBhbmQgcGFkZGluZyBvcGVyYXRpb25zIHVzZWQgYnkgcGFkU3RhcnQgYW5kIHBhZEVuZC5cbiAqL1xuZnVuY3Rpb24gZ2V0UGFkZGluZyhuYW1lOiBzdHJpbmcsIHRleHQ6IHN0cmluZywgbGVuZ3RoOiBudW1iZXIsIGNoYXJhY3Rlcjogc3RyaW5nID0gJzAnKTogc3RyaW5nIHtcblx0aWYgKHRleHQgPT0gbnVsbCkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ3N0cmluZy4nICsgbmFtZSArICcgcmVxdWlyZXMgYSB2YWxpZCBzdHJpbmcuJyk7XG5cdH1cblxuXHRpZiAoY2hhcmFjdGVyLmxlbmd0aCAhPT0gMSkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ3N0cmluZy4nICsgbmFtZSArICcgcmVxdWlyZXMgYSB2YWxpZCBwYWRkaW5nIGNoYXJhY3Rlci4nKTtcblx0fVxuXG5cdGlmIChsZW5ndGggPCAwIHx8IGxlbmd0aCA9PT0gSW5maW5pdHkpIHtcblx0XHR0aHJvdyBuZXcgUmFuZ2VFcnJvcignc3RyaW5nLicgKyBuYW1lICsgJyByZXF1aXJlcyBhIHZhbGlkIGxlbmd0aC4nKTtcblx0fVxuXG5cdGxlbmd0aCAtPSB0ZXh0Lmxlbmd0aDtcblx0cmV0dXJuIGxlbmd0aCA8IDEgPyAnJyA6IHJlcGVhdChjaGFyYWN0ZXIsIGxlbmd0aCk7XG59XG5cbi8qKlxuICogVmFsaWRhdGVzIHRoYXQgdGV4dCBpcyBkZWZpbmVkLCBhbmQgbm9ybWFsaXplcyBwb3NpdGlvbiAoYmFzZWQgb24gdGhlIGdpdmVuIGRlZmF1bHQgaWYgdGhlIGlucHV0IGlzIE5hTikuXG4gKiBVc2VkIGJ5IHN0YXJ0c1dpdGgsIGluY2x1ZGVzLCBhbmQgZW5kc1dpdGguXG4gKiBAcmV0dXJuIE5vcm1hbGl6ZWQgcG9zaXRpb24uXG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZVN1YnN0cmluZ0FyZ3MobmFtZTogc3RyaW5nLCB0ZXh0OiBzdHJpbmcsIHNlYXJjaDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyLFxuXHRcdGlzRW5kOiBib29sZWFuID0gZmFsc2UpOiBbIHN0cmluZywgc3RyaW5nLCBudW1iZXIgXSB7XG5cdGlmICh0ZXh0ID09IG51bGwpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdzdHJpbmcuJyArIG5hbWUgKyAnIHJlcXVpcmVzIGEgdmFsaWQgc3RyaW5nIHRvIHNlYXJjaCBhZ2FpbnN0LicpO1xuXHR9XG5cblx0Y29uc3QgbGVuZ3RoID0gdGV4dC5sZW5ndGg7XG5cdHBvc2l0aW9uID0gcG9zaXRpb24gIT09IHBvc2l0aW9uID8gKGlzRW5kID8gbGVuZ3RoIDogMCkgOiBwb3NpdGlvbjtcblx0cmV0dXJuIFsgdGV4dCwgU3RyaW5nKHNlYXJjaCksIE1hdGgubWluKE1hdGgubWF4KHBvc2l0aW9uLCAwKSwgbGVuZ3RoKSBdO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIFVURi0xNiBlbmNvZGVkIGNvZGUgcG9pbnQgdmFsdWUgb2YgYSBnaXZlbiBwb3NpdGlvbiBpbiBhIHN0cmluZy5cbiAqIEBwYXJhbSB0ZXh0IFRoZSBzdHJpbmcgY29udGFpbmluZyB0aGUgZWxlbWVudCB3aG9zZSBjb2RlIHBvaW50IGlzIHRvIGJlIGRldGVybWluZWRcbiAqIEBwYXJhbSBwb3NpdGlvbiBQb3NpdGlvbiBvZiBhbiBlbGVtZW50IHdpdGhpbiB0aGUgc3RyaW5nIHRvIHJldHJpZXZlIHRoZSBjb2RlIHBvaW50IHZhbHVlIGZyb21cbiAqIEByZXR1cm4gQSBub24tbmVnYXRpdmUgaW50ZWdlciByZXByZXNlbnRpbmcgdGhlIFVURi0xNiBlbmNvZGVkIGNvZGUgcG9pbnQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvZGVQb2ludEF0KHRleHQ6IHN0cmluZywgcG9zaXRpb246IG51bWJlciA9IDApIHtcblx0Ly8gQWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tYXRoaWFzYnluZW5zL1N0cmluZy5wcm90b3R5cGUuY29kZVBvaW50QXRcblx0aWYgKHRleHQgPT0gbnVsbCkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ3N0cmluZy5jb2RlUG9pbnRBdCByZXF1cmllcyBhIHZhbGlkIHN0cmluZy4nKTtcblx0fVxuXHRjb25zdCBsZW5ndGggPSB0ZXh0Lmxlbmd0aDtcblxuXHRpZiAocG9zaXRpb24gIT09IHBvc2l0aW9uKSB7XG5cdFx0cG9zaXRpb24gPSAwO1xuXHR9XG5cdGlmIChwb3NpdGlvbiA8IDAgfHwgcG9zaXRpb24gPj0gbGVuZ3RoKSB7XG5cdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0fVxuXG5cdC8vIEdldCB0aGUgZmlyc3QgY29kZSB1bml0XG5cdGNvbnN0IGZpcnN0ID0gdGV4dC5jaGFyQ29kZUF0KHBvc2l0aW9uKTtcblx0aWYgKGZpcnN0ID49IEhJR0hfU1VSUk9HQVRFX01JTiAmJiBmaXJzdCA8PSBISUdIX1NVUlJPR0FURV9NQVggJiYgbGVuZ3RoID4gcG9zaXRpb24gKyAxKSB7XG5cdFx0Ly8gU3RhcnQgb2YgYSBzdXJyb2dhdGUgcGFpciAoaGlnaCBzdXJyb2dhdGUgYW5kIHRoZXJlIGlzIGEgbmV4dCBjb2RlIHVuaXQpOyBjaGVjayBmb3IgbG93IHN1cnJvZ2F0ZVxuXHRcdC8vIGh0dHBzOi8vbWF0aGlhc2J5bmVucy5iZS9ub3Rlcy9qYXZhc2NyaXB0LWVuY29kaW5nI3N1cnJvZ2F0ZS1mb3JtdWxhZVxuXHRcdGNvbnN0IHNlY29uZCA9IHRleHQuY2hhckNvZGVBdChwb3NpdGlvbiArIDEpO1xuXHRcdGlmIChzZWNvbmQgPj0gTE9XX1NVUlJPR0FURV9NSU4gJiYgc2Vjb25kIDw9IExPV19TVVJST0dBVEVfTUFYKSB7XG5cdFx0XHRyZXR1cm4gKGZpcnN0IC0gSElHSF9TVVJST0dBVEVfTUlOKSAqIDB4NDAwICsgc2Vjb25kIC0gTE9XX1NVUlJPR0FURV9NSU4gKyAweDEwMDAwO1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gZmlyc3Q7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgc3RyaW5nIGVuZHMgd2l0aCB0aGUgZ2l2ZW4gc3Vic3RyaW5nLlxuICogQHBhcmFtIHRleHQgVGhlIHN0cmluZyB0byBsb29rIGZvciB0aGUgc2VhcmNoIHN0cmluZyB3aXRoaW5cbiAqIEBwYXJhbSBzZWFyY2ggVGhlIHN0cmluZyB0byBzZWFyY2ggZm9yXG4gKiBAcGFyYW0gZW5kUG9zaXRpb24gVGhlIGluZGV4IHNlYXJjaGluZyBzaG91bGQgc3RvcCBiZWZvcmUgKGRlZmF1bHRzIHRvIHRleHQubGVuZ3RoKVxuICogQHJldHVybiBCb29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHNlYXJjaCBzdHJpbmcgd2FzIGZvdW5kIGF0IHRoZSBlbmQgb2YgdGhlIGdpdmVuIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gZW5kc1dpdGgodGV4dDogc3RyaW5nLCBzZWFyY2g6IHN0cmluZywgZW5kUG9zaXRpb24/OiBudW1iZXIpOiBib29sZWFuIHtcblx0aWYgKGVuZFBvc2l0aW9uID09IG51bGwgJiYgdGV4dCAhPSBudWxsKSB7XG5cdFx0ZW5kUG9zaXRpb24gPSB0ZXh0Lmxlbmd0aDtcblx0fVxuXG5cdFsgdGV4dCwgc2VhcmNoLCBlbmRQb3NpdGlvbiBdID0gbm9ybWFsaXplU3Vic3RyaW5nQXJncygnZW5kc1dpdGgnLCB0ZXh0LCBzZWFyY2gsIGVuZFBvc2l0aW9uLCB0cnVlKTtcblxuXHRjb25zdCBzdGFydCA9IGVuZFBvc2l0aW9uIC0gc2VhcmNoLmxlbmd0aDtcblx0aWYgKHN0YXJ0IDwgMCkge1xuXHRcdHJldHVybiBmYWxzZTtcblx0fVxuXG5cdHJldHVybiB0ZXh0LnNsaWNlKHN0YXJ0LCBlbmRQb3NpdGlvbikgPT09IHNlYXJjaDtcbn1cblxuLyoqXG4gKiBFc2NhcGVzIGEgc3RyaW5nIHNvIHRoYXQgaXQgY2FuIHNhZmVseSBiZSBwYXNzZWQgdG8gdGhlIFJlZ0V4cCBjb25zdHJ1Y3Rvci5cbiAqIEBwYXJhbSB0ZXh0IFRoZSBzdHJpbmcgdG8gYmUgZXNjYXBlZFxuICogQHJldHVybiBUaGUgZXNjYXBlZCBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVzY2FwZVJlZ0V4cCh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuXHRyZXR1cm4gIXRleHQgPyB0ZXh0IDogdGV4dC5yZXBsYWNlKGVzY2FwZVJlZ0V4cFBhdHRlcm4sICdcXFxcJCYnKTtcbn1cblxuLyoqXG4gKiBTYW5pdGl6ZXMgYSBzdHJpbmcgdG8gcHJvdGVjdCBhZ2FpbnN0IHRhZyBpbmplY3Rpb24uXG4gKiBAcGFyYW0geG1sIFRoZSBzdHJpbmcgdG8gYmUgZXNjYXBlZFxuICogQHBhcmFtIGZvckF0dHJpYnV0ZSBXaGV0aGVyIHRvIGFsc28gZXNjYXBlICcsIFwiLCBhbmQgPiBpbiBhZGRpdGlvbiB0byA8IGFuZCAmXG4gKiBAcmV0dXJuIFRoZSBlc2NhcGVkIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlWG1sKHhtbDogc3RyaW5nLCBmb3JBdHRyaWJ1dGU6IGJvb2xlYW4gPSB0cnVlKTogc3RyaW5nIHtcblx0aWYgKCF4bWwpIHtcblx0XHRyZXR1cm4geG1sO1xuXHR9XG5cblx0Y29uc3QgcGF0dGVybiA9IGZvckF0dHJpYnV0ZSA/IGVzY2FwZVhtbEZvclBhdHRlcm4gOiBlc2NhcGVYbWxQYXR0ZXJuO1xuXG5cdHJldHVybiB4bWwucmVwbGFjZShwYXR0ZXJuLCBmdW5jdGlvbiAoY2hhcmFjdGVyOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHJldHVybiBlc2NhcGVYbWxNYXBbY2hhcmFjdGVyXTtcblx0fSk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHN0cmluZyBjcmVhdGVkIGJ5IHVzaW5nIHRoZSBzcGVjaWZpZWQgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMuXG4gKiBAcGFyYW0gY29kZVBvaW50cyBPbmUgb3IgbW9yZSBjb2RlIHBvaW50c1xuICogQHJldHVybiBBIHN0cmluZyBjb250YWluaW5nIHRoZSBnaXZlbiBjb2RlIHBvaW50c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbUNvZGVQb2ludCguLi5jb2RlUG9pbnRzOiBudW1iZXJbXSk6IHN0cmluZyB7XG5cdC8vIEFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vbWF0aGlhc2J5bmVucy9TdHJpbmcuZnJvbUNvZGVQb2ludFxuXHRjb25zdCBsZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoO1xuXHRpZiAoIWxlbmd0aCkge1xuXHRcdHJldHVybiAnJztcblx0fVxuXG5cdGNvbnN0IGZyb21DaGFyQ29kZSA9IFN0cmluZy5mcm9tQ2hhckNvZGU7XG5cdGNvbnN0IE1BWF9TSVpFID0gMHg0MDAwO1xuXHRsZXQgY29kZVVuaXRzOiBudW1iZXJbXSA9IFtdO1xuXHRsZXQgaW5kZXggPSAtMTtcblx0bGV0IHJlc3VsdCA9ICcnO1xuXG5cdHdoaWxlICgrK2luZGV4IDwgbGVuZ3RoKSB7XG5cdFx0bGV0IGNvZGVQb2ludCA9IE51bWJlcihhcmd1bWVudHNbaW5kZXhdKTtcblxuXHRcdC8vIENvZGUgcG9pbnRzIG11c3QgYmUgZmluaXRlIGludGVnZXJzIHdpdGhpbiB0aGUgdmFsaWQgcmFuZ2Vcblx0XHRsZXQgaXNWYWxpZCA9IGlzRmluaXRlKGNvZGVQb2ludCkgJiYgTWF0aC5mbG9vcihjb2RlUG9pbnQpID09PSBjb2RlUG9pbnQgJiZcblx0XHRcdGNvZGVQb2ludCA+PSAwICYmIGNvZGVQb2ludCA8PSAweDEwRkZGRjtcblx0XHRpZiAoIWlzVmFsaWQpIHtcblx0XHRcdHRocm93IFJhbmdlRXJyb3IoJ3N0cmluZy5mcm9tQ29kZVBvaW50OiBJbnZhbGlkIGNvZGUgcG9pbnQgJyArIGNvZGVQb2ludCk7XG5cdFx0fVxuXG5cdFx0aWYgKGNvZGVQb2ludCA8PSAweEZGRkYpIHtcblx0XHRcdC8vIEJNUCBjb2RlIHBvaW50XG5cdFx0XHRjb2RlVW5pdHMucHVzaChjb2RlUG9pbnQpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdC8vIEFzdHJhbCBjb2RlIHBvaW50OyBzcGxpdCBpbiBzdXJyb2dhdGUgaGFsdmVzXG5cdFx0XHQvLyBodHRwczovL21hdGhpYXNieW5lbnMuYmUvbm90ZXMvamF2YXNjcmlwdC1lbmNvZGluZyNzdXJyb2dhdGUtZm9ybXVsYWVcblx0XHRcdGNvZGVQb2ludCAtPSAweDEwMDAwO1xuXHRcdFx0bGV0IGhpZ2hTdXJyb2dhdGUgPSAoY29kZVBvaW50ID4+IDEwKSArIEhJR0hfU1VSUk9HQVRFX01JTjtcblx0XHRcdGxldCBsb3dTdXJyb2dhdGUgPSAoY29kZVBvaW50ICUgMHg0MDApICsgTE9XX1NVUlJPR0FURV9NSU47XG5cdFx0XHRjb2RlVW5pdHMucHVzaChoaWdoU3Vycm9nYXRlLCBsb3dTdXJyb2dhdGUpO1xuXHRcdH1cblxuXHRcdGlmIChpbmRleCArIDEgPT09IGxlbmd0aCB8fCBjb2RlVW5pdHMubGVuZ3RoID4gTUFYX1NJWkUpIHtcblx0XHRcdHJlc3VsdCArPSBmcm9tQ2hhckNvZGUuYXBwbHkobnVsbCwgY29kZVVuaXRzKTtcblx0XHRcdGNvZGVVbml0cy5sZW5ndGggPSAwO1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIHN0cmluZyBpbmNsdWRlcyB0aGUgZ2l2ZW4gc3Vic3RyaW5nIChvcHRpb25hbGx5IHN0YXJ0aW5nIGZyb20gYSBnaXZlbiBpbmRleCkuXG4gKiBAcGFyYW0gdGV4dCBUaGUgc3RyaW5nIHRvIGxvb2sgZm9yIHRoZSBzZWFyY2ggc3RyaW5nIHdpdGhpblxuICogQHBhcmFtIHNlYXJjaCBUaGUgc3RyaW5nIHRvIHNlYXJjaCBmb3JcbiAqIEBwYXJhbSBwb3NpdGlvbiBUaGUgaW5kZXggdG8gYmVnaW4gc2VhcmNoaW5nIGF0XG4gKiBAcmV0dXJuIEJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgc2VhcmNoIHN0cmluZyB3YXMgZm91bmQgd2l0aGluIHRoZSBnaXZlbiBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluY2x1ZGVzKHRleHQ6IHN0cmluZywgc2VhcmNoOiBzdHJpbmcsIHBvc2l0aW9uOiBudW1iZXIgPSAwKTogYm9vbGVhbiB7XG5cdFsgdGV4dCwgc2VhcmNoLCBwb3NpdGlvbiBdID0gbm9ybWFsaXplU3Vic3RyaW5nQXJncygnaW5jbHVkZXMnLCB0ZXh0LCBzZWFyY2gsIHBvc2l0aW9uKTtcblx0cmV0dXJuIHRleHQuaW5kZXhPZihzZWFyY2gsIHBvc2l0aW9uKSAhPT0gLTE7XG59XG5cbi8qKlxuICogQWRkcyBwYWRkaW5nIHRvIHRoZSBlbmQgb2YgYSBzdHJpbmcgdG8gZW5zdXJlIGl0IGlzIGEgY2VydGFpbiBsZW5ndGguXG4gKiBAcGFyYW0gdGV4dCBUaGUgc3RyaW5nIHRvIHBhZFxuICogQHBhcmFtIGxlbmd0aCBUaGUgdGFyZ2V0IG1pbmltdW0gbGVuZ3RoIG9mIHRoZSBzdHJpbmdcbiAqIEBwYXJhbSBjaGFyYWN0ZXIgVGhlIGNoYXJhY3RlciB0byBwYWQgb250byB0aGUgZW5kIG9mIHRoZSBzdHJpbmdcbiAqIEByZXR1cm4gVGhlIHN0cmluZywgcGFkZGVkIHRvIHRoZSBnaXZlbiBsZW5ndGggaWYgbmVjZXNzYXJ5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRFbmQodGV4dDogc3RyaW5nLCBsZW5ndGg6IG51bWJlciwgY2hhcmFjdGVyOiBzdHJpbmcgPSAnMCcpOiBzdHJpbmcge1xuXHRyZXR1cm4gdGV4dCArIGdldFBhZGRpbmcoJ3BhZEVuZCcsIHRleHQsIGxlbmd0aCwgY2hhcmFjdGVyKTtcbn1cblxuLyoqXG4gKiBBZGRzIHBhZGRpbmcgdG8gdGhlIGJlZ2lubmluZyBvZiBhIHN0cmluZyB0byBlbnN1cmUgaXQgaXMgYSBjZXJ0YWluIGxlbmd0aC5cbiAqIEBwYXJhbSB0ZXh0IFRoZSBzdHJpbmcgdG8gcGFkXG4gKiBAcGFyYW0gbGVuZ3RoIFRoZSB0YXJnZXQgbWluaW11bSBsZW5ndGggb2YgdGhlIHN0cmluZ1xuICogQHBhcmFtIGNoYXJhY3RlciBUaGUgY2hhcmFjdGVyIHRvIHBhZCBvbnRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHN0cmluZ1xuICogQHJldHVybiBUaGUgc3RyaW5nLCBwYWRkZWQgdG8gdGhlIGdpdmVuIGxlbmd0aCBpZiBuZWNlc3NhcnlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZFN0YXJ0KHRleHQ6IHN0cmluZywgbGVuZ3RoOiBudW1iZXIsIGNoYXJhY3Rlcjogc3RyaW5nID0gJzAnKTogc3RyaW5nIHtcblx0cmV0dXJuIGdldFBhZGRpbmcoJ3BhZFN0YXJ0JywgdGV4dCwgbGVuZ3RoLCBjaGFyYWN0ZXIpICsgdGV4dDtcbn1cblxuLyoqXG4gKiBBIHRhZyBmdW5jdGlvbiBmb3IgdGVtcGxhdGUgc3RyaW5ncyB0byBnZXQgdGhlIHRlbXBsYXRlIHN0cmluZydzIHJhdyBzdHJpbmcgZm9ybS5cbiAqIEBwYXJhbSBjYWxsU2l0ZSBDYWxsIHNpdGUgb2JqZWN0IChvciBhIHRlbXBsYXRlIHN0cmluZyBpbiBUeXBlU2NyaXB0LCB3aGljaCB3aWxsIHRyYW5zcGlsZSB0byBvbmUpXG4gKiBAcGFyYW0gc3Vic3RpdHV0aW9ucyBWYWx1ZXMgdG8gc3Vic3RpdHV0ZSB3aXRoaW4gdGhlIHRlbXBsYXRlIHN0cmluZyAoVHlwZVNjcmlwdCB3aWxsIGdlbmVyYXRlIHRoZXNlIGF1dG9tYXRpY2FsbHkpXG4gKiBAcmV0dXJuIFN0cmluZyBjb250YWluaW5nIHRoZSByYXcgdGVtcGxhdGUgc3RyaW5nIHdpdGggdmFyaWFibGVzIHN1YnN0aXR1dGVkXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIFdpdGhpbiBUeXBlU2NyaXB0OyBsb2dzICdUaGUgYW5zd2VyIGlzOlxcXFxuNDInXG4gKiBsZXQgYW5zd2VyID0gNDI7XG4gKiBjb25zb2xlLmxvZyhzdHJpbmcucmF3YFRoZSBhbnN3ZXIgaXM6XFxuJHthbnN3ZXJ9YCk7XG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIFRoZSBzYW1lIGV4YW1wbGUgYXMgYWJvdmUsIGJ1dCBkaXJlY3RseSBzcGVjaWZ5aW5nIGEgSmF2YVNjcmlwdCBvYmplY3QgYW5kIHN1YnN0aXR1dGlvblxuICogY29uc29sZS5sb2coc3RyaW5nLnJhdyh7IHJhdzogWyAnVGhlIGFuc3dlciBpczpcXFxcbicsICcnIF0gfSwgNDIpKTtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhdyhjYWxsU2l0ZTogVGVtcGxhdGVTdHJpbmdzQXJyYXksIC4uLnN1YnN0aXR1dGlvbnM6IGFueVtdKTogc3RyaW5nIHtcblx0bGV0IHJhd1N0cmluZ3MgPSBjYWxsU2l0ZS5yYXc7XG5cdGxldCByZXN1bHQgPSAnJztcblx0bGV0IG51bVN1YnN0aXR1dGlvbnMgPSBzdWJzdGl0dXRpb25zLmxlbmd0aDtcblxuXHRpZiAoY2FsbFNpdGUgPT0gbnVsbCB8fCBjYWxsU2l0ZS5yYXcgPT0gbnVsbCkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ3N0cmluZy5yYXcgcmVxdWlyZXMgYSB2YWxpZCBjYWxsU2l0ZSBvYmplY3Qgd2l0aCBhIHJhdyB2YWx1ZScpO1xuXHR9XG5cblx0Zm9yIChsZXQgaSA9IDAsIGxlbmd0aCA9IHJhd1N0cmluZ3MubGVuZ3RoOyBpIDwgbGVuZ3RoOyBpKyspIHtcblx0XHRyZXN1bHQgKz0gcmF3U3RyaW5nc1tpXSArIChpIDwgbnVtU3Vic3RpdHV0aW9ucyAmJiBpIDwgbGVuZ3RoIC0gMSA/IHN1YnN0aXR1dGlvbnNbaV0gOiAnJyk7XG5cdH1cblxuXHRyZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBzdHJpbmcgY29udGFpbmluZyB0aGUgZ2l2ZW4gc3RyaW5nIHJlcGVhdGVkIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHRpbWVzLlxuICogQHBhcmFtIHRleHQgVGhlIHN0cmluZyB0byByZXBlYXRcbiAqIEBwYXJhbSBjb3VudCBUaGUgbnVtYmVyIG9mIHRpbWVzIHRvIHJlcGVhdCB0aGUgc3RyaW5nXG4gKiBAcmV0dXJuIEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIGlucHV0IHN0cmluZyByZXBlYXRlZCBjb3VudCB0aW1lc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcmVwZWF0KHRleHQ6IHN0cmluZywgY291bnQ6IG51bWJlciA9IDApOiBzdHJpbmcge1xuXHQvLyBBZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL21hdGhpYXNieW5lbnMvU3RyaW5nLnByb3RvdHlwZS5yZXBlYXRcblx0aWYgKHRleHQgPT0gbnVsbCkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ3N0cmluZy5yZXBlYXQgcmVxdWlyZXMgYSB2YWxpZCBzdHJpbmcuJyk7XG5cdH1cblx0aWYgKGNvdW50ICE9PSBjb3VudCkge1xuXHRcdGNvdW50ID0gMDtcblx0fVxuXHRpZiAoY291bnQgPCAwIHx8IGNvdW50ID09PSBJbmZpbml0eSkge1xuXHRcdHRocm93IG5ldyBSYW5nZUVycm9yKCdzdHJpbmcucmVwZWF0IHJlcXVpcmVzIGEgbm9uLW5lZ2F0aXZlIGZpbml0ZSBjb3VudC4nKTtcblx0fVxuXG5cdGxldCByZXN1bHQgPSAnJztcblx0d2hpbGUgKGNvdW50KSB7XG5cdFx0aWYgKGNvdW50ICUgMikge1xuXHRcdFx0cmVzdWx0ICs9IHRleHQ7XG5cdFx0fVxuXHRcdGlmIChjb3VudCA+IDEpIHtcblx0XHRcdHRleHQgKz0gdGV4dDtcblx0XHR9XG5cdFx0Y291bnQgPj49IDE7XG5cdH1cblx0cmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBzdHJpbmcgYmVnaW5zIHdpdGggdGhlIGdpdmVuIHN1YnN0cmluZyAob3B0aW9uYWxseSBzdGFydGluZyBmcm9tIGEgZ2l2ZW4gaW5kZXgpLlxuICogQHBhcmFtIHRleHQgVGhlIHN0cmluZyB0byBsb29rIGZvciB0aGUgc2VhcmNoIHN0cmluZyB3aXRoaW5cbiAqIEBwYXJhbSBzZWFyY2ggVGhlIHN0cmluZyB0byBzZWFyY2ggZm9yXG4gKiBAcGFyYW0gcG9zaXRpb24gVGhlIGluZGV4IHRvIGJlZ2luIHNlYXJjaGluZyBhdFxuICogQHJldHVybiBCb29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHNlYXJjaCBzdHJpbmcgd2FzIGZvdW5kIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGdpdmVuIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gc3RhcnRzV2l0aCh0ZXh0OiBzdHJpbmcsIHNlYXJjaDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyID0gMCk6IGJvb2xlYW4ge1xuXHRzZWFyY2ggPSBTdHJpbmcoc2VhcmNoKTtcblx0WyB0ZXh0LCBzZWFyY2gsIHBvc2l0aW9uIF0gPSBub3JtYWxpemVTdWJzdHJpbmdBcmdzKCdzdGFydHNXaXRoJywgdGV4dCwgc2VhcmNoLCBwb3NpdGlvbik7XG5cblx0Y29uc3QgZW5kID0gcG9zaXRpb24gKyBzZWFyY2gubGVuZ3RoO1xuXHRpZiAoZW5kID4gdGV4dC5sZW5ndGgpIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cblxuXHRyZXR1cm4gdGV4dC5zbGljZShwb3NpdGlvbiwgZW5kKSA9PT0gc2VhcmNoO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3N0cmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFFQSxJQUFNLG1CQUFtQixHQUFHLHVCQUF1QixDQUFDO0lBQ3BELElBQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDO0lBQ2pDLElBQU0sbUJBQW1CLEdBQUcsVUFBVSxDQUFDO0lBQ3ZDLElBQU0sWUFBWSxHQUFpQjtRQUNsQyxHQUFHLEVBQUUsT0FBTztRQUNaLEdBQUcsRUFBRSxNQUFNO1FBQ1gsR0FBRyxFQUFFLE1BQU07UUFDWCxHQUFHLEVBQUUsUUFBUTtRQUNiLElBQUksRUFBRSxPQUFPO0tBQ2IsQ0FBQztJQUNXLDBCQUFrQixHQUFHLE1BQU0sQ0FBQztJQUM1QiwwQkFBa0IsR0FBRyxNQUFNLENBQUM7SUFDNUIseUJBQWlCLEdBQUcsTUFBTSxDQUFDO0lBQzNCLHlCQUFpQixHQUFHLE1BQU0sQ0FBQztJQUV4Qzs7T0FFRztJQUNILG9CQUFvQixJQUFZLEVBQUUsSUFBWSxFQUFFLE1BQWMsRUFBRSxTQUF1QjtRQUF2Qix5QkFBdUIsR0FBdkIsZUFBdUI7UUFDdEYsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDbEIsTUFBTSxJQUFJLFNBQVMsQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLDJCQUEyQixDQUFDLENBQUM7UUFDckUsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1QixNQUFNLElBQUksU0FBUyxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcsc0NBQXNDLENBQUMsQ0FBQztRQUNoRixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN2QyxNQUFNLElBQUksVUFBVSxDQUFDLFNBQVMs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QUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEtBQUssTUFBTSxDQUFDOztJQUM3QyxDQUFDO0lBVmUsa0JBQVUsYUFVekIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhc2ggfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5jb25zdCBlc2NhcGVSZWdFeHBQYXR0ZXJuID0gL1tbXFxde30oKXxcXC9cXFxcXiQuKis/XS9nO1xuY29uc3QgZXNjYXBlWG1sUGF0dGVybiA9IC9bJjxdL2c7XG5jb25zdCBlc2NhcGVYbWxGb3JQYXR0ZXJuID0gL1smPD4nXCJdL2c7XG5jb25zdCBlc2NhcGVYbWxNYXA6IEhhc2g8c3RyaW5nPiA9IHtcblx0JyYnOiAnJmFtcDsnLFxuXHQnPCc6ICcmbHQ7Jyxcblx0Jz4nOiAnJmd0OycsXG5cdCdcIic6ICcmcXVvdDsnLFxuXHQnXFwnJzogJyYjMzk7J1xufTtcbmV4cG9ydCBjb25zdCBISUdIX1NVUlJPR0FURV9NSU4gPSAweEQ4MDA7XG5leHBvcnQgY29uc3QgSElHSF9TVVJST0dBVEVfTUFYID0gMHhEQkZGO1xuZXhwb3J0IGNvbnN0IExPV19TVVJST0dBVEVfTUlOID0gMHhEQzAwO1xuZXhwb3J0IGNvbnN0IExPV19TVVJST0dBVEVfTUFYID0gMHhERkZGO1xuXG4vKipcbiAqIFBlcmZvcm1zIHZhbGlkYXRpb24gYW5kIHBhZGRpbmcgb3BlcmF0aW9ucyB1c2VkIGJ5IHBhZFN0YXJ0IGFuZCBwYWRFbmQuXG4gKi9cbmZ1bmN0aW9uIGdldFBhZGRpbmcobmFtZTogc3RyaW5nLCB0ZXh0OiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyLCBjaGFyYWN0ZXI6IHN0cmluZyA9ICcwJyk6IHN0cmluZyB7XG5cdGlmICh0ZXh0ID09IG51bGwpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdzdHJpbmcuJyArIG5hbWUgKyAnIHJlcXVpcmVzIGEgdmFsaWQgc3RyaW5nLicpO1xuXHR9XG5cblx0aWYgKGNoYXJhY3Rlci5sZW5ndGggIT09IDEpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdzdHJpbmcuJyArIG5hbWUgKyAnIHJlcXVpcmVzIGEgdmFsaWQgcGFkZGluZyBjaGFyYWN0ZXIuJyk7XG5cdH1cblxuXHRpZiAobGVuZ3RoIDwgMCB8fCBsZW5ndGggPT09IEluZmluaXR5KSB7XG5cdFx0dGhyb3cgbmV3IFJhbmdlRXJyb3IoJ3N0cmluZy4nICsgbmFtZSArICcgcmVxdWlyZXMgYSB2YWxpZCBsZW5ndGguJyk7XG5cdH1cblxuXHRsZW5ndGggLT0gdGV4dC5sZW5ndGg7XG5cdHJldHVybiBsZW5ndGggPCAxID8gJycgOiByZXBlYXQoY2hhcmFjdGVyLCBsZW5ndGgpO1xufVxuXG4vKipcbiAqIFZhbGlkYXRlcyB0aGF0IHRleHQgaXMgZGVmaW5lZCwgYW5kIG5vcm1hbGl6ZXMgcG9zaXRpb24gKGJhc2VkIG9uIHRoZSBnaXZlbiBkZWZhdWx0IGlmIHRoZSBpbnB1dCBpcyBOYU4pLlxuICogVXNlZCBieSBzdGFydHNXaXRoLCBpbmNsdWRlcywgYW5kIGVuZHNXaXRoLlxuICogQHJldHVybiBOb3JtYWxpemVkIHBvc2l0aW9uLlxuICovXG5mdW5jdGlvbiBub3JtYWxpemVTdWJzdHJpbmdBcmdzKG5hbWU6IHN0cmluZywgdGV4dDogc3RyaW5nLCBzZWFyY2g6IHN0cmluZywgcG9zaXRpb246IG51bWJlcixcblx0XHRpc0VuZDogYm9vbGVhbiA9IGZhbHNlKTogWyBzdHJpbmcsIHN0cmluZywgbnVtYmVyIF0ge1xuXHRpZiAodGV4dCA9PSBudWxsKSB7XG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcignc3RyaW5nLicgKyBuYW1lICsgJyByZXF1aXJlcyBhIHZhbGlkIHN0cmluZyB0byBzZWFyY2ggYWdhaW5zdC4nKTtcblx0fVxuXG5cdGNvbnN0IGxlbmd0aCA9IHRleHQubGVuZ3RoO1xuXHRwb3NpdGlvbiA9IHBvc2l0aW9uICE9PSBwb3NpdGlvbiA/IChpc0VuZCA/IGxlbmd0aCA6IDApIDogcG9zaXRpb247XG5cdHJldHVybiBbIHRleHQsIFN0cmluZyhzZWFyY2gpLCBNYXRoLm1pbihNYXRoLm1heChwb3NpdGlvbiwgMCksIGxlbmd0aCkgXTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBVVEYtMTYgZW5jb2RlZCBjb2RlIHBvaW50IHZhbHVlIG9mIGEgZ2l2ZW4gcG9zaXRpb24gaW4gYSBzdHJpbmcuXG4gKiBAcGFyYW0gdGV4dCBUaGUgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIGVsZW1lbnQgd2hvc2UgY29kZSBwb2ludCBpcyB0byBiZSBkZXRlcm1pbmVkXG4gKiBAcGFyYW0gcG9zaXRpb24gUG9zaXRpb24gb2YgYW4gZWxlbWVudCB3aXRoaW4gdGhlIHN0cmluZyB0byByZXRyaWV2ZSB0aGUgY29kZSBwb2ludCB2YWx1ZSBmcm9tXG4gKiBAcmV0dXJuIEEgbm9uLW5lZ2F0aXZlIGludGVnZXIgcmVwcmVzZW50aW5nIHRoZSBVVEYtMTYgZW5jb2RlZCBjb2RlIHBvaW50IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb2RlUG9pbnRBdCh0ZXh0OiBzdHJpbmcsIHBvc2l0aW9uOiBudW1iZXIgPSAwKSB7XG5cdC8vIEFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vbWF0aGlhc2J5bmVucy9TdHJpbmcucHJvdG90eXBlLmNvZGVQb2ludEF0XG5cdGlmICh0ZXh0ID09IG51bGwpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdzdHJpbmcuY29kZVBvaW50QXQgcmVxdXJpZXMgYSB2YWxpZCBzdHJpbmcuJyk7XG5cdH1cblx0Y29uc3QgbGVuZ3RoID0gdGV4dC5sZW5ndGg7XG5cblx0aWYgKHBvc2l0aW9uICE9PSBwb3NpdGlvbikge1xuXHRcdHBvc2l0aW9uID0gMDtcblx0fVxuXHRpZiAocG9zaXRpb24gPCAwIHx8IHBvc2l0aW9uID49IGxlbmd0aCkge1xuXHRcdHJldHVybiB1bmRlZmluZWQ7XG5cdH1cblxuXHQvLyBHZXQgdGhlIGZpcnN0IGNvZGUgdW5pdFxuXHRjb25zdCBmaXJzdCA9IHRleHQuY2hhckNvZGVBdChwb3NpdGlvbik7XG5cdGlmIChmaXJzdCA+PSBISUdIX1NVUlJPR0FURV9NSU4gJiYgZmlyc3QgPD0gSElHSF9TVVJST0dBVEVfTUFYICYmIGxlbmd0aCA+IHBvc2l0aW9uICsgMSkge1xuXHRcdC8vIFN0YXJ0IG9mIGEgc3Vycm9nYXRlIHBhaXIgKGhpZ2ggc3Vycm9nYXRlIGFuZCB0aGVyZSBpcyBhIG5leHQgY29kZSB1bml0KTsgY2hlY2sgZm9yIGxvdyBzdXJyb2dhdGVcblx0XHQvLyBodHRwczovL21hdGhpYXNieW5lbnMuYmUvbm90ZXMvamF2YXNjcmlwdC1lbmNvZGluZyNzdXJyb2dhdGUtZm9ybXVsYWVcblx0XHRjb25zdCBzZWNvbmQgPSB0ZXh0LmNoYXJDb2RlQXQocG9zaXRpb24gKyAxKTtcblx0XHRpZiAoc2Vjb25kID49IExPV19TVVJST0dBVEVfTUlOICYmIHNlY29uZCA8PSBMT1dfU1VSUk9HQVRFX01BWCkge1xuXHRcdFx0cmV0dXJuIChmaXJzdCAtIEhJR0hfU1VSUk9HQVRFX01JTikgKiAweDQwMCArIHNlY29uZCAtIExPV19TVVJST0dBVEVfTUlOICsgMHgxMDAwMDtcblx0XHR9XG5cdH1cblx0cmV0dXJuIGZpcnN0O1xufVxuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciBhIHN0cmluZyBlbmRzIHdpdGggdGhlIGdpdmVuIHN1YnN0cmluZy5cbiAqIEBwYXJhbSB0ZXh0IFRoZSBzdHJpbmcgdG8gbG9vayBmb3IgdGhlIHNlYXJjaCBzdHJpbmcgd2l0aGluXG4gKiBAcGFyYW0gc2VhcmNoIFRoZSBzdHJpbmcgdG8gc2VhcmNoIGZvclxuICogQHBhcmFtIGVuZFBvc2l0aW9uIFRoZSBpbmRleCBzZWFyY2hpbmcgc2hvdWxkIHN0b3AgYmVmb3JlIChkZWZhdWx0cyB0byB0ZXh0Lmxlbmd0aClcbiAqIEByZXR1cm4gQm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBzZWFyY2ggc3RyaW5nIHdhcyBmb3VuZCBhdCB0aGUgZW5kIG9mIHRoZSBnaXZlbiBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuZHNXaXRoKHRleHQ6IHN0cmluZywgc2VhcmNoOiBzdHJpbmcsIGVuZFBvc2l0aW9uPzogbnVtYmVyKTogYm9vbGVhbiB7XG5cdGlmIChlbmRQb3NpdGlvbiA9PSBudWxsICYmIHRleHQgIT0gbnVsbCkge1xuXHRcdGVuZFBvc2l0aW9uID0gdGV4dC5sZW5ndGg7XG5cdH1cblxuXHRbIHRleHQsIHNlYXJjaCwgZW5kUG9zaXRpb24gXSA9IG5vcm1hbGl6ZVN1YnN0cmluZ0FyZ3MoJ2VuZHNXaXRoJywgdGV4dCwgc2VhcmNoLCBlbmRQb3NpdGlvbiwgdHJ1ZSk7XG5cblx0Y29uc3Qgc3RhcnQgPSBlbmRQb3NpdGlvbiAtIHNlYXJjaC5sZW5ndGg7XG5cdGlmIChzdGFydCA8IDApIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cblxuXHRyZXR1cm4gdGV4dC5zbGljZShzdGFydCwgZW5kUG9zaXRpb24pID09PSBzZWFyY2g7XG59XG5cbi8qKlxuICogRXNjYXBlcyBhIHN0cmluZyBzbyB0aGF0IGl0IGNhbiBzYWZlbHkgYmUgcGFzc2VkIHRvIHRoZSBSZWdFeHAgY29uc3RydWN0b3IuXG4gKiBAcGFyYW0gdGV4dCBUaGUgc3RyaW5nIHRvIGJlIGVzY2FwZWRcbiAqIEByZXR1cm4gVGhlIGVzY2FwZWQgc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlc2NhcGVSZWdFeHAodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcblx0cmV0dXJuICF0ZXh0ID8gdGV4dCA6IHRleHQucmVwbGFjZShlc2NhcGVSZWdFeHBQYXR0ZXJuLCAnXFxcXCQmJyk7XG59XG5cbi8qKlxuICogU2FuaXRpemVzIGEgc3RyaW5nIHRvIHByb3RlY3QgYWdhaW5zdCB0YWcgaW5qZWN0aW9uLlxuICogQHBhcmFtIHhtbCBUaGUgc3RyaW5nIHRvIGJlIGVzY2FwZWRcbiAqIEBwYXJhbSBmb3JBdHRyaWJ1dGUgV2hldGhlciB0byBhbHNvIGVzY2FwZSAnLCBcIiwgYW5kID4gaW4gYWRkaXRpb24gdG8gPCBhbmQgJlxuICogQHJldHVybiBUaGUgZXNjYXBlZCBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVzY2FwZVhtbCh4bWw6IHN0cmluZywgZm9yQXR0cmlidXRlOiBib29sZWFuID0gdHJ1ZSk6IHN0cmluZyB7XG5cdGlmICgheG1sKSB7XG5cdFx0cmV0dXJuIHhtbDtcblx0fVxuXG5cdGNvbnN0IHBhdHRlcm4gPSBmb3JBdHRyaWJ1dGUgPyBlc2NhcGVYbWxGb3JQYXR0ZXJuIDogZXNjYXBlWG1sUGF0dGVybjtcblxuXHRyZXR1cm4geG1sLnJlcGxhY2UocGF0dGVybiwgZnVuY3Rpb24gKGNoYXJhY3Rlcjogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gZXNjYXBlWG1sTWFwW2NoYXJhY3Rlcl07XG5cdH0pO1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBzdHJpbmcgY3JlYXRlZCBieSB1c2luZyB0aGUgc3BlY2lmaWVkIHNlcXVlbmNlIG9mIGNvZGUgcG9pbnRzLlxuICogQHBhcmFtIGNvZGVQb2ludHMgT25lIG9yIG1vcmUgY29kZSBwb2ludHNcbiAqIEByZXR1cm4gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgZ2l2ZW4gY29kZSBwb2ludHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21Db2RlUG9pbnQoLi4uY29kZVBvaW50czogbnVtYmVyW10pOiBzdHJpbmcge1xuXHQvLyBBZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL21hdGhpYXNieW5lbnMvU3RyaW5nLmZyb21Db2RlUG9pbnRcblx0Y29uc3QgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aDtcblx0aWYgKCFsZW5ndGgpIHtcblx0XHRyZXR1cm4gJyc7XG5cdH1cblxuXHRjb25zdCBmcm9tQ2hhckNvZGUgPSBTdHJpbmcuZnJvbUNoYXJDb2RlO1xuXHRjb25zdCBNQVhfU0laRSA9IDB4NDAwMDtcblx0bGV0IGNvZGVVbml0czogbnVtYmVyW10gPSBbXTtcblx0bGV0IGluZGV4ID0gLTE7XG5cdGxldCByZXN1bHQgPSAnJztcblxuXHR3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuXHRcdGxldCBjb2RlUG9pbnQgPSBOdW1iZXIoYXJndW1lbnRzW2luZGV4XSk7XG5cblx0XHQvLyBDb2RlIHBvaW50cyBtdXN0IGJlIGZpbml0ZSBpbnRlZ2VycyB3aXRoaW4gdGhlIHZhbGlkIHJhbmdlXG5cdFx0bGV0IGlzVmFsaWQgPSBpc0Zpbml0ZShjb2RlUG9pbnQpICYmIE1hdGguZmxvb3IoY29kZVBvaW50KSA9PT0gY29kZVBvaW50ICYmXG5cdFx0XHRjb2RlUG9pbnQgPj0gMCAmJiBjb2RlUG9pbnQgPD0gMHgxMEZGRkY7XG5cdFx0aWYgKCFpc1ZhbGlkKSB7XG5cdFx0XHR0aHJvdyBSYW5nZUVycm9yKCdzdHJpbmcuZnJvbUNvZGVQb2ludDogSW52YWxpZCBjb2RlIHBvaW50ICcgKyBjb2RlUG9pbnQpO1xuXHRcdH1cblxuXHRcdGlmIChjb2RlUG9pbnQgPD0gMHhGRkZGKSB7XG5cdFx0XHQvLyBCTVAgY29kZSBwb2ludFxuXHRcdFx0Y29kZVVuaXRzLnB1c2goY29kZVBvaW50KTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHQvLyBBc3RyYWwgY29kZSBwb2ludDsgc3BsaXQgaW4gc3Vycm9nYXRlIGhhbHZlc1xuXHRcdFx0Ly8gaHR0cHM6Ly9tYXRoaWFzYnluZW5zLmJlL25vdGVzL2phdmFzY3JpcHQtZW5jb2Rpbmcjc3Vycm9nYXRlLWZvcm11bGFlXG5cdFx0XHRjb2RlUG9pbnQgLT0gMHgxMDAwMDtcblx0XHRcdGxldCBoaWdoU3Vycm9nYXRlID0gKGNvZGVQb2ludCA+PiAxMCkgKyBISUdIX1NVUlJPR0FURV9NSU47XG5cdFx0XHRsZXQgbG93U3Vycm9nYXRlID0gKGNvZGVQb2ludCAlIDB4NDAwKSArIExPV19TVVJST0dBVEVfTUlOO1xuXHRcdFx0Y29kZVVuaXRzLnB1c2goaGlnaFN1cnJvZ2F0ZSwgbG93U3Vycm9nYXRlKTtcblx0XHR9XG5cblx0XHRpZiAoaW5kZXggKyAxID09PSBsZW5ndGggfHwgY29kZVVuaXRzLmxlbmd0aCA+IE1BWF9TSVpFKSB7XG5cdFx0XHRyZXN1bHQgKz0gZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsIGNvZGVVbml0cyk7XG5cdFx0XHRjb2RlVW5pdHMubGVuZ3RoID0gMDtcblx0XHR9XG5cdH1cblx0cmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBzdHJpbmcgaW5jbHVkZXMgdGhlIGdpdmVuIHN1YnN0cmluZyAob3B0aW9uYWxseSBzdGFydGluZyBmcm9tIGEgZ2l2ZW4gaW5kZXgpLlxuICogQHBhcmFtIHRleHQgVGhlIHN0cmluZyB0byBsb29rIGZvciB0aGUgc2VhcmNoIHN0cmluZyB3aXRoaW5cbiAqIEBwYXJhbSBzZWFyY2ggVGhlIHN0cmluZyB0byBzZWFyY2ggZm9yXG4gKiBAcGFyYW0gcG9zaXRpb24gVGhlIGluZGV4IHRvIGJlZ2luIHNlYXJjaGluZyBhdFxuICogQHJldHVybiBCb29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHNlYXJjaCBzdHJpbmcgd2FzIGZvdW5kIHdpdGhpbiB0aGUgZ2l2ZW4gc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmNsdWRlcyh0ZXh0OiBzdHJpbmcsIHNlYXJjaDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyID0gMCk6IGJvb2xlYW4ge1xuXHRbIHRleHQsIHNlYXJjaCwgcG9zaXRpb24gXSA9IG5vcm1hbGl6ZVN1YnN0cmluZ0FyZ3MoJ2luY2x1ZGVzJywgdGV4dCwgc2VhcmNoLCBwb3NpdGlvbik7XG5cdHJldHVybiB0ZXh0LmluZGV4T2Yoc2VhcmNoLCBwb3NpdGlvbikgIT09IC0xO1xufVxuXG4vKipcbiAqIEFkZHMgcGFkZGluZyB0byB0aGUgZW5kIG9mIGEgc3RyaW5nIHRvIGVuc3VyZSBpdCBpcyBhIGNlcnRhaW4gbGVuZ3RoLlxuICogQHBhcmFtIHRleHQgVGhlIHN0cmluZyB0byBwYWRcbiAqIEBwYXJhbSBsZW5ndGggVGhlIHRhcmdldCBtaW5pbXVtIGxlbmd0aCBvZiB0aGUgc3RyaW5nXG4gKiBAcGFyYW0gY2hhcmFjdGVyIFRoZSBjaGFyYWN0ZXIgdG8gcGFkIG9udG8gdGhlIGVuZCBvZiB0aGUgc3RyaW5nXG4gKiBAcmV0dXJuIFRoZSBzdHJpbmcsIHBhZGRlZCB0byB0aGUgZ2l2ZW4gbGVuZ3RoIGlmIG5lY2Vzc2FyeVxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFkRW5kKHRleHQ6IHN0cmluZywgbGVuZ3RoOiBudW1iZXIsIGNoYXJhY3Rlcjogc3RyaW5nID0gJzAnKTogc3RyaW5nIHtcblx0cmV0dXJuIHRleHQgKyBnZXRQYWRkaW5nKCdwYWRFbmQnLCB0ZXh0LCBsZW5ndGgsIGNoYXJhY3Rlcik7XG59XG5cbi8qKlxuICogQWRkcyBwYWRkaW5nIHRvIHRoZSBiZWdpbm5pbmcgb2YgYSBzdHJpbmcgdG8gZW5zdXJlIGl0IGlzIGEgY2VydGFpbiBsZW5ndGguXG4gKiBAcGFyYW0gdGV4dCBUaGUgc3RyaW5nIHRvIHBhZFxuICogQHBhcmFtIGxlbmd0aCBUaGUgdGFyZ2V0IG1pbmltdW0gbGVuZ3RoIG9mIHRoZSBzdHJpbmdcbiAqIEBwYXJhbSBjaGFyYWN0ZXIgVGhlIGNoYXJhY3RlciB0byBwYWQgb250byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzdHJpbmdcbiAqIEByZXR1cm4gVGhlIHN0cmluZywgcGFkZGVkIHRvIHRoZSBnaXZlbiBsZW5ndGggaWYgbmVjZXNzYXJ5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRTdGFydCh0ZXh0OiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyLCBjaGFyYWN0ZXI6IHN0cmluZyA9ICcwJyk6IHN0cmluZyB7XG5cdHJldHVybiBnZXRQYWRkaW5nKCdwYWRTdGFydCcsIHRleHQsIGxlbmd0aCwgY2hhcmFjdGVyKSArIHRleHQ7XG59XG5cbi8qKlxuICogQSB0YWcgZnVuY3Rpb24gZm9yIHRlbXBsYXRlIHN0cmluZ3MgdG8gZ2V0IHRoZSB0ZW1wbGF0ZSBzdHJpbmcncyByYXcgc3RyaW5nIGZvcm0uXG4gKiBAcGFyYW0gY2FsbFNpdGUgQ2FsbCBzaXRlIG9iamVjdCAob3IgYSB0ZW1wbGF0ZSBzdHJpbmcgaW4gVHlwZVNjcmlwdCwgd2hpY2ggd2lsbCB0cmFuc3BpbGUgdG8gb25lKVxuICogQHBhcmFtIHN1YnN0aXR1dGlvbnMgVmFsdWVzIHRvIHN1YnN0aXR1dGUgd2l0aGluIHRoZSB0ZW1wbGF0ZSBzdHJpbmcgKFR5cGVTY3JpcHQgd2lsbCBnZW5lcmF0ZSB0aGVzZSBhdXRvbWF0aWNhbGx5KVxuICogQHJldHVybiBTdHJpbmcgY29udGFpbmluZyB0aGUgcmF3IHRlbXBsYXRlIHN0cmluZyB3aXRoIHZhcmlhYmxlcyBzdWJzdGl0dXRlZFxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBXaXRoaW4gVHlwZVNjcmlwdDsgbG9ncyAnVGhlIGFuc3dlciBpczpcXFxcbjQyJ1xuICogbGV0IGFuc3dlciA9IDQyO1xuICogY29uc29sZS5sb2coc3RyaW5nLnJhd2BUaGUgYW5zd2VyIGlzOlxcbiR7YW5zd2VyfWApO1xuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBUaGUgc2FtZSBleGFtcGxlIGFzIGFib3ZlLCBidXQgZGlyZWN0bHkgc3BlY2lmeWluZyBhIEphdmFTY3JpcHQgb2JqZWN0IGFuZCBzdWJzdGl0dXRpb25cbiAqIGNvbnNvbGUubG9nKHN0cmluZy5yYXcoeyByYXc6IFsgJ1RoZSBhbnN3ZXIgaXM6XFxcXG4nLCAnJyBdIH0sIDQyKSk7XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYXcoY2FsbFNpdGU6IFRlbXBsYXRlU3RyaW5nc0FycmF5LCAuLi5zdWJzdGl0dXRpb25zOiBhbnlbXSk6IHN0cmluZyB7XG5cdGxldCByYXdTdHJpbmdzID0gY2FsbFNpdGUucmF3O1xuXHRsZXQgcmVzdWx0ID0gJyc7XG5cdGxldCBudW1TdWJzdGl0dXRpb25zID0gc3Vic3RpdHV0aW9ucy5sZW5ndGg7XG5cblx0aWYgKGNhbGxTaXRlID09IG51bGwgfHwgY2FsbFNpdGUucmF3ID09IG51bGwpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdzdHJpbmcucmF3IHJlcXVpcmVzIGEgdmFsaWQgY2FsbFNpdGUgb2JqZWN0IHdpdGggYSByYXcgdmFsdWUnKTtcblx0fVxuXG5cdGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSByYXdTdHJpbmdzLmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7XG5cdFx0cmVzdWx0ICs9IHJhd1N0cmluZ3NbaV0gKyAoaSA8IG51bVN1YnN0aXR1dGlvbnMgJiYgaSA8IGxlbmd0aCAtIDEgPyBzdWJzdGl0dXRpb25zW2ldIDogJycpO1xuXHR9XG5cblx0cmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIGdpdmVuIHN0cmluZyByZXBlYXRlZCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0aW1lcy5cbiAqIEBwYXJhbSB0ZXh0IFRoZSBzdHJpbmcgdG8gcmVwZWF0XG4gKiBAcGFyYW0gY291bnQgVGhlIG51bWJlciBvZiB0aW1lcyB0byByZXBlYXQgdGhlIHN0cmluZ1xuICogQHJldHVybiBBIHN0cmluZyBjb250YWluaW5nIHRoZSBpbnB1dCBzdHJpbmcgcmVwZWF0ZWQgY291bnQgdGltZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcGVhdCh0ZXh0OiBzdHJpbmcsIGNvdW50OiBudW1iZXIgPSAwKTogc3RyaW5nIHtcblx0Ly8gQWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tYXRoaWFzYnluZW5zL1N0cmluZy5wcm90b3R5cGUucmVwZWF0XG5cdGlmICh0ZXh0ID09IG51bGwpIHtcblx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdzdHJpbmcucmVwZWF0IHJlcXVpcmVzIGEgdmFsaWQgc3RyaW5nLicpO1xuXHR9XG5cdGlmIChjb3VudCAhPT0gY291bnQpIHtcblx0XHRjb3VudCA9IDA7XG5cdH1cblx0aWYgKGNvdW50IDwgMCB8fCBjb3VudCA9PT0gSW5maW5pdHkpIHtcblx0XHR0aHJvdyBuZXcgUmFuZ2VFcnJvcignc3RyaW5nLnJlcGVhdCByZXF1aXJlcyBhIG5vbi1uZWdhdGl2ZSBmaW5pdGUgY291bnQuJyk7XG5cdH1cblxuXHRsZXQgcmVzdWx0ID0gJyc7XG5cdHdoaWxlIChjb3VudCkge1xuXHRcdGlmIChjb3VudCAlIDIpIHtcblx0XHRcdHJlc3VsdCArPSB0ZXh0O1xuXHRcdH1cblx0XHRpZiAoY291bnQgPiAxKSB7XG5cdFx0XHR0ZXh0ICs9IHRleHQ7XG5cdFx0fVxuXHRcdGNvdW50ID4+PSAxO1xuXHR9XG5cdHJldHVybiByZXN1bHQ7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgc3RyaW5nIGJlZ2lucyB3aXRoIHRoZSBnaXZlbiBzdWJzdHJpbmcgKG9wdGlvbmFsbHkgc3RhcnRpbmcgZnJvbSBhIGdpdmVuIGluZGV4KS5cbiAqIEBwYXJhbSB0ZXh0IFRoZSBzdHJpbmcgdG8gbG9vayBmb3IgdGhlIHNlYXJjaCBzdHJpbmcgd2l0aGluXG4gKiBAcGFyYW0gc2VhcmNoIFRoZSBzdHJpbmcgdG8gc2VhcmNoIGZvclxuICogQHBhcmFtIHBvc2l0aW9uIFRoZSBpbmRleCB0byBiZWdpbiBzZWFyY2hpbmcgYXRcbiAqIEByZXR1cm4gQm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBzZWFyY2ggc3RyaW5nIHdhcyBmb3VuZCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBnaXZlbiBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN0YXJ0c1dpdGgodGV4dDogc3RyaW5nLCBzZWFyY2g6IHN0cmluZywgcG9zaXRpb246IG51bWJlciA9IDApOiBib29sZWFuIHtcblx0c2VhcmNoID0gU3RyaW5nKHNlYXJjaCk7XG5cdFsgdGV4dCwgc2VhcmNoLCBwb3NpdGlvbiBdID0gbm9ybWFsaXplU3Vic3RyaW5nQXJncygnc3RhcnRzV2l0aCcsIHRleHQsIHNlYXJjaCwgcG9zaXRpb24pO1xuXG5cdGNvbnN0IGVuZCA9IHBvc2l0aW9uICsgc2VhcmNoLmxlbmd0aDtcblx0aWYgKGVuZCA+IHRleHQubGVuZ3RoKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0cmV0dXJuIHRleHQuc2xpY2UocG9zaXRpb24sIGVuZCkgPT09IHNlYXJjaDtcbn1cbiJdfQ== |
@@ -30,10 +30,2 @@ // Type definitions for Node.js v0.12.0 | ||
declare var require: { | ||
(id: string): any; | ||
resolve(id:string): string; | ||
cache: any; | ||
extensions: any; | ||
main: any; | ||
}; | ||
declare var module: { | ||
@@ -40,0 +32,0 @@ exports: any; |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var lang_1 = require('./lang'); | ||
@@ -163,4 +164,4 @@ /** | ||
var encodedKey = encodeURIComponent(key); | ||
for (var _i = 0; _i < values.length; _i++) { | ||
var value = values[_i]; | ||
for (var _i = 0, values_1 = values; _i < values_1.length; _i++) { | ||
var value = values_1[_i]; | ||
query.push(encodedKey + (value ? ('=' + encodeURIComponent(value)) : '')); | ||
@@ -172,6 +173,6 @@ } | ||
return UrlSearchParams; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = UrlSearchParams; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXJsU2VhcmNoUGFyYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1VybFNlYXJjaFBhcmFtcy50cyJdLCJuYW1lcyI6WyJwYXJzZVF1ZXJ5U3RyaW5nIiwiVXJsU2VhcmNoUGFyYW1zIiwiVXJsU2VhcmNoUGFyYW1zLmNvbnN0cnVjdG9yIiwiVXJsU2VhcmNoUGFyYW1zLmFwcGVuZCIsIlVybFNlYXJjaFBhcmFtcy5kZWxldGUiLCJVcmxTZWFyY2hQYXJhbXMuZ2V0IiwiVXJsU2VhcmNoUGFyYW1zLmdldEFsbCIsIlVybFNlYXJjaFBhcmFtcy5oYXMiLCJVcmxTZWFyY2hQYXJhbXMua2V5cyIsIlVybFNlYXJjaFBhcmFtcy5zZXQiLCJVcmxTZWFyY2hQYXJhbXMudG9TdHJpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQ0EscUJBQTBCLFFBQVEsQ0FBQyxDQUFBO0lBT25DOztPQUVHO0lBQ0gsMEJBQTBCLEtBQWE7UUFDdENBLElBQU1BLEtBQUtBLEdBQW1CQSxFQUFFQSxDQUFDQTtRQUNqQ0EsR0FBR0EsQ0FBQ0EsQ0FBZ0JBLFVBQWdCQSxFQUFoQkEsS0FBQUEsS0FBS0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsRUFBL0JBLGNBQVdBLEVBQVhBLElBQStCQSxDQUFDQTtZQUFoQ0EsSUFBTUEsS0FBS0EsU0FBQUE7WUFDZkEsSUFBTUEsa0JBQWtCQSxHQUFHQSxLQUFLQSxDQUFDQSxPQUFPQSxDQUFDQSxHQUFHQSxDQUFDQSxDQUFDQTtZQUM5Q0EsSUFBSUEsR0FBR0EsU0FBUUEsQ0FBQ0E7WUFDaEJBLElBQUlBLEtBQUtBLFNBQVFBLENBQUNBO1lBRWxCQSxFQUFFQSxDQUFDQSxDQUFDQSxrQkFBa0JBLElBQUlBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO2dCQUM3QkEsR0FBR0EsR0FBR0EsS0FBS0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsQ0FBQ0EsRUFBRUEsa0JBQWtCQSxDQUFDQSxDQUFDQTtnQkFDekNBLEtBQUtB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LEdBQWFBLEVBQUVBLENBQUNBO1lBRTNCQSxHQUFHQSxDQUFDQSxDQUFDQSxHQUFHQSxDQUFHQSxHQUFHQSxJQUFJQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQSxDQUFDQTtnQkFDOUJBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLEdBQUdBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO29CQUNwQkEsUUFBUUEsQ0FBQ0E7Z0JBQ1ZBLENBQUNBO2dCQUVEQSxJQUFNQSxNQUFNQSxHQUFHQSxJQUFJQSxDQUFDQSxLQUFLQSxDQUFDQSxHQUFHQSxDQUFDQSxDQUFDQTtnQkFDL0JBLElBQU1BLFVBQVVBLEdBQUdBLGtCQUFrQkEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0E7Z0JBQzNDQSxHQUFHQSxDQUFDQSxDQUFnQkEsVUFBTUEsRUFBckJBLGtCQUFXQSxFQUFYQSxJQUFxQkEsQ0FBQ0E7b0JBQXRCQSxJQUFNQSxLQUFLQSxHQUFJQSxNQUFNQSxJQUFWQTtvQkFDZkEsS0FBS0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsVUFBVUEsR0FBR0EsQ0FBQ0EsS0FBS0EsR0FBR0EsQ0FBQ0EsR0FBR0EsR0FBR0Esa0JBQWtCQSxDQUFDQSxLQUFLQSxDQUFDQSxDQUFDQSxHQUFHQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQTtpQkFDMUVBO1lBQ0ZBLENBQUNBO1lBRURBLE1BQU1BLENBQUNBLEtBQUtBLENBQUNBLElBQUlBLENBQUNBLEdBQUdBLENBQUNBLENBQUNBO1FBQ3hCQSxDQUFDQTtRQUNGVCxzQkFBQ0E7SUFBREEsQ0FBQ0EsQUFySkQsSUFxSkM7SUFySkQ7cUNBcUpDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXNoIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGR1cGxpY2F0ZSB9IGZyb20gJy4vbGFuZyc7XG5cbi8qKlxuICogT2JqZWN0IHdpdGggc3RyaW5nIGtleXMgYW5kIHN0cmluZyBvciBzdHJpbmcgYXJyYXkgdmFsdWVzIHRoYXQgZGVzY3JpYmVzIGEgcXVlcnkgc3RyaW5nLlxuICovXG5leHBvcnQgdHlwZSBQYXJhbUxpc3QgPSBIYXNoPHN0cmluZyB8IHN0cmluZ1tdPjtcblxuLyoqXG4gKiBQYXJzZXMgYSBxdWVyeSBzdHJpbmcsIHJldHVybmluZyBhIFBhcmFtTGlzdCBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIHBhcnNlUXVlcnlTdHJpbmcoaW5wdXQ6IHN0cmluZyk6IFBhcmFtTGlzdCB7XG5cdGNvbnN0IHF1ZXJ5OiBIYXNoPHN0cmluZ1tdPiA9IHt9O1xuXHRmb3IgKGNvbnN0IGVudHJ5IG9mIGlucHV0LnNwbGl0KCcmJykpIHtcblx0XHRjb25zdCBpbmRleE9mRmlyc3RFcXVhbHMgPSBlbnRyeS5pbmRleE9mKCc9Jyk7XG5cdFx0bGV0IGtleTogc3RyaW5nO1xuXHRcdGxldCB2YWx1ZTogc3RyaW5nO1xuXG5cdFx0aWYgKGluZGV4T2ZGaXJzdEVxdWFscyA+PSAwKSB7XG5cdFx0XHRrZXkgPSBlbnRyeS5zbGljZSgwLCBpbmRleE9mRmlyc3RFcXVhbHMpO1xuXHRcdFx0dmFsdWUgPSBlbnRyeS5zbGljZShpbmRleE9mRmlyc3RFcXVhbHMgKyAxKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0a2V5ID0gZW50cnk7XG5cdFx0fVxuXG5cdFx0a2V5ID0ga2V5ID8gZGVjb2RlVVJJQ29tcG9uZW50KGtleSkgOiAnJztcblx0XHR2YWx1ZSA9IHZhbHVlID8gZGVjb2RlVVJJQ29tcG9uZW50KHZhbHVlKSA6ICcnO1xuXG5cdFx0aWYgKGtleSBpbiBxdWVyeSkge1xuXHRcdFx0cXVlcnlba2V5XS5wdXNoKHZhbHVlKTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRxdWVyeVtrZXldID0gWyB2YWx1ZSBdO1xuXHRcdH1cblx0fVxuXHRyZXR1cm4gcXVlcnk7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNldCBvZiBVUkwgcXVlcnkgc2VhcmNoIHBhcmFtZXRlcnMuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFVybFNlYXJjaFBhcmFtcyB7XG5cdC8qKlxuXHQgKiBDb25zdHJ1Y3RzIGEgbmV3IFVybFNlYXJjaFBhcmFtcyBmcm9tIGEgcXVlcnkgc3RyaW5nLCBhbiBvYmplY3Qgb2YgcGFyYW1ldGVycyBhbmQgdmFsdWVzLCBvciBhbm90aGVyXG5cdCAqIFVybFNlYXJjaFBhcmFtcy5cblx0ICovXG5cdGNvbnN0cnVjdG9yKGlucHV0Pzogc3RyaW5nIHwgUGFyYW1MaXN0IHwgVXJsU2VhcmNoUGFyYW1zKSB7XG5cdFx0bGV0IGxpc3Q6IFBhcmFtTGlzdDtcblxuXHRcdGlmIChpbnB1dCBpbnN0YW5jZW9mIFVybFNlYXJjaFBhcmFtcykge1xuXHRcdFx0Ly8gQ29weSB0aGUgaW5jb21pbmcgVXJsU2VhcmNoUGFyYW0ncyBpbnRlcm5hbCBsaXN0XG5cdFx0XHRsaXN0ID0gPFBhcmFtTGlzdD4gZHVwbGljYXRlKGlucHV0Ll9saXN0KTtcblx0XHR9XG5cdFx0ZWxzZSBpZiAodHlwZW9mIGlucHV0ID09PSAnb2JqZWN0Jykge1xuXHRcdFx0Ly8gQ29weSB0aGUgaW5jb21pbmcgb2JqZWN0LCBhc3N1bWluZyBpdHMgcHJvcGVydHkgdmFsdWVzIGFyZSBlaXRoZXIgYXJyYXlzIG9yIHN0cmluZ3Ncblx0XHRcdGxpc3QgPSB7fTtcblx0XHRcdGZvciAoY29uc3Qga2V5IGluIGlucHV0KSB7XG5cdFx0XHRcdGNvbnN0IHZhbHVlID0gKDxQYXJhbUxpc3Q+IGlucHV0KVtrZXldO1xuXG5cdFx0XHRcdGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuXHRcdFx0XHRcdGxpc3Rba2V5XSA9IHZhbHVlLmxlbmd0aCA/IHZhbHVlLnNsaWNlKCkgOiBbICcnIF07XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSBpZiAodmFsdWUgPT0gbnVsbCkge1xuXHRcdFx0XHRcdGxpc3Rba2V5XSA9IFsgJycgXTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIHtcblx0XHRcdFx0XHRsaXN0W2tleV0gPSBbIDxzdHJpbmc+IHZhbHVlIF07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0ZWxzZSBpZiAodHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJykge1xuXHRcdFx0Ly8gUGFyc2UgdGhlIGluY29taW5nIHN0cmluZyBhcyBhIHF1ZXJ5IHN0cmluZ1xuXHRcdFx0bGlzdCA9IHBhcnNlUXVlcnlTdHJpbmcoaW5wdXQpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdGxpc3QgPSB7fTtcblx0XHR9XG5cblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ19saXN0JywgeyB2YWx1ZTogbGlzdCB9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBNYXBzIHByb3BlcnR5IGtleXMgdG8gYXJyYXlzIG9mIHZhbHVlcy4gVGhlIHZhbHVlIGZvciBhbnkgcHJvcGVydHkgdGhhdCBoYXMgYmVlbiBzZXQgd2lsbCBiZSBhbiBhcnJheSBjb250YWluaW5nXG5cdCAqIGF0IGxlYXN0IG9uZSBpdGVtLiBQcm9wZXJ0aWVzIHRoYXQgaGF2ZSBiZWVuIGRlbGV0ZWQgd2lsbCBoYXZlIGEgdmFsdWUgb2YgJ3VuZGVmaW5lZCcuXG5cdCAqL1xuXHRwcm90ZWN0ZWQgX2xpc3Q6IEhhc2g8c3RyaW5nW10+O1xuXG5cdC8qKlxuXHQgKiBBcHBlbmRzIGEgbmV3IHZhbHVlIHRvIHRoZSBzZXQgb2YgdmFsdWVzIGZvciBhIGtleS5cblx0ICogQHBhcmFtIGtleSBUaGUga2V5IHRvIGFkZCBhIHZhbHVlIGZvclxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIGFkZFxuXHQgKi9cblx0YXBwZW5kKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLmhhcyhrZXkpKSB7XG5cdFx0XHR0aGlzLnNldChrZXksIHZhbHVlKTtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHR0aGlzLl9saXN0W2tleV0ucHVzaCh2YWx1ZSk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIERlbGV0ZXMgYWxsIHZhbHVlcyBmb3IgYSBrZXkuXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB3aG9zZSB2YWx1ZXMgYXJlIHRvIGJlIHJlbW92ZWRcblx0ICovXG5cdGRlbGV0ZShrZXk6IHN0cmluZyk6IHZvaWQge1xuXHRcdC8vIFNldCB0byB1bmRlZmluZWQgcmF0aGVyIHRoYW4gZGVsZXRpbmcgdGhlIGtleSwgZm9yIGJldHRlciBjb25zaXN0ZW5jeSBhY3Jvc3MgYnJvd3NlcnMuXG5cdFx0Ly8gSWYgYSBkZWxldGVkIGtleSBpcyByZS1hZGRlZCwgbW9zdCBicm93c2VycyBwdXQgaXQgYXQgdGhlIGVuZCBvZiBpdGVyYXRpb24gb3JkZXIsIGJ1dCBJRSBtYWludGFpbnNcblx0XHQvLyBpdHMgb3JpZ2luYWwgcG9zaXRpb24uICBUaGlzIGFwcHJvYWNoIG1haW50YWlucyB0aGUgb3JpZ2luYWwgcG9zaXRpb24gZXZlcnl3aGVyZS5cblx0XHR0aGlzLl9saXN0W2tleV0gPSB1bmRlZmluZWQ7XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyB0aGUgZmlyc3QgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGEga2V5LlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gcmV0dXJuIHRoZSBmaXJzdCB2YWx1ZSBmb3Jcblx0ICogQHJldHVybiBUaGUgZmlyc3Qgc3RyaW5nIHZhbHVlIGZvciB0aGUga2V5XG5cdCAqL1xuXHRnZXQoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGlmICghdGhpcy5oYXMoa2V5KSkge1xuXHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLl9saXN0W2tleV1bMF07XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyBhbGwgdGhlIHZhbHVlcyBhc3NvY2lhdGVkIHdpdGggYSBrZXkuXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB0byByZXR1cm4gYWxsIHZhbHVlcyBmb3Jcblx0ICogQHJldHVybiBBbiBhcnJheSBvZiBzdHJpbmdzIGNvbnRhaW5pbmcgYWxsIHZhbHVlcyBmb3IgdGhlIGtleVxuXHQgKi9cblx0Z2V0QWxsKGtleTogc3RyaW5nKTogc3RyaW5nW10ge1xuXHRcdGlmICghdGhpcy5oYXMoa2V5KSkge1xuXHRcdFx0cmV0dXJuIG51bGw7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLl9saXN0W2tleV07XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyB0cnVlIGlmIGEga2V5IGhhcyBiZWVuIHNldCB0byBhbnkgdmFsdWUsIGZhbHNlIG90aGVyd2lzZS5cblx0ICogQHBhcmFtIGtleSBUaGUga2V5IHRvIHRlc3QgZm9yIGV4aXN0ZW5jZVxuXHQgKiBAcmV0dXJuIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBrZXkgaGFzIGJlZW4gc2V0XG5cdCAqL1xuXHRoYXMoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gQXJyYXkuaXNBcnJheSh0aGlzLl9saXN0W2tleV0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHVybnMgYW4gYXJyYXkgb2YgYWxsIGtleXMgd2hpY2ggaGF2ZSBiZWVuIHNldC5cblx0ICogQHJldHVybiBBbiBhcnJheSBvZiBzdHJpbmdzIGNvbnRhaW5pbmcgYWxsIGtleXMgc2V0IGluIHRoZSBVcmxTZWFyY2hQYXJhbXMgaW5zdGFuY2Vcblx0ICovXG5cdGtleXMoKTogc3RyaW5nW10ge1xuXHRcdGNvbnN0IGtleXM6IHN0cmluZ1tdID0gW107XG5cblx0XHRmb3IgKGNvbnN0IGtleSBpbiB0aGlzLl9saXN0KSB7XG5cdFx0XHRpZiAodGhpcy5oYXMoa2V5KSkge1xuXHRcdFx0XHRrZXlzLnB1c2goa2V5KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4ga2V5cztcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXRzIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYSBrZXkuXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB0byBzZXQgdGhlIHZhbHVlIG9mXG5cdCAqL1xuXHRzZXQoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcblx0XHR0aGlzLl9saXN0W2tleV0gPSBbIHZhbHVlIF07XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyB0aGlzIG9iamVjdCdzIGRhdGEgYXMgYW4gZW5jb2RlZCBxdWVyeSBzdHJpbmcuXG5cdCAqIEByZXR1cm4gQSBzdHJpbmcgaW4gYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIGZvcm1hdCBjb250YWluaW5nIGFsbCBvZiB0aGUgc2V0IGtleXMvdmFsdWVzXG5cdCAqL1xuXHR0b1N0cmluZygpOiBzdHJpbmcge1xuXHRcdGNvbnN0IHF1ZXJ5OiBzdHJpbmdbXSA9IFtdO1xuXG5cdFx0Zm9yIChjb25zdCBrZXkgaW4gdGhpcy5fbGlzdCkge1xuXHRcdFx0aWYgKCF0aGlzLmhhcyhrZXkpKSB7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXG5cdFx0XHRjb25zdCB2YWx1ZXMgPSB0aGlzLl9saXN0W2tleV07XG5cdFx0XHRjb25zdCBlbmNvZGVkS2V5ID0gZW5jb2RlVVJJQ29tcG9uZW50KGtleSk7XG5cdFx0XHRmb3IgKGNvbnN0IHZhbHVlIG9mIHZhbHVlcykge1xuXHRcdFx0XHRxdWVyeS5wdXNoKGVuY29kZWRLZXkgKyAodmFsdWUgPyAoJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKSkgOiAnJykpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiBxdWVyeS5qb2luKCcmJyk7XG5cdH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXJsU2VhcmNoUGFyYW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1VybFNlYXJjaFBhcmFtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFDQSxxQkFBMEIsUUFBUSxDQUFDLENBQUE7SUFPbkM7O09BRUc7SUFDSCwwQkFBMEIsS0FBYTtRQUN0QyxJQUFNLEtBQUssR0FBbUIsRUFBRSxDQUFDO1FBQ2pDLEdBQUcsQ0FBQyxDQUFnQixVQUFnQixFQUFoQixLQUFBLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQWhCLGNBQWdCLEVBQWhCLElBQWdCLENBQUM7WUFBaEMsSUFBTSxLQUFLLFNBQUE7WUFDZixJQUFNLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUMsSUFBSSxHQUFHLFNBQVEsQ0FBQztZQUNoQixJQUFJLEtBQUssU0FBUSxDQUFDO1lBRWxCLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzdCLEdBQUcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO2dCQUN6QyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUM3QyxDQUFDO1lBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ1AsR0FBRyxHQUFHLEtBQUssQ0FBQztZQUNiLENBQUM7WUFFRCxHQUFHLEdBQUcsR0FBRyxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUN6QyxLQUFLLEdBQUcsS0FBSyxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUUvQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDbEIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFD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QUM7WUFFM0IsR0FBRyxDQUFDLENBQUMsSUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQzlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3BCLFFBQVEsQ0FBQztnQkFDVixDQUFDO2dCQUVELElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQy9CLElBQU0sVUFBVSxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQyxHQUFHLENBQUMsQ0FBZ0IsVUFBTSxFQUFOLGlCQUFNLEVBQU4sb0JBQU0sRUFBTixJQUFNLENBQUM7b0JBQXRCLElBQU0sS0FBSyxlQUFBO29CQUNmLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDMUU7WUFDRixDQUFDO1lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEIsQ0FBQztRQUNGLHNCQUFDO0lBQUQsQ0FBQyxBQXJKRCxJQXFKQztJQXJKRDtxQ0FxSkMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhc2ggfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZHVwbGljYXRlIH0gZnJvbSAnLi9sYW5nJztcblxuLyoqXG4gKiBPYmplY3Qgd2l0aCBzdHJpbmcga2V5cyBhbmQgc3RyaW5nIG9yIHN0cmluZyBhcnJheSB2YWx1ZXMgdGhhdCBkZXNjcmliZXMgYSBxdWVyeSBzdHJpbmcuXG4gKi9cbmV4cG9ydCB0eXBlIFBhcmFtTGlzdCA9IEhhc2g8c3RyaW5nIHwgc3RyaW5nW10+O1xuXG4vKipcbiAqIFBhcnNlcyBhIHF1ZXJ5IHN0cmluZywgcmV0dXJuaW5nIGEgUGFyYW1MaXN0IG9iamVjdC5cbiAqL1xuZnVuY3Rpb24gcGFyc2VRdWVyeVN0cmluZyhpbnB1dDogc3RyaW5nKTogUGFyYW1MaXN0IHtcblx0Y29uc3QgcXVlcnk6IEhhc2g8c3RyaW5nW10+ID0ge307XG5cdGZvciAoY29uc3QgZW50cnkgb2YgaW5wdXQuc3BsaXQoJyYnKSkge1xuXHRcdGNvbnN0IGluZGV4T2ZGaXJzdEVxdWFscyA9IGVudHJ5LmluZGV4T2YoJz0nKTtcblx0XHRsZXQga2V5OiBzdHJpbmc7XG5cdFx0bGV0IHZhbHVlOiBzdHJpbmc7XG5cblx0XHRpZiAoaW5kZXhPZkZpcnN0RXF1YWxzID49IDApIHtcblx0XHRcdGtleSA9IGVudHJ5LnNsaWNlKDAsIGluZGV4T2ZGaXJzdEVxdWFscyk7XG5cdFx0XHR2YWx1ZSA9IGVudHJ5LnNsaWNlKGluZGV4T2ZGaXJzdEVxdWFscyArIDEpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRrZXkgPSBlbnRyeTtcblx0XHR9XG5cblx0XHRrZXkgPSBrZXkgPyBkZWNvZGVVUklDb21wb25lbnQoa2V5KSA6ICcnO1xuXHRcdHZhbHVlID0gdmFsdWUgPyBkZWNvZGVVUklDb21wb25lbnQodmFsdWUpIDogJyc7XG5cblx0XHRpZiAoa2V5IGluIHF1ZXJ5KSB7XG5cdFx0XHRxdWVyeVtrZXldLnB1c2godmFsdWUpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHF1ZXJ5W2tleV0gPSBbIHZhbHVlIF07XG5cdFx0fVxuXHR9XG5cdHJldHVybiBxdWVyeTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2V0IG9mIFVSTCBxdWVyeSBzZWFyY2ggcGFyYW1ldGVycy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXJsU2VhcmNoUGFyYW1zIHtcblx0LyoqXG5cdCAqIENvbnN0cnVjdHMgYSBuZXcgVXJsU2VhcmNoUGFyYW1zIGZyb20gYSBxdWVyeSBzdHJpbmcsIGFuIG9iamVjdCBvZiBwYXJhbWV0ZXJzIGFuZCB2YWx1ZXMsIG9yIGFub3RoZXJcblx0ICogVXJsU2VhcmNoUGFyYW1zLlxuXHQgKi9cblx0Y29uc3RydWN0b3IoaW5wdXQ/OiBzdHJpbmcgfCBQYXJhbUxpc3QgfCBVcmxTZWFyY2hQYXJhbXMpIHtcblx0XHRsZXQgbGlzdDogUGFyYW1MaXN0O1xuXG5cdFx0aWYgKGlucHV0IGluc3RhbmNlb2YgVXJsU2VhcmNoUGFyYW1zKSB7XG5cdFx0XHQvLyBDb3B5IHRoZSBpbmNvbWluZyBVcmxTZWFyY2hQYXJhbSdzIGludGVybmFsIGxpc3Rcblx0XHRcdGxpc3QgPSA8UGFyYW1MaXN0PiBkdXBsaWNhdGUoaW5wdXQuX2xpc3QpO1xuXHRcdH1cblx0XHRlbHNlIGlmICh0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnKSB7XG5cdFx0XHQvLyBDb3B5IHRoZSBpbmNvbWluZyBvYmplY3QsIGFzc3VtaW5nIGl0cyBwcm9wZXJ0eSB2YWx1ZXMgYXJlIGVpdGhlciBhcnJheXMgb3Igc3RyaW5nc1xuXHRcdFx0bGlzdCA9IHt9O1xuXHRcdFx0Zm9yIChjb25zdCBrZXkgaW4gaW5wdXQpIHtcblx0XHRcdFx0Y29uc3QgdmFsdWUgPSAoPFBhcmFtTGlzdD4gaW5wdXQpW2tleV07XG5cblx0XHRcdFx0aWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG5cdFx0XHRcdFx0bGlzdFtrZXldID0gdmFsdWUubGVuZ3RoID8gdmFsdWUuc2xpY2UoKSA6IFsgJycgXTtcblx0XHRcdFx0fVxuXHRcdFx0XHRlbHNlIGlmICh2YWx1ZSA9PSBudWxsKSB7XG5cdFx0XHRcdFx0bGlzdFtrZXldID0gWyAnJyBdO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdGxpc3Rba2V5XSA9IFsgPHN0cmluZz4gdmFsdWUgXTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRlbHNlIGlmICh0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnKSB7XG5cdFx0XHQvLyBQYXJzZSB0aGUgaW5jb21pbmcgc3RyaW5nIGFzIGEgcXVlcnkgc3RyaW5nXG5cdFx0XHRsaXN0ID0gcGFyc2VRdWVyeVN0cmluZyhpbnB1dCk7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0bGlzdCA9IHt9O1xuXHRcdH1cblxuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnX2xpc3QnLCB7IHZhbHVlOiBsaXN0IH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIE1hcHMgcHJvcGVydHkga2V5cyB0byBhcnJheXMgb2YgdmFsdWVzLiBUaGUgdmFsdWUgZm9yIGFueSBwcm9wZXJ0eSB0aGF0IGhhcyBiZWVuIHNldCB3aWxsIGJlIGFuIGFycmF5IGNvbnRhaW5pbmdcblx0ICogYXQgbGVhc3Qgb25lIGl0ZW0uIFByb3BlcnRpZXMgdGhhdCBoYXZlIGJlZW4gZGVsZXRlZCB3aWxsIGhhdmUgYSB2YWx1ZSBvZiAndW5kZWZpbmVkJy5cblx0ICovXG5cdHByb3RlY3RlZCBfbGlzdDogSGFzaDxzdHJpbmdbXT47XG5cblx0LyoqXG5cdCAqIEFwcGVuZHMgYSBuZXcgdmFsdWUgdG8gdGhlIHNldCBvZiB2YWx1ZXMgZm9yIGEga2V5LlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gYWRkIGEgdmFsdWUgZm9yXG5cdCAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gYWRkXG5cdCAqL1xuXHRhcHBlbmQoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcblx0XHRpZiAoIXRoaXMuaGFzKGtleSkpIHtcblx0XHRcdHRoaXMuc2V0KGtleSwgdmFsdWUpO1xuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdHRoaXMuX2xpc3Rba2V5XS5wdXNoKHZhbHVlKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogRGVsZXRlcyBhbGwgdmFsdWVzIGZvciBhIGtleS5cblx0ICogQHBhcmFtIGtleSBUaGUga2V5IHdob3NlIHZhbHVlcyBhcmUgdG8gYmUgcmVtb3ZlZFxuXHQgKi9cblx0ZGVsZXRlKGtleTogc3RyaW5nKTogdm9pZCB7XG5cdFx0Ly8gU2V0IHRvIHVuZGVmaW5lZCByYXRoZXIgdGhhbiBkZWxldGluZyB0aGUga2V5LCBmb3IgYmV0dGVyIGNvbnNpc3RlbmN5IGFjcm9zcyBicm93c2Vycy5cblx0XHQvLyBJZiBhIGRlbGV0ZWQga2V5IGlzIHJlLWFkZGVkLCBtb3N0IGJyb3dzZXJzIHB1dCBpdCBhdCB0aGUgZW5kIG9mIGl0ZXJhdGlvbiBvcmRlciwgYnV0IElFIG1haW50YWluc1xuXHRcdC8vIGl0cyBvcmlnaW5hbCBwb3NpdGlvbi4gIFRoaXMgYXBwcm9hY2ggbWFpbnRhaW5zIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiBldmVyeXdoZXJlLlxuXHRcdHRoaXMuX2xpc3Rba2V5XSA9IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoZSBmaXJzdCB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYSBrZXkuXG5cdCAqIEBwYXJhbSBrZXkgVGhlIGtleSB0byByZXR1cm4gdGhlIGZpcnN0IHZhbHVlIGZvclxuXHQgKiBAcmV0dXJuIFRoZSBmaXJzdCBzdHJpbmcgdmFsdWUgZm9yIHRoZSBrZXlcblx0ICovXG5cdGdldChrZXk6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0aWYgKCF0aGlzLmhhcyhrZXkpKSB7XG5cdFx0XHRyZXR1cm4gbnVsbDtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuX2xpc3Rba2V5XVswXTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIGFsbCB0aGUgdmFsdWVzIGFzc29jaWF0ZWQgd2l0aCBhIGtleS5cblx0ICogQHBhcmFtIGtleSBUaGUga2V5IHRvIHJldHVybiBhbGwgdmFsdWVzIGZvclxuXHQgKiBAcmV0dXJuIEFuIGFycmF5IG9mIHN0cmluZ3MgY29udGFpbmluZyBhbGwgdmFsdWVzIGZvciB0aGUga2V5XG5cdCAqL1xuXHRnZXRBbGwoa2V5OiBzdHJpbmcpOiBzdHJpbmdbXSB7XG5cdFx0aWYgKCF0aGlzLmhhcyhrZXkpKSB7XG5cdFx0XHRyZXR1cm4gbnVsbDtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuX2xpc3Rba2V5XTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRydWUgaWYgYSBrZXkgaGFzIGJlZW4gc2V0IHRvIGFueSB2YWx1ZSwgZmFsc2Ugb3RoZXJ3aXNlLlxuXHQgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gdGVzdCBmb3IgZXhpc3RlbmNlXG5cdCAqIEByZXR1cm4gQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIGtleSBoYXMgYmVlbiBzZXRcblx0ICovXG5cdGhhcyhrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMuX2xpc3Rba2V5XSk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0dXJucyBhbiBhcnJheSBvZiBhbGwga2V5cyB3aGljaCBoYXZlIGJlZW4gc2V0LlxuXHQgKiBAcmV0dXJuIEFuIGFycmF5IG9mIHN0cmluZ3MgY29udGFpbmluZyBhbGwga2V5cyBzZXQgaW4gdGhlIFVybFNlYXJjaFBhcmFtcyBpbnN0YW5jZVxuXHQgKi9cblx0a2V5cygpOiBzdHJpbmdbXSB7XG5cdFx0Y29uc3Qga2V5czogc3RyaW5nW10gPSBbXTtcblxuXHRcdGZvciAoY29uc3Qga2V5IGluIHRoaXMuX2xpc3QpIHtcblx0XHRcdGlmICh0aGlzLmhhcyhrZXkpKSB7XG5cdFx0XHRcdGtleXMucHVzaChrZXkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiBrZXlzO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNldHMgdGhlIHZhbHVlIGFzc29jaWF0ZWQgd2l0aCBhIGtleS5cblx0ICogQHBhcmFtIGtleSBUaGUga2V5IHRvIHNldCB0aGUgdmFsdWUgb2Zcblx0ICovXG5cdHNldChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuXHRcdHRoaXMuX2xpc3Rba2V5XSA9IFsgdmFsdWUgXTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoaXMgb2JqZWN0J3MgZGF0YSBhcyBhbiBlbmNvZGVkIHF1ZXJ5IHN0cmluZy5cblx0ICogQHJldHVybiBBIHN0cmluZyBpbiBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQgZm9ybWF0IGNvbnRhaW5pbmcgYWxsIG9mIHRoZSBzZXQga2V5cy92YWx1ZXNcblx0ICovXG5cdHRvU3RyaW5nKCk6IHN0cmluZyB7XG5cdFx0Y29uc3QgcXVlcnk6IHN0cmluZ1tdID0gW107XG5cblx0XHRmb3IgKGNvbnN0IGtleSBpbiB0aGlzLl9saXN0KSB7XG5cdFx0XHRpZiAoIXRoaXMuaGFzKGtleSkpIHtcblx0XHRcdFx0Y29udGludWU7XG5cdFx0XHR9XG5cblx0XHRcdGNvbnN0IHZhbHVlcyA9IHRoaXMuX2xpc3Rba2V5XTtcblx0XHRcdGNvbnN0IGVuY29kZWRLZXkgPSBlbmNvZGVVUklDb21wb25lbnQoa2V5KTtcblx0XHRcdGZvciAoY29uc3QgdmFsdWUgb2YgdmFsdWVzKSB7XG5cdFx0XHRcdHF1ZXJ5LnB1c2goZW5jb2RlZEtleSArICh2YWx1ZSA/ICgnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKSA6ICcnKSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHF1ZXJ5LmpvaW4oJyYnKTtcblx0fVxufVxuIl19 |
@@ -9,2 +9,3 @@ (function (factory) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var lang_1 = require('./lang'); | ||
@@ -94,2 +95,2 @@ /** | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbImNyZWF0ZVRpbWVyIiwiZGVib3VuY2UiLCJ0aHJvdHRsZSIsInRocm90dGxlQWZ0ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBQ0EscUJBQTZCLFFBQVEsQ0FBQyxDQUFBO0lBRXRDOzs7Ozs7T0FNRztJQUNILHFCQUE0QixRQUFrQyxFQUFFLEtBQWM7UUFDN0VBLElBQUlBLE9BQU9BLEdBQUdBLFVBQVVBLENBQUNBLFFBQVFBLEVBQUVBLEtBQUtBLENBQUNBLENBQUNBO1FBRTFDQSxNQUFNQSxDQUFDQSxtQkFBWUEsQ0FBQ0E7WUFDbkIsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDaEIsQ0FBQyxDQUFDQSxDQUFDQTtJQUNKQSxDQUFDQTtJQVBlLG1CQUFXLGNBTzFCLENBQUE7SUFFRDs7Ozs7O09BTUc7SUFDSCxrQkFBNkQsUUFBVyxFQUFFLEtBQWE7UUFDdEZDLDZGQUE2RkE7UUFDN0ZBLHVDQUF1Q0E7UUFDdkNBLElBQUlBLEtBQVVBLENBQUNBO1FBRWZBLE1BQU1BLENBQUtBO1lBQ1YsS0FBSyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU3QixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDbkIsSUFBSSxJQUFJLEdBQUcsU0FBUyxDQUFDO1lBRXJCLEtBQUssR0FBRyxVQUFVLENBQUM7Z0JBQ2xCLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QixJQUFJLEdBQUcsT0FBTyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDL0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDQTtJQUNIQSxDQUFDQTtJQWhCZSxnQkFBUSxXQWdCdkIsQ0FBQTtJQUVEOzs7Ozs7T0FNRztJQUNILGtCQUE2RCxRQUFXLEVBQUUsS0FBYTtRQUN0RkMsSUFBSUEsR0FBWUEsQ0FBQ0E7UUFFakJBLE1BQU1BLENBQUtBO1lBQ1YsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDVCxNQUFNLENBQUM7WUFDUixDQUFDO1lBRUQsR0FBRyxHQUFHLElBQUksQ0FBQztZQUVYLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ2hDLFVBQVUsQ0FBQztnQkFDVixHQUFHLEdBQUcsSUFBSSxDQUFDO1lBQ1osQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDQTtJQUNIQSxDQUFDQTtJQWZlLGdCQUFRLFdBZXZCLENBQUE7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsdUJBQWtFLFFBQVcsRUFBRSxLQUFhO1FBQzNGQyxJQUFJQSxHQUFZQSxDQUFDQTtRQUVqQkEsTUFBTUEsQ0FBS0E7WUFDVixFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNULE1BQU0sQ0FBQztZQUNSLENBQUM7WUFFRCxHQUFHLEdBQUcsSUFBSSxDQUFDO1lBRVgsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ25CLElBQUksSUFBSSxHQUFHLFNBQVMsQ0FBQztZQUVyQixVQUFVLENBQUM7Z0JBQ1YsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzlCLElBQUksR0FBRyxPQUFPLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQztZQUM3QixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUNBO0lBQ0hBLENBQUNBO0lBbEJlLHFCQUFhLGdCQWtCNUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhbmRsZSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBjcmVhdGVIYW5kbGUgfSBmcm9tICcuL2xhbmcnO1xuXG4vKipcbiAqIFdyYXBzIGEgc2V0VGltZW91dCBjYWxsIGluIGEgaGFuZGxlLCBhbGxvd2luZyB0aGUgdGltZW91dCB0byBiZSBjbGVhcmVkIGJ5IGNhbGxpbmcgZGVzdHJveS5cbiAqXG4gKiBAcGFyYW0gY2FsbGJhY2sgQ2FsbGJhY2sgdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHRpbWVvdXQgZWxhcHNlc1xuICogQHBhcmFtIGRlbGF5IE51bWJlciBvZiBtaWxsaXNlY29uZHMgdG8gd2FpdCBiZWZvcmUgY2FsbGluZyB0aGUgY2FsbGJhY2tcbiAqIEByZXR1cm4gSGFuZGxlIHdoaWNoIGNhbiBiZSBkZXN0cm95ZWQgdG8gY2xlYXIgdGhlIHRpbWVvdXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVRpbWVyKGNhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQsIGRlbGF5PzogbnVtYmVyKTogSGFuZGxlIHtcblx0bGV0IHRpbWVySWQgPSBzZXRUaW1lb3V0KGNhbGxiYWNrLCBkZWxheSk7XG5cblx0cmV0dXJuIGNyZWF0ZUhhbmRsZShmdW5jdGlvbiAoKSB7XG5cdFx0Y2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuXHRcdHRpbWVySWQgPSBudWxsO1xuXHR9KTtcbn1cblxuLyoqXG4gKiBXcmFwcyBhIGNhbGxiYWNrLCByZXR1cm5pbmcgYSBmdW5jdGlvbiB3aGljaCBmaXJlcyBhZnRlciBubyBmdXJ0aGVyIGNhbGxzIGFyZSByZWNlaXZlZCBvdmVyIGEgc2V0IGludGVydmFsLlxuICpcbiAqIEBwYXJhbSBjYWxsYmFjayBDYWxsYmFjayB0byB3cmFwXG4gKiBAcGFyYW0gZGVsYXkgTnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGFmdGVyIGFueSBpbnZvY2F0aW9ucyBiZWZvcmUgY2FsbGluZyB0aGUgb3JpZ2luYWwgY2FsbGJhY2tcbiAqIEByZXR1cm4gRGVib3VuY2VkIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWJvdW5jZTxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkPihjYWxsYmFjazogVCwgZGVsYXk6IG51bWJlcik6IFQge1xuXHQvLyBub2RlLmQudHMgY2xvYmJlcnMgc2V0VGltZW91dC9jbGVhclRpbWVvdXQgd2l0aCB2ZXJzaW9ucyB0aGF0IHJldHVybi9yZWNlaXZlIE5vZGVKUy5UaW1lcixcblx0Ly8gYnV0IGJyb3dzZXJzIHJldHVybi9yZWNlaXZlIGEgbnVtYmVyXG5cdGxldCB0aW1lcjogYW55O1xuXG5cdHJldHVybiA8VD4gZnVuY3Rpb24gKCkge1xuXHRcdHRpbWVyICYmIGNsZWFyVGltZW91dCh0aW1lcik7XG5cblx0XHRsZXQgY29udGV4dCA9IHRoaXM7XG5cdFx0bGV0IGFyZ3MgPSBhcmd1bWVudHM7XG5cblx0XHR0aW1lciA9IHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXHRcdFx0Y2FsbGJhY2suYXBwbHkoY29udGV4dCwgYXJncyk7XG5cdFx0XHRhcmdzID0gY29udGV4dCA9IHRpbWVyID0gbnVsbDtcblx0XHR9LCBkZWxheSk7XG5cdH07XG59XG5cbi8qKlxuICogV3JhcHMgYSBjYWxsYmFjaywgcmV0dXJuaW5nIGEgZnVuY3Rpb24gd2hpY2ggZmlyZXMgYXQgbW9zdCBvbmNlIHBlciBzZXQgaW50ZXJ2YWwuXG4gKlxuICogQHBhcmFtIGNhbGxiYWNrIENhbGxiYWNrIHRvIHdyYXBcbiAqIEBwYXJhbSBkZWxheSBOdW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRvIHdhaXQgYmVmb3JlIGFsbG93aW5nIHRoZSBvcmlnaW5hbCBjYWxsYmFjayB0byBiZSBjYWxsZWQgYWdhaW5cbiAqIEByZXR1cm4gVGhyb3R0bGVkIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0aHJvdHRsZTxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkPihjYWxsYmFjazogVCwgZGVsYXk6IG51bWJlcik6IFQge1xuXHRsZXQgcmFuOiBib29sZWFuO1xuXG5cdHJldHVybiA8VD4gZnVuY3Rpb24gKCkge1xuXHRcdGlmIChyYW4pIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHRyYW4gPSB0cnVlO1xuXG5cdFx0Y2FsbGJhY2suYXBwbHkodGhpcywgYXJndW1lbnRzKTtcblx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblx0XHRcdHJhbiA9IG51bGw7XG5cdFx0fSwgZGVsYXkpO1xuXHR9O1xufVxuXG4vKipcbiAqIExpa2UgdGhyb3R0bGUsIGJ1dCBjYWxscyB0aGUgY2FsbGJhY2sgYXQgdGhlIGVuZCBvZiBlYWNoIGludGVydmFsIHJhdGhlciB0aGFuIHRoZSBiZWdpbm5pbmcuXG4gKiBVc2VmdWwgZm9yIGUuZy4gcmVzaXplIG9yIHNjcm9sbCBldmVudHMsIHdoZW4gZGVib3VuY2Ugd291bGQgYXBwZWFyIHVucmVzcG9uc2l2ZS5cbiAqXG4gKiBAcGFyYW0gY2FsbGJhY2sgQ2FsbGJhY2sgdG8gd3JhcFxuICogQHBhcmFtIGRlbGF5IE51bWJlciBvZiBtaWxsaXNlY29uZHMgdG8gd2FpdCBiZWZvcmUgY2FsbGluZyB0aGUgb3JpZ2luYWwgY2FsbGJhY2sgYW5kIGFsbG93aW5nIGl0IHRvIGJlIGNhbGxlZCBhZ2FpblxuICogQHJldHVybiBUaHJvdHRsZWQgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRocm90dGxlQWZ0ZXI8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZD4oY2FsbGJhY2s6IFQsIGRlbGF5OiBudW1iZXIpOiBUIHtcblx0bGV0IHJhbjogYm9vbGVhbjtcblxuXHRyZXR1cm4gPFQ+IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAocmFuKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0cmFuID0gdHJ1ZTtcblxuXHRcdGxldCBjb250ZXh0ID0gdGhpcztcblx0XHRsZXQgYXJncyA9IGFyZ3VtZW50cztcblxuXHRcdHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXHRcdFx0Y2FsbGJhY2suYXBwbHkoY29udGV4dCwgYXJncyk7XG5cdFx0XHRhcmdzID0gY29udGV4dCA9IHJhbiA9IG51bGw7XG5cdFx0fSwgZGVsYXkpO1xuXHR9O1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztJQUNBLHFCQUE2QixRQUFRLENBQUMsQ0FBQTtJQUV0Qzs7Ozs7O09BTUc7SUFDSCxxQkFBNEIsUUFBa0MsRUFBRSxLQUFjO1FBQzdFLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFMUMsTUFBTSxDQUFDLG1CQUFZLENBQUM7WUFDbkIsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBUGUsbUJBQVcsY0FPMUIsQ0FBQTtJQUVEOzs7Ozs7T0FNRztJQUNILGtCQUE2RCxRQUFXLEVBQUUsS0FBYTtRQUN0Riw2RkFBNkY7UUFDN0YsdUNBQXVDO1FBQ3ZDLElBQUksS0FBVSxDQUFDO1FBRWYsTUFBTSxDQUFLO1lBQ1YsS0FBSyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU3QixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDbkIsSUFBSSxJQUFJLEdBQUcsU0FBUyxDQUFDO1lBRXJCLEtBQUssR0FBRyxVQUFVLENBQUM7Z0JBQ2xCLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QixJQUFJLEdBQUcsT0FBTyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDL0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDO0lBQ0gsQ0FBQztJQWhCZSxnQkFBUSxXQWdCdkIsQ0FBQTtJQUVEOzs7Ozs7T0FNRztJQUNILGtCQUE2RCxRQUFXLEVBQUUsS0FBYTtRQUN0RixJQUFJLEdBQVksQ0FBQztRQUVqQixNQUFNLENBQUs7WUFDVixFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNULE1BQU0sQ0FBQztZQUNSLENBQUM7WUFFRCxHQUFHLEdBQUcsSUFBSSxDQUFDO1lBRVgsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDaEMsVUFBVSxDQUFDO2dCQUNWLEdBQUcsR0FBRyxJQUFJLENBQUM7WUFDWixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUM7SUFDSCxDQUFDO0lBZmUsZ0JBQVEsV0FldkIsQ0FBQTtJQUVEOzs7Ozs7O09BT0c7SUFDSCx1QkFBa0UsUUFBVyxFQUFFLEtBQWE7UUFDM0YsSUFBSSxHQUFZLENBQUM7UUFFakIsTUFBTSxDQUFLO1lBQ1YsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDVCxNQUFNLENBQUM7WUFDUixDQUFDO1lBRUQsR0FBRyxHQUFHLElBQUksQ0FBQztZQUVYLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztZQUNuQixJQUFJLElBQUksR0FBRyxTQUFTLENBQUM7WUFFckIsVUFBVSxDQUFDO2dCQUNWLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QixJQUFJLEdBQUcsT0FBTyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUM7WUFDN0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDO0lBQ0gsQ0FBQztJQWxCZSxxQkFBYSxnQkFrQjVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYW5kbGUgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlSGFuZGxlIH0gZnJvbSAnLi9sYW5nJztcblxuLyoqXG4gKiBXcmFwcyBhIHNldFRpbWVvdXQgY2FsbCBpbiBhIGhhbmRsZSwgYWxsb3dpbmcgdGhlIHRpbWVvdXQgdG8gYmUgY2xlYXJlZCBieSBjYWxsaW5nIGRlc3Ryb3kuXG4gKlxuICogQHBhcmFtIGNhbGxiYWNrIENhbGxiYWNrIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSB0aW1lb3V0IGVsYXBzZXNcbiAqIEBwYXJhbSBkZWxheSBOdW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRvIHdhaXQgYmVmb3JlIGNhbGxpbmcgdGhlIGNhbGxiYWNrXG4gKiBAcmV0dXJuIEhhbmRsZSB3aGljaCBjYW4gYmUgZGVzdHJveWVkIHRvIGNsZWFyIHRoZSB0aW1lb3V0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVUaW1lcihjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkLCBkZWxheT86IG51bWJlcik6IEhhbmRsZSB7XG5cdGxldCB0aW1lcklkID0gc2V0VGltZW91dChjYWxsYmFjaywgZGVsYXkpO1xuXG5cdHJldHVybiBjcmVhdGVIYW5kbGUoZnVuY3Rpb24gKCkge1xuXHRcdGNsZWFyVGltZW91dCh0aW1lcklkKTtcblx0XHR0aW1lcklkID0gbnVsbDtcblx0fSk7XG59XG5cbi8qKlxuICogV3JhcHMgYSBjYWxsYmFjaywgcmV0dXJuaW5nIGEgZnVuY3Rpb24gd2hpY2ggZmlyZXMgYWZ0ZXIgbm8gZnVydGhlciBjYWxscyBhcmUgcmVjZWl2ZWQgb3ZlciBhIHNldCBpbnRlcnZhbC5cbiAqXG4gKiBAcGFyYW0gY2FsbGJhY2sgQ2FsbGJhY2sgdG8gd3JhcFxuICogQHBhcmFtIGRlbGF5IE51bWJlciBvZiBtaWxsaXNlY29uZHMgdG8gd2FpdCBhZnRlciBhbnkgaW52b2NhdGlvbnMgYmVmb3JlIGNhbGxpbmcgdGhlIG9yaWdpbmFsIGNhbGxiYWNrXG4gKiBAcmV0dXJuIERlYm91bmNlZCBmdW5jdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVib3VuY2U8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZD4oY2FsbGJhY2s6IFQsIGRlbGF5OiBudW1iZXIpOiBUIHtcblx0Ly8gbm9kZS5kLnRzIGNsb2JiZXJzIHNldFRpbWVvdXQvY2xlYXJUaW1lb3V0IHdpdGggdmVyc2lvbnMgdGhhdCByZXR1cm4vcmVjZWl2ZSBOb2RlSlMuVGltZXIsXG5cdC8vIGJ1dCBicm93c2VycyByZXR1cm4vcmVjZWl2ZSBhIG51bWJlclxuXHRsZXQgdGltZXI6IGFueTtcblxuXHRyZXR1cm4gPFQ+IGZ1bmN0aW9uICgpIHtcblx0XHR0aW1lciAmJiBjbGVhclRpbWVvdXQodGltZXIpO1xuXG5cdFx0bGV0IGNvbnRleHQgPSB0aGlzO1xuXHRcdGxldCBhcmdzID0gYXJndW1lbnRzO1xuXG5cdFx0dGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblx0XHRcdGNhbGxiYWNrLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xuXHRcdFx0YXJncyA9IGNvbnRleHQgPSB0aW1lciA9IG51bGw7XG5cdFx0fSwgZGVsYXkpO1xuXHR9O1xufVxuXG4vKipcbiAqIFdyYXBzIGEgY2FsbGJhY2ssIHJldHVybmluZyBhIGZ1bmN0aW9uIHdoaWNoIGZpcmVzIGF0IG1vc3Qgb25jZSBwZXIgc2V0IGludGVydmFsLlxuICpcbiAqIEBwYXJhbSBjYWxsYmFjayBDYWxsYmFjayB0byB3cmFwXG4gKiBAcGFyYW0gZGVsYXkgTnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGJlZm9yZSBhbGxvd2luZyB0aGUgb3JpZ2luYWwgY2FsbGJhY2sgdG8gYmUgY2FsbGVkIGFnYWluXG4gKiBAcmV0dXJuIFRocm90dGxlZCBmdW5jdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gdGhyb3R0bGU8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZD4oY2FsbGJhY2s6IFQsIGRlbGF5OiBudW1iZXIpOiBUIHtcblx0bGV0IHJhbjogYm9vbGVhbjtcblxuXHRyZXR1cm4gPFQ+IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAocmFuKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0cmFuID0gdHJ1ZTtcblxuXHRcdGNhbGxiYWNrLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG5cdFx0c2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0XHRyYW4gPSBudWxsO1xuXHRcdH0sIGRlbGF5KTtcblx0fTtcbn1cblxuLyoqXG4gKiBMaWtlIHRocm90dGxlLCBidXQgY2FsbHMgdGhlIGNhbGxiYWNrIGF0IHRoZSBlbmQgb2YgZWFjaCBpbnRlcnZhbCByYXRoZXIgdGhhbiB0aGUgYmVnaW5uaW5nLlxuICogVXNlZnVsIGZvciBlLmcuIHJlc2l6ZSBvciBzY3JvbGwgZXZlbnRzLCB3aGVuIGRlYm91bmNlIHdvdWxkIGFwcGVhciB1bnJlc3BvbnNpdmUuXG4gKlxuICogQHBhcmFtIGNhbGxiYWNrIENhbGxiYWNrIHRvIHdyYXBcbiAqIEBwYXJhbSBkZWxheSBOdW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRvIHdhaXQgYmVmb3JlIGNhbGxpbmcgdGhlIG9yaWdpbmFsIGNhbGxiYWNrIGFuZCBhbGxvd2luZyBpdCB0byBiZSBjYWxsZWQgYWdhaW5cbiAqIEByZXR1cm4gVGhyb3R0bGVkIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0aHJvdHRsZUFmdGVyPFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IHZvaWQ+KGNhbGxiYWNrOiBULCBkZWxheTogbnVtYmVyKTogVCB7XG5cdGxldCByYW46IGJvb2xlYW47XG5cblx0cmV0dXJuIDxUPiBmdW5jdGlvbiAoKSB7XG5cdFx0aWYgKHJhbikge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdHJhbiA9IHRydWU7XG5cblx0XHRsZXQgY29udGV4dCA9IHRoaXM7XG5cdFx0bGV0IGFyZ3MgPSBhcmd1bWVudHM7XG5cblx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblx0XHRcdGNhbGxiYWNrLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xuXHRcdFx0YXJncyA9IGNvbnRleHQgPSByYW4gPSBudWxsO1xuXHRcdH0sIGRlbGF5KTtcblx0fTtcbn1cbiJdfQ== |
@@ -15,2 +15,3 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { | ||
})(function (require, exports) { | ||
"use strict"; | ||
var decorators_1 = require('./decorators'); | ||
@@ -36,4 +37,4 @@ var global_1 = require('./global'); | ||
if (iterable) { | ||
for (var _i = 0; _i < iterable.length; _i++) { | ||
var _a = iterable[_i], key = _a[0], value = _a[1]; | ||
for (var _i = 0, iterable_1 = iterable; _i < iterable_1.length; _i++) { | ||
var _a = iterable_1[_i], key = _a[0], value = _a[1]; | ||
this.set(key, value); | ||
@@ -78,3 +79,3 @@ } | ||
return WeakMap; | ||
})(); | ||
}()); | ||
Shim.WeakMap = WeakMap; | ||
@@ -98,6 +99,6 @@ })(Shim || (Shim = {})); | ||
return WeakMap; | ||
})(); | ||
}()); | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.default = WeakMap; | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2Vha01hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9XZWFrTWFwLnRzIl0sIm5hbWVzIjpbIlNoaW0iLCJTaGltLmdldFVJRCIsImdlbmVyYXRlTmFtZSIsIlNoaW0uV2Vha01hcCIsIlNoaW0uV2Vha01hcC5jb25zdHJ1Y3RvciIsIlNoaW0uV2Vha01hcC5kZWxldGUiLCJTaGltLldlYWtNYXAuZ2V0IiwiU2hpbS5XZWFrTWFwLmhhcyIsIlNoaW0uV2Vha01hcC5zZXQiLCJXZWFrTWFwIiwiV2Vha01hcC5jb25zdHJ1Y3RvciIsIldlYWtNYXAuZGVsZXRlIiwiV2Vha01hcC5nZXQiLCJXZWFrTWFwLmhhcyIsIldlYWtNYXAuc2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztJQUFBLDJCQUF5QixjQUFjLENBQUMsQ0FBQTtJQUN4Qyx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFOUIsSUFBTyxJQUFJLENBd0VWO0lBeEVELFdBQU8sSUFBSSxFQUFDLENBQUM7UUFDWkEsSUFBTUEsT0FBT0EsR0FBUUEsRUFBRUEsQ0FBQ0E7UUFPeEJBO1lBQ0NDLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLEtBQUtBLENBQUNBLElBQUlBLENBQUNBLE1BQU1BLEVBQUVBLEdBQUdBLFNBQVNBLENBQUNBLENBQUNBO1FBQzlDQSxDQUFDQTtRQUVERCxJQUFJQSxZQUFZQSxHQUFHQSxDQUFDQTtZQUNuQixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztZQUVqRCxNQUFNLENBQUM7Z0JBQ05FLE1BQU1BLENBQUNBLE1BQU1BLEdBQUdBLE1BQU1BLEVBQUVBLEdBQUdBLENBQUNBLE9BQU9BLEVBQUVBLEdBQUdBLElBQUlBLENBQUNBLENBQUNBO1lBQy9DQSxDQUFDQSxDQUFDO1FBQ0gsQ0FBQyxDQUFDRixFQUFFQSxDQUFDQTtRQUVMQTtZQUdDRyxpQkFBWUEsUUFB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aW1wb3J0IHsgaGFzQ2xhc3MgfSBmcm9tICcuL2RlY29yYXRvcnMnO1xuaW1wb3J0IGdsb2JhbCBmcm9tICcuL2dsb2JhbCc7XG5cbm1vZHVsZSBTaGltIHtcblx0Y29uc3QgREVMRVRFRDogYW55ID0ge307XG5cblx0aW50ZXJmYWNlIEVudHJ5PEssIFY+IHtcblx0XHRrZXk6IEs7XG5cdFx0dmFsdWU6IFY7XG5cdH1cblxuXHRmdW5jdGlvbiBnZXRVSUQoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMDAwKTtcblx0fVxuXG5cdGxldCBnZW5lcmF0ZU5hbWUgPSAoZnVuY3Rpb24gKCkge1xuXHRcdGxldCBzdGFydElkID0gTWF0aC5mbG9vcihEYXRlLm5vdygpICUgMTAwMDAwMDAwKTtcblxuXHRcdHJldHVybiBmdW5jdGlvbiBnZW5lcmF0ZU5hbWUoKTogc3RyaW5nIHtcblx0XHRcdHJldHVybiAnX193bScgKyBnZXRVSUQoKSArIChzdGFydElkKysgKyAnX18nKTtcblx0XHR9O1xuXHR9KSgpO1xuXG5cdGV4cG9ydCBjbGFzcyBXZWFrTWFwPEssIFY+IHtcblx0XHRwcml2YXRlIF9uYW1lOiBzdHJpbmc7XG5cblx0XHRjb25zdHJ1Y3RvcihpdGVyYWJsZT86IGFueSkge1xuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdfbmFtZScsIHtcblx0XHRcdFx0dmFsdWU6IGdlbmVyYXRlTmFtZSgpXG5cdFx0XHR9KTtcblx0XHRcdGlmIChpdGVyYWJsZSkge1xuXHRcdFx0XHRmb3IgKGNvbnN0IFsga2V5LCB2YWx1ZSBdIG9mIGl0ZXJhYmxlKSB7XG5cdFx0XHRcdFx0dGhpcy5zZXQoa2V5LCB2YWx1ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRkZWxldGUoa2V5OiBhbnkpOiBib29sZWFuIHtcblx0XHRcdGNvbnN0IGVudHJ5OiBFbnRyeTxLLCBWPiA9IGtleVt0aGlzLl9uYW1lXTtcblx0XHRcdGlmIChlbnRyeSAmJiBlbnRyeS5rZXkgPT09IGtleSAmJiBlbnRyeS52YWx1ZSAhPT0gREVMRVRFRCkge1xuXHRcdFx0XHRlbnRyeS52YWx1ZSA9IERFTEVURUQ7XG5cdFx0XHRcdHJldHVybiB0cnVlO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblxuXHRcdGdldChrZXk6IGFueSk6IFYge1xuXHRcdFx0Y29uc3QgZW50cnk6IEVudHJ5PEssIFY+ID0ga2V5W3RoaXMuX25hbWVdO1xuXHRcdFx0aWYgKGVudHJ5ICYmIGVudHJ5LmtleSA9PT0ga2V5ICYmIGVudHJ5LnZhbHVlICE9PSBERUxFVEVEKSB7XG5cdFx0XHRcdHJldHVybiBlbnRyeS52YWx1ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRoYXMoa2V5OiBhbnkpOiBib29sZWFuIHtcblx0XHRcdGNvbnN0IGVudHJ5OiBFbnRyeTxLLCBWPiA9IGtleVt0aGlzLl9uYW1lXTtcblx0XHRcdHJldHVybiBCb29sZWFuKGVudHJ5ICYmIGVudHJ5LmtleSA9PT0ga2V5ICYmIGVudHJ5LnZhbHVlICE9PSBERUxFVEVEKTtcblx0XHR9XG5cblx0XHRzZXQoa2V5OiBhbnksIHZhbHVlPzogYW55KTogU2hpbS5XZWFrTWFwPEssIFY+IHtcblx0XHRcdGlmICgha2V5IHx8ICh0eXBlb2Yga2V5ICE9PSAnb2JqZWN0JyAmJiB0eXBlb2Yga2V5ICE9PSAnZnVuY3Rpb24nKSkge1xuXHRcdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHZhbHVlIHVzZWQgYXMgd2VhayBtYXAga2V5Jyk7XG5cdFx0XHR9XG5cdFx0XHRsZXQgZW50cnk6IEVudHJ5PEssIFY+ID0ga2V5W3RoaXMuX25hbWVdO1xuXHRcdFx0aWYgKCFlbnRyeSB8fCBlbnRyeS5rZXkgIT09IGtleSkge1xuXHRcdFx0XHRlbnRyeSA9IE9iamVjdC5jcmVhdGUobnVsbCwge1xuXHRcdFx0XHRcdGtleTogeyB2YWx1ZToga2V5IH1cblx0XHRcdFx0fSk7XG5cdFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShrZXksIHRoaXMuX25hbWUsIHtcblx0XHRcdFx0XHR2YWx1ZTogZW50cnlcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0XHRlbnRyeS52YWx1ZSA9IHZhbHVlO1xuXHRcdFx0cmV0dXJuIHRoaXM7XG5cdFx0fVxuXHR9XG59XG5cbkBoYXNDbGFzcygnd2Vha21hcCcsIGdsb2JhbC5XZWFrTWFwLCBTaGltLldlYWtNYXApXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWFrTWFwPEssIFY+IHtcblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblx0Y29uc3RydWN0b3IoaXRlcmFibGU/OiBhbnkpIHt9XG5cblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblx0ZGVsZXRlKGtleTogSyk6IGJvb2xlYW4geyB0aHJvdyBuZXcgRXJyb3IoKTsgfVxuXHQvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuXHRnZXQoa2V5OiBLKTogViB7IHRocm93IG5ldyBFcnJvcigpOyB9XG5cdC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5cdGhhcyhrZXk6IEspOiBib29sZWFuIHsgdGhyb3cgbmV3IEVycm9yKCk7IH1cblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblx0c2V0KGtleTogSywgdmFsdWU/OiBWKTogV2Vha01hcDxLLCBWPiB7IHRocm93IG5ldyBFcnJvcigpOyB9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2Vha01hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9XZWFrTWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztJQUFBLDJCQUF5QixjQUFjLENBQUMsQ0FBQTtJQUN4Qyx1QkFBbUIsVUFBVSxDQUFDLENBQUE7SUFFOUIsSUFBTyxJQUFJLENBd0VWO0lBeEVELFdBQU8sSUFBSSxFQUFDLENBQUM7UUFDWixJQUFNLE9BQU8sR0FBUSxFQUFFLENBQUM7UUFPeEI7WUFDQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUVELElBQUksWUFBWSxHQUFHLENBQUM7WUFDbkIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7WUFFakQsTUFBTSxDQUFDO2dCQUNOLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUMvQyxDQUFDLENBQUM7UUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRUw7WUFHQyxpQkFBWSxRQUFjO2dCQUN6QixNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7b0JBQ3BDLEtBQUssRUFBRSxZQUFZLEVBQUU7aUJBQ3JCLENBQUMsQ0FBQztnQkFDSCxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO29CQUNkLEdBQUcsQ0FBQyxDQUF5QixVQUFRLEVBQVIscUJBQVEsRUFBUixzQkFBUSxFQUFSLElBQVEsQ0FBQzt3QkFBakMsdUJBQW9CLEVBQVosV0FBRyxFQUFFLGFBQUs7d0JBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO3FCQUNyQjtnQkFDRixD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QUFNLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBWjdEO1lBQUMscUJBQVEsQ0FBQyxTQUFTLEVBQUUsZ0JBQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQzttQkFBQTtRQWFsRCxjQUFDO0lBQUQsQ0FBQyxBQVpELElBWUM7SUFaRDs2QkFZQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFzQ2xhc3MgfSBmcm9tICcuL2RlY29yYXRvcnMnO1xuaW1wb3J0IGdsb2JhbCBmcm9tICcuL2dsb2JhbCc7XG5cbm1vZHVsZSBTaGltIHtcblx0Y29uc3QgREVMRVRFRDogYW55ID0ge307XG5cblx0aW50ZXJmYWNlIEVudHJ5PEssIFY+IHtcblx0XHRrZXk6IEs7XG5cdFx0dmFsdWU6IFY7XG5cdH1cblxuXHRmdW5jdGlvbiBnZXRVSUQoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMDAwKTtcblx0fVxuXG5cdGxldCBnZW5lcmF0ZU5hbWUgPSAoZnVuY3Rpb24gKCkge1xuXHRcdGxldCBzdGFydElkID0gTWF0aC5mbG9vcihEYXRlLm5vdygpICUgMTAwMDAwMDAwKTtcblxuXHRcdHJldHVybiBmdW5jdGlvbiBnZW5lcmF0ZU5hbWUoKTogc3RyaW5nIHtcblx0XHRcdHJldHVybiAnX193bScgKyBnZXRVSUQoKSArIChzdGFydElkKysgKyAnX18nKTtcblx0XHR9O1xuXHR9KSgpO1xuXG5cdGV4cG9ydCBjbGFzcyBXZWFrTWFwPEssIFY+IHtcblx0XHRwcml2YXRlIF9uYW1lOiBzdHJpbmc7XG5cblx0XHRjb25zdHJ1Y3RvcihpdGVyYWJsZT86IGFueSkge1xuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICdfbmFtZScsIHtcblx0XHRcdFx0dmFsdWU6IGdlbmVyYXRlTmFtZSgpXG5cdFx0XHR9KTtcblx0XHRcdGlmIChpdGVyYWJsZSkge1xuXHRcdFx0XHRmb3IgKGNvbnN0IFsga2V5LCB2YWx1ZSBdIG9mIGl0ZXJhYmxlKSB7XG5cdFx0XHRcdFx0dGhpcy5zZXQoa2V5LCB2YWx1ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRkZWxldGUoa2V5OiBhbnkpOiBib29sZWFuIHtcblx0XHRcdGNvbnN0IGVudHJ5OiBFbnRyeTxLLCBWPiA9IGtleVt0aGlzLl9uYW1lXTtcblx0XHRcdGlmIChlbnRyeSAmJiBlbnRyeS5rZXkgPT09IGtleSAmJiBlbnRyeS52YWx1ZSAhPT0gREVMRVRFRCkge1xuXHRcdFx0XHRlbnRyeS52YWx1ZSA9IERFTEVURUQ7XG5cdFx0XHRcdHJldHVybiB0cnVlO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblxuXHRcdGdldChrZXk6IGFueSk6IFYge1xuXHRcdFx0Y29uc3QgZW50cnk6IEVudHJ5PEssIFY+ID0ga2V5W3RoaXMuX25hbWVdO1xuXHRcdFx0aWYgKGVudHJ5ICYmIGVudHJ5LmtleSA9PT0ga2V5ICYmIGVudHJ5LnZhbHVlICE9PSBERUxFVEVEKSB7XG5cdFx0XHRcdHJldHVybiBlbnRyeS52YWx1ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRoYXMoa2V5OiBhbnkpOiBib29sZWFuIHtcblx0XHRcdGNvbnN0IGVudHJ5OiBFbnRyeTxLLCBWPiA9IGtleVt0aGlzLl9uYW1lXTtcblx0XHRcdHJldHVybiBCb29sZWFuKGVudHJ5ICYmIGVudHJ5LmtleSA9PT0ga2V5ICYmIGVudHJ5LnZhbHVlICE9PSBERUxFVEVEKTtcblx0XHR9XG5cblx0XHRzZXQoa2V5OiBhbnksIHZhbHVlPzogYW55KTogU2hpbS5XZWFrTWFwPEssIFY+IHtcblx0XHRcdGlmICgha2V5IHx8ICh0eXBlb2Yga2V5ICE9PSAnb2JqZWN0JyAmJiB0eXBlb2Yga2V5ICE9PSAnZnVuY3Rpb24nKSkge1xuXHRcdFx0XHR0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHZhbHVlIHVzZWQgYXMgd2VhayBtYXAga2V5Jyk7XG5cdFx0XHR9XG5cdFx0XHRsZXQgZW50cnk6IEVudHJ5PEssIFY+ID0ga2V5W3RoaXMuX25hbWVdO1xuXHRcdFx0aWYgKCFlbnRyeSB8fCBlbnRyeS5rZXkgIT09IGtleSkge1xuXHRcdFx0XHRlbnRyeSA9IE9iamVjdC5jcmVhdGUobnVsbCwge1xuXHRcdFx0XHRcdGtleTogeyB2YWx1ZToga2V5IH1cblx0XHRcdFx0fSk7XG5cdFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShrZXksIHRoaXMuX25hbWUsIHtcblx0XHRcdFx0XHR2YWx1ZTogZW50cnlcblx0XHRcdFx0fSk7XG5cdFx0XHR9XG5cdFx0XHRlbnRyeS52YWx1ZSA9IHZhbHVlO1xuXHRcdFx0cmV0dXJuIHRoaXM7XG5cdFx0fVxuXHR9XG59XG5cbkBoYXNDbGFzcygnd2Vha21hcCcsIGdsb2JhbC5XZWFrTWFwLCBTaGltLldlYWtNYXApXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWFrTWFwPEssIFY+IHtcblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblx0Y29uc3RydWN0b3IoaXRlcmFibGU/OiBhbnkpIHt9XG5cblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblx0ZGVsZXRlKGtleTogSyk6IGJvb2xlYW4geyB0aHJvdyBuZXcgRXJyb3IoKTsgfVxuXHQvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuXHRnZXQoa2V5OiBLKTogViB7IHRocm93IG5ldyBFcnJvcigpOyB9XG5cdC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5cdGhhcyhrZXk6IEspOiBib29sZWFuIHsgdGhyb3cgbmV3IEVycm9yKCk7IH1cblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblx0c2V0KGtleTogSywgdmFsdWU/OiBWKTogV2Vha01hcDxLLCBWPiB7IHRocm93IG5ldyBFcnJvcigpOyB9XG59XG4iXX0= |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
56
9838
927013
21
6