Comparing version 2.2.0 to 2.2.1
@@ -12,17 +12,24 @@ /* eslint-disable no-console */ | ||
}), 'Invalid Options Provided'); | ||
let verbose = opts.verbose; | ||
let consoleOriginal = null; | ||
let logs; | ||
const reset = () => { | ||
logs = []; | ||
logLevels.forEach(level => { | ||
logs[level] = []; | ||
}); | ||
}; | ||
return { | ||
inject: () => { | ||
assert(consoleOriginal === null); | ||
consoleOriginal = ['log', 'info', 'error', 'warn'].reduce((p, c) => Object.assign(p, { | ||
verbose = opts.verbose; | ||
consoleOriginal = logLevels.reduce((p, c) => Object.assign(p, { | ||
[c]: console[c] | ||
}), {}); | ||
logs = []; | ||
logLevels.forEach(level => { | ||
logs[level] = []; | ||
}); | ||
reset(); | ||
Object.keys(consoleOriginal).forEach(logLevel => { | ||
console[logLevel] = (...args) => { | ||
if (opts.verbose === true) { | ||
if (verbose === true) { | ||
consoleOriginal[logLevel](...args); | ||
@@ -41,11 +48,15 @@ } | ||
}, | ||
get: () => { | ||
const result = logs.slice(); | ||
logLevels.forEach(level => { | ||
result[level] = logs[level].slice(); | ||
}); | ||
return result; | ||
recorder: { | ||
verbose: state => { | ||
assert(typeof state === 'boolean'); | ||
verbose = state; | ||
}, | ||
get: (level = null) => { | ||
assert(level === null || logLevels.includes(level)); | ||
return (level === null ? logs : logs[level]).slice(); | ||
}, | ||
reset | ||
} | ||
}; | ||
}; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2R1bGVzL2NvbnNvbGUtcmVjb3JkZXIuanMiXSwibmFtZXMiOlsiYXNzZXJ0IiwicmVxdWlyZSIsIkpvaSIsImxvZ0xldmVscyIsIm1vZHVsZSIsImV4cG9ydHMiLCJvcHRzIiwib2JqZWN0Iiwia2V5cyIsInZlcmJvc2UiLCJib29sZWFuIiwiY29uc29sZU9yaWdpbmFsIiwibG9ncyIsImluamVjdCIsInJlZHVjZSIsInAiLCJjIiwiT2JqZWN0IiwiYXNzaWduIiwiY29uc29sZSIsImZvckVhY2giLCJsZXZlbCIsImxvZ0xldmVsIiwiYXJncyIsInB1c2giLCJyZWxlYXNlIiwiZ2V0IiwicmVzdWx0Iiwic2xpY2UiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0EsTUFBTUEsTUFBTSxHQUFHQyxPQUFPLENBQUMsUUFBRCxDQUF0Qjs7QUFDQSxNQUFNQyxHQUFHLEdBQUdELE9BQU8sQ0FBQyxZQUFELENBQW5COztBQUVBLE1BQU1FLFNBQVMsR0FBRyxDQUFDLEtBQUQsRUFBUSxNQUFSLEVBQWdCLE9BQWhCLEVBQXlCLE1BQXpCLENBQWxCOztBQUVBQyxNQUFNLENBQUNDLE9BQVAsR0FBa0JDLElBQUQsSUFBVTtBQUN6QkosRUFBQUEsR0FBRyxDQUFDRixNQUFKLENBQVdNLElBQVgsRUFBaUJKLEdBQUcsQ0FBQ0ssTUFBSixHQUFhQyxJQUFiLENBQWtCO0FBQ2pDQyxJQUFBQSxPQUFPLEVBQUVQLEdBQUcsQ0FBQ1EsT0FBSjtBQUR3QixHQUFsQixDQUFqQixFQUVJLDBCQUZKO0FBR0EsTUFBSUMsZUFBZSxHQUFHLElBQXRCO0FBQ0EsTUFBSUMsSUFBSjtBQUNBLFNBQU87QUFDTEMsSUFBQUEsTUFBTSxFQUFFLE1BQU07QUFDWmIsTUFBQUEsTUFBTSxDQUFDVyxlQUFlLEtBQUssSUFBckIsQ0FBTjtBQUNBQSxNQUFBQSxlQUFlLEdBQUcsQ0FBQyxLQUFELEVBQVEsTUFBUixFQUFnQixPQUFoQixFQUF5QixNQUF6QixFQUNmRyxNQURlLENBQ1IsQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLEtBQVVDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjSCxDQUFkLEVBQWlCO0FBQUUsU0FBQ0MsQ0FBRCxHQUFLRyxPQUFPLENBQUNILENBQUQ7QUFBZCxPQUFqQixDQURGLEVBQ3lDLEVBRHpDLENBQWxCO0FBRUFKLE1BQUFBLElBQUksR0FBRyxFQUFQO0FBQ0FULE1BQUFBLFNBQVMsQ0FBQ2lCLE9BQVYsQ0FBbUJDLEtBQUQsSUFBVztBQUMzQlQsUUFBQUEsSUFBSSxDQUFDUyxLQUFELENBQUosR0FBYyxFQUFkO0FBQ0QsT0FGRDtBQUdBSixNQUFBQSxNQUFNLENBQUNULElBQVAsQ0FBWUcsZUFBWixFQUE2QlMsT0FBN0IsQ0FBc0NFLFFBQUQsSUFBYztBQUNqREgsUUFBQUEsT0FBTyxDQUFDRyxRQUFELENBQVAsR0FBb0IsQ0FBQyxHQUFHQyxJQUFKLEtBQWE7QUFDL0IsY0FBSWpCLElBQUksQ0FBQ0csT0FBTCxLQUFpQixJQUFyQixFQUEyQjtBQUN6QkUsWUFBQUEsZUFBZSxDQUFDVyxRQUFELENBQWYsQ0FBMEIsR0FBR0MsSUFBN0I7QUFDRDs7QUFDRFgsVUFBQUEsSUFBSSxDQUFDWSxJQUFMLENBQVUsR0FBR0QsSUFBYjtBQUNBWCxVQUFBQSxJQUFJLENBQUNVLFFBQUQsQ0FBSixDQUFlRSxJQUFmLENBQW9CLEdBQUdELElBQXZCO0FBQ0QsU0FORDtBQU9ELE9BUkQ7QUFTRCxLQWxCSTtBQW1CTEUsSUFBQUEsT0FBTyxFQUFFLE1BQU07QUFDYnpCLE1BQUFBLE1BQU0sQ0FBQ1csZUFBZSxLQUFLLElBQXJCLENBQU47QUFDQU0sTUFBQUEsTUFBTSxDQUFDQyxNQUFQLENBQWNDLE9BQWQsRUFBdUJSLGVBQXZCO0FBQ0FBLE1BQUFBLGVBQWUsR0FBRyxJQUFsQjtBQUNELEtBdkJJO0FBd0JMZSxJQUFBQSxHQUFHLEVBQUUsTUFBTTtBQUNULFlBQU1DLE1BQU0sR0FBR2YsSUFBSSxDQUFDZ0IsS0FBTCxFQUFmO0FBQ0F6QixNQUFBQSxTQUFTLENBQUNpQixPQUFWLENBQW1CQyxLQUFELElBQVc7QUFDM0JNLFFBQUFBLE1BQU0sQ0FBQ04sS0FBRCxDQUFOLEdBQWdCVCxJQUFJLENBQUNTLEtBQUQsQ0FBSixDQUFZTyxLQUFaLEVBQWhCO0FBQ0QsT0FGRDtBQUdBLGFBQU9ELE1BQVA7QUFDRDtBQTlCSSxHQUFQO0FBZ0NELENBdENEIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0Jyk7XG5jb25zdCBKb2kgPSByZXF1aXJlKCdqb2ktc3RyaWN0Jyk7XG5cbmNvbnN0IGxvZ0xldmVscyA9IFsnbG9nJywgJ2luZm8nLCAnZXJyb3InLCAnd2FybiddO1xuXG5tb2R1bGUuZXhwb3J0cyA9IChvcHRzKSA9PiB7XG4gIEpvaS5hc3NlcnQob3B0cywgSm9pLm9iamVjdCgpLmtleXMoe1xuICAgIHZlcmJvc2U6IEpvaS5ib29sZWFuKClcbiAgfSksICdJbnZhbGlkIE9wdGlvbnMgUHJvdmlkZWQnKTtcbiAgbGV0IGNvbnNvbGVPcmlnaW5hbCA9IG51bGw7XG4gIGxldCBsb2dzO1xuICByZXR1cm4ge1xuICAgIGluamVjdDogKCkgPT4ge1xuICAgICAgYXNzZXJ0KGNvbnNvbGVPcmlnaW5hbCA9PT0gbnVsbCk7XG4gICAgICBjb25zb2xlT3JpZ2luYWwgPSBbJ2xvZycsICdpbmZvJywgJ2Vycm9yJywgJ3dhcm4nXVxuICAgICAgICAucmVkdWNlKChwLCBjKSA9PiBPYmplY3QuYXNzaWduKHAsIHsgW2NdOiBjb25zb2xlW2NdIH0pLCB7fSk7XG4gICAgICBsb2dzID0gW107XG4gICAgICBsb2dMZXZlbHMuZm9yRWFjaCgobGV2ZWwpID0+IHtcbiAgICAgICAgbG9nc1tsZXZlbF0gPSBbXTtcbiAgICAgIH0pO1xuICAgICAgT2JqZWN0LmtleXMoY29uc29sZU9yaWdpbmFsKS5mb3JFYWNoKChsb2dMZXZlbCkgPT4ge1xuICAgICAgICBjb25zb2xlW2xvZ0xldmVsXSA9ICguLi5hcmdzKSA9PiB7XG4gICAgICAgICAgaWYgKG9wdHMudmVyYm9zZSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgY29uc29sZU9yaWdpbmFsW2xvZ0xldmVsXSguLi5hcmdzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbG9ncy5wdXNoKC4uLmFyZ3MpO1xuICAgICAgICAgIGxvZ3NbbG9nTGV2ZWxdLnB1c2goLi4uYXJncyk7XG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHJlbGVhc2U6ICgpID0+IHtcbiAgICAgIGFzc2VydChjb25zb2xlT3JpZ2luYWwgIT09IG51bGwpO1xuICAgICAgT2JqZWN0LmFzc2lnbihjb25zb2xlLCBjb25zb2xlT3JpZ2luYWwpO1xuICAgICAgY29uc29sZU9yaWdpbmFsID0gbnVsbDtcbiAgICB9LFxuICAgIGdldDogKCkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gbG9ncy5zbGljZSgpO1xuICAgICAgbG9nTGV2ZWxzLmZvckVhY2goKGxldmVsKSA9PiB7XG4gICAgICAgIHJlc3VsdFtsZXZlbF0gPSBsb2dzW2xldmVsXS5zbGljZSgpO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgfTtcbn07XG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2R1bGVzL2NvbnNvbGUtcmVjb3JkZXIuanMiXSwibmFtZXMiOlsiYXNzZXJ0IiwicmVxdWlyZSIsIkpvaSIsImxvZ0xldmVscyIsIm1vZHVsZSIsImV4cG9ydHMiLCJvcHRzIiwib2JqZWN0Iiwia2V5cyIsInZlcmJvc2UiLCJib29sZWFuIiwiY29uc29sZU9yaWdpbmFsIiwibG9ncyIsInJlc2V0IiwiZm9yRWFjaCIsImxldmVsIiwiaW5qZWN0IiwicmVkdWNlIiwicCIsImMiLCJPYmplY3QiLCJhc3NpZ24iLCJjb25zb2xlIiwibG9nTGV2ZWwiLCJhcmdzIiwicHVzaCIsInJlbGVhc2UiLCJyZWNvcmRlciIsInN0YXRlIiwiZ2V0IiwiaW5jbHVkZXMiLCJzbGljZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxNQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxRQUFELENBQXRCOztBQUNBLE1BQU1DLEdBQUcsR0FBR0QsT0FBTyxDQUFDLFlBQUQsQ0FBbkI7O0FBRUEsTUFBTUUsU0FBUyxHQUFHLENBQUMsS0FBRCxFQUFRLE1BQVIsRUFBZ0IsT0FBaEIsRUFBeUIsTUFBekIsQ0FBbEI7O0FBRUFDLE1BQU0sQ0FBQ0MsT0FBUCxHQUFrQkMsSUFBRCxJQUFVO0FBQ3pCSixFQUFBQSxHQUFHLENBQUNGLE1BQUosQ0FBV00sSUFBWCxFQUFpQkosR0FBRyxDQUFDSyxNQUFKLEdBQWFDLElBQWIsQ0FBa0I7QUFDakNDLElBQUFBLE9BQU8sRUFBRVAsR0FBRyxDQUFDUSxPQUFKO0FBRHdCLEdBQWxCLENBQWpCLEVBRUksMEJBRko7QUFHQSxNQUFJRCxPQUFPLEdBQUdILElBQUksQ0FBQ0csT0FBbkI7QUFDQSxNQUFJRSxlQUFlLEdBQUcsSUFBdEI7QUFFQSxNQUFJQyxJQUFKOztBQUNBLFFBQU1DLEtBQUssR0FBRyxNQUFNO0FBQ2xCRCxJQUFBQSxJQUFJLEdBQUcsRUFBUDtBQUNBVCxJQUFBQSxTQUFTLENBQUNXLE9BQVYsQ0FBbUJDLEtBQUQsSUFBVztBQUMzQkgsTUFBQUEsSUFBSSxDQUFDRyxLQUFELENBQUosR0FBYyxFQUFkO0FBQ0QsS0FGRDtBQUdELEdBTEQ7O0FBT0EsU0FBTztBQUNMQyxJQUFBQSxNQUFNLEVBQUUsTUFBTTtBQUNaaEIsTUFBQUEsTUFBTSxDQUFDVyxlQUFlLEtBQUssSUFBckIsQ0FBTjtBQUNBRixNQUFBQSxPQUFPLEdBQUdILElBQUksQ0FBQ0csT0FBZjtBQUNBRSxNQUFBQSxlQUFlLEdBQUdSLFNBQVMsQ0FDeEJjLE1BRGUsQ0FDUixDQUFDQyxDQUFELEVBQUlDLENBQUosS0FBVUMsTUFBTSxDQUFDQyxNQUFQLENBQWNILENBQWQsRUFBaUI7QUFBRSxTQUFDQyxDQUFELEdBQUtHLE9BQU8sQ0FBQ0gsQ0FBRDtBQUFkLE9BQWpCLENBREYsRUFDeUMsRUFEekMsQ0FBbEI7QUFFQU4sTUFBQUEsS0FBSztBQUNMTyxNQUFBQSxNQUFNLENBQUNaLElBQVAsQ0FBWUcsZUFBWixFQUE2QkcsT0FBN0IsQ0FBc0NTLFFBQUQsSUFBYztBQUNqREQsUUFBQUEsT0FBTyxDQUFDQyxRQUFELENBQVAsR0FBb0IsQ0FBQyxHQUFHQyxJQUFKLEtBQWE7QUFDL0IsY0FBSWYsT0FBTyxLQUFLLElBQWhCLEVBQXNCO0FBQ3BCRSxZQUFBQSxlQUFlLENBQUNZLFFBQUQsQ0FBZixDQUEwQixHQUFHQyxJQUE3QjtBQUNEOztBQUNEWixVQUFBQSxJQUFJLENBQUNhLElBQUwsQ0FBVSxHQUFHRCxJQUFiO0FBQ0FaLFVBQUFBLElBQUksQ0FBQ1csUUFBRCxDQUFKLENBQWVFLElBQWYsQ0FBb0IsR0FBR0QsSUFBdkI7QUFDRCxTQU5EO0FBT0QsT0FSRDtBQVNELEtBaEJJO0FBaUJMRSxJQUFBQSxPQUFPLEVBQUUsTUFBTTtBQUNiMUIsTUFBQUEsTUFBTSxDQUFDVyxlQUFlLEtBQUssSUFBckIsQ0FBTjtBQUNBUyxNQUFBQSxNQUFNLENBQUNDLE1BQVAsQ0FBY0MsT0FBZCxFQUF1QlgsZUFBdkI7QUFDQUEsTUFBQUEsZUFBZSxHQUFHLElBQWxCO0FBQ0QsS0FyQkk7QUFzQkxnQixJQUFBQSxRQUFRLEVBQUU7QUFDUmxCLE1BQUFBLE9BQU8sRUFBR21CLEtBQUQsSUFBVztBQUNsQjVCLFFBQUFBLE1BQU0sQ0FBQyxPQUFPNEIsS0FBUCxLQUFpQixTQUFsQixDQUFOO0FBQ0FuQixRQUFBQSxPQUFPLEdBQUdtQixLQUFWO0FBQ0QsT0FKTztBQUtSQyxNQUFBQSxHQUFHLEVBQUUsQ0FBQ2QsS0FBSyxHQUFHLElBQVQsS0FBa0I7QUFDckJmLFFBQUFBLE1BQU0sQ0FBQ2UsS0FBSyxLQUFLLElBQVYsSUFBa0JaLFNBQVMsQ0FBQzJCLFFBQVYsQ0FBbUJmLEtBQW5CLENBQW5CLENBQU47QUFDQSxlQUFPLENBQUNBLEtBQUssS0FBSyxJQUFWLEdBQWlCSCxJQUFqQixHQUF3QkEsSUFBSSxDQUFDRyxLQUFELENBQTdCLEVBQXNDZ0IsS0FBdEMsRUFBUDtBQUNELE9BUk87QUFTUmxCLE1BQUFBO0FBVFE7QUF0QkwsR0FBUDtBQWtDRCxDQWpERCIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpO1xuY29uc3QgSm9pID0gcmVxdWlyZSgnam9pLXN0cmljdCcpO1xuXG5jb25zdCBsb2dMZXZlbHMgPSBbJ2xvZycsICdpbmZvJywgJ2Vycm9yJywgJ3dhcm4nXTtcblxubW9kdWxlLmV4cG9ydHMgPSAob3B0cykgPT4ge1xuICBKb2kuYXNzZXJ0KG9wdHMsIEpvaS5vYmplY3QoKS5rZXlzKHtcbiAgICB2ZXJib3NlOiBKb2kuYm9vbGVhbigpXG4gIH0pLCAnSW52YWxpZCBPcHRpb25zIFByb3ZpZGVkJyk7XG4gIGxldCB2ZXJib3NlID0gb3B0cy52ZXJib3NlO1xuICBsZXQgY29uc29sZU9yaWdpbmFsID0gbnVsbDtcblxuICBsZXQgbG9ncztcbiAgY29uc3QgcmVzZXQgPSAoKSA9PiB7XG4gICAgbG9ncyA9IFtdO1xuICAgIGxvZ0xldmVscy5mb3JFYWNoKChsZXZlbCkgPT4ge1xuICAgICAgbG9nc1tsZXZlbF0gPSBbXTtcbiAgICB9KTtcbiAgfTtcblxuICByZXR1cm4ge1xuICAgIGluamVjdDogKCkgPT4ge1xuICAgICAgYXNzZXJ0KGNvbnNvbGVPcmlnaW5hbCA9PT0gbnVsbCk7XG4gICAgICB2ZXJib3NlID0gb3B0cy52ZXJib3NlO1xuICAgICAgY29uc29sZU9yaWdpbmFsID0gbG9nTGV2ZWxzXG4gICAgICAgIC5yZWR1Y2UoKHAsIGMpID0+IE9iamVjdC5hc3NpZ24ocCwgeyBbY106IGNvbnNvbGVbY10gfSksIHt9KTtcbiAgICAgIHJlc2V0KCk7XG4gICAgICBPYmplY3Qua2V5cyhjb25zb2xlT3JpZ2luYWwpLmZvckVhY2goKGxvZ0xldmVsKSA9PiB7XG4gICAgICAgIGNvbnNvbGVbbG9nTGV2ZWxdID0gKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICBpZiAodmVyYm9zZSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgY29uc29sZU9yaWdpbmFsW2xvZ0xldmVsXSguLi5hcmdzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbG9ncy5wdXNoKC4uLmFyZ3MpO1xuICAgICAgICAgIGxvZ3NbbG9nTGV2ZWxdLnB1c2goLi4uYXJncyk7XG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHJlbGVhc2U6ICgpID0+IHtcbiAgICAgIGFzc2VydChjb25zb2xlT3JpZ2luYWwgIT09IG51bGwpO1xuICAgICAgT2JqZWN0LmFzc2lnbihjb25zb2xlLCBjb25zb2xlT3JpZ2luYWwpO1xuICAgICAgY29uc29sZU9yaWdpbmFsID0gbnVsbDtcbiAgICB9LFxuICAgIHJlY29yZGVyOiB7XG4gICAgICB2ZXJib3NlOiAoc3RhdGUpID0+IHtcbiAgICAgICAgYXNzZXJ0KHR5cGVvZiBzdGF0ZSA9PT0gJ2Jvb2xlYW4nKTtcbiAgICAgICAgdmVyYm9zZSA9IHN0YXRlO1xuICAgICAgfSxcbiAgICAgIGdldDogKGxldmVsID0gbnVsbCkgPT4ge1xuICAgICAgICBhc3NlcnQobGV2ZWwgPT09IG51bGwgfHwgbG9nTGV2ZWxzLmluY2x1ZGVzKGxldmVsKSk7XG4gICAgICAgIHJldHVybiAobGV2ZWwgPT09IG51bGwgPyBsb2dzIDogbG9nc1tsZXZlbF0pLnNsaWNlKCk7XG4gICAgICB9LFxuICAgICAgcmVzZXRcbiAgICB9XG4gIH07XG59O1xuIl19 |
@@ -91,3 +91,3 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
}, {}, consoleRecorder === null ? {} : { | ||
getConsoleOutput: consoleRecorder.get | ||
recorder: consoleRecorder.recorder | ||
}); | ||
@@ -203,3 +203,3 @@ | ||
consoleRecorder = ConsoleRecorder({ | ||
verbose: true | ||
verbose: process.argv.slice(2).includes('--verbose') | ||
}); | ||
@@ -272,2 +272,2 @@ consoleRecorder.inject(); | ||
module.exports = desc; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL2Rlc2MuanMiXSwibmFtZXMiOlsiYXNzZXJ0IiwicmVxdWlyZSIsInBhdGgiLCJmcyIsImNhbGxzaXRlcyIsImdldCIsInRtcCIsIkpvaSIsIlJlcXVlc3RSZWNvcmRlciIsIkVudk1hbmFnZXIiLCJUaW1lS2VlcGVyIiwiQ29uc29sZVJlY29yZGVyIiwiUmFuZG9tU2VlZGVyIiwiZ2V0UGFyZW50cyIsImdlbkNhc3NldHRlTmFtZSIsIm1vY2hhIiwiaXQiLCJzcGVjaWZ5IiwiZGVzY3JpYmUiLCJjb250ZXh0IiwiYmVmb3JlIiwiYWZ0ZXIiLCJiZWZvcmVFYWNoIiwiYWZ0ZXJFYWNoIiwiZGVzYyIsInN1aXRlTmFtZSIsIm9wdHNPclRlc3RzIiwidGVzdHNPck51bGwiLCJvcHRzIiwidGVzdHMiLCJ0ZXN0RmlsZSIsInJlc29sdmUiLCJnZXRGaWxlTmFtZSIsImVudlZhckZpbGUiLCJvYmplY3QiLCJrZXlzIiwidXNlVG1wRGlyIiwiYm9vbGVhbiIsIm9wdGlvbmFsIiwidXNlTm9jayIsImVudlZhcnMiLCJ1bmtub3duIiwicGF0dGVybiIsInN0cmluZyIsInRpbWVzdGFtcCIsIm51bWJlciIsIm1pbiIsInJlY29yZENvbnNvbGUiLCJjcnlwdG9TZWVkIiwidGltZW91dCIsImRpciIsInJlcXVlc3RSZWNvcmRlciIsImVudk1hbmFnZXJGaWxlIiwiZW52TWFuYWdlckRlc2MiLCJ0aW1lS2VlcGVyIiwiY29uc29sZVJlY29yZGVyIiwicmFuZG9tU2VlZGVyIiwiZ2V0QXJncyIsImNhcHR1cmUiLCJmbiIsImUiLCJBc3NlcnRpb25FcnJvciIsIm1lc3NhZ2UiLCJnZXRDb25zb2xlT3V0cHV0IiwiYmVmb3JlQ2IiLCJhZnRlckNiIiwiYmVmb3JlRWFjaENiIiwiYWZ0ZXJFYWNoQ2IiLCJ0ZXN0IiwibGVuZ3RoIiwiZXhpc3RzU3luYyIsInNtYXJ0UmVhZCIsImFsbG93T3ZlcndyaXRlIiwiYXBwbHkiLCJ1bml4IiwiaW5qZWN0Iiwic2VlZCIsInJlc2VlZCIsImNhc3NldHRlRm9sZGVyIiwic3RyaXBIZWFkZXJzIiwic3RyaWN0IiwiY2FsbCIsInNodXRkb3duIiwicmVsZWFzZSIsInVuYXBwbHkiLCJzZXRHcmFjZWZ1bENsZWFudXAiLCJkaXJTeW5jIiwia2VlcCIsInVuc2FmZUNsZWFudXAiLCJuYW1lIiwiY3VycmVudFRlc3QiLCJ2ZXJib3NlIiwiZ2xvYmFsc1ByZXYiLCJPYmplY3QiLCJyZWR1Y2UiLCJwIiwia2V5IiwiYXNzaWduIiwiZ2xvYmFsIiwidGVzdE5hbWUiLCJ0b1N0cmluZyIsImRvbmUiLCJlbnRyaWVzIiwiZm9yRWFjaCIsImsiLCJ2IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsTUFBTUEsTUFBTSxHQUFHQyxPQUFPLENBQUMsUUFBRCxDQUF0Qjs7QUFDQSxNQUFNQyxJQUFJLEdBQUdELE9BQU8sQ0FBQyxNQUFELENBQXBCOztBQUNBLE1BQU1FLEVBQUUsR0FBR0YsT0FBTyxDQUFDLFVBQUQsQ0FBbEI7O0FBQ0EsTUFBTUcsU0FBUyxHQUFHSCxPQUFPLENBQUMsV0FBRCxDQUF6Qjs7QUFDQSxNQUFNSSxHQUFHLEdBQUdKLE9BQU8sQ0FBQyxZQUFELENBQW5COztBQUNBLE1BQU1LLEdBQUcsR0FBR0wsT0FBTyxDQUFDLEtBQUQsQ0FBbkI7O0FBQ0EsTUFBTU0sR0FBRyxHQUFHTixPQUFPLENBQUMsWUFBRCxDQUFuQjs7QUFDQSxNQUFNTyxlQUFlLEdBQUdQLE9BQU8sQ0FBQyw2QkFBRCxDQUEvQjs7QUFDQSxNQUFNUSxVQUFVLEdBQUdSLE9BQU8sQ0FBQyx3QkFBRCxDQUExQjs7QUFDQSxNQUFNUyxVQUFVLEdBQUdULE9BQU8sQ0FBQyx3QkFBRCxDQUExQjs7QUFDQSxNQUFNVSxlQUFlLEdBQUdWLE9BQU8sQ0FBQyw2QkFBRCxDQUEvQjs7QUFDQSxNQUFNVyxZQUFZLEdBQUdYLE9BQU8sQ0FBQywwQkFBRCxDQUE1Qjs7QUFDQSxNQUFNO0FBQUVZLEVBQUFBLFVBQUY7QUFBY0Ms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UCxFQUFmO0FBQ0QsT0FGRDs7QUFHQXVDLE1BQUFBLE1BQU0sQ0FBQzNFLFNBQVAsR0FBb0JvQyxFQUFELElBQVE7QUFDekJRLFFBQUFBLFdBQVcsR0FBR1IsRUFBZDtBQUNELE9BRkQ7O0FBR0EsWUFBTTlCLEtBQUssQ0FBQ29ELElBQU4sQ0FBVyxJQUFYLENBQU47QUFDQVksTUFBQUEsTUFBTSxDQUFDUyxPQUFQLENBQWVWLFdBQWYsRUFBNEJXLE9BQTVCLENBQW9DLENBQUMsQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLENBQUQsS0FBWTtBQUM5Q1AsUUFBQUEsTUFBTSxDQUFDTSxDQUFELENBQU4sR0FBWUMsQ0FBWjtBQUNELE9BRkQ7QUFHRCxLQWxJTSxHQUFQO0FBbUlELEdBcElEO0FBcUlELENBdkxEOztBQXdMQUMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCbkYsSUFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKTtcbmNvbnN0IHBhdGggPSByZXF1aXJlKCdwYXRoJyk7XG5jb25zdCBmcyA9IHJlcXVpcmUoJ3NtYXJ0LWZzJyk7XG5jb25zdCBjYWxsc2l0ZXMgPSByZXF1aXJlKCdjYWxsc2l0ZXMnKTtcbmNvbnN0IGdldCA9IHJlcXVpcmUoJ2xvZGFzaC5nZXQnKTtcbmNvbnN0IHRtcCA9IHJlcXVpcmUoJ3RtcCcpO1xuY29uc3QgSm9pID0gcmVxdWlyZSgnam9pLXN0cmljdCcpO1xuY29uc3QgUmVxdWVzdFJlY29yZGVyID0gcmVxdWlyZSgnLi4vbW9kdWxlcy9yZXF1ZXN0LXJlY29yZGVyJyk7XG5jb25zdCBFbnZNYW5hZ2VyID0gcmVxdWlyZSgnLi4vbW9kdWxlcy9lbnYtbWFuYWdlcicpO1xuY29uc3QgVGltZUtlZXBlciA9IHJlcXVpcmUoJy4uL21vZHVsZXMvdGltZS1rZWVwZXInKTtcbmNvbnN0IENvbnNvbGVSZWNvcmRlciA9IHJlcXVpcmUoJy4uL21vZHVsZXMvY29uc29sZS1yZWNvcmRlcicpO1xuY29uc3QgUmFuZG9tU2VlZGVyID0gcmVxdWlyZSgnLi4vbW9kdWxlcy9yYW5kb20tc2VlZGVyJyk7XG5jb25zdCB7IGdldFBhcmVudHMsIGdlbkNhc3NldHRlTmFtZSB9ID0gcmVxdWlyZSgnLi9tb2NoYS10ZXN0Jyk7XG5cbmNvbnN0IG1vY2hhID0ge1xuICBpdCxcbiAgc3BlY2lmeSxcbiAgZGVzY3JpYmUsXG4gIGNvbnRleHQsXG4gIGJlZm9yZSxcbiAgYWZ0ZXIsXG4gIGJlZm9yZUVhY2gsXG4gIGFmdGVyRWFjaFxufTtcblxuY29uc3QgZGVzYyA9IChzdWl0ZU5hbWUsIG9wdHNPclRlc3RzLCB0ZXN0c09yTnVsbCA9IG51bGwpID0+IHtcbiAgY29uc3Qgb3B0cyA9IHRlc3RzT3JOdWxsID09PSBudWxsID8ge30gOiBvcHRzT3JUZXN0cztcbiAgY29uc3QgdGVzdHMgPSB0ZXN0c09yTnVsbCA9PT0gbnVsbCA/IG9wdHNPclRlc3RzIDogdGVzdHNPck51bGw7XG5cbiAgY29uc3QgdGVzdEZpbGUgPSBwYXRoLnJlc29sdmUoY2FsbHNpdGVzKClbMV0uZ2V0RmlsZU5hbWUoKSk7XG4gIGNvbnN0IGVudlZhckZpbGUgPSBgJHt0ZXN0RmlsZX0uZW52LnltbGA7XG5cbiAgSm9pLmFzc2VydChvcHRzLCBKb2kub2JqZWN0KCkua2V5cyh7XG4gICAgdXNlVG1wRGlyOiBKb2kuYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gICAgdXNlTm9jazogSm9pLmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICAgIGVudlZhcnM6IEpvaS5vYmplY3QoKS5vcHRpb25hbCgpLnVua25vd24odHJ1ZSkucGF0dGVybihKb2kuc3RyaW5nKCksIEpvaS5zdHJpbmcoKSksXG4gICAgdGltZXN0YW1wOiBKb2kubnVtYmVyKCkub3B0aW9uYWwoKS5taW4oMCksXG4gICAgcmVjb3JkQ29uc29sZTogSm9pLmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICAgIGNyeXB0b1NlZWQ6IEpvaS5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgIHRpbWVvdXQ6IEpvaS5udW1iZXIoKS5vcHRpb25hbCgpLm1pbigwKVxuICB9KSwgJ0JhZCBPcHRpb25zIFByb3ZpZGVkJyk7XG4gIGNvbnN0IHVzZVRtcERpciA9IGdldChvcHRzLCAndXNlVG1wRGlyJywgZmFsc2UpO1xuICBjb25zdCB1c2VOb2NrID0gZ2V0KG9wdHMsICd1c2VOb2NrJywgZmFsc2UpO1xuICBjb25zdCBlbnZWYXJzID0gZ2V0KG9wdHMsICdlbnZWYXJzJywgbnVsbCk7XG4gIGNvbnN0IHRpbWVzdGFtcCA9IGdldChvcHRzLCAndGltZXN0YW1wJywgbnVsbCk7XG4gIGNvbnN0IHJlY29yZENvbnNvbGUgPSBnZXQob3B0cywgJ3JlY29yZENvbnNvbGUnLCBmYWxzZSk7XG4gIGNvbnN0IGNyeXB0b1NlZWQgPSBnZXQob3B0cywgJ2NyeXB0b1NlZWQnLCBudWxsKTtcbiAgY29uc3QgdGltZW91dCA9IGdldChvcHRzLCAndGltZW91dCcsIG51bGwpO1xuXG4gIGxldCBkaXIgPSBudWxsO1xuICBsZXQgcmVxdWVzdFJlY29yZGVyID0gbnVsbDtcbiAgbGV0IGVudk1hbmFnZXJGaWxlID0gbnVsbDtcbiAgbGV0IGVudk1hbmFnZXJEZXNjID0gbnVsbDtcbiAgbGV0IHRpbWVLZWVwZXIgPSBudWxsO1xuICBsZXQgY29uc29sZVJlY29yZGVyID0gbnVsbDtcbiAgbGV0IHJhbmRvbVNlZWRlciA9IG51bGw7XG5cbiAgY29uc3QgZ2V0QXJncyA9ICgpID0+ICh7XG4gICAgY2FwdHVyZTogYXN5bmMgKGZuKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBmbigpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICByZXR1cm4gZTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBhc3NlcnQuQXNzZXJ0aW9uRXJyb3IoeyBtZXNzYWdlOiAnZXhwZWN0ZWQgW0Z1bmN0aW9uXSB0byB0aHJvdyBhbiBlcnJvcicgfSk7XG4gICAgfSxcbiAgICAuLi4oZGlyID09PSBudWxsID8ge30gOiB7IGRpciB9KSxcbiAgICAuLi4oY29uc29sZVJlY29yZGVyID09PSBudWxsID8ge30gOiB7IGdldENvbnNvbGVPdXRwdXQ6IGNvbnNvbGVSZWNvcmRlci5nZXQgfSlcbiAgfSk7XG4gIGxldCBiZWZvcmVDYiA9ICgpID0+IHt9O1xuICBsZXQgYWZ0ZXJDYiA9ICgpID0+IHt9O1xuICBsZXQgYmVmb3JlRWFjaENiID0gKCkgPT4ge307XG4gIGxldCBhZnRlckVhY2hDYiA9ICgpID0+IHt9O1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBmdW5jLW5hbWVzXG4gIG1vY2hhLmRlc2NyaWJlKHN1aXRlTmFtZSwgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAoYXN5bmMgKCkgPT4ge1xuICAgICAgaWYgKHRpbWVvdXQgIT09IG51bGwpIHtcbiAgICAgICAgdGhpcy50aW1lb3V0KHRpbWVvdXQpO1xuICAgICAgfVxuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZnVuYy1uYW1lc1xuICAgICAgbW9jaGEuYmVmb3JlKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgaWYgKGdldFBhcmVudHModGhpcy50ZXN0KS5sZW5ndGggPT09IDMgJiYgZnMuZXhpc3RzU3luYyhlbnZWYXJGaWxlKSkge1xuICAgICAgICAgICAgZW52TWFuYWdlckZpbGUgPSBFbnZNYW5hZ2VyKHsgZW52VmFyczogZnMuc21hcnRSZWFkKGVudlZhckZpbGUpLCBhbGxvd092ZXJ3cml0ZTogZmFsc2UgfSk7XG4gICAgICAgICAgICBlbnZNYW5hZ2VyRmlsZS5hcHBseSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZW52VmFycyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgZW52TWFuYWdlckRlc2MgPSBFbnZNYW5hZ2VyKHsgZW52VmFycywgYWxsb3dPdmVyd3JpdGU6IGZhbHNlIH0pO1xuICAgICAgICAgICAgZW52TWFuYWdlckRlc2MuYXBwbHkoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHRpbWVzdGFtcCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgdGltZUtlZXBlciA9IFRpbWVLZWVwZXIoeyB1bml4OiB0aW1lc3RhbXAgfSk7XG4gICAgICAgICAgICB0aW1lS2VlcGVyLmluamVjdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoY3J5cHRvU2VlZCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgcmFuZG9tU2VlZGVyID0gUmFuZG9tU2VlZGVyKHsgc2VlZDogY3J5cHRvU2VlZCwgcmVzZWVkOiBmYWxzZSB9KTtcbiAgICAgICAgICAgIHJhbmRvbVNlZWRlci5pbmplY3QoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHVzZU5vY2sgPT09IHRydWUpIHtcbiAgICAgICAgICAgIHJlcXVlc3RSZWNvcmRlciA9IFJlcXVlc3RSZWNvcmRlcih7XG4gICAgICAgICAgICAgIGNhc3NldHRlRm9sZGVyOiBgJHt0ZXN0RmlsZX1fX2Nhc3NldHRlcy9gLFxuICAgICAgICAgICAgICBzdHJpcEhlYWRlcnM6IGZhbHNlLFxuICAgICAgICAgICAgICBzdHJpY3Q6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhd2FpdCBiZWZvcmVDYi5jYWxsKHRoaXMpO1xuICAgICAgICB9KSgpO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBmdW5jLW5hbWVzXG4gICAgICBtb2NoYS5hZnRlcihmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGlmIChyZXF1ZXN0UmVjb3JkZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJlcXVlc3RSZWNvcmRlci5zaHV0ZG93bigpO1xuICAgICAgICAgICAgcmVxdWVzdFJlY29yZGVyID0gbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHJhbmRvbVNlZWRlciAhPT0gbnVsbCkge1xuICAgICAgICAgICAgcmFuZG9tU2VlZGVyLnJlbGVhc2UoKTtcbiAgICAgICAgICAgIHJhbmRvbVNlZWRlciA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0aW1lS2VlcGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aW1lS2VlcGVyLnJlbGVhc2UoKTtcbiAgICAgICAgICAgIHRpbWVLZWVwZXIgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZW52TWFuYWdlckRlc2MgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGVudk1hbmFnZXJEZXNjLnVuYXBwbHkoKTtcbiAgICAgICAgICAgIGVudk1hbmFnZXJEZXNjID0gbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVudk1hbmFnZXJGaWxlICE9PSBudWxsKSB7XG4gICAgICAgICAgICBlbnZNYW5hZ2VyRmlsZS51bmFwcGx5KCk7XG4gICAgICAgICAgICBlbnZNYW5hZ2VyRmlsZSA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGF3YWl0IGFmdGVyQ2IuY2FsbCh0aGlzKTtcbiAgICAgICAgfSkoKTtcbiAgICAgIH0pO1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZnVuYy1uYW1lc1xuICAgICAgbW9jaGEuYmVmb3JlRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGlmICh1c2VUbXBEaXIgPT09IHRydWUpIHtcbiAgICAgICAgICAgIHRtcC5zZXRHcmFjZWZ1bENsZWFudXAoKTtcbiAgICAgICAgICAgIGRpciA9IHRtcC5kaXJTeW5jKHsga2VlcDogZmFsc2UsIHVuc2FmZUNsZWFudXA6IHRydWUgfSkubmFtZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHVzZU5vY2sgPT09IHRydWUpIHtcbiAgICAgICAgICAgIGF3YWl0IHJlcXVlc3RSZWNvcmRlci5pbmplY3QoZ2VuQ2Fzc2V0dGVOYW1lKHRoaXMuY3VycmVudFRlc3QpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHJlY29yZENvbnNvbGUgPT09IHRydWUpIHtcbiAgICAgICAgICAgIGNvbnNvbGVSZWNvcmRlciA9IENvbnNvbGVSZWNvcmRlcih7IHZlcmJvc2U6IHRydWUgfSk7XG4gICAgICAgICAgICBjb25zb2xlUmVjb3JkZXIuaW5qZWN0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGF3YWl0IGJlZm9yZUVhY2hDYi5jYWxsKHRoaXMsIGdldEFyZ3MoKSk7XG4gICAgICAgIH0pKCk7XG4gICAgICB9KTtcblxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGZ1bmMtbmFtZXNcbiAgICAgIG1vY2hhLmFmdGVyRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGlmIChjb25zb2xlUmVjb3JkZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnNvbGVSZWNvcmRlci5yZWxlYXNlKCk7XG4gICAgICAgICAgICBjb25zb2xlUmVjb3JkZXIgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocmVxdWVzdFJlY29yZGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICByZXF1ZXN0UmVjb3JkZXIucmVsZWFzZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZGlyICE9PSBudWxsKSB7XG4gICAgICAgICAgICBkaXIgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhd2FpdCBhZnRlckVhY2hDYi5jYWxsKHRoaXMsIGdldEFyZ3MoKSk7XG4gICAgICAgIH0pKCk7XG4gICAgICB9KTtcblxuICAgICAgY29uc3QgZ2xvYmFsc1ByZXYgPSBPYmplY3Qua2V5cyhtb2NoYSlcbiAgICAgICAgLnJlZHVjZSgocCwga2V5KSA9PiBPYmplY3QuYXNzaWduKHAsIHsgW2tleV06IGdsb2JhbFtrZXldIH0pKTtcbiAgICAgIGdsb2JhbC5pdCA9ICh0ZXN0TmFtZSwgZm4pID0+IG1vY2hhLml0KFxuICAgICAgICB0ZXN0TmFtZSxcbiAgICAgICAgZm4ubGVuZ3RoID09PSAwIHx8IC9eW14oPV0qXFwoey8udGVzdChmbi50b1N0cmluZygpKVxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBmdW5jLW5hbWVzXG4gICAgICAgICAgPyBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gZm4uY2FsbCh0aGlzLCBnZXRBcmdzKCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZnVuYy1uYW1lc1xuICAgICAgICAgIDogZnVuY3Rpb24gKGRvbmUpIHtcbiAgICAgICAgICAgIHJldHVybiBmbi5jYWxsKHRoaXMsIGRvbmUpO1xuICAgICAgICAgIH1cbiAgICAgICk7XG4gICAgICBnbG9iYWwuc3BlY2lmeSA9IGdsb2JhbC5pdDtcbiAgICAgIGdsb2JhbC5kZXNjcmliZSA9IGRlc2M7XG4gICAgICBnbG9iYWwuY29udGV4dCA9IGdsb2JhbC5kZXNjcmliZTtcbiAgICAgIGdsb2JhbC5iZWZvcmUgPSAoZm4pID0+IHtcbiAgICAgICAgYmVmb3JlQ2IgPSBmbjtcbiAgICAgIH07XG4gICAgICBnbG9iYWwuYWZ0ZXIgPSAoZm4pID0+IHtcbiAgICAgICAgYWZ0ZXJDYiA9IGZuO1xuICAgICAgfTtcbiAgICAgIGdsb2JhbC5iZWZvcmVFYWNoID0gKGZuKSA9PiB7XG4gICAgICAgIGJlZm9yZUVhY2hDYiA9IGZuO1xuICAgICAgfTtcbiAgICAgIGdsb2JhbC5hZnRlckVhY2ggPSAoZm4pID0+IHtcbiAgICAgICAgYWZ0ZXJFYWNoQ2IgPSBmbjtcbiAgICAgIH07XG4gICAgICBhd2FpdCB0ZXN0cy5jYWxsKHRoaXMpO1xuICAgICAgT2JqZWN0LmVudHJpZXMoZ2xvYmFsc1ByZXYpLmZvckVhY2goKFtrLCB2XSkgPT4ge1xuICAgICAgICBnbG9iYWxba10gPSB2O1xuICAgICAgfSk7XG4gICAgfSkoKTtcbiAgfSk7XG59O1xubW9kdWxlLmV4cG9ydHMgPSBkZXNjO1xuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL2Rlc2MuanMiXSwibmFtZXMiOlsiYXNzZXJ0IiwicmVxdWlyZSIsInBhdGgiLCJmcyIsImNhbGxzaXRlcyIsImdldCIsInRtcCIsIkpvaSIsIlJlcXVlc3RSZWNvcmRlciIsIkVudk1hbmFnZXIiLCJUaW1lS2VlcGVyIiwiQ29uc29sZVJlY29yZGVyIiwiUmFuZG9tU2VlZGVyIiwiZ2V0UGFyZW50cyIsImdlbkNhc3NldHRlTmFtZSIsIm1vY2hhIiwiaXQiLCJzcGVjaWZ5IiwiZGVzY3JpYmUiLCJjb250ZXh0IiwiYmVmb3JlIiwiYWZ0ZXIiLCJiZWZvcmVFYWNoIiwiYWZ0ZXJFYWNoIiwiZGVzYyIsInN1aXRlTmFtZSIsIm9wdHNPclRlc3RzIiwidGVzdHNPck51bGwiLCJvcHRzIiwidGVzdHMiLCJ0ZXN0RmlsZSIsInJlc29sdmUiLCJnZXRGaWxlTmFtZSIsImVudlZhckZpbGUiLCJvYmplY3QiLCJrZXlzIiwidXNlVG1wRGlyIiwiYm9vbGVhbiIsIm9wdGlvbmFsIiwidXNlTm9jayIsImVudlZhcnMiLCJ1bmtub3duIiwicGF0dGVybiIsInN0cmluZyIsInRpbWVzdGFtcCIsIm51bWJlciIsIm1pbiIsInJlY29yZENvbnNvbGUiLCJjcnlwdG9TZWVkIiwidGltZW91dCIsImRpciIsInJlcXVlc3RSZWNvcmRlciIsImVudk1hbmFnZXJGaWxlIiwiZW52TWFuYWdlckRlc2MiLCJ0aW1lS2VlcGVyIiwiY29uc29sZVJlY29yZGVyIiwicmFuZG9tU2VlZGVyIiwiZ2V0QXJncyIsImNhcHR1cmUiLCJmbiIsImUiLCJBc3NlcnRpb25FcnJvciIsIm1lc3NhZ2UiLCJyZWNvcmRlciIsImJlZm9yZUNiIiwiYWZ0ZXJDYiIsImJlZm9yZUVhY2hDYiIsImFmdGVyRWFjaENiIiwidGVzdCIsImxlbmd0aCIsImV4aXN0c1N5bmMiLCJzbWFydFJlYWQiLCJhbGxvd092ZXJ3cml0ZSIsImFwcGx5IiwidW5peCIsImluamVjdCIsInNlZWQiLCJyZXNlZWQiLCJjYXNzZXR0ZUZvbGRlciIsInN0cmlwSGVhZGVycyIsInN0cmljdCIsImNhbGwiLCJzaHV0ZG93biIsInJlbGVhc2UiLCJ1bmFwcGx5Iiwic2V0R3JhY2VmdWxDbGVhbnVwIiwiZGlyU3luYyIsImtlZXAiLCJ1bnNhZmVDbGVhbnVwIiwibmFtZSIsImN1cnJlbnRUZXN0IiwidmVyYm9zZSIsInByb2Nlc3MiLCJhcmd2Iiwic2xpY2UiLCJpbmNsdWRlcyIsImdsb2JhbHNQcmV2IiwiT2JqZWN0IiwicmVkdWNlIiwicCIsImtleSIsImFzc2lnbiIsImdsb2JhbCIsInRlc3ROYW1lIiwidG9TdHJpbmciLCJkb25lIiwiZW50cmllcyIsImZvckVhY2giLCJrIiwidiIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE1BQU1BLE1BQU0sR0FBR0MsT0FBTyxDQUFDLFFBQUQsQ0FBdEI7O0FBQ0EsTUFBTUMsSUFBSSxHQUFHRCxPQUFPLENBQUMsTUFBRCxDQUFwQjs7QUFDQSxNQUFNRSxFQUFFLEdBQUdGLE9BQU8sQ0FBQyxVQUFELENBQWxCOztBQUNBLE1BQU1HLFNBQVMsR0FBR0gsT0FBTyxDQUFDLFdBQUQsQ0FBekI7O0FBQ0EsTUFBTUksR0FBRyxHQUFHSixPQUFPLENBQUMsWUFBRCxDQUFuQjs7QUFDQSxNQUFNSyxHQUFHLEdBQUdMLE9BQU8sQ0FBQyxLQUFELENBQW5COztBQUNBLE1BQU1NLEdBQUcsR0FBR04sT0FBTyxDQUFDLFlBQUQsQ0FBbkI7O0FBQ0EsTUFBTU8sZUFBZSxHQUFHUCxPQUFPLENBQUMsNkJBQUQsQ0FBL0I7O0FBQ0EsTUFBTVEsVUFBVSxHQUFHUixPQUFPLENBQUMsd0JBQUQsQ0FBMUI7O0FBQ0EsTUFBTVMsVUFBVSxHQUFHVCxPQUFPLENBQUMsd0JBQUQsQ0FBMUI7O0FBQ0EsTUFBTVUsZUFBZSxHQUFHVixPQUFPLENBQUMsNkJBQUQsQ0FBL0I7O0FBQ0EsTUFBTVcsWUFBWSxHQUFHWCxPQUFPLENBQUMsMEJBQUQsQ0FBNUI7O0FBQ0EsTUFBTTtBQUFFWSxFQUFBQSxVQUFGO0FBQWNDLEVBQUFBO0FBQWQsSUFBa0NiLE9BQU8sQ0FBQyxjQUFELENBQS9DOztBQUVBLE1BQU1jLEtBQUssR0FBRztBQUNaQyxFQUFBQSxFQURZO0FBRVpDLEVBQUFBLE9BRlk7QUFHWkMsRUFBQUEsUUFIWTtBQUlaQyxFQUFBQSxPQUpZO0FBS1pDLEVBQUFBLE1BTFk7QUFNWkMsRUFBQUEsS0FOWTtBQU9aQyxFQUFBQSxVQVBZO0FBUVpDLEVBQUFBO0FBUlksQ0FBZDs7QUFXQSxNQUFNQyxJQUFJLEdBQUcsQ0FBQ0MsU0FBRCxFQUFZQyxXQUFaLEVBQXlCQyxXQUFXLEdBQUcsSUFBdkMsS0FBZ0Q7QUFDM0QsUUFBTUMsSUFBSSxHQUFHRCxXQUFXLEtBQUssSUFBaEIsR0FBdUIsRUFBdkIsR0FBNEJELFdBQXpDO0FBQ0EsUUFBTUcsS0FBSyxHQUFHRixXQUFXLEtBQUssSUFBaEIsR0FBdUJELFdBQXZCLEdBQXFDQyxXQUFuRDtBQUVBLFFBQU1HLFFBQVEsR0FBRzVCLElBQUksQ0FBQzZCLE9BQUwsQ0FBYTNCLFNBQVMsR0FBRyxDQUFILENBQVQsQ0FBZTRCLFdBQWYsRUFBYixDQUFqQjtBQUNBLFFBQU1DLFVBQVUsR0FBSSxHQUFFSCxRQUFTLFVBQS9CO0FBRUF2QixFQUFBQSxHQUFHLENBQUNQLE1BQUosQ0FBVzRCLElBQVgsRUFBaUJyQixHQUFHLENBQUMyQixNQUFKLEdBQWFDLElBQWIsQ0FBa0I7QUFDakNDLElBQUFBLFNBQVMsRUFBRTdCLEdBQUcsQ0FBQzhCLE9BQUosR0FBY0MsUUFBZCxFQURzQjtBQUVqQ0MsSUFBQUEsT0FBTyxFQUFFaEMsR0FBRyxDQUFDOEIsT0FBSixHQUFjQyxRQUFkLEVBRndCO0FBR2pDRSxJQUFBQSxPQUFPLEVBQUVqQyxHQUFHLENBQUMyQixNQUFKLEdBQWFJLFFBQWIsR0FBd0JHLE9BQXhCLENBQWdDLElBQWhDLEVBQXNDQyxPQUF0QyxDQUE4Q25DLEdBQUcsQ0FBQ29DLE1BQUosRUFBOUMsRUFBNERwQyxHQUFHLENBQUNvQyxNQUFKLEVBQTVELENBSHdCO0FBSWpDQyxJQUFBQSxTQUFTLEVBQUVyQyxHQUFHLENBQUNzQyxNQUFKLEdBQWFQLFFBQWIsR0FBd0JRLEdBQXhCLENBQTRCLENBQTVCLENBSnNCO0FBS2pDQyxJQUFBQSxhQUFhLEVBQUV4QyxHQUFHLENBQUM4QixPQUFKLEdBQWNDLFFBQWQsRUFMa0I7QUFNakNVLElBQUFBLFVBQVUsRUFBRXpDLEdBQUcsQ0FBQ29DLE1BQUosR0FBYUwsUUFBYixFQU5xQjtBQU9qQ1csSUFBQUEsT0FBTyxFQUFFMUMsR0FBRyxDQUFDc0MsTUFBSixHQUFhUCxRQUFiLEdBQXdCUSxHQUF4QixDQUE0QixDQUE1QjtBQVB3QixHQUFsQixDQUFqQixFQVFJLHNCQVJKO0FBU0EsUUFBTVYsU0FBUyxHQUFHL0IsR0FBRyxDQUFDdUIsSUFBRCxFQUFPLFdBQVAsRUFBb0IsS0FBcEIsQ0FBckI7QUFDQSxRQUFNVyxPQUFPLEdBQUdsQyxHQUFHLENBQUN1QixJQUFELEVBQU8sU0FBUCxFQUFrQixLQUFsQixDQUFuQjtBQUNBLFFBQU1ZLE9BQU8sR0FBR25DLEdBQUcsQ0FBQ3VCLElBQUQsRUFBTyxTQUFQLEVBQWtCLElBQWxCLENBQW5CO0FBQ0EsUUFBTWdCLFNBQVMsR0FBR3ZDLEdBQUcsQ0FBQ3VCLElBQUQsRUFBTyxXQUFQLEVBQW9CLElBQXBCLENBQXJCO0FBQ0EsUUFBTW1CLGFBQWEsR0FBRzFDLEdBQUcsQ0FBQ3VCLElBQUQsRUFBTyxlQUFQLEVBQXdCLEtBQXhCLENBQXpCO0FBQ0EsUUFBTW9CLFVBQVUsR0FBRzNDLEdBQUcsQ0FBQ3VCLElBQUQsRUFBTyxZQUFQLEVBQXFCLElBQXJCLENBQXRCO0FBQ0EsUUFBTXFCLE9BQU8sR0FBRzVDLEdBQUcsQ0FBQ3VCLElBQUQsRUFBTyxTQUFQLEVBQWtCLElBQWxCLENBQW5CO0FBRUEsTUFBSXNCLEdBQUcsR0FBRyxJQUFWO0FBQ0EsTUFBSUMsZUFBZSxHQUFHLElBQXRCO0FBQ0EsTUFBSUMsY0FBYyxHQUFHLElBQXJCO0FBQ0EsTUFBSUMsY0FBYyxHQUFHLElBQXJCO0FBQ0EsTUFBSUMsVUFBVSxHQUFHLElBQWpCO0FBQ0EsTUFBSUMsZUFBZSxHQUFHLElBQXRCO0FBQ0EsTUFBSUMsWUFBWSxHQUFHLElBQW5COztBQUVBLFFBQU1DLE9BQU8sR0FBRztBQUNkQyxJQUFBQSxPQUFPLEVBQUUsTUFBT0MsRUFBUCxJQUFjO0FBQ3JCLFVBQUk7QUFDRixjQUFNQSxFQUFFLEVBQVI7QUFDRCxPQUZELENBRUUsT0FBT0MsQ0FBUCxFQUFVO0FBQ1YsZUFBT0EsQ0FBUDtBQUNEOztBQUNELFlBQU0sSUFBSTVELE1BQU0sQ0FBQzZELGNBQVgsQ0FBMEI7QUFBRUMsUUFBQUEsT0FBTyxFQUFFO0FBQVgsT0FBMUIsQ0FBTjtBQUNEO0FBUmEsS0FTVlosR0FBRyxLQUFLLElBQVIsR0FBZSxFQUFmLEdBQW9CO0FBQUVBLElBQUFBO0FBQUYsR0FUVixNQVVWSyxlQUFlLEtBQUssSUFBcEIsR0FBMkIsRUFBM0IsR0FBZ0M7QUFBRVEsSUFBQUEsUUFBUSxFQUFFUixlQUFlLENBQUNRO0FBQTVCLEdBVnRCLENBQWhCOztBQVlBLE1BQUlDLFFBQVEsR0FBRyxNQUFNLENBQUUsQ0FBdkI7O0FBQ0EsTUFBSUMsT0FBTyxHQUFHLE1BQU0sQ0FBRSxDQUF0Qjs7QUFDQSxNQUFJQyxZQUFZLEdBQUcsTUFBTSxDQUFFLENBQTNCOztBQUNBLE1BQUlDLFdBQVcsR0FBRyxNQUFNLENBQUUsQ0FBMUIsQ0EvQzJELENBaUQzRDs7O0FBQ0FwRCxFQUFBQSxLQUFLLENBQUNHLFFBQU4sQ0FBZU8sU0FBZixFQUEwQixZQUFZO0FBQ3BDLFdBQU8sQ0FBQyxZQUFZO0FBQ2xCLFVBQUl3QixPQUFPLEtBQUssSUFBaEIsRUFBc0I7QUFDcEIsYUFBS0EsT0FBTCxDQUFhQSxPQUFiO0FBQ0QsT0FIaUIsQ0FLbEI7OztBQUNBbEMsTUFBQUEsS0FBSyxDQUFDSyxNQUFOLENBQWEsWUFBWTtBQUN2QixlQUFPLENBQUMsWUFBWTtBQUNsQixjQUFJUCxVQUFVLENBQUMsS0FBS3VELElBQU4sQ0FBVixDQUFzQkMsTUFBdEIsS0FBaUMsQ0FBakMsSUFBc0NsRSxFQUFFLENBQUNtRSxVQUFILENBQWNyQyxVQUFkLENBQTFDLEVBQXFFO0FBQ25FbUIsWUFBQUEsY0FBYyxHQUFHM0MsVUFBVSxDQUFDO0FBQUUrQixjQUFBQSxPQUFPLEVBQUVyQyxFQUFFLENBQUNvRSxTQUFILENBQWF0QyxVQUFiLENBQVg7QUFBcUN1QyxjQUFBQSxjQUFjLEVBQUU7QUFBckQsYUFBRCxDQUEzQjtBQUNBcEIsWUFBQUEsY0FBYyxDQUFDcUIsS0FBZjtBQUNEOztBQUNELGNBQUlqQyxPQUFPLEtBQUssSUFBaEIsRUFBc0I7QUFDcEJhLFlBQUFBLGNBQWMsR0FBRzVDLFVBQVUsQ0FBQztBQUFFK0IsY0FBQUEsT0FBRjtBQUFXZ0MsY0FBQUEsY0FBYyxFQUFFO0FBQTNCLGFBQUQsQ0FBM0I7QUFDQW5CLFlBQUFBLGNBQWMsQ0FBQ29CLEtBQWY7QUFDRDs7QUFDRCxjQUFJN0IsU0FBUyxLQUFLLElBQWxCLEVBQXdCO0FBQ3RCVSxZQUFBQSxVQUFVLEdBQUc1QyxVQUFVLENBQUM7QUFBRWdFLGNBQUFBLElBQUksRUFBRTlCO0FBQVIsYUFBRCxDQUF2QjtBQUNBVSxZQUFBQSxVQUFVLENBQUNxQixNQUFYO0FBQ0Q7O0FBQ0QsY0FBSTNCLFVBQVUsS0FBSyxJQUFuQixFQUF5QjtBQUN2QlEsWUFBQUEsWUFBWSxHQUFHNUMsWUFBWSxDQUFDO0FBQUVnRSxjQUFBQSxJQUFJLEVBQUU1QixVQUFSO0FBQW9CNkIsY0FBQUEsTUFBTSxFQUFFO0FBQTVCLGFBQUQsQ0FBM0I7QUFDQXJCLFlBQUFBLFlBQVksQ0FBQ21CLE1BQWI7QUFDRDs7QUFDRCxjQUFJcEMsT0FBTyxLQUFLLElBQWhCLEVBQXNCO0FBQ3BCWSxZQUFBQSxlQUFlLEdBQUczQyxlQUFlLENBQUM7QUFDaENzRSxjQUFBQSxjQUFjLEVBQUcsR0FBRWhELFFBQVMsY0FESTtBQUVoQ2lELGNBQUFBLFlBQVksRUFBRSxLQUZrQjtBQUdoQ0MsY0FBQUEsTUFBTSxFQUFFO0FBSHdCLGFBQUQsQ0FBakM7QUFLRDs7QUFDRCxnQkFBTWhCLFFBQVEsQ0FBQ2lCLElBQVQsQ0FBYyxJQUFkLENBQU47QUFDRCxTQXpCTSxHQUFQO0FBMEJELE9BM0JELEVBTmtCLENBbUNsQjs7QUFDQWxFLE1BQUFBLEtBQUssQ0FBQ00sS0FBTixDQUFZLFlBQVk7QUFDdEIsZUFBTyxDQUFDLFlBQVk7QUFDbEIsY0FBSThCLGVBQWUsS0FBSyxJQUF4QixFQUE4QjtBQUM1QkEsWUFBQUEsZUFBZSxDQUFDK0IsUUFBaEI7QUFDQS9CLFlBQUFBLGVBQWUsR0FBRyxJQUFsQjtBQUNEOztBQUNELGNBQUlLLFlBQVksS0FBSyxJQUFyQixFQUEyQjtBQUN6QkEsWUFBQUEsWUFBWSxDQUFDMkIsT0FBYjtBQUNBM0IsWUFBQUEsWUFBWSxHQUFHLElBQWY7QUFDRDs7QUFDRCxjQUFJRixVQUFVLEtBQUssSUFBbkIsRUFBeUI7QUFDdkJBLFlBQUFBLFVBQVUsQ0FBQzZCLE9BQVg7QUFDQTdCLFlBQUFBLFVBQVUsR0FBRyxJQUFiO0FBQ0Q7O0FBQ0QsY0FBSUQsY0FBYyxLQUFLLElBQXZCLEVBQTZCO0FBQzNCQSxZQUFBQSxjQUFjLENBQUMrQixPQUFmO0FBQ0EvQixZQUFBQSxjQUFjLEdBQUcsSUFBakI7QUFDRDs7QUFDRCxjQUFJRCxjQUFjLEtBQUssSUFBdkIsRUFBNkI7QUFDM0JBLFlBQUFBLGNBQWMsQ0FBQ2dDLE9BQWY7QUFDQWhDLFlBQUFBLGNBQWMsR0FBRyxJQUFqQjtBQUNEOztBQUNELGdCQUFNYSxPQUFPLENBQUNnQixJQUFSLENBQWEsSUFBYixDQUFOO0FBQ0QsU0F0Qk0sR0FBUDtBQXVCRCxPQXhCRCxFQXBDa0IsQ0E4RGxCOztBQUNBbEUsTUFBQUEsS0FBSyxDQUFDTyxVQUFOLENBQWlCLFlBQVk7QUFDM0IsZUFBTyxDQUFDLFlBQVk7QUFDbEIsY0FBSWMsU0FBUyxLQUFLLElBQWxCLEVBQXdCO0FBQ3RCOUIsWUFBQUEsR0FBRyxDQUFDK0Usa0JBQUo7QUFDQW5DLFlBQUFBLEdBQUcsR0FBRzVDLEdBQUcsQ0FBQ2dGLE9BQUosQ0FBWTtBQUFFQyxjQUFBQSxJQUFJLEVBQUUsS0FBUjtBQUFlQyxjQUFBQSxhQUFhLEVBQUU7QUFBOUIsYUFBWixFQUFrREMsSUFBeEQ7QUFDRDs7QUFDRCxjQUFJbEQsT0FBTyxLQUFLLElBQWhCLEVBQXNCO0FBQ3BCLGtCQUFNWSxlQUFlLENBQUN3QixNQUFoQixDQUF1QjdELGVBQWUsQ0FBQyxLQUFLNEUsV0FBTixDQUF0QyxDQUFOO0FBQ0Q7O0FBQ0QsY0FBSTNDLGFBQWEsS0FBSyxJQUF0QixFQUE0QjtBQUMxQlEsWUFBQUEsZUFBZSxHQUFHNUMsZUFBZSxDQUFDO0FBQ2hDZ0YsY0FBQUEsT0FBTyxFQUFFQyxPQUFPLENBQUNDLElBQVIsQ0FBYUMsS0FBYixDQUFtQixDQUFuQixFQUFzQkMsUUFBdEIsQ0FBK0IsV0FBL0I7QUFEdUIsYUFBRCxDQUFqQztBQUdBeEMsWUFBQUEsZUFBZSxDQUFDb0IsTUFBaEI7QUFDRDs7QUFDRCxnQkFBTVQsWUFBWSxDQUFDZSxJQUFiLENBQWtCLElBQWxCLEVBQXdCeEIsT0FBTyxFQUEvQixDQUFOO0FBQ0QsU0FmTSxHQUFQO0FBZ0JELE9BakJELEVBL0RrQixDQWtGbEI7O0FBQ0ExQyxNQUFBQSxLQUFLLENBQUNRLFNBQU4sQ0FBZ0IsWUFBWTtBQUMxQixlQUFPLENBQUMsWUFBWTtBQUNsQixjQUFJZ0MsZUFBZSxLQUFLLElBQXhCLEVBQThCO0FBQzVCQSxZQUFBQSxlQUFlLENBQUM0QixPQUFoQjtBQUNBNUIsWUFBQUEsZUFBZSxHQUFHLElBQWxCO0FBQ0Q7O0FBQ0QsY0FBSUosZUFBZSxLQUFLLElBQXhCLEVBQThCO0FBQzVCQSxZQUFBQSxlQUFlLENBQUNnQyxPQUFoQjtBQUNEOztBQUNELGNBQUlqQyxHQUFHLEtBQUssSUFBWixFQUFrQjtBQUNoQkEsWUFBQUEsR0FBRyxHQUFHLElBQU47QUFDRDs7QUFDRCxnQkFBTWlCLFdBQVcsQ0FBQ2MsSUFBWixDQUFpQixJQUFqQixFQUF1QnhCLE9BQU8sRUFBOUIsQ0FBTjtBQUNELFNBWk0sR0FBUDtBQWFELE9BZEQ7QUFnQkEsWUFBTXVDLFdBQVcsR0FBR0MsTUFBTSxDQUFDOUQsSUFBUCxDQUFZcEIsS0FBWixFQUNqQm1GLE1BRGlCLENBQ1YsQ0FBQ0MsQ0FBRCxFQUFJQyxHQUFKLEtBQVlILE1BQU0sQ0FBQ0ksTUFBUCxDQUFjRixDQUFkLEVBQWlCO0FBQUUsU0FBQ0MsR0FBRCxHQUFPRSxNQUFNLENBQUNGLEdBQUQ7QUFBZixPQUFqQixDQURGLENBQXBCOztBQUVBRSxNQUFBQSxNQUFNLENBQUN0RixFQUFQLEdBQVksQ0FBQ3VGLFFBQUQsRUFBVzVDLEVBQVgsS0FBa0I1QyxLQUFLLENBQUNDLEVBQU4sQ0FDNUJ1RixRQUQ0QixFQUU1QjVDLEVBQUUsQ0FBQ1UsTUFBSCxLQUFjLENBQWQsSUFBbUIsYUFBYUQsSUFBYixDQUFrQlQsRUFBRSxDQUFDNkMsUUFBSCxFQUFsQixDQUFuQixDQUNFO0FBREYsUUFFSSxZQUFZO0FBQ1osZUFBTzdDLEVBQUUsQ0FBQ3NCLElBQUgsQ0FBUSxJQUFSLEVBQWN4QixPQUFPLEVBQXJCLENBQVA7QUFDRCxPQUpILENBS0U7QUFMRixRQU1JLFVBQVVnRCxJQUFWLEVBQWdCO0FBQ2hCLGVBQU85QyxFQUFFLENBQUNzQixJQUFILENBQVEsSUFBUixFQUFjd0IsSUFBZCxDQUFQO0FBQ0QsT0FWeUIsQ0FBOUI7O0FBWUFILE1BQUFBLE1BQU0sQ0FBQ3JGLE9BQVAsR0FBaUJxRixNQUFNLENBQUN0RixFQUF4QjtBQUNBc0YsTUFBQUEsTUFBTSxDQUFDcEYsUUFBUCxHQUFrQk0sSUFBbEI7QUFDQThFLE1BQUFBLE1BQU0sQ0FBQ25GLE9BQVAsR0FBaUJtRixNQUFNLENBQUNwRixRQUF4Qjs7QUFDQW9GLE1BQUFBLE1BQU0sQ0FBQ2xGLE1BQVAsR0FBaUJ1QyxFQUFELElBQVE7QUFDdEJLLFFBQUFBLFFBQVEsR0FBR0wsRUFBWDtBQUNELE9BRkQ7O0FBR0EyQyxNQUFBQSxNQUFNLENBQUNqRixLQUFQLEdBQWdCc0MsRUFBRCxJQUFRO0FBQ3JCTSxRQUFBQSxPQUFPLEdBQUdOLEVBQVY7QUFDRCxPQUZEOztBQUdBMkMsTUFBQUEsTUFBTSxDQUFDaEYsVUFBUCxHQUFxQnFDLEVBQUQsSUFBUTtBQUMxQk8sUUFBQUEsWUFBWSxHQUFHUCxFQUFmO0FBQ0QsT0FGRDs7QUFHQTJDLE1BQUFBLE1BQU0sQ0FBQy9FLFNBQVAsR0FBb0JvQyxFQUFELElBQVE7QUFDekJRLFFBQUFBLFdBQVcsR0FBR1IsRUFBZDtBQUNELE9BRkQ7O0FBR0EsWUFBTTlCLEtBQUssQ0FBQ29ELElBQU4sQ0FBVyxJQUFYLENBQU47QUFDQWdCLE1BQUFBLE1BQU0sQ0FBQ1MsT0FBUCxDQUFlVixXQUFmLEVBQTRCVyxPQUE1QixDQUFvQyxDQUFDLENBQUNDLENBQUQsRUFBSUMsQ0FBSixDQUFELEtBQVk7QUFDOUNQLFFBQUFBLE1BQU0sQ0FBQ00sQ0FBRCxDQUFOLEdBQVlDLENBQVo7QUFDRCxPQUZEO0FBR0QsS0FwSU0sR0FBUDtBQXFJRCxHQXRJRDtBQXVJRCxDQXpMRDs7QUEwTEFDLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQnZGLElBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0Jyk7XG5jb25zdCBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuY29uc3QgZnMgPSByZXF1aXJlKCdzbWFydC1mcycpO1xuY29uc3QgY2FsbHNpdGVzID0gcmVxdWlyZSgnY2FsbHNpdGVzJyk7XG5jb25zdCBnZXQgPSByZXF1aXJlKCdsb2Rhc2guZ2V0Jyk7XG5jb25zdCB0bXAgPSByZXF1aXJlKCd0bXAnKTtcbmNvbnN0IEpvaSA9IHJlcXVpcmUoJ2pvaS1zdHJpY3QnKTtcbmNvbnN0IFJlcXVlc3RSZWNvcmRlciA9IHJlcXVpcmUoJy4uL21vZHVsZXMvcmVxdWVzdC1yZWNvcmRlcicpO1xuY29uc3QgRW52TWFuYWdlciA9IHJlcXVpcmUoJy4uL21vZHVsZXMvZW52LW1hbmFnZXInKTtcbmNvbnN0IFRpbWVLZWVwZXIgPSByZXF1aXJlKCcuLi9tb2R1bGVzL3RpbWUta2VlcGVyJyk7XG5jb25zdCBDb25zb2xlUmVjb3JkZXIgPSByZXF1aXJlKCcuLi9tb2R1bGVzL2NvbnNvbGUtcmVjb3JkZXInKTtcbmNvbnN0IFJhbmRvbVNlZWRlciA9IHJlcXVpcmUoJy4uL21vZHVsZXMvcmFuZG9tLXNlZWRlcicpO1xuY29uc3QgeyBnZXRQYXJlbnRzLCBnZW5DYXNzZXR0ZU5hbWUgfSA9IHJlcXVpcmUoJy4vbW9jaGEtdGVzdCcpO1xuXG5jb25zdCBtb2NoYSA9IHtcbiAgaXQsXG4gIHNwZWNpZnksXG4gIGRlc2NyaWJlLFxuICBjb250ZXh0LFxuICBiZWZvcmUsXG4gIGFmdGVyLFxuICBiZWZvcmVFYWNoLFxuICBhZnRlckVhY2hcbn07XG5cbmNvbnN0IGRlc2MgPSAoc3VpdGVOYW1lLCBvcHRzT3JUZXN0cywgdGVzdHNPck51bGwgPSBudWxsKSA9PiB7XG4gIGNvbnN0IG9wdHMgPSB0ZXN0c09yTnVsbCA9PT0gbnVsbCA/IHt9IDogb3B0c09yVGVzdHM7XG4gIGNvbnN0IHRlc3RzID0gdGVzdHNPck51bGwgPT09IG51bGwgPyBvcHRzT3JUZXN0cyA6IHRlc3RzT3JOdWxsO1xuXG4gIGNvbnN0IHRlc3RGaWxlID0gcGF0aC5yZXNvbHZlKGNhbGxzaXRlcygpWzFdLmdldEZpbGVOYW1lKCkpO1xuICBjb25zdCBlbnZWYXJGaWxlID0gYCR7dGVzdEZpbGV9LmVudi55bWxgO1xuXG4gIEpvaS5hc3NlcnQob3B0cywgSm9pLm9iamVjdCgpLmtleXMoe1xuICAgIHVzZVRtcERpcjogSm9pLmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICAgIHVzZU5vY2s6IEpvaS5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgICBlbnZWYXJzOiBKb2kub2JqZWN0KCkub3B0aW9uYWwoKS51bmtub3duKHRydWUpLnBhdHRlcm4oSm9pLnN0cmluZygpLCBKb2kuc3RyaW5nKCkpLFxuICAgIHRpbWVzdGFtcDogSm9pLm51bWJlcigpLm9wdGlvbmFsKCkubWluKDApLFxuICAgIHJlY29yZENvbnNvbGU6IEpvaS5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgICBjcnlwdG9TZWVkOiBKb2kuc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgICB0aW1lb3V0OiBKb2kubnVtYmVyKCkub3B0aW9uYWwoKS5taW4oMClcbiAgfSksICdCYWQgT3B0aW9ucyBQcm92aWRlZCcpO1xuICBjb25zdCB1c2VUbXBEaXIgPSBnZXQob3B0cywgJ3VzZVRtcERpcicsIGZhbHNlKTtcbiAgY29uc3QgdXNlTm9jayA9IGdldChvcHRzLCAndXNlTm9jaycsIGZhbHNlKTtcbiAgY29uc3QgZW52VmFycyA9IGdldChvcHRzLCAnZW52VmFycycsIG51bGwpO1xuICBjb25zdCB0aW1lc3RhbXAgPSBnZXQob3B0cywgJ3RpbWVzdGFtcCcsIG51bGwpO1xuICBjb25zdCByZWNvcmRDb25zb2xlID0gZ2V0KG9wdHMsICdyZWNvcmRDb25zb2xlJywgZmFsc2UpO1xuICBjb25zdCBjcnlwdG9TZWVkID0gZ2V0KG9wdHMsICdjcnlwdG9TZWVkJywgbnVsbCk7XG4gIGNvbnN0IHRpbWVvdXQgPSBnZXQob3B0cywgJ3RpbWVvdXQnLCBudWxsKTtcblxuICBsZXQgZGlyID0gbnVsbDtcbiAgbGV0IHJlcXVlc3RSZWNvcmRlciA9IG51bGw7XG4gIGxldCBlbnZNYW5hZ2VyRmlsZSA9IG51bGw7XG4gIGxldCBlbnZNYW5hZ2VyRGVzYyA9IG51bGw7XG4gIGxldCB0aW1lS2VlcGVyID0gbnVsbDtcbiAgbGV0IGNvbnNvbGVSZWNvcmRlciA9IG51bGw7XG4gIGxldCByYW5kb21TZWVkZXIgPSBudWxsO1xuXG4gIGNvbnN0IGdldEFyZ3MgPSAoKSA9PiAoe1xuICAgIGNhcHR1cmU6IGFzeW5jIChmbikgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgZm4oKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmV0dXJuIGU7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgYXNzZXJ0LkFzc2VydGlvbkVycm9yKHsgbWVzc2FnZTogJ2V4cGVjdGVkIFtGdW5jdGlvbl0gdG8gdGhyb3cgYW4gZXJyb3InIH0pO1xuICAgIH0sXG4gICAgLi4uKGRpciA9PT0gbnVsbCA/IHt9IDogeyBkaXIgfSksXG4gICAgLi4uKGNvbnNvbGVSZWNvcmRlciA9PT0gbnVsbCA/IHt9IDogeyByZWNvcmRlcjogY29uc29sZVJlY29yZGVyLnJlY29yZGVyIH0pXG4gIH0pO1xuICBsZXQgYmVmb3JlQ2IgPSAoKSA9PiB7fTtcbiAgbGV0IGFmdGVyQ2IgPSAoKSA9PiB7fTtcbiAgbGV0IGJlZm9yZUVhY2hDYiA9ICgpID0+IHt9O1xuICBsZXQgYWZ0ZXJFYWNoQ2IgPSAoKSA9PiB7fTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZnVuYy1uYW1lc1xuICBtb2NoYS5kZXNjcmliZShzdWl0ZU5hbWUsIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gKGFzeW5jICgpID0+IHtcbiAgICAgIGlmICh0aW1lb3V0ICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMudGltZW91dCh0aW1lb3V0KTtcbiAgICAgIH1cblxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGZ1bmMtbmFtZXNcbiAgICAgIG1vY2hhLmJlZm9yZShmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGlmIChnZXRQYXJlbnRzKHRoaXMudGVzdCkubGVuZ3RoID09PSAzICYmIGZzLmV4aXN0c1N5bmMoZW52VmFyRmlsZSkpIHtcbiAgICAgICAgICAgIGVudk1hbmFnZXJGaWxlID0gRW52TWFuYWdlcih7IGVudlZhcnM6IGZzLnNtYXJ0UmVhZChlbnZWYXJGaWxlKSwgYWxsb3dPdmVyd3JpdGU6IGZhbHNlIH0pO1xuICAgICAgICAgICAgZW52TWFuYWdlckZpbGUuYXBwbHkoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVudlZhcnMgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGVudk1hbmFnZXJEZXNjID0gRW52TWFuYWdlcih7IGVudlZhcnMsIGFsbG93T3ZlcndyaXRlOiBmYWxzZSB9KTtcbiAgICAgICAgICAgIGVudk1hbmFnZXJEZXNjLmFwcGx5KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0aW1lc3RhbXAgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRpbWVLZWVwZXIgPSBUaW1lS2VlcGVyKHsgdW5peDogdGltZXN0YW1wIH0pO1xuICAgICAgICAgICAgdGltZUtlZXBlci5pbmplY3QoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGNyeXB0b1NlZWQgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJhbmRvbVNlZWRlciA9IFJhbmRvbVNlZWRlcih7IHNlZWQ6IGNyeXB0b1NlZWQsIHJlc2VlZDogZmFsc2UgfSk7XG4gICAgICAgICAgICByYW5kb21TZWVkZXIuaW5qZWN0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh1c2VOb2NrID09PSB0cnVlKSB7XG4gICAgICAgICAgICByZXF1ZXN0UmVjb3JkZXIgPSBSZXF1ZXN0UmVjb3JkZXIoe1xuICAgICAgICAgICAgICBjYXNzZXR0ZUZvbGRlcjogYCR7dGVzdEZpbGV9X19jYXNzZXR0ZXMvYCxcbiAgICAgICAgICAgICAgc3RyaXBIZWFkZXJzOiBmYWxzZSxcbiAgICAgICAgICAgICAgc3RyaWN0OiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYXdhaXQgYmVmb3JlQ2IuY2FsbCh0aGlzKTtcbiAgICAgICAgfSkoKTtcbiAgICAgIH0pO1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZnVuYy1uYW1lc1xuICAgICAgbW9jaGEuYWZ0ZXIoZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gKGFzeW5jICgpID0+IHtcbiAgICAgICAgICBpZiAocmVxdWVzdFJlY29yZGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICByZXF1ZXN0UmVjb3JkZXIuc2h1dGRvd24oKTtcbiAgICAgICAgICAgIHJlcXVlc3RSZWNvcmRlciA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChyYW5kb21TZWVkZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJhbmRvbVNlZWRlci5yZWxlYXNlKCk7XG4gICAgICAgICAgICByYW5kb21TZWVkZXIgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGltZUtlZXBlciAhPT0gbnVsbCkge1xuICAgICAgICAgICAgdGltZUtlZXBlci5yZWxlYXNlKCk7XG4gICAgICAgICAgICB0aW1lS2VlcGVyID0gbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGVudk1hbmFnZXJEZXNjICE9PSBudWxsKSB7XG4gICAgICAgICAgICBlbnZNYW5hZ2VyRGVzYy51bmFwcGx5KCk7XG4gICAgICAgICAgICBlbnZNYW5hZ2VyRGVzYyA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlbnZNYW5hZ2VyRmlsZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgZW52TWFuYWdlckZpbGUudW5hcHBseSgpO1xuICAgICAgICAgICAgZW52TWFuYWdlckZpbGUgPSBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhd2FpdCBhZnRlckNiLmNhbGwodGhpcyk7XG4gICAgICAgIH0pKCk7XG4gICAgICB9KTtcblxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGZ1bmMtbmFtZXNcbiAgICAgIG1vY2hhLmJlZm9yZUVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gKGFzeW5jICgpID0+IHtcbiAgICAgICAgICBpZiAodXNlVG1wRGlyID09PSB0cnVlKSB7XG4gICAgICAgICAgICB0bXAuc2V0R3JhY2VmdWxDbGVhbnVwKCk7XG4gICAgICAgICAgICBkaXIgPSB0bXAuZGlyU3luYyh7IGtlZXA6IGZhbHNlLCB1bnNhZmVDbGVhbnVwOiB0cnVlIH0pLm5hbWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh1c2VOb2NrID09PSB0cnVlKSB7XG4gICAgICAgICAgICBhd2FpdCByZXF1ZXN0UmVjb3JkZXIuaW5qZWN0KGdlbkNhc3NldHRlTmFtZSh0aGlzLmN1cnJlbnRUZXN0KSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChyZWNvcmRDb25zb2xlID09PSB0cnVlKSB7XG4gICAgICAgICAgICBjb25zb2xlUmVjb3JkZXIgPSBDb25zb2xlUmVjb3JkZXIoe1xuICAgICAgICAgICAgICB2ZXJib3NlOiBwcm9jZXNzLmFyZ3Yuc2xpY2UoMikuaW5jbHVkZXMoJy0tdmVyYm9zZScpXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnNvbGVSZWNvcmRlci5pbmplY3QoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYXdhaXQgYmVmb3JlRWFjaENiLmNhbGwodGhpcywgZ2V0QXJncygpKTtcbiAgICAgICAgfSkoKTtcbiAgICAgIH0pO1xuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZnVuYy1uYW1lc1xuICAgICAgbW9jaGEuYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgaWYgKGNvbnNvbGVSZWNvcmRlciAhPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc29sZVJlY29yZGVyLnJlbGVhc2UoKTtcbiAgICAgICAgICAgIGNvbnNvbGVSZWNvcmRlciA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChyZXF1ZXN0UmVjb3JkZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJlcXVlc3RSZWNvcmRlci5yZWxlYXNlKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChkaXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGRpciA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGF3YWl0IGFmdGVyRWFjaENiLmNhbGwodGhpcywgZ2V0QXJncygpKTtcbiAgICAgICAgfSkoKTtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBnbG9iYWxzUHJldiA9IE9iamVjdC5rZXlzKG1vY2hhKVxuICAgICAgICAucmVkdWNlKChwLCBrZXkpID0+IE9iamVjdC5hc3NpZ24ocCwgeyBba2V5XTogZ2xvYmFsW2tleV0gfSkpO1xuICAgICAgZ2xvYmFsLml0ID0gKHRlc3ROYW1lLCBmbikgPT4gbW9jaGEuaXQoXG4gICAgICAgIHRlc3ROYW1lLFxuICAgICAgICBmbi5sZW5ndGggPT09IDAgfHwgL15bXig9XSpcXCh7Ly50ZXN0KGZuLnRvU3RyaW5nKCkpXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGZ1bmMtbmFtZXNcbiAgICAgICAgICA/IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiBmbi5jYWxsKHRoaXMsIGdldEFyZ3MoKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBmdW5jLW5hbWVzXG4gICAgICAgICAgOiBmdW5jdGlvbiAoZG9uZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZuLmNhbGwodGhpcywgZG9uZSk7XG4gICAgICAgICAgfVxuICAgICAgKTtcbiAgICAgIGdsb2JhbC5zcGVjaWZ5ID0gZ2xvYmFsLml0O1xuICAgICAgZ2xvYmFsLmRlc2NyaWJlID0gZGVzYztcbiAgICAgIGdsb2JhbC5jb250ZXh0ID0gZ2xvYmFsLmRlc2NyaWJlO1xuICAgICAgZ2xvYmFsLmJlZm9yZSA9IChmbikgPT4ge1xuICAgICAgICBiZWZvcmVDYiA9IGZuO1xuICAgICAgfTtcbiAgICAgIGdsb2JhbC5hZnRlciA9IChmbikgPT4ge1xuICAgICAgICBhZnRlckNiID0gZm47XG4gICAgICB9O1xuICAgICAgZ2xvYmFsLmJlZm9yZUVhY2ggPSAoZm4pID0+IHtcbiAgICAgICAgYmVmb3JlRWFjaENiID0gZm47XG4gICAgICB9O1xuICAgICAgZ2xvYmFsLmFmdGVyRWFjaCA9IChmbikgPT4ge1xuICAgICAgICBhZnRlckVhY2hDYiA9IGZuO1xuICAgICAgfTtcbiAgICAgIGF3YWl0IHRlc3RzLmNhbGwodGhpcyk7XG4gICAgICBPYmplY3QuZW50cmllcyhnbG9iYWxzUHJldikuZm9yRWFjaCgoW2ssIHZdKSA9PiB7XG4gICAgICAgIGdsb2JhbFtrXSA9IHY7XG4gICAgICB9KTtcbiAgICB9KSgpO1xuICB9KTtcbn07XG5tb2R1bGUuZXhwb3J0cyA9IGRlc2M7XG4iXX0= |
{ | ||
"name": "node-tdd", | ||
"version": "2.2.0", | ||
"version": "2.2.1", | ||
"description": "Drop in replacement for mocha to abstract commonly used test setups", | ||
@@ -48,7 +48,7 @@ "main": "lib/index.js", | ||
"@blackflux/eslint-plugin-rules": "1.3.7", | ||
"@blackflux/robo-config-plugin": "2.5.11", | ||
"babel-eslint": "10.0.2", | ||
"@blackflux/robo-config-plugin": "2.5.12", | ||
"babel-eslint": "10.0.3", | ||
"chai": "4.2.0", | ||
"coveralls": "3.0.6", | ||
"eslint": "6.2.1", | ||
"eslint": "6.2.2", | ||
"eslint-config-airbnb-base": "14.0.0", | ||
@@ -111,5 +111,5 @@ "eslint-plugin-import": "2.18.2", | ||
"callsites": "3.1.0", | ||
"joi-strict": "1.0.8", | ||
"joi-strict": "1.0.9", | ||
"lodash.get": "4.4.2", | ||
"nock": "11.3.1", | ||
"nock": "11.3.2", | ||
"smart-fs": "1.9.10", | ||
@@ -116,0 +116,0 @@ "timekeeper": "2.2.0", |
@@ -47,7 +47,12 @@ # node-tdd | ||
#### getConsoleOutput | ||
#### recorder | ||
Type: `function` | ||
Type: `object` | ||
Can be called to access the currently captured logs. Returns array of logs. Can access different types of logs by accessing the properties `log`, `info`, `error`, `warn`. Only available when `recordConsole` is set. | ||
Can be called to interact with the currently captured console logs. Exposes the following functions: | ||
- `get(level = null)`: Returns array of recorded console logs. Can be restricted to level by passing one of `log`, `info`, `error`, `warn`. | ||
- `reset()`: Reset currently captured logs | ||
- `verbose(flag: boolean)`: Set verbosity mode of capture | ||
Only available when `recordConsole` is set. | ||
@@ -97,3 +102,3 @@ #### capture | ||
When set to true, console logging calls are recorded and can be accessed by calling `getConsoleOutput()` from within the test. | ||
When set to true, console logging calls are recorded and can be accessed by using `recorder` from within the test. | ||
@@ -100,0 +105,0 @@ #### cryptoSeed |
78520
479
116
+ Addedjoi-strict@1.0.9(transitive)
+ Addednock@11.3.2(transitive)
- Removedjoi-strict@1.0.8(transitive)
- Removednock@11.3.1(transitive)
Updatedjoi-strict@1.0.9
Updatednock@11.3.2