Socket
Socket
Sign inDemoInstall

tedious

Package Overview
Dependencies
12
Maintainers
8
Versions
217
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 16.6.1 to 16.7.0

4

lib/connector.js

@@ -10,3 +10,3 @@ "use strict";

var _net = _interopRequireDefault(require("net"));
var punycode = _interopRequireWildcard(require("punycode"));
var punycode = _interopRequireWildcard(require("punycode/"));
var _abortError = _interopRequireDefault(require("./errors/abort-error"));

@@ -153,2 +153,2 @@ var _esAggregateError = _interopRequireDefault(require("es-aggregate-error"));

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbmV0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJwdW55Y29kZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Fib3J0RXJyb3IiLCJfZXNBZ2dyZWdhdGVFcnJvciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJjb25uZWN0SW5QYXJhbGxlbCIsIm9wdGlvbnMiLCJsb29rdXAiLCJzaWduYWwiLCJhYm9ydGVkIiwiQWJvcnRFcnJvciIsImFkZHJlc3NlcyIsImxvb2t1cEFsbEFkZHJlc3NlcyIsImhvc3QiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInNvY2tldHMiLCJBcnJheSIsImxlbmd0aCIsImVycm9ycyIsIm9uRXJyb3IiLCJlcnIiLCJwdXNoIiwicmVtb3ZlTGlzdGVuZXIiLCJvbkNvbm5lY3QiLCJkZXN0cm95IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uQWJvcnQiLCJBZ2dyZWdhdGVFcnJvciIsImoiLCJzb2NrZXQiLCJpIiwibGVuIiwibmV0IiwiY29ubmVjdCIsImFkZHJlc3MiLCJmYW1pbHkiLCJvbiIsImFkZEV2ZW50TGlzdGVuZXIiLCJvbmNlIiwiY29ubmVjdEluU2VxdWVuY2UiLCJFcnJvciIsIm5hbWUiLCJpc0lQdjYiLCJpc0lQdjQiLCJ0b0FTQ0lJIiwiYWxsIl0sInNvdXJjZXMiOlsiLi4vc3JjL2Nvbm5lY3Rvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbmV0IGZyb20gJ25ldCc7XG5pbXBvcnQgZG5zLCB7IHR5cGUgTG9va3VwQWRkcmVzcyB9IGZyb20gJ2Rucyc7XG5cbmltcG9ydCAqIGFzIHB1bnljb2RlIGZyb20gJ3B1bnljb2RlJztcbmltcG9ydCB7IEFib3J0U2lnbmFsIH0gZnJvbSAnbm9kZS1hYm9ydC1jb250cm9sbGVyJztcbmltcG9ydCBBYm9ydEVycm9yIGZyb20gJy4vZXJyb3JzL2Fib3J0LWVycm9yJztcblxuaW1wb3J0IEFnZ3JlZ2F0ZUVycm9yIGZyb20gJ2VzLWFnZ3JlZ2F0ZS1lcnJvcic7XG5cbnR5cGUgTG9va3VwRnVuY3Rpb24gPSAoaG9zdG5hbWU6IHN0cmluZywgb3B0aW9uczogZG5zLkxvb2t1cEFsbE9wdGlvbnMsIGNhbGxiYWNrOiAoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24gfCBudWxsLCBhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW10pID0+IHZvaWQpID0+IHZvaWQ7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb25uZWN0SW5QYXJhbGxlbChvcHRpb25zOiB7IGhvc3Q6IHN0cmluZywgcG9ydDogbnVtYmVyLCBsb2NhbEFkZHJlc3M/OiBzdHJpbmcgfCB1bmRlZmluZWQgfSwgbG9va3VwOiBMb29rdXBGdW5jdGlvbiwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xuICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICB0aHJvdyBuZXcgQWJvcnRFcnJvcigpO1xuICB9XG5cbiAgY29uc3QgYWRkcmVzc2VzID0gYXdhaXQgbG9va3VwQWxsQWRkcmVzc2VzKG9wdGlvbnMuaG9zdCwgbG9va3VwLCBzaWduYWwpO1xuXG4gIHJldHVybiBhd2FpdCBuZXcgUHJvbWlzZTxuZXQuU29ja2V0PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3Qgc29ja2V0cyA9IG5ldyBBcnJheShhZGRyZXNzZXMubGVuZ3RoKTtcblxuICAgIGNvbnN0IGVycm9yczogRXJyb3JbXSA9IFtdO1xuXG4gICAgZnVuY3Rpb24gb25FcnJvcih0aGlzOiBuZXQuU29ja2V0LCBlcnI6IEVycm9yKSB7XG4gICAgICBlcnJvcnMucHVzaChlcnIpO1xuXG4gICAgICB0aGlzLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG5cbiAgICAgIHRoaXMuZGVzdHJveSgpO1xuXG4gICAgICBpZiAoZXJyb3JzLmxlbmd0aCA9PT0gYWRkcmVzc2VzLmxlbmd0aCkge1xuICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICByZWplY3QobmV3IEFnZ3JlZ2F0ZUVycm9yKGVycm9ycywgJ0NvdWxkIG5vdCBjb25uZWN0IChwYXJhbGxlbCknKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gb25Db25uZWN0KHRoaXM6IG5ldC5Tb2NrZXQpIHtcbiAgICAgIHNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQpO1xuXG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNvY2tldHMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgY29uc3Qgc29ja2V0ID0gc29ja2V0c1tqXTtcblxuICAgICAgICBpZiAodGhpcyA9PT0gc29ja2V0KSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG4gICAgICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgICB9XG5cbiAgICAgIHJlc29sdmUodGhpcyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgc29ja2V0cy5sZW5ndGg7IGorKykge1xuICAgICAgICBjb25zdCBzb2NrZXQgPSBzb2NrZXRzW2pdO1xuXG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgfVxuXG4gICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgfTtcblxuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBhZGRyZXNzZXMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgIGNvbnN0IHNvY2tldCA9IHNvY2tldHNbaV0gPSBuZXQuY29ubmVjdCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGhvc3Q6IGFkZHJlc3Nlc1tpXS5hZGRyZXNzLFxuICAgICAgICBmYW1pbHk6IGFkZHJlc3Nlc1tpXS5mYW1pbHlcbiAgICAgIH0pO1xuXG4gICAgICBzb2NrZXQub24oJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICBzb2NrZXQub24oJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuICAgIH1cblxuICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQsIHsgb25jZTogdHJ1ZSB9KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb25uZWN0SW5TZXF1ZW5jZShvcHRpb25zOiB7IGhvc3Q6IHN0cmluZywgcG9ydDogbnVtYmVyLCBsb2NhbEFkZHJlc3M/OiBzdHJpbmcgfCB1bmRlZmluZWQgfSwgbG9va3VwOiBMb29rdXBGdW5jdGlvbiwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xuICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICB0aHJvdyBuZXcgQWJvcnRFcnJvcigpO1xuICB9XG5cbiAgY29uc3QgZXJyb3JzOiBhbnlbXSA9IFtdO1xuICBjb25zdCBhZGRyZXNzZXMgPSBhd2FpdCBsb29rdXBBbGxBZGRyZXNzZXMob3B0aW9ucy5ob3N0LCBsb29rdXAsIHNpZ25hbCk7XG5cbiAgZm9yIChjb25zdCBhZGRyZXNzIG9mIGFkZHJlc3Nlcykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2U8bmV0LlNvY2tldD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBjb25zdCBzb2NrZXQgPSBuZXQuY29ubmVjdCh7XG4gICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICBob3N0OiBhZGRyZXNzLmFkZHJlc3MsXG4gICAgICAgICAgZmFtaWx5OiBhZGRyZXNzLmZhbWlseVxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgICAgc29ja2V0LmRlc3Ryb3koKTtcblxuICAgICAgICAgIHJlamVjdChuZXcgQWJvcnRFcnJvcigpKTtcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBvbkVycm9yID0gKGVycjogRXJyb3IpID0+IHtcbiAgICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgICAgc29ja2V0LmRlc3Ryb3koKTtcblxuICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IG9uQ29ubmVjdCA9ICgpID0+IHtcbiAgICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICAgICAgcmVzb2x2ZShzb2NrZXQpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQsIHsgb25jZTogdHJ1ZSB9KTtcblxuICAgICAgICBzb2NrZXQub24oJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5vbignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnIubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH1cblxuICAgICAgZXJyb3JzLnB1c2goZXJyKTtcblxuICAgICAgY29udGludWU7XG4gICAgfVxuICB9XG5cbiAgdGhyb3cgbmV3IEFnZ3JlZ2F0ZUVycm9yKGVycm9ycywgJ0NvdWxkIG5vdCBjb25uZWN0IChzZXF1ZW5jZSknKTtcbn1cblxuLyoqXG4gKiBMb29rIHVwIGFsbCBhZGRyZXNzZXMgZm9yIHRoZSBnaXZlbiBob3N0bmFtZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvb2t1cEFsbEFkZHJlc3Nlcyhob3N0OiBzdHJpbmcsIGxvb2t1cDogTG9va3VwRnVuY3Rpb24sIHNpZ25hbDogQWJvcnRTaWduYWwpOiBQcm9taXNlPGRucy5Mb29rdXBBZGRyZXNzW10+IHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIGlmIChuZXQuaXNJUHY2KGhvc3QpKSB7XG4gICAgcmV0dXJuIFt7IGFkZHJlc3M6IGhvc3QsIGZhbWlseTogNiB9XTtcbiAgfSBlbHNlIGlmIChuZXQuaXNJUHY0KGhvc3QpKSB7XG4gICAgcmV0dXJuIFt7IGFkZHJlc3M6IGhvc3QsIGZhbWlseTogNCB9XTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2U8TG9va3VwQWRkcmVzc1tdPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgICB9O1xuXG4gICAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgbG9va3VwKHB1bnljb2RlLnRvQVNDSUkoaG9zdCksIHsgYWxsOiB0cnVlIH0sIChlcnIsIGFkZHJlc3NlcykgPT4ge1xuICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICBlcnIgPyByZWplY3QoZXJyKSA6IHJlc29sdmUoYWRkcmVzc2VzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsSUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUMsUUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsV0FBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUksaUJBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUFnRCxTQUFBSyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBSix3QkFBQVEsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxH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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbmV0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJwdW55Y29kZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Fib3J0RXJyb3IiLCJfZXNBZ2dyZWdhdGVFcnJvciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJjb25uZWN0SW5QYXJhbGxlbCIsIm9wdGlvbnMiLCJsb29rdXAiLCJzaWduYWwiLCJhYm9ydGVkIiwiQWJvcnRFcnJvciIsImFkZHJlc3NlcyIsImxvb2t1cEFsbEFkZHJlc3NlcyIsImhvc3QiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInNvY2tldHMiLCJBcnJheSIsImxlbmd0aCIsImVycm9ycyIsIm9uRXJyb3IiLCJlcnIiLCJwdXNoIiwicmVtb3ZlTGlzdGVuZXIiLCJvbkNvbm5lY3QiLCJkZXN0cm95IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uQWJvcnQiLCJBZ2dyZWdhdGVFcnJvciIsImoiLCJzb2NrZXQiLCJpIiwibGVuIiwibmV0IiwiY29ubmVjdCIsImFkZHJlc3MiLCJmYW1pbHkiLCJvbiIsImFkZEV2ZW50TGlzdGVuZXIiLCJvbmNlIiwiY29ubmVjdEluU2VxdWVuY2UiLCJFcnJvciIsIm5hbWUiLCJpc0lQdjYiLCJpc0lQdjQiLCJ0b0FTQ0lJIiwiYWxsIl0sInNvdXJjZXMiOlsiLi4vc3JjL2Nvbm5lY3Rvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbmV0IGZyb20gJ25ldCc7XG5pbXBvcnQgZG5zLCB7IHR5cGUgTG9va3VwQWRkcmVzcyB9IGZyb20gJ2Rucyc7XG5cbmltcG9ydCAqIGFzIHB1bnljb2RlIGZyb20gJ3B1bnljb2RlLyc7XG5pbXBvcnQgeyBBYm9ydFNpZ25hbCB9IGZyb20gJ25vZGUtYWJvcnQtY29udHJvbGxlcic7XG5pbXBvcnQgQWJvcnRFcnJvciBmcm9tICcuL2Vycm9ycy9hYm9ydC1lcnJvcic7XG5cbmltcG9ydCBBZ2dyZWdhdGVFcnJvciBmcm9tICdlcy1hZ2dyZWdhdGUtZXJyb3InO1xuXG50eXBlIExvb2t1cEZ1bmN0aW9uID0gKGhvc3RuYW1lOiBzdHJpbmcsIG9wdGlvbnM6IGRucy5Mb29rdXBBbGxPcHRpb25zLCBjYWxsYmFjazogKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uIHwgbnVsbCwgYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdKSA9PiB2b2lkKSA9PiB2b2lkO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY29ubmVjdEluUGFyYWxsZWwob3B0aW9uczogeyBob3N0OiBzdHJpbmcsIHBvcnQ6IG51bWJlciwgbG9jYWxBZGRyZXNzPzogc3RyaW5nIHwgdW5kZWZpbmVkIH0sIGxvb2t1cDogTG9va3VwRnVuY3Rpb24sIHNpZ25hbDogQWJvcnRTaWduYWwpIHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIGNvbnN0IGFkZHJlc3NlcyA9IGF3YWl0IGxvb2t1cEFsbEFkZHJlc3NlcyhvcHRpb25zLmhvc3QsIGxvb2t1cCwgc2lnbmFsKTtcblxuICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2U8bmV0LlNvY2tldD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHNvY2tldHMgPSBuZXcgQXJyYXkoYWRkcmVzc2VzLmxlbmd0aCk7XG5cbiAgICBjb25zdCBlcnJvcnM6IEVycm9yW10gPSBbXTtcblxuICAgIGZ1bmN0aW9uIG9uRXJyb3IodGhpczogbmV0LlNvY2tldCwgZXJyOiBFcnJvcikge1xuICAgICAgZXJyb3JzLnB1c2goZXJyKTtcblxuICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuXG4gICAgICB0aGlzLmRlc3Ryb3koKTtcblxuICAgICAgaWYgKGVycm9ycy5sZW5ndGggPT09IGFkZHJlc3Nlcy5sZW5ndGgpIHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgcmVqZWN0KG5ldyBBZ2dyZWdhdGVFcnJvcihlcnJvcnMsICdDb3VsZCBub3QgY29ubmVjdCAocGFyYWxsZWwpJykpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIG9uQ29ubmVjdCh0aGlzOiBuZXQuU29ja2V0KSB7XG4gICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzb2NrZXRzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgIGNvbnN0IHNvY2tldCA9IHNvY2tldHNbal07XG5cbiAgICAgICAgaWYgKHRoaXMgPT09IHNvY2tldCkge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuICAgICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgfVxuXG4gICAgICByZXNvbHZlKHRoaXMpO1xuICAgIH1cblxuICAgIGNvbnN0IG9uQWJvcnQgPSAoKSA9PiB7XG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNvY2tldHMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgY29uc3Qgc29ja2V0ID0gc29ja2V0c1tqXTtcblxuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignY29ubmVjdCcsIG9uQ29ubmVjdCk7XG5cbiAgICAgICAgc29ja2V0LmRlc3Ryb3koKTtcbiAgICAgIH1cblxuICAgICAgcmVqZWN0KG5ldyBBYm9ydEVycm9yKCkpO1xuICAgIH07XG5cbiAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYWRkcmVzc2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb25zdCBzb2NrZXQgPSBzb2NrZXRzW2ldID0gbmV0LmNvbm5lY3Qoe1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBob3N0OiBhZGRyZXNzZXNbaV0uYWRkcmVzcyxcbiAgICAgICAgZmFtaWx5OiBhZGRyZXNzZXNbaV0uZmFtaWx5XG4gICAgICB9KTtcblxuICAgICAgc29ja2V0Lm9uKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgc29ja2V0Lm9uKCdjb25uZWN0Jywgb25Db25uZWN0KTtcbiAgICB9XG5cbiAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0LCB7IG9uY2U6IHRydWUgfSk7XG4gIH0pO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY29ubmVjdEluU2VxdWVuY2Uob3B0aW9uczogeyBob3N0OiBzdHJpbmcsIHBvcnQ6IG51bWJlciwgbG9jYWxBZGRyZXNzPzogc3RyaW5nIHwgdW5kZWZpbmVkIH0sIGxvb2t1cDogTG9va3VwRnVuY3Rpb24sIHNpZ25hbDogQWJvcnRTaWduYWwpIHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIGNvbnN0IGVycm9yczogYW55W10gPSBbXTtcbiAgY29uc3QgYWRkcmVzc2VzID0gYXdhaXQgbG9va3VwQWxsQWRkcmVzc2VzKG9wdGlvbnMuaG9zdCwgbG9va3VwLCBzaWduYWwpO1xuXG4gIGZvciAoY29uc3QgYWRkcmVzcyBvZiBhZGRyZXNzZXMpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPG5ldC5Tb2NrZXQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3Qgc29ja2V0ID0gbmV0LmNvbm5lY3Qoe1xuICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgaG9zdDogYWRkcmVzcy5hZGRyZXNzLFxuICAgICAgICAgIGZhbWlseTogYWRkcmVzcy5mYW1pbHlcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgICAgIHNvY2tldC5kZXN0cm95KCk7XG5cbiAgICAgICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3Qgb25FcnJvciA9IChlcnI6IEVycm9yKSA9PiB7XG4gICAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgICAgIHNvY2tldC5kZXN0cm95KCk7XG5cbiAgICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBvbkNvbm5lY3QgPSAoKSA9PiB7XG4gICAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjb25uZWN0Jywgb25Db25uZWN0KTtcblxuICAgICAgICAgIHJlc29sdmUoc29ja2V0KTtcbiAgICAgICAgfTtcblxuICAgICAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0LCB7IG9uY2U6IHRydWUgfSk7XG5cbiAgICAgICAgc29ja2V0Lm9uKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgICBzb2NrZXQub24oJ2Nvbm5lY3QnLCBvbkNvbm5lY3QpO1xuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyIGluc3RhbmNlb2YgRXJyb3IgJiYgZXJyLm5hbWUgPT09ICdBYm9ydEVycm9yJykge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG5cbiAgICAgIGVycm9ycy5wdXNoKGVycik7XG5cbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgfVxuXG4gIHRocm93IG5ldyBBZ2dyZWdhdGVFcnJvcihlcnJvcnMsICdDb3VsZCBub3QgY29ubmVjdCAoc2VxdWVuY2UpJyk7XG59XG5cbi8qKlxuICogTG9vayB1cCBhbGwgYWRkcmVzc2VzIGZvciB0aGUgZ2l2ZW4gaG9zdG5hbWUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBsb29rdXBBbGxBZGRyZXNzZXMoaG9zdDogc3RyaW5nLCBsb29rdXA6IExvb2t1cEZ1bmN0aW9uLCBzaWduYWw6IEFib3J0U2lnbmFsKTogUHJvbWlzZTxkbnMuTG9va3VwQWRkcmVzc1tdPiB7XG4gIGlmIChzaWduYWwuYWJvcnRlZCkge1xuICAgIHRocm93IG5ldyBBYm9ydEVycm9yKCk7XG4gIH1cblxuICBpZiAobmV0LmlzSVB2Nihob3N0KSkge1xuICAgIHJldHVybiBbeyBhZGRyZXNzOiBob3N0LCBmYW1pbHk6IDYgfV07XG4gIH0gZWxzZSBpZiAobmV0LmlzSVB2NChob3N0KSkge1xuICAgIHJldHVybiBbeyBhZGRyZXNzOiBob3N0LCBmYW1pbHk6IDQgfV07XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPExvb2t1cEFkZHJlc3NbXT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgICAgcmVqZWN0KG5ldyBBYm9ydEVycm9yKCkpO1xuICAgICAgfTtcblxuICAgICAgc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgIGxvb2t1cChwdW55Y29kZS50b0FTQ0lJKGhvc3QpLCB7IGFsbDogdHJ1ZSB9LCAoZXJyLCBhZGRyZXNzZXMpID0+IHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGFkZHJlc3Nlcyk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLElBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUdBLElBQUFDLFFBQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFHLFdBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFJLGlCQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFBZ0QsU0FBQUsseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLENBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQUosd0JBQUFRLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEs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

@@ -431,2 +431,2 @@ "use strict";

