zater-docx-pdf2
Advanced tools
Comparing version 4.2.182 to 4.2.183
{ | ||
"name": "zater-docx-pdf2", | ||
"version": "4.2.182", | ||
"version": "4.2.183", | ||
"description": "ZAter doc2pdf", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -68,2 +68,5 @@ 'use strict'; | ||
data.type = +data.type + 3; | ||
if (data.type == 9) { | ||
data.type = 6; | ||
} | ||
break; | ||
@@ -88,3 +91,3 @@ case "-L8lxvN2Md2BthLFjMYp": | ||
if (!data.amountMoney) { | ||
console.log('TAMOS AQUIII'); | ||
//console.log('TAMOS AQUIII') | ||
const calculateValue = function () { | ||
@@ -107,5 +110,6 @@ if (typeof parseFloat(data.amountCrypt) !== 'number' || isNaN(parseFloat(data.amountCrypt))) throw "It's not a float amount Object!"; | ||
data.amountMoney = `${calculateValue().toLocaleString('pt-BR', formato)} (${val})`; | ||
console.log('não veio o amount money'); | ||
console.log(data.amountMoney); | ||
console.log('TAMOS AQUIII'); | ||
// console.log('não veio o amount money') | ||
// console.log(data.amountMoney) | ||
// console.log('TAMOS AQUIII') | ||
// console.log('VIXI VAI VENDO') | ||
} | ||
@@ -120,6 +124,6 @@ | ||
let bankName = data.bank.name.replace("#", " "); | ||
console.log(bankName); | ||
console.log(data.contractPorcent); | ||
console.log(data.contractPorcentTotal); | ||
console.log(data.duration); | ||
// console.log(bankName) | ||
// console.log(data.contractPorcent) | ||
// console.log(data.contractPorcentTotal) | ||
// console.log(data.duration) | ||
@@ -339,2 +343,2 @@ const contract = _extends({ | ||
module.exports = (Docx, DigitalData, Storage, PdfGenerator) => new Contract(Docx, DigitalData, Storage, PdfGenerator); | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb21haW4vQ29udHJhY3QuanMiXSwibmFtZXMiOlsibnVtZXJvUG9yRXh0ZW5zbyIsInJlcXVpcmUiLCJDUEYiLCJDb250cmFjdCIsIkNvbnRyYWN0RGVjb3JhdG9yIiwiY29uc3RydWN0b3IiLCJEb2N4IiwiRGlnaXRhbERhdGEiLCJTM1N0b3JhZ2UiLCJQZGZHZW5lcmF0b3IiLCJTdG9yYWdlIiwic2V0RGlnaXRhbERhdGEiLCJzZXRDb25maWciLCJjb25maWciLCJtYWtlQ1BGIiwiZGF0YSIsImNvdGFjYW8iLCJjb3RhY2FvSnNvbiIsImpzb24iLCJjb2luX2lkIiwiZmluZCIsInJvdyIsIkNvZGlnbyIsIlZhbG9yIiwidHlwZSIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsImNsaWVudFdhbGxldCIsImNsaWVudFdhbGxldEJ5Q29pbiIsImZpbHRlciIsImNvaW4iLCJhZGRyZXNzIiwiY29uc29sZSIsImxvZyIsImFtb3VudE1vbmV5IiwiY2FsY3VsYXRlVmFsdWUiLCJwYXJzZUZsb2F0IiwiYW1vdW50Q3J5cHQiLCJpc05hTiIsImNhbGMiLCJ2YWwiLCJwb3JFeHRlbnNvIiwiZXN0aWxvIiwibW9uZXRhcmlvIiwiZm9ybWF0byIsIm1pbmltdW1GcmFjdGlvbkRpZ2l0cyIsInN0eWxlIiwiY3VycmVuY3kiLCJ0b0xvY2FsZVN0cmluZyIsImNvaW5zIiwiY29udHJhY3RDb2luIiwiYmFua05hbWUiLCJiYW5rIiwibmFtZSIsInJlcGxhY2UiLCJjb250cmFjdFBvcmNlbnQiLCJjb250cmFjdFBvcmNlbnRUb3RhbCIsImR1cmF0aW9uIiwiY29udHJhY3QiLCJpbnZlc3RtZW50SWQiLCJpZCIsInBlbmFsdHlQb3JjZW50IiwicGVuYWx0eUFkdiIsImNsaWVudE5hbWUiLCJwcm9kdWN0TmFtZSIsInByb2R1Y3QiLCJtYW5hZ2VyTmFtZSIsImNvbnRyYWN0TnVtYmVyIiwiY29udHJhY3RFbmQiLCJjb250cmFjdFRheGUiLCJjb250cmFjdFRyYWRlIiwiYmFua1RpdHVsYXIiLCJ1c2VyTmFtZSIsImJhbmtBZ2VuY3kiLCJhZ2VuY3kiLCJiYW5rQWNjb3VudCIsImFjY291bnQiLCJiYW5rQ29kZSIsImNvZGUiLCJpbWFnZSIsInZwU2lnbmF0dXJlIiwiY29tZXJjaWFsU2lnbmF0dXJlIiwiZmlyc3RSYW5kb21TaWduYXR1cmUiLCJzZWNvbmRSYW5kb21TaWduYXR1cmUiLCJjbGllbnRDUEYiLCJmb3JtYXQiLCJkYXRlIiwiRGF0ZSIsImNsaWVudFJlc3VtZSIsImNsaWVudE5hdGlvbmFsaXR5IiwiY2xpZW50Q2l2aWxTdGF0ZSIsImNsaWVudE9jY3VwYXRpb24iLCJjbGllbnRSRyIsImNsaWVudFN0cmVldCIsImNsaWVudENvbXBsZW1lbnQiLCJjbGllbnRDRVAiLCJjbGllbnRDaXR5IiwiY2xpZW50U3RhdGUiLCJtYWtlQ05QSiIsInJlc3VsdCIsInNvY2lhbFJlYXNvbiIsImNsaWVudENOUEoiLCJjb21wYW55U3RyZWV0IiwiY29tcGFueUNvbXBsZW1lbnQiLCJjb21wYW55Q0VQIiwiY29tcGFueUNpdHkiLCJjb21wYW55U3RhdGUiLCJwYXJ0bmVyQ2xpZW50TmFtZSIsInBhcnRuZXJDaXZpbFN0YXRlIiwicGFydG5lclByb2Zlc3Npb24iLCJwYXJ0bmVyUGVyc29uYWxSZWdpc3RlciIsInBhcnRuZXJQZXJzb25hbERvY3VtZW50IiwicGFydG5lckFkZHJlc3MiLCJwYXJ0bmVyQWRkcmVzc0NvbXBsZW1lbnQiLCJwYXJ0bmVyUG9zdGFsQ29kZSIsIm1ha2UiLCJ1c2VySWQiLCJkYXRhQ29udHJhY3QiLCJhd3MiLCJzZXRUeXBlIiwiZ2VuZXJhdG9yTGFzdCIsInVuZGVmaW5lZCIsIkVycm9yRG9jeFBkZiIsImdlbmVyYXRlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzZXRCdWNrZXQiLCJidWNrZXQiLCJ0aGVuIiwic2V0RGVzdGluYXRpb25EaXIiLCJzZXRGaWxlIiwidXBsb2FkIiwiSlNPTiIsInN0cmluZ2lmeSIsInJlcyIsInBhcnNlIiwiY29udHJhY3RVcmwiLCJMb2NhdGlvbiIsInN0YXR1cyIsInNhdmUiLCJjYXRjaCIsImUiLCJyZWplY3QiLCJ2aWV3IiwiY2xpZW50SWQiLCJ1cGRhdGUiLCJpbnNlcnRTaWduYXR1cmUiLCJtYWtlRG9jdW1lbnQiLCJkYXRhUmV0dXJuIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7OztBQUNBLE1BQU1BLG1CQUFtQkMsUUFBUSxvQkFBUixDQUF6QjtBQUNBLE1BQU1DLE1BQU1ELFFBQVEsS0FBUixDQUFaOztBQUVBLE1BQU1FLFFBQU4sU0FBdUJDLDJCQUF2QixDQUF5QztBQUN4Q0MsYUFBWUMsSUFBWixFQUFrQkMsV0FBbEIsRUFBK0JDLFNBQS9CLEVBQTBDQyxZQUExQyxFQUF3RDtBQUN2RDtBQUNBLE9BQUtDLE9BQUwsR0FBZUYsU0FBZjtBQUNBLE9BQUtGLElBQUwsR0FBWUEsSUFBWjtBQUNBLE9BQUtHLFlBQUwsR0FBb0JBLFlBQXBCO0FBQ0EsT0FBS0UsY0FBTCxDQUFvQkosV0FBcEI7QUFDQTs7QUFFREssV0FBVUMsTUFBVixFQUFrQjtBQUNqQixPQUFLQSxNQUFMLEdBQWNBLE1BQWQ7QUFDQSxPQUFLSCxPQUFMLEdBQWUsS0FBS0EsT0FBTCxDQUFhRyxNQUFiLENBQWY7QUFDQTs7QUFFS0MsUUFBTixDQUFjQyxJQUFkLEVBQW9CO0FBQUE7O0FBRW5CLFNBQU1DLFVBQVUsTUFBTSx5QkFBTSwyQ0FBTixDQUF0Qjs7QUFFRSxPQUFJQyxjQUFjLE1BQU1ELFFBQVFFLElBQVIsRUFBeEI7O0FBR0EsT0FBR0gsS0FBS0ksT0FBUixFQUNBO0FBQ0MsWUFBUUosS0FBS0ksT0FBYjtBQUNDLFVBQUssc0JBQUw7QUFDQ0Ysb0JBQWNBLFlBQVlELE9BQVosQ0FBb0JJLElBQXBCLENBQXlCO0FBQUEsY0FBT0MsSUFBSUMsTUFBSixLQUFlLFNBQXRC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QUEsS0FQUCxFQVFFTixJQVJGLENBUU87QUFBQSxZQUFPSSxLQUFLRyxLQUFMLENBQVdELEdBQVgsQ0FBUDtBQUFBLEtBUlAsRUFTRU4sSUFURixDQVNPLGVBQU87QUFDWixTQUFJb0IsYUFBYSxFQUFqQjtBQUNBQSxnQkFBV1osV0FBWCxHQUF5QkYsSUFBSUcsUUFBN0I7QUFDQVcsZ0JBQVdWLE1BQVgsR0FBb0IsVUFBcEI7QUFDQSxZQUFPVSxVQUFQO0FBQ0EsS0FkRixFQWVFcEIsSUFmRixDQWVPO0FBQUEsWUFBTyxPQUFLaUIsTUFBTCxDQUFZWCxHQUFaLEVBQWlCakIsYUFBYXpELEVBQTlCLENBQVA7QUFBQSxLQWZQLEVBZ0JFZ0YsS0FoQkYsQ0FnQlEsYUFBSztBQUNYLFdBQU1DLENBQU47QUFDQSxLQWxCRixDQUREO0FBcUJBLElBbkNELENBbUNFLE9BQU9BLENBQVAsRUFBVTtBQUNYLFdBQU9qQixRQUFRa0IsTUFBUixDQUFlRCxDQUFmLENBQVA7QUFDQTtBQXRDa0Q7QUF1Q25EOztBQUVLTSxhQUFOLENBQW1COUIsWUFBbkIsRUFBaUM7QUFBQTs7QUFBQTtBQUNoQyxPQUFJQSxhQUFhaEIsVUFBYixLQUE0Qm9CLFNBQWhDLEVBQTJDO0FBQzFDLFdBQU8sTUFBTSxPQUFLdkIsUUFBTCxDQUFjbUIsWUFBZCxDQUFiO0FBQ0E7QUFDQSxJQUhELE1BR087QUFDTixXQUFPLE1BQU0sT0FBS3pHLE9BQUwsQ0FBYXlHLFlBQWIsQ0FBYjtBQUNBO0FBQ0E7QUFQK0I7QUFRaEM7QUEvU3VDOztBQWtUekNnQyxPQUFPQyxPQUFQLEdBQWlCLENBQUNsSixJQUFELEVBQU9DLFdBQVAsRUFBb0JHLE9BQXBCLEVBQTZCRCxZQUE3QixLQUNoQixJQUFJTixRQUFKLENBQWFHLElBQWIsRUFBbUJDLFdBQW5CLEVBQWdDRyxPQUFoQyxFQUF5Q0QsWUFBekMsQ0FERCIsImZpbGUiOiJDb250cmFjdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFcnJvckRvY3hQZGYgZnJvbSAnLi4vbGliL0Vycm9yRG9jeFBkZic7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBkYXRlRm9ybWF0IGZyb20gJy4uL2xpYi9kYXRlJztcbmltcG9ydCBiYXNlNjRJTUdCdWZmZXIgZnJvbSAnLi4vbGliL2Jhc2U2NElNR3RvQnVmZmVyJztcbmltcG9ydCBDb250cmFjdERlY29yYXRvciBmcm9tICcuLi9kZWNvcmF0b3JzL0NvbnRyYWN0RGVjb3JhdG9yJztcbmltcG9ydCBmZXRjaCBmcm9tICdub2RlLWZldGNoJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmNvbnN0IG51bWVyb1BvckV4dGVuc28gPSByZXF1aXJlKCdudW1lcm8tcG9yLWV4dGVuc28nKTtcbmNvbnN0IENQRiA9IHJlcXVpcmUoJ2NwZicpO1xuXG5jbGFzcyBDb250cmFjdCBleHRlbmRzIENvbnRyYWN0RGVjb3JhdG9yIHtcblx0Y29uc3RydWN0b3IoRG9jeCwgRGlnaXRhbERhdGEsIFMzU3RvcmFnZSwgUGRmR2VuZXJhdG9yKSB7XG5cdFx0c3VwZXIoKTtcblx0XHR0aGlzLlN0b3JhZ2UgPSBTM1N0b3JhZ2U7XG5cdFx0dGhpcy5Eb2N4ID0gRG9jeDtcblx0XHR0aGlzLlBkZkdlbmVyYXRvciA9IFBkZkdlbmVyYXRvcjtcblx0XHR0aGlzLnNldERpZ2l0YWxEYXRhKERpZ2l0YWxEYXRhKTtcblx0fVxuXG5cdHNldENvbmZpZyhjb25maWcpIHtcblx0XHR0aGlzLmNvbmZpZyA9IGNvbmZpZztcblx0XHR0aGlzLlN0b3JhZ2UgPSB0aGlzLlN0b3JhZ2UoY29uZmlnKTtcblx0fVxuXG5cdGFzeW5jIG1ha2VDUEYoZGF0YSkge1xuXHRcdFxuXHRcdGNvbnN0IGNvdGFjYW8gPSBhd2FpdCBmZXRjaCgnaHR0cDovL2ljb2lub21pYS5jb20uYnIvYXBpL0NvdGFjYW9DcnlwdG8nKTtcbiAgICBcbiAgICBsZXQgY290YWNhb0pzb24gPSBhd2FpdCBjb3RhY2FvLmpzb24oKTsgICAgXG5cblxuICAgIGlmKGRhdGEuY29pbl9pZClcbiAgICB7XG5cdCAgICBzd2l0Y2ggKGRhdGEuY29pbl9pZCkge1xuXHQgICAgXHRjYXNlIFwiLUxUSXNJX0k1QndTT2hGcEdzVUNcIjpcblx0ICAgIFx0XHRjb3RhY2FvSnNvbiA9IGNvdGFjYW9Kc29uLmNvdGFjYW8uZmluZChyb3cgPT4gcm93LkNvZGlnbyA9PT0gJ0xFQVhCUkwnKS5WYWxvcjtcblx0XHRcdFx0XHRkYXRhLnR5cGUgPSArZGF0YS50eXBlICsgMyA7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdCAgICBcdGNhc2UgXCItTDhseHZOMk1kMkJ0aExGak1ZcFwiOlxuXHQgICAgXHRcdGNvdGFjYW9Kc29uID0gY290YWNhb0pzb24uY290YWNhby5maW5kKHJvdyA9PiByb3cuQ29kaWdvID09PSAnQlRDQlJMJykuVmFsb3I7XG5cdCAgICBcdFx0YnJlYWs7XG5cdCAgICB9XG5cdCAgfVxuXG5cdCAgaWYoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGRhdGEuY2xpZW50V2FsbGV0KSA9PT0gJ1tvYmplY3QgQXJyYXldJylcblx0ICB7XG5cdCAgXHRsZXQgY2xpZW50V2FsbGV0QnlDb2luID0gZGF0YS5jbGllbnRXYWxsZXQuZmlsdGVyKGZ1bmN0aW9uKHJvdyl7XG5cdCAgICBcdGlmKHJvdy5jb2luID09IGRhdGEuY29pbl9pZClcblx0ICAgIFx0XHRyZXR1cm4gcm93XG5cdCAgICB9KVxuXHQgIFx0ZGF0YS5jbGllbnRXYWxsZXQgPSBjbGllbnRXYWxsZXRCeUNvaW5bMF0uZGF0YS5hZGRyZXNzXHRcdFxuXHQgIH1lbHNlIHtcblx0ICBcdGNvbnNvbGUubG9nKCdDV0FMTEVUIE7Dg08gw4kgVU0gQVJSQVknKVxuXHQgIH1cblxuXHQgIGlmKCFkYXRhLmFtb3VudE1vbmV5KVxuXHQgIHtcblx0ICBcdGNvbnNvbGUubG9nKCdUQU1PUyBBUVVJSUknKVxuXHQgIFx0Y29uc3QgY2FsY3VsYXRlVmFsdWUgPSAoKSA9PiB7XG5cdFx0XHRcdGlmIChcblx0XHRcdFx0XHR0eXBlb2YgcGFyc2VGbG9hdChkYXRhLmFtb3VudENyeXB0KSAhPT0gJ251bWJlcicgfHxcblx0XHRcdFx0XHRpc05hTihwYXJzZUZsb2F0KGRhdGEuYW1vdW50Q3J5cHQpKVxuXHRcdFx0XHQpXG5cdFx0XHRcdFx0dGhyb3cgXCJJdCdzIG5vdCBhIGZsb2F0IGFtb3VudCBPYmplY3QhXCI7XG5cblx0XHRcdFx0aWYgKFxuXHRcdFx0XHRcdHR5cGVvZiBwYXJzZUZsb2F0KGNvdGFjYW9Kc29uKSAhPT0gJ251bWJlcicgfHxcblx0XHRcdFx0XHRpc05hTihwYXJzZUZsb2F0KGNvdGFjYW9Kc29uKSlcblx0XHRcdFx0KVxuXHRcdFx0XHRcdHRocm93IFwiSXQncyBub3QgYSBmbG9hdCBtb25leSBPYmplY3RcIjtcblxuXHRcdFx0XHRjb25zdCBjYWxjID0gcGFyc2VGbG9hdChkYXRhLmFtb3VudENyeXB0KSAqIHBhcnNlRmxvYXQoY290YWNhb0pzb24pO1xuXG5cdFx0XHRcdHJldHVybiBwYXJzZUZsb2F0KGNhbGMpO1xuXHRcdFx0fTtcblxuXHRcdFx0Y29uc3QgdmFsID0gbnVtZXJvUG9yRXh0ZW5zby5wb3JFeHRlbnNvKFxuXHRcdFx0XHRjYWxjdWxhdGVWYWx1ZSgpLFxuXHRcdFx0XHRudW1lcm9Qb3JFeHRlbnNvLmVzdGlsby5tb25ldGFyaW9cblx0XHRcdCk7XG5cdFx0XHRjb25zdCBmb3JtYXRvID0ge1xuXHRcdFx0XHRtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IDIsXG5cdFx0XHRcdHN0eWxlOiAnY3VycmVuY3knLFxuXHRcdFx0XHRjdXJyZW5jeTogJ0JSTCdcblx0XHRcdH07XG5cdFx0XHRkYXRhLmFtb3VudE1vbmV5ID0gYCR7Y2FsY3VsYXRlVmFsdWUoKS50b0xvY2FsZVN0cmluZygncHQtQlInLCBmb3JtYXRvKX0gKCR7dmFsfSlgO1xuXHRcdFx0Y29uc29sZS5sb2coJ27Do28gdmVpbyBvIGFtb3VudCBtb25leScpXG5cdFx0XHRjb25zb2xlLmxvZyhkYXRhLmFtb3VudE1vbmV5KVxuXHRcdFx0Y29uc29sZS5sb2coJ1RBTU9TIEFRVUlJSScpXG5cdCAgfVxuXHRcdFxuXHRcdGlmKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChkYXRhLmNvaW5zKSA9PT0gJ1tvYmplY3QgQXJyYXldJylcblx0ICB7XG5cdCAgXHRkYXRhLmNvbnRyYWN0Q29pbiA9IGRhdGEuY29pbnNbMF07XG5cdCAgfWVsc2Uge1xuXHQgIFx0Y29uc29sZS5sb2coJ0NPSU4gTsODTyDDiSBVTSBBUlJBWScpO1xuXHQgIH1cblxuXHQgIGxldCBiYW5rTmFtZSA9IGRhdGEuYmFuay5uYW1lLnJlcGxhY2UoXCIjXCIsIFwiIFwiKTtcblx0ICBjb25zb2xlLmxvZyhiYW5rTmFtZSlcblx0ICBjb25zb2xlLmxvZyhkYXRhLmNvbnRyYWN0UG9yY2VudClcblx0ICBjb25zb2xlLmxvZyhkYXRhLmNvbnRyYWN0UG9yY2VudFRvdGFsKVxuXHQgIGNvbnNvbGUubG9nKGRhdGEuZHVyYXRpb24pXG5cblx0XHRjb25zdCBjb250cmFjdCA9IHtcblx0XHRcdGNvbnRyYWN0Q29pbjogZGF0YS5jb250cmFjdENvaW4sXG5cdFx0XHRpbnZlc3RtZW50SWQ6IGRhdGEuaWQsXG5cdFx0XHR0eXBlOiBkYXRhLnR5cGUsXG5cdFx0XHRkdXJhdGlvbjogZGF0YS5kdXJhdGlvbixcblx0XHRcdHBlbmFsdHlQb3JjZW50OiBkYXRhLnBlbmFsdHlQb3JjZW50IHx8IDAsXG5cdFx0XHRwZW5hbHR5QWR2OiBkYXRhLnBlbmFsdHlBZHYgfHwgMCxcblx0XHRcdGNsaWVudE5hbWU6IGRhdGEuY2xpZW50TmFtZSB8fCAnRGFuaWVsIFNpbHZhIE1pcmFuZGEnLFxuXHRcdFx0cHJvZHVjdE5hbWU6IGRhdGEucHJvZHVjdCB8fCAnUHJvZHV0byBkZSBUZXN0ZXMnLFxuXHRcdFx0bWFuYWdlck5hbWU6IGRhdGEubWFuYWdlck5hbWUgfHwgJ0RhbmllbCBTaWx2YSBNaXJhbmRhJyxcblx0XHRcdGNvbnRyYWN0TnVtYmVyOiBkYXRhLmNvbnRyYWN0TnVtYmVyIHx8ICdFeGVtcGxvJyxcblx0XHRcdGNvbnRyYWN0RW5kOiBkYXRhLmNvbnRyYWN0RW5kIHx8ICcwMC8wMC8wMDAwJyxcblx0XHRcdGNvbnRyYWN0VGF4ZTogZGF0YS5jb250cmFjdFRheGUgfHwgMCxcblx0XHRcdGNvbnRyYWN0VHJhZGU6IGRhdGEuY29udHJhY3RUcmFkZSB8fCAwLFxuXHRcdFx0YW1vdW50Q3J5cHQ6IGRhdGEuYW1vdW50Q3J5cHQgfHwgMCxcblx0XHRcdGNvbnRyYWN0UG9yY2VudDogZGF0YS5jb250cmFjdFBvcmNlbnQgfHwgMCxcblx0XHRcdGNvbnRyYWN0UG9yY2VudFRvdGFsOiBkYXRhLmNvbnRyYWN0UG9yY2VudFRvdGFsIHx8IDAsXG5cdFx0XHRiYW5rTmFtZTogYmFua05hbWUsXG5cdFx0XHRiYW5rVGl0dWxhcjogZGF0YS5iYW5rLnVzZXJOYW1lIHx8ICdCVEMgQmFuY28nLFxuXHRcdFx0YmFua0FnZW5jeTogZGF0YS5iYW5rLmFnZW5jeSB8fCAnMDAwMCcsXG5cdFx0XHRiYW5rQWNjb3VudDogZGF0YS5iYW5rLmFjY291bnQgfHwgJzAwMDAtMDAnLFxuXHRcdFx0YmFua0NvZGU6IGRhdGEuYmFuay5jb2RlIHx8ICcwMDAwLTAwJyxcblx0XHRcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuXHRcdFx0aW1hZ2U6IGJhc2U2NElNR0J1ZmZlcihkYXRhLmltYWdlKSxcblx0XHRcdHZwU2lnbmF0dXJlOlxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3Jyxcblx0XHRcdGNvbWVyY2lhbFNpZ25hdHVyZTpcblx0XHRcdFx0J2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBNycsXG5cdFx0XHRmaXJzdFJhbmRvbVNpZ25hdHVyZTpcblx0XHRcdFx0J2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBNycsXG5cdFx0XHRzZWNvbmRSYW5kb21TaWduYXR1cmU6XG5cdFx0XHRcdCdkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTcnLFxuXHRcdFx0YW1vdW50TW9uZXk6IGRhdGEuYW1vdW50TW9uZXksXG5cdFx0XHQuLi5kYXRlRm9ybWF0KCksXG5cdFx0XHRjbGllbnRDUEY6IGAke2RhdGEuY2xpZW50Q1BGID8gQ1BGLmZvcm1hdChkYXRhLmNsaWVudENQRikgOiAnJ31gLFxuXHRcdFx0ZGF0ZTogbW9tZW50KG5ldyBEYXRlKCkpLmZvcm1hdCgnREQvTU0vWVlZWScpLFxuXHRcdFx0Y2xpZW50V2FsbGV0OiBkYXRhLmNsaWVudFdhbGxldCB8fCAnMUNmVVlVVnNjMWdiOWNhQ0RRandUd1E4akRZM0IxWlJVMycsXG5cdFx0XHRjbGllbnRSZXN1bWU6XG5cdFx0XHRcdGAke2RhdGEuY2xpZW50TmFtZX0sIG5hdHVyYWwgZGUgJHtkYXRhLmNsaWVudE5hdGlvbmFsaXR5fSwgJHtcblx0XHRcdFx0XHRkYXRhLmNsaWVudENpdmlsU3RhdGVcblx0XHRcdFx0fSxcbiAgICAgICR7ZGF0YS5jbGllbnRPY2N1cGF0aW9ufSxcbiAgICAgIHBvcnRhZG9yIGRvIFJHIG7CuiAke2RhdGEuY2xpZW50Ukd9LCBpbnNjcml0byBubyBDUEYgc29iIG8gbsK6ICR7XG5cdFx0XHRcdFx0ZGF0YS5jbGllbnRDUEYgPyBDUEYuZm9ybWF0KGRhdGEuY2xpZW50Q1BGKSA6ICcnXG5cdFx0XHRcdH0sIHJlc2lkZW50ZSBlIFxuICAgICAgZG9taWNpbGlhZG8gYVxuICAgICAgJHtkYXRhLmNsaWVudFN0cmVldH1cbiAgICAgICR7ZGF0YS5jbGllbnRDb21wbGVtZW50IHx8ICcnfSwgQ0VQICR7ZGF0YS5jbGllbnRDRVB9LCAke1xuXHRcdFx0XHRcdGRhdGEuY2xpZW50Q2l0eVxuXHRcdFx0XHR9ICR7ZGF0YS5jbGllbnRTdGF0ZX1gIHx8ICcgJ1xuXHRcdH07XG5cblx0XHRyZXR1cm4gY29udHJhY3Q7XG5cdH1cblxuXHRhc3luYyBtYWtlQ05QSihkYXRhKSB7XG5cdCAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLm1ha2VDUEYoZGF0YSk7XG5cdCAgICByZXN1bHQuY2xpZW50TmFtZSA9IGRhdGEuc29jaWFsUmVhc29uXG5cdFx0Y29uc3QgY29udHJhY3QgPSB7XG5cdFx0XHQuLi5yZXN1bHQsXG5cdFx0XHRjbGllbnRSZXN1bWU6IGAke1xuXHRcdFx0XHRkYXRhLnNvY2lhbFJlYXNvblxuXHRcdFx0fSwgcGVzc29hIGp1csOtZGljYSBkZSBkaXJlaXRvIHByaXZhZG8sIGluc2NyaXRhIG5vIENOUEogbsK6ICR7XG5cdFx0XHRcdGRhdGEuY2xpZW50Q05QSlxuXHRcdFx0fSwgY29tIHNlZGUgbmEgJHtkYXRhLmNvbXBhbnlTdHJlZXR9JHtcblx0XHRcdFx0ZGF0YS5jb21wYW55Q29tcGxlbWVudCA/ICcgJyArIGRhdGEuY29tcGFueUNvbXBsZW1lbnQgOiAnJ1xuXHRcdFx0fSwgQ0VQICR7ZGF0YS5jb21wYW55Q0VQfSwgJHtkYXRhLmNvbXBhbnlDaXR5fSwgJHtcblx0XHRcdFx0ZGF0YS5jb21wYW55U3RhdGVcblx0XHRcdH0sIHJlcHJlc2VudGFkbyBwb3IgJHtkYXRhLnBhcnRuZXJDbGllbnROYW1lfSwgJHtkYXRhLnBhcnRuZXJDaXZpbFN0YXRlfSR7XG5cdFx0XHRcdGRhdGEucGFydG5lclByb2Zlc3Npb24gIT0gJycgPyAnLCAnICsgZGF0YS5wYXJ0bmVyUHJvZmVzc2lvbiA6ICcnXG5cdFx0XHR9LCBwb3J0YWRvciBkbyBSRyBuwrogJHtcblx0XHRcdFx0ZGF0YS5wYXJ0bmVyUGVyc29uYWxSZWdpc3RlclxuXHRcdFx0fSwgaW5zY3JpdG8gbm8gQ1BGIHNvYiBvIG7CuiAke0NQRi5mb3JtYXQoXG5cdFx0XHRcdGRhdGEucGFydG5lclBlcnNvbmFsRG9jdW1lbnRcblx0XHRcdCl9LCByZXNpZGVudGUgZSBkb21pY2lsaWFkbyBhICR7ZGF0YS5wYXJ0bmVyQWRkcmVzc30gJHtcblx0XHRcdFx0ZGF0YS5wYXJ0bmVyQWRkcmVzc0NvbXBsZW1lbnQgPyAnICcgKyBkYXRhLnBhcnRuZXJBZGRyZXNzQ29tcGxlbWVudCA6ICcnXG5cdFx0XHR9LCBDRVAgJHtkYXRhLnBhcnRuZXJQb3N0YWxDb2RlfWBcblx0XHR9O1xuXHRcdHJldHVybiBjb250cmFjdDtcblx0fVxuXG5cdGFzeW5jIG1ha2UodXNlcklkLCBkYXRhQ29udHJhY3QsIGNvbmZpZykge1xuXHRcdHRyeSB7XG5cdFx0XHRhd2FpdCB0aGlzLnNldENvbmZpZyhjb25maWcuYXdzKTtcblx0XHRcdGF3YWl0IHRoaXMuc2V0VHlwZShjb25maWcuY29udHJhY3QpO1xuXHRcdFx0ZGF0YUNvbnRyYWN0LmNvbnRyYWN0TnVtYmVyID0gYXdhaXQgdGhpcy5nZW5lcmF0b3JMYXN0KCk7XG5cdFx0XHRpZiAodGhpcy5jb25maWcgPT09IHVuZGVmaW5lZClcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yRG9jeFBkZignQ29uZmlndXJhw6fDo28gbsOjbyBpbmljaWFsaXphZGEnKTtcblx0XHRcdGxldCBkYXRhO1xuXHRcdFx0Ly8gbGV0IGZpbGU7XG5cblx0XHRcdGlmIChkYXRhQ29udHJhY3QuY2xpZW50Q05QSiAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdGRhdGEgPSBhd2FpdCB0aGlzLm1ha2VDTlBKKGRhdGFDb250cmFjdCk7XG5cdFx0XHRcdC8vIGZpbGUgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8uLi8uLi9hc3NldHMvZG9jRXguZG9jeCcpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0ZGF0YSA9IGF3YWl0IHRoaXMubWFrZUNQRihkYXRhQ29udHJhY3QpO1xuXHRcdFx0XHQvLyBmaWxlID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vLi4vLi4vYXNzZXRzL2RvY0V4LmRvY3gnKTtcblx0XHRcdH1cblxuXHRcdFx0YXdhaXQgdGhpcy5QZGZHZW5lcmF0b3IuZ2VuZXJhdGUoZGF0YSwgdXNlcklkLCBmYWxzZSk7XG5cdFx0XHRyZXR1cm4gKFxuXHRcdFx0XHRQcm9taXNlLnJlc29sdmUodGhpcy5TdG9yYWdlLnNldEJ1Y2tldChjb25maWcuYnVja2V0KSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RGVzdGluYXRpb25EaXIoJ2NvbnRyYWN0cycpKVxuXHRcdFx0XHRcdC8vIC50aGVuKCgpID0+IHRoaXMuRG9jeC5tYWtlQ29udHJhY3QoZmlsZSwgZGF0YSkpXG5cdFx0XHRcdFx0Ly8gLnRoZW4oKCkgPT4gdGhpcy5QZGZHZW5lcmF0b3IuZ2VuZXJhdGUoZGF0YSkpXG5cdFx0XHRcdFx0Ly8gLnRoZW4ocmVzID0+IEJ1ZmZlci5mcm9tKHJlcywgJ2Jhc2U2NCcpKVxuXHRcdFx0XHRcdC8vIC50aGVuKHJlcyA9PiB0aGlzLlN0b3JhZ2Uuc2V0RmlsZUJ1ZmZlcih7IGRhdGE6IHJlcywgdHlwZTogJ3BkZicgfSkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldEZpbGUoYC4vJHt1c2VySWR9LnBkZmApKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS51cGxvYWQoKSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gSlNPTi5zdHJpbmdpZnkocmVzKSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gSlNPTi5wYXJzZShyZXMpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PlxuXHRcdFx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKGRhdGEpLnRoZW4ocmVzdWx0ID0+ICh7XG5cdFx0XHRcdFx0XHRcdC4uLnJlc3VsdCxcblx0XHRcdFx0XHRcdFx0Y29udHJhY3RVcmw6IHJlcy5Mb2NhdGlvbixcblx0XHRcdFx0XHRcdFx0c3RhdHVzOiAnQXRpdm8nXG5cdFx0XHRcdFx0XHR9KSlcblx0XHRcdFx0XHQpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IHRoaXMuc2F2ZSh1c2VySWQsIHJlcykpXG5cdFx0XHRcdFx0LmNhdGNoKGUgPT4ge1xuXHRcdFx0XHRcdFx0dGhyb3cgZTtcblx0XHRcdFx0XHR9KVxuXHRcdFx0KTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG5cdFx0fVxuXHR9XG5cblx0YXN5bmMgdmlldyhkYXRhQ29udHJhY3QsIGNvbmZpZykge1xuXHRcdC8vY29uc29sZS5sb2coZGF0YUNvbnRyYWN0KVxuXG5cdFx0dHJ5IHtcblx0XHRcdGF3YWl0IHRoaXMuc2V0Q29uZmlnKGNvbmZpZy5hd3MpO1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRUeXBlKGNvbmZpZy5jb250cmFjdCk7XG5cdFx0XHRpZiAodGhpcy5jb25maWcgPT09IHVuZGVmaW5lZClcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yRG9jeFBkZignQ29uZmlndXJhw6fDo28gbsOjbyBpbmljaWFsaXphZGEnKTtcblxuXHRcdFx0Y29uc3QgZGF0YSA9IGRhdGFDb250cmFjdDtcblxuXHRcdFx0YXdhaXQgdGhpcy5QZGZHZW5lcmF0b3IuZ2VuZXJhdGUoZGF0YSwgZGF0YS5jbGllbnRJZCwgZmFsc2UpO1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLlN0b3JhZ2Uuc2V0QnVja2V0KGNvbmZpZy5idWNrZXQpKVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RGVzdGluYXRpb25EaXIoJ2NvbnRyYWN0cycpKVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RmlsZShgLi8ke2RhdGEuY2xpZW50SWR9LnBkZmApKVxuXHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2UudXBsb2FkKCkpXG5cdFx0XHRcdC50aGVuKHJlcyA9PlxuXHRcdFx0XHRcdFByb21pc2UucmVzb2x2ZShkYXRhKS50aGVuKHJlc3VsdCA9PiAoe1xuXHRcdFx0XHRcdFx0Li4ucmVzdWx0LFxuXHRcdFx0XHRcdFx0Y29udHJhY3RVcmw6IHJlcy5Mb2NhdGlvbixcblx0XHRcdFx0XHRcdHN0YXR1czogJ0F0aXZvJ1xuXHRcdFx0XHRcdH0pKVxuXHRcdFx0XHQpXG5cdFx0XHRcdC50aGVuKHJlcyA9PiB0aGlzLnVwZGF0ZShyZXMpKVxuXHRcdFx0XHQuY2F0Y2goZSA9PiB7XG5cdFx0XHRcdFx0dGhyb3cgZTtcblx0XHRcdFx0fSk7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGUpO1xuXHRcdH1cblx0fVxuXG5cdGFzeW5jIGluc2VydFNpZ25hdHVyZSh1c2VySWQsIGRhdGFDb250cmFjdCwgY29uZmlnKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGF3YWl0IHRoaXMuc2V0Q29uZmlnKGNvbmZpZy5hd3MpO1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRUeXBlKGNvbmZpZy5jb250cmFjdCk7XG5cdFx0XHRpZiAodGhpcy5jb25maWcgPT09IHVuZGVmaW5lZClcblx0XHRcdFx0dGhyb3cgbmV3IEVycm9yRG9jeFBkZignQ29uZmlndXJhw6fDo28gbsOjbyBpbmljaWFsaXphZGEnKTtcblx0XHRcdFxuXHRcdFx0Y29uc3QgZGF0YSA9IGF3YWl0IHRoaXMubWFrZURvY3VtZW50KGRhdGFDb250cmFjdC5kYXRhKTtcblxuXHRcdFx0Ly8gZGF0YS5pbWFnZSA9IGRhdGFDb250cmFjdC5kYXRhLmltYWdlO1xuXG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQVFVSSBURU0gUVVFIFRFUiBUT0RPUyBPUyBEQURPUyBETyBET0NVTUVOVE8gQ0VSVElOSE9PT09PT08nKVxuXHRcdFx0Ly8gY29uc29sZS5sb2coZGF0YSlcblxuXHRcdFx0YXdhaXQgdGhpcy5QZGZHZW5lcmF0b3IuZ2VuZXJhdGUoZGF0YSwgdXNlcklkLCB0cnVlKTtcblx0XHRcdHJldHVybiAoXG5cdFx0XHRcdFByb21pc2UucmVzb2x2ZSh0aGlzLlN0b3JhZ2Uuc2V0QnVja2V0KGNvbmZpZy5idWNrZXQpKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXREZXN0aW5hdGlvbkRpcignY29udHJhY3RzJykpXG5cdFx0XHRcdFx0Ly8udGhlbigoKSA9PiB0aGlzLkRvY3gubWFrZUNvbnRyYWN0KGZpbGUsIGRhdGFDb250cmFjdC5kYXRhKSlcblx0XHRcdFx0XHQvLy50aGVuKHJlcyA9PiBCdWZmZXIuZnJvbShyZXMsICdiYXNlNjQnKSlcblx0XHRcdFx0XHQvLy50aGVuKHJlcyA9PiB0aGlzLlN0b3JhZ2Uuc2V0RmlsZUJ1ZmZlcih7IGRhdGE6IHJlcywgdHlwZTogJ2RvY3gnIH0pKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlKCcuLycgKyB1c2VySWQgKyAnLnBkZicpKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS51cGxvYWQoKSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gSlNPTi5zdHJpbmdpZnkocmVzKSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gSlNPTi5wYXJzZShyZXMpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiB7XG5cdFx0XHRcdFx0XHRsZXQgZGF0YVJldHVybiA9IHt9XG5cdFx0XHRcdFx0XHRkYXRhUmV0dXJuLmNvbnRyYWN0VXJsID0gcmVzLkxvY2F0aW9uO1xuXHRcdFx0XHRcdFx0ZGF0YVJldHVybi5zdGF0dXMgPSAnQXNzaW5hZG8nO1xuXHRcdFx0XHRcdFx0cmV0dXJuIGRhdGFSZXR1cm47XG5cdFx0XHRcdFx0fSlcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gdGhpcy51cGRhdGUocmVzLCBkYXRhQ29udHJhY3QuaWQpKVxuXHRcdFx0XHRcdC5jYXRjaChlID0+IHtcblx0XHRcdFx0XHRcdHRocm93IGU7XG5cdFx0XHRcdFx0fSlcblx0XHRcdCk7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGUpO1xuXHRcdH1cblx0fVxuXG5cdGFzeW5jIG1ha2VEb2N1bWVudChkYXRhQ29udHJhY3QpIHtcblx0XHRpZiAoZGF0YUNvbnRyYWN0LmNsaWVudENOUEogIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0cmV0dXJuIGF3YWl0IHRoaXMubWFrZUNOUEooZGF0YUNvbnRyYWN0KTtcblx0XHRcdC8vZmlsZSA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLy4uLy4uL2Fzc2V0cy9kb2NFeC5kb2N4Jyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBhd2FpdCB0aGlzLm1ha2VDUEYoZGF0YUNvbnRyYWN0KTtcblx0XHRcdC8vZmlsZSA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLy4uLy4uL2Fzc2V0cy9kb2NFeC5kb2N4Jyk7XG5cdFx0fVxuXHR9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gKERvY3gsIERpZ2l0YWxEYXRhLCBTdG9yYWdlLCBQZGZHZW5lcmF0b3IpID0+XG5cdG5ldyBDb250cmFjdChEb2N4LCBEaWdpdGFsRGF0YSwgU3RvcmFnZSwgUGRmR2VuZXJhdG9yKTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb21haW4vQ29udHJhY3QuanMiXSwibmFtZXMiOlsibnVtZXJvUG9yRXh0ZW5zbyIsInJlcXVpcmUiLCJDUEYiLCJDb250cmFjdCIsIkNvbnRyYWN0RGVjb3JhdG9yIiwiY29uc3RydWN0b3IiLCJEb2N4IiwiRGlnaXRhbERhdGEiLCJTM1N0b3JhZ2UiLCJQZGZHZW5lcmF0b3IiLCJTdG9yYWdlIiwic2V0RGlnaXRhbERhdGEiLCJzZXRDb25maWciLCJjb25maWciLCJtYWtlQ1BGIiwiZGF0YSIsImNvdGFjYW8iLCJjb3RhY2FvSnNvbiIsImpzb24iLCJjb2luX2lkIiwiZmluZCIsInJvdyIsIkNvZGlnbyIsIlZhbG9yIiwidHlwZSIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsImNsaWVudFdhbGxldCIsImNsaWVudFdhbGxldEJ5Q29pbiIsImZpbHRlciIsImNvaW4iLCJhZGRyZXNzIiwiY29uc29sZSIsImxvZyIsImFtb3VudE1vbmV5IiwiY2FsY3VsYXRlVmFsdWUiLCJwYXJzZUZsb2F0IiwiYW1vdW50Q3J5cHQiLCJpc05hTiIsImNhbGMiLCJ2YWwiLCJwb3JFeHRlbnNvIiwiZXN0aWxvIiwibW9uZXRhcmlvIiwiZm9ybWF0byIsIm1pbmltdW1GcmFjdGlvbkRpZ2l0cyIsInN0eWxlIiwiY3VycmVuY3kiLCJ0b0xvY2FsZVN0cmluZyIsImNvaW5zIiwiY29udHJhY3RDb2luIiwiYmFua05hbWUiLCJiYW5rIiwibmFtZSIsInJlcGxhY2UiLCJjb250cmFjdCIsImludmVzdG1lbnRJZCIsImlkIiwiZHVyYXRpb24iLCJwZW5hbHR5UG9yY2VudCIsInBlbmFsdHlBZHYiLCJjbGllbnROYW1lIiwicHJvZHVjdE5hbWUiLCJwcm9kdWN0IiwibWFuYWdlck5hbWUiLCJjb250cmFjdE51bWJlciIsImNvbnRyYWN0RW5kIiwiY29udHJhY3RUYXhlIiwiY29udHJhY3RUcmFkZSIsImNvbnRyYWN0UG9yY2VudCIsImNvbnRyYWN0UG9yY2VudFRvdGFsIiwiYmFua1RpdHVsYXIiLCJ1c2VyTmFtZSIsImJhbmtBZ2VuY3kiLCJhZ2VuY3kiLCJiYW5rQWNjb3VudCIsImFjY291bnQiLCJiYW5rQ29kZSIsImNvZGUiLCJpbWFnZSIsInZwU2lnbmF0dXJlIiwiY29tZXJjaWFsU2lnbmF0dXJlIiwiZmlyc3RSYW5kb21TaWduYXR1cmUiLCJzZWNvbmRSYW5kb21TaWduYXR1cmUiLCJjbGllbnRDUEYiLCJmb3JtYXQiLCJkYXRlIiwiRGF0ZSIsImNsaWVudFJlc3VtZSIsImNsaWVudE5hdGlvbmFsaXR5IiwiY2xpZW50Q2l2aWxTdGF0ZSIsImNsaWVudE9jY3VwYXRpb24iLCJjbGllbnRSRyIsImNsaWVudFN0cmVldCIsImNsaWVudENvbXBsZW1lbnQiLCJjbGllbnRDRVAiLCJjbGllbnRDaXR5IiwiY2xpZW50U3RhdGUiLCJtYWtlQ05QSiIsInJlc3VsdCIsInNvY2lhbFJlYXNvbiIsImNsaWVudENOUEoiLCJjb21wYW55U3RyZWV0IiwiY29tcGFueUNvbXBsZW1lbnQiLCJjb21wYW55Q0VQIiwiY29tcGFueUNpdHkiLCJjb21wYW55U3RhdGUiLCJwYXJ0bmVyQ2xpZW50TmFtZSIsInBhcnRuZXJDaXZpbFN0YXRlIiwicGFydG5lclByb2Zlc3Npb24iLCJwYXJ0bmVyUGVyc29uYWxSZWdpc3RlciIsInBhcnRuZXJQZXJzb25hbERvY3VtZW50IiwicGFydG5lckFkZHJlc3MiLCJwYXJ0bmVyQWRkcmVzc0NvbXBsZW1lbnQiLCJwYXJ0bmVyUG9zdGFsQ29kZSIsIm1ha2UiLCJ1c2VySWQiLCJkYXRhQ29udHJhY3QiLCJhd3MiLCJzZXRUeXBlIiwiZ2VuZXJhdG9yTGFzdCIsInVuZGVmaW5lZCIsIkVycm9yRG9jeFBkZiIsImdlbmVyYXRlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzZXRCdWNrZXQiLCJidWNrZXQiLCJ0aGVuIiwic2V0RGVzdGluYXRpb25EaXIiLCJzZXRGaWxlIiwidXBsb2FkIiwiSlNPTiIsInN0cmluZ2lmeSIsInJlcyIsInBhcnNlIiwiY29udHJhY3RVcmwiLCJMb2NhdGlvbiIsInN0YXR1cyIsInNhdmUiLCJjYXRjaCIsImUiLCJyZWplY3QiLCJ2aWV3IiwiY2xpZW50SWQiLCJ1cGRhdGUiLCJpbnNlcnRTaWduYXR1cmUiLCJtYWtlRG9jdW1lbnQiLCJkYXRhUmV0dXJuIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7OztBQUNBLE1BQU1BLG1CQUFtQkMsUUFBUSxvQkFBUixDQUF6QjtBQUNBLE1BQU1DLE1BQU1ELFFBQVEsS0FBUixDQUFaOztBQUVBLE1BQU1FLFFBQU4sU0FBdUJDLDJCQUF2QixDQUF5QztBQUN4Q0MsYUFBWUMsSUFBWixFQUFrQkMsV0FBbEIsRUFBK0JDLFNBQS9CLEVBQTBDQyxZQUExQyxFQUF3RDtBQUN2RDtBQUNBLE9BQUtDLE9BQUwsR0FBZUYsU0FBZjtBQUNBLE9BQUtGLElBQUwsR0FBWUEsSUFBWjtBQUNBLE9BQUtHLFlBQUwsR0FBb0JBLFlBQXBCO0FBQ0EsT0FBS0UsY0FBTCxDQUFvQkosV0FBcEI7QUFDQTs7QUFFREssV0FBVUMsTUFBVixFQUFrQjtBQUNqQixPQUFLQSxNQUFMLEdBQWNBLE1BQWQ7QUFDQSxPQUFLSCxPQUFMLEdBQWUsS0FBS0EsT0FBTCxDQUFhRyxNQUFiLENBQWY7QUFDQTs7QUFFS0MsUUFBTixDQUFjQyxJQUFkLEVBQW9CO0FBQUE7O0FBRW5CLFNBQU1DLFVBQVUsTUFBTSx5QkFBTSwyQ0FBTixDQUF0Qjs7QUFFRSxPQUFJQyxjQUFjLE1BQU1ELFFBQVFFLElBQVIsRUFBeEI7O0FBR0EsT0FBR0gsS0FBS0ksT0FBUixFQUNBO0FBQ0MsWUFBUUosS0FBS0ksT0FBYjtBQUNDLFVBQUssc0JBQUw7QUFDQ0Ysb0JBQWNBLFlBQVlELE9BQVosQ0FBb0JJLElBQXBCLENBQXlCO0FBQUEsY0FBT0MsSUFBSUMsTUFBSixLQUFlLFNBQXRC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UUFBN0I7QUFDQVcsZ0JBQVdWLE1BQVgsR0FBb0IsVUFBcEI7QUFDQSxZQUFPVSxVQUFQO0FBQ0EsS0FkRixFQWVFcEIsSUFmRixDQWVPO0FBQUEsWUFBTyxPQUFLaUIsTUFBTCxDQUFZWCxHQUFaLEVBQWlCakIsYUFBYTVELEVBQTlCLENBQVA7QUFBQSxLQWZQLEVBZ0JFbUYsS0FoQkYsQ0FnQlEsYUFBSztBQUNYLFdBQU1DLENBQU47QUFDQSxLQWxCRixDQUREO0FBcUJBLElBbkNELENBbUNFLE9BQU9BLENBQVAsRUFBVTtBQUNYLFdBQU9qQixRQUFRa0IsTUFBUixDQUFlRCxDQUFmLENBQVA7QUFDQTtBQXRDa0Q7QUF1Q25EOztBQUVLTSxhQUFOLENBQW1COUIsWUFBbkIsRUFBaUM7QUFBQTs7QUFBQTtBQUNoQyxPQUFJQSxhQUFhaEIsVUFBYixLQUE0Qm9CLFNBQWhDLEVBQTJDO0FBQzFDLFdBQU8sTUFBTSxPQUFLdkIsUUFBTCxDQUFjbUIsWUFBZCxDQUFiO0FBQ0E7QUFDQSxJQUhELE1BR087QUFDTixXQUFPLE1BQU0sT0FBS3pHLE9BQUwsQ0FBYXlHLFlBQWIsQ0FBYjtBQUNBO0FBQ0E7QUFQK0I7QUFRaEM7QUFwVHVDOztBQXVUekNnQyxPQUFPQyxPQUFQLEdBQWlCLENBQUNsSixJQUFELEVBQU9DLFdBQVAsRUFBb0JHLE9BQXBCLEVBQTZCRCxZQUE3QixLQUNoQixJQUFJTixRQUFKLENBQWFHLElBQWIsRUFBbUJDLFdBQW5CLEVBQWdDRyxPQUFoQyxFQUF5Q0QsWUFBekMsQ0FERCIsImZpbGUiOiJDb250cmFjdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFcnJvckRvY3hQZGYgZnJvbSAnLi4vbGliL0Vycm9yRG9jeFBkZic7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBkYXRlRm9ybWF0IGZyb20gJy4uL2xpYi9kYXRlJztcbmltcG9ydCBiYXNlNjRJTUdCdWZmZXIgZnJvbSAnLi4vbGliL2Jhc2U2NElNR3RvQnVmZmVyJztcbmltcG9ydCBDb250cmFjdERlY29yYXRvciBmcm9tICcuLi9kZWNvcmF0b3JzL0NvbnRyYWN0RGVjb3JhdG9yJztcbmltcG9ydCBmZXRjaCBmcm9tICdub2RlLWZldGNoJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmNvbnN0IG51bWVyb1BvckV4dGVuc28gPSByZXF1aXJlKCdudW1lcm8tcG9yLWV4dGVuc28nKTtcbmNvbnN0IENQRiA9IHJlcXVpcmUoJ2NwZicpO1xuXG5jbGFzcyBDb250cmFjdCBleHRlbmRzIENvbnRyYWN0RGVjb3JhdG9yIHtcblx0Y29uc3RydWN0b3IoRG9jeCwgRGlnaXRhbERhdGEsIFMzU3RvcmFnZSwgUGRmR2VuZXJhdG9yKSB7XG5cdFx0c3VwZXIoKTtcblx0XHR0aGlzLlN0b3JhZ2UgPSBTM1N0b3JhZ2U7XG5cdFx0dGhpcy5Eb2N4ID0gRG9jeDtcblx0XHR0aGlzLlBkZkdlbmVyYXRvciA9IFBkZkdlbmVyYXRvcjtcblx0XHR0aGlzLnNldERpZ2l0YWxEYXRhKERpZ2l0YWxEYXRhKTtcblx0fVxuXG5cdHNldENvbmZpZyhjb25maWcpIHtcblx0XHR0aGlzLmNvbmZpZyA9IGNvbmZpZztcblx0XHR0aGlzLlN0b3JhZ2UgPSB0aGlzLlN0b3JhZ2UoY29uZmlnKTtcblx0fVxuXG5cdGFzeW5jIG1ha2VDUEYoZGF0YSkge1xuXHRcdFxuXHRcdGNvbnN0IGNvdGFjYW8gPSBhd2FpdCBmZXRjaCgnaHR0cDovL2ljb2lub21pYS5jb20uYnIvYXBpL0NvdGFjYW9DcnlwdG8nKTtcbiAgICBcbiAgICBsZXQgY290YWNhb0pzb24gPSBhd2FpdCBjb3RhY2FvLmpzb24oKTsgICAgXG5cblxuICAgIGlmKGRhdGEuY29pbl9pZClcbiAgICB7XG5cdCAgICBzd2l0Y2ggKGRhdGEuY29pbl9pZCkge1xuXHQgICAgXHRjYXNlIFwiLUxUSXNJX0k1QndTT2hGcEdzVUNcIjpcblx0ICAgIFx0XHRjb3RhY2FvSnNvbiA9IGNvdGFjYW9Kc29uLmNvdGFjYW8uZmluZChyb3cgPT4gcm93LkNvZGlnbyA9PT0gJ0xFQVhCUkwnKS5WYWxvcjtcblx0XHRcdFx0XHRkYXRhLnR5cGUgPSArZGF0YS50eXBlICsgMyA7XG5cdFx0XHRcdFx0aWYoZGF0YS50eXBlID09IDkpXG5cdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0ZGF0YS50eXBlID0gNlxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRicmVhaztcblx0ICAgIFx0Y2FzZSBcIi1MOGx4dk4yTWQyQnRoTEZqTVlwXCI6XG5cdCAgICBcdFx0Y290YWNhb0pzb24gPSBjb3RhY2FvSnNvbi5jb3RhY2FvLmZpbmQocm93ID0+IHJvdy5Db2RpZ28gPT09ICdCVENCUkwnKS5WYWxvcjtcblx0ICAgIFx0XHRicmVhaztcblx0ICAgIH1cblx0ICB9XG5cblx0ICBpZihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZGF0YS5jbGllbnRXYWxsZXQpID09PSAnW29iamVjdCBBcnJheV0nKVxuXHQgIHtcblx0ICBcdGxldCBjbGllbnRXYWxsZXRCeUNvaW4gPSBkYXRhLmNsaWVudFdhbGxldC5maWx0ZXIoZnVuY3Rpb24ocm93KXtcblx0ICAgIFx0aWYocm93LmNvaW4gPT0gZGF0YS5jb2luX2lkKVxuXHQgICAgXHRcdHJldHVybiByb3dcblx0ICAgIH0pXG5cdCAgXHRkYXRhLmNsaWVudFdhbGxldCA9IGNsaWVudFdhbGxldEJ5Q29pblswXS5kYXRhLmFkZHJlc3NcdFx0XG5cdCAgfWVsc2Uge1xuXHQgIFx0Y29uc29sZS5sb2coJ0NXQUxMRVQgTsODTyDDiSBVTSBBUlJBWScpXG5cdCAgfVxuXG5cdCAgaWYoIWRhdGEuYW1vdW50TW9uZXkpXG5cdCAge1xuXHQgIFx0Ly9jb25zb2xlLmxvZygnVEFNT1MgQVFVSUlJJylcblx0ICBcdGNvbnN0IGNhbGN1bGF0ZVZhbHVlID0gKCkgPT4ge1xuXHRcdFx0XHRpZiAoXG5cdFx0XHRcdFx0dHlwZW9mIHBhcnNlRmxvYXQoZGF0YS5hbW91bnRDcnlwdCkgIT09ICdudW1iZXInIHx8XG5cdFx0XHRcdFx0aXNOYU4ocGFyc2VGbG9hdChkYXRhLmFtb3VudENyeXB0KSlcblx0XHRcdFx0KVxuXHRcdFx0XHRcdHRocm93IFwiSXQncyBub3QgYSBmbG9hdCBhbW91bnQgT2JqZWN0IVwiO1xuXG5cdFx0XHRcdGlmIChcblx0XHRcdFx0XHR0eXBlb2YgcGFyc2VGbG9hdChjb3RhY2FvSnNvbikgIT09ICdudW1iZXInIHx8XG5cdFx0XHRcdFx0aXNOYU4ocGFyc2VGbG9hdChjb3RhY2FvSnNvbikpXG5cdFx0XHRcdClcblx0XHRcdFx0XHR0aHJvdyBcIkl0J3Mgbm90IGEgZmxvYXQgbW9uZXkgT2JqZWN0XCI7XG5cblx0XHRcdFx0Y29uc3QgY2FsYyA9IHBhcnNlRmxvYXQoZGF0YS5hbW91bnRDcnlwdCkgKiBwYXJzZUZsb2F0KGNvdGFjYW9Kc29uKTtcblxuXHRcdFx0XHRyZXR1cm4gcGFyc2VGbG9hdChjYWxjKTtcblx0XHRcdH07XG5cblx0XHRcdGNvbnN0IHZhbCA9IG51bWVyb1BvckV4dGVuc28ucG9yRXh0ZW5zbyhcblx0XHRcdFx0Y2FsY3VsYXRlVmFsdWUoKSxcblx0XHRcdFx0bnVtZXJvUG9yRXh0ZW5zby5lc3RpbG8ubW9uZXRhcmlvXG5cdFx0XHQpO1xuXHRcdFx0Y29uc3QgZm9ybWF0byA9IHtcblx0XHRcdFx0bWluaW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuXHRcdFx0XHRzdHlsZTogJ2N1cnJlbmN5Jyxcblx0XHRcdFx0Y3VycmVuY3k6ICdCUkwnXG5cdFx0XHR9O1xuXHRcdFx0ZGF0YS5hbW91bnRNb25leSA9IGAke2NhbGN1bGF0ZVZhbHVlKCkudG9Mb2NhbGVTdHJpbmcoJ3B0LUJSJywgZm9ybWF0byl9ICgke3ZhbH0pYDtcblx0XHRcdC8vIGNvbnNvbGUubG9nKCduw6NvIHZlaW8gbyBhbW91bnQgbW9uZXknKVxuXHRcdFx0Ly8gY29uc29sZS5sb2coZGF0YS5hbW91bnRNb25leSlcblx0XHRcdC8vIGNvbnNvbGUubG9nKCdUQU1PUyBBUVVJSUknKVxuXHRcdFx0Ly8gY29uc29sZS5sb2coJ1ZJWEkgVkFJIFZFTkRPJylcblx0ICB9XG5cdFx0XG5cdFx0aWYoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGRhdGEuY29pbnMpID09PSAnW29iamVjdCBBcnJheV0nKVxuXHQgIHtcblx0ICBcdGRhdGEuY29udHJhY3RDb2luID0gZGF0YS5jb2luc1swXTtcblx0ICB9ZWxzZSB7XG5cdCAgXHRjb25zb2xlLmxvZygnQ09JTiBOw4NPIMOJIFVNIEFSUkFZJyk7XG5cdCAgfVxuXG5cdCAgbGV0IGJhbmtOYW1lID0gZGF0YS5iYW5rLm5hbWUucmVwbGFjZShcIiNcIiwgXCIgXCIpO1xuXHQgIC8vIGNvbnNvbGUubG9nKGJhbmtOYW1lKVxuXHQgIC8vIGNvbnNvbGUubG9nKGRhdGEuY29udHJhY3RQb3JjZW50KVxuXHQgIC8vIGNvbnNvbGUubG9nKGRhdGEuY29udHJhY3RQb3JjZW50VG90YWwpXG5cdCAgLy8gY29uc29sZS5sb2coZGF0YS5kdXJhdGlvbilcblxuXHRcdGNvbnN0IGNvbnRyYWN0ID0ge1xuXHRcdFx0Y29udHJhY3RDb2luOiBkYXRhLmNvbnRyYWN0Q29pbixcblx0XHRcdGludmVzdG1lbnRJZDogZGF0YS5pZCxcblx0XHRcdHR5cGU6IGRhdGEudHlwZSxcblx0XHRcdGR1cmF0aW9uOiBkYXRhLmR1cmF0aW9uLFxuXHRcdFx0cGVuYWx0eVBvcmNlbnQ6IGRhdGEucGVuYWx0eVBvcmNlbnQgfHwgMCxcblx0XHRcdHBlbmFsdHlBZHY6IGRhdGEucGVuYWx0eUFkdiB8fCAwLFxuXHRcdFx0Y2xpZW50TmFtZTogZGF0YS5jbGllbnROYW1lIHx8ICdEYW5pZWwgU2lsdmEgTWlyYW5kYScsXG5cdFx0XHRwcm9kdWN0TmFtZTogZGF0YS5wcm9kdWN0IHx8ICdQcm9kdXRvIGRlIFRlc3RlcycsXG5cdFx0XHRtYW5hZ2VyTmFtZTogZGF0YS5tYW5hZ2VyTmFtZSB8fCAnRGFuaWVsIFNpbHZhIE1pcmFuZGEnLFxuXHRcdFx0Y29udHJhY3ROdW1iZXI6IGRhdGEuY29udHJhY3ROdW1iZXIgfHwgJ0V4ZW1wbG8nLFxuXHRcdFx0Y29udHJhY3RFbmQ6IGRhdGEuY29udHJhY3RFbmQgfHwgJzAwLzAwLzAwMDAnLFxuXHRcdFx0Y29udHJhY3RUYXhlOiBkYXRhLmNvbnRyYWN0VGF4ZSB8fCAwLFxuXHRcdFx0Y29udHJhY3RUcmFkZTogZGF0YS5jb250cmFjdFRyYWRlIHx8IDAsXG5cdFx0XHRhbW91bnRDcnlwdDogZGF0YS5hbW91bnRDcnlwdCB8fCAwLFxuXHRcdFx0Y29udHJhY3RQb3JjZW50OiBkYXRhLmNvbnRyYWN0UG9yY2VudCB8fCAwLFxuXHRcdFx0Y29udHJhY3RQb3JjZW50VG90YWw6IGRhdGEuY29udHJhY3RQb3JjZW50VG90YWwgfHwgMCxcblx0XHRcdGJhbmtOYW1lOiBiYW5rTmFtZSxcblx0XHRcdGJhbmtUaXR1bGFyOiBkYXRhLmJhbmsudXNlck5hbWUgfHwgJ0JUQyBCYW5jbycsXG5cdFx0XHRiYW5rQWdlbmN5OiBkYXRhLmJhbmsuYWdlbmN5IHx8ICcwMDAwJyxcblx0XHRcdGJhbmtBY2NvdW50OiBkYXRhLmJhbmsuYWNjb3VudCB8fCAnMDAwMC0wMCcsXG5cdFx0XHRiYW5rQ29kZTogZGF0YS5iYW5rLmNvZGUgfHwgJzAwMDAtMDAnLFxuXHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG5cdFx0XHRpbWFnZTogYmFzZTY0SU1HQnVmZmVyKGRhdGEuaW1hZ2UpLFxuXHRcdFx0dnBTaWduYXR1cmU6XG5cdFx0XHRcdCdkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTcnLFxuXHRcdFx0Y29tZXJjaWFsU2lnbmF0dXJlOlxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3Jyxcblx0XHRcdGZpcnN0UmFuZG9tU2lnbmF0dXJlOlxuXHRcdFx0XHQnZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3Jyxcblx0XHRcdHNlY29uZFJhbmRvbVNpZ25hdHVyZTpcblx0XHRcdFx0J2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBNycsXG5cdFx0XHRhbW91bnRNb25leTogZGF0YS5hbW91bnRNb25leSxcblx0XHRcdC4uLmRhdGVGb3JtYXQoKSxcblx0XHRcdGNsaWVudENQRjogYCR7ZGF0YS5jbGllbnRDUEYgPyBDUEYuZm9ybWF0KGRhdGEuY2xpZW50Q1BGKSA6ICcnfWAsXG5cdFx0XHRkYXRlOiBtb21lbnQobmV3IERhdGUoKSkuZm9ybWF0KCdERC9NTS9ZWVlZJyksXG5cdFx0XHRjbGllbnRXYWxsZXQ6IGRhdGEuY2xpZW50V2FsbGV0IHx8ICcxQ2ZVWVVWc2MxZ2I5Y2FDRFFqd1R3UThqRFkzQjFaUlUzJyxcblx0XHRcdGNsaWVudFJlc3VtZTpcblx0XHRcdFx0YCR7ZGF0YS5jbGllbnROYW1lfSwgbmF0dXJhbCBkZSAke2RhdGEuY2xpZW50TmF0aW9uYWxpdHl9LCAke1xuXHRcdFx0XHRcdGRhdGEuY2xpZW50Q2l2aWxTdGF0ZVxuXHRcdFx0XHR9LFxuICAgICAgJHtkYXRhLmNsaWVudE9jY3VwYXRpb259LFxuICAgICAgcG9ydGFkb3IgZG8gUkcgbsK6ICR7ZGF0YS5jbGllbnRSR30sIGluc2NyaXRvIG5vIENQRiBzb2IgbyBuwrogJHtcblx0XHRcdFx0XHRkYXRhLmNsaWVudENQRiA/IENQRi5mb3JtYXQoZGF0YS5jbGllbnRDUEYpIDogJydcblx0XHRcdFx0fSwgcmVzaWRlbnRlIGUgXG4gICAgICBkb21pY2lsaWFkbyBhXG4gICAgICAke2RhdGEuY2xpZW50U3RyZWV0fVxuICAgICAgJHtkYXRhLmNsaWVudENvbXBsZW1lbnQgfHwgJyd9LCBDRVAgJHtkYXRhLmNsaWVudENFUH0sICR7XG5cdFx0XHRcdFx0ZGF0YS5jbGllbnRDaXR5XG5cdFx0XHRcdH0gJHtkYXRhLmNsaWVudFN0YXRlfWAgfHwgJyAnXG5cdFx0fTtcblxuXHRcdHJldHVybiBjb250cmFjdDtcblx0fVxuXG5cdGFzeW5jIG1ha2VDTlBKKGRhdGEpIHtcblx0ICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMubWFrZUNQRihkYXRhKTtcblx0ICAgIHJlc3VsdC5jbGllbnROYW1lID0gZGF0YS5zb2NpYWxSZWFzb25cblx0XHRjb25zdCBjb250cmFjdCA9IHtcblx0XHRcdC4uLnJlc3VsdCxcblx0XHRcdGNsaWVudFJlc3VtZTogYCR7XG5cdFx0XHRcdGRhdGEuc29jaWFsUmVhc29uXG5cdFx0XHR9LCBwZXNzb2EganVyw61kaWNhIGRlIGRpcmVpdG8gcHJpdmFkbywgaW5zY3JpdGEgbm8gQ05QSiBuwrogJHtcblx0XHRcdFx0ZGF0YS5jbGllbnRDTlBKXG5cdFx0XHR9LCBjb20gc2VkZSBuYSAke2RhdGEuY29tcGFueVN0cmVldH0ke1xuXHRcdFx0XHRkYXRhLmNvbXBhbnlDb21wbGVtZW50ID8gJyAnICsgZGF0YS5jb21wYW55Q29tcGxlbWVudCA6ICcnXG5cdFx0XHR9LCBDRVAgJHtkYXRhLmNvbXBhbnlDRVB9LCAke2RhdGEuY29tcGFueUNpdHl9LCAke1xuXHRcdFx0XHRkYXRhLmNvbXBhbnlTdGF0ZVxuXHRcdFx0fSwgcmVwcmVzZW50YWRvIHBvciAke2RhdGEucGFydG5lckNsaWVudE5hbWV9LCAke2RhdGEucGFydG5lckNpdmlsU3RhdGV9JHtcblx0XHRcdFx0ZGF0YS5wYXJ0bmVyUHJvZmVzc2lvbiAhPSAnJyA/ICcsICcgKyBkYXRhLnBhcnRuZXJQcm9mZXNzaW9uIDogJydcblx0XHRcdH0sIHBvcnRhZG9yIGRvIFJHIG7CuiAke1xuXHRcdFx0XHRkYXRhLnBhcnRuZXJQZXJzb25hbFJlZ2lzdGVyXG5cdFx0XHR9LCBpbnNjcml0byBubyBDUEYgc29iIG8gbsK6ICR7Q1BGLmZvcm1hdChcblx0XHRcdFx0ZGF0YS5wYXJ0bmVyUGVyc29uYWxEb2N1bWVudFxuXHRcdFx0KX0sIHJlc2lkZW50ZSBlIGRvbWljaWxpYWRvIGEgJHtkYXRhLnBhcnRuZXJBZGRyZXNzfSAke1xuXHRcdFx0XHRkYXRhLnBhcnRuZXJBZGRyZXNzQ29tcGxlbWVudCA/ICcgJyArIGRhdGEucGFydG5lckFkZHJlc3NDb21wbGVtZW50IDogJydcblx0XHRcdH0sIENFUCAke2RhdGEucGFydG5lclBvc3RhbENvZGV9YFxuXHRcdH07XG5cdFx0cmV0dXJuIGNvbnRyYWN0O1xuXHR9XG5cblx0YXN5bmMgbWFrZSh1c2VySWQsIGRhdGFDb250cmFjdCwgY29uZmlnKSB7XG5cdFx0dHJ5IHtcblx0XHRcdGF3YWl0IHRoaXMuc2V0Q29uZmlnKGNvbmZpZy5hd3MpO1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRUeXBlKGNvbmZpZy5jb250cmFjdCk7XG5cdFx0XHRkYXRhQ29udHJhY3QuY29udHJhY3ROdW1iZXIgPSBhd2FpdCB0aGlzLmdlbmVyYXRvckxhc3QoKTtcblx0XHRcdGlmICh0aGlzLmNvbmZpZyA9PT0gdW5kZWZpbmVkKVxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3JEb2N4UGRmKCdDb25maWd1cmHDp8OjbyBuw6NvIGluaWNpYWxpemFkYScpO1xuXHRcdFx0bGV0IGRhdGE7XG5cdFx0XHQvLyBsZXQgZmlsZTtcblxuXHRcdFx0aWYgKGRhdGFDb250cmFjdC5jbGllbnRDTlBKICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0ZGF0YSA9IGF3YWl0IHRoaXMubWFrZUNOUEooZGF0YUNvbnRyYWN0KTtcblx0XHRcdFx0Ly8gZmlsZSA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLy4uLy4uL2Fzc2V0cy9kb2NFeC5kb2N4Jyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRkYXRhID0gYXdhaXQgdGhpcy5tYWtlQ1BGKGRhdGFDb250cmFjdCk7XG5cdFx0XHRcdC8vIGZpbGUgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8uLi8uLi9hc3NldHMvZG9jRXguZG9jeCcpO1xuXHRcdFx0fVxuXG5cdFx0XHRhd2FpdCB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhLCB1c2VySWQsIGZhbHNlKTtcblx0XHRcdHJldHVybiAoXG5cdFx0XHRcdFByb21pc2UucmVzb2x2ZSh0aGlzLlN0b3JhZ2Uuc2V0QnVja2V0KGNvbmZpZy5idWNrZXQpKVxuXHRcdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXREZXN0aW5hdGlvbkRpcignY29udHJhY3RzJykpXG5cdFx0XHRcdFx0Ly8gLnRoZW4oKCkgPT4gdGhpcy5Eb2N4Lm1ha2VDb250cmFjdChmaWxlLCBkYXRhKSlcblx0XHRcdFx0XHQvLyAudGhlbigoKSA9PiB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhKSlcblx0XHRcdFx0XHQvLyAudGhlbihyZXMgPT4gQnVmZmVyLmZyb20ocmVzLCAnYmFzZTY0JykpXG5cdFx0XHRcdFx0Ly8gLnRoZW4ocmVzID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlQnVmZmVyKHsgZGF0YTogcmVzLCB0eXBlOiAncGRmJyB9KSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB0aGlzLlN0b3JhZ2Uuc2V0RmlsZShgLi8ke3VzZXJJZH0ucGRmYCkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnVwbG9hZCgpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnN0cmluZ2lmeShyZXMpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnBhcnNlKHJlcykpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+XG5cdFx0XHRcdFx0XHRQcm9taXNlLnJlc29sdmUoZGF0YSkudGhlbihyZXN1bHQgPT4gKHtcblx0XHRcdFx0XHRcdFx0Li4ucmVzdWx0LFxuXHRcdFx0XHRcdFx0XHRjb250cmFjdFVybDogcmVzLkxvY2F0aW9uLFxuXHRcdFx0XHRcdFx0XHRzdGF0dXM6ICdBdGl2bydcblx0XHRcdFx0XHRcdH0pKVxuXHRcdFx0XHRcdClcblx0XHRcdFx0XHQudGhlbihyZXMgPT4gdGhpcy5zYXZlKHVzZXJJZCwgcmVzKSlcblx0XHRcdFx0XHQuY2F0Y2goZSA9PiB7XG5cdFx0XHRcdFx0XHR0aHJvdyBlO1xuXHRcdFx0XHRcdH0pXG5cdFx0XHQpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlKTtcblx0XHR9XG5cdH1cblxuXHRhc3luYyB2aWV3KGRhdGFDb250cmFjdCwgY29uZmlnKSB7XG5cdFx0Ly9jb25zb2xlLmxvZyhkYXRhQ29udHJhY3QpXG5cblx0XHR0cnkge1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRDb25maWcoY29uZmlnLmF3cyk7XG5cdFx0XHRhd2FpdCB0aGlzLnNldFR5cGUoY29uZmlnLmNvbnRyYWN0KTtcblx0XHRcdGlmICh0aGlzLmNvbmZpZyA9PT0gdW5kZWZpbmVkKVxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3JEb2N4UGRmKCdDb25maWd1cmHDp8OjbyBuw6NvIGluaWNpYWxpemFkYScpO1xuXG5cdFx0XHRjb25zdCBkYXRhID0gZGF0YUNvbnRyYWN0O1xuXG5cdFx0XHRhd2FpdCB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhLCBkYXRhLmNsaWVudElkLCBmYWxzZSk7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuU3RvcmFnZS5zZXRCdWNrZXQoY29uZmlnLmJ1Y2tldCkpXG5cdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXREZXN0aW5hdGlvbkRpcignY29udHJhY3RzJykpXG5cdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlKGAuLyR7ZGF0YS5jbGllbnRJZH0ucGRmYCkpXG5cdFx0XHRcdC50aGVuKCgpID0+IHRoaXMuU3RvcmFnZS51cGxvYWQoKSlcblx0XHRcdFx0LnRoZW4ocmVzID0+XG5cdFx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKGRhdGEpLnRoZW4ocmVzdWx0ID0+ICh7XG5cdFx0XHRcdFx0XHQuLi5yZXN1bHQsXG5cdFx0XHRcdFx0XHRjb250cmFjdFVybDogcmVzLkxvY2F0aW9uLFxuXHRcdFx0XHRcdFx0c3RhdHVzOiAnQXRpdm8nXG5cdFx0XHRcdFx0fSkpXG5cdFx0XHRcdClcblx0XHRcdFx0LnRoZW4ocmVzID0+IHRoaXMudXBkYXRlKHJlcykpXG5cdFx0XHRcdC5jYXRjaChlID0+IHtcblx0XHRcdFx0XHR0aHJvdyBlO1xuXHRcdFx0XHR9KTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG5cdFx0fVxuXHR9XG5cblx0YXN5bmMgaW5zZXJ0U2lnbmF0dXJlKHVzZXJJZCwgZGF0YUNvbnRyYWN0LCBjb25maWcpIHtcblx0XHR0cnkge1xuXHRcdFx0YXdhaXQgdGhpcy5zZXRDb25maWcoY29uZmlnLmF3cyk7XG5cdFx0XHRhd2FpdCB0aGlzLnNldFR5cGUoY29uZmlnLmNvbnRyYWN0KTtcblx0XHRcdGlmICh0aGlzLmNvbmZpZyA9PT0gdW5kZWZpbmVkKVxuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3JEb2N4UGRmKCdDb25maWd1cmHDp8OjbyBuw6NvIGluaWNpYWxpemFkYScpO1xuXHRcdFx0XG5cdFx0XHRjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5tYWtlRG9jdW1lbnQoZGF0YUNvbnRyYWN0LmRhdGEpO1xuXG5cdFx0XHQvLyBkYXRhLmltYWdlID0gZGF0YUNvbnRyYWN0LmRhdGEuaW1hZ2U7XG5cblx0XHRcdC8vIGNvbnNvbGUubG9nKCdBUVVJIFRFTSBRVUUgVEVSIFRPRE9TIE9TIERBRE9TIERPIERPQ1VNRU5UTyBDRVJUSU5IT09PT09PTycpXG5cdFx0XHQvLyBjb25zb2xlLmxvZyhkYXRhKVxuXG5cdFx0XHRhd2FpdCB0aGlzLlBkZkdlbmVyYXRvci5nZW5lcmF0ZShkYXRhLCB1c2VySWQsIHRydWUpO1xuXHRcdFx0cmV0dXJuIChcblx0XHRcdFx0UHJvbWlzZS5yZXNvbHZlKHRoaXMuU3RvcmFnZS5zZXRCdWNrZXQoY29uZmlnLmJ1Y2tldCkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldERlc3RpbmF0aW9uRGlyKCdjb250cmFjdHMnKSlcblx0XHRcdFx0XHQvLy50aGVuKCgpID0+IHRoaXMuRG9jeC5tYWtlQ29udHJhY3QoZmlsZSwgZGF0YUNvbnRyYWN0LmRhdGEpKVxuXHRcdFx0XHRcdC8vLnRoZW4ocmVzID0+IEJ1ZmZlci5mcm9tKHJlcywgJ2Jhc2U2NCcpKVxuXHRcdFx0XHRcdC8vLnRoZW4ocmVzID0+IHRoaXMuU3RvcmFnZS5zZXRGaWxlQnVmZmVyKHsgZGF0YTogcmVzLCB0eXBlOiAnZG9jeCcgfSkpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnNldEZpbGUoJy4vJyArIHVzZXJJZCArICcucGRmJykpXG5cdFx0XHRcdFx0LnRoZW4oKCkgPT4gdGhpcy5TdG9yYWdlLnVwbG9hZCgpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnN0cmluZ2lmeShyZXMpKVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiBKU09OLnBhcnNlKHJlcykpXG5cdFx0XHRcdFx0LnRoZW4ocmVzID0+IHtcblx0XHRcdFx0XHRcdGxldCBkYXRhUmV0dXJuID0ge31cblx0XHRcdFx0XHRcdGRhdGFSZXR1cm4uY29udHJhY3RVcmwgPSByZXMuTG9jYXRpb247XG5cdFx0XHRcdFx0XHRkYXRhUmV0dXJuLnN0YXR1cyA9ICdBc3NpbmFkbyc7XG5cdFx0XHRcdFx0XHRyZXR1cm4gZGF0YVJldHVybjtcblx0XHRcdFx0XHR9KVxuXHRcdFx0XHRcdC50aGVuKHJlcyA9PiB0aGlzLnVwZGF0ZShyZXMsIGRhdGFDb250cmFjdC5pZCkpXG5cdFx0XHRcdFx0LmNhdGNoKGUgPT4ge1xuXHRcdFx0XHRcdFx0dGhyb3cgZTtcblx0XHRcdFx0XHR9KVxuXHRcdFx0KTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7XG5cdFx0fVxuXHR9XG5cblx0YXN5bmMgbWFrZURvY3VtZW50KGRhdGFDb250cmFjdCkge1xuXHRcdGlmIChkYXRhQ29udHJhY3QuY2xpZW50Q05QSiAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRyZXR1cm4gYXdhaXQgdGhpcy5tYWtlQ05QSihkYXRhQ29udHJhY3QpO1xuXHRcdFx0Ly9maWxlID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vLi4vLi4vYXNzZXRzL2RvY0V4LmRvY3gnKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIGF3YWl0IHRoaXMubWFrZUNQRihkYXRhQ29udHJhY3QpO1xuXHRcdFx0Ly9maWxlID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4vLi4vLi4vYXNzZXRzL2RvY0V4LmRvY3gnKTtcblx0XHR9XG5cdH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSAoRG9jeCwgRGlnaXRhbERhdGEsIFN0b3JhZ2UsIFBkZkdlbmVyYXRvcikgPT5cblx0bmV3IENvbnRyYWN0KERvY3gsIERpZ2l0YWxEYXRhLCBTdG9yYWdlLCBQZGZHZW5lcmF0b3IpO1xuIl19 |
@@ -377,37 +377,40 @@ 'use strict'; | ||
<a id="t.f3938e79502005adf94a4e51215e89fb827a9929"></a><a id="t.5"></a> | ||
<table class="c53"> | ||
<table class="doStyle53"> | ||
<tbody> | ||
<tr class="c5"> | ||
<td class="c45" colspan="3" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
<tr class="doStyle5"> | ||
<td class="doStyle45" colspan="3" rowspan="1"> | ||
<p class="c0 c6"><span class="doStyle25 doStyle8 doStyle18"></span></p> | ||
</td> | ||
<td class="c68" colspan="2" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
<td class="doStyle68" colspan="2" rowspan="1"> | ||
<p class="c0 c6"><span class="doStyle25 doStyle8 doStyle18"></span></p> | ||
</td> | ||
<td class="c61" colspan="1" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
<td class="doStyle61" colspan="1" rowspan="1"> | ||
<p class="c0 c6"><span class="doStyle25 doStyle8 doStyle18"></span></p> | ||
</td> | ||
<td class="c62" colspan="2" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
<td class="doStyle62" colspan="2" rowspan="1"> | ||
<p class="c0 c6"><span class="doStyle25 doStyle8 doStyle18"></span></p> | ||
</td> | ||
</tr> | ||
<tr class="c5"> | ||
<td class="c13" colspan="1" rowspan="1"> | ||
<p class="c0"><span class="c7">Produto</span></p> | ||
<p class="c0"><span class="c25 c8 c18">LXCombo</span></p> | ||
<tr class="doStyle5"> | ||
<td class="doStyle13" colspan="1" rowspan="1"> | ||
<p class="c0"><span class="doStyle7">Produto</span></p> | ||
<p class="c0"><span class="doStyle25 doStyle8 doStyle18">LXCombo</span></p> | ||
</td> | ||
<td class="c69" colspan="1" rowspan="1"> | ||
<p class="c0"><span class="c7">Versão</span></p> | ||
<p class="c0"><span class="c25 c8 c18">1.0</span></p> | ||
<td class="doStyle69" colspan="1" rowspan="1"> | ||
<p class="c0"><span class="doStyle7">Versão</span></p> | ||
<p class="c0"><span class="doStyle25 doStyle8 doStyle18">1.0</span></p> | ||
</td> | ||
<td class="c64" colspan="2" rowspan="1"> | ||
<p class="c0"><span class="c7">Atualização</span></p> | ||
<p class="c0"><span class="c25 c8 c18">01/02/2019</span></p> | ||
<td class="doStyle64" colspan="2" rowspan="1"> | ||
<p class="c0"><span class="doStyle7">Atualização</span></p> | ||
<p class="c0"><span class="doStyle25 doStyle8 doStyle18">01/02/2019</span></p> | ||
</td> | ||
<td class="c75" colspan="3" rowspan="1"> | ||
<p class="c0"><span class="c25 c8 c18">Alameda Doutor Carlos de Carvalho n. 431 - 10º andar | Bairro Centro </span></p> | ||
<p class="c0"><span class="c25 c8 c18">CEP 80410-180 . Curitiba . Paraná | +55 41 3123-9192 – www.btc-banco.com</span></p> | ||
<td class="doStyle75" colspan="3" rowspan="1"> | ||
<p class="c0"><span class="doStyle25 doStyle8 doStyle18">Alameda Doutor Carlos de Carvalho n. 431 - 10º andar | Bairro Centro </span></p> | ||
<p class="c0"><span class="doStyle25 doStyle8 doStyle18">CEP 80410-180 . Curitiba . Paraná | +55 41 3123-9192 – www.btc-banco.com</span></p> | ||
</td> | ||
<td class="c78" colspan="1" rowspan="1"> | ||
<p class="c0"><span class="c25 c8 c18">Página </span><span class="c25 c8 c18"> de </span></p> | ||
<td class="doStyle78" colspan="1" rowspan="1"> | ||
<p class="c0"> | ||
<span class="doStyle25 doStyle8 doStyle18">Página {{page}} </span> | ||
<span class="doStyle25 doStyle8 doStyle18"> de {{pages}} </span> | ||
</p> | ||
</td> | ||
@@ -417,23 +420,2 @@ </tr> | ||
</table> | ||
<p class="c0 c6"><span class="c25 c15 c49"></span></p> | ||
<a id="t.e87c63e499a763c2974cba3c7ce4c08052c7c8cb"></a><a id="t.6"></a> | ||
<table class="c31"> | ||
<tbody> | ||
<tr class="c40"> | ||
<td class="c56" colspan="1" rowspan="1"> | ||
<p class="c4"><span class="c25 c8 c18"></span></p> | ||
</td> | ||
<td class="c74" colspan="1" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
</td> | ||
<td class="c35" colspan="1" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
</td> | ||
<td class="c22" colspan="1" rowspan="1"> | ||
<p class="c0 c6"><span class="c25 c8 c18"></span></p> | ||
</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
<p class="c0 c6"><span class="c25 c15 c49"></span></p> | ||
`; | ||
@@ -445,2 +427,2 @@ } | ||
exports.default = type => new PdfGenerator(type); | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbmZyYXN0cnVjdHVyZS9wcm92aWRlcnMvUGRmR2VuZXJhdG9yLmpzIl0sIm5hbWVzIjpbImZzIiwicmVxdWlyZSIsInBkZiIsImJ1ZmZlckNvbnZlcnRlciIsInBhdGgiLCJDb250cmFjdFR5cGUiLCJTaWduYXR1cmVzIiwiUGRmR2VuZXJhdG9yIiwiY29uc3RydWN0b3IiLCJ0eXBlIiwiZ2VuZXJhdGUiLCJjb250cmFjdCIsImZpbGVfbmFtZSIsImluc2VydFNpZ25hdHVyZSIsInJlc29sIiwiaW1hZ2UiLCJtYWtlU2lnbmF0dXJlcyIsImJhc2VQYXRoIiwiam9pbiIsIl9fZGlybmFtZSIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwiaHRtbCIsIk1VVFVPX1RSQURJTkciLCJyZWFkRmlsZVN5bmMiLCJNVVRVT19TRU1fVFJBRElORyIsIk1VVFVPX0xFX1JFVkUiLCJNVVRVT19UUkFESU5HX0xYQyIsIk1VVFVPX1NFTV9UUkFESU5HX0xYQyIsIk1VVFVPX0NPTUJPX0xYQyIsImZvb3RlciIsImJ1aWxkRm9vdGVyIiwib3B0aW9ucyIsImZvcm1hdCIsImJhc2UiLCJoZWFkZXIiLCJjb250ZW50cyIsImhlaWdodCIsImRvY3VtZW50IiwidGVtcGxhdGUiLCJjb250ZXh0IiwiY3JlYXRlIiwiZXJyIiwidnBTaWduYXR1cmUiLCJIRUxPSVNBIiwiY29tZXJjaWFsU2lnbmF0dXJlIiwiSkFJTUUiLCJmaXJzdFNpZ25hdHVyZSIsInJhbmRvbWl6ZVNpZ25hdHVyZSIsInNlY29uZFNpZ25hdHVyZSIsImZpcnN0UmFuZG9tU2lnbmF0dXJlIiwic2Vjb25kUmFuZG9tU2lnbmF0dXJlIiwidGVzdGltb25pYWxzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsImtleSIsIk1hdGgiLCJmbG9vciIsInJhbmRvbSIsImxlbmd0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxNQUFNQSxLQUFLQyxRQUFRLElBQVIsQ0FBWDtBQUNBLE1BQU1DLE1BQU1ELFFBQVEsa0JBQVIsQ0FBWjtBQUNBLE1BQU1FLGtCQUFrQkYsUUFBUSx1QkFBUixDQUF4QjtBQUNBLE1BQU1HLE9BQU9ILFFBQVEsTUFBUixDQUFiO0FBQ0EsTUFBTUksZUFBZUosUUFBUSwrQkFBUixDQUFyQjtBQUNBLE1BQU1LLGFBQWFMLFFBQVEsd0JBQVIsQ0FBbkI7O0FBRUEsTUFBTU0sWUFBTixDQUFtQjtBQUNmQyxnQkFBWUMsSUFBWixFQUFrQjtBQUNkLGFBQUtBLElBQUwsR0FBWUEsSUFBWjtBQUNIOztBQUVLQyxZQUFOLENBQWVDLFFBQWYsRUFBeUJDLFNBQXpCLEVBQW9DQyxlQUFwQyxFQUFxRDtBQUFBOztBQUFBO0FBQ2pELGtCQUFLSixJQUFMLEdBQVlFLFNBQVNGLElBQXJCO0FBQ0EsZ0JBQUlLLFFBQVFILFFBQVo7O0FBRUFHLGtCQUFNQyxLQUFOLEdBQWMsMkJBQTJCWixnQkFBZ0JXLE1BQU1DLEtBQXRCLEVBQTZCLFFBQTdCLENBQXpDOztBQUVBLGdCQUFJRixlQUFKLEVBQW9CO0FBQ2hCQyx3QkFBUSxNQUFNLE1BQUtFLGNBQUwsQ0FBb0JGLEtBQXBCLENBQWQ7QUFDSDtBQUNEO0FBQ0FBLGtCQUFNRyxRQUFOLEdBQWlCYixLQUFLYyxJQUFMLENBQVUsVUFBVixFQUFzQkMsU0FBdEIsRUFBaUMsa0JBQWpDLENBQWpCOztBQUVBLG1CQUFPLElBQUlDLE9BQUosQ0FBWSxVQUFDQyxPQUFELEVBQVVDLE1BQVYsRUFBcUI7QUFDcEMsb0JBQUk7QUFDQSx3QkFBSUMsT0FBTyxFQUFYO0FBQ0Esd0JBQUksTUFBS2QsSUFBTCxJQUFhSixhQUFhbUIsYUFBOUIsRUFDSUQsT0FBT3ZCLEdBQUd5QixZQUFILENBQWdCckIsS0FBS2MsSUFBTCxDQUFVQyxTQUFWLEVBQXFCLHNDQUFyQixDQUFoQixFQUE4RSxNQUE5RSxDQUFQOztBQUVKLHdCQUFJLE1BQUtWLElBQUwsSUFBYUosYUFBYXFCLGlCQUE5QixFQUNJSCxPQUFPdkIsR0FBR3lCLFlBQUgsQ0FBZ0JyQixLQUFLYyxJQUFMLENBQVVDLFNBQVYsRUFBcUIsc0NBQXJCLENBQWhCLEVBQThFLE1BQTlFLENBQVA7O0FBRUosd0JBQUksTUFBS1YsSUFBTCxJQUFhSixhQUFhc0IsYUFBOUIsRUFDSUosT0FBT3ZCLEdBQUd5QixZQUFILENBQWdCckIsS0FBS2MsSUFBTCxDQUFVQyxTQUFWLEVBQXFCLHNDQUFyQixDQUFoQixFQUE4RSxNQUE5RSxDQUFQOztBQUVKLHdCQUFJLE1BQUtWLElBQUwsSUFBYUosYUFBYXVCLGlCQUE5QixFQUNJTCxPQUFPdkIsR0FBR3lCLFlBQUgsQ0FBZ0JyQixLQUFLYyxJQUFMLENBQVVDLFNBQVYsRUFBcUIseUNBQXJCLENBQWhCLEVBQWlGLE1BQWpGLENBQVA7O0FBRUosd0JBQUksTUFBS1YsSUFBTCxJQUFhSixhQUFhd0IscUJBQTlCLEVBQ0lOLE9BQU92QixHQUFHeUIsWUFBSCxDQUFnQnJCLEtBQUtjLElBQUwsQ0FBVUMsU0FBVixFQUFxQix5Q0FBckIsQ0FBaEIsRUFBaUYsTUFBakYsQ0FBUDs7QUFFSix3QkFBSSxNQUFLVixJQUFMLElBQWFKLGFBQWF5QixlQUE5QixFQUNJUCxPQUFPdkIsR0FBR3lCLFlBQUgsQ0FBZ0JyQixLQUFLYyxJQUFMLENBQVVDLFNBQVYsRUFBcUIsb0NBQXJCLENBQWhCLEVBQTRFLE1BQTVFLENBQVA7O0FBRUosMEJBQU1ZLFNBQVMsTUFBS0MsV0FBTCxFQUFmO0FBQ0EsMEJBQU1DLFVBQVU7QUFDWkMsZ0NBQVEsUUFESTtBQUVaQyw4QkFBTS9CLEtBQUtjLElBQUwsQ0FBVSxVQUFWLEVBQXNCQyxTQUF0QixFQUFpQyxrQkFBakMsQ0FGTTtBQUdaaUIsZ0NBQVE7QUFDSkMsc0NBQVUsRUFETixFQUNTO0FBQ2JDLG9DQUFRO0FBRkoseUJBSEk7QUFPWlAsZ0NBQVE7QUFDSix3Q0FBWUE7QUFEUjtBQVBJLHFCQUFoQjs7QUFZQSwwQkFBTVEsV0FBVztBQUNiOUIsOEJBQU0sTUFETyxFQUNDO0FBQ2QrQixrQ0FBVWpCLElBRkc7QUFHYmtCLGlDQUFTO0FBQ0w5QixzQ0FBVUc7QUFETCx5QkFISTtBQU1iViw4QkFBTSxPQUFPUSxTQUFQLEdBQW1CLE1BTlosQ0FNb0I7QUFOcEIscUJBQWpCOztBQVNBOzs7QUFHQVMsNEJBQVFuQixJQUFJd0MsTUFBSixDQUFXSCxRQUFYLEVBQXFCTixPQUFyQixDQUFSO0FBRUgsaUJBL0NELENBK0NFLE9BQU9VLEdBQVAsRUFBWTtBQUNWckIsMkJBQU9xQixHQUFQO0FBQ0g7QUFDSixhQW5ETSxDQUFQO0FBWmlEO0FBZ0VwRDs7QUFFSzNCLGtCQUFOLENBQXFCTCxRQUFyQixFQUErQjtBQUFBOztBQUFBO0FBQzNCQSxxQkFBU2lDLFdBQVQsR0FBdUJ0QyxXQUFXdUMsT0FBbEM7QUFDQWxDLHFCQUFTbUMsa0JBQVQsR0FBOEJ4QyxXQUFXeUMsS0FBekM7QUFDQSxrQkFBTUMsaUJBQWlCLE1BQU0sT0FBS0Msa0JBQUwsRUFBN0I7QUFDQSxnQkFBSUMsa0JBQWtCLE1BQU0sT0FBS0Qsa0JBQUwsRUFBNUI7QUFDQSxtQkFBT0QsbUJBQW1CRSxlQUExQixFQUEyQztBQUN2Q0Esa0NBQWtCLE1BQU0sT0FBS0Qsa0JBQUwsRUFBeEI7QUFDSDtBQUNEdEMscUJBQVN3QyxvQkFBVCxHQUFnQ0gsY0FBaEM7QUFDQXJDLHFCQUFTeUMscUJBQVQsR0FBaUNGLGVBQWpDO0FBQ0EsbUJBQU92QyxRQUFQO0FBVjJCO0FBVzlCOztBQUVLc0Msc0JBQU4sR0FBMkI7QUFBQTtBQUN2QixrQkFBTUksZUFBZUMsT0FBT0MsSUFBUCxDQUFZakQsVUFBWixFQUF3QmtELE1BQXhCLENBQStCLFVBQVNDLEdBQVQsRUFBYztBQUM5RCxvQkFBSW5ELFdBQVdtRCxHQUFYLE1BQW9CbkQsV0FBV3VDLE9BQS9CLElBQTBDdkMsV0FBV21ELEdBQVgsTUFBb0JuRCxXQUFXeUMsS0FBN0UsRUFDRSxPQUFPekMsV0FBV21ELEdBQVgsQ0FBUDtBQUNILGFBSGtCLENBQXJCO0FBSUUsbUJBQU9uRCxXQUFXK0MsYUFBYUMsT0FBT0MsSUFBUCxDQUFZRixZQUFaLEVBQTBCSyxLQUFLQyxLQUFMLENBQVdELEtBQUtFLE1BQUwsS0FBZ0JOLE9BQU9DLElBQVAsQ0FBWUYsWUFBWixFQUEwQlEsTUFBckQsQ0FBMUIsQ0FBYixDQUFYLENBQVA7QUFMcUI7QUFNMUI7O0FBRUQ3QixrQkFBYztBQUNWLFlBQUksS0FBS3ZCLElBQUwsSUFBYSxDQUFqQixFQUNBO0FBQ0ksbUJBQVE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FCQUFSO0FBbURILFNBckRELE1BdURBLElBQUksS0FBS0EsSUFBTCxJQUFhLENBQWpCLEVBQ0E7QUFDSSxtQkFBUTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzthQUFSO0FBa0RILFNBcERELE1Bc0RBLElBQUksS0FBS0EsSUFBTCxJQUFhLENBQWpCLEVBQ0E7QUFDSSxtQkFBUTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2lCQUFSO0FBdURILFNBekRELE1BMkRBLElBQUksS0FBS0EsSUFBTCxJQUFhLENBQWpCLEVBQ0E7QUFDSSxtQkFBUTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7cUJBQVI7QUFtREgsU0FyREQsTUF1REEsSUFBSSxLQUFLQSxJQUFMLElBQWEsQ0FBakIsRUFDQTtBQUNJLG1CQUFROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2FBQVI7QUFrREgsU0FwREQsTUFzREEsSUFBRyxLQUFLQSxJQUFMLElBQWEsQ0FBaEIsRUFDQTtBQUNJLG1CQUFROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7YUFBUjtBQWdFSDtBQUNKO0FBcmJjOztrQkF3YkhBLElBQUQsSUFBVSxJQUFJRixZQUFKLENBQWlCRSxJQUFqQixDIiwiZmlsZSI6IlBkZkdlbmVyYXRvci5qcyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGZzID0gcmVxdWlyZSgnZnMnKTtcbmNvbnN0IHBkZiA9IHJlcXVpcmUoJ2R5bmFtaWMtaHRtbC1wZGYnKTtcbmNvbnN0IGJ1ZmZlckNvbnZlcnRlciA9IHJlcXVpcmUoJ2FycmF5YnVmZmVyLXRvLXN0cmluZycpO1xuY29uc3QgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKTtcbmNvbnN0IENvbnRyYWN0VHlwZSA9IHJlcXVpcmUoJy4uLy4uL2RvbWFpbi9Db250cmFjdFR5cGVFbnVtJyk7XG5jb25zdCBTaWduYXR1cmVzID0gcmVxdWlyZSgnLi4vLi4vZG9tYWluL1NpZ25hdHVyZScpO1xuXG5jbGFzcyBQZGZHZW5lcmF0b3Ige1xuICAgIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB9XG5cbiAgICBhc3luYyBnZW5lcmF0ZShjb250cmFjdCwgZmlsZV9uYW1lLCBpbnNlcnRTaWduYXR1cmUpIHtcbiAgICAgICAgdGhpcy50eXBlID0gY29udHJhY3QudHlwZVxuICAgICAgICBsZXQgcmVzb2wgPSBjb250cmFjdFxuICAgICAgICBcbiAgICAgICAgcmVzb2wuaW1hZ2UgPSAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LCcgKyBidWZmZXJDb252ZXJ0ZXIocmVzb2wuaW1hZ2UsICdiYXNlNjQnKTtcbiAgICAgICAgXG4gICAgICAgIGlmIChpbnNlcnRTaWduYXR1cmUpe1xuICAgICAgICAgICAgcmVzb2wgPSBhd2FpdCB0aGlzLm1ha2VTaWduYXR1cmVzKHJlc29sKTtcbiAgICAgICAgfVxuICAgICAgICAvL2FkZGluZyB0aGlzIHByb3BlcnR5IHRvIGdldCBcImJhc2UgZGlyZWN0b3J5IHRvIHRoZSBoZWFkZXIgaW1hZ2VzXCIgXG4gICAgICAgIHJlc29sLmJhc2VQYXRoID0gcGF0aC5qb2luKCdmaWxlOi8vLycsIF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy8nKTtcblxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgaHRtbCA9ICcnO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT0gQ29udHJhY3RUeXBlLk1VVFVPX1RSQURJTkcpXG4gICAgICAgICAgICAgICAgICAgIGh0bWwgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9NdXR1b0NvbVRyYWRpbmcuaHRtbCcpLCAndXRmOCcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBDb250cmFjdFR5cGUuTVVUVU9fU0VNX1RSQURJTkcpXG4gICAgICAgICAgICAgICAgICAgIGh0bWwgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9NdXR1b1NlbVRyYWRpbmcuaHRtbCcpLCAndXRmOCcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBDb250cmFjdFR5cGUuTVVUVU9fTEVfUkVWRSlcbiAgICAgICAgICAgICAgICAgICAgaHRtbCA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vLi4vYXNzZXRzL011dHVvQ29tUHJvZHV0by5odG1sJyksICd1dGY4Jyk7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy50eXBlID09IENvbnRyYWN0VHlwZS5NVVRVT19UUkFESU5HX0xYQylcbiAgICAgICAgICAgICAgICAgICAgaHRtbCA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vLi4vYXNzZXRzL011dHVvQ29tVHJhZGluZ0xYQy5odG1sJyksICd1dGY4Jyk7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy50eXBlID09IENvbnRyYWN0VHlwZS5NVVRVT19TRU1fVFJBRElOR19MWEMpXG4gICAgICAgICAgICAgICAgICAgIGh0bWwgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9NdXR1b1NlbVRyYWRpbmdMWEMuaHRtbCcpLCAndXRmOCcpO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT0gQ29udHJhY3RUeXBlLk1VVFVPX0NPTUJPX0xYQylcbiAgICAgICAgICAgICAgICAgICAgaHRtbCA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vLi4vYXNzZXRzL011dHVvQ29tYm9MWEMuaHRtbCcpLCAndXRmOCcpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgZm9vdGVyID0gdGhpcy5idWlsZEZvb3RlcigpO1xuICAgICAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgIGZvcm1hdDogJ0xldHRlcicsXG4gICAgICAgICAgICAgICAgICAgIGJhc2U6IHBhdGguam9pbignZmlsZTovLy8nLCBfX2Rpcm5hbWUsICcuLi8uLi8uLi9hc3NldHMvJyksXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHM6IFwiXCIsLy9oZWFkZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogXCIzNW1tXCJcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZm9vdGVyOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBcImNvbnRlbnRzXCI6IGZvb3RlclxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGRvY3VtZW50ID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnZmlsZScsIC8vICdmaWxlJyBvciAnYnVmZmVyJ1xuICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogaHRtbCxcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udHJhY3Q6IHJlc29sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6ICcuLycgKyBmaWxlX25hbWUgKyAnLnBkZicgIC8vIGl0IGlzIG5vdCByZXF1aXJlZCBpZiB0eXBlIGlzIGJ1ZmZlclxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAvL1Byb21pc2UucmVzb2x2ZShwZGYuY3JlYXRlKGRvY3VtZW50LCBvcHRpb25zKSkudGhlbihyZXMgPT4gY29uc29sZS5sb2cocmVzKSk7XG4gICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICByZXNvbHZlKHBkZi5jcmVhdGUoZG9jdW1lbnQsIG9wdGlvbnMpKTtcblxuICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzeW5jIG1ha2VTaWduYXR1cmVzKGNvbnRyYWN0KSB7XG4gICAgICAgIGNvbnRyYWN0LnZwU2lnbmF0dXJlID0gU2lnbmF0dXJlcy5IRUxPSVNBO1xuICAgICAgICBjb250cmFjdC5jb21lcmNpYWxTaWduYXR1cmUgPSBTaWduYXR1cmVzLkpBSU1FO1xuICAgICAgICBjb25zdCBmaXJzdFNpZ25hdHVyZSA9IGF3YWl0IHRoaXMucmFuZG9taXplU2lnbmF0dXJlKCk7XG4gICAgICAgIGxldCBzZWNvbmRTaWduYXR1cmUgPSBhd2FpdCB0aGlzLnJhbmRvbWl6ZVNpZ25hdHVyZSgpO1xuICAgICAgICB3aGlsZSAoZmlyc3RTaWduYXR1cmUgPT09IHNlY29uZFNpZ25hdHVyZSkge1xuICAgICAgICAgICAgc2Vjb25kU2lnbmF0dXJlID0gYXdhaXQgdGhpcy5yYW5kb21pemVTaWduYXR1cmUoKTtcbiAgICAgICAgfVxuICAgICAgICBjb250cmFjdC5maXJzdFJhbmRvbVNpZ25hdHVyZSA9IGZpcnN0U2lnbmF0dXJlO1xuICAgICAgICBjb250cmFjdC5zZWNvbmRSYW5kb21TaWduYXR1cmUgPSBzZWNvbmRTaWduYXR1cmU7XG4gICAgICAgIHJldHVybiBjb250cmFjdDtcbiAgICB9XG5cbiAgICBhc3luYyByYW5kb21pemVTaWduYXR1cmUoKSB7XG4gICAgICAgIGNvbnN0IHRlc3RpbW9uaWFscyA9IE9iamVjdC5rZXlzKFNpZ25hdHVyZXMpLmZpbHRlcihmdW5jdGlvbihrZXkpIHtcbiAgICAgICAgICAgIGlmIChTaWduYXR1cmVzW2tleV0gIT09IFNpZ25hdHVyZXMuSEVMT0lTQSAmJiBTaWduYXR1cmVzW2tleV0gIT09IFNpZ25hdHVyZXMuSkFJTUUpXG4gICAgICAgICAgICAgIHJldHVybiBTaWduYXR1cmVzW2tleV07XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuIFNpZ25hdHVyZXNbdGVzdGltb25pYWxzW09iamVjdC5rZXlzKHRlc3RpbW9uaWFscylbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogT2JqZWN0LmtleXModGVzdGltb25pYWxzKS5sZW5ndGgpXV1dO1xuICAgIH1cblxuICAgIGJ1aWxkRm9vdGVyKCkge1xuICAgICAgICBpZiAodGhpcy50eXBlID09IDEpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiBgXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGM4XCI+QWxhbWVkYSBEb3V0b3IgQ2FybG9zIGRlIENhcnZhbGhvIG4uIDQxNyAmbmRhc2g7IDMwJm9yZG07IGFuZGFyLiBDb25qdW50byAzMDAxICZuYnNwO3wgJm5ic3A7QmFpcnJvIENlbnRybyAmbmJzcDt8XG4gICAgICAgICAgICAgICAgICAgICAgICAmbmJzcDtDRVAgODA0MTAtMTgwICZuYnNwO3wgJm5ic3A7Q3VyaXRpYmEgLiBQYXJhbiZhYWN1dGU7PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzhcIj5UZWxlZm9uZSArNTUgNDEgMzEyMy05MTkyPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzggYzE0XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJjMjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImM0NVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzM1XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzZcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPk11dHVvIENvbSBUcmFkaW5nIHZlcnPDo28gNS4wPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjJcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPlAmYWFjdXRlO2dpbmEge3twYWdlfX0gPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPiZuYnNwO2RlIHt7cGFnZXN9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM1MVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzIGMxNlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjRcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+RHIuIElzbWFpciBKdW5pb3IgQ291dG88L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPkRpcmV0b3IgSnVyJmlhY3V0ZTtkaWNvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5PQUIvUFIgNDkwMDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPGEgaWQ9XCJ0LjA4MmJjN2Y5YmQxNzQ1OGU3NjYyZWZkNDU4NzFlN2I3MmE0YTgyZmZcIj48L2E+XG4gICAgICAgICAgICAgICAgPGEgaWQ9XCJ0LjZcIj48L2E+XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzMgYzE2XCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE0IGM4XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PSAyKVxuICAgICAgICB7XG4gICAgICAgICAgICByZXR1cm4gYCAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjOFwiPkFsYW1lZGEgRG91dG9yIENhcmxvcyBkZSBDYXJ2YWxobyBuLiA0MTcgJm5kYXNoOyAzMCZvcmRtOyBhbmRhci4gQ29uanVudG8gMzAwMSAmbmJzcDt8ICZuYnNwO0JhaXJybyBDZW50cm8gJm5ic3A7fFxuICAgICAgICAgICAgICAgICAgICAgICAgJm5ic3A7Q0VQIDgwNDEwLTE4MCAmbmJzcDt8ICZuYnNwO0N1cml0aWJhIC4gUGFyYW4mYWFjdXRlOzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjNSBjOFwiPlRlbGVmb25lICs1NSA0MSAzMTIzLTkxOTI8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzIgYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzUgYzUzXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuZDUyZmJiNjM2MmI1ODI2ZmU3OWZiMTc4NDc0NzcyN2JkZjY5OTJmOFwiPjwvYT5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuNlwiPjwvYT5cbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJjMjJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzM5XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImM3XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPk11dHVvIFNlbSBUcmFkaW5nIHZlcnPDo28gNS4wPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNTRcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzI2XCI+UCZhYWN1dGU7Z2luYSB7e3BhZ2V9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGMyNlwiPiZuYnNwO2RlIHt7cGFnZXN9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImMxMFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMiBjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM0N1wiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj5Eci4gSXNtYWlyIEp1bmlvciBDb3V0bzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPkRpcmV0b3IgSnVyJmlhY3V0ZTtkaWNvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGMwIGM4XCI+T0FCL1BSIDQ5MDAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyIGMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGM1IGM1M1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+ICAgICAgICAgICAgXG4gICAgICAgICAgICBgO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PSAzKVxuICAgICAgICB7XG4gICAgICAgICAgICByZXR1cm4gYFxuICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzhcIj5BbGFtZWRhIERvdXRvciBDYXJsb3MgZGUgQ2FydmFsaG8gbi4gNDE3ICZuZGFzaDsgMzAmb3JkbTsgYW5kYXIuIENvbmp1bnRvIDMwMDEgJm5ic3A7fCAmbmJzcDtCYWlycm8gQ2VudHJvICZuYnNwO3xcbiAgICAgICAgICAgICAgICAgICAgJm5ic3A7Q0VQIDgwNDEwLTE4MCAmbmJzcDt8ICZuYnNwO0N1cml0aWJhIC4gUGFyYW4mYWFjdXRlOzwvc3Bhbj5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGM4XCI+VGVsZWZvbmUgKzU1IDQxIDMxMjMtOTE5Mjwvc3Bhbj5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzggYzE0XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImMyMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImM0NVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjMzVcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjNDBcIj5Qcm9kdXRvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzQwXCI+TcO6dHVvICBMZVLDqnZlPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjJcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjNDBcIj5QJmFhY3V0ZTtnaW5hIHt7cGFnZX19IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPiZuYnNwO2RlIHt7cGFnZXN9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM1MVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+VmVycyZhdGlsZGU7bzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+MS40PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjRcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPkRyLiBJc21haXIgSnVuaW9yIENvdXRvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5EaXJldG9yIEp1ciZpYWN1dGU7ZGljbzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+T0FCL1BSIDQ5MDAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPGEgaWQ9XCJ0LjA4MmJjN2Y5YmQxNzQ1OGU3NjYyZWZkNDU4NzFlN2I3MmE0YTgyZmZcIj48L2E+XG4gICAgICAgICAgICA8YSBpZD1cInQuNlwiPjwvYT5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIDxwIGNsYXNzPVwiYzMgYzE2XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTQgYzhcIj48L3NwYW4+XG4gICAgICAgICAgICA8L3A+YDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT0gNClcbiAgICAgICAge1xuICAgICAgICAgICAgcmV0dXJuIGBcbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzhcIj5BbGFtZWRhIERvdXRvciBDYXJsb3MgZGUgQ2FydmFsaG8gbi4gNDE3ICZuZGFzaDsgMzAmb3JkbTsgYW5kYXIuIENvbmp1bnRvIDMwMDEgJm5ic3A7fCAmbmJzcDtCYWlycm8gQ2VudHJvICZuYnNwO3xcbiAgICAgICAgICAgICAgICAgICAgICAgICZuYnNwO0NFUCA4MDQxMC0xODAgJm5ic3A7fCAmbmJzcDtDdXJpdGliYSAuIFBhcmFuJmFhY3V0ZTs8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjOFwiPlRlbGVmb25lICs1NSA0MSAzMTIzLTkxOTI8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjOCBjMTRcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImMyMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzQ1XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjMzVcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjNlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+TcO6dHVvIExYQyBDb20gVHJhZGluZyB2ZXJzw6NvIDMuMDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzYyXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjNDBcIj5QJmFhY3V0ZTtnaW5hIHt7cGFnZX19IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjNDBcIj4mbmJzcDtkZSB7e3BhZ2VzfX0gPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNTFcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMyBjMTZcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzY0XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPkRyLiBJc21haXIgSnVuaW9yIENvdXRvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5EaXJldG9yIEp1ciZpYWN1dGU7ZGljbzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+T0FCL1BSIDQ5MDAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxhIGlkPVwidC4wODJiYzdmOWJkMTc0NThlNzY2MmVmZDQ1ODcxZTdiNzJhNGE4MmZmXCI+PC9hPlxuICAgICAgICAgICAgICAgIDxhIGlkPVwidC42XCI+PC9hPlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzIGMxNlwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxNCBjOFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+YDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT0gNSlcbiAgICAgICAge1xuICAgICAgICAgICAgcmV0dXJuIGAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzhcIj5BbGFtZWRhIERvdXRvciBDYXJsb3MgZGUgQ2FydmFsaG8gbi4gNDE3ICZuZGFzaDsgMzAmb3JkbTsgYW5kYXIuIENvbmp1bnRvIDMwMDEgJm5ic3A7fCAmbmJzcDtCYWlycm8gQ2VudHJvICZuYnNwO3xcbiAgICAgICAgICAgICAgICAgICAgICAgICZuYnNwO0NFUCA4MDQxMC0xODAgJm5ic3A7fCAmbmJzcDtDdXJpdGliYSAuIFBhcmFuJmFhY3V0ZTs8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzUgYzhcIj5UZWxlZm9uZSArNTUgNDEgMzEyMy05MTkyPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyIGMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGM1IGM1M1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPGEgaWQ9XCJ0LmQ1MmZiYjYzNjJiNTgyNmZlNzlmYjE3ODQ3NDc3MjdiZGY2OTkyZjhcIj48L2E+XG4gICAgICAgICAgICAgICAgPGEgaWQ9XCJ0LjZcIj48L2E+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwiYzIyXCI+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImMyMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImMzOVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjN1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj5Nw7p0dW8gTFhDIFNlbSBUcmFkaW5nIHZlcnPDo28gMy4wPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNTRcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzI2XCI+UCZhYWN1dGU7Z2luYSB7e3BhZ2V9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGMyNlwiPiZuYnNwO2RlIHt7cGFnZXN9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImMxMFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMiBjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM0N1wiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj5Eci4gSXNtYWlyIEp1bmlvciBDb3V0bzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPkRpcmV0b3IgSnVyJmlhY3V0ZTtkaWNvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGMwIGM4XCI+T0FCL1BSIDQ5MDAxPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyIGMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGM1IGM1M1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+ICAgICAgICAgICAgXG4gICAgICAgICAgICBgO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgaWYodGhpcy50eXBlID09IDYpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiBgXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjOSBjNlwiPjxzcGFuIGNsYXNzPVwiYzE0XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuZjM5MzhlNzk1MDIwMDVhZGY5NGE0ZTUxMjE1ZTg5ZmI4MjdhOTkyOVwiPjwvYT48YSBpZD1cInQuNVwiPjwvYT5cbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJjNTNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNDVcIiBjb2xzcGFuPVwiM1wiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzAgYzZcIj48c3BhbiBjbGFzcz1cImMyNSBjOCBjMThcIj48L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzY4XCIgY29sc3Bhbj1cIjJcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwIGM2XCI+PHNwYW4gY2xhc3M9XCJjMjUgYzggYzE4XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM2MVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMCBjNlwiPjxzcGFuIGNsYXNzPVwiYzI1IGM4IGMxOFwiPjwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjJcIiBjb2xzcGFuPVwiMlwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzAgYzZcIj48c3BhbiBjbGFzcz1cImMyNSBjOCBjMThcIj48L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjMTNcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzBcIj48c3BhbiBjbGFzcz1cImM3XCI+UHJvZHV0bzwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzBcIj48c3BhbiBjbGFzcz1cImMyNSBjOCBjMThcIj5MWENvbWJvPC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM2OVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiYzdcIj5WZXJzJmF0aWxkZTtvPC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiYzI1IGM4IGMxOFwiPjEuMDwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjRcIiBjb2xzcGFuPVwiMlwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzBcIj48c3BhbiBjbGFzcz1cImM3XCI+QXR1YWxpemEmY2NlZGlsOyZhdGlsZGU7bzwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzBcIj48c3BhbiBjbGFzcz1cImMyNSBjOCBjMThcIj4wMS8wMi8yMDE5PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM3NVwiIGNvbHNwYW49XCIzXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiYzI1IGM4IGMxOFwiPkFsYW1lZGEgRG91dG9yIENhcmxvcyBkZSBDYXJ2YWxobyBuLiA0MzEgLSAxMCZvcmRtOyBhbmRhciAmbmJzcDt8ICZuYnNwO0JhaXJybyBDZW50cm8gJm5ic3A7PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiYzI1IGM4IGMxOFwiPkNFUCA4MDQxMC0xODAgLiBDdXJpdGliYSAuIFBhcmFuJmFhY3V0ZTsgJm5ic3A7fCAmbmJzcDsrNTUgNDEgMzEyMy05MTkyICZuZGFzaDsgd3d3LmJ0Yy1iYW5jby5jb208L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzc4XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwXCI+PHNwYW4gY2xhc3M9XCJjMjUgYzggYzE4XCI+UCZhYWN1dGU7Z2luYSA8L3NwYW4+PHNwYW4gY2xhc3M9XCJjMjUgYzggYzE4XCI+Jm5ic3A7ZGUgPC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzAgYzZcIj48c3BhbiBjbGFzcz1cImMyNSBjMTUgYzQ5XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuZTg3YzYzZTQ5OWE3NjNjMjk3NGNiYTNjN2NlNGMwODA1MmM3YzhjYlwiPjwvYT48YSBpZD1cInQuNlwiPjwvYT5cbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJjMzFcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzQwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzU2XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImM0XCI+PHNwYW4gY2xhc3M9XCJjMjUgYzggYzE4XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM3NFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMCBjNlwiPjxzcGFuIGNsYXNzPVwiYzI1IGM4IGMxOFwiPjwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjMzVcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzAgYzZcIj48c3BhbiBjbGFzcz1cImMyNSBjOCBjMThcIj48L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzIyXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwIGM2XCI+PHNwYW4gY2xhc3M9XCJjMjUgYzggYzE4XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzAgYzZcIj48c3BhbiBjbGFzcz1cImMyNSBjMTUgYzQ5XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgIGBcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgKHR5cGUpID0+IG5ldyBQZGZHZW5lcmF0b3IodHlwZSk7XG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbmZyYXN0cnVjdHVyZS9wcm92aWRlcnMvUGRmR2VuZXJhdG9yLmpzIl0sIm5hbWVzIjpbImZzIiwicmVxdWlyZSIsInBkZiIsImJ1ZmZlckNvbnZlcnRlciIsInBhdGgiLCJDb250cmFjdFR5cGUiLCJTaWduYXR1cmVzIiwiUGRmR2VuZXJhdG9yIiwiY29uc3RydWN0b3IiLCJ0eXBlIiwiZ2VuZXJhdGUiLCJjb250cmFjdCIsImZpbGVfbmFtZSIsImluc2VydFNpZ25hdHVyZSIsInJlc29sIiwiaW1hZ2UiLCJtYWtlU2lnbmF0dXJlcyIsImJhc2VQYXRoIiwiam9pbiIsIl9fZGlybmFtZSIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwiaHRtbCIsIk1VVFVPX1RSQURJTkciLCJyZWFkRmlsZVN5bmMiLCJNVVRVT19TRU1fVFJBRElORyIsIk1VVFVPX0xFX1JFVkUiLCJNVVRVT19UUkFESU5HX0xYQyIsIk1VVFVPX1NFTV9UUkFESU5HX0xYQyIsIk1VVFVPX0NPTUJPX0xYQyIsImZvb3RlciIsImJ1aWxkRm9vdGVyIiwib3B0aW9ucyIsImZvcm1hdCIsImJhc2UiLCJoZWFkZXIiLCJjb250ZW50cyIsImhlaWdodCIsImRvY3VtZW50IiwidGVtcGxhdGUiLCJjb250ZXh0IiwiY3JlYXRlIiwiZXJyIiwidnBTaWduYXR1cmUiLCJIRUxPSVNBIiwiY29tZXJjaWFsU2lnbmF0dXJlIiwiSkFJTUUiLCJmaXJzdFNpZ25hdHVyZSIsInJhbmRvbWl6ZVNpZ25hdHVyZSIsInNlY29uZFNpZ25hdHVyZSIsImZpcnN0UmFuZG9tU2lnbmF0dXJlIiwic2Vjb25kUmFuZG9tU2lnbmF0dXJlIiwidGVzdGltb25pYWxzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsImtleSIsIk1hdGgiLCJmbG9vciIsInJhbmRvbSIsImxlbmd0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxNQUFNQSxLQUFLQyxRQUFRLElBQVIsQ0FBWDtBQUNB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ImNvbnN0IGZzID0gcmVxdWlyZSgnZnMnKTtcbmNvbnN0IHBkZiA9IHJlcXVpcmUoJ2R5bmFtaWMtaHRtbC1wZGYnKTtcbmNvbnN0IGJ1ZmZlckNvbnZlcnRlciA9IHJlcXVpcmUoJ2FycmF5YnVmZmVyLXRvLXN0cmluZycpO1xuY29uc3QgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKTtcbmNvbnN0IENvbnRyYWN0VHlwZSA9IHJlcXVpcmUoJy4uLy4uL2RvbWFpbi9Db250cmFjdFR5cGVFbnVtJyk7XG5jb25zdCBTaWduYXR1cmVzID0gcmVxdWlyZSgnLi4vLi4vZG9tYWluL1NpZ25hdHVyZScpO1xuXG5jbGFzcyBQZGZHZW5lcmF0b3Ige1xuICAgIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB9XG5cbiAgICBhc3luYyBnZW5lcmF0ZShjb250cmFjdCwgZmlsZV9uYW1lLCBpbnNlcnRTaWduYXR1cmUpIHtcbiAgICAgICAgdGhpcy50eXBlID0gY29udHJhY3QudHlwZVxuICAgICAgICBsZXQgcmVzb2wgPSBjb250cmFjdFxuICAgICAgICBcbiAgICAgICAgcmVzb2wuaW1hZ2UgPSAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LCcgKyBidWZmZXJDb252ZXJ0ZXIocmVzb2wuaW1hZ2UsICdiYXNlNjQnKTtcbiAgICAgICAgXG4gICAgICAgIGlmIChpbnNlcnRTaWduYXR1cmUpe1xuICAgICAgICAgICAgcmVzb2wgPSBhd2FpdCB0aGlzLm1ha2VTaWduYXR1cmVzKHJlc29sKTtcbiAgICAgICAgfVxuICAgICAgICAvL2FkZGluZyB0aGlzIHByb3BlcnR5IHRvIGdldCBcImJhc2UgZGlyZWN0b3J5IHRvIHRoZSBoZWFkZXIgaW1hZ2VzXCIgXG4gICAgICAgIHJlc29sLmJhc2VQYXRoID0gcGF0aC5qb2luKCdmaWxlOi8vLycsIF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy8nKTtcblxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBsZXQgaHRtbCA9ICcnO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT0gQ29udHJhY3RUeXBlLk1VVFVPX1RSQURJTkcpXG4gICAgICAgICAgICAgICAgICAgIGh0bWwgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9NdXR1b0NvbVRyYWRpbmcuaHRtbCcpLCAndXRmOCcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBDb250cmFjdFR5cGUuTVVUVU9fU0VNX1RSQURJTkcpXG4gICAgICAgICAgICAgICAgICAgIGh0bWwgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9NdXR1b1NlbVRyYWRpbmcuaHRtbCcpLCAndXRmOCcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBDb250cmFjdFR5cGUuTVVUVU9fTEVfUkVWRSlcbiAgICAgICAgICAgICAgICAgICAgaHRtbCA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vLi4vYXNzZXRzL011dHVvQ29tUHJvZHV0by5odG1sJyksICd1dGY4Jyk7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy50eXBlID09IENvbnRyYWN0VHlwZS5NVVRVT19UUkFESU5HX0xYQylcbiAgICAgICAgICAgICAgICAgICAgaHRtbCA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vLi4vYXNzZXRzL011dHVvQ29tVHJhZGluZ0xYQy5odG1sJyksICd1dGY4Jyk7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy50eXBlID09IENvbnRyYWN0VHlwZS5NVVRVT19TRU1fVFJBRElOR19MWEMpXG4gICAgICAgICAgICAgICAgICAgIGh0bWwgPSBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9NdXR1b1NlbVRyYWRpbmdMWEMuaHRtbCcpLCAndXRmOCcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBDb250cmFjdFR5cGUuTVVUVU9fQ09NQk9fTFhDKVxuICAgICAgICAgICAgICAgICAgICBodG1sID0gZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi8uLi8uLi9hc3NldHMvTXV0dW9Db21ib0xYQy5odG1sJyksICd1dGY4Jyk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBmb290ZXIgPSB0aGlzLmJ1aWxkRm9vdGVyKCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0OiAnTGV0dGVyJyxcbiAgICAgICAgICAgICAgICAgICAgYmFzZTogcGF0aC5qb2luKCdmaWxlOi8vLycsIF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy8nKSxcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50czogXCJcIiwvL2hlYWRlclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBcIjM1bW1cIlxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBmb290ZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiY29udGVudHNcIjogZm9vdGVyXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgZG9jdW1lbnQgPSB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdmaWxlJywgLy8gJ2ZpbGUnIG9yICdidWZmZXInXG4gICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlOiBodG1sLFxuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250cmFjdDogcmVzb2xcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgcGF0aDogJy4vJyArIGZpbGVfbmFtZSArICcucGRmJyAgLy8gaXQgaXMgbm90IHJlcXVpcmVkIGlmIHR5cGUgaXMgYnVmZmVyXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIC8vUHJvbWlzZS5yZXNvbHZlKHBkZi5jcmVhdGUoZG9jdW1lbnQsIG9wdGlvbnMpKS50aGVuKHJlcyA9PiBjb25zb2xlLmxvZyhyZXMpKTtcbiAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgIHJlc29sdmUocGRmLmNyZWF0ZShkb2N1bWVudCwgb3B0aW9ucykpO1xuXG4gICAgICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgbWFrZVNpZ25hdHVyZXMoY29udHJhY3QpIHtcbiAgICAgICAgY29udHJhY3QudnBTaWduYXR1cmUgPSBTaWduYXR1cmVzLkhFTE9JU0E7XG4gICAgICAgIGNvbnRyYWN0LmNvbWVyY2lhbFNpZ25hdHVyZSA9IFNpZ25hdHVyZXMuSkFJTUU7XG4gICAgICAgIGNvbnN0IGZpcnN0U2lnbmF0dXJlID0gYXdhaXQgdGhpcy5yYW5kb21pemVTaWduYXR1cmUoKTtcbiAgICAgICAgbGV0IHNlY29uZFNpZ25hdHVyZSA9IGF3YWl0IHRoaXMucmFuZG9taXplU2lnbmF0dXJlKCk7XG4gICAgICAgIHdoaWxlIChmaXJzdFNpZ25hdHVyZSA9PT0gc2Vjb25kU2lnbmF0dXJlKSB7XG4gICAgICAgICAgICBzZWNvbmRTaWduYXR1cmUgPSBhd2FpdCB0aGlzLnJhbmRvbWl6ZVNpZ25hdHVyZSgpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRyYWN0LmZpcnN0UmFuZG9tU2lnbmF0dXJlID0gZmlyc3RTaWduYXR1cmU7XG4gICAgICAgIGNvbnRyYWN0LnNlY29uZFJhbmRvbVNpZ25hdHVyZSA9IHNlY29uZFNpZ25hdHVyZTtcbiAgICAgICAgcmV0dXJuIGNvbnRyYWN0O1xuICAgIH1cblxuICAgIGFzeW5jIHJhbmRvbWl6ZVNpZ25hdHVyZSgpIHtcbiAgICAgICAgY29uc3QgdGVzdGltb25pYWxzID0gT2JqZWN0LmtleXMoU2lnbmF0dXJlcykuZmlsdGVyKGZ1bmN0aW9uKGtleSkge1xuICAgICAgICAgICAgaWYgKFNpZ25hdHVyZXNba2V5XSAhPT0gU2lnbmF0dXJlcy5IRUxPSVNBICYmIFNpZ25hdHVyZXNba2V5XSAhPT0gU2lnbmF0dXJlcy5KQUlNRSlcbiAgICAgICAgICAgICAgcmV0dXJuIFNpZ25hdHVyZXNba2V5XTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gU2lnbmF0dXJlc1t0ZXN0aW1vbmlhbHNbT2JqZWN0LmtleXModGVzdGltb25pYWxzKVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBPYmplY3Qua2V5cyh0ZXN0aW1vbmlhbHMpLmxlbmd0aCldXV07XG4gICAgfVxuXG4gICAgYnVpbGRGb290ZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT0gMSlcbiAgICAgICAge1xuICAgICAgICAgICAgcmV0dXJuIGBcbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzhcIj5BbGFtZWRhIERvdXRvciBDYXJsb3MgZGUgQ2FydmFsaG8gbi4gNDE3ICZuZGFzaDsgMzAmb3JkbTsgYW5kYXIuIENvbmp1bnRvIDMwMDEgJm5ic3A7fCAmbmJzcDtCYWlycm8gQ2VudHJvICZuYnNwO3xcbiAgICAgICAgICAgICAgICAgICAgICAgICZuYnNwO0NFUCA4MDQxMC0xODAgJm5ic3A7fCAmbmJzcDtDdXJpdGliYSAuIFBhcmFuJmFhY3V0ZTs8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjOFwiPlRlbGVmb25lICs1NSA0MSAzMTIzLTkxOTI8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjOCBjMTRcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImMyMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzQ1XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjMzVcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjNlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+TXV0dW8gQ29tIFRyYWRpbmcgdmVyc8OjbyA1LjA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM2MlwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzQwXCI+UCZhYWN1dGU7Z2luYSB7e3BhZ2V9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzQwXCI+Jm5ic3A7ZGUge3twYWdlc319IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzUxXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzMgYzE2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM2NFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5Eci4gSXNtYWlyIEp1bmlvciBDb3V0bzwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+RGlyZXRvciBKdXImaWFjdXRlO2RpY288L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPk9BQi9QUiA0OTAwMTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuMDgyYmM3ZjliZDE3NDU4ZTc2NjJlZmQ0NTg3MWU3YjcyYTRhODJmZlwiPjwvYT5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuNlwiPjwvYT5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMyBjMTZcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTQgYzhcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPmA7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICBpZiAodGhpcy50eXBlID09IDIpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiBgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGM4XCI+QWxhbWVkYSBEb3V0b3IgQ2FybG9zIGRlIENhcnZhbGhvIG4uIDQxNyAmbmRhc2g7IDMwJm9yZG07IGFuZGFyLiBDb25qdW50byAzMDAxICZuYnNwO3wgJm5ic3A7QmFpcnJvIENlbnRybyAmbmJzcDt8XG4gICAgICAgICAgICAgICAgICAgICAgICAmbmJzcDtDRVAgODA0MTAtMTgwICZuYnNwO3wgJm5ic3A7Q3VyaXRpYmEgLiBQYXJhbiZhYWN1dGU7PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGM1IGM4XCI+VGVsZWZvbmUgKzU1IDQxIDMxMjMtOTE5Mjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMiBjM1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjNSBjNTNcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxhIGlkPVwidC5kNTJmYmI2MzYyYjU4MjZmZTc5ZmIxNzg0NzQ3NzI3YmRmNjk5MmY4XCI+PC9hPlxuICAgICAgICAgICAgICAgIDxhIGlkPVwidC42XCI+PC9hPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImMyMlwiPlxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJjMjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjMzlcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGMwIGM4XCI+TXV0dW8gU2VtIFRyYWRpbmcgdmVyc8OjbyA1LjA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM1NFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjMjZcIj5QJmFhY3V0ZTtnaW5hIHt7cGFnZX19IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzI2XCI+Jm5ic3A7ZGUge3twYWdlc319IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzEwXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyIGMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzQ3XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPkRyLiBJc21haXIgSnVuaW9yIENvdXRvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGMwIGM4XCI+RGlyZXRvciBKdXImaWFjdXRlO2RpY288L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj5PQUIvUFIgNDkwMDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzIgYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzUgYzUzXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD4gICAgICAgICAgICBcbiAgICAgICAgICAgIGA7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICBpZiAodGhpcy50eXBlID09IDMpXG4gICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiBgXG4gICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjOFwiPkFsYW1lZGEgRG91dG9yIENhcmxvcyBkZSBDYXJ2YWxobyBuLiA0MTcgJm5kYXNoOyAzMCZvcmRtOyBhbmRhci4gQ29uanVudG8gMzAwMSAmbmJzcDt8ICZuYnNwO0JhaXJybyBDZW50cm8gJm5ic3A7fFxuICAgICAgICAgICAgICAgICAgICAmbmJzcDtDRVAgODA0MTAtMTgwICZuYnNwO3wgJm5ic3A7Q3VyaXRpYmEgLiBQYXJhbiZhYWN1dGU7PC9zcGFuPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzhcIj5UZWxlZm9uZSArNTUgNDEgMzEyMy05MTkyPC9zcGFuPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjOCBjMTRcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwiYzIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzQ1XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImMzNVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPlByb2R1dG88L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjNDBcIj5Nw7p0dW8gIExlUsOqdmU8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM2MlwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPlAmYWFjdXRlO2dpbmEge3twYWdlfX0gPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzQwXCI+Jm5ic3A7ZGUge3twYWdlc319IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzUxXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5WZXJzJmF0aWxkZTtvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj4xLjQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM2NFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+RHIuIElzbWFpciBKdW5pb3IgQ291dG88L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPkRpcmV0b3IgSnVyJmlhY3V0ZTtkaWNvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5PQUIvUFIgNDkwMDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8YSBpZD1cInQuMDgyYmM3ZjliZDE3NDU4ZTc2NjJlZmQ0NTg3MWU3YjcyYTRhODJmZlwiPjwvYT5cbiAgICAgICAgICAgIDxhIGlkPVwidC42XCI+PC9hPlxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgPHAgY2xhc3M9XCJjMyBjMTZcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxNCBjOFwiPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvcD5gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PSA0KVxuICAgICAgICB7XG4gICAgICAgICAgICByZXR1cm4gYFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjOFwiPkFsYW1lZGEgRG91dG9yIENhcmxvcyBkZSBDYXJ2YWxobyBuLiA0MTcgJm5kYXNoOyAzMCZvcmRtOyBhbmRhci4gQ29uanVudG8gMzAwMSAmbmJzcDt8ICZuYnNwO0JhaXJybyBDZW50cm8gJm5ic3A7fFxuICAgICAgICAgICAgICAgICAgICAgICAgJm5ic3A7Q0VQIDgwNDEwLTE4MCAmbmJzcDt8ICZuYnNwO0N1cml0aWJhIC4gUGFyYW4mYWFjdXRlOzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGM4XCI+VGVsZWZvbmUgKzU1IDQxIDMxMjMtOTE5Mjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM4IGMxNFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwiYzIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJjNDVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImMzNVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImM2XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5Nw7p0dW8gTFhDIENvbSBUcmFkaW5nIHZlcnPDo28gMy4wPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjJcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPlAmYWFjdXRlO2dpbmEge3twYWdlfX0gPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMwIGM0MFwiPiZuYnNwO2RlIHt7cGFnZXN9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM1MVwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzIGMxNlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJjNjRcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImM0IGMwXCI+RHIuIElzbWFpciBKdW5pb3IgQ291dG88L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjMFwiPkRpcmV0b3IgSnVyJmlhY3V0ZTtkaWNvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzQgYzBcIj5PQUIvUFIgNDkwMDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPGEgaWQ9XCJ0LjA4MmJjN2Y5YmQxNzQ1OGU3NjYyZWZkNDU4NzFlN2I3MmE0YTgyZmZcIj48L2E+XG4gICAgICAgICAgICAgICAgPGEgaWQ9XCJ0LjZcIj48L2E+XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzMgYzE2XCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE0IGM4XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PSA1KVxuICAgICAgICB7XG4gICAgICAgICAgICByZXR1cm4gYCAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjNCBjOFwiPkFsYW1lZGEgRG91dG9yIENhcmxvcyBkZSBDYXJ2YWxobyBuLiA0MTcgJm5kYXNoOyAzMCZvcmRtOyBhbmRhci4gQ29uanVudG8gMzAwMSAmbmJzcDt8ICZuYnNwO0JhaXJybyBDZW50cm8gJm5ic3A7fFxuICAgICAgICAgICAgICAgICAgICAgICAgJm5ic3A7Q0VQIDgwNDEwLTE4MCAmbmJzcDt8ICZuYnNwO0N1cml0aWJhIC4gUGFyYW4mYWFjdXRlOzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjNSBjOFwiPlRlbGVmb25lICs1NSA0MSAzMTIzLTkxOTI8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzIgYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzUgYzUzXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuZDUyZmJiNjM2MmI1ODI2ZmU3OWZiMTc4NDc0NzcyN2JkZjY5OTJmOFwiPjwvYT5cbiAgICAgICAgICAgICAgICA8YSBpZD1cInQuNlwiPjwvYT5cbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJjMjJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYzIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzM5XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImM3XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPk3DunR1byBMWEMgU2VtIFRyYWRpbmcgdmVyc8OjbyAzLjA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImM1NFwiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMCBjMjZcIj5QJmFhY3V0ZTtnaW5hIHt7cGFnZX19IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzAgYzI2XCI+Jm5ic3A7ZGUge3twYWdlc319IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzEwXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyIGMzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYzQ3XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImMxOCBjMCBjOFwiPkRyLiBJc21haXIgSnVuaW9yIENvdXRvPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYzE4IGMwIGM4XCI+RGlyZXRvciBKdXImaWFjdXRlO2RpY288L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzAgYzhcIj5PQUIvUFIgNDkwMDE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzIgYzNcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjMTggYzUgYzUzXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvcD4gICAgICAgICAgICBcbiAgICAgICAgICAgIGA7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICBpZih0aGlzLnR5cGUgPT0gNilcbiAgICAgICAge1xuICAgICAgICAgICAgcmV0dXJuIGBcbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImM5IGM2XCI+PHNwYW4gY2xhc3M9XCJjMTRcIj48L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgIDxhIGlkPVwidC5mMzkzOGU3OTUwMjAwNWFkZjk0YTRlNTEyMTVlODlmYjgyN2E5OTI5XCI+PC9hPjxhIGlkPVwidC41XCI+PC9hPlxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImRvU3R5bGU1M1wiPlxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJkb1N0eWxlNVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImRvU3R5bGU0NVwiIGNvbHNwYW49XCIzXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMCBjNlwiPjxzcGFuIGNsYXNzPVwiZG9TdHlsZTI1IGRvU3R5bGU4IGRvU3R5bGUxOFwiPjwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJkb1N0eWxlNjhcIiBjb2xzcGFuPVwiMlwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzAgYzZcIj48c3BhbiBjbGFzcz1cImRvU3R5bGUyNSBkb1N0eWxlOCBkb1N0eWxlMThcIj48L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZG9TdHlsZTYxXCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwIGM2XCI+PHNwYW4gY2xhc3M9XCJkb1N0eWxlMjUgZG9TdHlsZTggZG9TdHlsZTE4XCI+PC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImRvU3R5bGU2MlwiIGNvbHNwYW49XCIyXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMCBjNlwiPjxzcGFuIGNsYXNzPVwiZG9TdHlsZTI1IGRvU3R5bGU4IGRvU3R5bGUxOFwiPjwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJkb1N0eWxlNVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImRvU3R5bGUxM1wiIGNvbHNwYW49XCIxXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiZG9TdHlsZTdcIj5Qcm9kdXRvPC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiZG9TdHlsZTI1IGRvU3R5bGU4IGRvU3R5bGUxOFwiPkxYQ29tYm88L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZG9TdHlsZTY5XCIgY29sc3Bhbj1cIjFcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwXCI+PHNwYW4gY2xhc3M9XCJkb1N0eWxlN1wiPlZlcnMmYXRpbGRlO288L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwXCI+PHNwYW4gY2xhc3M9XCJkb1N0eWxlMjUgZG9TdHlsZTggZG9TdHlsZTE4XCI+MS4wPC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImRvU3R5bGU2NFwiIGNvbHNwYW49XCIyXCIgcm93c3Bhbj1cIjFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiZG9TdHlsZTdcIj5BdHVhbGl6YSZjY2VkaWw7JmF0aWxkZTtvPC9zcGFuPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJjMFwiPjxzcGFuIGNsYXNzPVwiZG9TdHlsZTI1IGRvU3R5bGU4IGRvU3R5bGUxOFwiPjAxLzAyLzIwMTk8L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZG9TdHlsZTc1XCIgY29sc3Bhbj1cIjNcIiByb3dzcGFuPVwiMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwXCI+PHNwYW4gY2xhc3M9XCJkb1N0eWxlMjUgZG9TdHlsZTggZG9TdHlsZTE4XCI+QWxhbWVkYSBEb3V0b3IgQ2FybG9zIGRlIENhcnZhbGhvIG4uIDQzMSAtIDEwJm9yZG07IGFuZGFyICZuYnNwO3wgJm5ic3A7QmFpcnJvIENlbnRybyAmbmJzcDs8L3NwYW4+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImMwXCI+PHNwYW4gY2xhc3M9XCJkb1N0eWxlMjUgZG9TdHlsZTggZG9TdHlsZTE4XCI+Q0VQIDgwNDEwLTE4MCAuIEN1cml0aWJhIC4gUGFyYW4mYWFjdXRlOyAmbmJzcDt8ICZuYnNwOys1NSA0MSAzMTIzLTkxOTIgJm5kYXNoOyB3d3cuYnRjLWJhbmNvLmNvbTwvc3Bhbj48L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJkb1N0eWxlNzhcIiBjb2xzcGFuPVwiMVwiIHJvd3NwYW49XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYzBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZG9TdHlsZTI1IGRvU3R5bGU4IGRvU3R5bGUxOFwiPlAmYWFjdXRlO2dpbmEge3twYWdlfX0gPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkb1N0eWxlMjUgZG9TdHlsZTggZG9TdHlsZTE4XCI+Jm5ic3A7ZGUge3twYWdlc319IDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICBgXG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0ICh0eXBlKSA9PiBuZXcgUGRmR2VuZXJhdG9yKHR5cGUpO1xuIl19 |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
3685204
1503