zater-docx-pdf2
Advanced tools
Comparing version 4.2.166 to 4.2.167
{ | ||
"name": "zater-docx-pdf2", | ||
"version": "4.2.166", | ||
"version": "4.2.167", | ||
"description": "ZAter doc2pdf", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -295,7 +295,6 @@ 'use strict'; | ||
}).then(function (res) { | ||
console.log(res, 'euihaeiuhaeuihaeiuhaeiuhaeuihaeui'); | ||
console.log(dataContract); | ||
res.result.contractUrl = res.Location; | ||
res.result.status = 'Assinado'; | ||
return res.result; | ||
let dataReturn = {}; | ||
dataReturn.contractUrl = res.Location; | ||
dataReturn.status = 'Assinado'; | ||
return dataReturn; | ||
}).then(function (res) { | ||
@@ -328,2 +327,2 @@ return _this4.update(res, dataContract.id); | ||
module.exports = (Docx, DigitalData, Storage, PdfGenerator) => new Contract(Docx, DigitalData, Storage, PdfGenerator); | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb21haW4vQ29udHJhY3QuanMiXSwibmFtZXMiOlsibnVtZXJvUG9yRXh0ZW5zbyIsInJlcXVpcmUiLCJDUEYiLCJDb250cmFjdCIsIkNvbnRyYWN0RGVjb3JhdG9yIiwiY29uc3RydWN0b3IiLCJEb2N4IiwiRGlnaXRhbERhdGEiLCJTM1N0b3JhZ2UiLCJQZGZHZW5lcmF0b3IiLCJTdG9yYWdlIiwic2V0RGlnaXRhbERhdGEiLCJzZXRDb25maWciLCJjb25maWciLCJtYWtlQ1BGIiwiZGF0YSIsImNvdGFjYW8iLCJjb3RhY2FvSnNvbiIsImpzb24iLCJjb2luX2lkIiwiZmluZCIsInJvdyIsIkNvZGlnbyIsIlZhbG9yIiwidHlwZSIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsImNsaWVudFdhbGxldCIsImNsaWVudFdhbGxldEJ5Q29pbiIsImZpbHRlciIsImNvaW4iLCJhZGRyZXNzIiwiY29uc29sZSIsImxvZyIsImFtb3VudE1vbmV5IiwiY2FsY3VsYXRlVmFsdWUiLCJwYXJzZUZsb2F0IiwiYW1vdW50Q3J5cHQiLCJpc05hTiIsImNhbGMiLCJ2YWwiLCJwb3JFeHRlbnNvIiwiZXN0aWxvIiwibW9uZXRhcmlvIiwiZm9ybWF0byIsIm1pbmltdW1GcmFjdGlvbkRpZ2l0cyIsInN0eWxlIiwiY3VycmVuY3kiLCJ0b0xvY2FsZVN0cmluZyIsImNvaW5zIiwiY29udHJhY3RDb2luIiwiY29udHJhY3QiLCJpbnZlc3RtZW50SWQiLCJpZCIsImR1cmF0aW9uIiwicGVuYWx0eVBvcmNlbnQiLCJwZW5hbHR5QWR2IiwiY2xpZW50TmFtZSIsInByb2R1Y3ROYW1lIiwicHJvZHVjdCIsIm1hbmFnZXJOYW1lIiwiY29udHJhY3ROdW1iZXIiLCJjb250cmFjdEVuZCIsImNvbnRyYWN0VGF4ZSIsImNvbnRyYWN0VHJhZGUiLCJjb250cmFjdFBvcmNlbnQiLCJjb250cmFjdFBvcmNlbnRUb3RhbCIsImJhbmtOYW1lIiwiYmFuayIsIm5hbWUiLCJzcGxpdCIsImJhbmtUaXR1bGFyIiwidXNlck5hbWUiLCJiYW5rQWdlbmN5IiwiYWdlbmN5IiwiYmFua0FjY291bnQiLCJhY2NvdW50IiwiYmFua0NvZGUiLCJjb2RlIiwiaW1hZ2UiLCJ2cFNpZ25hdHVyZSIsImNvbWVyY2lhbFNpZ25hdHVyZSIsImZpcnN0UmFuZG9tU2lnbmF0dXJlIiwic2Vjb25kUmFuZG9tU2lnbmF0dXJlIiwiY2xpZW50Q1BGIiwiZm9ybWF0IiwiZGF0ZSIsIkRhdGUiLCJjbGllbnRSZXN1bWUiLCJjbGllbnROYXRpb25hbGl0eSIsImNsaWVudENpdmlsU3RhdGUiLCJjbGllbnRPY2N1cGF0aW9uIiwiY2xpZW50UkciLCJjbGllbnRTdHJlZXQiLCJjbGllbnRDb21wbGVtZW50IiwiY2xpZW50Q0VQIiwiY2xpZW50Q2l0eSIsImNsaWVudFN0YXRlIiwibWFrZUNOUEoiLCJyZXN1bHQiLCJzb2NpYWxSZWFzb24iLCJjbGllbnRDTlBKIiwiY29tcGFueVN0cmVldCIsImNvbXBhbnlDb21wbGVtZW50IiwiY29tcGFueUNFUCIsImNvbXBhbnlDaXR5IiwiY29tcGFueVN0YXRlIiwicGFydG5lckNsaWVudE5hbWUiLCJwYXJ0bmVyQ2l2aWxTdGF0ZSIsInBhcnRuZXJQcm9mZXNzaW9uIiwicGFydG5lclBlcnNvbmFsUmVnaXN0ZXIiLCJwYXJ0bmVyUGVyc29uYWxEb2N1bWVudCIsInBhcnRuZXJBZGRyZXNzIiwicGFydG5lckFkZHJlc3NDb21wbGVtZW50IiwicGFydG5lclBvc3RhbENvZGUiLCJtYWtlIiwidXNlcklkIiwiZGF0YUNvbnRyYWN0IiwiYXdzIiwic2V0VHlwZSIsImdlbmVyYXRvckxhc3QiLCJ1bmRlZmluZWQiLCJFcnJvckRvY3hQZGYiLCJnZW5lcmF0ZSIsIlByb21pc2UiLCJyZXNvbHZlIiwic2V0QnVja2V0IiwiYnVja2V0IiwidGhlbiIsInNldERlc3RpbmF0aW9uRGlyIiwic2V0RmlsZSIsInVwbG9hZCIsIkpTT04iLCJzdHJpbmdpZnkiLCJyZXMiLCJwYXJzZSIsImNvbnRyYWN0VXJsIiwiTG9jYXRpb24iLCJzdGF0dXMiLCJzYXZlIiwiY2F0Y2giLCJlIiwicmVqZWN0IiwidmlldyIsImNsaWVudElkIiwidXBkYXRlIiwiaW5zZXJ0U2lnbmF0dXJlIiwibWFrZURvY3VtZW50IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7OztBQUNBLE1BQU1BLG1CQUFtQkMsUUFBUSxvQkFBUixDQUF6QjtBQUNBLE1BQU1DLE1BQU1ELFFBQVEsS0FBUixDQUFaOztBQUVBLE1BQU1FLFFBQU4sU0FBdUJDLDJCQUF2QixDQUF5QztBQUN4Q0MsYUFBWUMsSUFBWixFQUFrQkMsV0FBbEIsRUFBK0JDLFNBQS9CLEVBQTBDQyxZQUExQyxFQUF3RDtBQUN2RDtBQUNBLE9BQUtDLE9BQUwsR0FBZUYsU0FBZjtBQUNBLE9BQUtGLElBQUwsR0FBWUEsSUFBWjtBQUNBLE9BQUtHLFlBQUwsR0FBb0JBLFlBQXBCO0FBQ0EsT0FBS0UsY0FBTCxDQUFvQkosV0FBcEI7QUFDQTs7QUFFREssV0FBVUMsTUFBVixFQUFrQjtBQUNqQixPQUFLQSxNQUFMLEdBQWNBLE1BQWQ7QUFDQSxPQUFLSCxPQUFMLEdBQWUsS0FBS0EsT0FBTCxDQUFhRyxNQUFiLENBQWY7QUFDQTs7QUFFS0MsUUFBTixDQUFjQyxJQUFkLEVBQW9CO0FBQUE7O0FBRW5CLFNBQU1DLFVBQVUsTUFBTSx5QkFBTSwyQ0FBTixDQUF0Qjs7QUFFRSxPQUFJQyxjQUFjLE1BQU1ELFFBQVFFLElBQVIsRUFBeEI7O0FBR0EsT0FBR0gsS0FBS0ksT0FBUixFQUNBO0FBQ0MsWUFBUUosS0FBS0ksT0FBYjtBQUNDLFVBQUssc0JBQUw7QUFDQ0Ysb0JBQWNBLFlBQVlELE9BQVosQ0FBb0JJLElBQXBCLENBQXlCO0FBQUEsY0FBT0MsSUFBSUMsTUFBSixLQUFlLFNBQXRCO0FBQUEsT0FBekIsRUFB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SW5DLE1BQVg7QUFDQSxLQWZGLEVBZ0JFNkIsSUFoQkYsQ0FnQk87QUFBQSxZQUFPLE9BQUtpQixNQUFMLENBQVlYLEdBQVosRUFBaUJqQixhQUFhaEUsRUFBOUIsQ0FBUDtBQUFBLEtBaEJQLEVBaUJFdUYsS0FqQkYsQ0FpQlEsYUFBSztBQUNYLFdBQU1DLENBQU47QUFDQSxLQW5CRixDQUREO0FBc0JBLElBcENELENBb0NFLE9BQU9BLENBQVAsRUFBVTtBQUNYLFdBQU9qQixRQUFRa0IsTUFBUixDQUFlRCxDQUFmLENBQVA7QUFDQTtBQXZDa0Q7QUF3Q25EOztBQUVLTSxhQUFOLENBQW1COUIsWUFBbkIsRUFBaUM7QUFBQTs7QUFBQTtBQUNoQyxPQUFJQSxhQUFhaEIsVUFBYixLQUE0Qm9CLFNBQWhDLEVBQTJDO0FBQzFDLFdBQU8sTUFBTSxPQUFLdkIsUUFBTCxDQUFjbUIsWUFBZCxDQUFiO0FBQ0E7QUFDQSxJQUhELE1BR087QUFDTixXQUFPLE1BQU0sT0FBS3pHLE9BQUwsQ0FBYXlHLFlBQWIsQ0FBYjtBQUNBO0FBQ0E7QUFQK0I7QUFRaEM7QUF2U3VDOztBQTBTekMrQixPQUFPQyxPQUFQLEdBQWlCLENBQUNqSixJQUFELEVBQU9DLFdBQVAsRUFBb0JHLE9BQXBCLEVBQTZCRCxZQUE3QixLQUNoQixJQUFJTixRQUFKLENBQWFHLElBQWIsRUFBbUJDLFdBQW5CLEVBQWdDRyxPQUFoQyxFQUF5Q0QsWUFBekMsQ0FERCIsImZpbGUiOiJDb250cmFjdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFcnJvckRvY3hQZGYgZnJvbSAnLi4vbGliL0Vycm9yRG9jeFBkZic7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBkYXRlRm9ybWF0IGZyb20gJy4uL2xpYi9kYXRlJztcbmltcG9ydCBiYXNlNjRJTUdCdWZmZXIgZnJvbSAnLi4vbGliL2Jhc2U2NElNR3RvQnVmZmVyJztcbmltcG9ydCBDb250cmFjdERlY29yYXRvciBmcm9tICcuLi9kZWNvcmF0b3JzL0NvbnRyYWN0RGVjb3JhdG9yJztcbmltcG9ydCBmZXRjaCBmcm9tICdub2RlLWZldGNoJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmNvbnN0IG51bWVyb1BvckV4dGVuc28gPSByZXF1aXJlKCdudW1lcm8tcG9yLWV4dGVuc28nKTtcbmNvbnN0IENQRiA9IHJlcXVpcmUoJ2NwZicpO1xuXG5jbGFzcyBDb250cmFjdCBleHRlbmRzIENvbnRyYWN0RGVjb3JhdG9yIHtcblx0Y29uc3RydWN0b3IoRG9jeCwgRGlnaXRhbERhdGEsIFMzU3RvcmFnZSwgUGRmR2VuZXJhdG9yKSB7XG5cdFx0c3VwZXIoKTtcblx0XHR0aGlzLlN0b3JhZ2UgPSBTM1N0b3JhZ2U7XG5cdFx0dGhpcy5Eb2N4ID0gRG9jeDtcblx0XHR0aGlzLlBkZkdlbmVyYXRvciA9IFBkZkdlbmVyYXRvcjtcblx0XHR0aGlzLnNldERpZ2l0YWxEYXRhKERpZ2l0YWxEYXRhKTtcblx0fVxuXG5cdHNldENvbmZpZyhjb25maWcpIHtcblx0XHR0aGlzLmNvbmZpZyA9IGNvbmZpZztcblx0XHR0aGlzLlN0b3JhZ2UgPSB0aGlzLlN0b3JhZ2UoY29uZmlnKTtcblx0fVxuXG5cdGFzeW5jIG1ha2VDUEYoZGF0YSkge1xuXHRcdFxuXHRcdGNvbnN0IGNvdGFjYW8gPSBhd2FpdCBmZXRjaCgnaHR0cDovL2ljb2lub21pYS5jb20uYnIvYXBpL0NvdGFjYW9DcnlwdG8nKTtcbiAgICBcbiAgICBsZXQgY290YWNhb0pzb24gPSBhd2FpdCBjb3RhY2FvLmpzb24oKTsgICAgXG5cblxuICAgIGlmKGRhdGEuY29pbl9pZClcbiAgICB7XG5cdCAgICBzd2l0Y2ggKGRhdGEuY29pbl9pZCkge1xuXHQgICAgXHRjYXNlIFwiLUxUSXNJX0k1QndTT2hGcEdzVUNcIjpcblx0ICAgIFx0XHRjb3RhY2FvSnNvbiA9IGNvdGFjYW9Kc29uLmNvdGFjYW8uZmluZChyb3cgPT4gcm93LkNvZGlnbyA9PT0gJ0xFQVhCUkwnKS5WYWxvcjtcblx0XHRcdFx0XHRkYXRhLnR5cGUgPSArZGF0YS50eXBlICsgMyA7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdCAgICBcdGNhc2UgXCItTDhseHZOMk1kMkJ0aExGak1ZcFwiOlxuXHQgICAgXHRcdGNvdGFjYW9Kc29uID0gY290YWNhb0pzb24uY290YWNhby5maW5kKHJvdyA9PiByb3cuQ29kaWdvID09PSAnQlRDQlJMJykuVmFsb3I7XG5cdCAgICBcdFx0YnJlYWs7XG5cdCAgICB9XG5cdCAgfVxuXG5cdCAgaWYoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGRhdGEuY2xpZW50V2FsbGV0KSA9PT0gJ1tvYmplY3QgQXJyYXldJylcblx0ICB7XG5cdCAgXHRsZXQgY2xpZW50V2FsbGV0QnlDb2luID0gZGF0YS5jbGllbnRXYWxsZXQuZmlsdGVyKGZ1bmN0aW9uKHJvdyl7XG5cdCAgICBcdGlmKHJvdy5jb2luID09IGRhdGEuY29pbl9pZClcblx0ICAgIFx0XHRyZXR1cm4gcm93XG5cdCAgICB9KVxuXHQgIFx0ZGF0YS5jbGllbnRXYWxsZXQgPSBjbGllbnRXYWxsZXRCeUNvaW5bMF0uZGF0YS5hZGRyZXNzXHRcdFxuXHQgIH1lbHNlIHtcblx0ICBcdGNvbnNvbGUubG9nKCdDV0FMTEVUIE7Dg08gw4kgVU0gQVJSQVknKVxuXHQgIH1cblxuXHQgIGlmKCFkYXRhLmFtb3VudE1vbmV5KVxuXHQgIHtcblx0ICBcdGNvbnN0IGNhbGN1bGF0ZVZhbHVlID0gKCkgPT4ge1xuXHRcdFx0XHRpZiAoXG5cdFx0XHRcdFx0dHlwZW9mIHBhcnNlRmxvYXQoZGF0YS5hbW91bnRDcnlwdCkgIT09ICdudW1iZXInIHx8XG5cdFx0XHRcdFx0aXNOYU4ocGFyc2VGbG9hdChkYXRhLmFtb3VudENyeXB0KSlcblx0XHRcdFx0KVxuXHRcdFx0XHRcdHRocm93IFwiSXQncyBub3QgYSBmbG9hdCBhbW91bnQgT2JqZWN0IVwiO1xuXG5cdFx0XHRcdGlmIChcblx0XHRcdFx0XHR0eXBlb2YgcGFyc2VGbG9hdChjb3RhY2FvSnNvbikgIT09ICdudW1iZXInIHx8XG5cdFx0XHRcdFx0aXNOYU4ocGFyc2VGbG9hdChjb3RhY2FvSnNvbikpXG5cdFx0XHRcdClcblx0XHRcdFx0XHR0aHJvdyBcIkl0J3Mgbm90IGEgZmxvYXQgbW9uZXkgT2JqZWN0XCI7XG5cblx0XHRcdFx0Y29uc3QgY2FsYyA9IHBhcnNlRmxvYXQoZGF0YS5hbW91bnRDcnlwdCkgKiBwYXJzZUZsb2F0KGNvdGFjYW9Kc29uKTtcblxuXHRcdFx0XHRyZXR1cm4gcGFyc2VGbG9hdChjYWxjKTtcblx0XHRcdH07XG5cblx0XHRcdGNvbnN0IHZhbCA9IG51bWVyb1BvckV4dGVuc28ucG9yRXh0ZW5zbyhcblx0XHRcdFx0Y2FsY3VsYXRlVmFsdWUoKSxcblx0XHRcdFx0bnVtZXJvUG9yRXh0ZW5zby5lc3RpbG8ubW9uZXRhcmlvXG5cdFx0XHQpO1xuXHRcdFx0Y29uc3QgZm9ybWF0byA9IHtcblx0XHRcdFx0bWluaW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuXHRcdFx0XHRzdHlsZTogJ2N1cnJlbmN5Jyxcblx0XHRcdFx0Y3VycmVuY3k6ICdCUkwnXG5cdFx0XHR9O1xuXHRcdFx0ZGF0YS5hbW91bnRNb25leSA9IGAke2NhbGN1bGF0ZVZhbHVlKCkudG9Mb2NhbGVTdHJpbmcoJ3B0LUJSJywgZm9ybWF0byl9ICgke3ZhbH0pYDtcblx0XHRcdGNvbnNvbGUubG9nKCduw6NvIHZlaW8gbyBhbW91bnQgbW9uZXknKVxuXHQgIH1cblx0XHRcblx0XHRpZihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZGF0YS5jb2lucykgPT09ICdbb2JqZWN0IEFycmF5XScpXG5cdCAge1xuXHQgIFx0ZGF0YS5jb250cmFjdENvaW4gPSBkYXRhLmNvaW5zWzBdO1xuXHQgIH1lbHNlIHtcblx0ICBcdGNvbnNvbGUubG9nKCdDT0lOIE7Dg08gw4kgVU0gQVJSQVknKTtcblx0ICB9XG5cblx0XHRjb25zdCBjb250cmFjdCA9IHtcblx0XHRcdGNvbnRyYWN0Q29pbjogZGF0YS5jb250cmFjdENvaW4sXG5cdFx0XHRpbnZlc3RtZW50SWQ6IGRhdGEuaWQsXG5cdFx0XHR0eXBlOiBkYXRhLnR5cGUsXG5cdFx0XHRkdXJhdGlvbjogZGF0YS5kdXJhdGlvbixcblx0XHRcdHBlbmFsdHlQb3JjZW50OiBkYXRhLnBlbmFsdHlQb3JjZW50IHx8IDAsXG5cdFx0XHRwZW5hbHR5QWR2OiBkYXRhLnBlbmFsdHlBZHYgfHwgMCxcblx0XHRcdGNsaWVudE5hbWU6IGRhdGEuY2xpZW50TmFtZSB8fCAnRGFuaWVsIFNpbHZhIE1pcmFuZGEnLFxuXHRcdFx0cHJvZHVjdE5hbWU6IGRhdGEucHJvZHVjdCB8fCAnUHJvZHV0byBkZSBUZXN0ZXMnLFxuXHRcdFx0bWFuYWdlck5hbWU6IGRhdGEubWFuYWdlck5hbWUgfHwgJ0RhbmllbCBTaWx2YSBNaXJhbmRhJyxcblx0XHRcdGNvbnRyYWN0TnVtYmVyOiBkYXRhLmNvbnRyYWN0TnVtYmVyIHx8ICdFeGVtcGxvJyxcblx0XHRcdGNvbnRyYWN0RW5kOiBkYXRhLmNvbnRyYWN0RW5kIHx8ICcwMC8wMC8wMDAwJyxcblx0XHRcdGNvbnRyYWN0VGF4ZTogZGF0YS5jb250cmFjdFRheGUgfHwgMCxcblx0XHRcdGNvbnRyYWN0VHJhZGU6IGRhdGEuY29udHJhY3RUcmFkZSB8fCAwLFxuXHRcdFx0YW1vdW50Q3J5cHQ6IGRhdGEuYW1vdW50Q3J5cHQgfHwgMCxcblx0XHRcdGNvbnRyYWN0UG9yY2VudDogZGF0YS5jb250cmFjdFBvcmNlbnQgfHwgMCxcblx0XHRcdGNvbnRyYWN0UG9yY2VudFRvdGFsOiBkYXRhLmNvbnRyYWN0UG9yY2VudFRvdGFsIHx8IDAsXG5cdFx0XHRiYW5rTmFtZTogZGF0YS5iYW5rLm5hbWUuc3BsaXQoJyMnKVsxXSB8fCAnQlRDIEJhbmNvJyxcblx0XHRcdGJhbmtUaXR1bGFyOiBkYXRhLmJhbmsudXNlck5hbWUgfHwgJ0JUQyBCYW5jbycsXG5cdFx0XHRiYW5rQWdlbmN5OiBkYXRhLmJhbmsuYWdlbmN5IHx8ICcwMDAwJyxcblx0XHRcdGJhbmtBY2NvdW50OiBkYXRhLmJhbmsuYWNjb3VudCB8fCAnMDAwMC0wMCcsXG5cdFx0XHRiYW5rQ29kZTogZGF0YS5iYW5rLmNvZGUgfHwgJzAwMDAtMDAnLFxuXHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG5cdFx0XHRpbWFnZTogYmFzZTY0SU1HQnVmZmVyKGRhdGEuaW1hZ2UpLFxuXHRcdFx0dnBTaWduYXR1cmU6XG5cdFx0XHRcdCdkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTcnLFxuXHRcdFx0Y29tZXJjaWFsU2lnbmF0dXJlOlxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3Jyxcblx0XHRcdGZpcnN0UmFuZG9tU2lnbmF0dXJlOlxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3Jyxcblx0XHRcdHNlY29uZFJhbmRvbVNpZ25hdHVyZTpcblx0XHRcdFx0J2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBNycsXG5cdFx0XHRhbW91bnRNb25leTogZGF0YS5hbW91bnRNb25leSxcblx0XHRcdC4uLmRhdGVGb3JtYXQoKSxcblx0XHRcdGNsaWVudENQRjogYCR7ZGF0YS5jbGllbnRDUEYgPyBDUEYuZm9ybWF0KGRhdGEuY2xpZW50Q1BGKSA6ICcnfWAsXG5cdFx0XHRkYXRlOiBtb21lbnQobmV3IERhdGUoKSkuZm9ybWF0KCdERC9NTS9ZWVlZJyksXG5cdFx0XHRjbGllbnRXYWxsZXQ6IGRhdGEuY2xpZW50V2FsbGV0IHx8ICcxQ2ZVWVVWc2MxZ2I5Y2FDRFFqd1R3UThqRFkzQjFaUlUzJyxcblx0XHRcdGNsaWVudFJlc3VtZTpcblx0XHRcdFx0YCR7ZGF0YS5jbGllbnROYW1lfSwgbmF0dXJhbCBkZSAke2RhdGEuY2xpZW50TmF0aW9uYWxpdHl9LCAke1xuXHRcdFx0XHRcdGRhdGEuY2xpZW50Q2l2aWxTdGF0ZVxuXHRcdFx0XHR9LFxuICAgICAgJHtkYXRhLmNsaWVudE9jY3VwYXRpb259LFxuICAgICAgcG9ydGFkb3IgZG8gUkcgbsK6ICR7ZGF0YS5jbGllbnRSR30sIGluc2NyaXRvIG5vIENQRiBzb2IgbyBuwrogJHtcblx0XHRcdFx0XHRkYXRhLmNsaWVudENQRiA/IENQRi5mb3JtYXQoZGF0YS5jbGllbnRDUEYpIDogJydcblx0XHRcdFx0fSwgcmVzaWRlbnRlIGUgXG4gICAgICBkb21pY2lsaWFkbyBhXG4gICAgICAke2RhdGEuY2xpZW50U3RyZWV0fVxuICAgICAgJHtkYXRhLmNsaWVudENvbXBsZW1lbnQgfHwgJyd9LCBDRVAgJHtkYXRhLmNsaWVudENFUH0sICR7XG5cdFx0XHRcdFx0ZGF0YS5jbGllbnRDaXR5XG5cdFx0XHRcdH0gJHtkYXRhLmNsaWVudFN0YXRlfWAgfHwgJyAnXG5cdFx0fTtcblxuXHRcdHJldHVybiBjb250cmFjdDtcblx0fVxuXG5cdGFzeW5jIG1ha2VDTlBKKGRhdGEpIHtcblx0ICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMubWFrZUNQRihkYXRhKTtcblx0ICAgIHJlc3VsdC5jbGllbnROYW1lID0gZGF0YS5zb2NpYWxSZWFzb25cblx0XHRjb25zdCBjb250cmFjdCA9IHtcblx0XHRcdC4uLnJlc3VsdCxcblx0XHRcdGNsaWVudFJlc3VtZTogYCR7XG5cdFx0XHRcdGRhdGEuc29jaWFsUmVhc29uXG5cdFx0XHR9LCBwZXNzb2EganVyw61kaWNhIGRlIGRpcmVpdG8gcHJpdmFkbywgaW5zY3JpdGEgbm8gQ05QSiBuwrogJHtcblx0XHRcdFx0ZGF0YS5jbGllbnRDTlBKXG5cdFx0XHR9LCBjb20gc2VkZSBuYSAke2RhdGEuY29tcGFueVN0cmVldH0ke1xuXHRcdFx0XHRkYXRhLmNvbXBhbnlDb21wbGVtZW50ID8gJyAnICsgZGF0YS5jb21wYW55Q29tcGxlbWVudCA6ICcnXG5cdFx0XHR9LCBDRVAgJHtkYXRhLmNvbXBhbnlDRVB9LCAke2RhdGEuY29tcGFueUNpdHl9LCAke1xuXHRcdFx0XHRkYXRhLmNvbXBhbnlTdGF0ZVxuXHRcdFx0fSwgcmVwcmVzZW50YWRvIHBvciAke2RhdGEucGFydG5lckNsaWVudE5hbWV9LCAke2RhdGEucGFydG5lckNpdmlsU3RhdGV9JHtcblx0XHRcdFx0ZGF0YS5wYXJ0bmVyUHJvZmVzc2lvbiAhPSAnJyA/ICcsICcgKyBkYXRhLnBhcnRuZXJQcm9mZXNzaW9uIDogJydcblx0XHRcdH0sIHBvcnRhZG9yIGRvIFJHIG7CuiAke1xuXHRcdFx0XHRkYXRhLnBhcnRuZXJQZXJzb25hbFJlZ2lzdGVyXG5cdFx0XHR9LCBpbnNjcml0byBubyBDUEYgc29iIG8gbsK6ICR7Q1BGLmZvcm1hdChcblx0XHRcdFx0ZGF0YS5wYXJ0bmVyUGVyc29uYWxEb2N1bWVudFxuXHRcdFx0KX0sIHJlc2lkZW50ZSBlIGRvbWljaWxpYWRvIGEgJHtkYXRhLnBhcnRuZXJBZGRyZXNzfSAke1xuXHRcdFx0XHRkYXRhLnBhcnRuZXJBZGRyZXNzQ29tcGxlbWVudCA/ICcgJyArIGRhdGEucGFydG5lckFkZHJlc3NDb21wbGVtZW50IDogJydcblx0XHRcdH0sIENFUCAke2RhdGEucGFydG5lclBvc3RhbENvZGV9YFxuXHRcdH07XG5cdFx0cmV0dXJuIGNvbnRyYWN0O1xuXHR9XG5cblx0YXN5bmMgbWFrZSh1c2VySWQsIGRhdGFDb250cmFjdCwgY29uZmlnKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGF3YWl0IHRoaXMuc2V0Q29uZmlnKGNvbmZpZy5hd3MpO1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRUeXBlKGNvbmZpZy5jb250cmFjdCk7XG5cdFx0XHRkYXRhQ29udHJhY3QuY29udHJhY3ROdW1iZXIgPSBhd2FpdCB0aGlzLmdlbmVyYXRvckxhc3QoKTtcblx0XHRcdGlmICh0aGlzLmNvbmZpZyA9PT0gdW5kZWZpbmVkKVxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3JEb2N4UGRmKCdDb25maWd1cmHDp8OjbyBuw6NvIGluaWNpYWxpemFkYScpO1xuXHRcdFx0bGV0IGRhdGE7XG5cdFx0XHQvLyBsZXQgZmlsZTtcblxuXHRcdFx0aWYgKGRhdGFDb250cmFjdC5jbGllbnRDTlBKICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0ZGF0YSA9IGF3YWl0IHRoaXMubWFrZUNOUEooZGF0YUNvbnRyYWN0KTtcblx0XHRcdFx0Ly8gZmlsZSA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLy4uLy4uL2Fzc2V0cy9kb2NFeC5kb2N4Jyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRkYXRhID0gYXdhaXQgdGhpcy5tYWtlQ1BGKGRhdGFDb250cmFjdCk7XG5cdFx0XHRcdC8vIGZpbGUgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8uLi8uLi9hc3NldHMvZG9jRXguZG9jeCcpO1xuXHRcdFx0fVxuXG5cdFx0XHRhd2FpdCB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhLCB1c2VySWQsIGZhbHNlKTtcblx0XHRcdHJldHVybiAoXG5cdFx0XHRcdFByb21pc2UucmVzb2x2ZSh0aGlzLlN0b3JhZ2Uuc2V0QnVja2V0KGNvbmZpZy5idWNrZXQpKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXREZXN0aW5hdGlvbkRpcignY29udHJhY3RzJykpXG5cdFx0XHRcdFx0Ly8gLnRoZW4oKCkgPT4gdGhpcy5Eb2N4Lm1ha2VDb250cmFjdChmaWxlLCBkYXRhKSlcblx0XHRcdFx0XHQvLyAudGhlbigoKSA9PiB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhKSlcblx0XHRcdFx0XHQvLyAudGhlbihyZXMgPT4gQnVmZmVyLmZyb20ocmVzLCAnYmFzZTY0JykpXG5cdFx0XHRcdFx0Ly8gLnRoZW4ocmVzID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlQnVmZmVyKHsgZGF0YTogcmVzLCB0eXBlOiAncGRmJyB9KSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RmlsZShgLi8ke3VzZXJJZH0ucGRmYCkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnVwbG9hZCgpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnN0cmluZ2lmeShyZXMpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnBhcnNlKHJlcykpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+XG5cdFx0XHRcdFx0XHRQcm9taXNlLnJlc29sdmUoZGF0YSkudGhlbihyZXN1bHQgPT4gKHtcblx0XHRcdFx0XHRcdFx0Li4ucmVzdWx0LFxuXHRcdFx0XHRcdFx0XHRjb250cmFjdFVybDogcmVzLkxvY2F0aW9uLFxuXHRcdFx0XHRcdFx0XHRzdGF0dXM6ICdBdGl2bydcblx0XHRcdFx0XHRcdH0pKVxuXHRcdFx0XHRcdClcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gdGhpcy5zYXZlKHVzZXJJZCwgcmVzKSlcblx0XHRcdFx0XHQuY2F0Y2goZSA9PiB7XG5cdFx0XHRcdFx0XHR0aHJvdyBlO1xuXHRcdFx0XHRcdH0pXG5cdFx0XHQpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlKTtcblx0XHR9XG5cdH1cblxuXHRhc3luYyB2aWV3KGRhdGFDb250cmFjdCwgY29uZmlnKSB7XG5cdFx0Ly9jb25zb2xlLmxvZyhkYXRhQ29udHJhY3QpXG5cblx0XHR0cnkge1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRDb25maWcoY29uZmlnLmF3cyk7XG5cdFx0XHRhd2FpdCB0aGlzLnNldFR5cGUoY29uZmlnLmNvbnRyYWN0KTtcblx0XHRcdGlmICh0aGlzLmNvbmZpZyA9PT0gdW5kZWZpbmVkKVxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3JEb2N4UGRmKCdDb25maWd1cmHDp8OjbyBuw6NvIGluaWNpYWxpemFkYScpO1xuXG5cdFx0XHRjb25zdCBkYXRhID0gZGF0YUNvbnRyYWN0O1xuXG5cdFx0XHRhd2FpdCB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhLCBkYXRhLmNsaWVudElkLCBmYWxzZSk7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuU3RvcmFnZS5zZXRCdWNrZXQoY29uZmlnLmJ1Y2tldCkpXG5cdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXREZXN0aW5hdGlvbkRpcignY29udHJhY3RzJykpXG5cdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlKGAuLyR7ZGF0YS5jbGllbnRJZH0ucGRmYCkpXG5cdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS51cGxvYWQoKSlcblx0XHRcdFx0LnRoZW4ocmVzID0+XG5cdFx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKGRhdGEpLnRoZW4ocmVzdWx0ID0+ICh7XG5cdFx0XHRcdFx0XHQuLi5yZXN1bHQsXG5cdFx0XHRcdFx0XHRjb250cmFjdFVybDogcmVzLkxvY2F0aW9uLFxuXHRcdFx0XHRcdFx0c3RhdHVzOiAnQXRpdm8nXG5cdFx0XHRcdFx0fSkpXG5cdFx0XHRcdClcblx0XHRcdFx0LnRoZW4ocmVzID0+IHRoaXMudXBkYXRlKHJlcykpXG5cdFx0XHRcdC5jYXRjaChlID0+IHtcblx0XHRcdFx0XHR0aHJvdyBlO1xuXHRcdFx0XHR9KTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG5cdFx0fVxuXHR9XG5cblx0YXN5bmMgaW5zZXJ0U2lnbmF0dXJlKHVzZXJJZCwgZGF0YUNvbnRyYWN0LCBjb25maWcpIHtcblx0XHR0cnkge1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRDb25maWcoY29uZmlnLmF3cyk7XG5cdFx0XHRhd2FpdCB0aGlzLnNldFR5cGUoY29uZmlnLmNvbnRyYWN0KTtcblx0XHRcdGlmICh0aGlzLmNvbmZpZyA9PT0gdW5kZWZpbmVkKVxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3JEb2N4UGRmKCdDb25maWd1cmHDp8OjbyBuw6NvIGluaWNpYWxpemFkYScpO1xuXHRcdFx0XG5cdFx0XHRjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5tYWtlRG9jdW1lbnQoZGF0YUNvbnRyYWN0LmRhdGEpO1xuXG5cdFx0XHQvLyBkYXRhLmltYWdlID0gZGF0YUNvbnRyYWN0LmRhdGEuaW1hZ2U7XG5cblx0XHRcdC8vIGNvbnNvbGUubG9nKCdBUVVJIFRFTSBRVUUgVEVSIFRPRE9TIE9TIERBRE9TIERPIERPQ1VNRU5UTyBDRVJUSU5IT09PT09PTycpXG5cdFx0XHQvLyBjb25zb2xlLmxvZyhkYXRhKVxuXG5cdFx0XHRhd2FpdCB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhLCB1c2VySWQsIHRydWUpO1xuXHRcdFx0cmV0dXJuIChcblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRoaXMuU3RvcmFnZS5zZXRCdWNrZXQoY29uZmlnLmJ1Y2tldCkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldERlc3RpbmF0aW9uRGlyKCdjb250cmFjdHMnKSlcblx0XHRcdFx0XHQvLy50aGVuKCgpID0+IHRoaXMuRG9jeC5tYWtlQ29udHJhY3QoZmlsZSwgZGF0YUNvbnRyYWN0LmRhdGEpKVxuXHRcdFx0XHRcdC8vLnRoZW4ocmVzID0+IEJ1ZmZlci5mcm9tKHJlcywgJ2Jhc2U2NCcpKVxuXHRcdFx0XHRcdC8vLnRoZW4ocmVzID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlQnVmZmVyKHsgZGF0YTogcmVzLCB0eXBlOiAnZG9jeCcgfSkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldEZpbGUoJy4vJyArIHVzZXJJZCArICcucGRmJykpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnVwbG9hZCgpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnN0cmluZ2lmeShyZXMpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnBhcnNlKHJlcykpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKHJlcywnZXVpaGFlaXVoYWV1aWhhZWl1aGFlaXVoYWV1aWhhZXVpJylcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKGRhdGFDb250cmFjdClcblx0XHRcdFx0XHRcdHJlcy5yZXN1bHQuY29udHJhY3RVcmwgPSByZXMuTG9jYXRpb247XG5cdFx0XHRcdFx0XHRyZXMucmVzdWx0LnN0YXR1cyA9ICdBc3NpbmFkbyc7XG5cdFx0XHRcdFx0XHRyZXR1cm4gcmVzLnJlc3VsdDtcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiB0aGlzLnVwZGF0ZShyZXMsIGRhdGFDb250cmFjdC5pZCkpXG5cdFx0XHRcdFx0LmNhdGNoKGUgPT4ge1xuXHRcdFx0XHRcdFx0dGhyb3cgZTtcblx0XHRcdFx0XHR9KVxuXHRcdFx0KTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG5cdFx0fVxuXHR9XG5cblx0YXN5bmMgbWFrZURvY3VtZW50KGRhdGFDb250cmFjdCkge1xuXHRcdGlmIChkYXRhQ29udHJhY3QuY2xpZW50Q05QSiAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRyZXR1cm4gYXdhaXQgdGhpcy5tYWtlQ05QSihkYXRhQ29udHJhY3QpO1xuXHRcdFx0Ly9maWxlID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vLi4vLi4vYXNzZXRzL2RvY0V4LmRvY3gnKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIGF3YWl0IHRoaXMubWFrZUNQRihkYXRhQ29udHJhY3QpO1xuXHRcdFx0Ly9maWxlID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vLi4vLi4vYXNzZXRzL2RvY0V4LmRvY3gnKTtcblx0XHR9XG5cdH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSAoRG9jeCwgRGlnaXRhbERhdGEsIFN0b3JhZ2UsIFBkZkdlbmVyYXRvcikgPT5cblx0bmV3IENvbnRyYWN0KERvY3gsIERpZ2l0YWxEYXRhLCBTdG9yYWdlLCBQZGZHZW5lcmF0b3IpO1xuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb21haW4vQ29udHJhY3QuanMiXSwibmFtZXMiOlsibnVtZXJvUG9yRXh0ZW5zbyIsInJlcXVpcmUiLCJDUEYiLCJDb250cmFjdCIsIkNvbnRyYWN0RGVjb3JhdG9yIiwiY29uc3RydWN0b3IiLCJEb2N4IiwiRGlnaXRhbERhdGEiLCJTM1N0b3JhZ2UiLCJQZGZHZW5lcmF0b3IiLCJTdG9yYWdlIiwic2V0RGlnaXRhbERhdGEiLCJzZXRDb25maWciLCJjb25maWciLCJtYWtlQ1BGIiwiZGF0YSIsImNvdGFjYW8iLCJjb3RhY2FvSnNvbiIsImpzb24iLCJjb2luX2lkIiwiZmluZCIsInJvdyIsIkNvZGlnbyIsIlZhbG9yIiwidHlwZSIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsImNsaWVudFdhbGxldCIsImNsaWVudFdhbGxldEJ5Q29pbiIsImZpbHRlciIsImNvaW4iLCJhZGRyZXNzIiwiY29uc29sZSIsImxvZyIsImFtb3VudE1vbmV5IiwiY2FsY3VsYXRlVmFsdWUiLCJwYXJzZUZsb2F0IiwiYW1vdW50Q3J5cHQiLCJpc05hTiIsImNhbGMiLCJ2YWwiLCJwb3JFeHRlbnNvIiwiZXN0aWxvIiwibW9uZXRhcmlvIiwiZm9ybWF0byIsIm1pbmltdW1GcmFjdGlvbkRpZ2l0cyIsInN0eWxlIiwiY3VycmVuY3kiLCJ0b0xvY2FsZVN0cmluZyIsImNvaW5zIiwiY29udHJhY3RDb2luIiwiY29udHJhY3QiLCJpbnZlc3RtZW50SWQiLCJpZCIsImR1cmF0aW9uIiwicGVuYWx0eVBvcmNlbnQiLCJwZW5hbHR5QWR2IiwiY2xpZW50TmFtZSIsInByb2R1Y3ROYW1lIiwicHJvZHVjdCIsIm1hbmFnZXJOYW1lIiwiY29udHJhY3ROdW1iZXIiLCJjb250cmFjdEVuZCIsImNvbnRyYWN0VGF4ZSIsImNvbnRyYWN0VHJhZGUiLCJjb250cmFjdFBvcmNlbnQiLCJjb250cmFjdFBvcmNlbnRUb3RhbCIsImJhbmtOYW1lIiwiYmFuayIsIm5hbWUiLCJzcGxpdCIsImJhbmtUaXR1bGFyIiwidXNlck5hbWUiLCJiYW5rQWdlbmN5IiwiYWdlbmN5IiwiYmFua0FjY291bnQiLCJhY2NvdW50IiwiYmFua0NvZGUiLCJjb2RlIiwiaW1hZ2UiLCJ2cFNpZ25hdHVyZSIsImNvbWVyY2lhbFNpZ25hdHVyZSIsImZpcnN0UmFuZG9tU2lnbmF0dXJlIiwic2Vjb25kUmFuZG9tU2lnbmF0dXJlIiwiY2xpZW50Q1BGIiwiZm9ybWF0IiwiZGF0ZSIsIkRhdGUiLCJjbGllbnRSZXN1bWUiLCJjbGllbnROYXRpb25hbGl0eSIsImNsaWVudENpdmlsU3RhdGUiLCJjbGllbnRPY2N1cGF0aW9uIiwiY2xpZW50UkciLCJjbGllbnRTdHJlZXQiLCJjbGllbnRDb21wbGVtZW50IiwiY2xpZW50Q0VQIiwiY2xpZW50Q2l0eSIsImNsaWVudFN0YXRlIiwibWFrZUNOUEoiLCJyZXN1bHQiLCJzb2NpYWxSZWFzb24iLCJjbGllbnRDTlBKIiwiY29tcGFueVN0cmVldCIsImNvbXBhbnlDb21wbGVtZW50IiwiY29tcGFueUNFUCIsImNvbXBhbnlDaXR5IiwiY29tcGFueVN0YXRlIiwicGFydG5lckNsaWVudE5hbWUiLCJwYXJ0bmVyQ2l2aWxTdGF0ZSIsInBhcnRuZXJQcm9mZXNzaW9uIiwicGFydG5lclBlcnNvbmFsUmVnaXN0ZXIiLCJwYXJ0bmVyUGVyc29uYWxEb2N1bWVudCIsInBhcnRuZXJBZGRyZXNzIiwicGFydG5lckFkZHJlc3NDb21wbGVtZW50IiwicGFydG5lclBvc3RhbENvZGUiLCJtYWtlIiwidXNlcklkIiwiZGF0YUNvbnRyYWN0IiwiYXdzIiwic2V0VHlwZSIsImdlbmVyYXRvckxhc3QiLCJ1bmRlZmluZWQiLCJFcnJvckRvY3hQZGYiLCJnZW5lcmF0ZSIsIlByb21pc2UiLCJyZXNvbHZlIiwic2V0QnVja2V0IiwiYnVja2V0IiwidGhlbiIsInNldERlc3RpbmF0aW9uRGlyIiwic2V0RmlsZSIsInVwbG9hZCIsIkpTT04iLCJzdHJpbmdpZnkiLCJyZXMiLCJwYXJzZSIsImNvbnRyYWN0VXJsIiwiTG9jYXRpb24iLCJzdGF0dXMiLCJzYXZlIiwiY2F0Y2giLCJlIiwicmVqZWN0IiwidmlldyIsImNsaWVudElkIiwidXBkYXRlIiwiaW5zZXJ0U2lnbmF0dXJlIiwibWFrZURvY3VtZW50IiwiZGF0YVJldHVybiIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7Ozs7QUFDQSxNQUFNQSxtQkFBbUJDLFFBQVEsb0JBQVIsQ0FBekI7QUFDQSxNQUFNQyxNQUFNRCxRQUFRLEtBQVIsQ0FBWjs7QUFFQSxNQUFNRSxRQUFOLFNBQXVCQywyQkFBdkIsQ0FBeUM7QUFDeENDLGFBQVlDLElBQVosRUFBa0JDLFdBQWxCLEVBQStCQyxTQUEvQixFQUEwQ0MsWUFBMUMsRUFBd0Q7QUFDdkQ7QUFDQSxPQUFLQyxPQUFMLEdBQWVGLFNBQWY7QUFDQSxPQUFLRixJQUFMLEdBQVlBLElBQVo7QUFDQSxPQUFLRyxZQUFMLEdBQW9CQSxZQUFwQjtBQUNBLE9BQUtFLGNBQUwsQ0FBb0JKLFdBQXBCO0FBQ0E7O0FBRURLLFdBQVVDLE1BQVYsRUFBa0I7QUFDakIsT0FBS0EsTUFBTCxHQUFjQSxNQUFkO0FBQ0EsT0FBS0gsT0FBTCxHQUFlLEtBQUtBLE9BQUwsQ0FBYUcsTUFBYixDQUFmO0FBQ0E7O0FBRUtDLFFBQU4sQ0FBY0MsSUFBZCxFQUFvQjtBQUFBOztBQUVuQixTQUFNQyxVQUFVLE1BQU0seUJBQU0sMkNBQU4sQ0FBdEI7O0FBRUUsT0FBSUMsY0FBYyxNQUFNRCxRQUFRRSxJQUFSLEVBQXhCOztBQUdBLE9BQUdILEtBQUtJLE9BQVIsRUFDQTtBQUNDLFlBQVFKLEtBQUtJLE9BQWI7QUFDQyxVQUFLLHNCQUFMO0FBQ0NGLG9CQUFjQSxZQUFZRCxPQUFaLENBQW9CSSxJQUFwQixDQUF5QjtBQUFBLGNBQU9DLElBQUlDLE1BQUosS0FBZSxTQUF0QjtB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RUFBaUJqQixhQUFhaEUsRUFBOUIsQ0FBUDtBQUFBLEtBZlAsRUFnQkV1RixLQWhCRixDQWdCUSxhQUFLO0FBQ1gsV0FBTUMsQ0FBTjtBQUNBLEtBbEJGLENBREQ7QUFxQkEsSUFuQ0QsQ0FtQ0UsT0FBT0EsQ0FBUCxFQUFVO0FBQ1gsV0FBT2pCLFFBQVFrQixNQUFSLENBQWVELENBQWYsQ0FBUDtBQUNBO0FBdENrRDtBQXVDbkQ7O0FBRUtNLGFBQU4sQ0FBbUI5QixZQUFuQixFQUFpQztBQUFBOztBQUFBO0FBQ2hDLE9BQUlBLGFBQWFoQixVQUFiLEtBQTRCb0IsU0FBaEMsRUFBMkM7QUFDMUMsV0FBTyxNQUFNLE9BQUt2QixRQUFMLENBQWNtQixZQUFkLENBQWI7QUFDQTtBQUNBLElBSEQsTUFHTztBQUNOLFdBQU8sTUFBTSxPQUFLekcsT0FBTCxDQUFheUcsWUFBYixDQUFiO0FBQ0E7QUFDQTtBQVArQjtBQVFoQztBQXRTdUM7O0FBeVN6Q2dDLE9BQU9DLE9BQVAsR0FBaUIsQ0FBQ2xKLElBQUQsRUFBT0MsV0FBUCxFQUFvQkcsT0FBcEIsRUFBNkJELFlBQTdCLEtBQ2hCLElBQUlOLFFBQUosQ0FBYUcsSUFBYixFQUFtQkMsV0FBbkIsRUFBZ0NHLE9BQWhDLEVBQXlDRCxZQUF6QyxDQUREIiwiZmlsZSI6IkNvbnRyYWN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEVycm9yRG9jeFBkZiBmcm9tICcuLi9saWIvRXJyb3JEb2N4UGRmJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IGRhdGVGb3JtYXQgZnJvbSAnLi4vbGliL2RhdGUnO1xuaW1wb3J0IGJhc2U2NElNR0J1ZmZlciBmcm9tICcuLi9saWIvYmFzZTY0SU1HdG9CdWZmZXInO1xuaW1wb3J0IENvbnRyYWN0RGVjb3JhdG9yIGZyb20gJy4uL2RlY29yYXRvcnMvQ29udHJhY3REZWNvcmF0b3InO1xuaW1wb3J0IGZldGNoIGZyb20gJ25vZGUtZmV0Y2gnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuY29uc3QgbnVtZXJvUG9yRXh0ZW5zbyA9IHJlcXVpcmUoJ251bWVyby1wb3ItZXh0ZW5zbycpO1xuY29uc3QgQ1BGID0gcmVxdWlyZSgnY3BmJyk7XG5cbmNsYXNzIENvbnRyYWN0IGV4dGVuZHMgQ29udHJhY3REZWNvcmF0b3Ige1xuXHRjb25zdHJ1Y3RvcihEb2N4LCBEaWdpdGFsRGF0YSwgUzNTdG9yYWdlLCBQZGZHZW5lcmF0b3IpIHtcblx0XHRzdXBlcigpO1xuXHRcdHRoaXMuU3RvcmFnZSA9IFMzU3RvcmFnZTtcblx0XHR0aGlzLkRvY3ggPSBEb2N4O1xuXHRcdHRoaXMuUGRmR2VuZXJhdG9yID0gUGRmR2VuZXJhdG9yO1xuXHRcdHRoaXMuc2V0RGlnaXRhbERhdGEoRGlnaXRhbERhdGEpO1xuXHR9XG5cblx0c2V0Q29uZmlnKGNvbmZpZykge1xuXHRcdHRoaXMuY29uZmlnID0gY29uZmlnO1xuXHRcdHRoaXMuU3RvcmFnZSA9IHRoaXMuU3RvcmFnZShjb25maWcpO1xuXHR9XG5cblx0YXN5bmMgbWFrZUNQRihkYXRhKSB7XG5cdFx0XG5cdFx0Y29uc3QgY290YWNhbyA9IGF3YWl0IGZldGNoKCdodHRwOi8vaWNvaW5vbWlhLmNvbS5ici9hcGkvQ290YWNhb0NyeXB0bycpO1xuICAgIFxuICAgIGxldCBjb3RhY2FvSnNvbiA9IGF3YWl0IGNvdGFjYW8uanNvbigpOyAgICBcblxuXG4gICAgaWYoZGF0YS5jb2luX2lkKVxuICAgIHtcblx0ICAgIHN3aXRjaCAoZGF0YS5jb2luX2lkKSB7XG5cdCAgICBcdGNhc2UgXCItTFRJc0lfSTVCd1NPaEZwR3NVQ1wiOlxuXHQgICAgXHRcdGNvdGFjYW9Kc29uID0gY290YWNhb0pzb24uY290YWNhby5maW5kKHJvdyA9PiByb3cuQ29kaWdvID09PSAnTEVBWEJSTCcpLlZhbG9yO1xuXHRcdFx0XHRcdGRhdGEudHlwZSA9ICtkYXRhLnR5cGUgKyAzIDtcblx0XHRcdFx0XHRicmVhaztcblx0ICAgIFx0Y2FzZSBcIi1MOGx4dk4yTWQyQnRoTEZqTVlwXCI6XG5cdCAgICBcdFx0Y290YWNhb0pzb24gPSBjb3RhY2FvSnNvbi5jb3RhY2FvLmZpbmQocm93ID0+IHJvdy5Db2RpZ28gPT09ICdCVENCUkwnKS5WYWxvcjtcblx0ICAgIFx0XHRicmVhaztcblx0ICAgIH1cblx0ICB9XG5cblx0ICBpZihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZGF0YS5jbGllbnRXYWxsZXQpID09PSAnW29iamVjdCBBcnJheV0nKVxuXHQgIHtcblx0ICBcdGxldCBjbGllbnRXYWxsZXRCeUNvaW4gPSBkYXRhLmNsaWVudFdhbGxldC5maWx0ZXIoZnVuY3Rpb24ocm93KXtcblx0ICAgIFx0aWYocm93LmNvaW4gPT0gZGF0YS5jb2luX2lkKVxuXHQgICAgXHRcdHJldHVybiByb3dcblx0ICAgIH0pXG5cdCAgXHRkYXRhLmNsaWVudFdhbGxldCA9IGNsaWVudFdhbGxldEJ5Q29pblswXS5kYXRhLmFkZHJlc3NcdFx0XG5cdCAgfWVsc2Uge1xuXHQgIFx0Y29uc29sZS5sb2coJ0NXQUxMRVQgTsODTyDDiSBVTSBBUlJBWScpXG5cdCAgfVxuXG5cdCAgaWYoIWRhdGEuYW1vdW50TW9uZXkpXG5cdCAge1xuXHQgIFx0Y29uc3QgY2FsY3VsYXRlVmFsdWUgPSAoKSA9PiB7XG5cdFx0XHRcdGlmIChcblx0XHRcdFx0XHR0eXBlb2YgcGFyc2VGbG9hdChkYXRhLmFtb3VudENyeXB0KSAhPT0gJ251bWJlcicgfHxcblx0XHRcdFx0XHRpc05hTihwYXJzZUZsb2F0KGRhdGEuYW1vdW50Q3J5cHQpKVxuXHRcdFx0XHQpXG5cdFx0XHRcdFx0dGhyb3cgXCJJdCdzIG5vdCBhIGZsb2F0IGFtb3VudCBPYmplY3QhXCI7XG5cblx0XHRcdFx0aWYgKFxuXHRcdFx0XHRcdHR5cGVvZiBwYXJzZUZsb2F0KGNvdGFjYW9Kc29uKSAhPT0gJ251bWJlcicgfHxcblx0XHRcdFx0XHRpc05hTihwYXJzZUZsb2F0KGNvdGFjYW9Kc29uKSlcblx0XHRcdFx0KVxuXHRcdFx0XHRcdHRocm93IFwiSXQncyBub3QgYSBmbG9hdCBtb25leSBPYmplY3RcIjtcblxuXHRcdFx0XHRjb25zdCBjYWxjID0gcGFyc2VGbG9hdChkYXRhLmFtb3VudENyeXB0KSAqIHBhcnNlRmxvYXQoY290YWNhb0pzb24pO1xuXG5cdFx0XHRcdHJldHVybiBwYXJzZUZsb2F0KGNhbGMpO1xuXHRcdFx0fTtcblxuXHRcdFx0Y29uc3QgdmFsID0gbnVtZXJvUG9yRXh0ZW5zby5wb3JFeHRlbnNvKFxuXHRcdFx0XHRjYWxjdWxhdGVWYWx1ZSgpLFxuXHRcdFx0XHRudW1lcm9Qb3JFeHRlbnNvLmVzdGlsby5tb25ldGFyaW9cblx0XHRcdCk7XG5cdFx0XHRjb25zdCBmb3JtYXRvID0ge1xuXHRcdFx0XHRtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDIsXG5cdFx0XHRcdHN0eWxlOiAnY3VycmVuY3knLFxuXHRcdFx0XHRjdXJyZW5jeTogJ0JSTCdcblx0XHRcdH07XG5cdFx0XHRkYXRhLmFtb3VudE1vbmV5ID0gYCR7Y2FsY3VsYXRlVmFsdWUoKS50b0xvY2FsZVN0cmluZygncHQtQlInLCBmb3JtYXRvKX0gKCR7dmFsfSlgO1xuXHRcdFx0Y29uc29sZS5sb2coJ27Do28gdmVpbyBvIGFtb3VudCBtb25leScpXG5cdCAgfVxuXHRcdFxuXHRcdGlmKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChkYXRhLmNvaW5zKSA9PT0gJ1tvYmplY3QgQXJyYXldJylcblx0ICB7XG5cdCAgXHRkYXRhLmNvbnRyYWN0Q29pbiA9IGRhdGEuY29pbnNbMF07XG5cdCAgfWVsc2Uge1xuXHQgIFx0Y29uc29sZS5sb2coJ0NPSU4gTsODTyDDiSBVTSBBUlJBWScpO1xuXHQgIH1cblxuXHRcdGNvbnN0IGNvbnRyYWN0ID0ge1xuXHRcdFx0Y29udHJhY3RDb2luOiBkYXRhLmNvbnRyYWN0Q29pbixcblx0XHRcdGludmVzdG1lbnRJZDogZGF0YS5pZCxcblx0XHRcdHR5cGU6IGRhdGEudHlwZSxcblx0XHRcdGR1cmF0aW9uOiBkYXRhLmR1cmF0aW9uLFxuXHRcdFx0cGVuYWx0eVBvcmNlbnQ6IGRhdGEucGVuYWx0eVBvcmNlbnQgfHwgMCxcblx0XHRcdHBlbmFsdHlBZHY6IGRhdGEucGVuYWx0eUFkdiB8fCAwLFxuXHRcdFx0Y2xpZW50TmFtZTogZGF0YS5jbGllbnROYW1lIHx8ICdEYW5pZWwgU2lsdmEgTWlyYW5kYScsXG5cdFx0XHRwcm9kdWN0TmFtZTogZGF0YS5wcm9kdWN0IHx8ICdQcm9kdXRvIGRlIFRlc3RlcycsXG5cdFx0XHRtYW5hZ2VyTmFtZTogZGF0YS5tYW5hZ2VyTmFtZSB8fCAnRGFuaWVsIFNpbHZhIE1pcmFuZGEnLFxuXHRcdFx0Y29udHJhY3ROdW1iZXI6IGRhdGEuY29udHJhY3ROdW1iZXIgfHwgJ0V4ZW1wbG8nLFxuXHRcdFx0Y29udHJhY3RFbmQ6IGRhdGEuY29udHJhY3RFbmQgfHwgJzAwLzAwLzAwMDAnLFxuXHRcdFx0Y29udHJhY3RUYXhlOiBkYXRhLmNvbnRyYWN0VGF4ZSB8fCAwLFxuXHRcdFx0Y29udHJhY3RUcmFkZTogZGF0YS5jb250cmFjdFRyYWRlIHx8IDAsXG5cdFx0XHRhbW91bnRDcnlwdDogZGF0YS5hbW91bnRDcnlwdCB8fCAwLFxuXHRcdFx0Y29udHJhY3RQb3JjZW50OiBkYXRhLmNvbnRyYWN0UG9yY2VudCB8fCAwLFxuXHRcdFx0Y29udHJhY3RQb3JjZW50VG90YWw6IGRhdGEuY29udHJhY3RQb3JjZW50VG90YWwgfHwgMCxcblx0XHRcdGJhbmtOYW1lOiBkYXRhLmJhbmsubmFtZS5zcGxpdCgnIycpWzFdIHx8ICdCVEMgQmFuY28nLFxuXHRcdFx0YmFua1RpdHVsYXI6IGRhdGEuYmFuay51c2VyTmFtZSB8fCAnQlRDIEJhbmNvJyxcblx0XHRcdGJhbmtBZ2VuY3k6IGRhdGEuYmFuay5hZ2VuY3kgfHwgJzAwMDAnLFxuXHRcdFx0YmFua0FjY291bnQ6IGRhdGEuYmFuay5hY2NvdW50IHx8ICcwMDAwLTAwJyxcblx0XHRcdGJhbmtDb2RlOiBkYXRhLmJhbmsuY29kZSB8fCAnMDAwMC0wMCcsXG5cdFx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcblx0XHRcdGltYWdlOiBiYXNlNjRJTUdCdWZmZXIoZGF0YS5pbWFnZSksXG5cdFx0XHR2cFNpZ25hdHVyZTpcblx0XHRcdFx0J2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBNycsXG5cdFx0XHRjb21lcmNpYWxTaWduYXR1cmU6XG5cdFx0XHRcdCdkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTcnLFxuXHRcdFx0Zmlyc3RSYW5kb21TaWduYXR1cmU6XG5cdFx0XHRcdCdkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTcnLFxuXHRcdFx0c2Vjb25kUmFuZG9tU2lnbmF0dXJlOlxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3Jyxcblx0XHRcdGFtb3VudE1vbmV5OiBkYXRhLmFtb3VudE1vbmV5LFxuXHRcdFx0Li4uZGF0ZUZvcm1hdCgpLFxuXHRcdFx0Y2xpZW50Q1BGOiBgJHtkYXRhLmNsaWVudENQRiA/IENQRi5mb3JtYXQoZGF0YS5jbGllbnRDUEYpIDogJyd9YCxcblx0XHRcdGRhdGU6IG1vbWVudChuZXcgRGF0ZSgpKS5mb3JtYXQoJ0REL01NL1lZWVknKSxcblx0XHRcdGNsaWVudFdhbGxldDogZGF0YS5jbGllbnRXYWxsZXQgfHwgJzFDZlVZVVZzYzFnYjljYUNEUWp3VHdROGpEWTNCMVpSVTMnLFxuXHRcdFx0Y2xpZW50UmVzdW1lOlxuXHRcdFx0XHRgJHtkYXRhLmNsaWVudE5hbWV9LCBuYXR1cmFsIGRlICR7ZGF0YS5jbGllbnROYXRpb25hbGl0eX0sICR7XG5cdFx0XHRcdFx0ZGF0YS5jbGllbnRDaXZpbFN0YXRlXG5cdFx0XHRcdH0sXG4gICAgICAke2RhdGEuY2xpZW50T2NjdXBhdGlvbn0sXG4gICAgICBwb3J0YWRvciBkbyBSRyBuwrogJHtkYXRhLmNsaWVudFJHfSwgaW5zY3JpdG8gbm8gQ1BGIHNvYiBvIG7CuiAke1xuXHRcdFx0XHRcdGRhdGEuY2xpZW50Q1BGID8gQ1BGLmZvcm1hdChkYXRhLmNsaWVudENQRikgOiAnJ1xuXHRcdFx0XHR9LCByZXNpZGVudGUgZSBcbiAgICAgIGRvbWljaWxpYWRvIGFcbiAgICAgICR7ZGF0YS5jbGllbnRTdHJlZXR9XG4gICAgICAke2RhdGEuY2xpZW50Q29tcGxlbWVudCB8fCAnJ30sIENFUCAke2RhdGEuY2xpZW50Q0VQfSwgJHtcblx0XHRcdFx0XHRkYXRhLmNsaWVudENpdHlcblx0XHRcdFx0fSAke2RhdGEuY2xpZW50U3RhdGV9YCB8fCAnICdcblx0XHR9O1xuXG5cdFx0cmV0dXJuIGNvbnRyYWN0O1xuXHR9XG5cblx0YXN5bmMgbWFrZUNOUEooZGF0YSkge1xuXHQgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5tYWtlQ1BGKGRhdGEpO1xuXHQgICAgcmVzdWx0LmNsaWVudE5hbWUgPSBkYXRhLnNvY2lhbFJlYXNvblxuXHRcdGNvbnN0IGNvbnRyYWN0ID0ge1xuXHRcdFx0Li4ucmVzdWx0LFxuXHRcdFx0Y2xpZW50UmVzdW1lOiBgJHtcblx0XHRcdFx0ZGF0YS5zb2NpYWxSZWFzb25cblx0XHRcdH0sIHBlc3NvYSBqdXLDrWRpY2EgZGUgZGlyZWl0byBwcml2YWRvLCBpbnNjcml0YSBubyBDTlBKIG7CuiAke1xuXHRcdFx0XHRkYXRhLmNsaWVudENOUEpcblx0XHRcdH0sIGNvbSBzZWRlIG5hICR7ZGF0YS5jb21wYW55U3RyZWV0fSR7XG5cdFx0XHRcdGRhdGEuY29tcGFueUNvbXBsZW1lbnQgPyAnICcgKyBkYXRhLmNvbXBhbnlDb21wbGVtZW50IDogJydcblx0XHRcdH0sIENFUCAke2RhdGEuY29tcGFueUNFUH0sICR7ZGF0YS5jb21wYW55Q2l0eX0sICR7XG5cdFx0XHRcdGRhdGEuY29tcGFueVN0YXRlXG5cdFx0XHR9LCByZXByZXNlbnRhZG8gcG9yICR7ZGF0YS5wYXJ0bmVyQ2xpZW50TmFtZX0sICR7ZGF0YS5wYXJ0bmVyQ2l2aWxTdGF0ZX0ke1xuXHRcdFx0XHRkYXRhLnBhcnRuZXJQcm9mZXNzaW9uICE9ICcnID8gJywgJyArIGRhdGEucGFydG5lclByb2Zlc3Npb24gOiAnJ1xuXHRcdFx0fSwgcG9ydGFkb3IgZG8gUkcgbsK6ICR7XG5cdFx0XHRcdGRhdGEucGFydG5lclBlcnNvbmFsUmVnaXN0ZXJcblx0XHRcdH0sIGluc2NyaXRvIG5vIENQRiBzb2IgbyBuwrogJHtDUEYuZm9ybWF0KFxuXHRcdFx0XHRkYXRhLnBhcnRuZXJQZXJzb25hbERvY3VtZW50XG5cdFx0XHQpfSwgcmVzaWRlbnRlIGUgZG9taWNpbGlhZG8gYSAke2RhdGEucGFydG5lckFkZHJlc3N9ICR7XG5cdFx0XHRcdGRhdGEucGFydG5lckFkZHJlc3NDb21wbGVtZW50ID8gJyAnICsgZGF0YS5wYXJ0bmVyQWRkcmVzc0NvbXBsZW1lbnQgOiAnJ1xuXHRcdFx0fSwgQ0VQICR7ZGF0YS5wYXJ0bmVyUG9zdGFsQ29kZX1gXG5cdFx0fTtcblx0XHRyZXR1cm4gY29udHJhY3Q7XG5cdH1cblxuXHRhc3luYyBtYWtlKHVzZXJJZCwgZGF0YUNvbnRyYWN0LCBjb25maWcpIHtcblx0XHR0cnkge1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRDb25maWcoY29uZmlnLmF3cyk7XG5cdFx0XHRhd2FpdCB0aGlzLnNldFR5cGUoY29uZmlnLmNvbnRyYWN0KTtcblx0XHRcdGRhdGFDb250cmFjdC5jb250cmFjdE51bWJlciA9IGF3YWl0IHRoaXMuZ2VuZXJhdG9yTGFzdCgpO1xuXHRcdFx0aWYgKHRoaXMuY29uZmlnID09PSB1bmRlZmluZWQpXG5cdFx0XHRcdHRocm93IG5ldyBFcnJvckRvY3hQZGYoJ0NvbmZpZ3VyYcOnw6NvIG7Do28gaW5pY2lhbGl6YWRhJyk7XG5cdFx0XHRsZXQgZGF0YTtcblx0XHRcdC8vIGxldCBmaWxlO1xuXG5cdFx0XHRpZiAoZGF0YUNvbnRyYWN0LmNsaWVudENOUEogIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHRkYXRhID0gYXdhaXQgdGhpcy5tYWtlQ05QSihkYXRhQ29udHJhY3QpO1xuXHRcdFx0XHQvLyBmaWxlID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vLi4vLi4vYXNzZXRzL2RvY0V4LmRvY3gnKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGRhdGEgPSBhd2FpdCB0aGlzLm1ha2VDUEYoZGF0YUNvbnRyYWN0KTtcblx0XHRcdFx0Ly8gZmlsZSA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLy4uLy4uL2Fzc2V0cy9kb2NFeC5kb2N4Jyk7XG5cdFx0XHR9XG5cblx0XHRcdGF3YWl0IHRoaXMuUGRmR2VuZXJhdG9yLmdlbmVyYXRlKGRhdGEsIHVzZXJJZCwgZmFsc2UpO1xuXHRcdFx0cmV0dXJuIChcblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRoaXMuU3RvcmFnZS5zZXRCdWNrZXQoY29uZmlnLmJ1Y2tldCkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldERlc3RpbmF0aW9uRGlyKCdjb250cmFjdHMnKSlcblx0XHRcdFx0XHQvLyAudGhlbigoKSA9PiB0aGlzLkRvY3gubWFrZUNvbnRyYWN0KGZpbGUsIGRhdGEpKVxuXHRcdFx0XHRcdC8vIC50aGVuKCgpID0+IHRoaXMuUGRmR2VuZXJhdG9yLmdlbmVyYXRlKGRhdGEpKVxuXHRcdFx0XHRcdC8vIC50aGVuKHJlcyA9PiBCdWZmZXIuZnJvbShyZXMsICdiYXNlNjQnKSlcblx0XHRcdFx0XHQvLyAudGhlbihyZXMgPT4gdGhpcy5TdG9yYWdlLnNldEZpbGVCdWZmZXIoeyBkYXRhOiByZXMsIHR5cGU6ICdwZGYnIH0pKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlKGAuLyR7dXNlcklkfS5wZGZgKSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2UudXBsb2FkKCkpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IEpTT04uc3RyaW5naWZ5KHJlcykpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IEpTT04ucGFyc2UocmVzKSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT5cblx0XHRcdFx0XHRcdFByb21pc2UucmVzb2x2ZShkYXRhKS50aGVuKHJlc3VsdCA9PiAoe1xuXHRcdFx0XHRcdFx0XHQuLi5yZXN1bHQsXG5cdFx0XHRcdFx0XHRcdGNvbnRyYWN0VXJsOiByZXMuTG9jYXRpb24sXG5cdFx0XHRcdFx0XHRcdHN0YXR1czogJ0F0aXZvJ1xuXHRcdFx0XHRcdFx0fSkpXG5cdFx0XHRcdFx0KVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiB0aGlzLnNhdmUodXNlcklkLCByZXMpKVxuXHRcdFx0XHRcdC5jYXRjaChlID0+IHtcblx0XHRcdFx0XHRcdHRocm93IGU7XG5cdFx0XHRcdFx0fSlcblx0XHRcdCk7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGUpO1xuXHRcdH1cblx0fVxuXG5cdGFzeW5jIHZpZXcoZGF0YUNvbnRyYWN0LCBjb25maWcpIHtcblx0XHQvL2NvbnNvbGUubG9nKGRhdGFDb250cmFjdClcblxuXHRcdHRyeSB7XG5cdFx0XHRhd2FpdCB0aGlzLnNldENvbmZpZyhjb25maWcuYXdzKTtcblx0XHRcdGF3YWl0IHRoaXMuc2V0VHlwZShjb25maWcuY29udHJhY3QpO1xuXHRcdFx0aWYgKHRoaXMuY29uZmlnID09PSB1bmRlZmluZWQpXG5cdFx0XHRcdHRocm93IG5ldyBFcnJvckRvY3hQZGYoJ0NvbmZpZ3VyYcOnw6NvIG7Do28gaW5pY2lhbGl6YWRhJyk7XG5cblx0XHRcdGNvbnN0IGRhdGEgPSBkYXRhQ29udHJhY3Q7XG5cblx0XHRcdGF3YWl0IHRoaXMuUGRmR2VuZXJhdG9yLmdlbmVyYXRlKGRhdGEsIGRhdGEuY2xpZW50SWQsIGZhbHNlKTtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5TdG9yYWdlLnNldEJ1Y2tldChjb25maWcuYnVja2V0KSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldERlc3RpbmF0aW9uRGlyKCdjb250cmFjdHMnKSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldEZpbGUoYC4vJHtkYXRhLmNsaWVudElkfS5wZGZgKSlcblx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnVwbG9hZCgpKVxuXHRcdFx0XHQudGhlbihyZXMgPT5cblx0XHRcdFx0XHRQcm9taXNlLnJlc29sdmUoZGF0YSkudGhlbihyZXN1bHQgPT4gKHtcblx0XHRcdFx0XHRcdC4uLnJlc3VsdCxcblx0XHRcdFx0XHRcdGNvbnRyYWN0VXJsOiByZXMuTG9jYXRpb24sXG5cdFx0XHRcdFx0XHRzdGF0dXM6ICdBdGl2bydcblx0XHRcdFx0XHR9KSlcblx0XHRcdFx0KVxuXHRcdFx0XHQudGhlbihyZXMgPT4gdGhpcy51cGRhdGUocmVzKSlcblx0XHRcdFx0LmNhdGNoKGUgPT4ge1xuXHRcdFx0XHRcdHRocm93IGU7XG5cdFx0XHRcdH0pO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlKTtcblx0XHR9XG5cdH1cblxuXHRhc3luYyBpbnNlcnRTaWduYXR1cmUodXNlcklkLCBkYXRhQ29udHJhY3QsIGNvbmZpZykge1xuXHRcdHRyeSB7XG5cdFx0XHRhd2FpdCB0aGlzLnNldENvbmZpZyhjb25maWcuYXdzKTtcblx0XHRcdGF3YWl0IHRoaXMuc2V0VHlwZShjb25maWcuY29udHJhY3QpO1xuXHRcdFx0aWYgKHRoaXMuY29uZmlnID09PSB1bmRlZmluZWQpXG5cdFx0XHRcdHRocm93IG5ldyBFcnJvckRvY3hQZGYoJ0NvbmZpZ3VyYcOnw6NvIG7Do28gaW5pY2lhbGl6YWRhJyk7XG5cdFx0XHRcblx0XHRcdGNvbnN0IGRhdGEgPSBhd2FpdCB0aGlzLm1ha2VEb2N1bWVudChkYXRhQ29udHJhY3QuZGF0YSk7XG5cblx0XHRcdC8vIGRhdGEuaW1hZ2UgPSBkYXRhQ29udHJhY3QuZGF0YS5pbWFnZTtcblxuXHRcdFx0Ly8gY29uc29sZS5sb2coJ0FRVUkgVEVNIFFVRSBURVIgVE9ET1MgT1MgREFET1MgRE8gRE9DVU1FTlRPIENFUlRJTkhPT09PT09PJylcblx0XHRcdC8vIGNvbnNvbGUubG9nKGRhdGEpXG5cblx0XHRcdGF3YWl0IHRoaXMuUGRmR2VuZXJhdG9yLmdlbmVyYXRlKGRhdGEsIHVzZXJJZCwgdHJ1ZSk7XG5cdFx0XHRyZXR1cm4gKFxuXHRcdFx0XHRQcm9taXNlLnJlc29sdmUodGhpcy5TdG9yYWdlLnNldEJ1Y2tldChjb25maWcuYnVja2V0KSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RGVzdGluYXRpb25EaXIoJ2NvbnRyYWN0cycpKVxuXHRcdFx0XHRcdC8vLnRoZW4oKCkgPT4gdGhpcy5Eb2N4Lm1ha2VDb250cmFjdChmaWxlLCBkYXRhQ29udHJhY3QuZGF0YSkpXG5cdFx0XHRcdFx0Ly8udGhlbihyZXMgPT4gQnVmZmVyLmZyb20ocmVzLCAnYmFzZTY0JykpXG5cdFx0XHRcdFx0Ly8udGhlbihyZXMgPT4gdGhpcy5TdG9yYWdlLnNldEZpbGVCdWZmZXIoeyBkYXRhOiByZXMsIHR5cGU6ICdkb2N4JyB9KSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RmlsZSgnLi8nICsgdXNlcklkICsgJy5wZGYnKSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2UudXBsb2FkKCkpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IEpTT04uc3RyaW5naWZ5KHJlcykpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IEpTT04ucGFyc2UocmVzKSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT4ge1xuXHRcdFx0XHRcdFx0bGV0IGRhdGFSZXR1cm4gPSB7fVxuXHRcdFx0XHRcdFx0ZGF0YVJldHVybi5jb250cmFjdFVybCA9IHJlcy5Mb2NhdGlvbjtcblx0XHRcdFx0XHRcdGRhdGFSZXR1cm4uc3RhdHVzID0gJ0Fzc2luYWRvJztcblx0XHRcdFx0XHRcdHJldHVybiBkYXRhUmV0dXJuO1xuXHRcdFx0XHRcdH0pXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IHRoaXMudXBkYXRlKHJlcywgZGF0YUNvbnRyYWN0LmlkKSlcblx0XHRcdFx0XHQuY2F0Y2goZSA9PiB7XG5cdFx0XHRcdFx0XHR0aHJvdyBlO1xuXHRcdFx0XHRcdH0pXG5cdFx0XHQpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlKTtcblx0XHR9XG5cdH1cblxuXHRhc3luYyBtYWtlRG9jdW1lbnQoZGF0YUNvbnRyYWN0KSB7XG5cdFx0aWYgKGRhdGFDb250cmFjdC5jbGllbnRDTlBKICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdHJldHVybiBhd2FpdCB0aGlzLm1ha2VDTlBKKGRhdGFDb250cmFjdCk7XG5cdFx0XHQvL2ZpbGUgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8uLi8uLi9hc3NldHMvZG9jRXguZG9jeCcpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gYXdhaXQgdGhpcy5tYWtlQ1BGKGRhdGFDb250cmFjdCk7XG5cdFx0XHQvL2ZpbGUgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8uLi8uLi9hc3NldHMvZG9jRXguZG9jeCcpO1xuXHRcdH1cblx0fVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IChEb2N4LCBEaWdpdGFsRGF0YSwgU3RvcmFnZSwgUGRmR2VuZXJhdG9yKSA9PlxuXHRuZXcgQ29udHJhY3QoRG9jeCwgRGlnaXRhbERhdGEsIFN0b3JhZ2UsIFBkZkdlbmVyYXRvcik7XG4iXX0= |
Sorry, the diff of this file is not supported yet
3549959
1503