exports.typeByName = typeByName;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbnVsbCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3RpbnlpbnQiLCJfYml0IiwiX3NtYWxsaW50IiwiX2ludCIsIl9zbWFsbGRhdGV0aW1lIiwiX3JlYWwiLCJfbW9uZXkiLCJfZGF0ZXRpbWUiLCJfZmxvYXQiLCJfZGVjaW1hbCIsIl9udW1lcmljIiwiX3NtYWxsbW9uZXkiLCJfYmlnaW50IiwiX2ltYWdlIiwiX3RleHQiLCJfdW5pcXVlaWRlbnRpZmllciIsIl9pbnRuIiwiX250ZXh0IiwiX2JpdG4iLCJfZGVjaW1hbG4iLCJfbnVtZXJpY24iLCJfZmxvYXRuIiwiX21vbmV5biIsIl9kYXRldGltZW4iLCJfdmFyYmluYXJ5IiwiX3ZhcmNoYXIiLCJfYmluYXJ5IiwiX2NoYXIiLCJfbnZhcmNoYXIiLCJfbmNoYXIiLCJfeG1sIiwiX3RpbWUiLCJfZGF0ZSIsIl9kYXRldGltZTIiLCJfZGF0ZXRpbWVvZmZzZXQiLCJfdWR0IiwiX3R2cCIsIl9zcWxWYXJpYW50Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJUWVBFIiwiTnVsbCIsImlkIiwiVGlueUludCIsIkJpdCIsIlNtYWxsSW50IiwiSW50IiwiU21hbGxEYXRlVGltZSIsIlJlYWwiLCJNb25leSIsIkRhdGVUaW1lIiwiRmxvYXQiLCJEZWNpbWFsIiwiTnVtZXJpYyIsIlNtYWxsTW9uZXkiLCJCaWdJbnQiLCJJbWFnZSIsIlRleHQiLCJVbmlxdWVJZGVudGlmaWVyIiwiSW50TiIsIk5UZXh0IiwiQml0TiIsIkRlY2ltYWxOIiwiTnVtZXJpY04iLCJGbG9hdE4iLCJNb25leU4iLCJEYXRlVGltZU4iLCJWYXJCaW5hcnkiLCJWYXJDaGFyIiwiQmluYXJ5IiwiQ2hhciIsIk5WYXJDaGFyIiwiTkNoYXIiLCJYbWwiLCJUaW1lIiwiRGF0ZSIsIkRhdGVUaW1lMiIsIkRhdGVUaW1lT2Zmc2V0IiwiVURUIiwiVFZQIiwiVmFyaWFudCIsImV4cG9ydHMiLCJUWVBFUyIsInR5cGVCeU5hbWUiXSwic291cmNlcyI6WyIuLi9zcmMvZGF0YS10eXBlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBOdWxsIGZyb20gJy4vZGF0YS10eXBlcy9udWxsJztcbmltcG9ydCBUaW55SW50IGZyb20gJy4vZGF0YS10eXBlcy90aW55aW50JztcbmltcG9ydCBCaXQgZnJvbSAnLi9kYXRhLXR5cGVzL2JpdCc7XG5pbXBvcnQgU21hbGxJbnQgZnJvbSAnLi9kYXRhLXR5cGVzL3NtYWxsaW50JztcbmltcG9ydCBJbnQgZnJvbSAnLi9kYXRhLXR5cGVzL2ludCc7XG5pbXBvcnQgU21hbGxEYXRlVGltZSBmcm9tICcuL2RhdGEtdHlwZXMvc21hbGxkYXRldGltZSc7XG5pbXBvcnQgUmVhbCBmcm9tICcuL2RhdGEtdHlwZXMvcmVhbCc7XG5pbXBvcnQgTW9uZXkgZnJvbSAnLi9kYXRhLXR5cGVzL21vbmV5JztcbmltcG9ydCBEYXRlVGltZSBmcm9tICcuL2RhdGEtdHlwZXMvZGF0ZXRpbWUnO1xuaW1wb3J0IEZsb2F0IGZyb20gJy4vZGF0YS10eXBlcy9mbG9hdCc7XG5pbXBvcnQgRGVjaW1hbCBmcm9tICcuL2RhdGEtdHlwZXMvZGVjaW1hbCc7XG5pbXBvcnQgTnVtZXJpYyBmcm9tICcuL2RhdGEtdHlwZXMvbnVtZXJpYyc7XG5pbXBvcnQgU21hbGxNb25leSBmcm9tICcuL2RhdGEtdHlwZXMvc21hbGxtb25leSc7XG5pbXBvcnQgQmlnSW50IGZyb20gJy4vZGF0YS10eXBlcy9iaWdpbnQnO1xuaW1wb3J0IEltYWdlIGZyb20gJy4vZGF0YS10eXBlcy9pbWFnZSc7XG5pbXBvcnQgVGV4dCBmcm9tICcuL2RhdGEtdHlwZXMvdGV4dCc7XG5pbXBvcnQgVW5pcXVlSWRlbnRpZmllciBmcm9tICcuL2RhdGEtdHlwZXMvdW5pcXVlaWRlbnRpZmllcic7XG5pbXBvcnQgSW50TiBmcm9tICcuL2RhdGEtdHlwZXMvaW50bic7XG5pbXBvcnQgTlRleHQgZnJvbSAnLi9kYXRhLXR5cGVzL250ZXh0JztcbmltcG9ydCBCaXROIGZyb20gJy4vZGF0YS10eXBlcy9iaXRuJztcbmltcG9ydCBEZWNpbWFsTiBmcm9tICcuL2RhdGEtdHlwZXMvZGVjaW1hbG4nO1xuaW1wb3J0IE51bWVyaWNOIGZyb20gJy4vZGF0YS10eXBlcy9udW1lcmljbic7XG5pbXBvcnQgRmxvYXROIGZyb20gJy4vZGF0YS10eXBlcy9mbG9hdG4nO1xuaW1wb3J0IE1vbmV5TiBmcm9tICcuL2RhdGEtdHlwZXMvbW9uZXluJztcbmltcG9ydCBEYXRlVGltZU4gZnJvbSAnLi9kYXRhLXR5cGVzL2RhdGV0aW1lbic7XG5pbXBvcnQgVmFyQmluYXJ5IGZyb20gJy4vZGF0YS10eXBlcy92YXJiaW5hcnknO1xuaW1wb3J0IFZhckNoYXIgZnJvbSAnLi9kYXRhLXR5cGVzL3ZhcmNoYXInO1xuaW1wb3J0IEJpbmFyeSBmcm9tICcuL2RhdGEtdHlwZXMvYmluYXJ5JztcbmltcG9ydCBDaGFyIGZyb20gJy4vZGF0YS10eXBlcy9jaGFyJztcbmltcG9ydCBOVmFyQ2hhciBmcm9tICcuL2RhdGEtdHlwZXMvbnZhcmNoYXInO1xuaW1wb3J0IE5DaGFyIGZyb20gJy4vZGF0YS10eXBlcy9uY2hhcic7XG5pbXBvcnQgWG1sIGZyb20gJy4vZGF0YS10eXBlcy94bWwnO1xuaW1wb3J0IFRpbWUgZnJvbSAnLi9kYXRhLXR5cGVzL3RpbWUnO1xuaW1wb3J0IERhdGUgZnJvbSAnLi9kYXRhLXR5cGVzL2RhdGUnO1xuaW1wb3J0IERhdGVUaW1lMiBmcm9tICcuL2RhdGEtdHlwZXMvZGF0ZXRpbWUyJztcbmltcG9ydCBEYXRlVGltZU9mZnNldCBmcm9tICcuL2RhdGEtdHlwZXMvZGF0ZXRpbWVvZmZzZXQnO1xuaW1wb3J0IFVEVCBmcm9tICcuL2RhdGEtdHlwZXMvdWR0JztcbmltcG9ydCBUVlAgZnJvbSAnLi9kYXRhLXR5cGVzL3R2cCc7XG5pbXBvcnQgVmFyaWFudCBmcm9tICcuL2RhdGEtdHlwZXMvc3FsLXZhcmlhbnQnO1xuaW1wb3J0IHsgdHlwZSBDcnlwdG9NZXRhZGF0YSB9IGZyb20gJy4vYWx3YXlzLWVuY3J5cHRlZC90eXBlcyc7XG5cbmltcG9ydCB7IHR5cGUgSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyB9IGZyb20gJy4vY29ubmVjdGlvbic7XG5pbXBvcnQgeyBDb2xsYXRpb24gfSBmcm9tICcuL2NvbGxhdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyIHtcbiAgdHlwZTogRGF0YVR5cGU7XG4gIG5hbWU6IHN0cmluZztcblxuICB2YWx1ZTogdW5rbm93bjtcblxuICBvdXRwdXQ6IGJvb2xlYW47XG4gIGxlbmd0aD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgcHJlY2lzaW9uPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBzY2FsZT86IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBudWxsYWJsZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgZm9yY2VFbmNyeXB0PzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgY3J5cHRvTWV0YWRhdGE/OiBDcnlwdG9NZXRhZGF0YSB8IHVuZGVmaW5lZDtcbiAgZW5jcnlwdGVkVmFsPzogQnVmZmVyIHwgdW5kZWZpbmVkO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyRGF0YTxUID0gYW55PiB7XG4gIGxlbmd0aD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgc2NhbGU/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHByZWNpc2lvbj86IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBjb2xsYXRpb24/OiBDb2xsYXRpb24gfCB1bmRlZmluZWQ7XG5cbiAgdmFsdWU6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVR5cGUge1xuICBpZDogbnVtYmVyO1xuICB0eXBlOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcblxuICBkZWNsYXJhdGlvbihwYXJhbWV0ZXI6IFBhcmFtZXRlcik6IHN0cmluZztcbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXI6IFBhcmFtZXRlckRhdGEsIG9wdGlvbnM6IEludGVybmFsQ29ubmVjdGlvbk9wdGlvbnMpOiBCdWZmZXI7XG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlcjogUGFyYW1ldGVyRGF0YSwgb3B0aW9uczogSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyk6IEJ1ZmZlcjtcbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlcjogUGFyYW1ldGVyRGF0YSwgb3B0aW9uczogSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyk6IEdlbmVyYXRvcjxCdWZmZXIsIHZvaWQ+O1xuICB2YWxpZGF0ZSh2YWx1ZTogYW55LCBjb2xsYXRpb246IENvbGxhdGlvbiB8IHVuZGVmaW5lZCk6IGFueTsgLy8gVE9ETzogUmVmYWN0b3IgJ2FueScgYW5kIHJlcGxhY2Ugd2l0aCBtb3JlIHNwZWNpZmljIHR5cGUuXG5cbiAgaGFzVGFibGVOYW1lPzogYm9vbGVhbjtcblxuICByZXNvbHZlTGVuZ3RoPzogKHBhcmFtZXRlcjogUGFyYW1ldGVyKSA9PiBudW1iZXI7XG4gIHJlc29sdmVQcmVjaXNpb24/OiAocGFyYW1ldGVyOiBQYXJhbWV0ZXIpID0+IG51bWJlcjtcbiAgcmVzb2x2ZVNjYWxlPzogKHBhcmFtZXRlcjogUGFyYW1ldGVyKSA9PiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBUWVBFID0ge1xuICBbTnVsbC5pZF06IE51bGwsXG4gIFtUaW55SW50LmlkXTogVGlueUludCxcbiAgW0JpdC5pZF06IEJpdCxcbiAgW1NtYWxsSW50LmlkXTogU21hbGxJbnQsXG4gIFtJbnQuaWRdOiBJbnQsXG4gIFtTbWFsbERhdGVUaW1lLmlkXTogU21hbGxEYXRlVGltZSxcbiAgW1JlYWwuaWRdOiBSZWFsLFxuICBbTW9uZXkuaWRdOiBNb25leSxcbiAgW0RhdGVUaW1lLmlkXTogRGF0ZVRpbWUsXG4gIFtGbG9hdC5pZF06IEZsb2F0LFxuICBbRGVjaW1hbC5pZF06IERlY2ltYWwsXG4gIFtOdW1lcmljLmlkXTogTnVtZXJpYyxcbiAgW1NtYWxsTW9uZXkuaWRdOiBTbWFsbE1vbmV5LFxuICBbQmlnSW50LmlkXTogQmlnSW50LFxuICBbSW1hZ2UuaWRdOiBJbWFnZSxcbiAgW1RleHQuaWRdOiBUZXh0LFxuICBbVW5pcXVlSWRlbnRpZmllci5pZF06IFVuaXF1ZUlkZW50aWZpZXIsXG4gIFtJbnROLmlkXTogSW50TixcbiAgW05UZXh0LmlkXTogTlRleHQsXG4gIFtCaXROLmlkXTogQml0TixcbiAgW0RlY2ltYWxOLmlkXTogRGVjaW1hbE4sXG4gIFtOdW1lcmljTi5pZF06IE51bWVyaWNOLFxuICBbRmxvYXROLmlkXTogRmxvYXROLFxuICBbTW9uZXlOLmlkXTogTW9uZXlOLFxuICBbRGF0ZVRpbWVOLmlkXTogRGF0ZVRpbWVOLFxuICBbVmFyQmluYXJ5LmlkXTogVmFyQmluYXJ5LFxuICBbVmFyQ2hhci5pZF06IFZhckNoYXIsXG4gIFtCaW5hcnkuaWRdOiBCaW5hcnksXG4gIFtDaGFyLmlkXTogQ2hhcixcbiAgW05WYXJDaGFyLmlkXTogTlZhckNoYXIsXG4gIFtOQ2hhci5pZF06IE5DaGFyLFxuICBbWG1sLmlkXTogWG1sLFxuICBbVGltZS5pZF06IFRpbWUsXG4gIFtEYXRlLmlkXTogRGF0ZSxcbiAgW0RhdGVUaW1lMi5pZF06IERhdGVUaW1lMixcbiAgW0RhdGVUaW1lT2Zmc2V0LmlkXTogRGF0ZVRpbWVPZmZzZXQsXG4gIFtVRFQuaWRdOiBVRFQsXG4gIFtUVlAuaWRdOiBUVlAsXG4gIFtWYXJpYW50LmlkXTogVmFyaWFudCxcbn07XG5cbi8qKlxuICogPHRhYmxlPlxuICogPHRoZWFkPlxuICogICA8dHI+XG4gKiAgICAgPHRoPlR5cGU8L3RoPlxuICogICAgIDx0aD5Db25zdGFudDwvdGg+XG4gKiAgICAgPHRoPkphdmFTY3JpcHQ8L3RoPlxuICogICAgIDx0aD5SZXN1bHQgc2V0PC90aD5cbiAqICAgICA8dGg+UGFyYW1ldGVyPC90aD5cbiAqICAgPC90cj5cbiAqIDwvdGhlYWQ+XG4gKlxuICogPHRib2R5PlxuICogICA8dHIgY2xhc3M9XCJncm91cC1oZWFkaW5nXCI+XG4gKiAgICAgPHRoIGNvbHNwYW49XCI1XCI+RXhhY3QgbnVtZXJpY3M8L3RoPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmJpdDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLkJpdF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPmJvb2xlYW48L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT50aW55aW50PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuVGlueUludF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPm51bWJlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnNtYWxsaW50PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuU21hbGxJbnRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5udW1iZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5pbnQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5JbnRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5udW1iZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5iaWdpbnQ8L2NvZGU+PHN1cD4xPC9zdXA+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5CaWdJbnRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5udW1lcmljPC9jb2RlPjxzdXA+Mjwvc3VwPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuTnVtZXJpY11dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPm51bWJlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmRlY2ltYWw8L2NvZGU+PHN1cD4yPC9zdXA+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5EZWNpbWFsXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+c21hbGxtb25leTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlNtYWxsTW9uZXldXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5udW1iZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5tb25leTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLk1vbmV5XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiA8L3Rib2R5PlxuICpcbiAqIDx0Ym9keT5cbiAqICAgPHRyIGNsYXNzPVwiZ3JvdXAtaGVhZGluZ1wiPlxuICogICAgIDx0aCBjb2xzcGFuPVwiNVwiPkFwcHJveGltYXRlIG51bWVyaWNzPC90aD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5mbG9hdDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLkZsb2F0XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+cmVhbDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlJlYWxdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5udW1iZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqIDwvdGJvZHk+XG4gKlxuICogPHRib2R5PlxuICogICA8dHIgY2xhc3M9XCJncm91cC1oZWFkaW5nXCI+XG4gKiAgICAgPHRoIGNvbHNwYW49XCI0XCI+RGF0ZSBhbmQgVGltZTwvdGg+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+c21hbGxkYXRldGltZTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlNtYWxsRGF0ZVRpbWVdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5EYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+ZGF0ZXRpbWU8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5EYXRlVGltZV1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkRhdGU8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5kYXRldGltZTI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5EYXRlVGltZTJdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5EYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+ZGF0ZXRpbWVvZmZzZXQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5EYXRlVGltZU9mZnNldF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkRhdGU8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT50aW1lPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuVGltZV1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkRhdGU8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5kYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuRGF0ZV1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkRhdGU8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqIDwvdGJvZHk+XG4gKlxuICogPHRib2R5PlxuICogICA8dHIgY2xhc3M9XCJncm91cC1oZWFkaW5nXCI+XG4gKiAgICAgPHRoIGNvbHNwYW49XCI0XCI+Q2hhcmFjdGVyIFN0cmluZ3M8L3RoPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmNoYXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5DaGFyXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+c3RyaW5nPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+dmFyY2hhcjwvY29kZT48c3VwPjM8L3N1cD48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlZhckNoYXJdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT50ZXh0PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuVGV4dF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPnN0cmluZzwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogPC90Ym9keT5cbiAqXG4gKiA8dGJvZHk+XG4gKiAgIDx0ciBjbGFzcz1cImdyb3VwLWhlYWRpbmdcIj5cbiAqICAgICA8dGggY29sc3Bhbj1cIjRcIj5Vbmljb2RlIFN0cmluZ3M8L3RoPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPm5jaGFyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuTkNoYXJdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5udmFyY2hhcjwvY29kZT48c3VwPjM8L3N1cD48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLk5WYXJDaGFyXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+c3RyaW5nPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+bnRleHQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5OVGV4dF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPnN0cmluZzwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD4tPC90ZD5cbiAqICAgPC90cj5cbiAqIDwvdGJvZHk+XG4gKlxuICogPHRib2R5PlxuICogICA8dHIgY2xhc3M9XCJncm91cC1oZWFkaW5nXCI+XG4gKiAgICAgPHRoIGNvbHNwYW49XCI1XCI+QmluYXJ5IFN0cmluZ3M8c3VwPjQ8L3N1cD48L3RoPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmJpbmFyeTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLkJpbmFyeV1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkJ1ZmZlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnZhcmJpbmFyeTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlZhckJpbmFyeV1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkJ1ZmZlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmltYWdlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuSW1hZ2VdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5CdWZmZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqIDwvdGJvZHk+XG4gKlxuICogPHRib2R5PlxuICogICA8dHIgY2xhc3M9XCJncm91cC1oZWFkaW5nXCI+XG4gKiAgICAgPHRoIGNvbHNwYW49XCI1XCI+T3RoZXIgRGF0YSBUeXBlczwvdGg+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+VFZQPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuVFZQXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+T2JqZWN0PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPi08L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPlVEVDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlVEVF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPkJ1ZmZlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD4tPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT51bmlxdWVpZGVudGlmaWVyPC9jb2RlPjxzdXA+NDwvc3VwPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuVW5pcXVlSWRlbnRpZmllcl1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPnN0cmluZzwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnZhcmlhbnQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5WYXJpYW50XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+YW55PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPi08L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnhtbDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlhtbF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPnN0cmluZzwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD4tPC90ZD5cbiAqICAgPC90cj5cbiAqIDwvdGJvZHk+XG4gKiA8L3RhYmxlPlxuICpcbiAqIDxvbD5cbiAqICAgPGxpPlxuICogICAgIDxoND5CaWdJbnQ8L2g0PlxuICogICAgIDxwPlxuICogICAgICAgVmFsdWVzIGFyZSByZXR1cm5lZCBhcyBhIHN0cmluZy4gVGhpcyBpcyBiZWNhdXNlIHZhbHVlcyBjYW4gZXhjZWVkIDUzIGJpdHMgb2Ygc2lnbmlmaWNhbnQgZGF0YSwgd2hpY2ggaXMgZ3JlYXRlciB0aGFuIGFcbiAqICAgICAgIEphdmFzY3JpcHQgPGNvZGU+bnVtYmVyPC9jb2RlPiB0eXBlIGNhbiByZXByZXNlbnQgYXMgYW4gaW50ZWdlci5cbiAqICAgICA8L3A+XG4gKiAgIDwvbGk+XG4gKiAgIDxsaT5cbiAqICAgICA8aDQ+TnVtZXJpY2FsLCBEZWNpbWFsPC9oND5cbiAqICAgICA8cD5cbiAqICAgICAgIEZvciBpbnB1dCBwYXJhbWV0ZXJzLCBkZWZhdWx0IHByZWNpc2lvbiBpcyAxOCBhbmQgZGVmYXVsdCBzY2FsZSBpcyAwLiBNYXhpbXVtIHN1cHBvcnRlZCBwcmVjaXNpb24gaXMgMTkuXG4gKiAgICAgPC9wPlxuICogICA8L2xpPlxuICogICA8bGk+XG4gKiAgICAgPGg0PlZhckNoYXIsIE5WYXJDaGFyPC9oND5cbiAqICAgICA8cD5cbiAqICAgICAgIDxjb2RlPnZhcmNoYXIobWF4KTwvY29kZT4gYW5kIDxjb2RlPm52YXJjaGFyKG1heCk8L2NvZGU+IGFyZSBhbHNvIHN1cHBvcnRlZC5cbiAqICAgICA8L3A+XG4gKiAgIDwvbGk+XG4gKiAgIDxsaT5cbiAqICAgICA8aDQ+VW5pcXVlSWRlbnRpZmllcjwvaDQ+XG4gKiAgICAgPHA+XG4gKiAgICAgICBWYWx1ZXMgYXJlIHJldHVybmVkIGFzIGEgMTYgYnl0ZSBoZXhhZGVjaW1hbCBzdHJpbmcuXG4gKiAgICAgPC9wPlxuICogICAgIDxwPlxuICogICAgICAgTm90ZSB0aGF0IHRoZSBvcmRlciBvZiBieXRlcyBpcyBub3QgdGhlIHNhbWUgYXMgdGhlIGNoYXJhY3RlciByZXByZXNlbnRhdGlvbi4gU2VlXG4gKiAgICAgICA8YSBocmVmPVwiaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L21zMTkwMjE1LmFzcHhcIj5Vc2luZyB1bmlxdWVpZGVudGlmaWVyIERhdGE8L2E+XG4gKiAgICAgICBmb3IgYW4gZXhhbXBsZSBvZiB0aGUgZGlmZmVyZW50IG9yZGVyaW5nIG9mIGJ5dGVzLlxuICogICAgIDwvcD5cbiAqICAgPC9saT5cbiAqIDwvb2w+XG4gKi9cbmV4cG9ydCBjb25zdCBUWVBFUyA9IHtcbiAgVGlueUludCxcbiAgQml0LFxuICBTbWFsbEludCxcbiAgSW50LFxuICBTbWFsbERhdGVUaW1lLFxuICBSZWFsLFxuICBNb25leSxcbiAgRGF0ZVRpbWUsXG4gIEZsb2F0LFxuICBEZWNpbWFsLFxuICBOdW1lcmljLFxuICBTbWFsbE1vbmV5LFxuICBCaWdJbnQsXG4gIEltYWdlLFxuICBUZXh0LFxuICBVbmlxdWVJZGVudGlmaWVyLFxuICBOVGV4dCxcbiAgVmFyQmluYXJ5LFxuICBWYXJDaGFyLFxuICBCaW5hcnksXG4gIENoYXIsXG4gIE5WYXJDaGFyLFxuICBOQ2hhcixcbiAgWG1sLFxuICBUaW1lLFxuICBEYXRlLFxuICBEYXRlVGltZTIsXG4gIERhdGVUaW1lT2Zmc2V0LFxuICBVRFQsXG4gIFRWUCxcbiAgVmFyaWFudFxufTtcblxuZXhwb3J0IGNvbnN0IHR5cGVCeU5hbWUgPSBUWVBFUztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsS0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsSUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsU0FBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksSUFBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssY0FBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sS0FBQSxHQUFBUCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU8sTUFBQSxHQUFBUixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVEsU0FBQSxHQUFBVCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVMsTUFBQSxHQUFBVixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVUsUUFBQSxHQUFBWCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVcsUUFBQSxHQUFBWixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVksV0FBQSxHQUFBYixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQWEsT0FBQSxHQUFBZCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQWMsTUFBQSxHQUFBZixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQWUsS0FBQSxHQUFBaEIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFnQixpQkFBQSxHQUFBakIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFpQixLQUFBLEdBQUFsQixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQWtCLE1BQUEsR0FBQW5CLHNCQUFBLENBQUFD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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWhUQUMsT0FBQSxDQUFBekMsSUFBQSxHQUFBQSxJQUFBO0FBaVRPLE1BQU0wQyxLQUFLLEdBQUc7RUFDbkJ2QyxPQUFPLEVBQVBBLGdCQUFPO0VBQ1BDLEdBQUcsRUFBSEEsWUFBRztFQUNIQyxRQUFRLEVBQVJBLGlCQUFRO0VBQ1JDLEdBQUcsRUFBSEEsWUFBRztFQUNIQyxhQUFhLEVBQWJBLHNCQUFhO0VBQ2JDLElBQUksRUFBSkEsYUFBSTtFQUNKQyxLQUFLLEVBQUxBLGNBQUs7RUFDTEMsUUFBUSxFQUFSQSxpQkFBUTtFQUNSQyxLQUFLLEVBQUxBLGNBQUs7RUFDTEMsT0FBTyxFQUFQQSxnQkFBTztFQUNQQyxPQUFPLEVBQVBBLGdCQUFPO0VBQ1BDLFVBQVUsRUFBVkEsbUJBQVU7RUFDVkMsTUFBTSxFQUFOQSxlQUFNO0VBQ05DLEtBQUssRUFBTEEsY0FBSztFQUNMQyxJQUFJLEVBQUpBLGFBQUk7RUFDSkMsZ0JBQWdCLEVBQWhCQSx5QkFBZ0I7RUFDaEJFLEtBQUssRUFBTEEsY0FBSztFQUNMTyxTQUFTLEVBQVRBLGtCQUFTO0VBQ1RDLE9BQU8sRUFBUEEsZ0JBQU87RUFDUEMsTUFBTSxFQUFOQSxlQUFNO0VBQ05DLElBQUksRUFBSkEsYUFBSTtFQUNKQyxRQUFRLEVBQVJBLGlCQUFRO0VBQ1JDLEtBQUssRUFBTEEsY0FBSztFQUNMQyxHQUFHLEVBQUhBLFlBQUc7RUFDSEMsSUFBSSxFQUFKQSxhQUFJO0VBQ0pDLElBQUksRUFBSkEsYUFBSTtFQUNKQyxTQUFTLEVBQVRBLGtCQUFTO0VBQ1RDLGNBQWMsRUFBZEEsdUJBQWM7RUFDZEMsR0FBRyxFQUFIQSxZQUFHO0VBQ0hDLEdBQUcsRUFBSEEsWUFBRztFQUNIQyxPQUFPLEVBQVBBO0FBQ0YsQ0FBQztBQUFDQyxPQUFBLENBQUFDLEtBQUEsR0FBQUEsS0FBQTtBQUVLLE1BQU1DLFVBQVUsR0FBR0QsS0FBSztBQUFDRCxPQUFBLENBQUFFLFVBQUEsR0FBQUEsVUFBQSJ9
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbnVsbCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3RpbnlpbnQiLCJfYml0IiwiX3NtYWxsaW50IiwiX2ludCIsIl9zbWFsbGRhdGV0aW1lIiwiX3JlYWwiLCJfbW9uZXkiLCJfZGF0ZXRpbWUiLCJfZmxvYXQiLCJfZGVjaW1hbCIsIl9udW1lcmljIiwiX3NtYWxsbW9uZXkiLCJfYmlnaW50IiwiX2ltYWdlIiwiX3RleHQiLCJfdW5pcXVlaWRlbnRpZmllciIsIl9pbnRuIiwiX250ZXh0IiwiX2JpdG4iLCJfZGVjaW1hbG4iLCJfbnVtZXJpY24iLCJfZmxvYXRuIiwiX21vbmV5biIsIl9kYXRldGltZW4iLCJfdmFyYmluYXJ5IiwiX3ZhcmNoYXIiLCJfYmluYXJ5IiwiX2NoYXIiLCJfbnZhcmNoYXIiLCJfbmNoYXIiLCJfeG1sIiwiX3RpbWUiLCJfZGF0ZSIsIl9kYXRldGltZTIiLCJfZGF0ZXRpbWVvZmZzZXQiLCJfdWR0IiwiX3R2cCIsIl9zcWxWYXJpYW50Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJUWVBFIiwiTnVsbCIsImlkIiwiVGlueUludCIsIkJpdCIsIlNtYWxsSW50IiwiSW50IiwiU21hbGxEYXRlVGltZSIsIlJlYWwiLCJNb25leSIsIkRhdGVUaW1lIiwiRmxvYXQiLCJEZWNpbWFsIiwiTnVtZXJpYyIsIlNtYWxsTW9uZXkiLCJCaWdJbnQiLCJJbWFnZSIsIlRleHQiLCJVbmlxdWVJZGVudGlmaWVyIiwiSW50TiIsIk5UZXh0IiwiQml0TiIsIkRlY2ltYWxOIiwiTnVtZXJpY04iLCJGbG9hdE4iLCJNb25leU4iLCJEYXRlVGltZU4iLCJWYXJCaW5hcnkiLCJWYXJDaGFyIiwiQmluYXJ5IiwiQ2hhciIsIk5WYXJDaGFyIiwiTkNoYXIiLCJYbWwiLCJUaW1lIiwiRGF0ZSIsIkRhdGVUaW1lMiIsIkRhdGVUaW1lT2Zmc2V0IiwiVURUIiwiVFZQIiwiVmFyaWFudCIsImV4cG9ydHMiLCJUWVBFUyIsInR5cGVCeU5hbWUiXSwic291cmNlcyI6WyIuLi9zcmMvZGF0YS10eXBlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBOdWxsIGZyb20gJy4vZGF0YS10eXBlcy9udWxsJztcbmltcG9ydCBUaW55SW50IGZyb20gJy4vZGF0YS10eXBlcy90aW55aW50JztcbmltcG9ydCBCaXQgZnJvbSAnLi9kYXRhLXR5cGVzL2JpdCc7XG5pbXBvcnQgU21hbGxJbnQgZnJvbSAnLi9kYXRhLXR5cGVzL3NtYWxsaW50JztcbmltcG9ydCBJbnQgZnJvbSAnLi9kYXRhLXR5cGVzL2ludCc7XG5pbXBvcnQgU21hbGxEYXRlVGltZSBmcm9tICcuL2RhdGEtdHlwZXMvc21hbGxkYXRldGltZSc7XG5pbXBvcnQgUmVhbCBmcm9tICcuL2RhdGEtdHlwZXMvcmVhbCc7XG5pbXBvcnQgTW9uZXkgZnJvbSAnLi9kYXRhLXR5cGVzL21vbmV5JztcbmltcG9ydCBEYXRlVGltZSBmcm9tICcuL2RhdGEtdHlwZXMvZGF0ZXRpbWUnO1xuaW1wb3J0IEZsb2F0IGZyb20gJy4vZGF0YS10eXBlcy9mbG9hdCc7XG5pbXBvcnQgRGVjaW1hbCBmcm9tICcuL2RhdGEtdHlwZXMvZGVjaW1hbCc7XG5pbXBvcnQgTnVtZXJpYyBmcm9tICcuL2RhdGEtdHlwZXMvbnVtZXJpYyc7XG5pbXBvcnQgU21hbGxNb25leSBmcm9tICcuL2RhdGEtdHlwZXMvc21hbGxtb25leSc7XG5pbXBvcnQgQmlnSW50IGZyb20gJy4vZGF0YS10eXBlcy9iaWdpbnQnO1xuaW1wb3J0IEltYWdlIGZyb20gJy4vZGF0YS10eXBlcy9pbWFnZSc7XG5pbXBvcnQgVGV4dCBmcm9tICcuL2RhdGEtdHlwZXMvdGV4dCc7XG5pbXBvcnQgVW5pcXVlSWRlbnRpZmllciBmcm9tICcuL2RhdGEtdHlwZXMvdW5pcXVlaWRlbnRpZmllcic7XG5pbXBvcnQgSW50TiBmcm9tICcuL2RhdGEtdHlwZXMvaW50bic7XG5pbXBvcnQgTlRleHQgZnJvbSAnLi9kYXRhLXR5cGVzL250ZXh0JztcbmltcG9ydCBCaXROIGZyb20gJy4vZGF0YS10eXBlcy9iaXRuJztcbmltcG9ydCBEZWNpbWFsTiBmcm9tICcuL2RhdGEtdHlwZXMvZGVjaW1hbG4nO1xuaW1wb3J0IE51bWVyaWNOIGZyb20gJy4vZGF0YS10eXBlcy9udW1lcmljbic7XG5pbXBvcnQgRmxvYXROIGZyb20gJy4vZGF0YS10eXBlcy9mbG9hdG4nO1xuaW1wb3J0IE1vbmV5TiBmcm9tICcuL2RhdGEtdHlwZXMvbW9uZXluJztcbmltcG9ydCBEYXRlVGltZU4gZnJvbSAnLi9kYXRhLXR5cGVzL2RhdGV0aW1lbic7XG5pbXBvcnQgVmFyQmluYXJ5IGZyb20gJy4vZGF0YS10eXBlcy92YXJiaW5hcnknO1xuaW1wb3J0IFZhckNoYXIgZnJvbSAnLi9kYXRhLXR5cGVzL3ZhcmNoYXInO1xuaW1wb3J0IEJpbmFyeSBmcm9tICcuL2RhdGEtdHlwZXMvYmluYXJ5JztcbmltcG9ydCBDaGFyIGZyb20gJy4vZGF0YS10eXBlcy9jaGFyJztcbmltcG9ydCBOVmFyQ2hhciBmcm9tICcuL2RhdGEtdHlwZXMvbnZhcmNoYXInO1xuaW1wb3J0IE5DaGFyIGZyb20gJy4vZGF0YS10eXBlcy9uY2hhcic7XG5pbXBvcnQgWG1sIGZyb20gJy4vZGF0YS10eXBlcy94bWwnO1xuaW1wb3J0IFRpbWUgZnJvbSAnLi9kYXRhLXR5cGVzL3RpbWUnO1xuaW1wb3J0IERhdGUgZnJvbSAnLi9kYXRhLXR5cGVzL2RhdGUnO1xuaW1wb3J0IERhdGVUaW1lMiBmcm9tICcuL2RhdGEtdHlwZXMvZGF0ZXRpbWUyJztcbmltcG9ydCBEYXRlVGltZU9mZnNldCBmcm9tICcuL2RhdGEtdHlwZXMvZGF0ZXRpbWVvZmZzZXQnO1xuaW1wb3J0IFVEVCBmcm9tICcuL2RhdGEtdHlwZXMvdWR0JztcbmltcG9ydCBUVlAgZnJvbSAnLi9kYXRhLXR5cGVzL3R2cCc7XG5pbXBvcnQgVmFyaWFudCBmcm9tICcuL2RhdGEtdHlwZXMvc3FsLXZhcmlhbnQnO1xuaW1wb3J0IHsgdHlwZSBDcnlwdG9NZXRhZGF0YSB9IGZyb20gJy4vYWx3YXlzLWVuY3J5cHRlZC90eXBlcyc7XG5cbmltcG9ydCB7IHR5cGUgSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyB9IGZyb20gJy4vY29ubmVjdGlvbic7XG5pbXBvcnQgeyBDb2xsYXRpb24gfSBmcm9tICcuL2NvbGxhdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyIHtcbiAgdHlwZTogRGF0YVR5cGU7XG4gIG5hbWU6IHN0cmluZztcblxuICB2YWx1ZTogdW5rbm93bjtcblxuICBvdXRwdXQ6IGJvb2xlYW47XG4gIGxlbmd0aD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgcHJlY2lzaW9uPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBzY2FsZT86IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBudWxsYWJsZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgZm9yY2VFbmNyeXB0PzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgY3J5cHRvTWV0YWRhdGE/OiBDcnlwdG9NZXRhZGF0YSB8IHVuZGVmaW5lZDtcbiAgZW5jcnlwdGVkVmFsPzogQnVmZmVyIHwgdW5kZWZpbmVkO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyRGF0YTxUID0gYW55PiB7XG4gIGxlbmd0aD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgc2NhbGU/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHByZWNpc2lvbj86IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBjb2xsYXRpb24/OiBDb2xsYXRpb24gfCB1bmRlZmluZWQ7XG5cbiAgdmFsdWU6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVR5cGUge1xuICBpZDogbnVtYmVyO1xuICB0eXBlOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcblxuICBkZWNsYXJhdGlvbihwYXJhbWV0ZXI6IFBhcmFtZXRlcik6IHN0cmluZztcbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXI6IFBhcmFtZXRlckRhdGEsIG9wdGlvbnM6IEludGVybmFsQ29ubmVjdGlvbk9wdGlvbnMpOiBCdWZmZXI7XG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlcjogUGFyYW1ldGVyRGF0YSwgb3B0aW9uczogSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyk6IEJ1ZmZlcjtcbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlcjogUGFyYW1ldGVyRGF0YSwgb3B0aW9uczogSW50ZXJuYWxDb25uZWN0aW9uT3B0aW9ucyk6IEdlbmVyYXRvcjxCdWZmZXIsIHZvaWQ+O1xuICB2YWxpZGF0ZSh2YWx1ZTogYW55LCBjb2xsYXRpb246IENvbGxhdGlvbiB8IHVuZGVmaW5lZCwgb3B0aW9ucz86IEludGVybmFsQ29ubmVjdGlvbk9wdGlvbnMpOiBhbnk7IC8vIFRPRE86IFJlZmFjdG9yICdhbnknIGFuZCByZXBsYWNlIHdpdGggbW9yZSBzcGVjaWZpYyB0eXBlLlxuXG4gIGhhc1RhYmxlTmFtZT86IGJvb2xlYW47XG5cbiAgcmVzb2x2ZUxlbmd0aD86IChwYXJhbWV0ZXI6IFBhcmFtZXRlcikgPT4gbnVtYmVyO1xuICByZXNvbHZlUHJlY2lzaW9uPzogKHBhcmFtZXRlcjogUGFyYW1ldGVyKSA9PiBudW1iZXI7XG4gIHJlc29sdmVTY2FsZT86IChwYXJhbWV0ZXI6IFBhcmFtZXRlcikgPT4gbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgVFlQRSA9IHtcbiAgW051bGwuaWRdOiBOdWxsLFxuICBbVGlueUludC5pZF06IFRpbnlJbnQsXG4gIFtCaXQuaWRdOiBCaXQsXG4gIFtTbWFsbEludC5pZF06IFNtYWxsSW50LFxuICBbSW50LmlkXTogSW50LFxuICBbU21hbGxEYXRlVGltZS5pZF06IFNtYWxsRGF0ZVRpbWUsXG4gIFtSZWFsLmlkXTogUmVhbCxcbiAgW01vbmV5LmlkXTogTW9uZXksXG4gIFtEYXRlVGltZS5pZF06IERhdGVUaW1lLFxuICBbRmxvYXQuaWRdOiBGbG9hdCxcbiAgW0RlY2ltYWwuaWRdOiBEZWNpbWFsLFxuICBbTnVtZXJpYy5pZF06IE51bWVyaWMsXG4gIFtTbWFsbE1vbmV5LmlkXTogU21hbGxNb25leSxcbiAgW0JpZ0ludC5pZF06IEJpZ0ludCxcbiAgW0ltYWdlLmlkXTogSW1hZ2UsXG4gIFtUZXh0LmlkXTogVGV4dCxcbiAgW1VuaXF1ZUlkZW50aWZpZXIuaWRdOiBVbmlxdWVJZGVudGlmaWVyLFxuICBbSW50Ti5pZF06IEludE4sXG4gIFtOVGV4dC5pZF06IE5UZXh0LFxuICBbQml0Ti5pZF06IEJpdE4sXG4gIFtEZWNpbWFsTi5pZF06IERlY2ltYWxOLFxuICBbTnVtZXJpY04uaWRdOiBOdW1lcmljTixcbiAgW0Zsb2F0Ti5pZF06IEZsb2F0TixcbiAgW01vbmV5Ti5pZF06IE1vbmV5TixcbiAgW0RhdGVUaW1lTi5pZF06IERhdGVUaW1lTixcbiAgW1ZhckJpbmFyeS5pZF06IFZhckJpbmFyeSxcbiAgW1ZhckNoYXIuaWRdOiBWYXJDaGFyLFxuICBbQmluYXJ5LmlkXTogQmluYXJ5LFxuICBbQ2hhci5pZF06IENoYXIsXG4gIFtOVmFyQ2hhci5pZF06IE5WYXJDaGFyLFxuICBbTkNoYXIuaWRdOiBOQ2hhcixcbiAgW1htbC5pZF06IFhtbCxcbiAgW1RpbWUuaWRdOiBUaW1lLFxuICBbRGF0ZS5pZF06IERhdGUsXG4gIFtEYXRlVGltZTIuaWRdOiBEYXRlVGltZTIsXG4gIFtEYXRlVGltZU9mZnNldC5pZF06IERhdGVUaW1lT2Zmc2V0LFxuICBbVURULmlkXTogVURULFxuICBbVFZQLmlkXTogVFZQLFxuICBbVmFyaWFudC5pZF06IFZhcmlhbnQsXG59O1xuXG4vKipcbiAqIDx0YWJsZT5cbiAqIDx0aGVhZD5cbiAqICAgPHRyPlxuICogICAgIDx0aD5UeXBlPC90aD5cbiAqICAgICA8dGg+Q29uc3RhbnQ8L3RoPlxuICogICAgIDx0aD5KYXZhU2NyaXB0PC90aD5cbiAqICAgICA8dGg+UmVzdWx0IHNldDwvdGg+XG4gKiAgICAgPHRoPlBhcmFtZXRlcjwvdGg+XG4gKiAgIDwvdHI+XG4gKiA8L3RoZWFkPlxuICpcbiAqIDx0Ym9keT5cbiAqICAgPHRyIGNsYXNzPVwiZ3JvdXAtaGVhZGluZ1wiPlxuICogICAgIDx0aCBjb2xzcGFuPVwiNVwiPkV4YWN0IG51bWVyaWNzPC90aD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5iaXQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5CaXRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5ib29sZWFuPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+dGlueWludDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlRpbnlJbnRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5udW1iZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5zbWFsbGludDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlNtYWxsSW50XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+aW50PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuSW50XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+YmlnaW50PC9jb2RlPjxzdXA+MTwvc3VwPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuQmlnSW50XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+c3RyaW5nPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+bnVtZXJpYzwvY29kZT48c3VwPjI8L3N1cD48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLk51bWVyaWNdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5udW1iZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5kZWNpbWFsPC9jb2RlPjxzdXA+Mjwvc3VwPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuRGVjaW1hbF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPm51bWJlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnNtYWxsbW9uZXk8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5TbWFsbE1vbmV5XV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+bW9uZXk8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5Nb25leV1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPm51bWJlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogPC90Ym9keT5cbiAqXG4gKiA8dGJvZHk+XG4gKiAgIDx0ciBjbGFzcz1cImdyb3VwLWhlYWRpbmdcIj5cbiAqICAgICA8dGggY29sc3Bhbj1cIjVcIj5BcHByb3hpbWF0ZSBudW1lcmljczwvdGg+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+ZmxvYXQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5GbG9hdF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPm51bWJlcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnJlYWw8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5SZWFsXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+bnVtYmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiA8L3Rib2R5PlxuICpcbiAqIDx0Ym9keT5cbiAqICAgPHRyIGNsYXNzPVwiZ3JvdXAtaGVhZGluZ1wiPlxuICogICAgIDx0aCBjb2xzcGFuPVwiNFwiPkRhdGUgYW5kIFRpbWU8L3RoPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnNtYWxsZGF0ZXRpbWU8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5TbWFsbERhdGVUaW1lXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+RGF0ZTwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmRhdGV0aW1lPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuRGF0ZVRpbWVdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5EYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+ZGF0ZXRpbWUyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuRGF0ZVRpbWUyXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+RGF0ZTwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPmRhdGV0aW1lb2Zmc2V0PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuRGF0ZVRpbWVPZmZzZXRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5EYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+dGltZTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlRpbWVdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5EYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+ZGF0ZTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLkRhdGVdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5EYXRlPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiA8L3Rib2R5PlxuICpcbiAqIDx0Ym9keT5cbiAqICAgPHRyIGNsYXNzPVwiZ3JvdXAtaGVhZGluZ1wiPlxuICogICAgIDx0aCBjb2xzcGFuPVwiNFwiPkNoYXJhY3RlciBTdHJpbmdzPC90aD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5jaGFyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuQ2hhcl1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPnN0cmluZzwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPnZhcmNoYXI8L2NvZGU+PHN1cD4zPC9zdXA+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5WYXJDaGFyXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+c3RyaW5nPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+dGV4dDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlRleHRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqIDwvdGJvZHk+XG4gKlxuICogPHRib2R5PlxuICogICA8dHIgY2xhc3M9XCJncm91cC1oZWFkaW5nXCI+XG4gKiAgICAgPHRoIGNvbHNwYW49XCI0XCI+VW5pY29kZSBTdHJpbmdzPC90aD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5uY2hhcjwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLk5DaGFyXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+c3RyaW5nPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+bnZhcmNoYXI8L2NvZGU+PHN1cD4zPC9zdXA+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5OVmFyQ2hhcl1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPnN0cmluZzwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPm50ZXh0PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuTlRleHRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+LTwvdGQ+XG4gKiAgIDwvdHI+XG4gKiA8L3Rib2R5PlxuICpcbiAqIDx0Ym9keT5cbiAqICAgPHRyIGNsYXNzPVwiZ3JvdXAtaGVhZGluZ1wiPlxuICogICAgIDx0aCBjb2xzcGFuPVwiNVwiPkJpbmFyeSBTdHJpbmdzPHN1cD40PC9zdXA+PC90aD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5iaW5hcnk8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5CaW5hcnldXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5CdWZmZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT52YXJiaW5hcnk8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5WYXJCaW5hcnldXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5CdWZmZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5pbWFnZTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLkltYWdlXV08L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+QnVmZmVyPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgICAgPHRkPuKckzwvdGQ+XG4gKiAgIDwvdHI+XG4gKiA8L3Rib2R5PlxuICpcbiAqIDx0Ym9keT5cbiAqICAgPHRyIGNsYXNzPVwiZ3JvdXAtaGVhZGluZ1wiPlxuICogICAgIDx0aCBjb2xzcGFuPVwiNVwiPk90aGVyIERhdGEgVHlwZXM8L3RoPlxuICogICA8L3RyPlxuICogICA8dHI+XG4gKiAgICAgPHRkPjxjb2RlPlRWUDwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlRWUF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPk9iamVjdDwvY29kZT48L3RkPlxuICogICAgIDx0ZD4tPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT5VRFQ8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5VRFRdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5CdWZmZXI8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+LTwvdGQ+XG4gKiAgIDwvdHI+XG4gKiAgIDx0cj5cbiAqICAgICA8dGQ+PGNvZGU+dW5pcXVlaWRlbnRpZmllcjwvY29kZT48c3VwPjQ8L3N1cD48L3RkPlxuICogICAgIDx0ZD48Y29kZT5bW1RZUEVTLlVuaXF1ZUlkZW50aWZpZXJdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT52YXJpYW50PC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPltbVFlQRVMuVmFyaWFudF1dPC9jb2RlPjwvdGQ+XG4gKiAgICAgPHRkPjxjb2RlPmFueTwvY29kZT48L3RkPlxuICogICAgIDx0ZD7inJM8L3RkPlxuICogICAgIDx0ZD4tPC90ZD5cbiAqICAgPC90cj5cbiAqICAgPHRyPlxuICogICAgIDx0ZD48Y29kZT54bWw8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+PGNvZGU+W1tUWVBFUy5YbWxdXTwvY29kZT48L3RkPlxuICogICAgIDx0ZD48Y29kZT5zdHJpbmc8L2NvZGU+PC90ZD5cbiAqICAgICA8dGQ+4pyTPC90ZD5cbiAqICAgICA8dGQ+LTwvdGQ+XG4gKiAgIDwvdHI+XG4gKiA8L3Rib2R5PlxuICogPC90YWJsZT5cbiAqXG4gKiA8b2w+XG4gKiAgIDxsaT5cbiAqICAgICA8aDQ+QmlnSW50PC9oND5cbiAqICAgICA8cD5cbiAqICAgICAgIFZhbHVlcyBhcmUgcmV0dXJuZWQgYXMgYSBzdHJpbmcuIFRoaXMgaXMgYmVjYXVzZSB2YWx1ZXMgY2FuIGV4Y2VlZCA1MyBiaXRzIG9mIHNpZ25pZmljYW50IGRhdGEsIHdoaWNoIGlzIGdyZWF0ZXIgdGhhbiBhXG4gKiAgICAgICBKYXZhc2NyaXB0IDxjb2RlPm51bWJlcjwvY29kZT4gdHlwZSBjYW4gcmVwcmVzZW50IGFzIGFuIGludGVnZXIuXG4gKiAgICAgPC9wPlxuICogICA8L2xpPlxuICogICA8bGk+XG4gKiAgICAgPGg0Pk51bWVyaWNhbCwgRGVjaW1hbDwvaDQ+XG4gKiAgICAgPHA+XG4gKiAgICAgICBGb3IgaW5wdXQgcGFyYW1ldGVycywgZGVmYXVsdCBwcmVjaXNpb24gaXMgMTggYW5kIGRlZmF1bHQgc2NhbGUgaXMgMC4gTWF4aW11bSBzdXBwb3J0ZWQgcHJlY2lzaW9uIGlzIDE5LlxuICogICAgIDwvcD5cbiAqICAgPC9saT5cbiAqICAgPGxpPlxuICogICAgIDxoND5WYXJDaGFyLCBOVmFyQ2hhcjwvaDQ+XG4gKiAgICAgPHA+XG4gKiAgICAgICA8Y29kZT52YXJjaGFyKG1heCk8L2NvZGU+IGFuZCA8Y29kZT5udmFyY2hhcihtYXgpPC9jb2RlPiBhcmUgYWxzbyBzdXBwb3J0ZWQuXG4gKiAgICAgPC9wPlxuICogICA8L2xpPlxuICogICA8bGk+XG4gKiAgICAgPGg0PlVuaXF1ZUlkZW50aWZpZXI8L2g0PlxuICogICAgIDxwPlxuICogICAgICAgVmFsdWVzIGFyZSByZXR1cm5lZCBhcyBhIDE2IGJ5dGUgaGV4YWRlY2ltYWwgc3RyaW5nLlxuICogICAgIDwvcD5cbiAqICAgICA8cD5cbiAqICAgICAgIE5vdGUgdGhhdCB0aGUgb3JkZXIgb2YgYnl0ZXMgaXMgbm90IHRoZSBzYW1lIGFzIHRoZSBjaGFyYWN0ZXIgcmVwcmVzZW50YXRpb24uIFNlZVxuICogICAgICAgPGEgaHJlZj1cImh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9tczE5MDIxNS5hc3B4XCI+VXNpbmcgdW5pcXVlaWRlbnRpZmllciBEYXRhPC9hPlxuICogICAgICAgZm9yIGFuIGV4YW1wbGUgb2YgdGhlIGRpZmZlcmVudCBvcmRlcmluZyBvZiBieXRlcy5cbiAqICAgICA8L3A+XG4gKiAgIDwvbGk+XG4gKiA8L29sPlxuICovXG5leHBvcnQgY29uc3QgVFlQRVMgPSB7XG4gIFRpbnlJbnQsXG4gIEJpdCxcbiAgU21hbGxJbnQsXG4gIEludCxcbiAgU21hbGxEYXRlVGltZSxcbiAgUmVhbCxcbiAgTW9uZXksXG4gIERhdGVUaW1lLFxuICBGbG9hdCxcbiAgRGVjaW1hbCxcbiAgTnVtZXJpYyxcbiAgU21hbGxNb25leSxcbiAgQmlnSW50LFxuICBJbWFnZSxcbiAgVGV4dCxcbiAgVW5pcXVlSWRlbnRpZmllcixcbiAgTlRleHQsXG4gIFZhckJpbmFyeSxcbiAgVmFyQ2hhcixcbiAgQmluYXJ5LFxuICBDaGFyLFxuICBOVmFyQ2hhcixcbiAgTkNoYXIsXG4gIFhtbCxcbiAgVGltZSxcbiAgRGF0ZSxcbiAgRGF0ZVRpbWUyLFxuICBEYXRlVGltZU9mZnNldCxcbiAgVURULFxuICBUVlAsXG4gIFZhcmlhbnRcbn07XG5cbmV4cG9ydCBjb25zdCB0eXBlQnlOYW1lID0gVFlQRVM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFFBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLElBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFNBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFJLElBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLGNBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLEtBQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFPLE1BQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFRLFNBQUEsR0FBQVQsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFTLE1BQUEsR0FBQVYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFVLFFBQUEsR0FBQVgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFXLFFBQUEsR0FBQVosc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFZLFdBQUEsR0FBQWIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFhLE9BQUEsR0FBQWQsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFjLE1BQUEsR0FBQWYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFlLEtBQUEsR0FBQWhCLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBZ0IsaUJBQUEsR0FBQWpCLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBaUIsS0FBQSxHQUFBbEIsc0JBQUEsQ0FBQUMsT0FB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Q0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFoVEFDLE9BQUEsQ0FBQXpDLElBQUEsR0FBQUEsSUFBQTtBQWlUTyxNQUFNMEMsS0FBSyxHQUFHO0VBQ25CdkMsT0FBTyxFQUFQQSxnQkFBTztFQUNQQyxHQUFHLEVBQUhBLFlBQUc7RUFDSEMsUUFBUSxFQUFSQSxpQkFBUTtFQUNSQyxHQUFHLEVBQUhBLFlBQUc7RUFDSEMsYUFBYSxFQUFiQSxzQkFBYTtFQUNiQyxJQUFJLEVBQUpBLGFBQUk7RUFDSkMsS0FBSyxFQUFMQSxjQUFLO0VBQ0xDLFFBQVEsRUFBUkEsaUJBQVE7RUFDUkMsS0FBSyxFQUFMQSxjQUFLO0VBQ0xDLE9BQU8sRUFBUEEsZ0JBQU87RUFDUEMsT0FBTyxFQUFQQSxnQkFBTztFQUNQQyxVQUFVLEVBQVZBLG1CQUFVO0VBQ1ZDLE1BQU0sRUFBTkEsZUFBTTtFQUNOQyxLQUFLLEVBQUxBLGNBQUs7RUFDTEMsSUFBSSxFQUFKQSxhQUFJO0VBQ0pDLGdCQUFnQixFQUFoQkEseUJBQWdCO0VBQ2hCRSxLQUFLLEVBQUxBLGNBQUs7RUFDTE8sU0FBUyxFQUFUQSxrQkFBUztFQUNUQyxPQUFPLEVBQVBBLGdCQUFPO0VBQ1BDLE1BQU0sRUFBTkEsZUFBTTtFQUNOQyxJQUFJLEVBQUpBLGFBQUk7RUFDSkMsUUFBUSxFQUFSQSxpQkFBUTtFQUNSQyxLQUFLLEVBQUxBLGNBQUs7RUFDTEMsR0FBRyxFQUFIQSxZQUFHO0VBQ0hDLElBQUksRUFBSkEsYUFBSTtFQUNKQyxJQUFJLEVBQUpBLGFBQUk7RUFDSkMsU0FBUyxFQUFUQSxrQkFBUztFQUNUQyxjQUFjLEVBQWRBLHVCQUFjO0VBQ2RDLEdBQUcsRUFBSEEsWUFBRztFQUNIQyxHQUFHLEVBQUhBLFlBQUc7RUFDSEMsT0FBTyxFQUFQQTtBQUNGLENBQUM7QUFBQ0MsT0FBQSxDQUFBQyxLQUFBLEdBQUFBLEtBQUE7QUFFSyxNQUFNQyxVQUFVLEdBQUdELEtBQUs7QUFBQ0QsT0FBQSxDQUFBRSxVQUFBLEdBQUFBLFVBQUEifQ==

