tedious 13.0.5 → 14.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -86,11 +86,7 @@ const Char = {
86
86
  }
87
87
 
88
88
  if (typeof value !== 'string') {
89
- if (typeof value.toString !== 'function') {
90
- throw new TypeError('Invalid string.');
91
- }
92
-
93
- value = value.toString();
89
+ throw new TypeError('Invalid string.');
94
90
  }
95
91
 
96
92
  if (!collation) {
@@ -107,4 +103,4 @@ const Char = {
107
103
  var _default = Char;
108
104
  exports.default = _default;
109
105
  module.exports = Char;
110
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL2NoYXIudHMiXSwibmFtZXMiOlsiTlVMTF9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiQ2hhciIsImlkIiwidHlwZSIsIm5hbWUiLCJtYXhpbXVtTGVuZ3RoIiwiZGVjbGFyYXRpb24iLCJwYXJhbWV0ZXIiLCJ2YWx1ZSIsImxlbmd0aCIsIm91dHB1dCIsInJlc29sdmVMZW5ndGgiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVVSW50MTZMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwidG9TdHJpbmciLCJUeXBlRXJyb3IiLCJFcnJvciIsImNvZGVwYWdlIiwiaWNvbnYiLCJlbmNvZGUiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFHQSxNQUFNQSxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsQ0FBWixDQUFwQjtBQUVBLE1BQU1DLElBQTBDLEdBQUc7QUFDakRDLEVBQUFBLEVBQUUsRUFBRSxJQUQ2QztBQUVqREMsRUFBQUEsSUFBSSxFQUFFLFNBRjJDO0FBR2pEQyxFQUFBQSxJQUFJLEVBQUUsTUFIMkM7QUFJakRDLEVBQUFBLGFBQWEsRUFBRSxJQUprQztBQU1qREMsRUFBQUEsV0FBVyxFQUFFLFVBQVNDLFNBQVQsRUFBb0I7QUFDL0IsVUFBTUMsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCO0FBRUEsUUFBSUMsTUFBSjs7QUFDQSxRQUFJRixTQUFTLENBQUNFLE1BQWQsRUFBc0I7QUFDcEJBLE1BQUFBLE1BQU0sR0FBR0YsU0FBUyxDQUFDRSxNQUFuQjtBQUNELEtBRkQsTUFFTyxJQUFJRCxLQUFLLElBQUksSUFBYixFQUFtQjtBQUN4QkMsTUFBQUEsTUFBTSxHQUFHRCxLQUFLLENBQUNDLE1BQU4sSUFBZ0IsQ0FBekI7QUFDRCxLQUZNLE1BRUEsSUFBSUQsS0FBSyxLQUFLLElBQVYsSUFBa0IsQ0FBQ0QsU0FBUyxDQUFDRyxNQUFqQyxFQUF5QztBQUM5Q0QsTUFBQUEsTUFBTSxHQUFHLENBQVQ7QUFDRCxLQUZNLE1BRUE7QUFDTEEsTUFBQUEsTUFBTSxHQUFHLEtBQUtKLGFBQWQ7QUFDRDs7QUFFRCxRQUFJSSxNQUFNLEdBQUcsS0FBS0osYUFBbEIsRUFBaUM7QUFDL0IsYUFBTyxVQUFVSSxNQUFWLEdBQW1CLEdBQTFCO0FBQ0QsS0FGRCxNQUVPO0FBQ0wsYUFBTyxVQUFVLEtBQUtKLGFBQWYsR0FBK0IsR0FBdEM7QUFDRDtBQUNGLEdBekJnRDtBQTJCakQ7QUFDQU0sRUFBQUEsYUFBYSxFQUFFLFVBQVNKLFNBQVQsRUFBb0I7QUFDakMsVUFBTUMsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCOztBQUVBLFFBQUlELFNBQVMsQ0FBQ0UsTUFBVixJQUFvQixJQUF4QixFQUE4QjtBQUM1QixhQUFPRixTQUFTLENBQUNFLE1BQWpCO0FBQ0QsS0FGRCxNQUVPLElBQUlELEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ3hCLGFBQU9BLEtBQUssQ0FBQ0MsTUFBTixJQUFnQixDQUF2QjtBQUNELEtBRk0sTUFFQTtBQUNMLGFBQU8sS0FBS0osYUFBWjtBQUNEO0FBQ0YsR0F0Q2dEOztBQXdDakRPLEVBQUFBLGdCQUFnQixDQUFDTCxTQUFELEVBQVk7QUFDMUIsVUFBTU0sTUFBTSxHQUFHZCxNQUFNLENBQUNlLEtBQVAsQ0FBYSxDQUFiLENBQWY7QUFDQUQsSUFBQUEsTUFBTSxDQUFDRSxVQUFQLENBQWtCLEtBQUtiLEVBQXZCLEVBQTJCLENBQTNCO0FBQ0FXLElBQUFBLE1BQU0sQ0FBQ0csYUFBUCxDQUFxQlQsU0FBUyxDQUFDRSxNQUEvQixFQUF3QyxDQUF4Qzs7QUFFQSxRQUFJRixTQUFTLENBQUNVLFNBQWQsRUFBeUI7QUFDdkJWLE1BQUFBLFNBQVMsQ0FBQ1UsU0FBVixDQUFvQkMsUUFBcEIsR0FBK0JDLElBQS9CLENBQW9DTixNQUFwQyxFQUE0QyxDQUE1QyxFQUErQyxDQUEvQyxFQUFrRCxDQUFsRDtBQUNEOztBQUVELFdBQU9BLE1BQVA7QUFDRCxHQWxEZ0Q7O0FBb0RqRE8sRUFBQUEsdUJBQXVCLENBQUNiLFNBQUQsRUFBWWMsT0FBWixFQUFxQjtBQUMxQyxVQUFNYixLQUFLLEdBQUdELFNBQVMsQ0FBQ0MsS0FBeEI7O0FBRUEsUUFBSUEsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDakIsYUFBT1YsV0FBUDtBQUNEOztBQUVELFVBQU1lLE1BQU0sR0FBR2QsTUFBTSxDQUFDZSxLQUFQLENBQWEsQ0FBYixDQUFmO0FBQ0FELElBQUFBLE1BQU0sQ0FBQ0csYUFBUCxDQUFxQlIsS0FBSyxDQUFDQyxNQUEzQixFQUFtQyxDQUFuQztBQUNBLFdBQU9JLE1BQVA7QUFDRCxHQTlEZ0Q7O0FBZ0VqRCxHQUFFUyxxQkFBRixDQUF3QmYsU0FBeEIsRUFBbUNjLE9BQW5DLEVBQTRDO0FBQzFDLFFBQUlkLFNBQVMsQ0FBQ0MsS0FBVixJQUFtQixJQUF2QixFQUE2QjtBQUMzQjtBQUNEOztBQUVELFVBQU1ULE1BQU0sQ0FBQ0MsSUFBUCxDQUFZTyxTQUFTLENBQUNDLEtBQXRCLEVBQTZCLE9BQTdCLENBQU47QUFDRCxHQXRFZ0Q7O0FBd0VqRGUsRUFBQUEsUUFBUSxFQUFFLFVBQVNmLEtBQVQsRUFBZ0JTLFNBQWhCLEVBQTBDO0FBQ2xELFFBQUlULEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU8sSUFBUDtBQUNEOztBQUVELFFBQUksT0FBT0EsS0FBUCxLQUFpQixRQUFyQixFQUErQjtBQUM3QixVQUFJLE9BQU9BLEtBQUssQ0FBQ2dCLFFBQWIsS0FBMEIsVUFBOUIsRUFBMEM7QUFDeEMsY0FBTSxJQUFJQyxTQUFKLENBQWMsaUJBQWQsQ0FBTjtBQUNEOztBQUNEakIsTUFBQUEsS0FBSyxHQUFHQSxLQUFLLENBQUNnQixRQUFOLEVBQVI7QUFDRDs7QUFFRCxRQUFJLENBQUNQLFNBQUwsRUFBZ0I7QUFDZCxZQUFNLElBQUlTLEtBQUosQ0FBVSxnRUFBVixDQUFOO0FBQ0Q7O0FBRUQsUUFBSSxDQUFDVCxTQUFTLENBQUNVLFFBQWYsRUFBeUI7QUFDdkIsWUFBTSxJQUFJRCxLQUFKLENBQVUsNkRBQVYsQ0FBTjtBQUNEOztBQUVELFdBQU9FLG1CQUFNQyxNQUFOLENBQWFyQixLQUFiLEVBQW9CUyxTQUFTLENBQUNVLFFBQTlCLENBQVA7QUFDRDtBQTdGZ0QsQ0FBbkQ7ZUFnR2UxQixJOztBQUNmNkIsTUFBTSxDQUFDQyxPQUFQLEdBQWlCOUIsSUFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaWNvbnYgZnJvbSAnaWNvbnYtbGl0ZSc7XG5pbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkZdKTtcblxuY29uc3QgQ2hhcjogeyBtYXhpbXVtTGVuZ3RoOiBudW1iZXIgfSAmIERhdGFUeXBlID0ge1xuICBpZDogMHhBRixcbiAgdHlwZTogJ0JJR0NIQVInLFxuICBuYW1lOiAnQ2hhcicsXG4gIG1heGltdW1MZW5ndGg6IDgwMDAsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBsZXQgbGVuZ3RoO1xuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoKSB7XG4gICAgICBsZW5ndGggPSBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgbGVuZ3RoID0gdmFsdWUubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCAmJiAhcGFyYW1ldGVyLm91dHB1dCkge1xuICAgICAgbGVuZ3RoID0gMTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGVuZ3RoID0gdGhpcy5tYXhpbXVtTGVuZ3RoO1xuICAgIH1cblxuICAgIGlmIChsZW5ndGggPCB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIHJldHVybiAnY2hhcignICsgbGVuZ3RoICsgJyknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ2NoYXIoJyArIHRoaXMubWF4aW11bUxlbmd0aCArICcpJztcbiAgICB9XG4gIH0sXG5cbiAgLy8gUGFyYW1ldGVyRGF0YTxhbnk+IGlzIHRlbXBvcmFyeSBzb2x1dGlvbi4gVE9ETzogbmVlZCB0byB1bmRlcnN0YW5kIHdoYXQgdHlwZSBQYXJhbWV0ZXJEYXRhPC4uLj4gY2FuIGJlLlxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGggIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHBhcmFtZXRlci5sZW5ndGg7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdmFsdWUubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDgpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHRoaXMuaWQsIDApO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHBhcmFtZXRlci5sZW5ndGghLCAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDMsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDIpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHZhbHVlLmxlbmd0aCwgMCk7XG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB5aWVsZCBCdWZmZXIuZnJvbShwYXJhbWV0ZXIudmFsdWUsICdhc2NpaScpO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSwgY29sbGF0aW9uKTogQnVmZmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIHZhbHVlLnRvU3RyaW5nICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgc3RyaW5nLicpO1xuICAgICAgfVxuICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNvbGxhdGlvbiB3YXMgc2V0IGJ5IHRoZSBzZXJ2ZXIgZm9yIHRoZSBjdXJyZW50IGNvbm5lY3Rpb24uJyk7XG4gICAgfVxuXG4gICAgaWYgKCFjb2xsYXRpb24uY29kZXBhZ2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGNvbGxhdGlvbiBzZXQgYnkgdGhlIHNlcnZlciBoYXMgbm8gYXNzb2NpYXRlZCBlbmNvZGluZy4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaWNvbnYuZW5jb2RlKHZhbHVlLCBjb2xsYXRpb24uY29kZXBhZ2UpO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBDaGFyO1xubW9kdWxlLmV4cG9ydHMgPSBDaGFyO1xuIl19
106
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL2NoYXIudHMiXSwibmFtZXMiOlsiTlVMTF9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiQ2hhciIsImlkIiwidHlwZSIsIm5hbWUiLCJtYXhpbXVtTGVuZ3RoIiwiZGVjbGFyYXRpb24iLCJwYXJhbWV0ZXIiLCJ2YWx1ZSIsImxlbmd0aCIsIm91dHB1dCIsInJlc29sdmVMZW5ndGgiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVVSW50MTZMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwiVHlwZUVycm9yIiwiRXJyb3IiLCJjb2RlcGFnZSIsImljb252IiwiZW5jb2RlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBR0EsTUFBTUEsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLENBQVosQ0FBcEI7QUFFQSxNQUFNQyxJQUEwQyxHQUFHO0FBQ2pEQyxFQUFBQSxFQUFFLEVBQUUsSUFENkM7QUFFakRDLEVBQUFBLElBQUksRUFBRSxTQUYyQztBQUdqREMsRUFBQUEsSUFBSSxFQUFFLE1BSDJDO0FBSWpEQyxFQUFBQSxhQUFhLEVBQUUsSUFKa0M7QUFNakRDLEVBQUFBLFdBQVcsRUFBRSxVQUFTQyxTQUFULEVBQW9CO0FBQy9CLFVBQU1DLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4QjtBQUVBLFFBQUlDLE1BQUo7O0FBQ0EsUUFBSUYsU0FBUyxDQUFDRSxNQUFkLEVBQXNCO0FBQ3BCQSxNQUFBQSxNQUFNLEdBQUdGLFNBQVMsQ0FBQ0UsTUFBbkI7QUFDRCxLQUZELE1BRU8sSUFBSUQsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDeEJDLE1B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eUI7QUFDdkIsWUFBTSxJQUFJRCxLQUFKLENBQVUsNkRBQVYsQ0FBTjtBQUNEOztBQUVELFdBQU9FLG1CQUFNQyxNQUFOLENBQWFwQixLQUFiLEVBQW9CUyxTQUFTLENBQUNTLFFBQTlCLENBQVA7QUFDRDtBQTFGZ0QsQ0FBbkQ7ZUE2RmV6QixJOztBQUNmNEIsTUFBTSxDQUFDQyxPQUFQLEdBQWlCN0IsSUFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaWNvbnYgZnJvbSAnaWNvbnYtbGl0ZSc7XG5pbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkZdKTtcblxuY29uc3QgQ2hhcjogeyBtYXhpbXVtTGVuZ3RoOiBudW1iZXIgfSAmIERhdGFUeXBlID0ge1xuICBpZDogMHhBRixcbiAgdHlwZTogJ0JJR0NIQVInLFxuICBuYW1lOiAnQ2hhcicsXG4gIG1heGltdW1MZW5ndGg6IDgwMDAsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBsZXQgbGVuZ3RoO1xuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoKSB7XG4gICAgICBsZW5ndGggPSBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgbGVuZ3RoID0gdmFsdWUubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCAmJiAhcGFyYW1ldGVyLm91dHB1dCkge1xuICAgICAgbGVuZ3RoID0gMTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGVuZ3RoID0gdGhpcy5tYXhpbXVtTGVuZ3RoO1xuICAgIH1cblxuICAgIGlmIChsZW5ndGggPCB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIHJldHVybiAnY2hhcignICsgbGVuZ3RoICsgJyknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ2NoYXIoJyArIHRoaXMubWF4aW11bUxlbmd0aCArICcpJztcbiAgICB9XG4gIH0sXG5cbiAgLy8gUGFyYW1ldGVyRGF0YTxhbnk+IGlzIHRlbXBvcmFyeSBzb2x1dGlvbi4gVE9ETzogbmVlZCB0byB1bmRlcnN0YW5kIHdoYXQgdHlwZSBQYXJhbWV0ZXJEYXRhPC4uLj4gY2FuIGJlLlxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGggIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHBhcmFtZXRlci5sZW5ndGg7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdmFsdWUubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDgpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHRoaXMuaWQsIDApO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHBhcmFtZXRlci5sZW5ndGghLCAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDMsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDIpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHZhbHVlLmxlbmd0aCwgMCk7XG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB5aWVsZCBCdWZmZXIuZnJvbShwYXJhbWV0ZXIudmFsdWUsICdhc2NpaScpO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSwgY29sbGF0aW9uKTogQnVmZmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbGxhdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBjb2xsYXRpb24gd2FzIHNldCBieSB0aGUgc2VydmVyIGZvciB0aGUgY3VycmVudCBjb25uZWN0aW9uLicpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uLmNvZGVwYWdlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBjb2xsYXRpb24gc2V0IGJ5IHRoZSBzZXJ2ZXIgaGFzIG5vIGFzc29jaWF0ZWQgZW5jb2RpbmcuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGljb252LmVuY29kZSh2YWx1ZSwgY29sbGF0aW9uLmNvZGVwYWdlKTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgQ2hhcjtcbm1vZHVsZS5leHBvcnRzID0gQ2hhcjtcbiJdfQ==
@@ -102,11 +102,7 @@ const NChar = {
102
102
  }
103
103
 
104
104
  if (typeof value !== 'string') {
105
- if (typeof value.toString !== 'function') {
106
- throw new TypeError('Invalid string.');
107
- }
108
-
109
- value = value.toString();
105
+ throw new TypeError('Invalid string.');
110
106
  }
111
107
 
112
108
  return value;
@@ -115,4 +111,4 @@ const NChar = {
115
111
  var _default = NChar;
116
112
  exports.default = _default;
117
113
  module.exports = NChar;
118
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL25jaGFyLnRzIl0sIm5hbWVzIjpbIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIk5DaGFyIiwiaWQiLCJ0eXBlIiwibmFtZSIsIm1heGltdW1MZW5ndGgiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInZhbHVlIiwibGVuZ3RoIiwidG9TdHJpbmciLCJvdXRwdXQiLCJyZXNvbHZlTGVuZ3RoIiwiaXNCdWZmZXIiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVVSW50MTZMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImJ5dGVMZW5ndGgiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJ2YWxpZGF0ZSIsIlR5cGVFcnJvciIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLE1BQU1BLFdBQVcsR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUFaLENBQXBCO0FBRUEsTUFBTUMsS0FBMkMsR0FBRztBQUNsREMsRUFBQUEsRUFBRSxFQUFFLElBRDhDO0FBRWxEQyxFQUFBQSxJQUFJLEVBQUUsT0FGNEM7QUFHbERDLEVBQUFBLElBQUksRUFBRSxPQUg0QztBQUlsREMsRUFBQUEsYUFBYSxFQUFFLElBSm1DO0FBTWxEQyxFQUFBQSxXQUFXLEVBQUUsVUFBU0MsU0FBVCxFQUFvQjtBQUMvQjtBQUNBLFVBQU1DLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4QixDQUYrQixDQUVPOztBQUV0QyxRQUFJQyxNQUFKOztBQUNBLFFBQUlGLFNBQVMsQ0FBQ0UsTUFBZCxFQUFzQjtBQUNwQkEsTUFBQUEsTUFBTSxHQUFHRixTQUFTLENBQUNFLE1BQW5CO0FBQ0QsS0FGRCxNQUVPLElBQUlGLFNBQVMsQ0FBQ0MsS0FBVixJQUFt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LE1BQU0sQ0FBQ0csYUFBUCxDQUFxQlQsTUFBckIsRUFBNkIsQ0FBN0I7QUFDQSxhQUFPTSxNQUFQO0FBQ0Q7QUFDRixHQTdFaUQ7O0FBK0VsRCxHQUFFVSxxQkFBRixDQUF3QmxCLFNBQXhCLEVBQW1DZ0IsT0FBbkMsRUFBNEM7QUFDMUMsUUFBSWhCLFNBQVMsQ0FBQ0MsS0FBVixJQUFtQixJQUF2QixFQUE2QjtBQUMzQjtBQUNEOztBQUVELFVBQU1BLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4Qjs7QUFDQSxRQUFJQSxLQUFLLFlBQVlULE1BQXJCLEVBQTZCO0FBQzNCLFlBQU1TLEtBQU47QUFDRCxLQUZELE1BRU87QUFDTCxZQUFNVCxNQUFNLENBQUNDLElBQVAsQ0FBWVEsS0FBWixFQUFtQixNQUFuQixDQUFOO0FBQ0Q7QUFDRixHQTFGaUQ7O0FBNEZsRGtCLEVBQUFBLFFBQVEsRUFBRSxVQUFTbEIsS0FBVCxFQUErQjtBQUN2QyxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPLElBQVA7QUFDRDs7QUFDRCxRQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsVUFBSSxPQUFPQSxLQUFLLENBQUNFLFFBQWIsS0FBMEIsVUFBOUIsRUFBMEM7QUFDeEMsY0FBTSxJQUFJaUIsU0FBSixDQUFjLGlCQUFkLENBQU47QUFDRDs7QUFDRG5CLE1BQUFBLEtBQUssR0FBR0EsS0FBSyxDQUFDRSxRQUFOLEVBQVI7QUFDRDs7QUFDRCxXQUFPRixLQUFQO0FBQ0Q7QUF2R2lELENBQXBEO2VBMEdlUCxLOztBQUNmMkIsTUFBTSxDQUFDQyxPQUFQLEdBQWlCNUIsS0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkZdKTtcblxuY29uc3QgTkNoYXI6IERhdGFUeXBlICYgeyBtYXhpbXVtTGVuZ3RoOiBudW1iZXIgfSA9IHtcbiAgaWQ6IDB4RUYsXG4gIHR5cGU6ICdOQ0hBUicsXG4gIG5hbWU6ICdOQ2hhcicsXG4gIG1heGltdW1MZW5ndGg6IDQwMDAsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIC8vIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIG51bGwgfCBzdHJpbmcgfCB7IHRvU3RyaW5nKCk6IHN0cmluZyB9O1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIGFueTsgLy8gVGVtcG9yYXJ5IHNvbHV0aW9uLiBSZW1vdmUgJ2FueScgbGF0ZXIuXG5cbiAgICBsZXQgbGVuZ3RoO1xuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoKSB7XG4gICAgICBsZW5ndGggPSBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAocGFyYW1ldGVyLnZhbHVlICE9IG51bGwpIHtcbiAgICAgIGxlbmd0aCA9IHZhbHVlLnRvU3RyaW5nKCkubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIGlmIChwYXJhbWV0ZXIudmFsdWUgPT09IG51bGwgJiYgIXBhcmFtZXRlci5vdXRwdXQpIHtcbiAgICAgIGxlbmd0aCA9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxlbmd0aCA9IHRoaXMubWF4aW11bUxlbmd0aDtcbiAgICB9XG5cbiAgICBpZiAobGVuZ3RoIDwgdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICByZXR1cm4gJ25jaGFyKCcgKyBsZW5ndGggKyAnKSc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnbmNoYXIoJyArIHRoaXMubWF4aW11bUxlbmd0aCArICcpJztcbiAgICB9XG4gIH0sXG5cbiAgcmVzb2x2ZUxlbmd0aDogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgLy8gY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgbnVsbCB8IHN0cmluZyB8IHsgdG9TdHJpbmcoKTogc3RyaW5nIH07XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgYW55OyAvLyBUZW1wb3Jhcnkgc29sdXRpb24uIFJlbW92ZSAnYW55JyBsYXRlci5cblxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoICE9IG51bGwpIHtcbiAgICAgIHJldHVybiBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAocGFyYW1ldGVyLnZhbHVlICE9IG51bGwpIHtcbiAgICAgIGlmIChCdWZmZXIuaXNCdWZmZXIocGFyYW1ldGVyLnZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKHBhcmFtZXRlci52YWx1ZS5sZW5ndGggLyAyKSB8fCAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkubGVuZ3RoIHx8IDE7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm86IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg4KTtcbiAgICBidWZmZXIud3JpdGVVSW50OCh0aGlzLmlkLCAwKTtcbiAgICBidWZmZXIud3JpdGVVSW50MTZMRShwYXJhbWV0ZXIubGVuZ3RoISAqIDIsIDEpO1xuXG4gICAgaWYgKHBhcmFtZXRlci5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtZXRlci5jb2xsYXRpb24udG9CdWZmZXIoKS5jb3B5KGJ1ZmZlciwgMywgMCwgNSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICBjb25zdCB7IHZhbHVlIH0gPSBwYXJhbWV0ZXI7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQnVmZmVyKSB7XG4gICAgICBjb25zdCBsZW5ndGggPSB2YWx1ZS5sZW5ndGg7XG4gICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMik7XG5cbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKGxlbmd0aCwgMCk7XG5cbiAgICAgIHJldHVybiBidWZmZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKHZhbHVlLnRvU3RyaW5nKCksICd1Y3MyJyk7XG5cbiAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygyKTtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKGxlbmd0aCwgMCk7XG4gICAgICByZXR1cm4gYnVmZmVyO1xuICAgIH1cbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZTtcbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBCdWZmZXIpIHtcbiAgICAgIHlpZWxkIHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB5aWVsZCBCdWZmZXIuZnJvbSh2YWx1ZSwgJ3VjczInKTtcbiAgICB9XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZS50b1N0cmluZyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICAgIH1cbiAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBOQ2hhcjtcbm1vZHVsZS5leHBvcnRzID0gTkNoYXI7XG4iXX0=
114
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL25jaGFyLnRzIl0sIm5hbWVzIjpbIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIk5DaGFyIiwiaWQiLCJ0eXBlIiwibmFtZSIsIm1heGltdW1MZW5ndGgiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInZhbHVlIiwibGVuZ3RoIiwidG9TdHJpbmciLCJvdXRwdXQiLCJyZXNvbHZlTGVuZ3RoIiwiaXNCdWZmZXIiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVVSW50MTZMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImJ5dGVMZW5ndGgiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJ2YWxpZGF0ZSIsIlR5cGVFcnJvciIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLE1BQU1BLFdBQVcsR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUFaLENBQXBCO0FBRUEsTUFBTUMsS0FBMkMsR0FBRztBQUNsREMsRUFBQUEsRUFBRSxFQUFFLElBRDhDO0FBRWxEQyxFQUFBQSxJQUFJLEVBQUUsT0FGNEM7QUFHbERDLEVBQUFBLElBQUksRUFBRSxPQUg0QztBQUlsREMsRUFBQUEsYUFBYSxFQUFFLElBSm1DO0FBTWxEQyxFQUFBQSxXQUFXLEVBQUUsVUFBU0MsU0FBVCxFQUFvQjtBQUMvQjtBQUNBLFVBQU1DLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4QixDQUYrQixDQUVPOztBQUV0QyxRQUFJQyxNQUFKOztBQUNBLFFBQUlGLFNBQVMsQ0FBQ0UsTUFBZCxFQUFzQjtBQUNwQkEsTUFBQUEsTUFBTSxHQUFHRixTQUFTLENBQUNFLE1BQW5CO0FBQ0QsS0FGRCxNQUVPLElBQUlGLFNBQVMsQ0FBQ0MsS0FBVixJQUFt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LE1BQU0sQ0FBQ0csYUFBUCxDQUFxQlQsTUFBckIsRUFBNkIsQ0FBN0I7QUFDQSxhQUFPTSxNQUFQO0FBQ0Q7QUFDRixHQTdFaUQ7O0FBK0VsRCxHQUFFVSxxQkFBRixDQUF3QmxCLFNBQXhCLEVBQW1DZ0IsT0FBbkMsRUFBNEM7QUFDMUMsUUFBSWhCLFNBQVMsQ0FBQ0MsS0FBVixJQUFtQixJQUF2QixFQUE2QjtBQUMzQjtBQUNEOztBQUVELFVBQU1BLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4Qjs7QUFDQSxRQUFJQSxLQUFLLFlBQVlULE1BQXJCLEVBQTZCO0FBQzNCLFlBQU1TLEtBQU47QUFDRCxLQUZELE1BRU87QUFDTCxZQUFNVCxNQUFNLENBQUNDLElBQVAsQ0FBWVEsS0FBWixFQUFtQixNQUFuQixDQUFOO0FBQ0Q7QUFDRixHQTFGaUQ7O0FBNEZsRGtCLEVBQUFBLFFBQVEsRUFBRSxVQUFTbEIsS0FBVCxFQUErQjtBQUN2QyxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPLElBQVA7QUFDRDs7QUFFRCxRQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsWUFBTSxJQUFJbUIsU0FBSixDQUFjLGlCQUFkLENBQU47QUFDRDs7QUFFRCxXQUFPbkIsS0FBUDtBQUNEO0FBdEdpRCxDQUFwRDtlQXlHZVAsSzs7QUFDZjJCLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQjVCLEtBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuXG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweEZGLCAweEZGXSk7XG5cbmNvbnN0IE5DaGFyOiBEYXRhVHlwZSAmIHsgbWF4aW11bUxlbmd0aDogbnVtYmVyIH0gPSB7XG4gIGlkOiAweEVGLFxuICB0eXBlOiAnTkNIQVInLFxuICBuYW1lOiAnTkNoYXInLFxuICBtYXhpbXVtTGVuZ3RoOiA0MDAwLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICAvLyBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBudWxsIHwgc3RyaW5nIHwgeyB0b1N0cmluZygpOiBzdHJpbmcgfTtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBhbnk7IC8vIFRlbXBvcmFyeSBzb2x1dGlvbi4gUmVtb3ZlICdhbnknIGxhdGVyLlxuXG4gICAgbGV0IGxlbmd0aDtcbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCkge1xuICAgICAgbGVuZ3RoID0gcGFyYW1ldGVyLmxlbmd0aDtcbiAgICB9IGVsc2UgaWYgKHBhcmFtZXRlci52YWx1ZSAhPSBudWxsKSB7XG4gICAgICBsZW5ndGggPSB2YWx1ZS50b1N0cmluZygpLmxlbmd0aCB8fCAxO1xuICAgIH0gZWxzZSBpZiAocGFyYW1ldGVyLnZhbHVlID09PSBudWxsICYmICFwYXJhbWV0ZXIub3V0cHV0KSB7XG4gICAgICBsZW5ndGggPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZW5ndGggPSB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKGxlbmd0aCA8IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgcmV0dXJuICduY2hhcignICsgbGVuZ3RoICsgJyknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ25jaGFyKCcgKyB0aGlzLm1heGltdW1MZW5ndGggKyAnKSc7XG4gICAgfVxuICB9LFxuXG4gIHJlc29sdmVMZW5ndGg6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIC8vIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIG51bGwgfCBzdHJpbmcgfCB7IHRvU3RyaW5nKCk6IHN0cmluZyB9O1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIGFueTsgLy8gVGVtcG9yYXJ5IHNvbHV0aW9uLiBSZW1vdmUgJ2FueScgbGF0ZXIuXG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcGFyYW1ldGVyLmxlbmd0aDtcbiAgICB9IGVsc2UgaWYgKHBhcmFtZXRlci52YWx1ZSAhPSBudWxsKSB7XG4gICAgICBpZiAoQnVmZmVyLmlzQnVmZmVyKHBhcmFtZXRlci52YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChwYXJhbWV0ZXIudmFsdWUubGVuZ3RoIC8gMikgfHwgMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygpLmxlbmd0aCB8fCAxO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXhpbXVtTGVuZ3RoO1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoOCk7XG4gICAgYnVmZmVyLndyaXRlVUludDgodGhpcy5pZCwgMCk7XG4gICAgYnVmZmVyLndyaXRlVUludDE2TEUocGFyYW1ldGVyLmxlbmd0aCEgKiAyLCAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDMsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgY29uc3QgeyB2YWx1ZSB9ID0gcGFyYW1ldGVyO1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEJ1ZmZlcikge1xuICAgICAgY29uc3QgbGVuZ3RoID0gdmFsdWUubGVuZ3RoO1xuICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDIpO1xuXG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRShsZW5ndGgsIDApO1xuXG4gICAgICByZXR1cm4gYnVmZmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBsZW5ndGggPSBCdWZmZXIuYnl0ZUxlbmd0aCh2YWx1ZS50b1N0cmluZygpLCAndWNzMicpO1xuXG4gICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMik7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRShsZW5ndGgsIDApO1xuICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9XG4gIH0sXG5cbiAgKiBnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWU7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQnVmZmVyKSB7XG4gICAgICB5aWVsZCB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgeWllbGQgQnVmZmVyLmZyb20odmFsdWUsICd1Y3MyJyk7XG4gICAgfVxuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBzdHJpbmcuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBOQ2hhcjtcbm1vZHVsZS5leHBvcnRzID0gTkNoYXI7XG4iXX0=
@@ -58,11 +58,7 @@ const NText = {
58
58
  }
59
59
 
60
60
  if (typeof value !== 'string') {
61
- if (typeof value.toString !== 'function') {
62
- throw new TypeError('Invalid string.');
63
- }
64
-
65
- value = value.toString();
61
+ throw new TypeError('Invalid string.');
66
62
  }
67
63
 
68
64
  return value;
@@ -71,4 +67,4 @@ const NText = {
71
67
  var _default = NText;
72
68
  exports.default = _default;
73
69
  module.exports = NText;
74
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL250ZXh0LnRzIl0sIm5hbWVzIjpbIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIk5UZXh0IiwiaWQiLCJ0eXBlIiwibmFtZSIsImhhc1RhYmxlTmFtZSIsImRlY2xhcmF0aW9uIiwicmVzb2x2ZUxlbmd0aCIsInBhcmFtZXRlciIsInZhbHVlIiwibGVuZ3RoIiwiZ2VuZXJhdGVUeXBlSW5mbyIsIl9vcHRpb25zIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVJbnQzMkxFIiwiY29sbGF0aW9uIiwidG9CdWZmZXIiLCJjb3B5IiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiYnl0ZUxlbmd0aCIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInRvU3RyaW5nIiwidmFsaWRhdGUiLCJUeXBlRXJyb3IiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxNQUFNQSxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYSxJQUFiLEVBQW1CLElBQW5CLENBQVosQ0FBcEI7QUFFQSxNQUFNQyxLQUFlLEdBQUc7QUFDdEJDLEVBQUFBLEVBQUUsRUFBRSxJQURrQjtBQUV0QkMsRUFBQUEsSUFBSSxFQUFFLE9BRmdCO0FBR3RCQyxFQUFBQSxJQUFJLEVBQUUsT0FIZ0I7QUFLdEJDLEVBQUFBLFlBQVksRUFBRSxJQUxRO0FBT3RCQyxFQUFBQSxXQUFXLEVBQUUsWUFBVztBQUN0QixXQUFPLE9BQVA7QUFDRCxHQVRxQjtBQVd0QkMsRUFBQUEsYUFBYSxFQUFFLFVBQVNDLFNBQVQsRUFBb0I7QUFDakMsVUFBTUMsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCLENBRGlDLENBQ0s7O0FBRXRDLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU9BLEtBQUssQ0FBQ0MsTUFBYjtBQUNELEtBRkQsTUFFTztBQUNMLGFBQU8sQ0FBQyxDQUFSO0FBQ0Q7QUFDRixHQW5CcUI7O0FBcUJ0QkMsRUFBQUEsZ0JBQWdCLENBQUNILFNBQUQsRUFBWUksUUFBWixFQUFzQjtBQUNwQyxVQUFNQyxNQUFNLEdBQUdkLE1BQU0sQ0FBQ2UsS0FBUCxDQUFhLEVBQWIsQ0FBZjtBQUNBRCxJQUFBQSxNQUFNLENBQUNFLFVBQVAsQ0FBa0IsS0FBS2IsRUFBdkIsRUFBMkIsQ0FBM0I7QUFDQVcsSUFBQUEsTUFBTSxDQUFDRyxZQUFQLENBQW9CUixTQUFTLENBQUNFLE1BQTlCLEVBQXVDLENBQXZDOztBQUVBLFFBQUlGLFNBQVMsQ0FBQ1MsU0FBZCxFQUF5QjtBQUN2QlQsTUFBQUEsU0FBUyxDQUFDUyxTQUFWLENBQW9CQyxRQUFwQixHQUErQkMsSUFBL0IsQ0FBb0NOLE1BQXBDLEVBQTRDLENBQTVDLEVBQStDLENBQS9DLEVBQWtELENBQWxEO0FBQ0Q7O0FBRUQsV0FBT0EsTUFBUDtBQUNELEdBL0JxQjs7QUFpQ3RCTyxFQUFBQSx1QkFBdUIsQ0FBQ1osU0FBRCxFQUFZYSxPQUFaLEVBQXFCO0FBQzFDLFFBQUliLFNBQVMsQ0FBQ0MsS0FBVixJQUFtQixJQUF2QixFQUE2QjtBQUMzQixhQUFPWCxXQUFQO0FBQ0Q7O0FBRUQsVUFBTWUsTUFBTSxHQUFHZCxNQUFNLENBQUNlLEtBQVAsQ0FBYSxDQUFiLENBQWY7QUFDQUQsSUFBQUEsTUFBTSxDQUFDRyxZQUFQLENBQW9CakIsTUFBTSxDQUFDdUIsVUFBUCxDQUFrQmQsU0FBUyxDQUFDQyxLQUE1QixFQUFtQyxNQUFuQyxDQUFwQixFQUFnRSxDQUFoRTtBQUNBLFdBQU9JLE1BQVA7QUFDRCxHQXpDcUI7O0FBMkN0QlUsRUFBQUEscUJBQXFCLEVBQUUsV0FBVWYsU0FBVixFQUFxQmEsT0FBckIsRUFBOEI7QUFDbkQsUUFBSWIsU0FBUyxDQUFDQyxLQUFWLElBQW1CLElBQXZCLEVBQTZCO0FBQzNCO0FBQ0Q7O0FBRUQsVUFBTVYsTUFBTSxDQUFDQyxJQUFQLENBQVlRLFNBQVMsQ0FBQ0MsS0FBVixDQUFnQmUsUUFBaEIsRUFBWixFQUF3QyxNQUF4QyxDQUFOO0FBQ0QsR0FqRHFCO0FBbUR0QkMsRUFBQUEsUUFBUSxFQUFFLFVBQVNoQixLQUFULEVBQStCO0FBQ3ZDLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU8sSUFBUDtBQUNEOztBQUVELFFBQUksT0FBT0EsS0FBUCxLQUFpQixRQUFyQixFQUErQjtBQUM3QixVQUFJLE9BQU9BLEtBQUssQ0FBQ2UsUUFBYixLQUEwQixVQUE5QixFQUEwQztBQUN4QyxjQUFNLElBQUlFLFNBQUosQ0FBYyxpQkFBZCxDQUFOO0FBQ0Q7O0FBQ0RqQixNQUFBQSxLQUFLLEdBQUdBLEtBQUssQ0FBQ2UsUUFBTixFQUFSO0FBQ0Q7O0FBRUQsV0FBT2YsS0FBUDtBQUNEO0FBaEVxQixDQUF4QjtlQW1FZVIsSzs7QUFDZjBCLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQjNCLEtBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuXG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweEZGLCAweEZGLCAweEZGLCAweEZGXSk7XG5cbmNvbnN0IE5UZXh0OiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4NjMsXG4gIHR5cGU6ICdOVEVYVCcsXG4gIG5hbWU6ICdOVGV4dCcsXG5cbiAgaGFzVGFibGVOYW1lOiB0cnVlLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gJ250ZXh0JztcbiAgfSxcblxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBhbnk7IC8vIFRlbXBvcmFyeSBzb2x1dGlvbi4gUmVtb3ZlICdhbnknIGxhdGVyLlxuXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXIsIF9vcHRpb25zKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDEwKTtcbiAgICBidWZmZXIud3JpdGVVSW50OCh0aGlzLmlkLCAwKTtcbiAgICBidWZmZXIud3JpdGVJbnQzMkxFKHBhcmFtZXRlci5sZW5ndGghLCAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDUsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUoQnVmZmVyLmJ5dGVMZW5ndGgocGFyYW1ldGVyLnZhbHVlLCAndWNzMicpLCAwKTtcbiAgICByZXR1cm4gYnVmZmVyO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyRGF0YTogZnVuY3Rpb24qKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHlpZWxkIEJ1ZmZlci5mcm9tKHBhcmFtZXRlci52YWx1ZS50b1N0cmluZygpLCAndWNzMicpO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZS50b1N0cmluZyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICAgIH1cbiAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IE5UZXh0O1xubW9kdWxlLmV4cG9ydHMgPSBOVGV4dDtcbiJdfQ==
70
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL250ZXh0LnRzIl0sIm5hbWVzIjpbIk5VTExfTEVOR1RIIiwiQnVmZmVyIiwiZnJvbSIsIk5UZXh0IiwiaWQiLCJ0eXBlIiwibmFtZSIsImhhc1RhYmxlTmFtZSIsImRlY2xhcmF0aW9uIiwicmVzb2x2ZUxlbmd0aCIsInBhcmFtZXRlciIsInZhbHVlIiwibGVuZ3RoIiwiZ2VuZXJhdGVUeXBlSW5mbyIsIl9vcHRpb25zIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVJbnQzMkxFIiwiY29sbGF0aW9uIiwidG9CdWZmZXIiLCJjb3B5IiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiYnl0ZUxlbmd0aCIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInRvU3RyaW5nIiwidmFsaWRhdGUiLCJUeXBlRXJyb3IiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxNQUFNQSxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYSxJQUFiLEVBQW1CLElBQW5CLENBQVosQ0FBcEI7QUFFQSxNQUFNQyxLQUFlLEdBQUc7QUFDdEJDLEVBQUFBLEVBQUUsRUFBRSxJQURrQjtBQUV0QkMsRUFBQUEsSUFBSSxFQUFFLE9BRmdCO0FBR3RCQyxFQUFBQSxJQUFJLEVBQUUsT0FIZ0I7QUFLdEJDLEVBQUFBLFlBQVksRUFBRSxJQUxRO0FBT3RCQyxFQUFBQSxXQUFXLEVBQUUsWUFBVztBQUN0QixXQUFPLE9BQVA7QUFDRCxHQVRxQjtBQVd0QkMsRUFBQUEsYUFBYSxFQUFFLFVBQVNDLFNBQVQsRUFBb0I7QUFDakMsVUFBTUMsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCLENBRGlDLENBQ0s7O0FBRXRDLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU9BLEtBQUssQ0FBQ0MsTUFBYjtBQUNELEtBRkQsTUFFTztBQUNMLGFBQU8sQ0FBQyxDQUFSO0FBQ0Q7QUFDRixHQW5CcUI7O0FBcUJ0QkMsRUFBQUEsZ0JBQWdCLENBQUNILFNBQUQsRUFBWUksUUFBWixFQUFzQjtBQUNwQyxVQUFNQyxNQUFNLEdBQUdkLE1BQU0sQ0FBQ2UsS0FBUCxDQUFhLEVBQWIsQ0FBZjtBQUNBRCxJQUFBQSxNQUFNLENBQUNFLFVBQVAsQ0FBa0IsS0FBS2IsRUFBdkIsRUFBMkIsQ0FBM0I7QUFDQVcsSUFBQUEsTUFBTSxDQUFDRyxZQUFQLENBQW9CUixTQUFTLENBQUNFLE1BQTlCLEVBQXVDLENBQXZDOztBQUVBLFFBQUlGLFNBQVMsQ0FBQ1MsU0FBZCxFQUF5QjtBQUN2QlQsTUFBQUEsU0FBUyxDQUFDUyxTQUFWLENBQW9CQyxRQUFwQixHQUErQkMsSUFBL0IsQ0FBb0NOLE1BQXBDLEVBQTRDLENBQTVDLEVBQStDLENBQS9DLEVBQWtELENBQWxEO0FBQ0Q7O0FBRUQsV0FBT0EsTUFBUDtBQUNELEdBL0JxQjs7QUFpQ3RCTyxFQUFBQSx1QkFBdUIsQ0FBQ1osU0FBRCxFQUFZYSxPQUFaLEVBQXFCO0FBQzFDLFFBQUliLFNBQVMsQ0FBQ0MsS0FBVixJQUFtQixJQUF2QixFQUE2QjtBQUMzQixhQUFPWCxXQUFQO0FBQ0Q7O0FBRUQsVUFBTWUsTUFBTSxHQUFHZCxNQUFNLENBQUNlLEtBQVAsQ0FBYSxDQUFiLENBQWY7QUFDQUQsSUFBQUEsTUFBTSxDQUFDRyxZQUFQLENBQW9CakIsTUFBTSxDQUFDdUIsVUFBUCxDQUFrQmQsU0FBUyxDQUFDQyxLQUE1QixFQUFtQyxNQUFuQyxDQUFwQixFQUFnRSxDQUFoRTtBQUNBLFdBQU9JLE1BQVA7QUFDRCxHQXpDcUI7O0FBMkN0QlUsRUFBQUEscUJBQXFCLEVBQUUsV0FBVWYsU0FBVixFQUFxQmEsT0FBckIsRUFBOEI7QUFDbkQsUUFBSWIsU0FBUyxDQUFDQyxLQUFWLElBQW1CLElBQXZCLEVBQTZCO0FBQzNCO0FBQ0Q7O0FBRUQsVUFBTVYsTUFBTSxDQUFDQyxJQUFQLENBQVlRLFNBQVMsQ0FBQ0MsS0FBVixDQUFnQmUsUUFBaEIsRUFBWixFQUF3QyxNQUF4QyxDQUFOO0FBQ0QsR0FqRHFCO0FBbUR0QkMsRUFBQUEsUUFBUSxFQUFFLFVBQVNoQixLQUFULEVBQStCO0FBQ3ZDLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU8sSUFBUDtBQUNEOztBQUVELFFBQUksT0FBT0EsS0FBUCxLQUFpQixRQUFyQixFQUErQjtBQUM3QixZQUFNLElBQUlpQixTQUFKLENBQWMsaUJBQWQsQ0FBTjtBQUNEOztBQUVELFdBQU9qQixLQUFQO0FBQ0Q7QUE3RHFCLENBQXhCO2VBZ0VlUixLOztBQUNmMEIsTUFBTSxDQUFDQyxPQUFQLEdBQWlCM0IsS0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkYsIDB4RkYsIDB4RkZdKTtcblxuY29uc3QgTlRleHQ6IERhdGFUeXBlID0ge1xuICBpZDogMHg2MyxcbiAgdHlwZTogJ05URVhUJyxcbiAgbmFtZTogJ05UZXh0JyxcblxuICBoYXNUYWJsZU5hbWU6IHRydWUsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAnbnRleHQnO1xuICB9LFxuXG4gIHJlc29sdmVMZW5ndGg6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIGFueTsgLy8gVGVtcG9yYXJ5IHNvbHV0aW9uLiBSZW1vdmUgJ2FueScgbGF0ZXIuXG5cbiAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHZhbHVlLmxlbmd0aDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKHBhcmFtZXRlciwgX29wdGlvbnMpIHtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMTApO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHRoaXMuaWQsIDApO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUocGFyYW1ldGVyLmxlbmd0aCEsIDEpO1xuXG4gICAgaWYgKHBhcmFtZXRlci5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtZXRlci5jb2xsYXRpb24udG9CdWZmZXIoKS5jb3B5KGJ1ZmZlciwgNSwgMCwgNSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoNCk7XG4gICAgYnVmZmVyLndyaXRlSW50MzJMRShCdWZmZXIuYnl0ZUxlbmd0aChwYXJhbWV0ZXIudmFsdWUsICd1Y3MyJyksIDApO1xuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhOiBmdW5jdGlvbioocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgeWllbGQgQnVmZmVyLmZyb20ocGFyYW1ldGVyLnZhbHVlLnRvU3RyaW5nKCksICd1Y3MyJyk7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IE5UZXh0O1xubW9kdWxlLmV4cG9ydHMgPSBOVGV4dDtcbiJdfQ==
@@ -143,11 +143,7 @@ const NVarChar = {
143
143
  }
144
144
 
145
145
  if (typeof value !== 'string') {
146
- if (typeof value.toString !== 'function') {
147
- throw new TypeError('Invalid string.');
148
- }
149
-
150
- value = value.toString();
146
+ throw new TypeError('Invalid string.');
151
147
  }
152
148
 
153
149
  return value;
@@ -156,4 +152,4 @@ const NVarChar = {
156
152
  var _default = NVarChar;
157
153
  exports.default = _default;
158
154
  module.exports = NVarChar;
159
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL252YXJjaGFyLnRzIl0sIm5hbWVzIjpbIk1BWCIsIlVOS05PV05fUExQX0xFTiIsIkJ1ZmZlciIsImZyb20iLCJQTFBfVEVSTUlOQVRPUiIsIk5VTExfTEVOR1RIIiwiTUFYX05VTExfTEVOR1RIIiwiTlZhckNoYXIiLCJpZCIsInR5cGUiLCJuYW1lIiwibWF4aW11bUxlbmd0aCIsImRlY2xhcmF0aW9uIiwicGFyYW1ldGVyIiwidmFsdWUiLCJsZW5ndGgiLCJ0b1N0cmluZyIsIm91dHB1dCIsInJlc29sdmVMZW5ndGgiLCJpc0J1ZmZlciIsImdlbmVyYXRlVHlwZUluZm8iLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlVUludDgiLCJ3cml0ZVVJbnQxNkxFIiwiY29sbGF0aW9uIiwidG9CdWZmZXIiLCJjb3B5IiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiYnl0ZUxlbmd0aCIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsIndyaXRlVUludDMyTEUiLCJ2YWxpZGF0ZSIsIlR5cGVFcnJvciIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLE1BQU1BLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBTixJQUFZLENBQXhCO0FBQ0EsTUFBTUMsZUFBZSxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLEVBQWEsSUFBYixFQUFtQixJQUFuQixFQUF5QixJQUF6QixFQUErQixJQUEvQixFQUFxQyxJQUFyQyxFQUEyQyxJQUEzQyxDQUFaLENBQXhCO0FBQ0EsTUFBTUMsY0FBYyxHQUFHRixNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLEVBQWEsSUFBYixFQUFtQixJQUFuQixDQUFaLENBQXZCO0FBRUEsTUFBTUUsV0FBVyxHQUFHSCxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLENBQVosQ0FBcEI7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QUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPLElBQVA7QUFDRDs7QUFDRCxRQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsVUFBSSxPQUFPQSxLQUFLLENBQUNFLFFBQWIsS0FBMEIsVUFBOUIsRUFBMEM7QUFDeEMsY0FBTSxJQUFJa0IsU0FBSixDQUFjLGlCQUFkLENBQU47QUFDRDs7QUFDRHBCLE1BQUFBLEtBQUssR0FBR0EsS0FBSyxDQUFDRSxRQUFOLEVBQVI7QUFDRDs7QUFDRCxXQUFPRixLQUFQO0FBQ0Q7QUF6SW9ELENBQXZEO2VBNEllUCxROztBQUNmNEIsTUFBTSxDQUFDQyxPQUFQLEdBQWlCN0IsUUFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IE1BWCA9ICgxIDw8IDE2KSAtIDE7XG5jb25zdCBVTktOT1dOX1BMUF9MRU4gPSBCdWZmZXIuZnJvbShbMHhmZSwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZl0pO1xuY29uc3QgUExQX1RFUk1JTkFUT1IgPSBCdWZmZXIuZnJvbShbMHgwMCwgMHgwMCwgMHgwMCwgMHgwMF0pO1xuXG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweEZGLCAweEZGXSk7XG5jb25zdCBNQVhfTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRl0pO1xuXG5jb25zdCBOVmFyQ2hhcjogeyBtYXhpbXVtTGVuZ3RoOiBudW1iZXIgfSAmIERhdGFUeXBlID0ge1xuICBpZDogMHhFNyxcbiAgdHlwZTogJ05WQVJDSEFSJyxcbiAgbmFtZTogJ05WYXJDaGFyJyxcbiAgbWF4aW11bUxlbmd0aDogNDAwMCxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgYW55OyAvLyBUZW1wb3Jhcnkgc29sdXRpb24uIFJlbW92ZSAnYW55JyBsYXRlci5cblxuICAgIGxldCBsZW5ndGg7XG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGgpIHtcbiAgICAgIGxlbmd0aCA9IHBhcmFtZXRlci5sZW5ndGg7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBsZW5ndGggPSB2YWx1ZS50b1N0cmluZygpLmxlbmd0aCB8fCAxO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwgJiYgIXBhcmFtZXRlci5vdXRwdXQpIHtcbiAgICAgIGxlbmd0aCA9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxlbmd0aCA9IHRoaXMubWF4aW11bUxlbmd0aDtcbiAgICB9XG5cbiAgICBpZiAobGVuZ3RoIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgcmV0dXJuICdudmFyY2hhcignICsgbGVuZ3RoICsgJyknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ252YXJjaGFyKG1heCknO1xuICAgIH1cbiAgfSxcblxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBhbnk7IC8vIFRlbXBvcmFyeSBzb2x1dGlvbi4gUmVtb3ZlICdhbnknIGxhdGVyLlxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoICE9IG51bGwpIHtcbiAgICAgIHJldHVybiBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgaWYgKEJ1ZmZlci5pc0J1ZmZlcih2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuICh2YWx1ZS5sZW5ndGggLyAyKSB8fCAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCkubGVuZ3RoIHx8IDE7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDgpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHRoaXMuaWQsIDApO1xuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2TEUocGFyYW1ldGVyLmxlbmd0aCEgKiAyLCAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2TEUoTUFYLCAxKTtcbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLmNvbGxhdGlvbikge1xuICAgICAgcGFyYW1ldGVyLmNvbGxhdGlvbi50b0J1ZmZlcigpLmNvcHkoYnVmZmVyLCAzLCAwLCA1KTtcbiAgICB9XG5cbiAgICByZXR1cm4gYnVmZmVyO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gTUFYX05VTExfTEVOR1RIO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZTtcbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICBsZXQgbGVuZ3RoO1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQnVmZmVyKSB7XG4gICAgICAgIGxlbmd0aCA9IHZhbHVlLmxlbmd0aDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTtcbiAgICAgICAgbGVuZ3RoID0gQnVmZmVyLmJ5dGVMZW5ndGgodmFsdWUsICd1Y3MyJyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygyKTtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKGxlbmd0aCwgMCk7XG4gICAgICByZXR1cm4gYnVmZmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gVU5LTk9XTl9QTFBfTEVOO1xuICAgIH1cbiAgfSxcblxuICAqIGdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWU7XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBCdWZmZXIpIHtcbiAgICAgICAgeWllbGQgdmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIHlpZWxkIEJ1ZmZlci5mcm9tKHZhbHVlLCAndWNzMicpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBCdWZmZXIpIHtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gdmFsdWUubGVuZ3RoO1xuXG4gICAgICAgIGlmIChsZW5ndGggPiAwKSB7XG4gICAgICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgICAgICAgIGJ1ZmZlci53cml0ZVVJbnQzMkxFKGxlbmd0aCwgMCk7XG4gICAgICAgICAgeWllbGQgYnVmZmVyO1xuICAgICAgICAgIHlpZWxkIHZhbHVlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKHZhbHVlLCAndWNzMicpO1xuXG4gICAgICAgIGlmIChsZW5ndGggPiAwKSB7XG4gICAgICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgICAgICAgIGJ1ZmZlci53cml0ZVVJbnQzMkxFKGxlbmd0aCwgMCk7XG4gICAgICAgICAgeWllbGQgYnVmZmVyO1xuICAgICAgICAgIHlpZWxkIEJ1ZmZlci5mcm9tKHZhbHVlLCAndWNzMicpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHlpZWxkIFBMUF9URVJNSU5BVE9SO1xuICAgIH1cbiAgfSxcblxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWUpOiBudWxsIHwgc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIHZhbHVlLnRvU3RyaW5nICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgc3RyaW5nLicpO1xuICAgICAgfVxuICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IE5WYXJDaGFyO1xubW9kdWxlLmV4cG9ydHMgPSBOVmFyQ2hhcjtcbiJdfQ==
155
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL252YXJjaGFyLnRzIl0sIm5hbWVzIjpbIk1BWCIsIlVOS05PV05fUExQX0xFTiIsIkJ1ZmZlciIsImZyb20iLCJQTFBfVEVSTUlOQVRPUiIsIk5VTExfTEVOR1RIIiwiTUFYX05VTExfTEVOR1RIIiwiTlZhckNoYXIiLCJpZCIsInR5cGUiLCJuYW1lIiwibWF4aW11bUxlbmd0aCIsImRlY2xhcmF0aW9uIiwicGFyYW1ldGVyIiwidmFsdWUiLCJsZW5ndGgiLCJ0b1N0cmluZyIsIm91dHB1dCIsInJlc29sdmVMZW5ndGgiLCJpc0J1ZmZlciIsImdlbmVyYXRlVHlwZUluZm8iLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlVUludDgiLCJ3cml0ZVVJbnQxNkxFIiwiY29sbGF0aW9uIiwidG9CdWZmZXIiLCJjb3B5IiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiYnl0ZUxlbmd0aCIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsIndyaXRlVUludDMyTEUiLCJ2YWxpZGF0ZSIsIlR5cGVFcnJvciIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLE1BQU1BLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBTixJQUFZLENBQXhCO0FBQ0EsTUFBTUMsZUFBZSxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLEVBQWEsSUFBYixFQUFtQixJQUFuQixFQUF5QixJQUF6QixFQUErQixJQUEvQixFQUFxQyxJQUFyQyxFQUEyQyxJQUEzQyxDQUFaLENBQXhCO0FBQ0EsTUFBTUMsY0FBYyxHQUFHRixNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLEVBQWEsSUFBYixFQUFtQixJQUFuQixDQUFaLENBQXZCO0FBRUEsTUFBTUUsV0FBVyxHQUFHSCxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLENBQVosQ0FBcEI7QUFDQSxNQUFNRyxlQUFlLEdBQUdKLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYSxJQUFiLEVBQW1CLElBQW5CLEVBQXlCLElBQXpCLEVBQStCLElBQS9CLEVBQXFDLElBQXJDLEVBQTJDLElBQTNDLENBQVosQ0FBeEI7QUFFQSxNQUFNSSxRQUE4QyxHQUFHO0FBQ3JEQyxFQUFBQSxFQUFFLEVBQUUsSUFEaUQ7QUFFckRDLEVBQUFBLElBQUksRUFBRSxVQUYrQztBQUdyREMsRUFBQUEsSUFBSSxFQUFFLFVBSCtDO0FBSXJEQyxFQUFBQSxhQUFhLEVBQUUsSUFKc0M7QUFNckRDLEVBQUFBLFdBQVcsRUFBRSxVQUFTQyxTQUFULEVBQW9CO0FBQy9CLFVBQU1DLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4QixDQUQrQixDQUNPOztBQUV0QyxRQUFJQyxNQUFKOztBQUNBLFFBQUlGLFNBQVMsQ0FBQ0UsTUFBZCxFQUFzQjtBQUNwQkEsTUFBQUEsTUFBTSxHQUFHRixTQUFTLENBQUNFLE1BQW5CO0FBQ0QsS0FGRCxNQUVPLElBQUlELEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ3hCQyxNQUFBQSxNQUFNLEdBQUdELEtBQUssQ0FBQ0UsUUFBTixHQUFpQkQsTUFBakIsSUFBMkIsQ0FBcEM7QUFDRCxLQUZNLE1BRUEsSUFBSUQsS0FBSyxLQUFLLElBQVYsSUFBa0IsQ0FBQ0QsU0FBUyxDQUFDSSxNQUFqQyxFQUF5QztBQUM5Q0YsTUFBQUEsTUFBTSxHQUFHLENBQVQ7QUFDRCxLQUZNLE1BRUE7QUFDTEEsTUFBQUEsTUFBTSxHQUFHLEtBQUtKLGFBQWQ7QUFDRDs7QUFFRCxRQUFJSSxNQUFNLElBQUksS0FBS0osYUFBbkIsRUFBa0M7QUFDaEMsYUFBTyxjQUFjSSxNQUFkLEdBQXVCLEdBQTlCO0FBQ0QsS0FGRCxNQUVPO0FBQ0wsYUFBTyxlQUFQO0FBQ0Q7QUFDRixHQXpCb0Q7QUEyQnJERyxFQUFBQSxhQUFhLEVBQUUsVUFBU0wsU0FBVCxFQUFvQjtBQUNqQyxVQUFNQyxLQUFLLEdBQUdELFNBQVMsQ0FBQ0MsS0FBeEIsQ0FEaUMsQ0FDSzs7QUFDdEMsUUFBSUQsU0FBUyxDQUFDRSxNQUFWLElBQW9CLElBQXhCLEVBQThCO0FBQzVCLGFBQU9GLFNBQVMsQ0FBQ0UsTUFBakI7QUFDRCxLQUZELE1BRU8sSUFBSUQsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDeEIsVUFBSVosTUFBTSxDQUFDaUIsUUFBUCxDQUFnQkwsS0FBaEIsQ0FBSixFQUE0QjtBQUMxQixlQUFRQSxLQUFLLENBQUNDLE1BQU4sR0FBZSxDQUFoQixJQUFzQixDQUE3QjtBQUNELE9BRkQsTUFFTztBQUNMLGVBQU9ELEtBQUssQ0FBQ0UsUUFBTixHQUFpQkQsTUFBakIsSUFBMkIsQ0FBbEM7QUFDRDtBQUNGLEtBTk0sTUFNQTtBQUNMLGFBQU8sS0FBS0osYUFBWjtBQUNEO0FBQ0YsR0F4Q29EOztBQTBDckRTLEVBQUFBLGdCQUFnQixDQUFDUCxTQUFELEVBQVk7QUFDMUIsVUFBTVEsTUFBTSxHQUFHbkIsTUFBTSxDQUFDb0IsS0FBUCxDQUFhLENBQWIsQ0FBZjtBQUNBRCxJQUFBQSxNQUFNLENBQUNFLFVBQVAsQ0FBa0IsS0FBS2YsRUFBdkIsRUFBMkIsQ0FBM0I7O0FBRUEsUUFBSUssU0FBUyxDQUFDRSxNQUFWLElBQXFCLEtBQUtKLGFBQTlCLEVBQTZDO0FBQzNDVSxNQUFBQSxNQUFNLENBQUNHLGFBQVAsQ0FBcUJYLFNBQVMsQ0FBQ0UsTUFBVixHQUFvQixDQUF6QyxFQUE0QyxDQUE1QztBQUNELEtBRkQsTUFFTztBQUNMTSxNQUFBQSxNQUFNLENBQUNHLGFBQVAsQ0FBcUJ4QixHQUFyQixFQUEwQixDQUExQjtBQUNEOztBQUVELFFBQUlhLFNBQVMsQ0FBQ1ksU0FBZCxFQUF5QjtBQUN2QlosTUFBQUEsU0FBUyxDQUFDWSxTQUFWLENBQW9CQyxRQUFwQixHQUErQkMsSUFBL0IsQ0FBb0NOLE1BQXBDLEVBQTRDLENBQTVDLEVBQStDLENBQS9DLEVBQWtELENBQWxEO0FBQ0Q7O0FBRUQsV0FBT0EsTUFBUDtBQUNELEdBekRvRDs7QUEyRHJETyxFQUFBQSx1QkFBdUIsQ0FBQ2YsU0FBRCxFQUFZZ0IsT0FBWixFQUFxQjtBQUMxQyxRQUFJaEIsU0FBUyxDQUFDQyxLQUFWLElBQW1CLElBQXZCLEVBQTZCO0FBQzNCLFVBQUlELFNBQVMsQ0FBQ0UsTUFBVixJQUFxQixLQUFLSixhQUE5QixFQUE2QztBQUMzQyxlQUFPTixXQUFQO0FBQ0QsT0FGRCxNQUVPO0FBQ0wsZUFBT0MsZUFBUDtBQUNEO0FBQ0Y7O0FBRUQsUUFBSVEsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXRCOztBQUNBLFFBQUlELFNBQVMsQ0FBQ0UsTUFBVixJQUFxQixLQUFLSixhQUE5QixFQUE2QztBQUMzQyxVQUFJSSxNQUFKOztBQUNBLFVBQUlELEtBQUssWUFBWVosTUFBckIsRUFBNkI7QUFDM0JhLFFBQUFBLE1BQU0sR0FBR0QsS0FBSyxDQUFDQyxNQUFmO0FBQ0QsT0FGRCxNQUVPO0FBQ0xELFFBQUFBLEtBQUssR0FBR0EsS0FBSyxDQUFDRSxRQUFOLEVBQVI7QUFDQUQsUUFBQUEsTUFBTSxHQUFHYixNQUFNLENBQUM0QixVQUFQLENBQWtCaEIsS0FBbEIsRUFBeUIsTUFBekIsQ0FBVDtBQUNEOztBQUVELFlBQU1PLE1BQU0sR0FBR25CLE1BQU0sQ0FBQ29CLEtBQVAsQ0FBYSxDQUFiLENBQWY7QUFDQUQsTUFBQUEsTUFBTSxDQUFDRyxhQUFQLENBQXFCVCxNQUFyQixFQUE2QixDQUE3QjtBQUNBLGFBQU9NLE1BQVA7QUFDRCxLQVpELE1BWU87QUFDTCxhQUFPcEIsZUFBUDtBQUNEO0FBQ0YsR0FwRm9EOztBQXNGckQsR0FBRThCLHFCQUFGLENBQXdCbEIsU0FBeEIsRUFBbUNnQixPQUFuQyxFQUE0QztBQUMxQyxRQUFJaEIsU0FBUyxDQUFDQyxLQUFWLElBQW1CLElBQXZCLEVBQTZCO0FBQzNCO0FBQ0Q7O0FBRUQsUUFBSUEsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXRCOztBQUVBLFFBQUlELFNBQVMsQ0FBQ0UsTUFBVixJQUFxQixLQUFLSixhQUE5QixFQUE2QztBQUMzQyxVQUFJRyxLQUFLLFlBQVlaLE1BQXJCLEVBQTZCO0FBQzNCLGNBQU1ZLEtBQU47QUFDRCxPQUZELE1BRU87QUFDTEEsUUFBQUEsS0FBSyxHQUFHQSxLQUFLLENBQUNFLFFBQU4sRUFBUjtBQUNBLGNBQU1kLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZVyxLQUFaLEVBQW1CLE1BQW5CLENBQU47QUFDRDtBQUNGLEtBUEQsTUFPTztBQUNMLFVBQUlBLEtBQUssWUFBWVosTUFBckIsRUFBNkI7QUFDM0IsY0FBTWEsTUFBTSxHQUFHRCxLQUFLLENBQUNDLE1BQXJCOztBQUVBLFlBQUlBLE1BQU0sR0FBRyxDQUFiLEVBQWdCO0FBQ2QsZ0JBQU1NLE1BQU0sR0FBR25CLE1BQU0sQ0FBQ29CLEtBQVAsQ0FBYSxDQUFiLENBQWY7QUFDQUQsVUFBQUEsTUFBTSxDQUFDVyxhQUFQLENBQXFCakIsTUFBckIsRUFBNkIsQ0FBN0I7QUFDQSxnQkFBTU0sTUFBTjtBQUNBLGdCQUFNUCxLQUFOO0FBQ0Q7QUFDRixPQVRELE1BU087QUFDTEEsUUFBQUEsS0FBSyxHQUFHQSxLQUFLLENBQUNFLFFBQU4sRUFBUjtBQUNBLGNBQU1ELE1BQU0sR0FBR2IsTUFBTSxDQUFDNEIsVUFBUCxDQUFrQmhCLEtBQWxCLEVBQXlCLE1BQXpCLENBQWY7O0FBRUEsWUFBSUMsTUFBTSxHQUFHLENBQWIsRUFBZ0I7QUFDZCxnQkFBTU0sTUFBTSxHQUFHbkIsTUFBTSxDQUFDb0IsS0FBUCxDQUFhLENBQWIsQ0FBZjtBQUNBRCxVQUFBQSxNQUFNLENBQUNXLGFBQVAsQ0FBcUJqQixNQUFyQixFQUE2QixDQUE3QjtBQUNBLGdCQUFNTSxNQUFOO0FBQ0EsZ0JBQU1uQixNQUFNLENBQUNDLElBQVAsQ0FBWVcsS0FBWixFQUFtQixNQUFuQixDQUFOO0FBQ0Q7QUFDRjs7QUFFRCxZQUFNVixjQUFOO0FBQ0Q7QUFDRixHQTVIb0Q7O0FBOEhyRDZCLEVBQUFBLFFBQVEsRUFBRSxVQUFTbkIsS0FBVCxFQUErQjtBQUN2QyxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPLElBQVA7QUFDRDs7QUFFRCxRQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsWUFBTSxJQUFJb0IsU0FBSixDQUFjLGlCQUFkLENBQU47QUFDRDs7QUFFRCxXQUFPcEIsS0FBUDtBQUNEO0FBeElvRCxDQUF2RDtlQTJJZVAsUTs7QUFDZjRCLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQjdCLFFBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuXG5jb25zdCBNQVggPSAoMSA8PCAxNikgLSAxO1xuY29uc3QgVU5LTk9XTl9QTFBfTEVOID0gQnVmZmVyLmZyb20oWzB4ZmUsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmZdKTtcbmNvbnN0IFBMUF9URVJNSU5BVE9SID0gQnVmZmVyLmZyb20oWzB4MDAsIDB4MDAsIDB4MDAsIDB4MDBdKTtcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRl0pO1xuY29uc3QgTUFYX05VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkZdKTtcblxuY29uc3QgTlZhckNoYXI6IHsgbWF4aW11bUxlbmd0aDogbnVtYmVyIH0gJiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4RTcsXG4gIHR5cGU6ICdOVkFSQ0hBUicsXG4gIG5hbWU6ICdOVmFyQ2hhcicsXG4gIG1heGltdW1MZW5ndGg6IDQwMDAsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIGFueTsgLy8gVGVtcG9yYXJ5IHNvbHV0aW9uLiBSZW1vdmUgJ2FueScgbGF0ZXIuXG5cbiAgICBsZXQgbGVuZ3RoO1xuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoKSB7XG4gICAgICBsZW5ndGggPSBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgbGVuZ3RoID0gdmFsdWUudG9TdHJpbmcoKS5sZW5ndGggfHwgMTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID09PSBudWxsICYmICFwYXJhbWV0ZXIub3V0cHV0KSB7XG4gICAgICBsZW5ndGggPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZW5ndGggPSB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKGxlbmd0aCA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIHJldHVybiAnbnZhcmNoYXIoJyArIGxlbmd0aCArICcpJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICdudmFyY2hhcihtYXgpJztcbiAgICB9XG4gIH0sXG5cbiAgcmVzb2x2ZUxlbmd0aDogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgYW55OyAvLyBUZW1wb3Jhcnkgc29sdXRpb24uIFJlbW92ZSAnYW55JyBsYXRlci5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcGFyYW1ldGVyLmxlbmd0aDtcbiAgICB9IGVsc2UgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIGlmIChCdWZmZXIuaXNCdWZmZXIodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAodmFsdWUubGVuZ3RoIC8gMikgfHwgMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygpLmxlbmd0aCB8fCAxO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXhpbXVtTGVuZ3RoO1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg4KTtcbiAgICBidWZmZXIud3JpdGVVSW50OCh0aGlzLmlkLCAwKTtcblxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHBhcmFtZXRlci5sZW5ndGghICogMiwgMSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKE1BWCwgMSk7XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtZXRlci5jb2xsYXRpb24udG9CdWZmZXIoKS5jb3B5KGJ1ZmZlciwgMywgMCwgNSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIE5VTExfTEVOR1RIO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIE1BWF9OVUxMX0xFTkdUSDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWU7XG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgbGV0IGxlbmd0aDtcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEJ1ZmZlcikge1xuICAgICAgICBsZW5ndGggPSB2YWx1ZS5sZW5ndGg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIGxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKHZhbHVlLCAndWNzMicpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMik7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRShsZW5ndGgsIDApO1xuICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFVOS05PV05fUExQX0xFTjtcbiAgICB9XG4gIH0sXG5cbiAgKiBnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlO1xuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQnVmZmVyKSB7XG4gICAgICAgIHlpZWxkIHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpO1xuICAgICAgICB5aWVsZCBCdWZmZXIuZnJvbSh2YWx1ZSwgJ3VjczInKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQnVmZmVyKSB7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IHZhbHVlLmxlbmd0aDtcblxuICAgICAgICBpZiAobGVuZ3RoID4gMCkge1xuICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgICAgICAgICBidWZmZXIud3JpdGVVSW50MzJMRShsZW5ndGgsIDApO1xuICAgICAgICAgIHlpZWxkIGJ1ZmZlcjtcbiAgICAgICAgICB5aWVsZCB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpO1xuICAgICAgICBjb25zdCBsZW5ndGggPSBCdWZmZXIuYnl0ZUxlbmd0aCh2YWx1ZSwgJ3VjczInKTtcblxuICAgICAgICBpZiAobGVuZ3RoID4gMCkge1xuICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgICAgICAgICBidWZmZXIud3JpdGVVSW50MzJMRShsZW5ndGgsIDApO1xuICAgICAgICAgIHlpZWxkIGJ1ZmZlcjtcbiAgICAgICAgICB5aWVsZCBCdWZmZXIuZnJvbSh2YWx1ZSwgJ3VjczInKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB5aWVsZCBQTFBfVEVSTUlOQVRPUjtcbiAgICB9XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogbnVsbCB8IHN0cmluZyB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IE5WYXJDaGFyO1xubW9kdWxlLmV4cG9ydHMgPSBOVmFyQ2hhcjtcbiJdfQ==
@@ -67,11 +67,7 @@ const Text = {
67
67
  }
68
68
 
69
69
  if (typeof value !== 'string') {
70
- if (typeof value.toString !== 'function') {
71
- throw new TypeError('Invalid string.');
72
- }
73
-
74
- value = value.toString();
70
+ throw new TypeError('Invalid string.');
75
71
  }
76
72
 
77
73
  if (!collation) {
@@ -88,4 +84,4 @@ const Text = {
88
84
  var _default = Text;
89
85
  exports.default = _default;
90
86
  module.exports = Text;
91
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3RleHQudHMiXSwibmFtZXMiOlsiTlVMTF9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiVGV4dCIsImlkIiwidHlwZSIsIm5hbWUiLCJoYXNUYWJsZU5hbWUiLCJkZWNsYXJhdGlvbiIsInJlc29sdmVMZW5ndGgiLCJwYXJhbWV0ZXIiLCJ2YWx1ZSIsImxlbmd0aCIsImdlbmVyYXRlVHlwZUluZm8iLCJfb3B0aW9ucyIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVVSW50OCIsIndyaXRlSW50MzJMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwidG9TdHJpbmciLCJUeXBlRXJyb3IiLCJFcnJvciIsImNvZGVwYWdlIiwiaWNvbnYiLCJlbmNvZGUiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFJQSxNQUFNQSxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYSxJQUFiLEVBQW1CLElBQW5CLENBQVosQ0FBcEI7QUFFQSxNQUFNQyxJQUFjLEdBQUc7QUFDckJDLEVBQUFBLEVBQUUsRUFBRSxJQURpQjtBQUVyQkMsRUFBQUEsSUFBSSxFQUFFLE1BRmU7QUFHckJDLEVBQUFBLElBQUksRUFBRSxNQUhlO0FBS3JCQyxFQUFBQSxZQUFZLEVBQUUsSUFMTztBQU9yQkMsRUFBQUEsV0FBVyxFQUFFLFlBQVc7QUFDdEIsV0FBTyxNQUFQO0FBQ0QsR0FUb0I7QUFXckJDLEVBQUFBLGFBQWEsRUFBRSxVQUFTQyxTQUFULEVBQW9CO0FBQ2pDLFVBQU1DLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4Qjs7QUFFQSxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPQSxLQUFLLENBQUNDLE1BQWI7QUFDRCxLQUZELE1BRU87QUFDTCxhQUFPLENBQUMsQ0FBUjtBQUNEO0FBQ0YsR0FuQm9COztBQXFCckJDLEVBQUFBLGdCQUFnQixDQUFDSCxTQUFELEVBQVlJLFFBQVosRUFBc0I7QUFDcEMsVUFBTUMsTUFBTSxHQUFHZCxNQUFNLENBQUNlLEtBQVAsQ0FBYSxFQUFiLENBQWY7QUFDQUQsSUFBQUEsTUFBTSxDQUFDRSxVQUFQLENBQWtCLEtBQUtiLEVBQXZCLEVBQTJCLENBQTNCO0FBQ0FXLElBQUFBLE1BQU0sQ0FBQ0csWUFBUCxDQUFvQlIsU0FBUyxDQUFDRSxNQUE5QixFQUF1QyxDQUF2Qzs7QUFFQSxRQUFJRixTQUFTLENBQUNTLFNBQWQsRUFBeUI7QUFDdkJULE1BQUFBLFNBQVMsQ0FBQ1MsU0FBVixDQUFvQkMsUUFBcEIsR0FBK0JDLElBQS9CLENBQW9DTixNQUFwQyxFQUE0QyxDQUE1QyxFQUErQyxDQUEvQyxFQUFrRCxDQUFsRDtBQUNEOztBQUVELFdBQU9BLE1BQVA7QUFDRCxHQS9Cb0I7O0FBaUNyQk8sRUFBQUEsdUJBQXVCLENBQUNaLFNBQUQsRUFBWWEsT0FBWixFQUFxQjtBQUMxQyxVQUFNWixLQUFLLEdBQUdELFNBQVMsQ0FBQ0MsS0FBeEI7O0FBRUEsUUFBSUEsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDakIsYUFBT1gsV0FBUDtBQUNEOztBQUVELFVBQU1lLE1BQU0sR0FBR2QsTUFBTSxDQUFDZSxLQUFQLENBQWEsQ0FBYixDQUFmO0FBQ0FELElBQUFBLE1BQU0sQ0FBQ0csWUFBUCxDQUFvQlAsS0FBSyxDQUFDQyxNQUExQixFQUFrQyxDQUFsQztBQUNBLFdBQU9HLE1BQVA7QUFDRCxHQTNDb0I7O0FBNkNyQlMsRUFBQUEscUJBQXFCLEVBQUUsV0FBVWQsU0FBVixFQUFxQmEsT0FBckIsRUFBOEI7QUFDbkQsVUFBTVosS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCOztBQUVBLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCO0FBQ0Q7O0FBRUQsVUFBTUEsS0FBTjtBQUNELEdBckRvQjtBQXVEckJjLEVBQUFBLFFBQVEsRUFBRSxVQUFTZCxLQUFULEVBQWdCUSxTQUFoQixFQUEwQztBQUNsRCxRQUFJUixLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPLElBQVA7QUFDRDs7QUFFRCxRQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsVUFBSSxPQUFPQSxLQUFLLENBQUNlLFFBQWIsS0FBMEIsVUFBOUIsRUFBMEM7QUFDeEMsY0FBTSxJQUFJQyxTQUFKLENBQWMsaUJBQWQsQ0FBTjtBQUNEOztBQUNEaEIsTUFBQUEsS0FBSyxHQUFHQSxLQUFLLENBQUNlLFFBQU4sRUFBUjtBQUNEOztBQUVELFFBQUksQ0FBQ1AsU0FBTCxFQUFnQjtBQUNkLFlBQU0sSUFBSVMsS0FBSixDQUFVLGdFQUFWLENBQU47QUFDRDs7QUFFRCxRQUFJLENBQUNULFNBQVMsQ0FBQ1UsUUFBZixFQUF5QjtBQUN2QixZQUFNLElBQUlELEtBQUosQ0FBVSw2REFBVixDQUFOO0FBQ0Q7O0FBRUQsV0FBT0UsbUJBQU1DLE1BQU4sQ0FBYXBCLEtBQWIsRUFBb0JRLFNBQVMsQ0FBQ1UsUUFBOUIsQ0FBUDtBQUNEO0FBNUVvQixDQUF2QjtlQWdGZTFCLEk7O0FBQ2Y2QixNQUFNLENBQUNDLE9BQVAsR0FBaUI5QixJQUFqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpY29udiBmcm9tICdpY29udi1saXRlJztcblxuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuXG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweEZGLCAweEZGLCAweEZGLCAweEZGXSk7XG5cbmNvbnN0IFRleHQ6IERhdGFUeXBlID0ge1xuICBpZDogMHgyMyxcbiAgdHlwZTogJ1RFWFQnLFxuICBuYW1lOiAnVGV4dCcsXG5cbiAgaGFzVGFibGVOYW1lOiB0cnVlLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gJ3RleHQnO1xuICB9LFxuXG4gIHJlc29sdmVMZW5ndGg6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHZhbHVlLmxlbmd0aDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKHBhcmFtZXRlciwgX29wdGlvbnMpIHtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMTApO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHRoaXMuaWQsIDApO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUocGFyYW1ldGVyLmxlbmd0aCEsIDEpO1xuXG4gICAgaWYgKHBhcmFtZXRlci5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtZXRlci5jb2xsYXRpb24udG9CdWZmZXIoKS5jb3B5KGJ1ZmZlciwgNSwgMCwgNSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoNCk7XG4gICAgYnVmZmVyLndyaXRlSW50MzJMRSh2YWx1ZS5sZW5ndGgsIDApO1xuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhOiBmdW5jdGlvbioocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgeWllbGQgdmFsdWU7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlLCBjb2xsYXRpb24pOiBCdWZmZXIgfCBudWxsIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUudG9TdHJpbmcgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBzdHJpbmcuJyk7XG4gICAgICB9XG4gICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgaWYgKCFjb2xsYXRpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gY29sbGF0aW9uIHdhcyBzZXQgYnkgdGhlIHNlcnZlciBmb3IgdGhlIGN1cnJlbnQgY29ubmVjdGlvbi4nKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbGxhdGlvbi5jb2RlcGFnZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgY29sbGF0aW9uIHNldCBieSB0aGUgc2VydmVyIGhhcyBubyBhc3NvY2lhdGVkIGVuY29kaW5nLicpO1xuICAgIH1cblxuICAgIHJldHVybiBpY29udi5lbmNvZGUodmFsdWUsIGNvbGxhdGlvbi5jb2RlcGFnZSk7XG4gIH1cbn07XG5cblxuZXhwb3J0IGRlZmF1bHQgVGV4dDtcbm1vZHVsZS5leHBvcnRzID0gVGV4dDtcbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3RleHQudHMiXSwibmFtZXMiOlsiTlVMTF9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiVGV4dCIsImlkIiwidHlwZSIsIm5hbWUiLCJoYXNUYWJsZU5hbWUiLCJkZWNsYXJhdGlvbiIsInJlc29sdmVMZW5ndGgiLCJwYXJhbWV0ZXIiLCJ2YWx1ZSIsImxlbmd0aCIsImdlbmVyYXRlVHlwZUluZm8iLCJfb3B0aW9ucyIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVVSW50OCIsIndyaXRlSW50MzJMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwiVHlwZUVycm9yIiwiRXJyb3IiLCJjb2RlcGFnZSIsImljb252IiwiZW5jb2RlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBSUEsTUFBTUEsV0FBVyxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLEVBQWEsSUFBYixFQUFtQixJQUFuQixDQUFaLENBQXBCO0FBRUEsTUFBTUMsSUFBYyxHQUFHO0FBQ3JCQyxFQUFBQSxFQUFFLEVBQUUsSUFEaUI7QUFFckJDLEVBQUFBLElBQUksRUFBRSxNQUZlO0FBR3JCQyxFQUFBQSxJQUFJLEVBQUUsTUFIZTtBQUtyQkMsRUFBQUEsWUFBWSxFQUFFLElBTE87QUFPckJDLEVBQUFBLFdBQVcsRUFBRSxZQUFXO0FBQ3RCLFdBQU8sTUFBUDtBQUNELEdBVG9CO0FBV3JCQyxFQUFBQSxhQUFhLEVBQUUsVUFBU0MsU0FBVCxFQUFvQjtBQUNqQyxVQUFNQyxLQUFLLEdBQUdELFNBQVMsQ0FBQ0MsS0FBeEI7O0FBRUEsUUFBSUEsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDakIsYUFBT0EsS0FBSyxDQUFDQyxNQUFiO0FBQ0QsS0FGRCxNQUVPO0FBQ0wsYUFBTyxDQUFDLENBQVI7QUFDRDtBQUNGLEdBbkJvQjs7QUFxQnJCQyxFQUFBQSxnQkFBZ0IsQ0FBQ0gsU0FBRCxFQUFZSSxRQUFaLEVBQXNCO0FBQ3BDLFVBQU1DLE1BQU0sR0FBR2QsTUFBTSxDQUFDZSxLQUFQLENBQWEsRUFBYixDQUFmO0FBQ0FELElBQUFBLE1BQU0sQ0FBQ0UsVUFBUCxDQUFrQixLQUFLYixFQUF2QixFQUEyQixDQUEzQjtBQUNBVyxJQUFBQSxNQUFNLENBQUNHLFlBQVAsQ0FBb0JSLFNBQVMsQ0FBQ0UsTUFBOUIsRUFBdUMsQ0FBdkM7O0FBRUEsUUFBSUYsU0FBUyxDQUFDUyxTQUFkLEVBQXlCO0FBQ3ZCVCxNQUFBQSxTQUFTLENBQUNTLFNBQVYsQ0FBb0JDLFFBQXBCLEdBQStCQyxJQUEvQixDQUFvQ04sTUFBcEMsRUFBNEMsQ0FBNUMsRUFBK0MsQ0FBL0MsRUFBa0QsQ0FBbEQ7QUFDRDs7QUFFRCxXQUFPQSxNQUFQO0FBQ0QsR0EvQm9COztBQWlDckJPLEVBQUFBLHVCQUF1QixDQUFDWixTQUFELEVBQVlhLE9BQVosRUFBcUI7QUFDMUMsVUFBTVosS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCOztBQUVBLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU9YLFdBQVA7QUFDRDs7QUFFRCxVQUFNZSxNQUFNLEdBQUdkLE1BQU0sQ0FBQ2UsS0FBUCxDQUFhLENBQWIsQ0FBZjtBQUNBRCxJQUFBQSxNQUFNLENBQUNHLFlBQVAsQ0FBb0JQLEtBQUssQ0FBQ0MsTUFBMUIsRUFBa0MsQ0FBbEM7QUFDQSxXQUFPRyxNQUFQO0FBQ0QsR0EzQ29COztBQTZDckJTLEVBQUFBLHFCQUFxQixFQUFFLFdBQVVkLFNBQVYsRUFBcUJhLE9BQXJCLEVBQThCO0FBQ25ELFVBQU1aLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4Qjs7QUFFQSxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQjtBQUNEOztBQUVELFVBQU1BLEtBQU47QUFDRCxHQXJEb0I7QUF1RHJCYyxFQUFBQSxRQUFRLEVBQUUsVUFBU2QsS0FBVCxFQUFnQlEsU0FBaEIsRUFBMEM7QUFDbEQsUUFBSVIsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDakIsYUFBTyxJQUFQO0FBQ0Q7O0FBRUQsUUFBSSxPQUFPQSxLQUFQLEtBQWlCLFFBQXJCLEVBQStCO0FBQzdCLFlBQU0sSUFBSWUsU0FBSixDQUFjLGlCQUFkLENBQU47QUFDRDs7QUFFRCxRQUFJLENBQUNQLFNBQUwsRUFBZ0I7QUFDZCxZQUFNLElBQUlRLEtBQUosQ0FBVSxnRUFBVixDQUFOO0FBQ0Q7O0FBRUQsUUFBSSxDQUFDUixTQUFTLENBQUNTLFFBQWYsRUFBeUI7QUFDdkIsWUFBTSxJQUFJRCxLQUFKLENBQVUsNkRBQVYsQ0FBTjtBQUNEOztBQUVELFdBQU9FLG1CQUFNQyxNQUFOLENBQWFuQixLQUFiLEVBQW9CUSxTQUFTLENBQUNTLFFBQTlCLENBQVA7QUFDRDtBQXpFb0IsQ0FBdkI7ZUE0RWV6QixJOztBQUNmNEIsTUFBTSxDQUFDQyxPQUFQLEdBQWlCN0IsSUFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaWNvbnYgZnJvbSAnaWNvbnYtbGl0ZSc7XG5cbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRiwgMHhGRiwgMHhGRl0pO1xuXG5jb25zdCBUZXh0OiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4MjMsXG4gIHR5cGU6ICdURVhUJyxcbiAgbmFtZTogJ1RleHQnLFxuXG4gIGhhc1RhYmxlTmFtZTogdHJ1ZSxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICd0ZXh0JztcbiAgfSxcblxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXIsIF9vcHRpb25zKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDEwKTtcbiAgICBidWZmZXIud3JpdGVVSW50OCh0aGlzLmlkLCAwKTtcbiAgICBidWZmZXIud3JpdGVJbnQzMkxFKHBhcmFtZXRlci5sZW5ndGghLCAxKTtcblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDUsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgIGJ1ZmZlci53cml0ZUludDMyTEUodmFsdWUubGVuZ3RoLCAwKTtcbiAgICByZXR1cm4gYnVmZmVyO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyRGF0YTogZnVuY3Rpb24qKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHlpZWxkIHZhbHVlO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSwgY29sbGF0aW9uKTogQnVmZmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbGxhdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBjb2xsYXRpb24gd2FzIHNldCBieSB0aGUgc2VydmVyIGZvciB0aGUgY3VycmVudCBjb25uZWN0aW9uLicpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uLmNvZGVwYWdlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBjb2xsYXRpb24gc2V0IGJ5IHRoZSBzZXJ2ZXIgaGFzIG5vIGFzc29jaWF0ZWQgZW5jb2RpbmcuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGljb252LmVuY29kZSh2YWx1ZSwgY29sbGF0aW9uLmNvZGVwYWdlKTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVGV4dDtcbm1vZHVsZS5leHBvcnRzID0gVGV4dDtcbiJdfQ==
@@ -45,11 +45,7 @@ const UniqueIdentifier = {
45
45
  }
46
46
 
47
47
  if (typeof value !== 'string') {
48
- if (typeof value.toString !== 'function') {
49
- throw new TypeError('Invalid string.');
50
- }
51
-
52
- value = value.toString();
48
+ throw new TypeError('Invalid string.');
53
49
  }
54
50
 
55
51
  if (!/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(value)) {
@@ -62,4 +58,4 @@ const UniqueIdentifier = {
62
58
  var _default = UniqueIdentifier;
63
59
  exports.default = _default;
64
60
  module.exports = UniqueIdentifier;
65
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3VuaXF1ZWlkZW50aWZpZXIudHMiXSwibmFtZXMiOlsiTlVMTF9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiREFUQV9MRU5HVEgiLCJVbmlxdWVJZGVudGlmaWVyIiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwicmVzb2x2ZUxlbmd0aCIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsInBhcmFtZXRlciIsIm9wdGlvbnMiLCJ2YWx1ZSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwidG9TdHJpbmciLCJUeXBlRXJyb3IiLCJ0ZXN0IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOztBQUVBLE1BQU1BLFdBQVcsR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELENBQVosQ0FBcEI7QUFDQSxNQUFNQyxXQUFXLEdBQUdGLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxDQUFaLENBQXBCO0FBRUEsTUFBTUUsZ0JBQTBCLEdBQUc7QUFDakNDLEVBQUFBLEVBQUUsRUFBRSxJQUQ2QjtBQUVqQ0MsRUFBQUEsSUFBSSxFQUFFLE9BRjJCO0FBR2pDQyxFQUFBQSxJQUFJLEVBQUUsa0JBSDJCO0FBS2pDQyxFQUFBQSxXQUFXLEVBQUUsWUFBVztBQUN0QixXQUFPLGtCQUFQO0FBQ0QsR0FQZ0M7QUFTakNDLEVBQUFBLGFBQWEsRUFBRSxZQUFXO0FBQ3hCLFdBQU8sRUFBUDtBQUNELEdBWGdDOztBQWFqQ0MsRUFBQUEsZ0JBQWdCLEdBQUc7QUFDakIsV0FBT1QsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxLQUFLRyxFQUFOLEVBQVUsSUFBVixDQUFaLENBQVA7QUFDRCxHQWZnQzs7QUFpQmpDTSxFQUFBQSx1QkFBdUIsQ0FBQ0MsU0FBRCxFQUFZQyxPQUFaLEVBQXFCO0FBQzFDLFFBQUlELFNBQVMsQ0FBQ0UsS0FBVixJQUFtQixJQUF2QixFQUE2QjtBQUMzQixhQUFPZCxXQUFQO0FBQ0Q7O0FBRUQsV0FBT0csV0FBUDtBQUNELEdBdkJnQzs7QUF5QmpDWSxFQUFBQSxxQkFBcUIsRUFBRSxXQUFVSCxTQUFWLEVBQXFCQyxPQUFyQixFQUE4QjtBQUNuRCxRQUFJRCxTQUFTLENBQUNFLEtBQVYsSUFBbUIsSUFBdkIsRUFBNkI7QUFDM0I7QUFDRDs7QUFFRCxVQUFNYixNQUFNLENBQUNDLElBQVAsQ0FBWSw2QkFBWVUsU0FBUyxDQUFDRSxLQUF0QixDQUFaLENBQU47QUFDRCxHQS9CZ0M7QUFpQ2pDRSxFQUFBQSxRQUFRLEVBQUUsVUFBU0YsS0FBVCxFQUErQjtBQUN2QyxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixhQUFPLElBQVA7QUFDRDs7QUFFRCxRQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBckIsRUFBK0I7QUFDN0IsVUFBSSxPQUFPQSxLQUFLLENBQUNHLFFBQWIsS0FBMEIsVUFBOUIsRUFBMEM7QUFDeEMsY0FBTSxJQUFJQyxTQUFKLENBQWMsaUJBQWQsQ0FBTjtBQUNEOztBQUVESixNQUFBQSxLQUFLLEdBQUdBLEtBQUssQ0FBQ0csUUFBTixFQUFSO0FBQ0Q7O0FBRUQsUUFBSSxDQUFDLGtFQUFrRUUsSUFBbEUsQ0FBdUVMLEtBQXZFLENBQUwsRUFBb0Y7QUFDbEYsWUFBTSxJQUFJSSxTQUFKLENBQWMsZUFBZCxDQUFOO0FBQ0Q7O0FBRUQsV0FBT0osS0FBUDtBQUNEO0FBbkRnQyxDQUFuQztlQXNEZVYsZ0I7O0FBQ2ZnQixNQUFNLENBQUNDLE9BQVAsR0FBaUJqQixnQkFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5pbXBvcnQgeyBndWlkVG9BcnJheSB9IGZyb20gJy4uL2d1aWQtcGFyc2VyJztcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgwMF0pO1xuY29uc3QgREFUQV9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHgxMF0pO1xuXG5jb25zdCBVbmlxdWVJZGVudGlmaWVyOiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4MjQsXG4gIHR5cGU6ICdHVUlETicsXG4gIG5hbWU6ICdVbmlxdWVJZGVudGlmaWVyJyxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuICd1bmlxdWVpZGVudGlmaWVyJztcbiAgfSxcblxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gMTY7XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbygpIHtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oW3RoaXMuaWQsIDB4MTBdKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBpZiAocGFyYW1ldGVyLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICB9XG5cbiAgICByZXR1cm4gREFUQV9MRU5HVEg7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhOiBmdW5jdGlvbioocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgeWllbGQgQnVmZmVyLmZyb20oZ3VpZFRvQXJyYXkocGFyYW1ldGVyLnZhbHVlKSk7XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAodHlwZW9mIHZhbHVlLnRvU3RyaW5nICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgc3RyaW5nLicpO1xuICAgICAgfVxuXG4gICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgaWYgKCEvXlswLTlhLWZdezh9LVswLTlhLWZdezR9LVswLTlhLWZdezR9LVswLTlhLWZdezR9LVswLTlhLWZdezEyfSQvaS50ZXN0KHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBHVUlELicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVW5pcXVlSWRlbnRpZmllcjtcbm1vZHVsZS5leHBvcnRzID0gVW5pcXVlSWRlbnRpZmllcjtcbiJdfQ==
61
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3VuaXF1ZWlkZW50aWZpZXIudHMiXSwibmFtZXMiOlsiTlVMTF9MRU5HVEgiLCJCdWZmZXIiLCJmcm9tIiwiREFUQV9MRU5HVEgiLCJVbmlxdWVJZGVudGlmaWVyIiwiaWQiLCJ0eXBlIiwibmFtZSIsImRlY2xhcmF0aW9uIiwicmVzb2x2ZUxlbmd0aCIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsInBhcmFtZXRlciIsIm9wdGlvbnMiLCJ2YWx1ZSIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwiVHlwZUVycm9yIiwidGVzdCIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFDQTs7QUFFQSxNQUFNQSxXQUFXLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxDQUFaLENBQXBCO0FBQ0EsTUFBTUMsV0FBVyxHQUFHRixNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsQ0FBWixDQUFwQjtBQUVBLE1BQU1FLGdCQUEwQixHQUFHO0FBQ2pDQyxFQUFBQSxFQUFFLEVBQUUsSUFENkI7QUFFakNDLEVBQUFBLElBQUksRUFBRSxPQUYyQjtBQUdqQ0MsRUFBQUEsSUFBSSxFQUFFLGtCQUgyQjtBQUtqQ0MsRUFBQUEsV0FBVyxFQUFFLFlBQVc7QUFDdEIsV0FBTyxrQkFBUDtBQUNELEdBUGdDO0FBU2pDQyxFQUFBQSxhQUFhLEVBQUUsWUFBVztBQUN4QixXQUFPLEVBQVA7QUFDRCxHQVhnQzs7QUFhakNDLEVBQUFBLGdCQUFnQixHQUFHO0FBQ2pCLFdBQU9ULE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsS0FBS0csRUFBTixFQUFVLElBQVYsQ0FBWixDQUFQO0FBQ0QsR0FmZ0M7O0FBaUJqQ00sRUFBQUEsdUJBQXVCLENBQUNDLFNBQUQsRUFBWUMsT0FBWixFQUFxQjtBQUMxQyxRQUFJRCxTQUFTLENBQUNFLEtBQVYsSUFBbUIsSUFBdkIsRUFBNkI7QUFDM0IsYUFBT2QsV0FBUDtBQUNEOztBQUVELFdBQU9HLFdBQVA7QUFDRCxHQXZCZ0M7O0FBeUJqQ1ksRUFBQUEscUJBQXFCLEVBQUUsV0FBVUgsU0FBVixFQUFxQkMsT0FBckIsRUFBOEI7QUFDbkQsUUFBSUQsU0FBUyxDQUFDRSxLQUFWLElBQW1CLElBQXZCLEVBQTZCO0FBQzNCO0FBQ0Q7O0FBRUQsVUFBTWIsTUFBTSxDQUFDQyxJQUFQLENBQVksNkJBQVlVLFNBQVMsQ0FBQ0UsS0FBdEIsQ0FBWixDQUFOO0FBQ0QsR0EvQmdDO0FBaUNqQ0UsRUFBQUEsUUFBUSxFQUFFLFVBQVNGLEtBQVQsRUFBK0I7QUFDdkMsUUFBSUEsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDakIsYUFBTyxJQUFQO0FBQ0Q7O0FBRUQsUUFBSSxPQUFPQSxLQUFQLEtBQWlCLFFBQXJCLEVBQStCO0FBQzdCLFlBQU0sSUFBSUcsU0FBSixDQUFjLGlCQUFkLENBQU47QUFDRDs7QUFFRCxRQUFJLENBQUMsa0VBQWtFQyxJQUFsRSxDQUF1RUosS0FBdkUsQ0FBTCxFQUFvRjtBQUNsRixZQUFNLElBQUlHLFNBQUosQ0FBYyxlQUFkLENBQU47QUFDRDs7QUFFRCxXQUFPSCxLQUFQO0FBQ0Q7QUEvQ2dDLENBQW5DO2VBa0RlVixnQjs7QUFDZmUsTUFBTSxDQUFDQyxPQUFQLEdBQWlCaEIsZ0JBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuaW1wb3J0IHsgZ3VpZFRvQXJyYXkgfSBmcm9tICcuLi9ndWlkLXBhcnNlcic7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MDBdKTtcbmNvbnN0IERBVEFfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4MTBdKTtcblxuY29uc3QgVW5pcXVlSWRlbnRpZmllcjogRGF0YVR5cGUgPSB7XG4gIGlkOiAweDI0LFxuICB0eXBlOiAnR1VJRE4nLFxuICBuYW1lOiAnVW5pcXVlSWRlbnRpZmllcicsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiAndW5pcXVlaWRlbnRpZmllcic7XG4gIH0sXG5cbiAgcmVzb2x2ZUxlbmd0aDogZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIDE2O1xuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8oKSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKFt0aGlzLmlkLCAweDEwXSk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgaWYgKHBhcmFtZXRlci52YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgfVxuXG4gICAgcmV0dXJuIERBVEFfTEVOR1RIO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyRGF0YTogZnVuY3Rpb24qKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGlmIChwYXJhbWV0ZXIudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHlpZWxkIEJ1ZmZlci5mcm9tKGd1aWRUb0FycmF5KHBhcmFtZXRlci52YWx1ZSkpO1xuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBzdHJpbmcuJyk7XG4gICAgfVxuXG4gICAgaWYgKCEvXlswLTlhLWZdezh9LVswLTlhLWZdezR9LVswLTlhLWZdezR9LVswLTlhLWZdezR9LVswLTlhLWZdezEyfSQvaS50ZXN0KHZhbHVlKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBHVUlELicpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVW5pcXVlSWRlbnRpZmllcjtcbm1vZHVsZS5leHBvcnRzID0gVW5pcXVlSWRlbnRpZmllcjtcbiJdfQ==
@@ -115,11 +115,7 @@ const VarChar = {
115
115
  }
116
116
 
117
117
  if (typeof value !== 'string') {
118
- if (typeof value.toString !== 'function') {
119
- throw new TypeError('Invalid string.');
120
- }
121
-
122
- value = value.toString();
118
+ throw new TypeError('Invalid string.');
123
119
  }
124
120
 
125
121
  if (!collation) {
@@ -136,4 +132,4 @@ const VarChar = {
136
132
  var _default = VarChar;
137
133
  exports.default = _default;
138
134
  module.exports = VarChar;
139
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3ZhcmNoYXIudHMiXSwibmFtZXMiOlsiTUFYIiwiVU5LTk9XTl9QTFBfTEVOIiwiQnVmZmVyIiwiZnJvbSIsIlBMUF9URVJNSU5BVE9SIiwiTlVMTF9MRU5HVEgiLCJNQVhfTlVMTF9MRU5HVEgiLCJWYXJDaGFyIiwiaWQiLCJ0eXBlIiwibmFtZSIsIm1heGltdW1MZW5ndGgiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInZhbHVlIiwibGVuZ3RoIiwib3V0cHV0IiwicmVzb2x2ZUxlbmd0aCIsImdlbmVyYXRlVHlwZUluZm8iLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlVUludDgiLCJ3cml0ZVVJbnQxNkxFIiwiY29sbGF0aW9uIiwidG9CdWZmZXIiLCJjb3B5IiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhIiwid3JpdGVVSW50MzJMRSIsInZhbGlkYXRlIiwidG9TdHJpbmciLCJUeXBlRXJyb3IiLCJFcnJvciIsImNvZGVwYWdlIiwiaWNvbnYiLCJlbmNvZGUiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFJQSxNQUFNQSxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQU4sSUFBWSxDQUF4QjtBQUNBLE1BQU1DLGVBQWUsR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxFQUFhLElBQWIsRUFBbUIsSUFBbkIsRUFBeUIsSUFBekIsRUFBK0IsSUFBL0IsRUFBcUMsSUFBckMsRUFBMkMsSUFBM0MsQ0FBWixDQUF4QjtBQUNBLE1BQU1DLGNBQWMsR0FBR0YsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxFQUFhLElBQWIsRUFBbUIsSUFBbkIsQ0FBWixDQUF2QjtBQUVBLE1BQU1FLFdBQVcsR0FBR0gsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVB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QUFQLEtBQWlCLFFBQXJCLEVBQStCO0FBQzdCLFVBQUksT0FBT0EsS0FBSyxDQUFDaUIsUUFBYixLQUEwQixVQUE5QixFQUEwQztBQUN4QyxjQUFNLElBQUlDLFNBQUosQ0FBYyxpQkFBZCxDQUFOO0FBQ0Q7O0FBRURsQixNQUFBQSxLQUFLLEdBQUdBLEtBQUssQ0FBQ2lCLFFBQU4sRUFBUjtBQUNEOztBQUVELFFBQUksQ0FBQ1IsU0FBTCxFQUFnQjtBQUNkLFlBQU0sSUFBSVUsS0FBSixDQUFVLGdFQUFWLENBQU47QUFDRDs7QUFFRCxRQUFJLENBQUNWLFNBQVMsQ0FBQ1csUUFBZixFQUF5QjtBQUN2QixZQUFNLElBQUlELEtBQUosQ0FBVSw2REFBVixDQUFOO0FBQ0Q7O0FBRUQsV0FBT0UsbUJBQU1DLE1BQU4sQ0FBYXRCLEtBQWIsRUFBb0JTLFNBQVMsQ0FBQ1csUUFBOUIsQ0FBUDtBQUNEO0FBeEhtRCxDQUF0RDtlQTJIZTNCLE87O0FBQ2Y4QixNQUFNLENBQUNDLE9BQVAsR0FBaUIvQixPQUFqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpY29udiBmcm9tICdpY29udi1saXRlJztcblxuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuXG5jb25zdCBNQVggPSAoMSA8PCAxNikgLSAxO1xuY29uc3QgVU5LTk9XTl9QTFBfTEVOID0gQnVmZmVyLmZyb20oWzB4ZmUsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmZdKTtcbmNvbnN0IFBMUF9URVJNSU5BVE9SID0gQnVmZmVyLmZyb20oWzB4MDAsIDB4MDAsIDB4MDAsIDB4MDBdKTtcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRl0pO1xuY29uc3QgTUFYX05VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkZdKTtcblxuY29uc3QgVmFyQ2hhcjogeyBtYXhpbXVtTGVuZ3RoOiBudW1iZXIgfSAmIERhdGFUeXBlID0ge1xuICBpZDogMHhBNyxcbiAgdHlwZTogJ0JJR1ZBUkNIUicsXG4gIG5hbWU6ICdWYXJDaGFyJyxcbiAgbWF4aW11bUxlbmd0aDogODAwMCxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGxldCBsZW5ndGg7XG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGgpIHtcbiAgICAgIGxlbmd0aCA9IHBhcmFtZXRlci5sZW5ndGg7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBsZW5ndGggPSB2YWx1ZS5sZW5ndGggfHwgMTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID09PSBudWxsICYmICFwYXJhbWV0ZXIub3V0cHV0KSB7XG4gICAgICBsZW5ndGggPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZW5ndGggPSB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKGxlbmd0aCA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIHJldHVybiAndmFyY2hhcignICsgbGVuZ3RoICsgJyknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ3ZhcmNoYXIobWF4KSc7XG4gICAgfVxuICB9LFxuXG4gIHJlc29sdmVMZW5ndGg6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcGFyYW1ldGVyLmxlbmd0aDtcbiAgICB9IGVsc2UgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGggfHwgMTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMubWF4aW11bUxlbmd0aDtcbiAgICB9XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoOCk7XG4gICAgYnVmZmVyLndyaXRlVUludDgodGhpcy5pZCwgMCk7XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRShwYXJhbWV0ZXIubGVuZ3RoISwgMSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKE1BWCwgMSk7XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtZXRlci5jb2xsYXRpb24udG9CdWZmZXIoKS5jb3B5KGJ1ZmZlciwgMywgMCwgNSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIE5VTExfTEVOR1RIO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIE1BWF9OVUxMX0xFTkdUSDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMik7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRSh2YWx1ZS5sZW5ndGgsIDApO1xuICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFVOS05PV05fUExQX0xFTjtcbiAgICB9XG4gIH0sXG5cbiAgKmdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICB5aWVsZCB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgICAgICBidWZmZXIud3JpdGVVSW50MzJMRSh2YWx1ZS5sZW5ndGgsIDApO1xuICAgICAgICB5aWVsZCBidWZmZXI7XG5cbiAgICAgICAgeWllbGQgdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIHlpZWxkIFBMUF9URVJNSU5BVE9SO1xuICAgIH1cbiAgfSxcblxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWUsIGNvbGxhdGlvbik6IEJ1ZmZlciB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZS50b1N0cmluZyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICAgIH1cblxuICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNvbGxhdGlvbiB3YXMgc2V0IGJ5IHRoZSBzZXJ2ZXIgZm9yIHRoZSBjdXJyZW50IGNvbm5lY3Rpb24uJyk7XG4gICAgfVxuXG4gICAgaWYgKCFjb2xsYXRpb24uY29kZXBhZ2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGNvbGxhdGlvbiBzZXQgYnkgdGhlIHNlcnZlciBoYXMgbm8gYXNzb2NpYXRlZCBlbmNvZGluZy4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaWNvbnYuZW5jb2RlKHZhbHVlLCBjb2xsYXRpb24uY29kZXBhZ2UpO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBWYXJDaGFyO1xubW9kdWxlLmV4cG9ydHMgPSBWYXJDaGFyO1xuIl19
135
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3ZhcmNoYXIudHMiXSwibmFtZXMiOlsiTUFYIiwiVU5LTk9XTl9QTFBfTEVOIiwiQnVmZmVyIiwiZnJvbSIsIlBMUF9URVJNSU5BVE9SIiwiTlVMTF9MRU5HVEgiLCJNQVhfTlVMTF9MRU5HVEgiLCJWYXJDaGFyIiwiaWQiLCJ0eXBlIiwibmFtZSIsIm1heGltdW1MZW5ndGgiLCJkZWNsYXJhdGlvbiIsInBhcmFtZXRlciIsInZhbHVlIiwibGVuZ3RoIiwib3V0cHV0IiwicmVzb2x2ZUxlbmd0aCIsImdlbmVyYXRlVHlwZUluZm8iLCJidWZmZXIiLCJhbGxvYyIsIndyaXRlVUludDgiLCJ3cml0ZVVJbnQxNkxFIiwiY29sbGF0aW9uIiwidG9CdWZmZXIiLCJjb3B5IiwiZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgiLCJvcHRpb25zIiwiZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhIiwid3JpdGVVSW50MzJMRSIsInZhbGlkYXRlIiwiVHlwZUVycm9yIiwiRXJyb3IiLCJjb2RlcGFnZSIsImljb252IiwiZW5jb2RlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBSUEsTUFBTUEsR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFOLElBQVksQ0FBeEI7QUFDQSxNQUFNQyxlQUFlLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYSxJQUFiLEVBQW1CLElBQW5CLEVBQXlCLElBQXpCLEVBQStCLElBQS9CLEVBQXFDLElBQXJDLEVBQTJDLElBQTNDLENBQVosQ0FBeEI7QUFDQSxNQUFNQyxjQUFjLEdBQUdGLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsRUFBYSxJQUFiLEVBQW1CLElBQW5CLENBQVosQ0FBdkI7QUFFQSxNQUFNRSxXQUFXLEdBQUdILE1BQU0sQ0FBQ0MsSUFBUCxDQUFZLENBQUMsSUFBRCxFQUFPLElBQVAsQ0FBWixDQUFwQjtBQUNBLE1BQU1HLGVBQWUsR0FBR0osTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxFQUFhLElBQWIsRUFBbUIsSUFBbkIsRUFBeUIsSUFBekIsRUFBK0IsSUFBL0IsRUFBcUMsSUFBckMsRUFBMkMsSUFBM0MsQ0FBWixDQUF4QjtBQUVBLE1BQU1JLE9BQTZDLEdBQUc7QUFDcERDLEVBQUFBLEVBQUUsRUFBRSxJQURnRDtBQUVwREMsRUFBQUEsSUFBSSxFQUFFLFdBRjhDO0FBR3BEQyxFQUFBQSxJQUFJLEVBQUUsU0FIOEM7QUFJcERDLEVBQUFBLGFBQWEsRUFBRSxJQUpxQztBQU1wREMsRUFBQUEsV0FBVyxFQUFFLFVBQVNDLFNBQVQsRUFBb0I7QUFDL0IsVUFBTUMsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCO0FBRUEsUUFBSUMsTUFBSjs7QUFDQSxRQUFJRixTQUFTLENBQUNFLE1BQWQsRUFBc0I7QUFDcEJBLE1BQUFBLE1BQU0sR0FBR0YsU0FBUyxDQUFDRSxNQUFuQjtBQUNELEtBRkQsTUFFTyxJQUFJRCxLQUFLLElBQUksSUFBYixFQUFtQjtBQUN4QkMsTUFBQUEsTUFBTSxHQUFHRCxLQUFLLENBQUNDLE1BQU4sSUFBZ0IsQ0FBekI7QUFDRCxLQUZNLE1BRUEsSUFBSUQsS0FBSyxLQUFLLElBQVYsSUFBa0IsQ0FBQ0QsU0FBUyxDQUFDRyxNQUFqQyxFQUF5QztBQUM5Q0QsTUFBQUEsTUFBTSxHQUFHLENBQVQ7QUFDRCxLQUZNLE1BRUE7QUFDTEEsTUFBQUEsTUFBTSxHQUFHLEtBQUtKLGFBQWQ7QUFDRDs7QUFFRCxRQUFJSSxNQUFNLElBQUksS0FBS0osYUFBbkIsRUFBa0M7QUFDaEMsYUFBTyxhQUFhSSxNQUFiLEdBQXNCLEdBQTdCO0FBQ0QsS0FGRCxNQUVPO0FBQ0wsYUFBTyxjQUFQO0FBQ0Q7QUFDRixHQXpCbUQ7QUEyQnBERSxFQUFBQSxhQUFhLEVBQUUsVUFBU0osU0FBVCxFQUFvQjtBQUNqQyxVQUFNQyxLQUFLLEdBQUdELFNBQVMsQ0FBQ0MsS0FBeEI7O0FBRUEsUUFBSUQsU0FBUyxDQUFDRSxNQUFWLElBQW9CLElBQXhCLEVBQThCO0FBQzVCLGFBQU9GLFNBQVMsQ0FBQ0UsTUFBakI7QUFDRCxLQUZELE1BRU8sSUFBSUQsS0FBSyxJQUFJLElBQWIsRUFBbUI7QUFDeEIsYUFBT0EsS0FBSyxDQUFDQyxNQUFOLElBQWdCLENBQXZCO0FBQ0QsS0FGTSxNQUVBO0FBQ0wsYUFBTyxLQUFLSixhQUFaO0FBQ0Q7QUFDRixHQXJDbUQ7O0FBdUNwRE8sRUFBQUEsZ0JBQWdCLENBQUNMLFNBQUQsRUFBWTtBQUMxQixVQUFNTSxNQUFNLEdBQUdqQixNQUFNLENBQUNrQixLQUFQLENBQWEsQ0FBYixDQUFmO0FBQ0FELElBQUFBLE1BQU0sQ0FBQ0UsVUFBUCxDQUFrQixLQUFLYixFQUF2QixFQUEyQixDQUEzQjs7QUFFQSxRQUFJSyxTQUFTLENBQUNFLE1BQVYsSUFBcUIsS0FBS0osYUFBOUIsRUFBNkM7QUFDM0NRLE1BQUFBLE1BQU0sQ0FBQ0csYUFBUCxDQUFxQlQsU0FBUyxDQUFDRSxNQUEvQixFQUF3QyxDQUF4QztBQUNELEtBRkQsTUFFTztBQUNMSSxNQUFBQSxNQUFNLENBQUNHLGFBQVAsQ0FBcUJ0QixHQUFyQixFQUEwQixDQUExQjtBQUNEOztBQUVELFFBQUlhLFNBQVMsQ0FBQ1UsU0FBZCxFQUF5QjtBQUN2QlYsTUFBQUEsU0FBUyxDQUFDVSxTQUFWLENBQW9CQyxRQUFwQixHQUErQkMsSUFBL0IsQ0FBb0NOLE1BQXBDLEVBQTRDLENBQTVDLEVBQStDLENBQS9DLEVBQWtELENBQWxEO0FBQ0Q7O0FBRUQsV0FBT0EsTUFBUDtBQUNELEdBdERtRDs7QUF3RHBETyxFQUFBQSx1QkFBdUIsQ0FBQ2IsU0FBRCxFQUFZYyxPQUFaLEVBQXFCO0FBQzFDLFVBQU1iLEtBQUssR0FBR0QsU0FBUyxDQUFDQyxLQUF4Qjs7QUFFQSxRQUFJQSxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixVQUFJRCxTQUFTLENBQUNFLE1BQVYsSUFBcUIsS0FBS0osYUFBOUIsRUFBNkM7QUFDM0MsZUFBT04sV0FBUDtBQUNELE9BRkQsTUFFTztBQUNMLGVBQU9DLGVBQVA7QUFDRDtBQUNGOztBQUVELFFBQUlPLFNBQVMsQ0FBQ0UsTUFBVixJQUFxQixLQUFLSixhQUE5QixFQUE2QztBQUMzQyxZQUFNUSxNQUFNLEdBQUdqQixNQUFNLENBQUNrQixLQUFQLENBQWEsQ0FBYixDQUFmO0FBQ0FELE1BQUFBLE1BQU0sQ0FBQ0csYUFBUCxDQUFxQlIsS0FBSyxDQUFDQyxNQUEzQixFQUFtQyxDQUFuQztBQUNBLGFBQU9JLE1BQVA7QUFDRCxLQUpELE1BSU87QUFDTCxhQUFPbEIsZUFBUDtBQUNEO0FBQ0YsR0ExRW1EOztBQTRFcEQsR0FBQzJCLHFCQUFELENBQXVCZixTQUF2QixFQUFrQ2MsT0FBbEMsRUFBMkM7QUFDekMsVUFBTWIsS0FBSyxHQUFHRCxTQUFTLENBQUNDLEtBQXhCOztBQUVBLFFBQUlBLEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCO0FBQ0Q7O0FBRUQsUUFBSUQsU0FBUyxDQUFDRSxNQUFWLElBQXFCLEtBQUtKLGFBQTlCLEVBQTZDO0FBQzNDLFlBQU1HLEtBQU47QUFDRCxLQUZELE1BRU87QUFDTCxVQUFJQSxLQUFLLENBQUNDLE1BQU4sR0FBZSxDQUFuQixFQUFzQjtBQUNwQixjQUFNSSxNQUFNLEdBQUdqQixNQUFNLENBQUNrQixLQUFQLENBQWEsQ0FBYixDQUFmO0FBQ0FELFFBQUFBLE1BQU0sQ0FBQ1UsYUFBUCxDQUFxQmYsS0FBSyxDQUFDQyxNQUEzQixFQUFtQyxDQUFuQztBQUNBLGNBQU1JLE1BQU47QUFFQSxjQUFNTCxLQUFOO0FBQ0Q7O0FBRUQsWUFBTVYsY0FBTjtBQUNEO0FBQ0YsR0FoR21EOztBQWtHcEQwQixFQUFBQSxRQUFRLEVBQUUsVUFBU2hCLEtBQVQsRUFBZ0JTLFNBQWhCLEVBQTBDO0FBQ2xELFFBQUlULEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCLGFBQU8sSUFBUDtBQUNEOztBQUVELFFBQUksT0FBT0EsS0FBUCxLQUFpQixRQUFyQixFQUErQjtBQUM3QixZQUFNLElBQUlpQixTQUFKLENBQWMsaUJBQWQsQ0FBTjtBQUNEOztBQUVELFFBQUksQ0FBQ1IsU0FBTCxFQUFnQjtBQUNkLFlBQU0sSUFBSVMsS0FBSixDQUFVLGdFQUFWLENBQU47QUFDRDs7QUFFRCxRQUFJLENBQUNULFNBQVMsQ0FBQ1UsUUFBZixFQUF5QjtBQUN2QixZQUFNLElBQUlELEtBQUosQ0FBVSw2REFBVixDQUFOO0FBQ0Q7O0FBRUQsV0FBT0UsbUJBQU1DLE1BQU4sQ0FBYXJCLEtBQWIsRUFBb0JTLFNBQVMsQ0FBQ1UsUUFBOUIsQ0FBUDtBQUNEO0FBcEhtRCxDQUF0RDtlQXVIZTFCLE87O0FBQ2Y2QixNQUFNLENBQUNDLE9BQVAsR0FBaUI5QixPQUFqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpY29udiBmcm9tICdpY29udi1saXRlJztcblxuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuLi9kYXRhLXR5cGUnO1xuXG5jb25zdCBNQVggPSAoMSA8PCAxNikgLSAxO1xuY29uc3QgVU5LTk9XTl9QTFBfTEVOID0gQnVmZmVyLmZyb20oWzB4ZmUsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmYsIDB4ZmZdKTtcbmNvbnN0IFBMUF9URVJNSU5BVE9SID0gQnVmZmVyLmZyb20oWzB4MDAsIDB4MDAsIDB4MDAsIDB4MDBdKTtcblxuY29uc3QgTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRl0pO1xuY29uc3QgTUFYX05VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkZdKTtcblxuY29uc3QgVmFyQ2hhcjogeyBtYXhpbXVtTGVuZ3RoOiBudW1iZXIgfSAmIERhdGFUeXBlID0ge1xuICBpZDogMHhBNyxcbiAgdHlwZTogJ0JJR1ZBUkNIUicsXG4gIG5hbWU6ICdWYXJDaGFyJyxcbiAgbWF4aW11bUxlbmd0aDogODAwMCxcblxuICBkZWNsYXJhdGlvbjogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGxldCBsZW5ndGg7XG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGgpIHtcbiAgICAgIGxlbmd0aCA9IHBhcmFtZXRlci5sZW5ndGg7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICBsZW5ndGggPSB2YWx1ZS5sZW5ndGggfHwgMTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID09PSBudWxsICYmICFwYXJhbWV0ZXIub3V0cHV0KSB7XG4gICAgICBsZW5ndGggPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZW5ndGggPSB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKGxlbmd0aCA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIHJldHVybiAndmFyY2hhcignICsgbGVuZ3RoICsgJyknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ3ZhcmNoYXIobWF4KSc7XG4gICAgfVxuICB9LFxuXG4gIHJlc29sdmVMZW5ndGg6IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gcGFyYW1ldGVyLmxlbmd0aDtcbiAgICB9IGVsc2UgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGggfHwgMTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMubWF4aW11bUxlbmd0aDtcbiAgICB9XG4gIH0sXG5cbiAgZ2VuZXJhdGVUeXBlSW5mbyhwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoOCk7XG4gICAgYnVmZmVyLndyaXRlVUludDgodGhpcy5pZCwgMCk7XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRShwYXJhbWV0ZXIubGVuZ3RoISwgMSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKE1BWCwgMSk7XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5jb2xsYXRpb24pIHtcbiAgICAgIHBhcmFtZXRlci5jb2xsYXRpb24udG9CdWZmZXIoKS5jb3B5KGJ1ZmZlciwgMywgMCwgNSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1ZmZlcjtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aChwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIE5VTExfTEVOR1RIO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIE1BWF9OVUxMX0xFTkdUSDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoMik7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRSh2YWx1ZS5sZW5ndGgsIDApO1xuICAgICAgcmV0dXJuIGJ1ZmZlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFVOS05PV05fUExQX0xFTjtcbiAgICB9XG4gIH0sXG5cbiAgKmdlbmVyYXRlUGFyYW1ldGVyRGF0YShwYXJhbWV0ZXIsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICB5aWVsZCB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDQpO1xuICAgICAgICBidWZmZXIud3JpdGVVSW50MzJMRSh2YWx1ZS5sZW5ndGgsIDApO1xuICAgICAgICB5aWVsZCBidWZmZXI7XG5cbiAgICAgICAgeWllbGQgdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIHlpZWxkIFBMUF9URVJNSU5BVE9SO1xuICAgIH1cbiAgfSxcblxuICB2YWxpZGF0ZTogZnVuY3Rpb24odmFsdWUsIGNvbGxhdGlvbik6IEJ1ZmZlciB8IG51bGwge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBzdHJpbmcuJyk7XG4gICAgfVxuXG4gICAgaWYgKCFjb2xsYXRpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gY29sbGF0aW9uIHdhcyBzZXQgYnkgdGhlIHNlcnZlciBmb3IgdGhlIGN1cnJlbnQgY29ubmVjdGlvbi4nKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbGxhdGlvbi5jb2RlcGFnZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgY29sbGF0aW9uIHNldCBieSB0aGUgc2VydmVyIGhhcyBubyBhc3NvY2lhdGVkIGVuY29kaW5nLicpO1xuICAgIH1cblxuICAgIHJldHVybiBpY29udi5lbmNvZGUodmFsdWUsIGNvbGxhdGlvbi5jb2RlcGFnZSk7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZhckNoYXI7XG5tb2R1bGUuZXhwb3J0cyA9IFZhckNoYXI7XG4iXX0=
package/lib/errors.js CHANGED
@@ -1,43 +1,36 @@
1
1
  "use strict";
2
2
 
3
- const util = require('util');
4
-
5
- module.exports.ConnectionError = ConnectionError;
6
-
7
- function ConnectionError(message, code) {
8
- if (!(this instanceof ConnectionError)) {
9
- if (message instanceof ConnectionError) {
10
- return message;
11
- }
12
-
13
- return new ConnectionError(message, code);
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RequestError = exports.ConnectionError = void 0;
7
+
8
+ class ConnectionError extends Error {
9
+ constructor(message, code) {
10
+ super(message);
11
+ this.code = void 0;
12
+ this.isTransient = void 0;
13
+ this.code = code;
14
14
  }
15
15
 
16
- Error.call(this);
17
- this.message = message;
18
- this.code = code;
19
- Error.captureStackTrace(this, this.constructor);
20
16
  }
21
17
 
22
- util.inherits(ConnectionError, Error);
23
- ConnectionError.prototype.name = 'ConnectionError';
24
- module.exports.RequestError = RequestError;
25
-
26
- function RequestError(message, code) {
27
- if (!(this instanceof RequestError)) {
28
- if (message instanceof RequestError) {
29
- return message;
30
- }
31
-
32
- return new RequestError(message, code);
18
+ exports.ConnectionError = ConnectionError;
19
+
20
+ class RequestError extends Error {
21
+ constructor(message, code) {
22
+ super(message);
23
+ this.code = void 0;
24
+ this.number = void 0;
25
+ this.state = void 0;
26
+ this.class = void 0;
27
+ this.serverName = void 0;
28
+ this.procName = void 0;
29
+ this.lineNumber = void 0;
30
+ this.code = code;
33
31
  }
34
32
 
35
- Error.call(this);
36
- this.message = message;
37
- this.code = code;
38
- Error.captureStackTrace(this, this.constructor);
39
33
  }
40
34
 
41
- util.inherits(RequestError, Error);
42
- RequestError.prototype.name = 'RequestError';
43
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvcnMuanMiXSwibmFtZXMiOlsidXRpbCIsInJlcXVpcmUiLCJtb2R1bGUiLCJleHBvcnRzIiwiQ29ubmVjdGlvbkVycm9yIiwibWVzc2FnZSIsImNvZGUiLCJFcnJvciIsImNhbGwiLCJjYXB0dXJlU3RhY2tUcmFjZSIsImNvbnN0cnVjdG9yIiwiaW5oZXJpdHMiLCJwcm90b3R5cGUiLCJuYW1lIiwiUmVxdWVzdEVycm9yIl0sIm1hcHBpbmdzIjoiOztBQUFBLE1BQU1BLElBQUksR0FBR0MsT0FBTyxDQUFDLE1BQUQsQ0FBcEI7O0FBRUFDLE1BQU0sQ0FBQ0MsT0FBUCxDQUFlQyxlQUFmLEdBQWlDQSxlQUFqQzs7QUFDQSxTQUFTQSxlQUFULENBQXlCQyxPQUF6QixFQUFrQ0MsSUFBbEMsRUFBd0M7QUFDdEMsTUFBSSxFQUFFLGdCQUFnQkYsZUFBbEIsQ0FBSixFQUF3QztBQUN0QyxRQUFJQyxPQUFPLFlBQVlELGVBQXZCLEVBQXdDO0FBQ3RDLGFBQU9DLE9BQVA7QUFDRDs7QUFFRCxXQUFPLElBQUlELGVBQUosQ0FBb0JDLE9BQXBCLEVBQTZCQyxJQUE3QixDQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLEtBQUssQ0FBQ0MsSUFBTixDQUFXLElBQVg7QUFFQSxPQUFLSCxPQUFMLEdBQWVBLE9BQWY7QUFDQSxPQUFLQyxJQUFMLEdBQVlBLElBQVo7QUFFQUMsRUFBQUEsS0FBSyxDQUFDRSxpQkFBTixDQUF3QixJQUF4QixFQUE4QixLQUFLQyxXQUFuQztBQUNEOztBQUVEVixJQUFJLENBQUNXLFFBQUwsQ0FBY1AsZUFBZCxFQUErQkcsS0FBL0I7QUFFQUgsZUFBZSxDQUFDUSxTQUFoQixDQUEwQkMsSUFBMUIsR0FBaUMsaUJBQWpDO0FBRUFYLE1BQU0sQ0FBQ0MsT0FBUCxDQUFlVyxZQUFmLEdBQThCQSxZQUE5Qjs7QUFDQSxTQUFTQSxZQUFULENBQXNCVCxPQUF0QixFQUErQkMsSUFBL0IsRUFBcUM7QUFDbkMsTUFBSSxFQUFFLGdCQUFnQlEsWUFBbEIsQ0FBSixFQUFxQztBQUNuQyxRQUFJVCxPQUFPLFlBQVlTLFlBQXZCLEVBQXFDO0FBQ25DLGFBQU9ULE9BQVA7QUFDRDs7QUFFRCxXQUFPLElBQUlTLFlBQUosQ0FBaUJULE9BQWpCLEVBQTBCQyxJQUExQixDQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLEtBQUssQ0FBQ0MsSUFBTixDQUFXLElBQVg7QUFFQSxPQUFLSCxPQUFMLEdBQWVBLE9BQWY7QUFDQSxPQUFLQyxJQUFMLEdBQVlBLElBQVo7QUFFQUMsRUFBQUEsS0FBSyxDQUFDRSxpQkFBTixDQUF3QixJQUF4QixFQUE4QixLQUFLQyxXQUFuQztBQUNEOztBQUVEVixJQUFJLENBQUNXLFFBQUwsQ0FBY0csWUFBZCxFQUE0QlAsS0FBNUI7QUFFQU8sWUFBWSxDQUFDRixTQUFiLENBQXVCQyxJQUF2QixHQUE4QixjQUE5QiIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHV0aWwgPSByZXF1aXJlKCd1dGlsJyk7XG5cbm1vZHVsZS5leHBvcnRzLkNvbm5lY3Rpb25FcnJvciA9IENvbm5lY3Rpb25FcnJvcjtcbmZ1bmN0aW9uIENvbm5lY3Rpb25FcnJvcihtZXNzYWdlLCBjb2RlKSB7XG4gIGlmICghKHRoaXMgaW5zdGFuY2VvZiBDb25uZWN0aW9uRXJyb3IpKSB7XG4gICAgaWYgKG1lc3NhZ2UgaW5zdGFuY2VvZiBDb25uZWN0aW9uRXJyb3IpIHtcbiAgICAgIHJldHVybiBtZXNzYWdlO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgQ29ubmVjdGlvbkVycm9yKG1lc3NhZ2UsIGNvZGUpO1xuICB9XG5cbiAgRXJyb3IuY2FsbCh0aGlzKTtcblxuICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICB0aGlzLmNvZGUgPSBjb2RlO1xuXG4gIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpO1xufVxuXG51dGlsLmluaGVyaXRzKENvbm5lY3Rpb25FcnJvciwgRXJyb3IpO1xuXG5Db25uZWN0aW9uRXJyb3IucHJvdG90eXBlLm5hbWUgPSAnQ29ubmVjdGlvbkVycm9yJztcblxubW9kdWxlLmV4cG9ydHMuUmVxdWVzdEVycm9yID0gUmVxdWVzdEVycm9yO1xuZnVuY3Rpb24gUmVxdWVzdEVycm9yKG1lc3NhZ2UsIGNvZGUpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIFJlcXVlc3RFcnJvcikpIHtcbiAgICBpZiAobWVzc2FnZSBpbnN0YW5jZW9mIFJlcXVlc3RFcnJvcikge1xuICAgICAgcmV0dXJuIG1lc3NhZ2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBSZXF1ZXN0RXJyb3IobWVzc2FnZSwgY29kZSk7XG4gIH1cblxuICBFcnJvci5jYWxsKHRoaXMpO1xuXG4gIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gIHRoaXMuY29kZSA9IGNvZGU7XG5cbiAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgdGhpcy5jb25zdHJ1Y3Rvcik7XG59XG5cbnV0aWwuaW5oZXJpdHMoUmVxdWVzdEVycm9yLCBFcnJvcik7XG5cblJlcXVlc3RFcnJvci5wcm90b3R5cGUubmFtZSA9ICdSZXF1ZXN0RXJyb3InO1xuIl19
35
+ exports.RequestError = RequestError;
36
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvcnMudHMiXSwibmFtZXMiOlsiQ29ubmVjdGlvbkVycm9yIiwiRXJyb3IiLCJjb25zdHJ1Y3RvciIsIm1lc3NhZ2UiLCJjb2RlIiwiaXNUcmFuc2llbnQiLCJSZXF1ZXN0RXJyb3IiLCJudW1iZXIiLCJzdGF0ZSIsImNsYXNzIiwic2VydmVyTmFtZSIsInByb2NOYW1lIiwibGluZU51bWJlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFPLE1BQU1BLGVBQU4sU0FBOEJDLEtBQTlCLENBQW9DO0FBS3pDQyxFQUFBQSxXQUFXLENBQUNDLE9BQUQsRUFBa0JDLElBQWxCLEVBQWlDO0FBQzFDLFVBQU1ELE9BQU47QUFEMEMsU0FKNUNDLElBSTRDO0FBQUEsU0FGNUNDLFdBRTRDO0FBRzFDLFNBQUtELElBQUwsR0FBWUEsSUFBWjtBQUNEOztBQVR3Qzs7OztBQVlwQyxNQUFNRSxZQUFOLFNBQTJCTCxLQUEzQixDQUFpQztBQVV0Q0MsRUFBQUEsV0FBVyxDQUFDQyxPQUFELEVBQWtCQyxJQUFsQixFQUFpQztBQUMxQyxVQUFNRCxPQUFOO0FBRDBDLFNBVDVDQyxJQVM0QztBQUFBLFNBUDVDRyxNQU80QztBQUFBLFNBTjVDQyxLQU00QztBQUFBLFNBTDVDQyxLQUs0QztBQUFBLFNBSjVDQyxVQUk0QztBQUFBLFNBSDVDQyxRQUc0QztBQUFBLFNBRjVDQyxVQUU0QztBQUcxQyxTQUFLUixJQUFMLEdBQVlBLElBQVo7QUFDRDs7QUFkcUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ29ubmVjdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgaXNUcmFuc2llbnQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjb2RlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG5cbiAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSZXF1ZXN0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvZGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBudW1iZXI6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgc3RhdGU6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgY2xhc3M6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgc2VydmVyTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcm9jTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBsaW5lTnVtYmVyOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjb2RlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG5cbiAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICB9XG59XG4iXX0=
package/lib/message-io.js CHANGED
@@ -35,16 +35,12 @@ class MessageIO extends _events.EventEmitter {
35
35
  this.incomingMessageStream = void 0;
36
36
  this.outgoingMessageStream = void 0;
37
37
  this.securePair = void 0;
38
+ this.incomingMessageIterator = void 0;
38
39
  this.socket = socket;
39
40
  this.debug = debug;
40
41
  this.tlsNegotiationComplete = false;
41
42
  this.incomingMessageStream = new _incomingMessageStream.default(this.debug);
42
- this.incomingMessageStream.on('data', message => {
43
- this.emit('data', message);
44
- });
45
- this.incomingMessageStream.on('error', message => {
46
- this.emit('error', message);
47
- });
43
+ this.incomingMessageIterator = this.incomingMessageStream[Symbol.asyncIterator]();
48
44
  this.outgoingMessageStream = new _outgoingMessageStream.default(this.debug, {
49
45
  packetSize: packetSize
50
46
  });
@@ -130,6 +126,20 @@ class MessageIO extends _events.EventEmitter {
130
126
  message.end(data);
131
127
  this.outgoingMessageStream.write(message);
132
128
  return message;
129
+ }
130
+ /**
131
+ * Read the next incoming message from the socket.
132
+ */
133
+
134
+
135
+ async readMessage() {
136
+ const result = await this.incomingMessageIterator.next();
137
+
138
+ if (result.done) {
139
+ throw new Error('unexpected end of message stream');
140
+ }
141
+
142
+ return result.value;
133
143
  } // Temporarily suspends the flow of incoming packets.
134
144
 
135
145
 
@@ -147,4 +157,4 @@ class MessageIO extends _events.EventEmitter {
147
157
  var _default = MessageIO;
148
158
  exports.default = _default;
149
159
  module.exports = MessageIO;
150
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXNzYWdlLWlvLnRzIl0sIm5hbWVzIjpbIkR1cGxleFBhaXIiLCJyZXF1aXJlIiwiTWVzc2FnZUlPIiwiRXZlbnRFbWl0dGVyIiwiY29uc3RydWN0b3IiLCJzb2NrZXQiLCJwYWNrZXRTaXplIiwiZGVidWciLCJ0bHNOZWdvdGlhdGlvbkNvbXBsZXRlIiwiaW5jb21pbmdNZXNzYWdlU3RyZWFtIiwib3V0Z29pbmdNZXNzYWdlU3RyZWFtIiwic2VjdXJlUGFpciIsIkluY29taW5nTWVzc2FnZVN0cmVhbSIsIm9uIiwibWVzc2FnZSIsImVtaXQiLCJPdXRnb2luZ01lc3NhZ2VTdHJlYW0iLCJwaXBlIiwiYXJncyIsImxlbmd0aCIsImxvZyIsImNsZWFydGV4dCIsInNldE1heFNlbmRGcmFnbWVudCIsInN0YXJ0VGxzIiwic2VjdXJlQ29udGV4dCIsImhvc3RuYW1lIiwidHJ1c3RTZXJ2ZXJDZXJ0aWZpY2F0ZSIsImR1cGxleHBhaXIiLCJ0bHMiLCJjb25uZWN0Iiwic29ja2V0MSIsInNlcnZlcm5hbWUiLCJyZWplY3RVbmF1dGhvcml6ZWQiLCJlbmNyeXB0ZWQiLCJzb2NrZXQyIiwiZXJyIiwiZGVzdHJveSIsImNpcGhlciIsImdldENpcGhlciIsIm5hbWUiLCJ2ZXJzaW9uIiwiZW5jcnlwdEFsbEZ1dHVyZVRyYWZmaWMiLCJkYXRhIiwic2VuZE1lc3NhZ2UiLCJUWVBFIiwiUFJFTE9HSU4iLCJyZW1vdmVBbGxMaXN0ZW5lcnMiLCJ1bnBpcGUiLCJ0bHNIYW5kc2hha2VEYXRhIiwid3JpdGUiLCJwYWNrZXRUeXBlIiwicmVzZXRDb25uZWN0aW9uIiwiTWVzc2FnZSIsInR5cGUiLCJlbmQiLCJwYXVzZSIsInJlc3VtZSIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQTs7QUFFQTs7QUFJQTs7QUFDQTs7QUFFQTs7QUFDQTs7Ozs7Ozs7QUFkQTtBQUNBLE1BQU1BLFVBQVUsR0FBR0MsT0FBTyxDQUFDLG1CQUFELENB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cUJoQixJQUFyQixDQUEwQixLQUFLWixNQUEvQjtBQUVBTSxJQUFBQSxVQUFVLENBQUNVLFNBQVgsQ0FBcUJKLElBQXJCLENBQTBCLEtBQUtSLHFCQUEvQjtBQUNBLFNBQUtDLHFCQUFMLENBQTJCTyxJQUEzQixDQUFnQ04sVUFBVSxDQUFDVSxTQUEzQztBQUVBLFNBQUtiLHNCQUFMLEdBQThCLElBQTlCO0FBQ0Q7O0FBRUR3QyxFQUFBQSxnQkFBZ0IsQ0FBQ04sSUFBRCxFQUFlO0FBQzdCLFVBQU0vQixVQUFVLEdBQUcsS0FBS0EsVUFBeEI7QUFFQUEsSUFBQUEsVUFBVSxDQUFDc0IsU0FBWCxDQUFxQmdCLEtBQXJCLENBQTJCUCxJQUEzQjtBQUNELEdBN0drQyxDQStHbkM7QUFDQTs7O0FBQ0FDLEVBQUFBLFdBQVcsQ0FBQ08sVUFBRCxFQUFxQlIsSUFBckIsRUFBb0NTLGVBQXBDLEVBQStEO0FBQ3hFLFVBQU1yQyxPQUFPLEdBQUcsSUFBSXNDLGdCQUFKLENBQVk7QUFBRUMsTUFBQUEsSUFBSSxFQUFFSCxVQUFSO0FBQW9CQyxNQUFBQSxlQUFlLEVBQUVBO0FBQXJDLEtBQVosQ0FBaEI7QUFDQXJDLElBQUFBLE9BQU8sQ0FBQ3dDLEdBQVIsQ0FBWVosSUFBWjtBQUNBLFNBQUtoQyxxQkFBTCxDQUEyQnVDLEtBQTNCLENBQWlDbkMsT0FBakM7QUFDQSxXQUFPQSxPQUFQO0FBQ0QsR0F0SGtDLENBd0huQzs7O0FBQ0F5QyxFQUFBQSxLQUFLLEdBQUc7QUFDTixTQUFLOUMscUJBQUwsQ0FBMkI4QyxLQUEzQjtBQUNELEdBM0hrQyxDQTZIbkM7OztBQUNBQyxFQUFBQSxNQUFNLEdBQUc7QUFDUCxTQUFLL0MscUJBQUwsQ0FBMkIrQyxNQUEzQjtBQUNEOztBQWhJa0M7O2VBbUl0QnRELFM7O0FBQ2Z1RCxNQUFNLENBQUNDLE9BQVAsR0FBaUJ4RCxTQUFqQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG5jb25zdCBEdXBsZXhQYWlyID0gcmVxdWlyZSgnbmF0aXZlLWR1cGxleHBhaXInKTtcblxuaW1wb3J0IHsgRHVwbGV4IH0gZnJvbSAnc3RyZWFtJztcbmltcG9ydCAqIGFzIHRscyBmcm9tICd0bHMnO1xuaW1wb3J0IHsgU29ja2V0IH0gZnJvbSAnbmV0JztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ2V2ZW50cyc7XG5cbmltcG9ydCBEZWJ1ZyBmcm9tICcuL2RlYnVnJztcblxuaW1wb3J0IE1lc3NhZ2UgZnJvbSAnLi9tZXNzYWdlJztcbmltcG9ydCB7IFRZUEUgfSBmcm9tICcuL3BhY2tldCc7XG5cbmltcG9ydCBJbmNvbWluZ01lc3NhZ2VTdHJlYW0gZnJvbSAnLi9pbmNvbWluZy1tZXNzYWdlLXN0cmVhbSc7XG5pbXBvcnQgT3V0Z29pbmdNZXNzYWdlU3RyZWFtIGZyb20gJy4vb3V0Z29pbmctbWVzc2FnZS1zdHJlYW0nO1xuXG5jbGFzcyBNZXNzYWdlSU8gZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICBzb2NrZXQ6IFNvY2tldDtcbiAgZGVidWc6IERlYnVnO1xuXG4gIHRsc05lZ290aWF0aW9uQ29tcGxldGU6IGJvb2xlYW47XG5cbiAgaW5jb21pbmdNZXNzYWdlU3RyZWFtOiBJbmNvbWluZ01lc3NhZ2VTdHJlYW07XG4gIG91dGdvaW5nTWVzc2FnZVN0cmVhbTogT3V0Z29pbmdNZXNzYWdlU3RyZWFtO1xuXG4gIHNlY3VyZVBhaXI/OiB7XG4gICAgY2xlYXJ0ZXh0OiB0bHMuVExTU29ja2V0O1xuICAgIGVuY3J5cHRlZDogRHVwbGV4O1xuICB9XG5cbiAgY29uc3RydWN0b3Ioc29ja2V0OiBTb2NrZXQsIHBhY2tldFNpemU6IG51bWJlciwgZGVidWc6IERlYnVnKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuc29ja2V0ID0gc29ja2V0O1xuICAgIHRoaXMuZGVidWcgPSBkZWJ1ZztcblxuICAgIHRoaXMudGxzTmVnb3RpYXRpb25Db21wbGV0ZSA9IGZhbHNlO1xuXG4gICAgdGhpcy5pbmNvbWluZ01lc3NhZ2VTdHJlYW0gPSBuZXcgSW5jb21pbmdNZXNzYWdlU3RyZWFtKHRoaXMuZGVidWcpO1xuICAgIHRoaXMuaW5jb21pbmdNZXNzYWdlU3RyZWFtLm9uKCdkYXRhJywgKG1lc3NhZ2U6IE1lc3NhZ2UpID0+IHtcbiAgICAgIHRoaXMuZW1pdCgnZGF0YScsIG1lc3NhZ2UpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5pbmNvbWluZ01lc3NhZ2VTdHJlYW0ub24oJ2Vycm9yJywgKG1lc3NhZ2UpID0+IHtcbiAgICAgIHRoaXMuZW1pdCgnZXJyb3InLCBtZXNzYWdlKTtcbiAgICB9KTtcblxuICAgIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtID0gbmV3IE91dGdvaW5nTWVzc2FnZVN0cmVhbSh0aGlzLmRlYnVnLCB7IHBhY2tldFNpemU6IHBhY2tldFNpemUgfSk7XG5cbiAgICB0aGlzLnNvY2tldC5waXBlKHRoaXMuaW5jb21pbmdNZXNzYWdlU3RyZWFtKTtcbiAgICB0aGlzLm91dGdvaW5nTWVzc2FnZVN0cmVhbS5waXBlKHRoaXMuc29ja2V0KTtcbiAgfVxuXG4gIHBhY2tldFNpemUoLi4uYXJnczogW251bWJlcl0pIHtcbiAgICBpZiAoYXJncy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBwYWNrZXRTaXplID0gYXJnc1swXTtcbiAgICAgIHRoaXMuZGVidWcubG9nKCdQYWNrZXQgc2l6ZSBjaGFuZ2VkIGZyb20gJyArIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnBhY2tldFNpemUgKyAnIHRvICcgKyBwYWNrZXRTaXplKTtcbiAgICAgIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnBhY2tldFNpemUgPSBwYWNrZXRTaXplO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNlY3VyZVBhaXIpIHtcbiAgICAgIHRoaXMuc2VjdXJlUGFpci5jbGVhcnRleHQuc2V0TWF4U2VuZEZyYWdtZW50KHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnBhY2tldFNpemUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLm91dGdvaW5nTWVzc2FnZVN0cmVhbS5wYWNrZXRTaXplO1xuICB9XG5cbiAgc3RhcnRUbHMoc2VjdXJlQ29udGV4dDogdGxzLlNlY3VyZUNvbnRleHQsIGhvc3RuYW1lOiBzdHJpbmcsIHRydXN0U2VydmVyQ2VydGlmaWNhdGU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBkdXBsZXhwYWlyID0gbmV3IER1cGxleFBhaXIoKTtcbiAgICBjb25zdCBzZWN1cmVQYWlyID0gdGhpcy5zZWN1cmVQYWlyID0ge1xuICAgICAgY2xlYXJ0ZXh0OiB0bHMuY29ubmVjdCh7XG4gICAgICAgIHNvY2tldDogZHVwbGV4cGFpci5zb2NrZXQxIGFzIFNvY2tldCxcbiAgICAgICAgc2VydmVybmFtZTogaG9zdG5hbWUsXG4gICAgICAgIHNlY3VyZUNvbnRleHQ6IHNlY3VyZUNvbnRleHQsXG4gICAgICAgIHJlamVjdFVuYXV0aG9yaXplZDogIXRydXN0U2VydmVyQ2VydGlmaWNhdGVcbiAgICAgIH0pLFxuICAgICAgZW5jcnlwdGVkOiBkdXBsZXhwYWlyLnNvY2tldDJcbiAgICB9O1xuXG4gICAgLy8gSWYgYW4gZXJyb3IgaGFwcGVucyBpbiB0aGUgVExTIGxheWVyLCB0aGVyZSBpcyBub3RoaW5nIHdlIGNhbiBkbyBhYm91dCBpdC5cbiAgICAvLyBGb3J3YXJkIHRoZSBlcnJvciB0byB0aGUgc29ja2V0IHNvIHRoZSBjb25uZWN0aW9uIGdldHMgcHJvcGVybHkgY2xlYW5lZCB1cC5cbiAgICBzZWN1cmVQYWlyLmNsZWFydGV4dC5vbignZXJyb3InLCAoZXJyPzogRXJyb3IpID0+IHtcbiAgICAgIC8vIFN0cmVhbXMgaW4gbm9kZS5qcyB2ZXJzaW9ucyBiZWZvcmUgOC4wLjAgZG9uJ3Qgc3VwcG9ydCBgLmRlc3Ryb3lgXG4gICAgICBpZiAodHlwZW9mIHNlY3VyZVBhaXIuZW5jcnlwdGVkLmRlc3Ryb3kgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgc2VjdXJlUGFpci5lbmNyeXB0ZWQuZGVzdHJveSgpO1xuICAgICAgfVxuICAgICAgdGhpcy5zb2NrZXQuZGVzdHJveShlcnIpO1xuICAgIH0pO1xuXG4gICAgc2VjdXJlUGFpci5jbGVhcnRleHQub24oJ3NlY3VyZUNvbm5lY3QnLCAoKSA9PiB7XG4gICAgICBjb25zdCBjaXBoZXIgPSBzZWN1cmVQYWlyLmNsZWFydGV4dC5nZXRDaXBoZXIoKTtcbiAgICAgIGlmIChjaXBoZXIpIHtcbiAgICAgICAgdGhpcy5kZWJ1Zy5sb2coJ1RMUyBuZWdvdGlhdGVkICgnICsgY2lwaGVyLm5hbWUgKyAnLCAnICsgY2lwaGVyLnZlcnNpb24gKyAnKScpO1xuICAgICAgfVxuICAgICAgdGhpcy5lbWl0KCdzZWN1cmUnLCBzZWN1cmVQYWlyLmNsZWFydGV4dCk7XG4gICAgICB0aGlzLmVuY3J5cHRBbGxGdXR1cmVUcmFmZmljKCk7XG4gICAgfSk7XG5cbiAgICBzZWN1cmVQYWlyLmVuY3J5cHRlZC5vbignZGF0YScsIChkYXRhOiBCdWZmZXIpID0+IHtcbiAgICAgIHRoaXMuc2VuZE1lc3NhZ2UoVFlQRS5QUkVMT0dJTiwgZGF0YSwgZmFsc2UpO1xuICAgIH0pO1xuICB9XG5cbiAgZW5jcnlwdEFsbEZ1dHVyZVRyYWZmaWMoKSB7XG4gICAgY29uc3Qgc2VjdXJlUGFpciA9IHRoaXMuc2VjdXJlUGFpciE7XG5cbiAgICBzZWN1cmVQYWlyLmNsZWFydGV4dC5zZXRNYXhTZW5kRnJhZ21lbnQodGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0ucGFja2V0U2l6ZSk7XG4gICAgc2VjdXJlUGFpci5lbmNyeXB0ZWQucmVtb3ZlQWxsTGlzdGVuZXJzKCdkYXRhJyk7XG5cbiAgICB0aGlzLm91dGdvaW5nTWVzc2FnZVN0cmVhbS51bnBpcGUodGhpcy5zb2NrZXQpO1xuICAgIHRoaXMuc29ja2V0LnVucGlwZSh0aGlzLmluY29taW5nTWVzc2FnZVN0cmVhbSk7XG5cbiAgICB0aGlzLnNvY2tldC5waXBlKHNlY3VyZVBhaXIuZW5jcnlwdGVkKTtcbiAgICBzZWN1cmVQYWlyLmVuY3J5cHRlZC5waXBlKHRoaXMuc29ja2V0KTtcblxuICAgIHNlY3VyZVBhaXIuY2xlYXJ0ZXh0LnBpcGUodGhpcy5pbmNvbWluZ01lc3NhZ2VTdHJlYW0pO1xuICAgIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnBpcGUoc2VjdXJlUGFpci5jbGVhcnRleHQpO1xuXG4gICAgdGhpcy50bHNOZWdvdGlhdGlvbkNvbXBsZXRlID0gdHJ1ZTtcbiAgfVxuXG4gIHRsc0hhbmRzaGFrZURhdGEoZGF0YTogQnVmZmVyKSB7XG4gICAgY29uc3Qgc2VjdXJlUGFpciA9IHRoaXMuc2VjdXJlUGFpciE7XG5cbiAgICBzZWN1cmVQYWlyLmVuY3J5cHRlZC53cml0ZShkYXRhKTtcbiAgfVxuXG4gIC8vIFRPRE8gbGlzdGVuIGZvciAnZHJhaW4nIGV2ZW50IHdoZW4gc29ja2V0LndyaXRlIHJldHVybnMgZmFsc2UuXG4gIC8vIFRPRE8gaW1wbGVtZW50IGluY29tcGxldGUgcmVxdWVzdCBjYW5jZWxhdGlvbiAoMi4yLjEuNilcbiAgc2VuZE1lc3NhZ2UocGFja2V0VHlwZTogbnVtYmVyLCBkYXRhPzogQnVmZmVyLCByZXNldENvbm5lY3Rpb24/OiBib29sZWFuKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IG5ldyBNZXNzYWdlKHsgdHlwZTogcGFja2V0VHlwZSwgcmVzZXRDb25uZWN0aW9uOiByZXNldENvbm5lY3Rpb24gfSk7XG4gICAgbWVzc2FnZS5lbmQoZGF0YSk7XG4gICAgdGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0ud3JpdGUobWVzc2FnZSk7XG4gICAgcmV0dXJuIG1lc3NhZ2U7XG4gIH1cblxuICAvLyBUZW1wb3JhcmlseSBzdXNwZW5kcyB0aGUgZmxvdyBvZiBpbmNvbWluZyBwYWNrZXRzLlxuICBwYXVzZSgpIHtcbiAgICB0aGlzLmluY29taW5nTWVzc2FnZVN0cmVhbS5wYXVzZSgpO1xuICB9XG5cbiAgLy8gUmVzdW1lcyB0aGUgZmxvdyBvZiBpbmNvbWluZyBwYWNrZXRzLlxuICByZXN1bWUoKSB7XG4gICAgdGhpcy5pbmNvbWluZ01lc3NhZ2VTdHJlYW0ucmVzdW1lKCk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTWVzc2FnZUlPO1xubW9kdWxlLmV4cG9ydHMgPSBNZXNzYWdlSU87XG4iXX0=
160
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXNzYWdlLWlvLnRzIl0sIm5hbWVzIjpbIkR1cGxleFBhaXIiLCJyZXF1aXJlIiwiTWVzc2FnZUlPIiwiRXZlbnRFbWl0dGVyIiwiY29uc3RydWN0b3IiLCJzb2NrZXQiLCJwYWNrZXRTaXplIiwiZGVidWciLCJ0bHNOZWdvdGlhdGlvbkNvbXBsZXRlIiwiaW5jb21pbmdNZXNzYWdlU3RyZWFtIiwib3V0Z29pbmdNZXNzYWdlU3RyZWFtIiwic2VjdXJlUGFpciIsImluY29taW5nTWVzc2FnZUl0ZXJhdG9yIiwiSW5jb21pbmdNZXNzYWdlU3RyZWFtIiwiU3ltYm9sIiwiYXN5bmNJdGVyYXRvciIsIk91dGdvaW5nTWVzc2FnZVN0cmVhbSIsInBpcGUiLCJhcmdzIiwibGVuZ3RoIiwibG9nIiwiY2xlYXJ0ZXh0Iiwic2V0TWF4U2VuZEZyYWdtZW50Iiwic3RhcnRUbHMiLCJzZWN1cmVDb250ZXh0IiwiaG9zdG5hbWUiLCJ0cnVzdFNlcnZlckNlcnRpZmljYXRlIiwiZHVwbGV4cGFpciIsInRscyIsImNvbm5lY3QiLCJzb2NrZXQxIiwic2VydmVybmFtZSIsInJlamVjdFVuYXV0aG9yaXplZCIsImVuY3J5cHRlZCIsInNvY2tldDIiLCJvbiIsImVyciIsImRlc3Ryb3kiLCJjaXBoZXIiLCJnZXRDaXBoZXIiLCJuYW1lIiwidmVyc2lvbiIsImVtaXQiLCJlbmNyeXB0QWxsRnV0dXJlVHJhZmZpYyIsImRhdGEiLCJzZW5kTWVzc2FnZSIsIlRZUEUiLCJQUkVMT0dJTiIsInJlbW92ZUFsbExpc3RlbmVycyIsInVucGlwZSIsInRsc0hhbmRzaGFrZURhdGEiLCJ3cml0ZSIsInBhY2tldFR5cGUiLCJyZXNldENvbm5lY3Rpb24iLCJtZXNzYWdlIiwiTWVzc2FnZSIsInR5cGUiLCJlbmQiLCJyZWFkTWVzc2FnZSIsInJlc3VsdCIsIm5leHQiLCJkb25lIiwiRXJyb3IiLCJ2YWx1ZSIsInBhdXNlIiwicmVzdW1lIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBOztBQUVBOztBQUlBOztBQUNBOztBQUVBOztBQUNBOzs7Ozs7OztBQWRBO0FBQ0EsTUFBTUEsVUFBVSxHQUFHQyxPQUFPLENBQUMsbUJBQUQsQ0FBMUI7O0FBZUEsTUFBTUMsU0FBTixTQUF3QkMsb0JBQXhCLENBQXFDO0FBZ0JuQ0MsRUFBQUEsV0FBVyxDQUFDQyxNQUFELEVBQWlCQyxVQUFqQixFQUFxQ0MsS0FBckMsRUFBbUQ7QUFDNUQ7QUFENEQsU0FmOURGLE1BZThEO0FBQUEsU0FkOURFLEtBYzhEO0FBQUEsU0FaOURDLHNCQVk4RDtBQUFBLFNBVnREQyxxQkFVc0Q7QUFBQSxTQVQ5REMscUJBUzhEO0FBQUEsU0FQOURDLFVBTzhEO0FBQUEsU0FGOURDLHVCQUU4RDtBQUc1RCxTQUFLUCxNQUFMLEdBQWNBLE1BQWQ7QUFDQSxTQUFLRSxLQUFMLEdBQWFBLEtBQWI7QUFFQSxTQUFLQyxzQkFBTCxHQUE4QixLQUE5QjtBQUVBLFNBQUtDLHFCQUFMLEdBQTZCLElBQUlJLDhCQUFKLENBQTBCLEtBQUtOLEtBQS9CLENBQTdCO0FBQ0EsU0FBS0ssdUJBQUwsR0FBK0IsS0FBS0gscUJBQUwsQ0FBMkJLLE1BQU0sQ0FBQ0MsYUFBbEMsR0FBL0I7QUFFQSxTQUFLTCxxQkFBTCxHQUE2QixJQUFJTSw4QkFBSixDQUEwQixLQUFLVCxLQUEvQixFQUFzQztBQUFFRCxNQUFBQSxVQUFVLEVBQUVBO0FBQWQsS0FBdEMsQ0FBN0I7QUFFQSxTQUFLRCxNQUFMLENBQVlZLElBQVosQ0FBaUIsS0FBS1IscUJBQXRCO0FBQ0EsU0FBS0MscUJBQUwsQ0FBMkJPLElBQTNCLENBQWdDLEtBQUtaLE1BQXJDO0FBQ0Q7O0FBRURDLEVBQUFBLFVBQVUsQ0FBQyxHQUFHWSxJQUFKLEVBQW9CO0FBQzVCLFFBQUlBLElBQUksQ0FBQ0MsTUFBTCxHQUFjLENBQWxCLEVBQXFCO0FBQ25CLFlBQU1iLFVBQVUsR0FBR1ksSUFBSSxDQUFDLENBQUQsQ0FBdkI7QUFDQSxXQUFLWCxLQUFMLENBQVdhLEdBQVgsQ0FBZSw4QkFBOEIsS0FBS1YscUJBQUwsQ0FBMkJKLFVBQXpELEdBQXNFLE1BQXRFLEdBQStFQSxVQUE5RjtBQUNBLFdBQUtJLHFCQUFMLENBQTJCSixVQUEzQixHQUF3Q0EsVUFBeEM7QUFDRDs7QUFFRCxRQUFJLEtBQUtLLFVBQVQsRUFBcUI7QUFDbkIsV0FBS0EsVUFBTCxDQUFnQlUsU0FBaEIsQ0FBMEJDLGtCQUExQixDQUE2QyxLQUFLWixxQkFBTCxDQUEyQkosVUFBeEU7QUFDRDs7QUFFRCxXQUFPLEtBQUtJLHFCQUFMLENBQTJCSixVQUFsQztBQUNEOztBQUVEaUIsRUFBQUEsUUFBUSxDQUFDQyxhQUFELEVBQW1DQyxRQUFuQyxFQUFxREMsc0JBQXJELEVBQXNGO0FBQzVGLFVBQU1DLFVBQVUsR0FBRyxJQUFJM0IsVUFBSixFQUFuQjtBQUNBLFVBQU1XLFVBQVUsR0FBRyxLQUFLQSxVQUFMLEdBQWtCO0FBQ25DVSxNQUFBQSxTQUFTLEVBQUVPLEdBQUcsQ0FBQ0MsT0FBSixDQUFZO0FBQ3JCeEIsUUFBQUEsTUFBTSxFQUFFc0IsVUFBVSxDQUFDRyxPQURFO0FBRXJCQyxRQUFBQSxVQUFVLEVBQUVOLFFBRlM7QUFHckJELFFBQUFBLGFBQWEsRUFBRUEsYUFITTtBQUlyQlEsUUFBQUEsa0JBQWtCLEVBQUUsQ0FBQ047QUFKQSxPQUFaLENBRHdCO0FBT25DTyxNQUFBQSxTQUFTLEVBQUVOLFVBQVUsQ0FBQ087QUFQYSxLQUFyQyxDQUY0RixDQVk1RjtBQUNBOztBQUNBdkIsSUFBQUEsVUFBVSxDQUFDVSxTQUFYLENBQXFCYyxFQUFyQixDQUF3QixPQUF4QixFQUFrQ0MsR0FBRCxJQUFpQjtBQUNoRDtBQUNBLFVBQUksT0FBT3pCLFVBQVUsQ0FBQ3NCLFNBQVgsQ0FBcUJJLE9BQTVCLEtBQXdDLFVBQTVDLEVBQXdEO0FBQ3REMUIsUUFBQUEsVUFBVSxDQUFDc0IsU0FBWCxDQUFxQkksT0FBckI7QUFDRDs7QUFDRCxXQUFLaEMsTUFBTCxDQUFZZ0MsT0FBWixDQUFvQkQsR0FBcEI7QUFDRCxLQU5EO0FBUUF6QixJQUFBQSxVQUFVLENBQUNVLFNBQVgsQ0FBcUJjLEVBQXJCLENBQXdCLGVBQXhCLEVBQXlDLE1BQU07QUFDN0MsWUFBTUcsTUFBTSxHQUFHM0IsVUFBVSxDQUFDVSxTQUFYLENBQXFCa0IsU0FBckIsRUFBZjs7QUFDQSxVQUFJRCxNQUFKLEVBQVk7QUFDVixhQUFLL0IsS0FBTCxDQUFXYSxHQUFYLENBQWUscUJBQXFCa0IsTUFBTSxDQUFDRSxJQUE1QixHQUFtQyxJQUFuQyxHQUEwQ0YsTUFBTSxDQUFDRyxPQUFqRCxHQUEyRCxHQUExRTtBQUNEOztBQUNELFdBQUtDLElBQUwsQ0FBVSxRQUFWLEVBQW9CL0IsVUFBVSxDQUFDVSxTQUEvQjtBQUNBLFdBQUtzQix1QkFBTDtBQUNELEtBUEQ7QUFTQWhDLElBQUFBLFVBQVUsQ0FBQ3NCLFNBQVgsQ0FBcUJFLEVBQXJCLENBQXdCLE1BQXhCLEVBQWlDUyxJQUFELElBQWtCO0FBQ2hELFdBQUtDLFdBQUwsQ0FBaUJDLGFBQUtDLFFBQXRCLEVBQWdDSCxJQUFoQyxFQUFzQyxLQUF0QztBQUNELEtBRkQ7QUFHRDs7QUFFREQsRUFBQUEsdUJBQXVCLEdBQUc7QUFDeEIsVUFBTWhDLFVBQVUsR0FBRyxLQUFLQSxVQUF4QjtBQUVBQSxJQUFBQSxVQUFVLENBQUNVLFNBQVgsQ0FBcUJDLGtCQUFyQixDQUF3QyxLQUFLWixxQkFBTCxDQUEyQkosVUFBbkU7QUFDQUssSUFBQUEsVUFBVSxDQUFDc0IsU0FBWCxDQUFxQmUsa0JBQXJCLENBQXdDLE1BQXhDO0FBRUEsU0FBS3RDLHFCQUFMLENBQTJCdUMsTUFBM0IsQ0FBa0MsS0FBSzVDLE1BQXZDO0FBQ0EsU0FBS0EsTUFBTCxDQUFZNEMsTUFBWixDQUFtQixLQUFLeEMscUJBQXhCO0FBRUEsU0FBS0osTUFBTCxDQUFZWSxJQUFaLENBQWlCTixVQUFVLENBQUNzQixTQUE1QjtBQUNBdEIsSUFBQUEsVUFBVSxDQUFDc0IsU0FBWCxDQUFxQmhCLElBQXJCLENBQTBCLEtBQUtaLE1BQS9CO0FBRUFNLElBQUFBLFVBQVUsQ0FBQ1UsU0FBWCxDQUFxQkosSUFBckIsQ0FBMEIsS0FBS1IscUJBQS9CO0FBQ0EsU0FBS0MscUJBQUwsQ0FBMkJPLElBQTNCLENBQWdDTixVQUFVLENBQUNVLFNBQTNDO0FBRUEsU0FBS2Isc0JBQUwsR0FBOEIsSUFBOUI7QUFDRDs7QUFFRDBDLEVBQUFBLGdCQUFnQixDQUFDTixJQUFELEVBQWU7QUFDN0IsVUFBTWpDLFVBQVUsR0FBRyxLQUFLQSxVQUF4QjtBQUVBQSxJQUFBQSxVQUFVLENBQUNzQixTQUFYLENBQXFCa0IsS0FBckIsQ0FBMkJQLElBQTNCO0FBQ0QsR0F6R2tDLENBMkduQztBQUNBOzs7QUFDQUMsRUFBQUEsV0FBVyxDQUFDTyxVQUFELEVBQXFCUixJQUFyQixFQUFvQ1MsZUFBcEMsRUFBK0Q7QUFDeEUsVUFBTUMsT0FBTyxHQUFHLElBQUlDLGdCQUFKLENBQVk7QUFBRUMsTUFBQUEsSUFBSSxFQUFFSixVQUFSO0FBQW9CQyxNQUFBQSxlQUFlLEVBQUVBO0FBQXJDLEtBQVosQ0FBaEI7QUFDQUMsSUFBQUEsT0FBTyxDQUFDRyxHQUFSLENBQVliLElBQVo7QUFDQSxTQUFLbEMscUJBQUwsQ0FBMkJ5QyxLQUEzQixDQUFpQ0csT0FBakM7QUFDQSxXQUFPQSxPQUFQO0FBQ0Q7QUFFRDtBQUNGO0FBQ0E7OztBQUNtQixRQUFYSSxXQUFXLEdBQXFCO0FBQ3BDLFVBQU1DLE1BQU0sR0FBRyxNQUFNLEtBQUsvQyx1QkFBTCxDQUE2QmdELElBQTdCLEVBQXJCOztBQUVBLFFBQUlELE1BQU0sQ0FBQ0UsSUFBWCxFQUFpQjtBQUNmLFlBQU0sSUFBSUMsS0FBSixDQUFVLGtDQUFWLENBQU47QUFDRDs7QUFFRCxXQUFPSCxNQUFNLENBQUNJLEtBQWQ7QUFDRCxHQS9Ia0MsQ0FpSW5DOzs7QUFDQUMsRUFBQUEsS0FBSyxHQUFHO0FBQ04sU0FBS3ZELHFCQUFMLENBQTJCdUQsS0FBM0I7QUFDRCxHQXBJa0MsQ0FzSW5DOzs7QUFDQUMsRUFBQUEsTUFBTSxHQUFHO0FBQ1AsU0FBS3hELHFCQUFMLENBQTJCd0QsTUFBM0I7QUFDRDs7QUF6SWtDOztlQTRJdEIvRCxTOztBQUNmZ0UsTUFBTSxDQUFDQyxPQUFQLEdBQWlCakUsU0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuY29uc3QgRHVwbGV4UGFpciA9IHJlcXVpcmUoJ25hdGl2ZS1kdXBsZXhwYWlyJyk7XG5cbmltcG9ydCB7IER1cGxleCB9IGZyb20gJ3N0cmVhbSc7XG5pbXBvcnQgKiBhcyB0bHMgZnJvbSAndGxzJztcbmltcG9ydCB7IFNvY2tldCB9IGZyb20gJ25ldCc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnO1xuXG5pbXBvcnQgRGVidWcgZnJvbSAnLi9kZWJ1Zyc7XG5cbmltcG9ydCBNZXNzYWdlIGZyb20gJy4vbWVzc2FnZSc7XG5pbXBvcnQgeyBUWVBFIH0gZnJvbSAnLi9wYWNrZXQnO1xuXG5pbXBvcnQgSW5jb21pbmdNZXNzYWdlU3RyZWFtIGZyb20gJy4vaW5jb21pbmctbWVzc2FnZS1zdHJlYW0nO1xuaW1wb3J0IE91dGdvaW5nTWVzc2FnZVN0cmVhbSBmcm9tICcuL291dGdvaW5nLW1lc3NhZ2Utc3RyZWFtJztcblxuY2xhc3MgTWVzc2FnZUlPIGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgc29ja2V0OiBTb2NrZXQ7XG4gIGRlYnVnOiBEZWJ1ZztcblxuICB0bHNOZWdvdGlhdGlvbkNvbXBsZXRlOiBib29sZWFuO1xuXG4gIHByaXZhdGUgaW5jb21pbmdNZXNzYWdlU3RyZWFtOiBJbmNvbWluZ01lc3NhZ2VTdHJlYW07XG4gIG91dGdvaW5nTWVzc2FnZVN0cmVhbTogT3V0Z29pbmdNZXNzYWdlU3RyZWFtO1xuXG4gIHNlY3VyZVBhaXI/OiB7XG4gICAgY2xlYXJ0ZXh0OiB0bHMuVExTU29ja2V0O1xuICAgIGVuY3J5cHRlZDogRHVwbGV4O1xuICB9XG5cbiAgaW5jb21pbmdNZXNzYWdlSXRlcmF0b3I6IEFzeW5jSXRlcmFibGVJdGVyYXRvcjxNZXNzYWdlPjtcblxuICBjb25zdHJ1Y3Rvcihzb2NrZXQ6IFNvY2tldCwgcGFja2V0U2l6ZTogbnVtYmVyLCBkZWJ1ZzogRGVidWcpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5zb2NrZXQgPSBzb2NrZXQ7XG4gICAgdGhpcy5kZWJ1ZyA9IGRlYnVnO1xuXG4gICAgdGhpcy50bHNOZWdvdGlhdGlvbkNvbXBsZXRlID0gZmFsc2U7XG5cbiAgICB0aGlzLmluY29taW5nTWVzc2FnZVN0cmVhbSA9IG5ldyBJbmNvbWluZ01lc3NhZ2VTdHJlYW0odGhpcy5kZWJ1Zyk7XG4gICAgdGhpcy5pbmNvbWluZ01lc3NhZ2VJdGVyYXRvciA9IHRoaXMuaW5jb21pbmdNZXNzYWdlU3RyZWFtW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpO1xuXG4gICAgdGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0gPSBuZXcgT3V0Z29pbmdNZXNzYWdlU3RyZWFtKHRoaXMuZGVidWcsIHsgcGFja2V0U2l6ZTogcGFja2V0U2l6ZSB9KTtcblxuICAgIHRoaXMuc29ja2V0LnBpcGUodGhpcy5pbmNvbWluZ01lc3NhZ2VTdHJlYW0pO1xuICAgIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnBpcGUodGhpcy5zb2NrZXQpO1xuICB9XG5cbiAgcGFja2V0U2l6ZSguLi5hcmdzOiBbbnVtYmVyXSkge1xuICAgIGlmIChhcmdzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHBhY2tldFNpemUgPSBhcmdzWzBdO1xuICAgICAgdGhpcy5kZWJ1Zy5sb2coJ1BhY2tldCBzaXplIGNoYW5nZWQgZnJvbSAnICsgdGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0ucGFja2V0U2l6ZSArICcgdG8gJyArIHBhY2tldFNpemUpO1xuICAgICAgdGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0ucGFja2V0U2l6ZSA9IHBhY2tldFNpemU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2VjdXJlUGFpcikge1xuICAgICAgdGhpcy5zZWN1cmVQYWlyLmNsZWFydGV4dC5zZXRNYXhTZW5kRnJhZ21lbnQodGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0ucGFja2V0U2l6ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnBhY2tldFNpemU7XG4gIH1cblxuICBzdGFydFRscyhzZWN1cmVDb250ZXh0OiB0bHMuU2VjdXJlQ29udGV4dCwgaG9zdG5hbWU6IHN0cmluZywgdHJ1c3RTZXJ2ZXJDZXJ0aWZpY2F0ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IGR1cGxleHBhaXIgPSBuZXcgRHVwbGV4UGFpcigpO1xuICAgIGNvbnN0IHNlY3VyZVBhaXIgPSB0aGlzLnNlY3VyZVBhaXIgPSB7XG4gICAgICBjbGVhcnRleHQ6IHRscy5jb25uZWN0KHtcbiAgICAgICAgc29ja2V0OiBkdXBsZXhwYWlyLnNvY2tldDEgYXMgU29ja2V0LFxuICAgICAgICBzZXJ2ZXJuYW1lOiBob3N0bmFtZSxcbiAgICAgICAgc2VjdXJlQ29udGV4dDogc2VjdXJlQ29udGV4dCxcbiAgICAgICAgcmVqZWN0VW5hdXRob3JpemVkOiAhdHJ1c3RTZXJ2ZXJDZXJ0aWZpY2F0ZVxuICAgICAgfSksXG4gICAgICBlbmNyeXB0ZWQ6IGR1cGxleHBhaXIuc29ja2V0MlxuICAgIH07XG5cbiAgICAvLyBJZiBhbiBlcnJvciBoYXBwZW5zIGluIHRoZSBUTFMgbGF5ZXIsIHRoZXJlIGlzIG5vdGhpbmcgd2UgY2FuIGRvIGFib3V0IGl0LlxuICAgIC8vIEZvcndhcmQgdGhlIGVycm9yIHRvIHRoZSBzb2NrZXQgc28gdGhlIGNvbm5lY3Rpb24gZ2V0cyBwcm9wZXJseSBjbGVhbmVkIHVwLlxuICAgIHNlY3VyZVBhaXIuY2xlYXJ0ZXh0Lm9uKCdlcnJvcicsIChlcnI/OiBFcnJvcikgPT4ge1xuICAgICAgLy8gU3RyZWFtcyBpbiBub2RlLmpzIHZlcnNpb25zIGJlZm9yZSA4LjAuMCBkb24ndCBzdXBwb3J0IGAuZGVzdHJveWBcbiAgICAgIGlmICh0eXBlb2Ygc2VjdXJlUGFpci5lbmNyeXB0ZWQuZGVzdHJveSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBzZWN1cmVQYWlyLmVuY3J5cHRlZC5kZXN0cm95KCk7XG4gICAgICB9XG4gICAgICB0aGlzLnNvY2tldC5kZXN0cm95KGVycik7XG4gICAgfSk7XG5cbiAgICBzZWN1cmVQYWlyLmNsZWFydGV4dC5vbignc2VjdXJlQ29ubmVjdCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGNpcGhlciA9IHNlY3VyZVBhaXIuY2xlYXJ0ZXh0LmdldENpcGhlcigpO1xuICAgICAgaWYgKGNpcGhlcikge1xuICAgICAgICB0aGlzLmRlYnVnLmxvZygnVExTIG5lZ290aWF0ZWQgKCcgKyBjaXBoZXIubmFtZSArICcsICcgKyBjaXBoZXIudmVyc2lvbiArICcpJyk7XG4gICAgICB9XG4gICAgICB0aGlzLmVtaXQoJ3NlY3VyZScsIHNlY3VyZVBhaXIuY2xlYXJ0ZXh0KTtcbiAgICAgIHRoaXMuZW5jcnlwdEFsbEZ1dHVyZVRyYWZmaWMoKTtcbiAgICB9KTtcblxuICAgIHNlY3VyZVBhaXIuZW5jcnlwdGVkLm9uKCdkYXRhJywgKGRhdGE6IEJ1ZmZlcikgPT4ge1xuICAgICAgdGhpcy5zZW5kTWVzc2FnZShUWVBFLlBSRUxPR0lOLCBkYXRhLCBmYWxzZSk7XG4gICAgfSk7XG4gIH1cblxuICBlbmNyeXB0QWxsRnV0dXJlVHJhZmZpYygpIHtcbiAgICBjb25zdCBzZWN1cmVQYWlyID0gdGhpcy5zZWN1cmVQYWlyITtcblxuICAgIHNlY3VyZVBhaXIuY2xlYXJ0ZXh0LnNldE1heFNlbmRGcmFnbWVudCh0aGlzLm91dGdvaW5nTWVzc2FnZVN0cmVhbS5wYWNrZXRTaXplKTtcbiAgICBzZWN1cmVQYWlyLmVuY3J5cHRlZC5yZW1vdmVBbGxMaXN0ZW5lcnMoJ2RhdGEnKTtcblxuICAgIHRoaXMub3V0Z29pbmdNZXNzYWdlU3RyZWFtLnVucGlwZSh0aGlzLnNvY2tldCk7XG4gICAgdGhpcy5zb2NrZXQudW5waXBlKHRoaXMuaW5jb21pbmdNZXNzYWdlU3RyZWFtKTtcblxuICAgIHRoaXMuc29ja2V0LnBpcGUoc2VjdXJlUGFpci5lbmNyeXB0ZWQpO1xuICAgIHNlY3VyZVBhaXIuZW5jcnlwdGVkLnBpcGUodGhpcy5zb2NrZXQpO1xuXG4gICAgc2VjdXJlUGFpci5jbGVhcnRleHQucGlwZSh0aGlzLmluY29taW5nTWVzc2FnZVN0cmVhbSk7XG4gICAgdGhpcy5vdXRnb2luZ01lc3NhZ2VTdHJlYW0ucGlwZShzZWN1cmVQYWlyLmNsZWFydGV4dCk7XG5cbiAgICB0aGlzLnRsc05lZ290aWF0aW9uQ29tcGxldGUgPSB0cnVlO1xuICB9XG5cbiAgdGxzSGFuZHNoYWtlRGF0YShkYXRhOiBCdWZmZXIpIHtcbiAgICBjb25zdCBzZWN1cmVQYWlyID0gdGhpcy5zZWN1cmVQYWlyITtcblxuICAgIHNlY3VyZVBhaXIuZW5jcnlwdGVkLndyaXRlKGRhdGEpO1xuICB9XG5cbiAgLy8gVE9ETyBsaXN0ZW4gZm9yICdkcmFpbicgZXZlbnQgd2hlbiBzb2NrZXQud3JpdGUgcmV0dXJucyBmYWxzZS5cbiAgLy8gVE9ETyBpbXBsZW1lbnQgaW5jb21wbGV0ZSByZXF1ZXN0IGNhbmNlbGF0aW9uICgyLjIuMS42KVxuICBzZW5kTWVzc2FnZShwYWNrZXRUeXBlOiBudW1iZXIsIGRhdGE/OiBCdWZmZXIsIHJlc2V0Q29ubmVjdGlvbj86IGJvb2xlYW4pIHtcbiAgICBjb25zdCBtZXNzYWdlID0gbmV3IE1lc3NhZ2UoeyB0eXBlOiBwYWNrZXRUeXBlLCByZXNldENvbm5lY3Rpb246IHJlc2V0Q29ubmVjdGlvbiB9KTtcbiAgICBtZXNzYWdlLmVuZChkYXRhKTtcbiAgICB0aGlzLm91dGdvaW5nTWVzc2FnZVN0cmVhbS53cml0ZShtZXNzYWdlKTtcbiAgICByZXR1cm4gbWVzc2FnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWFkIHRoZSBuZXh0IGluY29taW5nIG1lc3NhZ2UgZnJvbSB0aGUgc29ja2V0LlxuICAgKi9cbiAgYXN5bmMgcmVhZE1lc3NhZ2UoKTogUHJvbWlzZTxNZXNzYWdlPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5pbmNvbWluZ01lc3NhZ2VJdGVyYXRvci5uZXh0KCk7XG5cbiAgICBpZiAocmVzdWx0LmRvbmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigndW5leHBlY3RlZCBlbmQgb2YgbWVzc2FnZSBzdHJlYW0nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0LnZhbHVlO1xuICB9XG5cbiAgLy8gVGVtcG9yYXJpbHkgc3VzcGVuZHMgdGhlIGZsb3cgb2YgaW5jb21pbmcgcGFja2V0cy5cbiAgcGF1c2UoKSB7XG4gICAgdGhpcy5pbmNvbWluZ01lc3NhZ2VTdHJlYW0ucGF1c2UoKTtcbiAgfVxuXG4gIC8vIFJlc3VtZXMgdGhlIGZsb3cgb2YgaW5jb21pbmcgcGFja2V0cy5cbiAgcmVzdW1lKCkge1xuICAgIHRoaXMuaW5jb21pbmdNZXNzYWdlU3RyZWFtLnJlc3VtZSgpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1lc3NhZ2VJTztcbm1vZHVsZS5leHBvcnRzID0gTWVzc2FnZUlPO1xuIl19