@@ -13,2 +13,4 @@ "use strict";

const DATA_LENGTH = Buffer.from([0x03]);
const MIN_DATE = new globalDate('January 1, 0001');
const MAX_DATE = new globalDate('December 31, 9999');
const Date = {

@@ -48,3 +50,3 @@ id: 0x28,

// TODO: value is technically of type 'unknown'.
validate: function (value) {
validate: function (value, collation, options) {
if (value == null) {

@@ -56,2 +58,12 @@ return null;

}
value = value;
// TODO: check date range: January 1, 0001, through December 31, 9999
// : time range: 00:00:00 through 23:59:59.997
if (options && options.useUTC) {
value = new globalDate(value.toUTCString());
}
if (value < MIN_DATE || value > MAX_DATE) {
throw new TypeError('Out of range.');
}
if (isNaN(value)) {

@@ -66,2 +78,2 @@ throw new TypeError('Invalid date.');

module.exports = Date;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJnbG9iYWxEYXRlIiwiZ2xvYmFsIiwiRGF0ZSIsIkVQT0NIX0RBVEUiLCJMb2NhbERhdGUiLCJvZlllYXJEYXkiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJEQVRBX0xFTkdUSCIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsInBhcmFtZXRlciIsIm9wdGlvbnMiLCJ2YWx1ZSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImRhdGUiLCJ1c2VVVEMiLCJvZiIsImdldFVUQ0Z1bGxZZWFyIiwiZ2V0VVRDTW9udGgiLCJnZXRVVENEYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJkYXlzIiwidW50aWwiLCJDaHJvbm9Vbml0IiwiREFZUyIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVVSW50TEUiLCJ2YWxpZGF0ZSIsInBhcnNlIiwiaXNOYU4iLCJUeXBlRXJyb3IiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJkZWZhdWx0IiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvZGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcbmltcG9ydCB7IENocm9ub1VuaXQsIExvY2FsRGF0ZSB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuXG4vLyBnbG9iYWxEYXRlIGlzIHRvIGJlIHVzZWQgZm9yIEphdmFTY3JpcHQncyBnbG9iYWwgJ0RhdGUnIG9iamVjdCB0byBhdm9pZCBuYW1lIGNsYXNoaW5nIHdpdGggdGhlICdEYXRlJyBjb25zdGFudCBiZWxvd1xuY29uc3QgZ2xvYmFsRGF0ZSA9IGdsb2JhbC5EYXRlO1xuY29uc3QgRVBPQ0hfREFURSA9IExvY2FsRGF0ZS5vZlllYXJEYXkoMSwgMSk7XG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAwXSk7XG5jb25zdCBEQVRBX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAzXSk7XG5cbmNvbnN0IERhdGU6IERhdGFUeXBlID0ge1xuICBpZDogMHgyOCxcbiAgdHlwZTogJ0RBVEVOJyxcbiAgbmFtZTogJ0RhdGUnLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gJ2RhdGUnO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm86IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbShbdGhpcy5pZF0pO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIE5VTExfTEVOR1RIO1xuICAgIH1cblxuICAgIHJldHVybiBEQVRBX0xFTkdUSDtcbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBhbnk7IC8vIFRlbXBvcmFyeSBzb2x1dGlvbi4gUmVtb3ZlICdhbnknIGxhdGVyLlxuXG4gICAgbGV0IGRhdGU7XG4gICAgaWYgKG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldFVUQ0Z1bGxZZWFyKCksIHZhbHVlLmdldFVUQ01vbnRoKCkgKyAxLCB2YWx1ZS5nZXRVVENEYXRlKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCkgKyAxLCB2YWx1ZS5nZXREYXRlKCkpO1xuICAgIH1cblxuICAgIGNvbnN0IGRheXMgPSBFUE9DSF9EQVRFLnVudGlsKGRhdGUsIENocm9ub1VuaXQuREFZUyk7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDMpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnRMRShkYXlzLCAwLCAzKTtcbiAgICB5aWVsZCBidWZmZXI7XG4gIH0sXG5cbiAgLy8gVE9ETzogdmFsdWUgaXMgdGVjaG5pY2FsbHkgb2YgdHlwZSAndW5rbm93bicuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IG51bGwgfCBEYXRlIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCEodmFsdWUgaW5zdGFuY2VvZiBnbG9iYWxEYXRlKSkge1xuICAgICAgdmFsdWUgPSBuZXcgZ2xvYmFsRGF0ZShnbG9iYWxEYXRlLnBhcnNlKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBkYXRlLicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgRGF0ZTtcbm1vZHVsZS5leHBvcnRzID0gRGF0ZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsS0FBQSxHQUFBQyxPQUFBO0FBRUE7QUFDQSxNQUFNQyxVQUFVLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSTtBQUM5QixNQUFNQyxVQUFVLEdBQUdDLGVBQVMsQ0FBQ0MsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDNUMsTUFBTUMsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLE1BQU1DLFdBQVcsR0FBR0YsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV2QyxNQUFNTixJQUFjLEdBQUc7RUFDckJRLEVBQUUsRUFBRSxJQUFJO0VBQ1JD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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJnbG9iYWxEYXRlIiwiZ2xvYmFsIiwiRGF0ZSIsIkVQT0NIX0RBVEUiLCJMb2NhbERhdGUiLCJvZlllYXJEYXkiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJEQVRBX0xFTkdUSCIsIk1JTl9EQVRFIiwiTUFYX0RBVEUiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJwYXJhbWV0ZXIiLCJvcHRpb25zIiwidmFsdWUiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJkYXRlIiwidXNlVVRDIiwib2YiLCJnZXRVVENGdWxsWWVhciIsImdldFVUQ01vbnRoIiwiZ2V0VVRDRGF0ZSIsImdldEZ1bGxZZWFyIiwiZ2V0TW9udGgiLCJnZXREYXRlIiwiZGF5cyIsInVudGlsIiwiQ2hyb25vVW5pdCIsIkRBWVMiLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlVUludExFIiwidmFsaWRhdGUiLCJjb2xsYXRpb24iLCJwYXJzZSIsInRvVVRDU3RyaW5nIiwiVHlwZUVycm9yIiwiaXNOYU4iLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJkZWZhdWx0IiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvZGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcbmltcG9ydCB7IENocm9ub1VuaXQsIExvY2FsRGF0ZSB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuXG4vLyBnbG9iYWxEYXRlIGlzIHRvIGJlIHVzZWQgZm9yIEphdmFTY3JpcHQncyBnbG9iYWwgJ0RhdGUnIG9iamVjdCB0byBhdm9pZCBuYW1lIGNsYXNoaW5nIHdpdGggdGhlICdEYXRlJyBjb25zdGFudCBiZWxvd1xuY29uc3QgZ2xvYmFsRGF0ZSA9IGdsb2JhbC5EYXRlO1xuY29uc3QgRVBPQ0hfREFURSA9IExvY2FsRGF0ZS5vZlllYXJEYXkoMSwgMSk7XG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAwXSk7XG5jb25zdCBEQVRBX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAzXSk7XG5cbmNvbnN0IE1JTl9EQVRFID0gbmV3IGdsb2JhbERhdGUoJ0phbnVhcnkgMSwgMDAwMScpO1xuY29uc3QgTUFYX0RBVEUgPSBuZXcgZ2xvYmFsRGF0ZSgnRGVjZW1iZXIgMzEsIDk5OTknKTtcblxuY29uc3QgRGF0ZTogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDI4LFxuICB0eXBlOiAnREFURU4nLFxuICBuYW1lOiAnRGF0ZScsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAnZGF0ZSc7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbzogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFt0aGlzLmlkXSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgcmV0dXJuIERBVEFfTEVOR1RIO1xuICB9LFxuXG4gICogZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIGFueTsgLy8gVGVtcG9yYXJ5IHNvbHV0aW9uLiBSZW1vdmUgJ2FueScgbGF0ZXIuXG5cbiAgICBsZXQgZGF0ZTogTG9jYWxEYXRlO1xuICAgIGlmIChvcHRpb25zLnVzZVVUQykge1xuICAgICAgZGF0ZSA9IExvY2FsRGF0ZS5vZih2YWx1ZS5nZXRVVENGdWxsWWVhcigpLCB2YWx1ZS5nZXRVVENNb250aCgpICsgMSwgdmFsdWUuZ2V0VVRDRGF0ZSgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGF0ZSA9IExvY2FsRGF0ZS5vZih2YWx1ZS5nZXRGdWxsWWVhcigpLCB2YWx1ZS5nZXRNb250aCgpICsgMSwgdmFsdWUuZ2V0RGF0ZSgpKTtcbiAgICB9XG5cbiAgICBjb25zdCBkYXlzID0gRVBPQ0hfREFURS51bnRpbChkYXRlLCBDaHJvbm9Vbml0LkRBWVMpO1xuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygzKTtcbiAgICBidWZmZXIud3JpdGVVSW50TEUoZGF5cywgMCwgMyk7XG4gICAgeWllbGQgYnVmZmVyO1xuICB9LFxuXG4gIC8vIFRPRE86IHZhbHVlIGlzIHRlY2huaWNhbGx5IG9mIHR5cGUgJ3Vua25vd24nLlxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWUsIGNvbGxhdGlvbiwgb3B0aW9ucyk6IG51bGwgfCBEYXRlIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCEodmFsdWUgaW5zdGFuY2VvZiBnbG9iYWxEYXRlKSkge1xuICAgICAgdmFsdWUgPSBuZXcgZ2xvYmFsRGF0ZShnbG9iYWxEYXRlLnBhcnNlKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgdmFsdWUgPSB2YWx1ZSBhcyBEYXRlO1xuXG4gICAgLy8gVE9ETzogY2hlY2sgZGF0ZSByYW5nZTogSmFudWFyeSAxLCAwMDAxLCB0aHJvdWdoIERlY2VtYmVyIDMxLCA5OTk5XG4gICAgLy8gICAgOiB0aW1lIHJhbmdlOiAwMDowMDowMCB0aHJvdWdoIDIzOjU5OjU5Ljk5N1xuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBnbG9iYWxEYXRlKHZhbHVlLnRvVVRDU3RyaW5nKCkpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IE1JTl9EQVRFIHx8IHZhbHVlID4gTUFYX0RBVEUpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ091dCBvZiByYW5nZS4nKTtcbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIGRhdGUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEYXRlO1xubW9kdWxlLmV4cG9ydHMgPSBEYXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxLQUFBLEdBQUFDLE9BQUE7QUFFQTtBQUNBLE1BQU1DLFVBQVUsR0FBR0MsTUFBTSxDQUFDQyxJQUFJO0FBQzlCLE1BQU1DLFVBQVUsR0FBR0MsZUFBUyxDQUFDQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM1QyxNQUFNQyxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdkMsTUFBTUMsV0FBVyxHQUFHRixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZDLE1BQU1FLFFBQVEsR0FBRyxJQUFJVixVQUFVLENBQUMsaUJBQWlCLENBQUM7QUFDbEQsTUFBTVcsUUFBUSxHQUFHLElBQUlYLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQztBQUVwRCxNQUFNRSxJQUFjLEdBQUc7RUFDckJVLEVBQUUsRUFBRSxJQUFJO0VBQ1JDLElBQUksRUFBRSxPQUFPO0VBQ2JDLElBQUksRUFBRSxNQUFNO0VBRVpDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FBTyxNQUFNO0VBQ2YsQ0FBQztFQUVEQyxnQkFBZ0IsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDM0IsT0FBT1QsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUNJLEVBQUUsQ0FBQyxDQUFDO0VBQy9CLENBQUM7RUFFREssdUJBQXVCQSxDQUFDQyxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUMx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

@@ -13,2 +13,4 @@ "use strict";

const DATA_LENGTH = Buffer.from([0x08]);
const MIN_DATE = new Date('January 1, 1753');
const MAX_DATE = new Date('December 31, 9999');
const DateTime = {

@@ -69,3 +71,3 @@ id: 0x3D,

// TODO: type 'any' needs to be revisited.
validate: function (value) {
validate: function (value, collation, options) {
if (value == null) {

@@ -77,2 +79,12 @@ return null;

}
value = value;
// TODO: check date range: January 1, 1753, through December 31, 9999
// : time range: 00:00:00 through 23:59:59.997
if (options && options.useUTC) {
value = new Date(value.toUTCString());
}
if (value < MIN_DATE || value > MAX_DATE) {
throw new TypeError('Out of range.');
}
if (isNaN(value)) {

@@ -87,2 +99,2 @@ throw new TypeError('Invalid date.');

module.exports = DateTime;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZXRpbWVuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29yZSIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiRVBPQ0hfREFURSIsIkxvY2FsRGF0ZSIsIm9mWWVhckRheSIsIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIkRBVEFfTEVOR1RIIiwiRGF0ZVRpbWUiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiRGF0ZVRpbWVOIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJwYXJhbWV0ZXIiLCJvcHRpb25zIiwidmFsdWUiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJkYXRlIiwidXNlVVRDIiwib2YiLCJnZXRVVENGdWxsWWVhciIsImdldFVUQ01vbnRoIiwiZ2V0VVRDRGF0ZSIsImdldEZ1bGxZZWFyIiwiZ2V0TW9udGgiLCJnZXREYXRlIiwiZGF5cyIsInVudGlsIiwiQ2hyb25vVW5pdCIsIkRBWVMiLCJtaWxsaXNlY29uZHMiLCJ0aHJlZUh1bmRyZWR0aHNPZlNlY29uZCIsInNlY29uZHMiLCJnZXRVVENIb3VycyIsImdldFVUQ01pbnV0ZXMiLCJnZXRVVENTZWNvbmRzIiwiZ2V0VVRDTWlsbGlzZWNvbmRzIiwiZ2V0SG91cnMiLCJnZXRNaW51dGVzIiwiZ2V0U2Vjb25kcyIsImdldE1pbGxpc2Vjb25kcyIsIk1hdGgiLCJyb3VuZCIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVJbnQzMkxFIiwid3JpdGVVSW50MzJMRSIsInZhbGlkYXRlIiwiRGF0ZSIsInBhcnNlIiwiaXNOYU4iLCJUeXBlRXJyb3IiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YS10eXBlcy9kYXRldGltZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcbmltcG9ydCBEYXRlVGltZU4gZnJvbSAnLi9kYXRldGltZW4nO1xuaW1wb3J0IHsgQ2hyb25vVW5pdCwgTG9jYWxEYXRlIH0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5cbmNvbnN0IEVQT0NIX0RBVEUgPSBMb2NhbERhdGUub2ZZZWFyRGF5KDE5MDAsIDEpO1xuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuY29uc3QgREFUQV9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwOF0pO1xuXG5jb25zdCBEYXRlVGltZTogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDNELFxuICB0eXBlOiAnREFURVRJTUUnLFxuICBuYW1lOiAnRGF0ZVRpbWUnLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gJ2RhdGV0aW1lJztcbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKCkge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbShbRGF0ZVRpbWVOLmlkLCAweDA4XSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgcmV0dXJuIERBVEFfTEVOR1RIO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyRGF0YTogZnVuY3Rpb24qKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIGFueTsgLy8gVGVtcG9yYXJ5IHNvbHV0aW9uLiBSZW1vdmUgJ2FueScgbGF0ZXIuXG5cbiAgICBsZXQgZGF0ZTtcbiAgICBpZiAob3B0aW9ucy51c2VVVEMpIHtcbiAgICAgIGRhdGUgPSBMb2NhbERhdGUub2YodmFsdWUuZ2V0VVRDRnVsbFllYXIoKSwgdmFsdWUuZ2V0VVRDTW9udGgoKSArIDEsIHZhbHVlLmdldFVUQ0RhdGUoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRhdGUgPSBMb2NhbERhdGUub2YodmFsdWUuZ2V0RnVsbFllYXIoKSwgdmFsdWUuZ2V0TW9udGgoKSArIDEsIHZhbHVlLmdldERhdGUoKSk7XG4gICAgfVxuXG4gICAgbGV0IGRheXMgPSBFUE9DSF9EQVRFLnVudGlsKGRhdGUsIENocm9ub1VuaXQuREFZUyk7XG5cbiAgICBsZXQgbWlsbGlzZWNvbmRzLCB0aHJlZUh1bmRyZWR0aHNPZlNlY29uZDtcbiAgICBpZiAob3B0aW9ucy51c2VVVEMpIHtcbiAgICAgIGxldCBzZWNvbmRzID0gdmFsdWUuZ2V0VVRDSG91cnMoKSAqIDYwICogNjA7XG4gICAgICBzZWNvbmRzICs9IHZhbHVlLmdldFVUQ01pbnV0ZXMoKSAqIDYwO1xuICAgICAgc2Vjb25kcyArPSB2YWx1ZS5nZXRVVENTZWNvbmRzKCk7XG4gICAgICBtaWxsaXNlY29uZHMgPSAoc2Vjb25kcyAqIDEwMDApICsgdmFsdWUuZ2V0VVRDTWlsbGlzZWNvbmRzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBzZWNvbmRzID0gdmFsdWUuZ2V0SG91cnMoKSAqIDYwICogNjA7XG4gICAgICBzZWNvbmRzICs9IHZhbHVlLmdldE1pbnV0ZXMoKSAqIDYwO1xuICAgICAgc2Vjb25kcyArPSB2YWx1ZS5nZXRTZWNvbmRzKCk7XG4gICAgICBtaWxsaXNlY29uZHMgPSAoc2Vjb25kcyAqIDEwMDApICsgdmFsdWUuZ2V0TWlsbGlzZWNvbmRzKCk7XG4gICAgfVxuXG4gICAgdGhyZWVIdW5kcmVkdGhzT2ZTZWNvbmQgPSBtaWxsaXNlY29uZHMgLyAoMyArICgxIC8gMykpO1xuICAgIHRocmVlSHVuZHJlZHRoc09mU2Vjb25kID0gTWF0aC5yb3VuZCh0aHJlZUh1bmRyZWR0aHNPZlNlY29uZCk7XG5cbiAgICAvLyAyNTkyMDAwMCBlcXVhbHMgb25lIGRheVxuICAgIGlmICh0aHJlZUh1bmRyZWR0aHNPZlNlY29uZCA9PT0gMjU5MjAwMDApIHtcbiAgICAgIGRheXMgKz0gMTtcbiAgICAgIHRocmVlSHVuZHJlZHRoc09mU2Vjb25kID0gMDtcbiAgICB9XG5cbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoOCk7XG4gICAgYnVmZmVyLndyaXRlSW50MzJMRShkYXlzLCAwKTtcbiAgICBidWZmZXIud3JpdGVVSW50MzJMRSh0aHJlZUh1bmRyZWR0aHNPZlNlY29uZCwgNCk7XG4gICAgeWllbGQgYnVmZmVyO1xuICB9LFxuXG4gIC8vIFRPRE86IHR5cGUgJ2FueScgbmVlZHMgdG8gYmUgcmV2aXNpdGVkLlxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWUpOiBudWxsIHwgbnVtYmVyIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCEodmFsdWUgaW5zdGFuY2VvZiBEYXRlKSkge1xuICAgICAgdmFsdWUgPSBuZXcgRGF0ZShEYXRlLnBhcnNlKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBkYXRlLicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgRGF0ZVRpbWU7XG5tb2R1bGUuZXhwb3J0cyA9IERhdGVUaW1lO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxVQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxLQUFBLEdBQUFELE9BQUE7QUFBc0QsU0FBQUQsdUJBQUFHLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFdEQsTUFBTUcsVUFBVSxHQUFHQyxlQUFTLENBQUNDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxD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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZXRpbWVuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29yZSIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiRVBPQ0hfREFURSIsIkxvY2FsRGF0ZSIsIm9mWWVhckRheSIsIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIkRBVEFfTEVOR1RIIiwiTUlOX0RBVEUiLCJEYXRlIiwiTUFYX0RBVEUiLCJEYXRlVGltZSIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsImdlbmVyYXRlVHlwZUluZm8iLCJEYXRlVGltZU4iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsInBhcmFtZXRlciIsIm9wdGlvbnMiLCJ2YWx1ZSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImRhdGUiLCJ1c2VVVEMiLCJvZiIsImdldFVUQ0Z1bGxZZWFyIiwiZ2V0VVRDTW9udGgiLCJnZXRVVENEYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJkYXlzIiwidW50aWwiLCJDaHJvbm9Vbml0IiwiREFZUyIsIm1pbGxpc2Vjb25kcyIsInRocmVlSHVuZHJlZHRoc09mU2Vjb25kIiwic2Vjb25kcyIsImdldFVUQ0hvdXJzIiwiZ2V0VVRDTWludXRlcyIsImdldFVUQ1NlY29uZHMiLCJnZXRVVENNaWxsaXNlY29uZHMiLCJnZXRIb3VycyIsImdldE1pbnV0ZXMiLCJnZXRTZWNvbmRzIiwiZ2V0TWlsbGlzZWNvbmRzIiwiTWF0aCIsInJvdW5kIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZUludDMyTEUiLCJ3cml0ZVVJbnQzMkxFIiwidmFsaWRhdGUiLCJjb2xsYXRpb24iLCJwYXJzZSIsInRvVVRDU3RyaW5nIiwiVHlwZUVycm9yIiwiaXNOYU4iLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YS10eXBlcy9kYXRldGltZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcbmltcG9ydCBEYXRlVGltZU4gZnJvbSAnLi9kYXRldGltZW4nO1xuaW1wb3J0IHsgQ2hyb25vVW5pdCwgTG9jYWxEYXRlIH0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5cbmNvbnN0IEVQT0NIX0RBVEUgPSBMb2NhbERhdGUub2ZZZWFyRGF5KDE5MDAsIDEpO1xuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuY29uc3QgREFUQV9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwOF0pO1xuXG5jb25zdCBNSU5fREFURSA9IG5ldyBEYXRlKCdKYW51YXJ5IDEsIDE3NTMnKTtcbmNvbnN0IE1BWF9EQVRFID0gbmV3IERhdGUoJ0RlY2VtYmVyIDMxLCA5OTk5Jyk7XG5cbmNvbnN0IERhdGVUaW1lOiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4M0QsXG4gIHR5cGU6ICdEQVRFVElNRScsXG4gIG5hbWU6ICdEYXRlVGltZScsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAnZGF0ZXRpbWUnO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFtEYXRlVGltZU4uaWQsIDB4MDhdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICByZXR1cm4gREFUQV9MRU5HVEg7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhOiBmdW5jdGlvbioocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgYW55OyAvLyBUZW1wb3Jhcnkgc29sdXRpb24uIFJlbW92ZSAnYW55JyBsYXRlci5cblxuICAgIGxldCBkYXRlOiBMb2NhbERhdGU7XG4gICAgaWYgKG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldFVUQ0Z1bGxZZWFyKCksIHZhbHVlLmdldFVUQ01vbnRoKCkgKyAxLCB2YWx1ZS5nZXRVVENEYXRlKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCkgKyAxLCB2YWx1ZS5nZXREYXRlKCkpO1xuICAgIH1cblxuICAgIGxldCBkYXlzID0gRVBPQ0hfREFURS51bnRpbChkYXRlLCBDaHJvbm9Vbml0LkRBWVMpO1xuXG4gICAgbGV0IG1pbGxpc2Vjb25kcywgdGhyZWVIdW5kcmVkdGhzT2ZTZWNvbmQ7XG4gICAgaWYgKG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICBsZXQgc2Vjb25kcyA9IHZhbHVlLmdldFVUQ0hvdXJzKCkgKiA2MCAqIDYwO1xuICAgICAgc2Vjb25kcyArPSB2YWx1ZS5nZXRVVENNaW51dGVzKCkgKiA2MDtcbiAgICAgIHNlY29uZHMgKz0gdmFsdWUuZ2V0VVRDU2Vjb25kcygpO1xuICAgICAgbWlsbGlzZWNvbmRzID0gKHNlY29uZHMgKiAxMDAwKSArIHZhbHVlLmdldFVUQ01pbGxpc2Vjb25kcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgc2Vjb25kcyA9IHZhbHVlLmdldEhvdXJzKCkgKiA2MCAqIDYwO1xuICAgICAgc2Vjb25kcyArPSB2YWx1ZS5nZXRNaW51dGVzKCkgKiA2MDtcbiAgICAgIHNlY29uZHMgKz0gdmFsdWUuZ2V0U2Vjb25kcygpO1xuICAgICAgbWlsbGlzZWNvbmRzID0gKHNlY29uZHMgKiAxMDAwKSArIHZhbHVlLmdldE1pbGxpc2Vjb25kcygpO1xuICAgIH1cblxuICAgIHRocmVlSHVuZHJlZHRoc09mU2Vjb25kID0gbWlsbGlzZWNvbmRzIC8gKDMgKyAoMSAvIDMpKTtcbiAgICB0aHJlZUh1bmRyZWR0aHNPZlNlY29uZCA9IE1hdGgucm91bmQodGhyZWVIdW5kcmVkdGhzT2ZTZWNvbmQpO1xuXG4gICAgLy8gMjU5MjAwMDAgZXF1YWxzIG9uZSBkYXlcbiAgICBpZiAodGhyZWVIdW5kcmVkdGhzT2ZTZWNvbmQgPT09IDI1OTIwMDAwKSB7XG4gICAgICBkYXlzICs9IDE7XG4gICAgICB0aHJlZUh1bmRyZWR0aHNPZlNlY29uZCA9IDA7XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDgpO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUoZGF5cywgMCk7XG4gICAgYnVmZmVyLndyaXRlVUludDMyTEUodGhyZWVIdW5kcmVkdGhzT2ZTZWNvbmQsIDQpO1xuICAgIHlpZWxkIGJ1ZmZlcjtcbiAgfSxcblxuICAvLyBUT0RPOiB0eXBlICdhbnknIG5lZWRzIHRvIGJlIHJldmlzaXRlZC5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlOiBhbnksIGNvbGxhdGlvbiwgb3B0aW9ucyk6IG51bGwgfCBudW1iZXIge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKERhdGUucGFyc2UodmFsdWUpKTtcbiAgICB9XG5cbiAgICB2YWx1ZSA9IHZhbHVlIGFzIERhdGU7XG5cbiAgICAvLyBUT0RPOiBjaGVjayBkYXRlIHJhbmdlOiBKYW51YXJ5IDEsIDE3NTMsIHRocm91Z2ggRGVjZW1iZXIgMzEsIDk5OTlcbiAgICAvLyAgICA6IHRpbWUgcmFuZ2U6IDAwOjAwOjAwIHRocm91Z2ggMjM6NTk6NTkuOTk3XG4gICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy51c2VVVEMpIHtcbiAgICAgIHZhbHVlID0gbmV3IERhdGUodmFsdWUudG9VVENTdHJpbmcoKSk7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlIDwgTUlOX0RBVEUgfHwgdmFsdWUgPiBNQVhfREFURSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignT3V0IG9mIHJhbmdlLicpO1xuICAgIH1cblxuICAgIGlmIChpc05hTih2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgZGF0ZS4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IERhdGVUaW1lO1xubW9kdWxlLmV4cG9ydHMgPSBEYXRlVGltZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsVUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBRCxPQUFBO0FBQXNELFNBQUFELHVCQUFBRyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBRXRELE1BQU1HLFVBQVUsR0FBR0MsZUFBUyxDQUFDQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUMvQyxNQUFNQyxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdkMsTUFBTUMsV0FBVyxHQUFHRixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZDLE1BQU1FLFFBQVEsR0FBRyxJQUFJQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7QUFDNUMsTUFBTUMsUUFBUSxHQUFHLElBQUlELElBQUksQ0FBQyxtQkFBbUIsQ0FBQztBQUU5QyxNQUFNRSxRQUFrQixHQUFHO0VBQ3pCQyxFQUFFLEVBQUUsSUFBSTtFQUNSQyxJQUFJLEVBQUUsVUFBVTtFQUNoQkMsSUFBSSxFQUFFLFVBQVU7RUFFaEJDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FB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

@@ -12,2 +12,4 @@ "use strict";

const NULL_LENGTH = Buffer.from([0x00]);
const MIN_DATE = new Date('January 1, 0001');
const MAX_DATE = new Date('December 31, 9999');
const DateTime2 = {

@@ -94,3 +96,3 @@ id: 0x2A,

},
validate: function (value) {
validate: function (value, collation, options) {
if (value == null) {

@@ -102,2 +104,12 @@ return null;

}
value = value;
// TODO: check date range: January 1, 0001, through December 31, 9999
// : time range: 00:00:00 through 23:59:59.997
if (options && options.useUTC) {
value = new Date(value.toUTCString());
}
if (value < MIN_DATE || value > MAX_DATE) {
throw new TypeError('Out of range.');
}
if (isNaN(value)) {

@@ -112,2 +124,2 @@ throw new TypeError('Invalid date.');

module.exports = DateTime2;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJMb2NhbERhdGUiLCJvZlllYXJEYXkiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJEYXRlVGltZTIiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJwYXJhbWV0ZXIiLCJyZXNvbHZlU2NhbGUiLCJzY2FsZSIsInZhbHVlIiwiZ2VuZXJhdGVUeXBlSW5mbyIsIl9vcHRpb25zIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiRXJyb3IiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJidWZmZXIiLCJXcml0YWJsZVRyYWNraW5nQnVmZmVyIiwidGltZXN0YW1wIiwidXNlVVRDIiwiZ2V0VVRDSG91cnMiLCJnZXRVVENNaW51dGVzIiwiZ2V0VVRDU2Vjb25kcyIsImdldFVUQ01pbGxpc2Vjb25kcyIsImdldEhvdXJzIiwiZ2V0TWludXRlcyIsImdldFNlY29uZHMiLCJnZXRNaWxsaXNlY29uZHMiLCJNYXRoIiwicG93IiwibmFub3NlY29uZERlbHRhIiwicm91bmQiLCJ3cml0ZVVJbnQyNExFIiwid3JpdGVVSW50MzJMRSIsIndyaXRlVUludDQwTEUiLCJkYXRlIiwib2YiLCJnZXRVVENGdWxsWWVhciIsImdldFVUQ01vbnRoIiwiZ2V0VVRDRGF0ZSIsImdldEZ1bGxZZWFyIiwiZ2V0TW9udGgiLCJnZXREYXRlIiwiZGF5cyIsInVudGlsIiwiQ2hyb25vVW5pdCIsIkRBWVMiLCJkYXRhIiwidmFsaWRhdGUiLCJEYXRlIiwicGFyc2UiLCJpc05hTiIsIlR5cGVFcnJvciIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL2RhdGV0aW1lMi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcbmltcG9ydCB7IENocm9ub1VuaXQsIExvY2FsRGF0ZSB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuaW1wb3J0IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIgZnJvbSAnLi4vdHJhY2tpbmctYnVmZmVyL3dyaXRhYmxlLXRyYWNraW5nLWJ1ZmZlcic7XG5cbmNvbnN0IEVQT0NIX0RBVEUgPSBMb2NhbERhdGUub2ZZZWFyRGF5KDEsIDEpO1xuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuXG5jb25zdCBEYXRlVGltZTI6IERhdGFUeXBlICYgeyByZXNvbHZlU2NhbGU6IE5vbk51bGxhYmxlPERhdGFUeXBlWydyZXNvbHZlU2NhbGUnXT4gfSA9IHtcbiAgaWQ6IDB4MkEsXG4gIHR5cGU6ICdEQVRFVElNRTJOJyxcbiAgbmFtZTogJ0RhdGVUaW1lMicsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIHJldHVybiAnZGF0ZXRpbWUyKCcgKyAodGhpcy5yZXNvbHZlU2NhbGUocGFyYW1ldGVyKSkgKyAnKSc7XG4gIH0sXG5cbiAgcmVzb2x2ZVNjYWxlOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBpZiAocGFyYW1ldGVyLnNjYWxlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiBwYXJhbWV0ZXIuc2NhbGU7XG4gICAgfSBlbHNlIGlmIChwYXJhbWV0ZXIudmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gNztcbiAgICB9XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXIsIF9vcHRpb25zKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFt0aGlzLmlkLCBwYXJhbWV0ZXIuc2NhbGUhXSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgc3dpdGNoIChwYXJhbWV0ZXIuc2NhbGUhKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICBjYXNlIDE6XG4gICAgICBjYXNlIDI6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwNl0pO1xuXG4gICAgICBjYXNlIDM6XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwN10pO1xuXG4gICAgICBjYXNlIDU6XG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDc6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwOF0pO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgc2NhbGUnKTtcbiAgICB9XG4gIH0sXG5cbiAgKmdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZTtcbiAgICBsZXQgc2NhbGUgPSBwYXJhbWV0ZXIuc2NhbGU7XG5cbiAgICBjb25zdCBidWZmZXIgPSBuZXcgV3JpdGFibGVUcmFja2luZ0J1ZmZlcigxNik7XG4gICAgc2NhbGUgPSBzY2FsZSE7XG5cbiAgICBsZXQgdGltZXN0YW1wO1xuICAgIGlmIChvcHRpb25zLnVzZVVUQykge1xuICAgICAgdGltZXN0YW1wID0gKCh2YWx1ZS5nZXRVVENIb3VycygpICogNjAgKyB2YWx1ZS5nZXRVVENNaW51dGVzKCkpICogNjAgKyB2YWx1ZS5nZXRVVENTZWNvbmRzKCkpICogMTAwMCArIHZhbHVlLmdldFVUQ01pbGxpc2Vjb25kcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aW1lc3RhbXAgPSAoKHZhbHVlLmdldEhvdXJzKCkgKiA2MCArIHZhbHVlLmdldE1pbnV0ZXMoKSkgKiA2MCArIHZhbHVlLmdldFNlY29uZHMoKSkgKiAxMDAwICsgdmFsdWUuZ2V0TWlsbGlzZWNvbmRzKCk7XG4gICAgfVxuICAgIHRpbWVzdGFtcCA9IHRpbWVzdGFtcCAqIE1hdGgucG93KDEwLCBzY2FsZSAtIDMpO1xuICAgIHRpbWVzdGFtcCArPSAodmFsdWUubmFub3NlY29uZERlbHRhICE9IG51bGwgPyB2YWx1ZS5uYW5vc2Vjb25kRGVsdGEgOiAwKSAqIE1hdGgucG93KDEwLCBzY2FsZSk7XG4gICAgdGltZXN0YW1wID0gTWF0aC5yb3VuZCh0aW1lc3RhbXApO1xuXG4gICAgc3dpdGNoIChzY2FsZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgY2FzZSAxOlxuICAgICAgY2FzZSAyOlxuICAgICAgICBidWZmZXIud3JpdGVVSW50MjRMRSh0aW1lc3RhbXApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMzpcbiAgICAgIGNhc2UgNDpcbiAgICAgICAgYnVmZmVyLndyaXRlVUludDMyTEUodGltZXN0YW1wKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDU6XG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDc6XG4gICAgICAgIGJ1ZmZlci53cml0ZVVJbnQ0MExFKHRpbWVzdGFtcCk7XG4gICAgfVxuXG4gICAgbGV0IGRhdGU7XG4gICAgaWYgKG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldFVUQ0Z1bGxZZWFyKCksIHZhbHVlLmdldFVUQ01vbnRoKCkgKyAxLCB2YWx1ZS5nZXRVVENEYXRlKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCkgKyAxLCB2YWx1ZS5nZXREYXRlKCkpO1xuICAgIH1cblxuICAgIGNvbnN0IGRheXMgPSBFUE9DSF9EQVRFLnVudGlsKGRhdGUsIENocm9ub1VuaXQuREFZUyk7XG4gICAgYnVmZmVyLndyaXRlVUludDI0TEUoZGF5cyk7XG4gICAgeWllbGQgYnVmZmVyLmRhdGE7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogbnVsbCB8IG51bWJlciB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkpIHtcbiAgICAgIHZhbHVlID0gbmV3IERhdGUoRGF0ZS5wYXJzZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIGlmIChpc05hTih2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgZGF0ZS4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IERhdGVUaW1lMjtcbm1vZHVsZS5leHBvcnRzID0gRGF0ZVRpbWUyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxLQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyx1QkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQWlGLFNBQUFFLHVCQUFBQyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBRWpGLE1BQU1HLFVBQVUsR0FBR0MsZUFBUyxDQUFDQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM1QyxNQUFNQyxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFdkMsTUFBTUMsU0FBNkUsR0FBRztFQUNwRkMsRUFBRSxFQUFFLElBQUk7RUFDUkMsSUFBSSxFQUFFLFlBQVk7RUFDbEJDLElBQUksRUFBRSxXQUFXO0VBRWpCQyxXQUFXLEVBQUUsU0FBQUEsQ0FBU0MsU0FBUyxFQUFFO0lBQy9CLE9B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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJMb2NhbERhdGUiLCJvZlllYXJEYXkiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJNSU5fREFURSIsIkRhdGUiLCJNQVhfREFURSIsIkRhdGVUaW1lMiIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInJlc29sdmVTY2FsZSIsInNjYWxlIiwidmFsdWUiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiX29wdGlvbnMiLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJFcnJvciIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImJ1ZmZlciIsIldyaXRhYmxlVHJhY2tpbmdCdWZmZXIiLCJ0aW1lc3RhbXAiLCJ1c2VVVEMiLCJnZXRVVENIb3VycyIsImdldFVUQ01pbnV0ZXMiLCJnZXRVVENTZWNvbmRzIiwiZ2V0VVRDTWlsbGlzZWNvbmRzIiwiZ2V0SG91cnMiLCJnZXRNaW51dGVzIiwiZ2V0U2Vjb25kcyIsImdldE1pbGxpc2Vjb25kcyIsIk1hdGgiLCJwb3ciLCJuYW5vc2Vjb25kRGVsdGEiLCJyb3VuZCIsIndyaXRlVUludDI0TEUiLCJ3cml0ZVVJbnQzMkxFIiwid3JpdGVVSW50NDBMRSIsImRhdGUiLCJvZiIsImdldFVUQ0Z1bGxZZWFyIiwiZ2V0VVRDTW9udGgiLCJnZXRVVENEYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJkYXlzIiwidW50aWwiLCJDaHJvbm9Vbml0IiwiREFZUyIsImRhdGEiLCJ2YWxpZGF0ZSIsImNvbGxhdGlvbiIsInBhcnNlIiwidG9VVENTdHJpbmciLCJUeXBlRXJyb3IiLCJpc05hTiIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL2RhdGV0aW1lMi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcbmltcG9ydCB7IENocm9ub1VuaXQsIExvY2FsRGF0ZSB9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuaW1wb3J0IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIgZnJvbSAnLi4vdHJhY2tpbmctYnVmZmVyL3dyaXRhYmxlLXRyYWNraW5nLWJ1ZmZlcic7XG5cbmNvbnN0IEVQT0NIX0RBVEUgPSBMb2NhbERhdGUub2ZZZWFyRGF5KDEsIDEpO1xuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuXG5jb25zdCBNSU5fREFURSA9IG5ldyBEYXRlKCdKYW51YXJ5IDEsIDAwMDEnKTtcbmNvbnN0IE1BWF9EQVRFID0gbmV3IERhdGUoJ0RlY2VtYmVyIDMxLCA5OTk5Jyk7XG5cbmNvbnN0IERhdGVUaW1lMjogRGF0YVR5cGUgJiB7IHJlc29sdmVTY2FsZTogTm9uTnVsbGFibGU8RGF0YVR5cGVbJ3Jlc29sdmVTY2FsZSddPiB9ID0ge1xuICBpZDogMHgyQSxcbiAgdHlwZTogJ0RBVEVUSU1FMk4nLFxuICBuYW1lOiAnRGF0ZVRpbWUyJyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgcmV0dXJuICdkYXRldGltZTIoJyArICh0aGlzLnJlc29sdmVTY2FsZShwYXJhbWV0ZXIpKSArICcpJztcbiAgfSxcblxuICByZXNvbHZlU2NhbGU6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGlmIChwYXJhbWV0ZXIuc2NhbGUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHBhcmFtZXRlci5zY2FsZTtcbiAgICB9IGVsc2UgaWYgKHBhcmFtZXRlci52YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiA3O1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKHBhcmFtZXRlciwgX29wdGlvbnMpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oW3RoaXMuaWQsIHBhcmFtZXRlci5zY2FsZSFdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHBhcmFtZXRlci5zY2FsZSEpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDA2XSk7XG5cbiAgICAgIGNhc2UgMzpcbiAgICAgIGNhc2UgNDpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDA3XSk7XG5cbiAgICAgIGNhc2UgNTpcbiAgICAgIGNhc2UgNjpcbiAgICAgIGNhc2UgNzpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDA4XSk7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBzY2FsZScpO1xuICAgIH1cbiAgfSxcblxuICAqZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlO1xuICAgIGxldCBzY2FsZSA9IHBhcmFtZXRlci5zY2FsZTtcblxuICAgIGNvbnN0IGJ1ZmZlciA9IG5ldyBXcml0YWJsZVRyYWNraW5nQnVmZmVyKDE2KTtcbiAgICBzY2FsZSA9IHNjYWxlITtcblxuICAgIGxldCB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICBpZiAob3B0aW9ucy51c2VVVEMpIHtcbiAgICAgIHRpbWVzdGFtcCA9ICgodmFsdWUuZ2V0VVRDSG91cnMoKSAqIDYwICsgdmFsdWUuZ2V0VVRDTWludXRlcygpKSAqIDYwICsgdmFsdWUuZ2V0VVRDU2Vjb25kcygpKSAqIDEwMDAgKyB2YWx1ZS5nZXRVVENNaWxsaXNlY29uZHMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGltZXN0YW1wID0gKCh2YWx1ZS5nZXRIb3VycygpICogNjAgKyB2YWx1ZS5nZXRNaW51dGVzKCkpICogNjAgKyB2YWx1ZS5nZXRTZWNvbmRzKCkpICogMTAwMCArIHZhbHVlLmdldE1pbGxpc2Vjb25kcygpO1xuICAgIH1cbiAgICB0aW1lc3RhbXAgPSB0aW1lc3RhbXAgKiBNYXRoLnBvdygxMCwgc2NhbGUgLSAzKTtcbiAgICB0aW1lc3RhbXAgKz0gKHZhbHVlLm5hbm9zZWNvbmREZWx0YSAhPSBudWxsID8gdmFsdWUubmFub3NlY29uZERlbHRhIDogMCkgKiBNYXRoLnBvdygxMCwgc2NhbGUpO1xuICAgIHRpbWVzdGFtcCA9IE1hdGgucm91bmQodGltZXN0YW1wKTtcblxuICAgIHN3aXRjaCAoc2NhbGUpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgYnVmZmVyLndyaXRlVUludDI0TEUodGltZXN0YW1wKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDM6XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIGJ1ZmZlci53cml0ZVVJbnQzMkxFKHRpbWVzdGFtcCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSA1OlxuICAgICAgY2FzZSA2OlxuICAgICAgY2FzZSA3OlxuICAgICAgICBidWZmZXIud3JpdGVVSW50NDBMRSh0aW1lc3RhbXApO1xuICAgIH1cblxuICAgIGxldCBkYXRlO1xuICAgIGlmIChvcHRpb25zLnVzZVVUQykge1xuICAgICAgZGF0ZSA9IExvY2FsRGF0ZS5vZih2YWx1ZS5nZXRVVENGdWxsWWVhcigpLCB2YWx1ZS5nZXRVVENNb250aCgpICsgMSwgdmFsdWUuZ2V0VVRDRGF0ZSgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGF0ZSA9IExvY2FsRGF0ZS5vZih2YWx1ZS5nZXRGdWxsWWVhcigpLCB2YWx1ZS5nZXRNb250aCgpICsgMSwgdmFsdWUuZ2V0RGF0ZSgpKTtcbiAgICB9XG5cbiAgICBjb25zdCBkYXlzID0gRVBPQ0hfREFURS51bnRpbChkYXRlLCBDaHJvbm9Vbml0LkRBWVMpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQyNExFKGRheXMpO1xuICAgIHlpZWxkIGJ1ZmZlci5kYXRhO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZTogYW55LCBjb2xsYXRpb24sIG9wdGlvbnMpOiBudWxsIHwgbnVtYmVyIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCEodmFsdWUgaW5zdGFuY2VvZiBEYXRlKSkge1xuICAgICAgdmFsdWUgPSBuZXcgRGF0ZShEYXRlLnBhcnNlKHZhbHVlKSk7XG4gICAgfVxuXG4gICAgdmFsdWUgPSB2YWx1ZSBhcyBEYXRlO1xuXG4gICAgLy8gVE9ETzogY2hlY2sgZGF0ZSByYW5nZTogSmFudWFyeSAxLCAwMDAxLCB0aHJvdWdoIERlY2VtYmVyIDMxLCA5OTk5XG4gICAgLy8gICAgOiB0aW1lIHJhbmdlOiAwMDowMDowMCB0aHJvdWdoIDIzOjU5OjU5Ljk5N1xuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlLnRvVVRDU3RyaW5nKCkpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IE1JTl9EQVRFIHx8IHZhbHVlID4gTUFYX0RBVEUpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ091dCBvZiByYW5nZS4nKTtcbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIGRhdGUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEYXRlVGltZTI7XG5tb2R1bGUuZXhwb3J0cyA9IERhdGVUaW1lMjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsS0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsdUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUFpRixTQUFBRSx1QkFBQUMsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUVqRixNQUFNRyxVQUFVLEdBQUdDLGVBQVMsQ0FBQ0MsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDNUMsTUFBTUMsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZDLE1BQU1DLFFBQVEsR0FBRyxJQUFJQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7QUFDNUMsTUFBTUMsUUFBUSxHQUFHLElBQUlELElBQUksQ0FBQyxtQkFBbUIsQ0FBQztBQUU5QyxNQUFNRSxTQUE2RSxHQUFHO0VBQ3BGQyxFQUFFLEVBQUUsSUFBSTtFQUNSQyxJQUFJLEVBQUUsWUFBWTtFQUNsQkMsSUFBSSxFQUFFLFdBQVc7RUFFakJDLFdBQVcsRUFBRSxTQUFBQSxDQUFTQyxTQUFTLEVBQUU7SUFDL0IsT0FBTyxZQUFZLEdBQUksSUFBSSxDQUFDQyxZQUFZLENBQUNELFNBQVMsQ0FBRSxHQUFHLEdBQUc7RUFDNUQsQ0FBQztFQUVEQyxZQUFZLEVBQUUsU0FBQUEsQ0FBU0QsU0FBUyxFQUFFO0lBQ2hDLElBQUlBLFNBQVMsQ0FBQ0UsS0FBSyxJQUFJLElBQUksRUFBRTtNQUMzQixPQUFPRixTQUFTLENBQUNFLEtBQUs7SUFDeEIsQ0FBQyxNQUFNLElBQUlGLFNBQVMsQ0FBQ0csS0FBSyxLQUFLLElBQUksRUFBRTtNQUNuQyxPQUFPLENBQUM7SUFDVixDQUFDLE1BQU07TUFDTCxP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

@@ -12,2 +12,4 @@ "use strict";

const NULL_LENGTH = Buffer.from([0x00]);
const MIN_DATE = new Date('January 1, 0001');
const MAX_DATE = new Date('December 31, 9999');
const DateTimeOffset = {

@@ -87,3 +89,3 @@ id: 0x2B,

},
validate: function (value) {
validate: function (value, collation, options) {
if (value == null) {

@@ -95,2 +97,12 @@ return null;

}
value = value;
// TODO: check date range: January 1, 0001, through December 31, 9999
// : time range: 00:00:00 through 23:59:59.997
if (options && options.useUTC) {
value = new Date(value.toUTCString());
}
if (value < MIN_DATE || value > MAX_DATE) {
throw new TypeError('Out of range.');
}
if (isNaN(value)) {

@@ -105,2 +117,2 @@ throw new TypeError('Invalid date.');

module.exports = DateTimeOffset;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJMb2NhbERhdGUiLCJvZlllYXJEYXkiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJEYXRlVGltZU9mZnNldCIsImlkIiwidHlwZSIsIm5hbWUiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInJlc29sdmVTY2FsZSIsInNjYWxlIiwidmFsdWUiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiRXJyb3IiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJidWZmZXIiLCJXcml0YWJsZVRyYWNraW5nQnVmZmVyIiwidGltZXN0YW1wIiwiZ2V0VVRDSG91cnMiLCJnZXRVVENNaW51dGVzIiwiZ2V0VVRDU2Vjb25kcyIsImdldE1pbGxpc2Vjb25kcyIsIk1hdGgiLCJwb3ciLCJuYW5vc2Vjb25kRGVsdGEiLCJyb3VuZCIsIndyaXRlVUludDI0TEUiLCJ3cml0ZVVJbnQzMkxFIiwid3JpdGVVSW50NDBMRSIsImRhdGUiLCJvZiIsImdldFVUQ0Z1bGxZZWFyIiwiZ2V0VVRDTW9udGgiLCJnZXRVVENEYXRlIiwiZGF5cyIsInVudGlsIiwiQ2hyb25vVW5pdCIsIkRBWVMiLCJvZmZzZXQiLCJnZXRUaW1lem9uZU9mZnNldCIsIndyaXRlSW50MTZMRSIsImRhdGEiLCJ2YWxpZGF0ZSIsIkRhdGUiLCJwYXJzZSIsImlzTmFOIiwiVHlwZUVycm9yIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvZGF0ZXRpbWVvZmZzZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgeyBDaHJvbm9Vbml0LCBMb2NhbERhdGUgfSBmcm9tICdAanMtam9kYS9jb3JlJztcbmltcG9ydCBXcml0YWJsZVRyYWNraW5nQnVmZmVyIGZyb20gJy4uL3RyYWNraW5nLWJ1ZmZlci93cml0YWJsZS10cmFja2luZy1idWZmZXInO1xuXG5jb25zdCBFUE9DSF9EQVRFID0gTG9jYWxEYXRlLm9mWWVhckRheSgxLCAxKTtcbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcblxuY29uc3QgRGF0ZVRpbWVPZmZzZXQ6IERhdGFUeXBlICYgeyByZXNvbHZlU2NhbGU6IE5vbk51bGxhYmxlPERhdGFUeXBlWydyZXNvbHZlU2NhbGUnXT4gfSA9IHtcbiAgaWQ6IDB4MkIsXG4gIHR5cGU6ICdEQVRFVElNRU9GRlNFVE4nLFxuICBuYW1lOiAnRGF0ZVRpbWVPZmZzZXQnLFxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgcmV0dXJuICdkYXRldGltZW9mZnNldCgnICsgKHRoaXMucmVzb2x2ZVNjYWxlKHBhcmFtZXRlcikpICsgJyknO1xuICB9LFxuICByZXNvbHZlU2NhbGU6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGlmIChwYXJhbWV0ZXIuc2NhbGUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHBhcmFtZXRlci5zY2FsZTtcbiAgICB9IGVsc2UgaWYgKHBhcmFtZXRlci52YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiA3O1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKHBhcmFtZXRlcikge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbShbdGhpcy5pZCwgcGFyYW1ldGVyLnNjYWxlIV0pO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIE5VTExfTEVOR1RIO1xuICAgIH1cblxuICAgIHN3aXRjaCAocGFyYW1ldGVyLnNjYWxlKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICBjYXNlIDE6XG4gICAgICBjYXNlIDI6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwOF0pO1xuXG4gICAgICBjYXNlIDM6XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwOV0pO1xuXG4gICAgICBjYXNlIDU6XG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDc6XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShbMHgwQV0pO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgc2NhbGUnKTtcbiAgICB9XG4gIH0sXG5cbiAgKiBnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWU7XG4gICAgbGV0IHNjYWxlID0gcGFyYW1ldGVyLnNjYWxlO1xuXG4gICAgY29uc3QgYnVmZmVyID0gbmV3IFdyaXRhYmxlVHJhY2tpbmdCdWZmZXIoMTYpO1xuICAgIHNjYWxlID0gc2NhbGUhO1xuXG4gICAgbGV0IHRpbWVzdGFtcDtcbiAgICB0aW1lc3RhbXAgPSAoKHZhbHVlLmdldFVUQ0hvdXJzKCkgKiA2MCArIHZhbHVlLmdldFVUQ01pbnV0ZXMoKSkgKiA2MCArIHZhbHVlLmdldFVUQ1NlY29uZHMoKSkgKiAxMDAwICsgdmFsdWUuZ2V0TWlsbGlzZWNvbmRzKCk7XG4gICAgdGltZXN0YW1wID0gdGltZXN0YW1wICogTWF0aC5wb3coMTAsIHNjYWxlIC0gMyk7XG4gICAgdGltZXN0YW1wICs9ICh2YWx1ZS5uYW5vc2Vjb25kRGVsdGEgIT0gbnVsbCA/IHZhbHVlLm5hbm9zZWNvbmREZWx0YSA6IDApICogTWF0aC5wb3coMTAsIHNjYWxlKTtcbiAgICB0aW1lc3RhbXAgPSBNYXRoLnJvdW5kKHRpbWVzdGFtcCk7XG5cbiAgICBzd2l0Y2ggKHNjYWxlKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICBjYXNlIDE6XG4gICAgICBjYXNlIDI6XG4gICAgICAgIGJ1ZmZlci53cml0ZVVJbnQyNExFKHRpbWVzdGFtcCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAzOlxuICAgICAgY2FzZSA0OlxuICAgICAgICBidWZmZXIud3JpdGVVSW50MzJMRSh0aW1lc3RhbXApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgNTpcbiAgICAgIGNhc2UgNjpcbiAgICAgIGNhc2UgNzpcbiAgICAgICAgYnVmZmVyLndyaXRlVUludDQwTEUodGltZXN0YW1wKTtcbiAgICB9XG5cbiAgICBjb25zdCBkYXRlID0gTG9jYWxEYXRlLm9mKHZhbHVlLmdldFVUQ0Z1bGxZZWFyKCksIHZhbHVlLmdldFVUQ01vbnRoKCkgKyAxLCB2YWx1ZS5nZXRVVENEYXRlKCkpO1xuICAgIGNvbnN0IGRheXMgPSBFUE9DSF9EQVRFLnVudGlsKGRhdGUsIENocm9ub1VuaXQuREFZUyk7XG4gICAgYnVmZmVyLndyaXRlVUludDI0TEUoZGF5cyk7XG5cbiAgICBjb25zdCBvZmZzZXQgPSAtdmFsdWUuZ2V0VGltZXpvbmVPZmZzZXQoKTtcbiAgICBidWZmZXIud3JpdGVJbnQxNkxFKG9mZnNldCk7XG4gICAgeWllbGQgYnVmZmVyLmRhdGE7XG4gIH0sXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IG51bGwgfCBudW1iZXIge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKERhdGUucGFyc2UodmFsdWUpKTtcbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIGRhdGUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEYXRlVGltZU9mZnNldDtcbm1vZHVsZS5leHBvcnRzID0gRGF0ZVRpbWVPZmZzZXQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLHVCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFBaUYsU0FBQUUsdUJBQUFDLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFakYsTUFBTUcsVUFBVSxHQUFHQyxlQUFTLENBQUNDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzVDLE1BQU1DLFdBQVcsR0FBR0MsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV2QyxNQUFNQyxjQUFrRixHQUFHO0VBQ3pGQyxFQUFFLEVBQUUsSUFBSTtFQUNSQyxJQUFJLEVBQUUsaUJBQWlCO0VBQ3ZCQyxJQUFJLEVBQUUsZ0JBQWdCO0VBQ3RCQyxXQUFXLEVBQUUsU0FBQUEsQ0FBU0MsU0FBUyxFQUFFO0lBQy9CLE9BQU8saUJBQWlCLEdBQUksSUFBSSxDQUFDQyxZQUFZLENBQUNELFNBQVMsQ0FBRSxHQUFHLEdBQUc7RUFDakUsQ0FBQztFQUNEQyxZQUFZLEVBQUUsU0FBQUEsQ0FBU0QsU0FBUyxFQUFFO0lBQ2hDLElBQUlBLFNBQVMsQ0FBQ0UsS0FBSyxJQUFJLElBQUksRUFBRTtNQUMzQixPQUFPRixTQUFTLENBQUNFLEtBQUs7SUFDeEIsQ0FBQyxNQUFNLElBQUlGLFNBQVMsQ0FBQ0csS0FBSyxLQUFLLElBQUksRUFBRTtNQUNuQyxPQUFPLENBQUM7SUFDVixDQUFDLE1BQU07TUFDTCxPQUFPLENBQUM7SUFDVjtFQUNG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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJfd3JpdGFibGVUcmFja2luZ0J1ZmZlciIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJMb2NhbERhdGUiLCJvZlllYXJEYXkiLCJOVUxMX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJNSU5fREFURSIsIkRhdGUiLCJNQVhfREFURSIsIkRhdGVUaW1lT2Zmc2V0IiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwicGFyYW1ldGVyIiwicmVzb2x2ZVNjYWxlIiwic2NhbGUiLCJ2YWx1ZSIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJFcnJvciIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsImJ1ZmZlciIsIldyaXRhYmxlVHJhY2tpbmdCdWZmZXIiLCJ0aW1lc3RhbXAiLCJnZXRVVENIb3VycyIsImdldFVUQ01pbnV0ZXMiLCJnZXRVVENTZWNvbmRzIiwiZ2V0TWlsbGlzZWNvbmRzIiwiTWF0aCIsInBvdyIsIm5hbm9zZWNvbmREZWx0YSIsInJvdW5kIiwid3JpdGVVSW50MjRMRSIsIndyaXRlVUludDMyTEUiLCJ3cml0ZVVJbnQ0MExFIiwiZGF0ZSIsIm9mIiwiZ2V0VVRDRnVsbFllYXIiLCJnZXRVVENNb250aCIsImdldFVUQ0RhdGUiLCJkYXlzIiwidW50aWwiLCJDaHJvbm9Vbml0IiwiREFZUyIsIm9mZnNldCIsImdldFRpbWV6b25lT2Zmc2V0Iiwid3JpdGVJbnQxNkxFIiwiZGF0YSIsInZhbGlkYXRlIiwiY29sbGF0aW9uIiwicGFyc2UiLCJ1c2VVVEMiLCJ0b1VUQ1N0cmluZyIsIlR5cGVFcnJvciIsImlzTmFOIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvZGF0ZXRpbWVvZmZzZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgeyBDaHJvbm9Vbml0LCBMb2NhbERhdGUgfSBmcm9tICdAanMtam9kYS9jb3JlJztcbmltcG9ydCBXcml0YWJsZVRyYWNraW5nQnVmZmVyIGZyb20gJy4uL3RyYWNraW5nLWJ1ZmZlci93cml0YWJsZS10cmFja2luZy1idWZmZXInO1xuXG5jb25zdCBFUE9DSF9EQVRFID0gTG9jYWxEYXRlLm9mWWVhckRheSgxLCAxKTtcbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcblxuY29uc3QgTUlOX0RBVEUgPSBuZXcgRGF0ZSgnSmFudWFyeSAxLCAwMDAxJyk7XG5jb25zdCBNQVhfREFURSA9IG5ldyBEYXRlKCdEZWNlbWJlciAzMSwgOTk5OScpO1xuXG5jb25zdCBEYXRlVGltZU9mZnNldDogRGF0YVR5cGUgJiB7IHJlc29sdmVTY2FsZTogTm9uTnVsbGFibGU8RGF0YVR5cGVbJ3Jlc29sdmVTY2FsZSddPiB9ID0ge1xuICBpZDogMHgyQixcbiAgdHlwZTogJ0RBVEVUSU1FT0ZGU0VUTicsXG4gIG5hbWU6ICdEYXRlVGltZU9mZnNldCcsXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICByZXR1cm4gJ2RhdGV0aW1lb2Zmc2V0KCcgKyAodGhpcy5yZXNvbHZlU2NhbGUocGFyYW1ldGVyKSkgKyAnKSc7XG4gIH0sXG4gIHJlc29sdmVTY2FsZTogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgaWYgKHBhcmFtZXRlci5zY2FsZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcGFyYW1ldGVyLnNjYWxlO1xuICAgIH0gZWxzZSBpZiAocGFyYW1ldGVyLnZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIDc7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFt0aGlzLmlkLCBwYXJhbWV0ZXIuc2NhbGUhXSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgc3dpdGNoIChwYXJhbWV0ZXIuc2NhbGUpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDA4XSk7XG5cbiAgICAgIGNhc2UgMzpcbiAgICAgIGNhc2UgNDpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDA5XSk7XG5cbiAgICAgIGNhc2UgNTpcbiAgICAgIGNhc2UgNjpcbiAgICAgIGNhc2UgNzpcbiAgICAgICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFsweDBBXSk7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBzY2FsZScpO1xuICAgIH1cbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZTtcbiAgICBsZXQgc2NhbGUgPSBwYXJhbWV0ZXIuc2NhbGU7XG5cbiAgICBjb25zdCBidWZmZXIgPSBuZXcgV3JpdGFibGVUcmFja2luZ0J1ZmZlcigxNik7XG4gICAgc2NhbGUgPSBzY2FsZSE7XG5cbiAgICBsZXQgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgdGltZXN0YW1wID0gKCh2YWx1ZS5nZXRVVENIb3VycygpICogNjAgKyB2YWx1ZS5nZXRVVENNaW51dGVzKCkpICogNjAgKyB2YWx1ZS5nZXRVVENTZWNvbmRzKCkpICogMTAwMCArIHZhbHVlLmdldE1pbGxpc2Vjb25kcygpO1xuICAgIHRpbWVzdGFtcCA9IHRpbWVzdGFtcCAqIE1hdGgucG93KDEwLCBzY2FsZSAtIDMpO1xuICAgIHRpbWVzdGFtcCArPSAodmFsdWUubmFub3NlY29uZERlbHRhICE9IG51bGwgPyB2YWx1ZS5uYW5vc2Vjb25kRGVsdGEgOiAwKSAqIE1hdGgucG93KDEwLCBzY2FsZSk7XG4gICAgdGltZXN0YW1wID0gTWF0aC5yb3VuZCh0aW1lc3RhbXApO1xuXG4gICAgc3dpdGNoIChzY2FsZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgY2FzZSAxOlxuICAgICAgY2FzZSAyOlxuICAgICAgICBidWZmZXIud3JpdGVVSW50MjRMRSh0aW1lc3RhbXApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMzpcbiAgICAgIGNhc2UgNDpcbiAgICAgICAgYnVmZmVyLndyaXRlVUludDMyTEUodGltZXN0YW1wKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDU6XG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDc6XG4gICAgICAgIGJ1ZmZlci53cml0ZVVJbnQ0MExFKHRpbWVzdGFtcCk7XG4gICAgfVxuXG4gICAgY29uc3QgZGF0ZSA9IExvY2FsRGF0ZS5vZih2YWx1ZS5nZXRVVENGdWxsWWVhcigpLCB2YWx1ZS5nZXRVVENNb250aCgpICsgMSwgdmFsdWUuZ2V0VVRDRGF0ZSgpKTtcbiAgICBjb25zdCBkYXlzID0gRVBPQ0hfREFURS51bnRpbChkYXRlLCBDaHJvbm9Vbml0LkRBWVMpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQyNExFKGRheXMpO1xuXG4gICAgY29uc3Qgb2Zmc2V0ID0gLXZhbHVlLmdldFRpbWV6b25lT2Zmc2V0KCk7XG4gICAgYnVmZmVyLndyaXRlSW50MTZMRShvZmZzZXQpO1xuICAgIHlpZWxkIGJ1ZmZlci5kYXRhO1xuICB9LFxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWU6IGFueSwgY29sbGF0aW9uLCBvcHRpb25zKTogbnVsbCB8IG51bWJlciB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkpIHtcbiAgICAgIHZhbHVlID0gbmV3IERhdGUoRGF0ZS5wYXJzZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHZhbHVlID0gdmFsdWUgYXMgRGF0ZTtcblxuICAgIC8vIFRPRE86IGNoZWNrIGRhdGUgcmFuZ2U6IEphbnVhcnkgMSwgMDAwMSwgdGhyb3VnaCBEZWNlbWJlciAzMSwgOTk5OVxuICAgIC8vICAgIDogdGltZSByYW5nZTogMDA6MDA6MDAgdGhyb3VnaCAyMzo1OTo1OS45OTdcbiAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnVzZVVUQykge1xuICAgICAgdmFsdWUgPSBuZXcgRGF0ZSh2YWx1ZS50b1VUQ1N0cmluZygpKTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPCBNSU5fREFURSB8fCB2YWx1ZSA+IE1BWF9EQVRFKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdPdXQgb2YgcmFuZ2UuJyk7XG4gICAgfVxuXG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBkYXRlLicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgRGF0ZVRpbWVPZmZzZXQ7XG5tb2R1bGUuZXhwb3J0cyA9IERhdGVUaW1lT2Zmc2V0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxLQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyx1QkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQWlGLFNBQUFFLHVCQUFBQyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBRWpGLE1B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

@@ -47,2 +47,9 @@ "use strict";

}
// money: -922337203685477.5808 to 922337203685477.5807
// in javascript -922337203685477.5808 === -922337203685477.6
// 922337203685477.5807 === 922337203685477.6
// javascript number doesn't have enough precision.
if (value < -922337203685477.6 || value > 922337203685477.6) {
throw new TypeError('Value must be between -922337203685477.5808 and 922337203685477.5807, inclusive.');
}
return value;

@@ -54,2 +61,2 @@ }

module.exports = Money;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9uZXluIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIlNISUZUX0xFRlRfMzIiLCJTSElGVF9SSUdIVF8zMiIsIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIkRBVEFfTEVOR1RIIiwiTW9uZXkiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiTW9uZXlOIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJwYXJhbWV0ZXIiLCJvcHRpb25zIiwidmFsdWUiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlSW50MzJMRSIsIk1hdGgiLCJmbG9vciIsInZhbGlkYXRlIiwicGFyc2VGbG9hdCIsImlzTmFOIiwiVHlwZUVycm9yIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvbW9uZXkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgTW9uZXlOIGZyb20gJy4vbW9uZXluJztcblxuY29uc3QgU0hJRlRfTEVGVF8zMiA9ICgxIDw8IDE2KSAqICgxIDw8IDE2KTtcbmNvbnN0IFNISUZUX1JJR0hUXzMyID0gMSAvIFNISUZUX0xFRlRfMzI7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcbmNvbnN0IERBVEFfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDhdKTtcblxuY29uc3QgTW9uZXk6IERhdGFUeXBlID0ge1xuICBpZDogMHgzQyxcbiAgdHlwZTogJ01PTkVZJyxcbiAgbmFtZTogJ01vbmV5JyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICdtb25leSc7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbzogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFtNb25leU4uaWQsIDB4MDhdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICByZXR1cm4gREFUQV9MRU5HVEg7XG4gIH0sXG5cbiAgKiBnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgKiAxMDAwMDtcblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg4KTtcbiAgICBidWZmZXIud3JpdGVJbnQzMkxFKE1hdGguZmxvb3IodmFsdWUgKiBTSElGVF9SSUdIVF8zMiksIDApO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUodmFsdWUgJiAtMSwgNCk7XG4gICAgeWllbGQgYnVmZmVyO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IG51bWJlciB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgdmFsdWUgPSBwYXJzZUZsb2F0KHZhbHVlKTtcbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIG51bWJlci4nKTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBNb25leTtcbm1vZHVsZS5leHBvcnRzID0gTW9uZXk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUE4QixTQUFBRCx1QkFBQUUsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUU5QixNQUFNRyxhQUFhLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDM0MsTUFBTUMsY0FBYyxHQUFHLENBQUMsR0FBR0QsYUFBYTtBQUV4QyxNQUFNRSxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdkMsTUFBTUMsV0FBVyxHQUFHRixNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZDLE1BQU1FLEtBQWUsR0FBRztFQUN0QkMsRUFBRSxFQUFFLElBQUk7RUFDUkMsSUFBSSxFQUFFLE9BQU87RUFDYkMsSUFBSSxFQUFFLE9BQU87RUFFYkMsV0FBVyxFQUFFLFNBQUFBLENBQUEsRUFBVztJQUN0QixPQUFPLE9BQU87RUFDaEIsQ0FBQztFQUVEQyxnQkFBZ0IsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDM0IsT0FBT1IsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQ1EsZUFBTSxDQUFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7RUFDdkMsQ0FBQztFQUVETSx1QkFBdUJBLENBQUNDLFNBQVMsRUFBRUMsT0FBTyxFQUFFO0lBQzFDLElBQUlELFNBQVMsQ0FBQ0UsS0FBSyxJQUFJLElBQUksRUFBRTtNQUMzQixPQUFPZCxXQUFXO0lBQ3BCO0lBRUEsT0FBT0csV0FBVztFQUNwQixDQUFDO0VBRUQsQ0FBRVkscUJBQXFCQSxDQUFDSCxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUMxQyxJQUFJRCxTQUFTLENBQUNFLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDM0I7SUFDRjtJQUVBLE1BQU1BLEtBQUssR0FBR0YsU0FBUyxDQUFDRSxLQUFLLEdBQUcsS0FBSztJQUVyQyxNQUFNRSxNQUFNLEdBQUdmLE1BQU0sQ0FBQ2dCLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUJELE1BQU0sQ0FBQ0UsWUFBWSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ04sS0FBSyxHQUFHZixjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMURpQixNQUFNLENBQUNFLFlBQVksQ0FBQ0osS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNsQyxNQUFNRSxNQUFNO0VBQ2QsQ0FBQztFQUVESyxRQUFRLEVBQUUsU0FBQUEsQ0FBU1AsS0FBSyxFQUFpQjtJQUN2QyxJQUFJQSxLQUFLLElBQUksSUFBSSxFQUFFO01BQ2pCLE9BQU8sSUFBSTtJQUNiO0lBQ0FBLEtBQUssR0FBR1EsVUFBVSxDQUFDUixLQUFLLENBQUM7SUFDekIsSUFBSVMsS0FBSyxDQUFDVCxLQUFLLENBQUMsRUFBRTtNQUNoQixNQUFNLElBQUlVLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztJQUN4QztJQUNBLE9BQU9WLEtBQUs7RUFDZDtBQUNGLENBQUM7QUFBQyxJQUFBVyxRQUFBLEdBRWFyQixLQUFLO0FBQUFzQixPQUFBLENBQUE3QixPQUFBLEdBQUE0QixRQUFBO0FBQ3BCRSxNQUFNLENBQUNELE9BQU8sR0FBR3RCLEtBQUsifQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9uZXluIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIlNISUZUX0xFRlRfMzIiLCJTSElGVF9SSUdIVF8zMiIsIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIkRBVEFfTEVOR1RIIiwiTW9uZXkiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiTW9uZXlOIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJwYXJhbWV0ZXIiLCJvcHRpb25zIiwidmFsdWUiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlSW50MzJMRSIsIk1hdGgiLCJmbG9vciIsInZhbGlkYXRlIiwicGFyc2VGbG9hdCIsImlzTmFOIiwiVHlwZUVycm9yIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvbW9uZXkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgTW9uZXlOIGZyb20gJy4vbW9uZXluJztcblxuY29uc3QgU0hJRlRfTEVGVF8zMiA9ICgxIDw8IDE2KSAqICgxIDw8IDE2KTtcbmNvbnN0IFNISUZUX1JJR0hUXzMyID0gMSAvIFNISUZUX0xFRlRfMzI7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcbmNvbnN0IERBVEFfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDhdKTtcblxuY29uc3QgTW9uZXk6IERhdGFUeXBlID0ge1xuICBpZDogMHgzQyxcbiAgdHlwZTogJ01PTkVZJyxcbiAgbmFtZTogJ01vbmV5JyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICdtb25leSc7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbzogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFtNb25leU4uaWQsIDB4MDhdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICByZXR1cm4gREFUQV9MRU5HVEg7XG4gIH0sXG5cbiAgKiBnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgKiAxMDAwMDtcblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg4KTtcbiAgICBidWZmZXIud3JpdGVJbnQzMkxFKE1hdGguZmxvb3IodmFsdWUgKiBTSElGVF9SSUdIVF8zMiksIDApO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUodmFsdWUgJiAtMSwgNCk7XG4gICAgeWllbGQgYnVmZmVyO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IG51bWJlciB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgdmFsdWUgPSBwYXJzZUZsb2F0KHZhbHVlKTtcbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIG51bWJlci4nKTtcbiAgICB9XG4gICAgLy8gbW9uZXnvvJogLTkyMjMzNzIwMzY4NTQ3Ny41ODA4IHRvIDkyMjMzNzIwMzY4NTQ3Ny41ODA3XG4gICAgLy8gaW4gamF2YXNjcmlwdCAtOTIyMzM3MjAzNjg1NDc3LjU4MDggPT09IC05MjIzMzcyMDM2ODU0NzcuNlxuICAgIC8vICAgICAgICAgICAgICAgIDkyMjMzNzIwMzY4NTQ3Ny41ODA3ID09PSA5MjIzMzcyMDM2ODU0NzcuNlxuICAgIC8vIGphdmFzY3JpcHQgbnVtYmVyIGRvZXNuJ3QgaGF2ZSBlbm91Z2ggcHJlY2lzaW9uLlxuICAgIGlmICh2YWx1ZSA8IC05MjIzMzcyMDM2ODU0NzcuNiB8fCB2YWx1ZSA+IDkyMjMzNzIwMzY4NTQ3Ny42KSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdWYWx1ZSBtdXN0IGJlIGJldHdlZW4gLTkyMjMzNzIwMzY4NTQ3Ny41ODA4IGFuZCA5MjIzMzcyMDM2ODU0NzcuNTgwNywgaW5jbHVzaXZlLicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgTW9uZXk7XG5tb2R1bGUuZXhwb3J0cyA9IE1vbmV5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBOEIsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFOUIsTUFBTUcsYUFBYSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQzNDLE1BQU1DLGNBQWMsR0FBRyxDQUFDLEdBQUdELGFBQWE7QUFFeEMsTUFBTUUsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLE1BQU1DLFdBQVcsR0FBR0YsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV2QyxNQUFNRSxLQUFlLEdBQUc7RUFDdEJDLEVBQUUsRUFBRSxJQUFJO0VBQ1JDLElBQUksRUFBRSxPQUFPO0VBQ2JDLElBQUksRUFBRSxPQUFPO0VBRWJDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FBTyxPQUFPO0VBQ2hCLENBQUM7RUFFREMsZ0JBQWdCLEVBQUUsU0FBQUEsQ0FBQSxFQUFXO0lBQzNCLE9BQU9SLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNRLGVBQU0sQ0FBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0VBQ3ZDLENBQUM7RUFFRE0sdUJBQXVCQSxDQUFDQyxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUMxQyxJQUFJRCxTQUFTLENBQUNFLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDM0IsT0FBT2QsV0FBVztJQUNwQjtJQUVBLE9BQU9HLFdBQVc7RUFDcEIsQ0FBQztFQUVELENBQUVZLHFCQUFxQkEsQ0FBQ0gsU0FBUyxFQUFFQyxPQUFPLEVBQUU7SUFDMUMsSUFBSUQsU0FBUyxDQUFDRSxLQUFLLElBQUksSUFBSSxFQUFFO01BQzNCO0lBQ0Y7SUFFQSxNQUFNQSxLQUFLLEdBQUdGLFNBQVMsQ0FBQ0UsS0FBSyxHQUFHLEtBQUs7SUFFckMsTUFBTUUsTUFBTSxHQUFHZixNQUFNLENBQUNnQixLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzlCRCxNQUFNLENBQUNFLFlBQVksQ0FBQ0MsSUFBSSxDQUFDQyxLQUFLLENBQUNOLEtBQUssR0FBR2YsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzFEaUIsTUFBTSxDQUFDRSxZQUFZLENBQUNKLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEMsTUFBTUUsTUFBTTtFQUNkLENBQUM7RUFFREssUUFBUSxFQUFFLFNBQUFBLENBQVNQLEtBQUssRUFBaUI7SUFDdkMsSUFBSUEsS0FBSyxJQUFJLElBQUksRUFBRTtNQUNqQixPQUFPLElBQUk7SUFDYjtJQUNBQSxLQUFLLEdBQUdRLFVBQVUsQ0FBQ1IsS0FBSyxDQUFDO0lBQ3pCLElBQUlTLEtBQUssQ0FBQ1QsS0FBSyxDQUFDLEVBQUU7TUFDaEIsTUFBTSxJQUFJVSxTQUFTLENBQUMsaUJBQWlCLENBQUM7SUFDeEM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLElBQUlWLEtBQUssR0FBRyxDQUFDLGlCQUFpQixJQUFJQSxLQUFLLEdBQUcsaUJBQWlCLEVBQUU7TUFDM0QsTUFBTSxJQUFJVSxTQUFTLENBQUMsa0ZBQWtGLENBQUM7SUFDekc7SUFFQSxPQUFPVixLQUFLO0VBQ2Q7QUFDRixDQUFDO0FBQUMsSUFBQVcsUUFBQSxHQUVhckIsS0FBSztBQUFBc0IsT0FBQSxDQUFBN0IsT0FBQSxHQUFBNEIsUUFBQTtBQUNwQkUsTUFBTSxDQUFDRCxPQUFPLEdBQUd0QixLQUFLIn0=

@@ -11,2 +11,4 @@ "use strict";

const UTC_EPOCH_DATE = new Date(Date.UTC(1900, 0, 1));
const MIN_DATE = new Date(1900, 1, 1);
const MAX_DATE = new Date(2079, 5, 6, 23, 59, 59, 0);
const DATA_LENGTH = Buffer.from([0x04]);

@@ -48,3 +50,3 @@ const NULL_LENGTH = Buffer.from([0x00]);

},
validate: function (value) {
validate: function (value, collation, options) {
if (value == null) {

@@ -56,2 +58,9 @@ return null;

}
value = value;
if (options && options.useUTC) {
value = new Date(value.toUTCString());
}
if (value < MIN_DATE || value > MAX_DATE) {
throw new TypeError('Out of range.');
}
if (isNaN(value)) {

@@ -66,2 +75,2 @@ throw new TypeError('Invalid date.');

module.exports = SmallDateTime;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZXRpbWVuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJEYXRlIiwiVVRDX0VQT0NIX0RBVEUiLCJVVEMiLCJEQVRBX0xFTkdUSCIsIkJ1ZmZlciIsImZyb20iLCJOVUxMX0xFTkdUSCIsIlNtYWxsRGF0ZVRpbWUiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJnZW5lcmF0ZVR5cGVJbmZvIiwiRGF0ZVRpbWVOIiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJwYXJhbWV0ZXIiLCJvcHRpb25zIiwidmFsdWUiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJidWZmZXIiLCJhbGxvYyIsImRheXMiLCJkc3REaWZmIiwibWludXRlcyIsInVzZVVUQyIsIk1hdGgiLCJmbG9vciIsImdldFRpbWUiLCJnZXRVVENIb3VycyIsImdldFVUQ01pbnV0ZXMiLCJnZXRUaW1lem9uZU9mZnNldCIsImdldEhvdXJzIiwiZ2V0TWludXRlcyIsIndyaXRlVUludDE2TEUiLCJ2YWxpZGF0ZSIsInBhcnNlIiwiaXNOYU4iLCJUeXBlRXJyb3IiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YS10eXBlcy9zbWFsbGRhdGV0aW1lLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuaW1wb3J0IERhdGVUaW1lTiBmcm9tICcuL2RhdGV0aW1lbic7XG5cbmNvbnN0IEVQT0NIX0RBVEUgPSBuZXcgRGF0ZSgxOTAwLCAwLCAxKTtcbmNvbnN0IFVUQ19FUE9DSF9EQVRFID0gbmV3IERhdGUoRGF0ZS5VVEMoMTkwMCwgMCwgMSkpO1xuXG5jb25zdCBEQVRBX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDA0XSk7XG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweDAwXSk7XG5cbmNvbnN0IFNtYWxsRGF0ZVRpbWU6IERhdGFUeXBlID0ge1xuICBpZDogMHgzQSxcbiAgdHlwZTogJ0RBVEVUSU00JyxcbiAgbmFtZTogJ1NtYWxsRGF0ZVRpbWUnLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gJ3NtYWxsZGF0ZXRpbWUnO1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFtEYXRlVGltZU4uaWQsIDB4MDRdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICByZXR1cm4gREFUQV9MRU5HVEg7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhOiBmdW5jdGlvbioocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuXG4gICAgbGV0IGRheXMsIGRzdERpZmYsIG1pbnV0ZXM7XG4gICAgaWYgKG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICBkYXlzID0gTWF0aC5mbG9vcigocGFyYW1ldGVyLnZhbHVlLmdldFRpbWUoKSAtIFVUQ19FUE9DSF9EQVRFLmdldFRpbWUoKSkgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpO1xuICAgICAgbWludXRlcyA9IChwYXJhbWV0ZXIudmFsdWUuZ2V0VVRDSG91cnMoKSAqIDYwKSArIHBhcmFtZXRlci52YWx1ZS5nZXRVVENNaW51dGVzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGRzdERpZmYgPSAtKHBhcmFtZXRlci52YWx1ZS5nZXRUaW1lem9uZU9mZnNldCgpIC0gRVBPQ0hfREFURS5nZXRUaW1lem9uZU9mZnNldCgpKSAqIDYwICogMTAwMDtcbiAgICAgIGRheXMgPSBNYXRoLmZsb29yKChwYXJhbWV0ZXIudmFsdWUuZ2V0VGltZSgpIC0gRVBPQ0hfREFURS5nZXRUaW1lKCkgKyBkc3REaWZmKSAvICgxMDAwICogNjAgKiA2MCAqIDI0KSk7XG4gICAgICBtaW51dGVzID0gKHBhcmFtZXRlci52YWx1ZS5nZXRIb3VycygpICogNjApICsgcGFyYW1ldGVyLnZhbHVlLmdldE1pbnV0ZXMoKTtcbiAgICB9XG5cbiAgICBidWZmZXIud3JpdGVVSW50MTZMRShkYXlzLCAwKTtcbiAgICBidWZmZXIud3JpdGVVSW50MTZMRShtaW51dGVzLCAyKTtcblxuICAgIHlpZWxkIGJ1ZmZlcjtcbiAgfSxcblxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWUpOiBudWxsIHwgRGF0ZSB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkpIHtcbiAgICAgIHZhbHVlID0gbmV3IERhdGUoRGF0ZS5wYXJzZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIGlmIChpc05hTih2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgZGF0ZS4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFNtYWxsRGF0ZVRpbWU7XG5tb2R1bGUuZXhwb3J0cyA9IFNtYWxsRGF0ZVRpbWU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLFVBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUFvQyxTQUFBRCx1QkFBQUUsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUVwQyxNQUFNRyxVQUFVLEdBQUcsSUFBSUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZDLE1BQU1DLGNBQWMsR0FBRyxJQUFJRCxJQUFJLENBQUNBLElBQUksQ0FBQ0UsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFFckQsTUFBTUMsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLE1BQU1DLFdBQVcsR0FBR0YsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV2QyxNQUFNRSxhQUF1QixHQUFHO0VBQzlCQyxFQUFFLEVBQUUsSUFBSTtFQUNSQyxJQUFJLEVBQUUsVUFBVTtFQUNoQkMsSUFBSSxFQUFFLGVBQWU7RUFFckJDLFdBQVcsRUFBRSxTQUFBQSxDQUFBLEVBQVc7SUFDdEIsT0FBTyxlQUFlO0VBQ3hCLENBQUM7RUFFREMsZ0JBQWdCQSxDQUFBLEVBQUc7SUFDakIsT0FBT1IsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQ1Esa0JBQVMsQ0FBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0VBQzFDLENBQUM7RUFFRE0sdUJBQXVCQSxDQUFDQyxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUMxQyxJQUFJRCxTQUFTLENBQUNFLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDM0IsT0FBT1gsV0FBVztJQUNwQjtJQUVBLE9BQU9ILFdBQVc7RUFDcEIsQ0FBQztFQUVEZSxxQkFBcUIsRUFBRSxVQUFBQSxDQUFVSCxTQUFTLEVBQUVDLE9BQU8sRUFBRTtJQUNuRCxJQUFJRCxTQUFTLENBQUNFLEtBQUssSUFBSSxJQUFJLEVBQUU7TUFDM0I7SUFDRjtJQUVBLE1BQU1FLE1BQU0sR0FBR2YsTUFBTSxDQUFDZ0IsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUU5QixJQUFJQyxJQUFJLEVBQUVDLE9BQU8sRUFBRUMsT0FBTztJQUMxQixJQUFJUCxPQUFPLENBQUNRLE1BQU0sRUFBRTtNQUNsQkgsSUFBSSxHQUFHSSxJQUFJLENBQUNDLEtBQUssQ0FBQyxDQUFDWCxTQUFTLENBQUNFLEtBQUssQ0FBQ1UsT0FBTyxDQUFDLENBQUMsR0FBRzFCLGNBQWMsQ0FBQzBCLE9BQU8sQ0FBQyxDQUFDLEtBQUssSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7TUFDakdKLE9BQU8sR0FBSVIsU0FBUyxDQUFDRSxLQUFLLENBQUNXLFdBQVcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFJYixTQUFTLENBQUNFLEtBQUssQ0FBQ1ksYUFBYSxDQUFDLENBQUM7SUFDbEYsQ0FBQyxNQUFNO01BQ0xQLE9BQU8sR0FBRyxFQUFFUCxTQUFTLENBQUNFLEtBQUssQ0FBQ2EsaUJBQWlCLENBQUMsQ0FBQyxHQUFHL0IsVUFBVSxDQUFDK0IsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUk7TUFDN0ZULElBQUksR0FBR0ksSUFBSSxDQUFDQyxLQUFLLENBQUMsQ0FBQ1gsU0FBUyxDQUFDRSxLQUFLLENBQUNVLE9BQU8sQ0FBQyxDQUFDLEdBQUc1QixVQUFVLENBQUM0QixPQUFPLENBQUMsQ0FBQyxHQUFHTCxPQUFPLEtBQUssSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7TUFDdkdDLE9BQU8sR0FBSVIsU0FBUyxDQUFDRSxLQUFLLENBQUNjLFFBQVEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFJaEIsU0FBUyxDQUFDRSxLQUFLLENBQUNlLFVBQVUsQ0FBQyxDQUFDO0lBQzVFO0lBRUFiLE1BQU0sQ0FBQ2MsYUFBYSxDQUFDWixJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdCRixNQUFNLENBQUNjLGFBQWEsQ0FBQ1YsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUVoQyxNQUFNSixNQUFNO0VBQ2QsQ0FBQztFQUVEZSxRQUFRLEVBQUUsU0FBQUEsQ0FBU2pCLEtBQUssRUFBZTtJQUNyQyxJQUFJQSxLQUFLLElBQUksSUFBSSxFQUFFO01BQ2pCLE9BQU8sSUFBSTtJQUNiO0lBRUEsSUFBSSxFQUFFQSxLQUFLLFlBQVlqQixJQUFJLENBQUMsRUFBRTtNQUM1QmlCLEtBQUssR0FBRyxJQUFJakIsSUFBSSxDQUFDQSxJQUFJLENBQUNtQyxLQUFLLENBQUNsQixLQUFLLENBQUMsQ0FBQztJQUNyQztJQUVBLElBQUltQixLQUFLLENBQUNuQixLQUFLLENBQUMsRUFBRTtNQUNoQixNQUFNLElBQUlvQixTQUFTLENBQUMsZUFBZSxDQUFDO0lBQ3RDO0lBRUEsT0FBT3BCLEtBQUs7RUFDZDtBQUNGLENBQUM7QUFBQyxJQUFBcUIsUUFBQSxHQUVhL0IsYUFBYTtBQUFBZ0MsT0FBQSxDQUFBekMsT0FBQSxHQUFBd0MsUUFBQTtBQUM1QkUsTUFBTSxDQUFDRCxPQUFPLEdBQUdoQyxhQUFhIn0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZXRpbWVuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkVQT0NIX0RBVEUiLCJEYXRlIiwiVVRDX0VQT0NIX0RBVEUiLCJVVEMiLCJNSU5fREFURSIsIk1BWF9EQVRFIiwiREFUQV9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiTlVMTF9MRU5HVEgiLCJTbWFsbERhdGVUaW1lIiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwiZ2VuZXJhdGVUeXBlSW5mbyIsIkRhdGVUaW1lTiIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwicGFyYW1ldGVyIiwib3B0aW9ucyIsInZhbHVlIiwiZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhIiwiYnVmZmVyIiwiYWxsb2MiLCJkYXlzIiwiZHN0RGlmZiIsIm1pbnV0ZXMiLCJ1c2VVVEMiLCJNYXRoIiwiZmxvb3IiLCJnZXRUaW1lIiwiZ2V0VVRDSG91cnMiLCJnZXRVVENNaW51dGVzIiwiZ2V0VGltZXpvbmVPZmZzZXQiLCJnZXRIb3VycyIsImdldE1pbnV0ZXMiLCJ3cml0ZVVJbnQxNkxFIiwidmFsaWRhdGUiLCJjb2xsYXRpb24iLCJwYXJzZSIsInRvVVRDU3RyaW5nIiwiVHlwZUVycm9yIiwiaXNOYU4iLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YS10eXBlcy9zbWFsbGRhdGV0aW1lLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuaW1wb3J0IERhdGVUaW1lTiBmcm9tICcuL2RhdGV0aW1lbic7XG5cbmNvbnN0IEVQT0NIX0RBVEUgPSBuZXcgRGF0ZSgxOTAwLCAwLCAxKTtcbmNvbnN0IFVUQ19FUE9DSF9EQVRFID0gbmV3IERhdGUoRGF0ZS5VVEMoMTkwMCwgMCwgMSkpO1xuXG5jb25zdCBNSU5fREFURSA9IG5ldyBEYXRlKDE5MDAsIDEsIDEpO1xuY29uc3QgTUFYX0RBVEUgPSBuZXcgRGF0ZSgyMDc5LCA1LCA2LCAyMywgNTksIDU5LCAwKTtcblxuY29uc3QgREFUQV9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwNF0pO1xuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuXG5jb25zdCBTbWFsbERhdGVUaW1lOiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4M0EsXG4gIHR5cGU6ICdEQVRFVElNNCcsXG4gIG5hbWU6ICdTbWFsbERhdGVUaW1lJyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICdzbWFsbGRhdGV0aW1lJztcbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKCkge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbShbRGF0ZVRpbWVOLmlkLCAweDA0XSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgcmV0dXJuIERBVEFfTEVOR1RIO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyRGF0YTogZnVuY3Rpb24qKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcblxuICAgIGxldCBkYXlzOiBudW1iZXIsIGRzdERpZmY6IG51bWJlciwgbWludXRlczogbnVtYmVyO1xuICAgIGlmIChvcHRpb25zLnVzZVVUQykge1xuICAgICAgZGF5cyA9IE1hdGguZmxvb3IoKHBhcmFtZXRlci52YWx1ZS5nZXRUaW1lKCkgLSBVVENfRVBPQ0hfREFURS5nZXRUaW1lKCkpIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKTtcbiAgICAgIG1pbnV0ZXMgPSAocGFyYW1ldGVyLnZhbHVlLmdldFVUQ0hvdXJzKCkgKiA2MCkgKyBwYXJhbWV0ZXIudmFsdWUuZ2V0VVRDTWludXRlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkc3REaWZmID0gLShwYXJhbWV0ZXIudmFsdWUuZ2V0VGltZXpvbmVPZmZzZXQoKSAtIEVQT0NIX0RBVEUuZ2V0VGltZXpvbmVPZmZzZXQoKSkgKiA2MCAqIDEwMDA7XG4gICAgICBkYXlzID0gTWF0aC5mbG9vcigocGFyYW1ldGVyLnZhbHVlLmdldFRpbWUoKSAtIEVQT0NIX0RBVEUuZ2V0VGltZSgpICsgZHN0RGlmZikgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpO1xuICAgICAgbWludXRlcyA9IChwYXJhbWV0ZXIudmFsdWUuZ2V0SG91cnMoKSAqIDYwKSArIHBhcmFtZXRlci52YWx1ZS5nZXRNaW51dGVzKCk7XG4gICAgfVxuXG4gICAgYnVmZmVyLndyaXRlVUludDE2TEUoZGF5cywgMCk7XG4gICAgYnVmZmVyLndyaXRlVUludDE2TEUobWludXRlcywgMik7XG5cbiAgICB5aWVsZCBidWZmZXI7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlLCBjb2xsYXRpb24sIG9wdGlvbnMpOiBudWxsIHwgRGF0ZSB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkpIHtcbiAgICAgIHZhbHVlID0gbmV3IERhdGUoRGF0ZS5wYXJzZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHZhbHVlID0gdmFsdWUgYXMgRGF0ZTtcblxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMudXNlVVRDKSB7XG4gICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlLnRvVVRDU3RyaW5nKCkpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IE1JTl9EQVRFIHx8IHZhbHVlID4gTUFYX0RBVEUpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ091dCBvZiByYW5nZS4nKTtcbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIGRhdGUuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTbWFsbERhdGVUaW1lO1xubW9kdWxlLmV4cG9ydHMgPSBTbWFsbERhdGVUaW1lO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxVQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBb0MsU0FBQUQsdUJBQUFFLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFcEMsTUFBTUcsVUFBVSxHQUFHLElBQUlDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUN2QyxNQUFNQyxjQUFjLEdBQUcsSUFBSUQsSUFBSSxDQUFDQSxJQUFJLENBQUNFLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBRXJELE1BQU1DLFFBQVEsR0FBRyxJQUFJSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDckMsTUFBTUksUUFBUSxHQUFHLElBQUlKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFcEQsTUFBTUssV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3ZDLE1BQU1DLFdBQVcsR0FBR0YsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV2QyxNQUFNRSxhQUF1QixHQUFHO0VBQzlCQyxFQUFFLEVBQUUsSUFBSTtF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

@@ -10,3 +10,3 @@ "use strict";

var _net = _interopRequireDefault(require("net"));
var punycode = _interopRequireWildcard(require("punycode"));
var punycode = _interopRequireWildcard(require("punycode/"));
var _abortError = _interopRequireDefault(require("./errors/abort-error"));

@@ -86,2 +86,2 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGdyYW0iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9uZXQiLCJwdW55Y29kZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Fib3J0RXJyb3IiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0Iiwic2VuZEluUGFyYWxsZWwiLCJhZGRyZXNzZXMiLCJwb3J0IiwicmVxdWVzdCIsInNpZ25hbCIsImFib3J0ZWQiLCJBYm9ydEVycm9yIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJzb2NrZXRzIiwiZXJyb3JDb3VudCIsIm9uRXJyb3IiLCJlcnIiLCJsZW5ndGgiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25BYm9ydCIsImNsZWFyU29ja2V0cyIsIm9uTWVzc2FnZSIsIm1lc3NhZ2UiLCJzb2NrZXQiLCJyZW1vdmVMaXN0ZW5lciIsImNsb3NlIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9uY2UiLCJqIiwidWRwVHlwZSIsImZhbWlseSIsImRncmFtIiwiY3JlYXRlU29ja2V0IiwicHVzaCIsIm9uIiwic2VuZCIsImFkZHJlc3MiLCJzZW5kTWVzc2FnZSIsImhvc3QiLCJsb29rdXAiLCJuZXQiLCJpc0lQIiwiaXNJUHY2IiwidG9BU0NJSSIsImFsbCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9zZW5kZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRncmFtIGZyb20gJ2RncmFtJztcbmltcG9ydCBkbnMgZnJvbSAnZG5zJztcbmltcG9ydCBuZXQgZnJvbSAnbmV0JztcbmltcG9ydCAqIGFzIHB1bnljb2RlIGZyb20gJ3B1bnljb2RlJztcbmltcG9ydCB7IEFib3J0U2lnbmFsIH0gZnJvbSAnbm9kZS1hYm9ydC1jb250cm9sbGVyJztcblxuaW1wb3J0IEFib3J0RXJyb3IgZnJvbSAnLi9lcnJvcnMvYWJvcnQtZXJyb3InO1xuXG50eXBlIExvb2t1cEZ1bmN0aW9uID0gKGhvc3RuYW1lOiBzdHJpbmcsIG9wdGlvbnM6IGRucy5Mb29rdXBBbGxPcHRpb25zLCBjYWxsYmFjazogKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uIHwgbnVsbCwgYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdKSA9PiB2b2lkKSA9PiB2b2lkO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZEluUGFyYWxsZWwoYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdLCBwb3J0OiBudW1iZXIsIHJlcXVlc3Q6IEJ1ZmZlciwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xuICBpZiAoc2lnbmFsLmFib3J0ZWQpIHtcbiAgICB0aHJvdyBuZXcgQWJvcnRFcnJvcigpO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPEJ1ZmZlcj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IHNvY2tldHM6IGRncmFtLlNvY2tldFtdID0gW107XG5cbiAgICBsZXQgZXJyb3JDb3VudCA9IDA7XG5cbiAgICBjb25zdCBvbkVycm9yID0gKGVycjogRXJyb3IpID0+IHtcbiAgICAgIGVycm9yQ291bnQrKztcblxuICAgICAgaWYgKGVycm9yQ291bnQgPT09IGFkZHJlc3Nlcy5sZW5ndGgpIHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG4gICAgICAgIGNsZWFyU29ja2V0cygpO1xuXG4gICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCBvbk1lc3NhZ2UgPSAobWVzc2FnZTogQnVmZmVyKSA9PiB7XG4gICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcbiAgICAgIGNsZWFyU29ja2V0cygpO1xuXG4gICAgICByZXNvbHZlKG1lc3NhZ2UpO1xuICAgIH07XG5cbiAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgY2xlYXJTb2NrZXRzKCk7XG5cbiAgICAgIHJlamVjdChuZXcgQWJvcnRFcnJvcigpKTtcbiAgICB9O1xuXG4gICAgY29uc3QgY2xlYXJTb2NrZXRzID0gKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCBzb2NrZXQgb2Ygc29ja2V0cykge1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25FcnJvcik7XG4gICAgICAgIHNvY2tldC5yZW1vdmVMaXN0ZW5lcignbWVzc2FnZScsIG9uTWVzc2FnZSk7XG4gICAgICAgIHNvY2tldC5jbG9zZSgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0LCB7IG9uY2U6IHRydWUgfSk7XG5cbiAgICBmb3IgKGxldCBqID0gMDsgaiA8IGFkZHJlc3Nlcy5sZW5ndGg7IGorKykge1xuICAgICAgY29uc3QgdWRwVHlwZSA9IGFkZHJlc3Nlc1tqXS5mYW1pbHkgPT09IDYgPyAndWRwNicgOiAndWRwNCc7XG5cbiAgICAgIGNvbnN0IHNvY2tldCA9IGRncmFtLmNyZWF0ZVNvY2tldCh1ZHBUeXBlKTtcbiAgICAgIHNvY2tldHMucHVzaChzb2NrZXQpO1xuICAgICAgc29ja2V0Lm9uKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgc29ja2V0Lm9uKCdtZXNzYWdlJywgb25NZXNzYWdlKTtcbiAgICAgIHNvY2tldC5zZW5kKHJlcXVlc3QsIDAsIHJlcXVlc3QubGVuZ3RoLCBwb3J0LCBhZGRyZXNzZXNbal0uYWRkcmVzcyk7XG4gICAgfVxuICB9KTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRNZXNzYWdlKGhvc3Q6IHN0cmluZywgcG9ydDogbnVtYmVyLCBsb29rdXA6IExvb2t1cEZ1bmN0aW9uLCBzaWduYWw6IEFib3J0U2lnbmFsLCByZXF1ZXN0OiBCdWZmZXIpIHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIGxldCBhZGRyZXNzZXM6IGRucy5Mb29rdXBBZGRyZXNzW107XG5cbiAgaWYgKG5ldC5pc0lQKGhvc3QpKSB7XG4gICAgYWRkcmVzc2VzID0gW1xuICAgICAgeyBhZGRyZXNzOiBob3N0LCBmYW1pbHk6IG5ldC5pc0lQdjYoaG9zdCkgPyA2IDogNCB9XG4gICAgXTtcbiAgfSBlbHNlIHtcbiAgICBhZGRyZXNzZXMgPSBhd2FpdCBuZXcgUHJvbWlzZTxkbnMuTG9va3VwQWRkcmVzc1tdPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBvbkFib3J0ID0gKCkgPT4ge1xuICAgICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgICB9O1xuXG4gICAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgbG9va3VwKHB1bnljb2RlLnRvQVNDSUkoaG9zdCksIHsgYWxsOiB0cnVlIH0sIChlcnIsIGFkZHJlc3NlcykgPT4ge1xuICAgICAgICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBvbkFib3J0KTtcblxuICAgICAgICBlcnIgPyByZWplY3QoZXJyKSA6IHJlc29sdmUoYWRkcmVzc2VzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IHNlbmRJblBhcmFsbGVsKGFkZHJlc3NlcywgcG9ydCwgcmVxdWVzdCwgc2lnbmFsKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElB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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGdyYW0iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9uZXQiLCJwdW55Y29kZSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Fib3J0RXJyb3IiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0Iiwic2VuZEluUGFyYWxsZWwiLCJhZGRyZXNzZXMiLCJwb3J0IiwicmVxdWVzdCIsInNpZ25hbCIsImFib3J0ZWQiLCJBYm9ydEVycm9yIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJzb2NrZXRzIiwiZXJyb3JDb3VudCIsIm9uRXJyb3IiLCJlcnIiLCJsZW5ndGgiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25BYm9ydCIsImNsZWFyU29ja2V0cyIsIm9uTWVzc2FnZSIsIm1lc3NhZ2UiLCJzb2NrZXQiLCJyZW1vdmVMaXN0ZW5lciIsImNsb3NlIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9uY2UiLCJqIiwidWRwVHlwZSIsImZhbWlseSIsImRncmFtIiwiY3JlYXRlU29ja2V0IiwicHVzaCIsIm9uIiwic2VuZCIsImFkZHJlc3MiLCJzZW5kTWVzc2FnZSIsImhvc3QiLCJsb29rdXAiLCJuZXQiLCJpc0lQIiwiaXNJUHY2IiwidG9BU0NJSSIsImFsbCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9zZW5kZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRncmFtIGZyb20gJ2RncmFtJztcbmltcG9ydCBkbnMgZnJvbSAnZG5zJztcbmltcG9ydCBuZXQgZnJvbSAnbmV0JztcbmltcG9ydCAqIGFzIHB1bnljb2RlIGZyb20gJ3B1bnljb2RlLyc7XG5pbXBvcnQgeyBBYm9ydFNpZ25hbCB9IGZyb20gJ25vZGUtYWJvcnQtY29udHJvbGxlcic7XG5cbmltcG9ydCBBYm9ydEVycm9yIGZyb20gJy4vZXJyb3JzL2Fib3J0LWVycm9yJztcblxudHlwZSBMb29rdXBGdW5jdGlvbiA9IChob3N0bmFtZTogc3RyaW5nLCBvcHRpb25zOiBkbnMuTG9va3VwQWxsT3B0aW9ucywgY2FsbGJhY2s6IChlcnI6IE5vZGVKUy5FcnJub0V4Y2VwdGlvbiB8IG51bGwsIGFkZHJlc3NlczogZG5zLkxvb2t1cEFkZHJlc3NbXSkgPT4gdm9pZCkgPT4gdm9pZDtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbmRJblBhcmFsbGVsKGFkZHJlc3NlczogZG5zLkxvb2t1cEFkZHJlc3NbXSwgcG9ydDogbnVtYmVyLCByZXF1ZXN0OiBCdWZmZXIsIHNpZ25hbDogQWJvcnRTaWduYWwpIHtcbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgdGhyb3cgbmV3IEFib3J0RXJyb3IoKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBuZXcgUHJvbWlzZTxCdWZmZXI+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBjb25zdCBzb2NrZXRzOiBkZ3JhbS5Tb2NrZXRbXSA9IFtdO1xuXG4gICAgbGV0IGVycm9yQ291bnQgPSAwO1xuXG4gICAgY29uc3Qgb25FcnJvciA9IChlcnI6IEVycm9yKSA9PiB7XG4gICAgICBlcnJvckNvdW50Kys7XG5cbiAgICAgIGlmIChlcnJvckNvdW50ID09PSBhZGRyZXNzZXMubGVuZ3RoKSB7XG4gICAgICAgIHNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIG9uQWJvcnQpO1xuICAgICAgICBjbGVhclNvY2tldHMoKTtcblxuICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3Qgb25NZXNzYWdlID0gKG1lc3NhZ2U6IEJ1ZmZlcikgPT4ge1xuICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG4gICAgICBjbGVhclNvY2tldHMoKTtcblxuICAgICAgcmVzb2x2ZShtZXNzYWdlKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgIGNsZWFyU29ja2V0cygpO1xuXG4gICAgICByZWplY3QobmV3IEFib3J0RXJyb3IoKSk7XG4gICAgfTtcblxuICAgIGNvbnN0IGNsZWFyU29ja2V0cyA9ICgpID0+IHtcbiAgICAgIGZvciAoY29uc3Qgc29ja2V0IG9mIHNvY2tldHMpIHtcbiAgICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ21lc3NhZ2UnLCBvbk1lc3NhZ2UpO1xuICAgICAgICBzb2NrZXQuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCwgeyBvbmNlOiB0cnVlIH0pO1xuXG4gICAgZm9yIChsZXQgaiA9IDA7IGogPCBhZGRyZXNzZXMubGVuZ3RoOyBqKyspIHtcbiAgICAgIGNvbnN0IHVkcFR5cGUgPSBhZGRyZXNzZXNbal0uZmFtaWx5ID09PSA2ID8gJ3VkcDYnIDogJ3VkcDQnO1xuXG4gICAgICBjb25zdCBzb2NrZXQgPSBkZ3JhbS5jcmVhdGVTb2NrZXQodWRwVHlwZSk7XG4gICAgICBzb2NrZXRzLnB1c2goc29ja2V0KTtcbiAgICAgIHNvY2tldC5vbignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgIHNvY2tldC5vbignbWVzc2FnZScsIG9uTWVzc2FnZSk7XG4gICAgICBzb2NrZXQuc2VuZChyZXF1ZXN0LCAwLCByZXF1ZXN0Lmxlbmd0aCwgcG9ydCwgYWRkcmVzc2VzW2pdLmFkZHJlc3MpO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kTWVzc2FnZShob3N0OiBzdHJpbmcsIHBvcnQ6IG51bWJlciwgbG9va3VwOiBMb29rdXBGdW5jdGlvbiwgc2lnbmFsOiBBYm9ydFNpZ25hbCwgcmVxdWVzdDogQnVmZmVyKSB7XG4gIGlmIChzaWduYWwuYWJvcnRlZCkge1xuICAgIHRocm93IG5ldyBBYm9ydEVycm9yKCk7XG4gIH1cblxuICBsZXQgYWRkcmVzc2VzOiBkbnMuTG9va3VwQWRkcmVzc1tdO1xuXG4gIGlmIChuZXQuaXNJUChob3N0KSkge1xuICAgIGFkZHJlc3NlcyA9IFtcbiAgICAgIHsgYWRkcmVzczogaG9zdCwgZmFtaWx5OiBuZXQuaXNJUHY2KGhvc3QpID8gNiA6IDQgfVxuICAgIF07XG4gIH0gZWxzZSB7XG4gICAgYWRkcmVzc2VzID0gYXdhaXQgbmV3IFByb21pc2U8ZG5zLkxvb2t1cEFkZHJlc3NbXT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3Qgb25BYm9ydCA9ICgpID0+IHtcbiAgICAgICAgcmVqZWN0KG5ldyBBYm9ydEVycm9yKCkpO1xuICAgICAgfTtcblxuICAgICAgc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgIGxvb2t1cChwdW55Y29kZS50b0FTQ0lJKGhvc3QpLCB7IGFsbDogdHJ1ZSB9LCAoZXJyLCBhZGRyZXNzZXMpID0+IHtcbiAgICAgICAgc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0Jywgb25BYm9ydCk7XG5cbiAgICAgICAgZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGFkZHJlc3Nlcyk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBzZW5kSW5QYXJhbGxlbChhZGRyZXNzZXMsIHBvcnQsIHJlcXVlc3QsIHNpZ25hbCk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJ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

@@ -30,3 +30,3 @@ {

"license": "MIT",
"version": "16.6.1",
"version": "16.7.0",
"main": "./lib/tedious.js",

@@ -72,2 +72,3 @@ "repository": {

"@types/node": "^16.18.38",
"@types/punycode": "^2.1.3",
"@types/sprintf-js": "^1.1.2",

@@ -74,0 +75,0 @@ "@typescript-eslint/eslint-plugin": "^6.0.0",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc