tedious 16.1.0 → 16.3.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.
Files changed (205) hide show
  1. package/lib/all-headers.js +1 -2
  2. package/lib/all-headers.js.map +1 -0
  3. package/lib/always-encrypted/aead-aes-256-cbc-hmac-algorithm.js +9 -31
  4. package/lib/always-encrypted/aead-aes-256-cbc-hmac-algorithm.js.map +1 -0
  5. package/lib/always-encrypted/aead-aes-256-cbc-hmac-encryption-key.js +9 -24
  6. package/lib/always-encrypted/aead-aes-256-cbc-hmac-encryption-key.js.map +1 -0
  7. package/lib/always-encrypted/cek-entry.js +8 -12
  8. package/lib/always-encrypted/cek-entry.js.map +1 -0
  9. package/lib/always-encrypted/get-parameter-encryption-metadata.js +2 -24
  10. package/lib/always-encrypted/get-parameter-encryption-metadata.js.map +1 -0
  11. package/lib/always-encrypted/key-crypto.js +5 -30
  12. package/lib/always-encrypted/key-crypto.js.map +1 -0
  13. package/lib/always-encrypted/keystore-provider-azure-key-vault.js +11 -72
  14. package/lib/always-encrypted/keystore-provider-azure-key-vault.js.map +1 -0
  15. package/lib/always-encrypted/symmetric-key-cache.js +2 -13
  16. package/lib/always-encrypted/symmetric-key-cache.js.map +1 -0
  17. package/lib/always-encrypted/symmetric-key.js +3 -8
  18. package/lib/always-encrypted/symmetric-key.js.map +1 -0
  19. package/lib/always-encrypted/types.js +19 -27
  20. package/lib/always-encrypted/types.js.map +1 -0
  21. package/lib/always-encrypted/utils.js +2 -6
  22. package/lib/always-encrypted/utils.js.map +1 -0
  23. package/lib/bulk-load-payload.js +7 -15
  24. package/lib/bulk-load-payload.js.map +1 -0
  25. package/lib/bulk-load.js +58 -131
  26. package/lib/bulk-load.js.map +1 -0
  27. package/lib/collation.js +7 -15
  28. package/lib/collation.js.map +1 -0
  29. package/lib/connection.js +297 -536
  30. package/lib/connection.js.map +1 -0
  31. package/lib/connector.js +6 -37
  32. package/lib/connector.js.map +1 -0
  33. package/lib/data-type.js +2 -43
  34. package/lib/data-type.js.map +1 -0
  35. package/lib/data-types/bigint.js +1 -15
  36. package/lib/data-types/bigint.js.map +1 -0
  37. package/lib/data-types/binary.js +1 -12
  38. package/lib/data-types/binary.js.map +1 -0
  39. package/lib/data-types/bit.js +1 -11
  40. package/lib/data-types/bit.js.map +1 -0
  41. package/lib/data-types/bitn.js +1 -7
  42. package/lib/data-types/bitn.js.map +1 -0
  43. package/lib/data-types/char.js +1 -20
  44. package/lib/data-types/char.js.map +1 -0
  45. package/lib/data-types/date.js +1 -15
  46. package/lib/data-types/date.js.map +1 -0
  47. package/lib/data-types/datetime.js +3 -20
  48. package/lib/data-types/datetime.js.map +1 -0
  49. package/lib/data-types/datetime2.js +1 -26
  50. package/lib/data-types/datetime2.js.map +1 -0
  51. package/lib/data-types/datetimen.js +1 -7
  52. package/lib/data-types/datetimen.js.map +1 -0
  53. package/lib/data-types/datetimeoffset.js +1 -23
  54. package/lib/data-types/datetimeoffset.js.map +1 -0
  55. package/lib/data-types/decimal.js +1 -18
  56. package/lib/data-types/decimal.js.map +1 -0
  57. package/lib/data-types/decimaln.js +1 -7
  58. package/lib/data-types/decimaln.js.map +1 -0
  59. package/lib/data-types/float.js +1 -13
  60. package/lib/data-types/float.js.map +1 -0
  61. package/lib/data-types/floatn.js +1 -7
  62. package/lib/data-types/floatn.js.map +1 -0
  63. package/lib/data-types/image.js +1 -10
  64. package/lib/data-types/image.js.map +1 -0
  65. package/lib/data-types/int.js +1 -14
  66. package/lib/data-types/int.js.map +1 -0
  67. package/lib/data-types/intn.js +1 -7
  68. package/lib/data-types/intn.js.map +1 -0
  69. package/lib/data-types/money.js +1 -12
  70. package/lib/data-types/money.js.map +1 -0
  71. package/lib/data-types/moneyn.js +1 -7
  72. package/lib/data-types/moneyn.js.map +1 -0
  73. package/lib/data-types/nchar.js +1 -14
  74. package/lib/data-types/nchar.js.map +1 -0
  75. package/lib/data-types/ntext.js +1 -10
  76. package/lib/data-types/ntext.js.map +1 -0
  77. package/lib/data-types/null.js +1 -7
  78. package/lib/data-types/null.js.map +1 -0
  79. package/lib/data-types/numeric.js +1 -18
  80. package/lib/data-types/numeric.js.map +1 -0
  81. package/lib/data-types/numericn.js +1 -7
  82. package/lib/data-types/numericn.js.map +1 -0
  83. package/lib/data-types/nvarchar.js +1 -22
  84. package/lib/data-types/nvarchar.js.map +1 -0
  85. package/lib/data-types/real.js +1 -13
  86. package/lib/data-types/real.js.map +1 -0
  87. package/lib/data-types/smalldatetime.js +1 -14
  88. package/lib/data-types/smalldatetime.js.map +1 -0
  89. package/lib/data-types/smallint.js +1 -14
  90. package/lib/data-types/smallint.js.map +1 -0
  91. package/lib/data-types/smallmoney.js +1 -13
  92. package/lib/data-types/smallmoney.js.map +1 -0
  93. package/lib/data-types/sql-variant.js +1 -6
  94. package/lib/data-types/sql-variant.js.map +1 -0
  95. package/lib/data-types/text.js +1 -18
  96. package/lib/data-types/text.js.map +1 -0
  97. package/lib/data-types/time.js +1 -22
  98. package/lib/data-types/time.js.map +1 -0
  99. package/lib/data-types/tinyint.js +1 -14
  100. package/lib/data-types/tinyint.js.map +1 -0
  101. package/lib/data-types/tvp.js +11 -27
  102. package/lib/data-types/tvp.js.map +1 -0
  103. package/lib/data-types/udt.js +1 -7
  104. package/lib/data-types/udt.js.map +1 -0
  105. package/lib/data-types/uniqueidentifier.js +1 -11
  106. package/lib/data-types/uniqueidentifier.js.map +1 -0
  107. package/lib/data-types/varbinary.js +1 -22
  108. package/lib/data-types/varbinary.js.map +1 -0
  109. package/lib/data-types/varchar.js +1 -23
  110. package/lib/data-types/varchar.js.map +1 -0
  111. package/lib/data-types/xml.js +1 -7
  112. package/lib/data-types/xml.js.map +1 -0
  113. package/lib/debug.js +4 -16
  114. package/lib/debug.js.map +1 -0
  115. package/lib/errors/abort-error.js +2 -5
  116. package/lib/errors/abort-error.js.map +1 -0
  117. package/lib/errors/timeout-error.js +2 -5
  118. package/lib/errors/timeout-error.js.map +1 -0
  119. package/lib/errors.js +10 -16
  120. package/lib/errors.js.map +1 -0
  121. package/lib/guid-parser.js +1 -7
  122. package/lib/guid-parser.js.map +1 -0
  123. package/lib/incoming-message-stream.js +9 -29
  124. package/lib/incoming-message-stream.js.map +1 -0
  125. package/lib/instance-lookup.js +3 -34
  126. package/lib/instance-lookup.js.map +1 -0
  127. package/lib/library.js +1 -1
  128. package/lib/library.js.map +1 -0
  129. package/lib/login7-payload.js +99 -100
  130. package/lib/login7-payload.js.map +1 -0
  131. package/lib/message-io.js +17 -45
  132. package/lib/message-io.js.map +1 -0
  133. package/lib/message.js +4 -8
  134. package/lib/message.js.map +1 -0
  135. package/lib/metadata-parser.js +1 -22
  136. package/lib/metadata-parser.js.map +1 -0
  137. package/lib/ntlm-payload.js +2 -22
  138. package/lib/ntlm-payload.js.map +1 -0
  139. package/lib/ntlm.js +1 -4
  140. package/lib/ntlm.js.map +1 -0
  141. package/lib/outgoing-message-stream.js +12 -21
  142. package/lib/outgoing-message-stream.js.map +1 -0
  143. package/lib/packet.js +2 -47
  144. package/lib/packet.js.map +1 -0
  145. package/lib/prelogin-payload.js +11 -54
  146. package/lib/prelogin-payload.js.map +1 -0
  147. package/lib/request.js +88 -66
  148. package/lib/request.js.map +1 -0
  149. package/lib/rpcrequest-payload.js +13 -34
  150. package/lib/rpcrequest-payload.js.map +1 -0
  151. package/lib/sender.js +1 -24
  152. package/lib/sender.js.map +1 -0
  153. package/lib/special-stored-procedure.js +1 -1
  154. package/lib/special-stored-procedure.js.map +1 -0
  155. package/lib/sqlbatch-payload.js +5 -18
  156. package/lib/sqlbatch-payload.js.map +1 -0
  157. package/lib/tds-versions.js +3 -3
  158. package/lib/tds-versions.js.map +1 -0
  159. package/lib/tedious.js +1 -12
  160. package/lib/tedious.js.map +1 -0
  161. package/lib/token/colmetadata-token-parser.js +1 -17
  162. package/lib/token/colmetadata-token-parser.js.map +1 -0
  163. package/lib/token/done-token-parser.js +2 -8
  164. package/lib/token/done-token-parser.js.map +1 -0
  165. package/lib/token/env-change-token-parser.js +7 -28
  166. package/lib/token/env-change-token-parser.js.map +1 -0
  167. package/lib/token/feature-ext-ack-parser.js +1 -10
  168. package/lib/token/feature-ext-ack-parser.js.map +1 -0
  169. package/lib/token/fedauth-info-parser.js +2 -10
  170. package/lib/token/fedauth-info-parser.js.map +1 -0
  171. package/lib/token/handler.js +39 -149
  172. package/lib/token/handler.js.map +1 -0
  173. package/lib/token/infoerror-token-parser.js +1 -5
  174. package/lib/token/infoerror-token-parser.js.map +1 -0
  175. package/lib/token/loginack-token-parser.js +1 -6
  176. package/lib/token/loginack-token-parser.js.map +1 -0
  177. package/lib/token/nbcrow-token-parser.js +2 -15
  178. package/lib/token/nbcrow-token-parser.js.map +1 -0
  179. package/lib/token/order-token-parser.js +2 -7
  180. package/lib/token/order-token-parser.js.map +1 -0
  181. package/lib/token/returnstatus-token-parser.js +2 -4
  182. package/lib/token/returnstatus-token-parser.js.map +1 -0
  183. package/lib/token/returnvalue-token-parser.js +4 -9
  184. package/lib/token/returnvalue-token-parser.js.map +1 -0
  185. package/lib/token/row-token-parser.js +2 -11
  186. package/lib/token/row-token-parser.js.map +1 -0
  187. package/lib/token/sspi-token-parser.js +1 -5
  188. package/lib/token/sspi-token-parser.js.map +1 -0
  189. package/lib/token/stream-parser.js +24 -86
  190. package/lib/token/stream-parser.js.map +1 -0
  191. package/lib/token/token-stream-parser.js +4 -13
  192. package/lib/token/token-stream-parser.js.map +1 -0
  193. package/lib/token/token.js +88 -168
  194. package/lib/token/token.js.map +1 -0
  195. package/lib/tracking-buffer/writable-tracking-buffer.js +20 -60
  196. package/lib/tracking-buffer/writable-tracking-buffer.js.map +1 -0
  197. package/lib/transaction.js +9 -33
  198. package/lib/transaction.js.map +1 -0
  199. package/lib/transient-error-lookup.js +1 -4
  200. package/lib/transient-error-lookup.js.map +1 -0
  201. package/lib/utils/with-timeout.js +1 -9
  202. package/lib/utils/with-timeout.js.map +1 -0
  203. package/lib/value-parser.js +1 -143
  204. package/lib/value-parser.js.map +1 -0
  205. package/package.json +27 -71
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _iconvLite = _interopRequireDefault(require("iconv-lite"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
9
  const MAX = (1 << 16) - 1;
13
10
  const UNKNOWN_PLP_LEN = Buffer.from([0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]);
14
11
  const PLP_TERMINATOR = Buffer.from([0x00, 0x00, 0x00, 0x00]);
@@ -22,7 +19,6 @@ const VarChar = {
22
19
  declaration: function (parameter) {
23
20
  const value = parameter.value;
24
21
  let length;
25
-
26
22
  if (parameter.length) {
27
23
  length = parameter.length;
28
24
  } else if (value != null) {
@@ -32,7 +28,6 @@ const VarChar = {
32
28
  } else {
33
29
  length = this.maximumLength;
34
30
  }
35
-
36
31
  if (length <= this.maximumLength) {
37
32
  return 'varchar(' + length + ')';
38
33
  } else {
@@ -41,7 +36,6 @@ const VarChar = {
41
36
  },
42
37
  resolveLength: function (parameter) {
43
38
  const value = parameter.value;
44
-
45
39
  if (parameter.length != null) {
46
40
  return parameter.length;
47
41
  } else if (value != null) {
@@ -50,27 +44,21 @@ const VarChar = {
50
44
  return this.maximumLength;
51
45
  }
52
46
  },
53
-
54
47
  generateTypeInfo(parameter) {
55
48
  const buffer = Buffer.alloc(8);
56
49
  buffer.writeUInt8(this.id, 0);
57
-
58
50
  if (parameter.length <= this.maximumLength) {
59
51
  buffer.writeUInt16LE(parameter.length, 1);
60
52
  } else {
61
53
  buffer.writeUInt16LE(MAX, 1);
62
54
  }
63
-
64
55
  if (parameter.collation) {
65
56
  parameter.collation.toBuffer().copy(buffer, 3, 0, 5);
66
57
  }
67
-
68
58
  return buffer;
69
59
  },
70
-
71
60
  generateParameterLength(parameter, options) {
72
61
  const value = parameter.value;
73
-
74
62
  if (value == null) {
75
63
  if (parameter.length <= this.maximumLength) {
76
64
  return NULL_LENGTH;
@@ -78,7 +66,6 @@ const VarChar = {
78
66
  return MAX_NULL_LENGTH;
79
67
  }
80
68
  }
81
-
82
69
  if (parameter.length <= this.maximumLength) {
83
70
  const buffer = Buffer.alloc(2);
84
71
  buffer.writeUInt16LE(value.length, 0);
@@ -87,14 +74,11 @@ const VarChar = {
87
74
  return UNKNOWN_PLP_LEN;
88
75
  }
89
76
  },
90
-
91
77
  *generateParameterData(parameter, options) {
92
78
  const value = parameter.value;
93
-
94
79
  if (value == null) {
95
80
  return;
96
81
  }
97
-
98
82
  if (parameter.length <= this.maximumLength) {
99
83
  yield value;
100
84
  } else {
@@ -104,32 +88,26 @@ const VarChar = {
104
88
  yield buffer;
105
89
  yield value;
106
90
  }
107
-
108
91
  yield PLP_TERMINATOR;
109
92
  }
110
93
  },
111
-
112
94
  validate: function (value, collation) {
113
95
  if (value == null) {
114
96
  return null;
115
97
  }
116
-
117
98
  if (typeof value !== 'string') {
118
99
  throw new TypeError('Invalid string.');
119
100
  }
120
-
121
101
  if (!collation) {
122
102
  throw new Error('No collation was set by the server for the current connection.');
123
103
  }
124
-
125
104
  if (!collation.codepage) {
126
105
  throw new Error('The collation set by the server has no associated encoding.');
127
106
  }
128
-
129
107
  return _iconvLite.default.encode(value, collation.codepage);
130
108
  }
131
109
  };
132
110
  var _default = VarChar;
133
111
  exports.default = _default;
134
112
  module.exports = VarChar;
135
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNQVgiLCJVTktOT1dOX1BMUF9MRU4iLCJCdWZmZXIiLCJmcm9tIiwiUExQX1RFUk1JTkFUT1IiLCJOVUxMX0xFTkdUSCIsIk1BWF9OVUxMX0xFTkdUSCIsIlZhckNoYXIiLCJpZCIsInR5cGUiLCJuYW1lIiwibWF4aW11bUxlbmd0aCIsImRlY2xhcmF0aW9uIiwicGFyYW1ldGVyIiwidmFsdWUiLCJsZW5ndGgiLCJvdXRwdXQiLCJyZXNvbHZlTGVuZ3RoIiwiZ2VuZXJhdGVUeXBlSW5mbyIsImJ1ZmZlciIsImFsbG9jIiwid3JpdGVVSW50OCIsIndyaXRlVUludDE2TEUiLCJjb2xsYXRpb24iLCJ0b0J1ZmZlciIsImNvcHkiLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsIm9wdGlvbnMiLCJnZW5lcmF0ZVBhcmFtZXRlckRhdGEiLCJ3cml0ZVVJbnQzMkxFIiwidmFsaWRhdGUiLCJUeXBlRXJyb3IiLCJFcnJvciIsImNvZGVwYWdlIiwiaWNvbnYiLCJlbmNvZGUiLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEtdHlwZXMvdmFyY2hhci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaWNvbnYgZnJvbSAnaWNvbnYtbGl0ZSc7XG5cbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnLi4vZGF0YS10eXBlJztcblxuY29uc3QgTUFYID0gKDEgPDwgMTYpIC0gMTtcbmNvbnN0IFVOS05PV05fUExQX0xFTiA9IEJ1ZmZlci5mcm9tKFsweGZlLCAweGZmLCAweGZmLCAweGZmLCAweGZmLCAweGZmLCAweGZmLCAweGZmXSk7XG5jb25zdCBQTFBfVEVSTUlOQVRPUiA9IEJ1ZmZlci5mcm9tKFsweDAwLCAweDAwLCAweDAwLCAweDAwXSk7XG5cbmNvbnN0IE5VTExfTEVOR1RIID0gQnVmZmVyLmZyb20oWzB4RkYsIDB4RkZdKTtcbmNvbnN0IE1BWF9OVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGXSk7XG5cbmNvbnN0IFZhckNoYXI6IHsgbWF4aW11bUxlbmd0aDogbnVtYmVyIH0gJiBEYXRhVHlwZSA9IHtcbiAgaWQ6IDB4QTcsXG4gIHR5cGU6ICdCSUdWQVJDSFInLFxuICBuYW1lOiAnVmFyQ2hhcicsXG4gIG1heGltdW1MZW5ndGg6IDgwMDAsXG5cbiAgZGVjbGFyYXRpb246IGZ1bmN0aW9uKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBsZXQgbGVuZ3RoO1xuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoKSB7XG4gICAgICBsZW5ndGggPSBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgbGVuZ3RoID0gdmFsdWUubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gbnVsbCAmJiAhcGFyYW1ldGVyLm91dHB1dCkge1xuICAgICAgbGVuZ3RoID0gMTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGVuZ3RoID0gdGhpcy5tYXhpbXVtTGVuZ3RoO1xuICAgIH1cblxuICAgIGlmIChsZW5ndGggPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICByZXR1cm4gJ3ZhcmNoYXIoJyArIGxlbmd0aCArICcpJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICd2YXJjaGFyKG1heCknO1xuICAgIH1cbiAgfSxcblxuICByZXNvbHZlTGVuZ3RoOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGggIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHBhcmFtZXRlci5sZW5ndGg7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdmFsdWUubGVuZ3RoIHx8IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1heGltdW1MZW5ndGg7XG4gICAgfVxuICB9LFxuXG4gIGdlbmVyYXRlVHlwZUluZm8ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDgpO1xuICAgIGJ1ZmZlci53cml0ZVVJbnQ4KHRoaXMuaWQsIDApO1xuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2TEUocGFyYW1ldGVyLmxlbmd0aCEsIDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICBidWZmZXIud3JpdGVVSW50MTZMRShNQVgsIDEpO1xuICAgIH1cblxuICAgIGlmIChwYXJhbWV0ZXIuY29sbGF0aW9uKSB7XG4gICAgICBwYXJhbWV0ZXIuY29sbGF0aW9uLnRvQnVmZmVyKCkuY29weShidWZmZXIsIDMsIDAsIDUpO1xuICAgIH1cblxuICAgIHJldHVybiBidWZmZXI7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCEgPD0gdGhpcy5tYXhpbXVtTGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiBOVUxMX0xFTkdUSDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBNQVhfTlVMTF9MRU5HVEg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jKDIpO1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2TEUodmFsdWUubGVuZ3RoLCAwKTtcbiAgICAgIHJldHVybiBidWZmZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBVTktOT1dOX1BMUF9MRU47XG4gICAgfVxuICB9LFxuXG4gICpnZW5lcmF0ZVBhcmFtZXRlckRhdGEocGFyYW1ldGVyLCBvcHRpb25zKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgeWllbGQgdmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh2YWx1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgICAgICAgYnVmZmVyLndyaXRlVUludDMyTEUodmFsdWUubGVuZ3RoLCAwKTtcbiAgICAgICAgeWllbGQgYnVmZmVyO1xuXG4gICAgICAgIHlpZWxkIHZhbHVlO1xuICAgICAgfVxuXG4gICAgICB5aWVsZCBQTFBfVEVSTUlOQVRPUjtcbiAgICB9XG4gIH0sXG5cbiAgdmFsaWRhdGU6IGZ1bmN0aW9uKHZhbHVlLCBjb2xsYXRpb24pOiBCdWZmZXIgfCBudWxsIHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgc3RyaW5nLicpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNvbGxhdGlvbiB3YXMgc2V0IGJ5IHRoZSBzZXJ2ZXIgZm9yIHRoZSBjdXJyZW50IGNvbm5lY3Rpb24uJyk7XG4gICAgfVxuXG4gICAgaWYgKCFjb2xsYXRpb24uY29kZXBhZ2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGNvbGxhdGlvbiBzZXQgYnkgdGhlIHNlcnZlciBoYXMgbm8gYXNzb2NpYXRlZCBlbmNvZGluZy4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaWNvbnYuZW5jb2RlKHZhbHVlLCBjb2xsYXRpb24uY29kZXBhZ2UpO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBWYXJDaGFyO1xubW9kdWxlLmV4cG9ydHMgPSBWYXJDaGFyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFJQSxNQUFNQSxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQU4sSUFBWSxDQUF4QjtBQUNBLE1BQU1DLGVBQWUsR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxFQUFhLElBQWIsRUFBbUIsSUFBbkIsRUFBeUIsSUFBekIsRUFBK0IsSUFBL0IsRUFBcUMsSUFBckMsRUFBMkMsSUFBM0MsQ0FBWixDQUF4QjtBQUNBLE1BQU1DLGNBQWMsR0FBR0YsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxFQUFhLElBQWIsRUFBbUIsSUFBbkIsQ0FBWixDQUF2QjtBQUVBLE1BQU1FLFdBQVcsR0FBR0gsTUFBTSxDQUFDQyxJQUFQLENBQVksQ0FBQyxJQUFELEVBQU8sSUFBUCxDQUFaLENBQXBCO0FBQ0EsTUFBTUcsZUFBZSxHQUFHSixNQUFNLENBQUNDLElBQVAsQ0FBWSxDQUFDLElBQUQsRUFBTyxJQUFQLEVBQWEsSUFBYixFQUFtQixJQUFuQixFQUF5QixJQUF6QixFQUErQixJQUEvQixFQUFxQyxJQUFyQyxFQUEyQyxJQUEzQyxDQUFaLENBQXhCO0FBRUEsTUFBTUksT0FBNkMsR0FBRztFQUNwREMsRUFBRSxFQUFFLElBRGdEO0VBRXBEQyxJQUFJLEVBQUUsV0FGOEM7RUFHcERDLElBQUksRUFBRSxTQUg4QztFQUlwREMsYUFBYSxFQUFFLElBSnFDO0VBTXBEQyxXQUFXLEVBQUUsVUFBU0MsU0FBVCxFQUFvQjtJ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
113
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaWNvbnZMaXRlIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIk1BWCIsIlVOS05PV05fUExQX0xFTiIsIkJ1ZmZlciIsImZyb20iLCJQTFBfVEVSTUlOQVRPUiIsIk5VTExfTEVOR1RIIiwiTUFYX05VTExfTEVOR1RIIiwiVmFyQ2hhciIsImlkIiwidHlwZSIsIm5hbWUiLCJtYXhpbXVtTGVuZ3RoIiwiZGVjbGFyYXRpb24iLCJwYXJhbWV0ZXIiLCJ2YWx1ZSIsImxlbmd0aCIsIm91dHB1dCIsInJlc29sdmVMZW5ndGgiLCJnZW5lcmF0ZVR5cGVJbmZvIiwiYnVmZmVyIiwiYWxsb2MiLCJ3cml0ZVVJbnQ4Iiwid3JpdGVVSW50MTZMRSIsImNvbGxhdGlvbiIsInRvQnVmZmVyIiwiY29weSIsImdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoIiwib3B0aW9ucyIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsIndyaXRlVUludDMyTEUiLCJ2YWxpZGF0ZSIsIlR5cGVFcnJvciIsIkVycm9yIiwiY29kZXBhZ2UiLCJpY29udiIsImVuY29kZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3ZhcmNoYXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGljb252IGZyb20gJ2ljb252LWxpdGUnO1xuXG5pbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IE1BWCA9ICgxIDw8IDE2KSAtIDE7XG5jb25zdCBVTktOT1dOX1BMUF9MRU4gPSBCdWZmZXIuZnJvbShbMHhmZSwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZl0pO1xuY29uc3QgUExQX1RFUk1JTkFUT1IgPSBCdWZmZXIuZnJvbShbMHgwMCwgMHgwMCwgMHgwMCwgMHgwMF0pO1xuXG5jb25zdCBOVUxMX0xFTkdUSCA9IEJ1ZmZlci5mcm9tKFsweEZGLCAweEZGXSk7XG5jb25zdCBNQVhfTlVMTF9MRU5HVEggPSBCdWZmZXIuZnJvbShbMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRl0pO1xuXG5jb25zdCBWYXJDaGFyOiB7IG1heGltdW1MZW5ndGg6IG51bWJlciB9ICYgRGF0YVR5cGUgPSB7XG4gIGlkOiAweEE3LFxuICB0eXBlOiAnQklHVkFSQ0hSJyxcbiAgbmFtZTogJ1ZhckNoYXInLFxuICBtYXhpbXVtTGVuZ3RoOiA4MDAwLFxuXG4gIGRlY2xhcmF0aW9uOiBmdW5jdGlvbihwYXJhbWV0ZXIpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcmFtZXRlci52YWx1ZSBhcyBCdWZmZXIgfCBudWxsO1xuXG4gICAgbGV0IGxlbmd0aDtcbiAgICBpZiAocGFyYW1ldGVyLmxlbmd0aCkge1xuICAgICAgbGVuZ3RoID0gcGFyYW1ldGVyLmxlbmd0aDtcbiAgICB9IGVsc2UgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIGxlbmd0aCA9IHZhbHVlLmxlbmd0aCB8fCAxO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwgJiYgIXBhcmFtZXRlci5vdXRwdXQpIHtcbiAgICAgIGxlbmd0aCA9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxlbmd0aCA9IHRoaXMubWF4aW11bUxlbmd0aDtcbiAgICB9XG5cbiAgICBpZiAobGVuZ3RoIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgcmV0dXJuICd2YXJjaGFyKCcgKyBsZW5ndGggKyAnKSc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAndmFyY2hhcihtYXgpJztcbiAgICB9XG4gIH0sXG5cbiAgcmVzb2x2ZUxlbmd0aDogZnVuY3Rpb24ocGFyYW1ldGVyKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbWV0ZXIudmFsdWUgYXMgQnVmZmVyIHwgbnVsbDtcblxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoICE9IG51bGwpIHtcbiAgICAgIHJldHVybiBwYXJhbWV0ZXIubGVuZ3RoO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHZhbHVlLmxlbmd0aCB8fCAxO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXhpbXVtTGVuZ3RoO1xuICAgIH1cbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKHBhcmFtZXRlcikge1xuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYyg4KTtcbiAgICBidWZmZXIud3JpdGVVSW50OCh0aGlzLmlkLCAwKTtcblxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHBhcmFtZXRlci5sZW5ndGghLCAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2TEUoTUFYLCAxKTtcbiAgICB9XG5cbiAgICBpZiAocGFyYW1ldGVyLmNvbGxhdGlvbikge1xuICAgICAgcGFyYW1ldGVyLmNvbGxhdGlvbi50b0J1ZmZlcigpLmNvcHkoYnVmZmVyLCAzLCAwLCA1KTtcbiAgICB9XG5cbiAgICByZXR1cm4gYnVmZmVyO1xuICB9LFxuXG4gIGdlbmVyYXRlUGFyYW1ldGVyTGVuZ3RoKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgaWYgKHBhcmFtZXRlci5sZW5ndGghIDw9IHRoaXMubWF4aW11bUxlbmd0aCkge1xuICAgICAgICByZXR1cm4gTlVMTF9MRU5HVEg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gTUFYX05VTExfTEVOR1RIO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygyKTtcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnQxNkxFKHZhbHVlLmxlbmd0aCwgMCk7XG4gICAgICByZXR1cm4gYnVmZmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gVU5LTk9XTl9QTFBfTEVOO1xuICAgIH1cbiAgfSxcblxuICAqZ2VuZXJhdGVQYXJhbWV0ZXJEYXRhKHBhcmFtZXRlciwgb3B0aW9ucykge1xuICAgIGNvbnN0IHZhbHVlID0gcGFyYW1ldGVyLnZhbHVlIGFzIEJ1ZmZlciB8IG51bGw7XG5cbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChwYXJhbWV0ZXIubGVuZ3RoISA8PSB0aGlzLm1heGltdW1MZW5ndGgpIHtcbiAgICAgIHlpZWxkIHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCBidWZmZXIgPSBCdWZmZXIuYWxsb2MoNCk7XG4gICAgICAgIGJ1ZmZlci53cml0ZVVJbnQzMkxFKHZhbHVlLmxlbmd0aCwgMCk7XG4gICAgICAgIHlpZWxkIGJ1ZmZlcjtcblxuICAgICAgICB5aWVsZCB2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgeWllbGQgUExQX1RFUk1JTkFUT1I7XG4gICAgfVxuICB9LFxuXG4gIHZhbGlkYXRlOiBmdW5jdGlvbih2YWx1ZSwgY29sbGF0aW9uKTogQnVmZmVyIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHN0cmluZy4nKTtcbiAgICB9XG5cbiAgICBpZiAoIWNvbGxhdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBjb2xsYXRpb24gd2FzIHNldCBieSB0aGUgc2VydmVyIGZvciB0aGUgY3VycmVudCBjb25uZWN0aW9uLicpO1xuICAgIH1cblxuICAgIGlmICghY29sbGF0aW9uLmNvZGVwYWdlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBjb2xsYXRpb24gc2V0IGJ5IHRoZSBzZXJ2ZXIgaGFzIG5vIGFzc29jaWF0ZWQgZW5jb2RpbmcuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGljb252LmVuY29kZSh2YWx1ZSwgY29sbGF0aW9uLmNvZGVwYWdlKTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgVmFyQ2hhcjtcbm1vZHVsZS5leHBvcnRzID0gVmFyQ2hhcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsVUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQStCLFNBQUFELHVCQUFBRSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBSS9CLE1BQU1HLEdBQUcsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQztBQUN6QixNQUFNQyxlQUFlLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3JGLE1BQU1DLGNBQWMsR0FBR0YsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUU1RCxNQUFNRSxXQUFXLEdBQUdILE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzdDLE1BQU1HLGVBQWUsR0FBR0osTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFB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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"varchar.js","names":["_iconvLite","_interopRequireDefault","require","obj","__esModule","default","MAX","UNKNOWN_PLP_LEN","Buffer","from","PLP_TERMINATOR","NULL_LENGTH","MAX_NULL_LENGTH","VarChar","id","type","name","maximumLength","declaration","parameter","value","length","output","resolveLength","generateTypeInfo","buffer","alloc","writeUInt8","writeUInt16LE","collation","toBuffer","copy","generateParameterLength","options","generateParameterData","writeUInt32LE","validate","TypeError","Error","codepage","iconv","encode","_default","exports","module"],"sources":["../../src/data-types/varchar.ts"],"sourcesContent":["import iconv from 'iconv-lite';\n\nimport { DataType } from '../data-type';\n\nconst MAX = (1 << 16) - 1;\nconst UNKNOWN_PLP_LEN = Buffer.from([0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff]);\nconst PLP_TERMINATOR = Buffer.from([0x00, 0x00, 0x00, 0x00]);\n\nconst NULL_LENGTH = Buffer.from([0xFF, 0xFF]);\nconst MAX_NULL_LENGTH = Buffer.from([0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]);\n\nconst VarChar: { maximumLength: number } & DataType = {\n id: 0xA7,\n type: 'BIGVARCHR',\n name: 'VarChar',\n maximumLength: 8000,\n\n declaration: function(parameter) {\n const value = parameter.value as Buffer | null;\n\n let length;\n if (parameter.length) {\n length = parameter.length;\n } else if (value != null) {\n length = value.length || 1;\n } else if (value === null && !parameter.output) {\n length = 1;\n } else {\n length = this.maximumLength;\n }\n\n if (length <= this.maximumLength) {\n return 'varchar(' + length + ')';\n } else {\n return 'varchar(max)';\n }\n },\n\n resolveLength: function(parameter) {\n const value = parameter.value as Buffer | null;\n\n if (parameter.length != null) {\n return parameter.length;\n } else if (value != null) {\n return value.length || 1;\n } else {\n return this.maximumLength;\n }\n },\n\n generateTypeInfo(parameter) {\n const buffer = Buffer.alloc(8);\n buffer.writeUInt8(this.id, 0);\n\n if (parameter.length! <= this.maximumLength) {\n buffer.writeUInt16LE(parameter.length!, 1);\n } else {\n buffer.writeUInt16LE(MAX, 1);\n }\n\n if (parameter.collation) {\n parameter.collation.toBuffer().copy(buffer, 3, 0, 5);\n }\n\n return buffer;\n },\n\n generateParameterLength(parameter, options) {\n const value = parameter.value as Buffer | null;\n\n if (value == null) {\n if (parameter.length! <= this.maximumLength) {\n return NULL_LENGTH;\n } else {\n return MAX_NULL_LENGTH;\n }\n }\n\n if (parameter.length! <= this.maximumLength) {\n const buffer = Buffer.alloc(2);\n buffer.writeUInt16LE(value.length, 0);\n return buffer;\n } else {\n return UNKNOWN_PLP_LEN;\n }\n },\n\n *generateParameterData(parameter, options) {\n const value = parameter.value as Buffer | null;\n\n if (value == null) {\n return;\n }\n\n if (parameter.length! <= this.maximumLength) {\n yield value;\n } else {\n if (value.length > 0) {\n const buffer = Buffer.alloc(4);\n buffer.writeUInt32LE(value.length, 0);\n yield buffer;\n\n yield value;\n }\n\n yield PLP_TERMINATOR;\n }\n },\n\n validate: function(value, collation): Buffer | null {\n if (value == null) {\n return null;\n }\n\n if (typeof value !== 'string') {\n throw new TypeError('Invalid string.');\n }\n\n if (!collation) {\n throw new Error('No collation was set by the server for the current connection.');\n }\n\n if (!collation.codepage) {\n throw new Error('The collation set by the server has no associated encoding.');\n }\n\n return iconv.encode(value, collation.codepage);\n }\n};\n\nexport default VarChar;\nmodule.exports = VarChar;\n"],"mappings":"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"}
@@ -8,29 +8,23 @@ const XML = {
8
8
  id: 0xF1,
9
9
  type: 'XML',
10
10
  name: 'Xml',
11
-
12
11
  declaration() {
13
12
  throw new Error('not implemented');
14
13
  },
15
-
16
14
  generateTypeInfo() {
17
15
  throw new Error('not implemented');
18
16
  },
19
-
20
17
  generateParameterLength() {
21
18
  throw new Error('not implemented');
22
19
  },
23
-
24
20
  generateParameterData() {
25
21
  throw new Error('not implemented');
26
22
  },
27
-
28
23
  validate() {
29
24
  throw new Error('not implemented');
30
25
  }
31
-
32
26
  };
33
27
  var _default = XML;
34
28
  exports.default = _default;
35
29
  module.exports = XML;
36
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJYTUwiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJFcnJvciIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3htbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IFhNTDogRGF0YVR5cGUgPSB7XG4gIGlkOiAweEYxLFxuICB0eXBlOiAnWE1MJyxcbiAgbmFtZTogJ1htbCcsXG5cbiAgZGVjbGFyYXRpb24oKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJyk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckRhdGEoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfSxcblxuICB2YWxpZGF0ZSgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBYTUw7XG5tb2R1bGUuZXhwb3J0cyA9IFhNTDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsTUFBTUEsR0FBYSxHQUFHO0VBQ3BCQyxFQUFFLEVBQUUsSUFEZ0I7RUFFcEJDLElBQUksRUFBRSxLQUZjO0VBR3BCQyxJQUFJLEVBQUUsS0FIYzs7RUFLcEJDLFdBQVcsR0FBRztJQUNaLE1BQU0sSUFBSUMsS0FBSixDQUFVLGlCQUFWLENBQU47RUFDRCxDQVBtQjs7RUFTcEJDLGdCQUFnQixHQUFHO0lBQ2pCLE1BQU0sSUFBSUQsS0FBSixDQUFVLGlCQUFWLENBQU47RUFDRCxDQVhtQjs7RUFhcEJFLHVCQUF1QixHQUFHO0lBQ3hCLE1BQU0sSUFBSUYsS0FBSixDQUFVLGlCQUFWLENBQU47RUFDRCxDQWZtQjs7RUFpQnBCRyxxQkFBcUIsR0FBRztJQUN0QixNQUFNLElBQUlILEtBQUosQ0FBVSxpQkFBVixDQUFOO0VBQ0QsQ0FuQm1COztFQXFCcEJJLFFBQVEsR0FBRztJQUNULE1BQU0sSUFBSUosS0FBSixDQUFVLGlCQUFWLENBQU47RUFDRDs7QUF2Qm1CLENBQXRCO2VBMEJlTCxHOztBQUNmVSxNQUFNLENBQUNDLE9BQVAsR0FBaUJYLEdBQWpCIn0=
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJYTUwiLCJpZCIsInR5cGUiLCJuYW1lIiwiZGVjbGFyYXRpb24iLCJFcnJvciIsImdlbmVyYXRlVHlwZUluZm8iLCJnZW5lcmF0ZVBhcmFtZXRlckxlbmd0aCIsImdlbmVyYXRlUGFyYW1ldGVyRGF0YSIsInZhbGlkYXRlIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiZGVmYXVsdCIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhLXR5cGVzL3htbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJy4uL2RhdGEtdHlwZSc7XG5cbmNvbnN0IFhNTDogRGF0YVR5cGUgPSB7XG4gIGlkOiAweEYxLFxuICB0eXBlOiAnWE1MJyxcbiAgbmFtZTogJ1htbCcsXG5cbiAgZGVjbGFyYXRpb24oKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfSxcblxuICBnZW5lcmF0ZVR5cGVJbmZvKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignbm90IGltcGxlbWVudGVkJyk7XG4gIH0sXG5cbiAgZ2VuZXJhdGVQYXJhbWV0ZXJMZW5ndGgoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfSxcblxuICBnZW5lcmF0ZVBhcmFtZXRlckRhdGEoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKTtcbiAgfSxcblxuICB2YWxpZGF0ZSgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBYTUw7XG5tb2R1bGUuZXhwb3J0cyA9IFhNTDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsTUFBTUEsR0FBYSxHQUFHO0VBQ3BCQyxFQUFFLEVBQUUsSUFBSTtFQUNSQyxJQUFJLEVBQUUsS0FBSztFQUNYQyxJQUFJLEVBQUUsS0FBSztFQUVYQyxXQUFXQSxDQUFBLEVBQUc7SUFDWixNQUFNLElBQUlDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztFQUNwQyxDQUFDO0VBRURDLGdCQUFnQkEsQ0FBQSxFQUFHO0lBQ2pCLE1BQU0sSUFBSUQsS0FBSyxDQUFDLGlCQUFpQixDQUFDO0VBQ3BDLENBQUM7RUFFREUsdUJBQXVCQSxDQUFBLEVBQUc7SUFDeEIsTUFBTSxJQUFJRixLQUFLLENBQUMsaUJBQWlCLENBQUM7RUFDcEMsQ0FBQztFQUVERyxxQkFBcUJBLENBQUEsRUFBRztJQUN0QixNQUFNLElBQUlILEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztFQUNwQyxDQUFDO0VBRURJLFFBQVFBLENBQUEsRUFBRztJQUNULE1BQU0sSUFBSUosS0FBSyxDQUFDLGlCQUFpQixDQUFDO0VBQ3BDO0FBQ0YsQ0FBQztBQUFDLElBQUFLLFFBQUEsR0FFYVYsR0FBRztBQUFBVyxPQUFBLENBQUFDLE9BQUEsR0FBQUYsUUFBQTtBQUNsQkcsTUFBTSxDQUFDRixPQUFPLEdBQUdYLEdBQUcifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml.js","names":["XML","id","type","name","declaration","Error","generateTypeInfo","generateParameterLength","generateParameterData","validate","_default","exports","default","module"],"sources":["../../src/data-types/xml.ts"],"sourcesContent":["import { DataType } from '../data-type';\n\nconst XML: DataType = {\n id: 0xF1,\n type: 'XML',\n name: 'Xml',\n\n declaration() {\n throw new Error('not implemented');\n },\n\n generateTypeInfo() {\n throw new Error('not implemented');\n },\n\n generateParameterLength() {\n throw new Error('not implemented');\n },\n\n generateParameterData() {\n throw new Error('not implemented');\n },\n\n validate() {\n throw new Error('not implemented');\n }\n};\n\nexport default XML;\nmodule.exports = XML;\n"],"mappings":";;;;;;AAEA,MAAMA,GAAa,GAAG;EACpBC,EAAE,EAAE,IAAI;EACRC,IAAI,EAAE,KAAK;EACXC,IAAI,EAAE,KAAK;EAEXC,WAAWA,CAAA,EAAG;IACZ,MAAM,IAAIC,KAAK,CAAC,iBAAiB,CAAC;EACpC,CAAC;EAEDC,gBAAgBA,CAAA,EAAG;IACjB,MAAM,IAAID,KAAK,CAAC,iBAAiB,CAAC;EACpC,CAAC;EAEDE,uBAAuBA,CAAA,EAAG;IACxB,MAAM,IAAIF,KAAK,CAAC,iBAAiB,CAAC;EACpC,CAAC;EAEDG,qBAAqBA,CAAA,EAAG;IACtB,MAAM,IAAIH,KAAK,CAAC,iBAAiB,CAAC;EACpC,CAAC;EAEDI,QAAQA,CAAA,EAAG;IACT,MAAM,IAAIJ,KAAK,CAAC,iBAAiB,CAAC;EACpC;AACF,CAAC;AAAC,IAAAK,QAAA,GAEaV,GAAG;AAAAW,OAAA,CAAAC,OAAA,GAAAF,QAAA;AAClBG,MAAM,CAACF,OAAO,GAAGX,GAAG"}
package/lib/debug.js CHANGED
@@ -4,16 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _events = require("events");
9
-
10
8
  var util = _interopRequireWildcard(require("util"));
11
-
12
9
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
-
14
10
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
-
16
11
  class Debug extends _events.EventEmitter {
12
+ options;
13
+ indent;
14
+
17
15
  /*
18
16
  @options Which debug details should be sent.
19
17
  data - dump of packet data
@@ -26,8 +24,6 @@ class Debug extends _events.EventEmitter {
26
24
  token = false
27
25
  } = {}) {
28
26
  super();
29
- this.options = void 0;
30
- this.indent = void 0;
31
27
  this.options = {
32
28
  data,
33
29
  payload,
@@ -36,7 +32,6 @@ class Debug extends _events.EventEmitter {
36
32
  };
37
33
  this.indent = ' ';
38
34
  }
39
-
40
35
  packet(direction, packet) {
41
36
  if (this.haveListeners() && this.options.packet) {
42
37
  this.log('');
@@ -44,19 +39,16 @@ class Debug extends _events.EventEmitter {
44
39
  this.log(packet.headerToString(this.indent));
45
40
  }
46
41
  }
47
-
48
42
  data(packet) {
49
43
  if (this.haveListeners() && this.options.data) {
50
44
  this.log(packet.dataToString(this.indent));
51
45
  }
52
46
  }
53
-
54
47
  payload(generatePayloadText) {
55
48
  if (this.haveListeners() && this.options.payload) {
56
49
  this.log(generatePayloadText());
57
50
  }
58
51
  }
59
-
60
52
  token(token) {
61
53
  if (this.haveListeners() && this.options.token) {
62
54
  this.log(util.inspect(token, {
@@ -66,18 +58,14 @@ class Debug extends _events.EventEmitter {
66
58
  }));
67
59
  }
68
60
  }
69
-
70
61
  haveListeners() {
71
62
  return this.listeners('debug').length > 0;
72
63
  }
73
-
74
64
  log(text) {
75
65
  this.emit('debug', text);
76
66
  }
77
-
78
67
  }
79
-
80
68
  var _default = Debug;
81
69
  exports.default = _default;
82
70
  module.exports = Debug;
83
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWJ1ZyIsIkV2ZW50RW1pdHRlciIsImNvbnN0cnVjdG9yIiwiZGF0YSIsInBheWxvYWQiLCJwYWNrZXQiLCJ0b2tlbiIsIm9wdGlvbnMiLCJpbmRlbnQiLCJkaXJlY3Rpb24iLCJoYXZlTGlzdGVuZXJzIiwibG9nIiwiaGVhZGVyVG9TdHJpbmciLCJkYXRhVG9TdHJpbmciLCJnZW5lcmF0ZVBheWxvYWRUZXh0IiwidXRpbCIsImluc3BlY3QiLCJzaG93SGlkZGVuIiwiZGVwdGgiLCJjb2xvcnMiLCJsaXN0ZW5lcnMiLCJsZW5ndGgiLCJ0ZXh0IiwiZW1pdCIsIm1vZHVsZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi9zcmMvZGVidWcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnZXZlbnRzJztcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSAndXRpbCc7XG5pbXBvcnQgeyBQYWNrZXQgfSBmcm9tICcuL3BhY2tldCc7XG5cbmNsYXNzIERlYnVnIGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgb3B0aW9uczoge1xuICAgIGRhdGE6IGJvb2xlYW47XG4gICAgcGF5bG9hZDogYm9vbGVhbjtcbiAgICBwYWNrZXQ6IGJvb2xlYW47XG4gICAgdG9rZW46IGJvb2xlYW47XG4gIH07XG5cbiAgaW5kZW50OiBzdHJpbmc7XG5cbiAgLypcbiAgICBAb3B0aW9ucyAgICBXaGljaCBkZWJ1ZyBkZXRhaWxzIHNob3VsZCBiZSBzZW50LlxuICAgICAgICAgICAgICAgIGRhdGEgICAgLSBkdW1wIG9mIHBhY2tldCBkYXRhXG4gICAgICAgICAgICAgICAgcGF5bG9hZCAtIGRldGFpbHMgb2YgZGVjb2RlZCBwYXlsb2FkXG4gICovXG4gIGNvbnN0cnVjdG9yKHsgZGF0YSA9IGZhbHNlLCBwYXlsb2FkID0gZmFsc2UsIHBhY2tldCA9IGZhbHNlLCB0b2tlbiA9IGZhbHNlIH0gPSB7fSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLm9wdGlvbnMgPSB7IGRhdGEsIHBheWxvYWQsIHBhY2tldCwgdG9rZW4gfTtcbiAgICB0aGlzLmluZGVudCA9ICcgICc7XG4gIH1cblxuICBwYWNrZXQoZGlyZWN0aW9uOiAnUmVjZWl2ZWQnIHwgJ1NlbnQnLCBwYWNrZXQ6IFBhY2tldCkge1xuICAgIGlmICh0aGlzLmhhdmVMaXN0ZW5lcnMoKSAmJiB0aGlzLm9wdGlvbnMucGFja2V0KSB7XG4gICAgICB0aGlzLmxvZygnJyk7XG4gICAgICB0aGlzLmxvZyhkaXJlY3Rpb24pO1xuICAgICAgdGhpcy5sb2cocGFja2V0LmhlYWRlclRvU3RyaW5nKHRoaXMuaW5kZW50KSk7XG4gICAgfVxuICB9XG5cbiAgZGF0YShwYWNrZXQ6IFBhY2tldCkge1xuICAgIGlmICh0aGlzLmhhdmVMaXN0ZW5lcnMoKSAmJiB0aGlzLm9wdGlvbnMuZGF0YSkge1xuICAgICAgdGhpcy5sb2cocGFja2V0LmRhdGFUb1N0cmluZyh0aGlzLmluZGVudCkpO1xuICAgIH1cbiAgfVxuXG4gIHBheWxvYWQoZ2VuZXJhdGVQYXlsb2FkVGV4dDogKCkgPT4gc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuaGF2ZUxpc3RlbmVycygpICYmIHRoaXMub3B0aW9ucy5wYXlsb2FkKSB7XG4gICAgICB0aGlzLmxvZyhnZW5lcmF0ZVBheWxvYWRUZXh0KCkpO1xuICAgIH1cbiAgfVxuXG4gIHRva2VuKHRva2VuOiBhbnkpIHtcbiAgICBpZiAodGhpcy5oYXZlTGlzdGVuZXJzKCkgJiYgdGhpcy5vcHRpb25zLnRva2VuKSB7XG4gICAgICB0aGlzLmxvZyh1dGlsLmluc3BlY3QodG9rZW4sIHsgc2hvd0hpZGRlbjogZmFsc2UsIGRlcHRoOiA1LCBjb2xvcnM6IHRydWUgfSkpO1xuICAgIH1cbiAgfVxuXG4gIGhhdmVMaXN0ZW5lcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMubGlzdGVuZXJzKCdkZWJ1ZycpLmxlbmd0aCA+IDA7XG4gIH1cblxuICBsb2codGV4dDogc3RyaW5nKSB7XG4gICAgdGhpcy5lbWl0KCdkZWJ1ZycsIHRleHQpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IERlYnVnO1xubW9kdWxlLmV4cG9ydHMgPSBEZWJ1ZztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOzs7Ozs7QUFHQSxNQUFNQSxLQUFOLFNBQW9CQyxvQkFBcEIsQ0FBaUM7RUFVL0I7QUFDRjtBQUNBO0FBQ0E7QUFDQTtFQUNFQyxXQUFXLENBQUM7SUFBRUMsSUFBSSxHQUFHLEtBQVQ7SUFBZ0JDLE9BQU8sR0FBRyxLQUExQjtJQUFpQ0MsTUFBTSxHQUFHLEtBQTFDO0lBQWlEQyxLQUFLLEdBQUc7RUFBekQsSUFBbUUsRUFBcEUsRUFBd0U7SUFDakY7SUFEaUYsS0FkbkZDLE9BY21GO0lBQUEsS0FQbkZDLE1BT21GO0lBR2pGLEtBQUtELE9BQUwsR0FBZTtNQUFFSixJQUFGO01BQVFDLE9BQVI7TUFBaUJDLE1BQWpCO01BQXlCQztJQUF6QixDQUFmO0lBQ0EsS0FBS0UsTUFBTCxHQUFjLElBQWQ7RUFDRDs7RUFFREgsTUFBTSxDQUFDSSxTQUFELEVBQWlDSixNQUFqQyxFQUFpRDtJQUNyRCxJQUFJLEtBQUtLLGFBQUwsTUFBd0IsS0FBS0gsT0FBTCxDQUFhRixNQUF6QyxFQUFpRDtNQUMvQyxLQUFLTSxHQUFMLENBQVMsRUFBVDtNQUNBLEtBQUtBLEdBQUwsQ0FBU0YsU0FBVDtNQUNBLEtBQUtFLEdBQUwsQ0FBU04sTUFBTSxDQUFDTyxjQUFQLENBQXNCLEtBQUtKLE1BQTNCLENBQVQ7SUFDRDtFQUNGOztFQUVETCxJQUFJLENBQUNFLE1BQUQsRUFBaUI7SUFDbkIsSUFBSSxLQUFLSyxhQUFMLE1BQXdCLEtBQUtILE9BQUwsQ0FBYUosSUFBekMsRUFBK0M7TUFDN0MsS0FBS1EsR0FBTCxDQUFTTixNQUFNLENBQUNRLFlBQVAsQ0FBb0IsS0FBS0wsTUFBekIsQ0FBVDtJQUNEO0VBQ0Y7O0VBRURKLE9BQU8sQ0FBQ1UsbUJBQUQsRUFBb0M7SUFDekMsSUFBSSxLQUFLSixhQUFMLE1BQXdCLEtBQUtILE9BQUwsQ0FBYUgsT0FBekMsRUFBa0Q7TUFDaEQsS0FBS08sR0FBTCxDQUFTRyxtQkFBbUIsRUFBNUI7SUFDRDtFQUNGOztFQUVEUixLQUFLLENBQUNBLEtBQUQsRUFBYTtJQUNoQixJQUFJLEtBQUtJLGFBQUwsTUFBd0IsS0FBS0gsT0FBTCxDQUFhRCxLQUF6QyxFQUFnRDtNQUM5QyxLQUFLSyxHQUFMLENBQVNJLElBQUksQ0FBQ0MsT0FBTCxDQUFhVixLQUFiLEVBQW9CO1FBQUVXLFVBQVUsRUFBRSxLQUFkO1FBQXFCQyxLQUFLLEVBQUUsQ0FBNUI7UUFBK0JDLE1BQU0sRUFBRTtNQUF2QyxDQUFwQixDQUFUO0lBQ0Q7RUFDRjs7RUFFRFQsYUFBYSxHQUFHO0lBQ2QsT0FBTyxLQUFLVSxTQUFMLENBQWUsT0FBZixFQUF3QkMsTUFBeEIsR0FBaUMsQ0FBeEM7RUFDRDs7RUFFRFYsR0FBRyxDQUFDVyxJQUFELEVBQWU7SUFDaEIsS0FBS0MsSUFBTCxDQUFVLE9BQVYsRUFBbUJELElBQW5CO0VBQ0Q7O0FBdEQ4Qjs7ZUF5RGxCdEIsSzs7QUFDZndCLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQnpCLEtBQWpCIn0=
71
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZXZlbnRzIiwicmVxdWlyZSIsInV0aWwiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJEZWJ1ZyIsIkV2ZW50RW1pdHRlciIsIm9wdGlvbnMiLCJpbmRlbnQiLCJjb25zdHJ1Y3RvciIsImRhdGEiLCJwYXlsb2FkIiwicGFja2V0IiwidG9rZW4iLCJkaXJlY3Rpb24iLCJoYXZlTGlzdGVuZXJzIiwibG9nIiwiaGVhZGVyVG9TdHJpbmciLCJkYXRhVG9TdHJpbmciLCJnZW5lcmF0ZVBheWxvYWRUZXh0IiwiaW5zcGVjdCIsInNob3dIaWRkZW4iLCJkZXB0aCIsImNvbG9ycyIsImxpc3RlbmVycyIsImxlbmd0aCIsInRleHQiLCJlbWl0IiwiX2RlZmF1bHQiLCJleHBvcnRzIiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vc3JjL2RlYnVnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ2V2ZW50cyc7XG5pbXBvcnQgKiBhcyB1dGlsIGZyb20gJ3V0aWwnO1xuaW1wb3J0IHsgUGFja2V0IH0gZnJvbSAnLi9wYWNrZXQnO1xuXG5jbGFzcyBEZWJ1ZyBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIG9wdGlvbnM6IHtcbiAgICBkYXRhOiBib29sZWFuO1xuICAgIHBheWxvYWQ6IGJvb2xlYW47XG4gICAgcGFja2V0OiBib29sZWFuO1xuICAgIHRva2VuOiBib29sZWFuO1xuICB9O1xuXG4gIGluZGVudDogc3RyaW5nO1xuXG4gIC8qXG4gICAgQG9wdGlvbnMgICAgV2hpY2ggZGVidWcgZGV0YWlscyBzaG91bGQgYmUgc2VudC5cbiAgICAgICAgICAgICAgICBkYXRhICAgIC0gZHVtcCBvZiBwYWNrZXQgZGF0YVxuICAgICAgICAgICAgICAgIHBheWxvYWQgLSBkZXRhaWxzIG9mIGRlY29kZWQgcGF5bG9hZFxuICAqL1xuICBjb25zdHJ1Y3Rvcih7IGRhdGEgPSBmYWxzZSwgcGF5bG9hZCA9IGZhbHNlLCBwYWNrZXQgPSBmYWxzZSwgdG9rZW4gPSBmYWxzZSB9ID0ge30pIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5vcHRpb25zID0geyBkYXRhLCBwYXlsb2FkLCBwYWNrZXQsIHRva2VuIH07XG4gICAgdGhpcy5pbmRlbnQgPSAnICAnO1xuICB9XG5cbiAgcGFja2V0KGRpcmVjdGlvbjogJ1JlY2VpdmVkJyB8ICdTZW50JywgcGFja2V0OiBQYWNrZXQpIHtcbiAgICBpZiAodGhpcy5oYXZlTGlzdGVuZXJzKCkgJiYgdGhpcy5vcHRpb25zLnBhY2tldCkge1xuICAgICAgdGhpcy5sb2coJycpO1xuICAgICAgdGhpcy5sb2coZGlyZWN0aW9uKTtcbiAgICAgIHRoaXMubG9nKHBhY2tldC5oZWFkZXJUb1N0cmluZyh0aGlzLmluZGVudCkpO1xuICAgIH1cbiAgfVxuXG4gIGRhdGEocGFja2V0OiBQYWNrZXQpIHtcbiAgICBpZiAodGhpcy5oYXZlTGlzdGVuZXJzKCkgJiYgdGhpcy5vcHRpb25zLmRhdGEpIHtcbiAgICAgIHRoaXMubG9nKHBhY2tldC5kYXRhVG9TdHJpbmcodGhpcy5pbmRlbnQpKTtcbiAgICB9XG4gIH1cblxuICBwYXlsb2FkKGdlbmVyYXRlUGF5bG9hZFRleHQ6ICgpID0+IHN0cmluZykge1xuICAgIGlmICh0aGlzLmhhdmVMaXN0ZW5lcnMoKSAmJiB0aGlzLm9wdGlvbnMucGF5bG9hZCkge1xuICAgICAgdGhpcy5sb2coZ2VuZXJhdGVQYXlsb2FkVGV4dCgpKTtcbiAgICB9XG4gIH1cblxuICB0b2tlbih0b2tlbjogYW55KSB7XG4gICAgaWYgKHRoaXMuaGF2ZUxpc3RlbmVycygpICYmIHRoaXMub3B0aW9ucy50b2tlbikge1xuICAgICAgdGhpcy5sb2codXRpbC5pbnNwZWN0KHRva2VuLCB7IHNob3dIaWRkZW46IGZhbHNlLCBkZXB0aDogNSwgY29sb3JzOiB0cnVlIH0pKTtcbiAgICB9XG4gIH1cblxuICBoYXZlTGlzdGVuZXJzKCkge1xuICAgIHJldHVybiB0aGlzLmxpc3RlbmVycygnZGVidWcnKS5sZW5ndGggPiAwO1xuICB9XG5cbiAgbG9nKHRleHQ6IHN0cmluZykge1xuICAgIHRoaXMuZW1pdCgnZGVidWcnLCB0ZXh0KTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBEZWJ1Zztcbm1vZHVsZS5leHBvcnRzID0gRGVidWc7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLElBQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUE2QixTQUFBRyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBRix3QkFBQU0sR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLG9CQUFBQSxHQUFBLHdCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQUcsS0FBQSxHQUFBUix3QkFBQSxDQUFBQyxXQUFBLE9BQUFPLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFKLEdBQUEsWUFBQUcsS0FBQSxD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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug.js","names":["_events","require","util","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Debug","EventEmitter","options","indent","constructor","data","payload","packet","token","direction","haveListeners","log","headerToString","dataToString","generatePayloadText","inspect","showHidden","depth","colors","listeners","length","text","emit","_default","exports","module"],"sources":["../src/debug.ts"],"sourcesContent":["import { EventEmitter } from 'events';\nimport * as util from 'util';\nimport { Packet } from './packet';\n\nclass Debug extends EventEmitter {\n options: {\n data: boolean;\n payload: boolean;\n packet: boolean;\n token: boolean;\n };\n\n indent: string;\n\n /*\n @options Which debug details should be sent.\n data - dump of packet data\n payload - details of decoded payload\n */\n constructor({ data = false, payload = false, packet = false, token = false } = {}) {\n super();\n\n this.options = { data, payload, packet, token };\n this.indent = ' ';\n }\n\n packet(direction: 'Received' | 'Sent', packet: Packet) {\n if (this.haveListeners() && this.options.packet) {\n this.log('');\n this.log(direction);\n this.log(packet.headerToString(this.indent));\n }\n }\n\n data(packet: Packet) {\n if (this.haveListeners() && this.options.data) {\n this.log(packet.dataToString(this.indent));\n }\n }\n\n payload(generatePayloadText: () => string) {\n if (this.haveListeners() && this.options.payload) {\n this.log(generatePayloadText());\n }\n }\n\n token(token: any) {\n if (this.haveListeners() && this.options.token) {\n this.log(util.inspect(token, { showHidden: false, depth: 5, colors: true }));\n }\n }\n\n haveListeners() {\n return this.listeners('debug').length > 0;\n }\n\n log(text: string) {\n this.emit('debug', text);\n }\n}\n\nexport default Debug;\nmodule.exports = Debug;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA6B,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAF,wBAAAM,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAG7B,MAAMW,KAAK,SAASC,oBAAY,CAAC;EAC/BC,OAAO;EAOPC,MAAM;;EAEN;AACF;AACA;AACA;AACA;EACEC,WAAWA,CAAC;IAAEC,IAAI,GAAG,KAAK;IAAEC,OAAO,GAAG,KAAK;IAAEC,MAAM,GAAG,KAAK;IAAEC,KAAK,GAAG;EAAM,CAAC,GAAG,CAAC,CAAC,EAAE;IACjF,KAAK,CAAC,CAAC;IAEP,IAAI,CAACN,OAAO,GAAG;MAAEG,IAAI;MAAEC,OAAO;MAAEC,MAAM;MAAEC;IAAM,CAAC;IAC/C,IAAI,CAACL,MAAM,GAAG,IAAI;EACpB;EAEAI,MAAMA,CAACE,SAA8B,EAAEF,MAAc,EAAE;IACrD,IAAI,IAAI,CAACG,aAAa,CAAC,CAAC,IAAI,IAAI,CAACR,OAAO,CAACK,MAAM,EAAE;MAC/C,IAAI,CAACI,GAAG,CAAC,EAAE,CAAC;MACZ,IAAI,CAACA,GAAG,CAACF,SAAS,CAAC;MACnB,IAAI,CAACE,GAAG,CAACJ,MAAM,CAACK,cAAc,CAAC,IAAI,CAACT,MAAM,CAAC,CAAC;IAC9C;EACF;EAEAE,IAAIA,CAACE,MAAc,EAAE;IACnB,IAAI,IAAI,CAACG,aAAa,CAAC,CAAC,IAAI,IAAI,CAACR,OAAO,CAACG,IAAI,EAAE;MAC7C,IAAI,CAACM,GAAG,CAACJ,MAAM,CAACM,YAAY,CAAC,IAAI,CAACV,MAAM,CAAC,CAAC;IAC5C;EACF;EAEAG,OAAOA,CAACQ,mBAAiC,EAAE;IACzC,IAAI,IAAI,CAACJ,aAAa,CAAC,CAAC,IAAI,IAAI,CAACR,OAAO,CAACI,OAAO,EAAE;MAChD,IAAI,CAACK,GAAG,CAACG,mBAAmB,CAAC,CAAC,CAAC;IACjC;EACF;EAEAN,KAAKA,CAACA,KAAU,EAAE;IAChB,IAAI,IAAI,CAACE,aAAa,CAAC,CAAC,IAAI,IAAI,CAACR,OAAO,CAACM,KAAK,EAAE;MAC9C,IAAI,CAACG,GAAG,CAACnC,IAAI,CAACuC,OAAO,CAACP,KAAK,EAAE;QAAEQ,UAAU,EAAE,KAAK;QAAEC,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAK,CAAC,CAAC,CAAC;IAC9E;EACF;EAEAR,aAAaA,CAAA,EAAG;IACd,OAAO,IAAI,CAACS,SAAS,CAAC,OAAO,CAAC,CAACC,MAAM,GAAG,CAAC;EAC3C;EAEAT,GAAGA,CAACU,IAAY,EAAE;IAChB,IAAI,CAACC,IAAI,CAAC,OAAO,EAAED,IAAI,CAAC;EAC1B;AACF;AAAC,IAAAE,QAAA,GAEcvB,KAAK;AAAAwB,OAAA,CAAAvC,OAAA,GAAAsC,QAAA;AACpBE,MAAM,CAACD,OAAO,GAAGxB,KAAK"}
@@ -4,16 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  class AbortError extends Error {
8
+ code;
9
9
  constructor() {
10
10
  super('The operation was aborted');
11
- this.code = void 0;
12
11
  this.code = 'ABORT_ERR';
13
12
  this.name = 'AbortError';
14
13
  }
15
-
16
14
  }
17
-
18
15
  exports.default = AbortError;
19
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBYm9ydEVycm9yIiwiRXJyb3IiLCJjb25zdHJ1Y3RvciIsImNvZGUiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Vycm9ycy9hYm9ydC1lcnJvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBBYm9ydEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQnKTtcblxuICAgIHRoaXMuY29kZSA9ICdBQk9SVF9FUlInO1xuICAgIHRoaXMubmFtZSA9ICdBYm9ydEVycm9yJztcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQWUsTUFBTUEsVUFBTixTQUF5QkMsS0FBekIsQ0FBK0I7RUFHNUNDLFdBQVcsR0FBRztJQUNaLE1BQU0sMkJBQU47SUFEWSxLQUZkQyxJQUVjO0lBR1osS0FBS0EsSUFBTCxHQUFZLFdBQVo7SUFDQSxLQUFLQyxJQUFMLEdBQVksWUFBWjtFQUNEOztBQVIyQyJ9
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBYm9ydEVycm9yIiwiRXJyb3IiLCJjb2RlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiZXhwb3J0cyIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZXJyb3JzL2Fib3J0LWVycm9yLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGNsYXNzIEFib3J0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvZGU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZCcpO1xuXG4gICAgdGhpcy5jb2RlID0gJ0FCT1JUX0VSUic7XG4gICAgdGhpcy5uYW1lID0gJ0Fib3J0RXJyb3InO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFlLE1BQU1BLFVBQVUsU0FBU0MsS0FBSyxDQUFDO0VBQzVDQyxJQUFJO0VBRUpDLFdBQVdBLENBQUEsRUFBRztJQUNaLEtBQUssQ0FBQywyQkFBMkIsQ0FBQztJQUVsQyxJQUFJLENBQUNELElBQUksR0FBRyxXQUFXO0lBQ3ZCLElBQUksQ0FBQ0UsSUFBSSxHQUFHLFlBQVk7RUFDMUI7QUFDRjtBQUFDQyxPQUFBLENBQUFDLE9BQUEsR0FBQU4sVUFBQSJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abort-error.js","names":["AbortError","Error","code","constructor","name","exports","default"],"sources":["../../src/errors/abort-error.ts"],"sourcesContent":["export default class AbortError extends Error {\n code: string;\n\n constructor() {\n super('The operation was aborted');\n\n this.code = 'ABORT_ERR';\n this.name = 'AbortError';\n }\n}\n"],"mappings":";;;;;;AAAe,MAAMA,UAAU,SAASC,KAAK,CAAC;EAC5CC,IAAI;EAEJC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,2BAA2B,CAAC;IAElC,IAAI,CAACD,IAAI,GAAG,WAAW;IACvB,IAAI,CAACE,IAAI,GAAG,YAAY;EAC1B;AACF;AAACC,OAAA,CAAAC,OAAA,GAAAN,UAAA"}
@@ -4,16 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  class TimeoutError extends Error {
8
+ code;
9
9
  constructor() {
10
10
  super('The operation was aborted due to timeout');
11
- this.code = void 0;
12
11
  this.code = 'TIMEOUT_ERR';
13
12
  this.name = 'TimeoutError';
14
13
  }
15
-
16
14
  }
17
-
18
15
  exports.default = TimeoutError;
19
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUaW1lb3V0RXJyb3IiLCJFcnJvciIsImNvbnN0cnVjdG9yIiwiY29kZSIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZXJyb3JzL3RpbWVvdXQtZXJyb3IudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGltZW91dEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQgZHVlIHRvIHRpbWVvdXQnKTtcblxuICAgIHRoaXMuY29kZSA9ICdUSU1FT1VUX0VSUic7XG4gICAgdGhpcy5uYW1lID0gJ1RpbWVvdXRFcnJvcic7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFlLE1BQU1BLFlBQU4sU0FBMkJDLEtBQTNCLENBQWlDO0VBRzlDQyxXQUFXLEdBQUc7SUFDWixNQUFNLDBDQUFOO0lBRFksS0FGZEMsSUFFYztJQUdaLEtBQUtBLElBQUwsR0FBWSxhQUFaO0lBQ0EsS0FBS0MsSUFBTCxHQUFZLGNBQVo7RUFDRDs7QUFSNkMifQ==
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUaW1lb3V0RXJyb3IiLCJFcnJvciIsImNvZGUiLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lcnJvcnMvdGltZW91dC1lcnJvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBUaW1lb3V0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvZGU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZCBkdWUgdG8gdGltZW91dCcpO1xuXG4gICAgdGhpcy5jb2RlID0gJ1RJTUVPVVRfRVJSJztcbiAgICB0aGlzLm5hbWUgPSAnVGltZW91dEVycm9yJztcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBZSxNQUFNQSxZQUFZLFNBQVNDLEtBQUssQ0FBQztFQUM5Q0MsSUFBSTtFQUVKQyxXQUFXQSxDQUFBLEVBQUc7SUFDWixLQUFLLENBQUMsMENBQTBDLENBQUM7SUFFakQsSUFBSSxDQUFDRCxJQUFJLEdBQUcsYUFBYTtJQUN6QixJQUFJLENBQUNFLElBQUksR0FBRyxjQUFjO0VBQzVCO0FBQ0Y7QUFBQ0MsT0FBQSxDQUFBQyxPQUFBLEdBQUFOLFlBQUEifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout-error.js","names":["TimeoutError","Error","code","constructor","name","exports","default"],"sources":["../../src/errors/timeout-error.ts"],"sourcesContent":["export default class TimeoutError extends Error {\n code: string;\n\n constructor() {\n super('The operation was aborted due to timeout');\n\n this.code = 'TIMEOUT_ERR';\n this.name = 'TimeoutError';\n }\n}\n"],"mappings":";;;;;;AAAe,MAAMA,YAAY,SAASC,KAAK,CAAC;EAC9CC,IAAI;EAEJC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,0CAA0C,CAAC;IAEjD,IAAI,CAACD,IAAI,GAAG,aAAa;IACzB,IAAI,CAACE,IAAI,GAAG,cAAc;EAC5B;AACF;AAACC,OAAA,CAAAC,OAAA,GAAAN,YAAA"}
package/lib/errors.js CHANGED
@@ -4,33 +4,27 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.RequestError = exports.ConnectionError = void 0;
7
-
8
7
  class ConnectionError extends Error {
8
+ code;
9
+ isTransient;
9
10
  constructor(message, code) {
10
11
  super(message);
11
- this.code = void 0;
12
- this.isTransient = void 0;
13
12
  this.code = code;
14
13
  }
15
-
16
14
  }
17
-
18
15
  exports.ConnectionError = ConnectionError;
19
-
20
16
  class RequestError extends Error {
17
+ code;
18
+ number;
19
+ state;
20
+ class;
21
+ serverName;
22
+ procName;
23
+ lineNumber;
21
24
  constructor(message, code) {
22
25
  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
26
  this.code = code;
31
27
  }
32
-
33
28
  }
34
-
35
29
  exports.RequestError = RequestError;
36
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb25uZWN0aW9uRXJyb3IiLCJFcnJvciIsImNvbnN0cnVjdG9yIiwibWVzc2FnZSIsImNvZGUiLCJpc1RyYW5zaWVudCIsIlJlcXVlc3RFcnJvciIsIm51bWJlciIsInN0YXRlIiwiY2xhc3MiLCJzZXJ2ZXJOYW1lIiwicHJvY05hbWUiLCJsaW5lTnVtYmVyIl0sInNvdXJjZXMiOlsiLi4vc3JjL2Vycm9ycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ29ubmVjdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgaXNUcmFuc2llbnQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjb2RlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG5cbiAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSZXF1ZXN0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvZGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBudW1iZXI6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgc3RhdGU6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgY2xhc3M6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgc2VydmVyTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcm9jTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBsaW5lTnVtYmVyOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBjb2RlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG5cbiAgICB0aGlzLmNvZGUgPSBjb2RlO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBTyxNQUFNQSxlQUFOLFNBQThCQyxLQUE5QixDQUFvQztFQUt6Q0MsV0FBVyxDQUFDQyxPQUFELEVBQWtCQyxJQUFsQixFQUFpQztJQUMxQyxNQUFNRCxPQUFOO0lBRDBDLEtBSjVDQyxJQUk0QztJQUFBLEtBRjVDQyxXQUU0QztJQUcxQyxLQUFLRCxJQUFMLEdBQVlBLElBQVo7RUFDRDs7QUFUd0M7Ozs7QUFZcEMsTUFBTUUsWUFBTixTQUEyQkwsS0FBM0IsQ0FBaUM7RUFVdENDLFdBQVcsQ0FBQ0MsT0FBRCxFQUFrQkMsSUFBbEIsRUFBaUM7SUFDMUMsTUFBTUQsT0FBTjtJQUQwQyxLQVQ1Q0MsSUFTNEM7SUFBQSxLQVA1Q0csTUFPNEM7SUFBQSxLQU41Q0MsS0FNNEM7SUFBQSxLQUw1Q0MsS0FLNEM7SUFBQSxLQUo1Q0MsVUFJNEM7SUFBQSxLQUg1Q0MsUUFHNEM7SUFBQSxLQUY1Q0MsVUFFNEM7SUFHMUMsS0FBS1IsSUFBTCxHQUFZQSxJQUFaO0VBQ0Q7O0FBZHFDIn0=
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb25uZWN0aW9uRXJyb3IiLCJFcnJvciIsImNvZGUiLCJpc1RyYW5zaWVudCIsImNvbnN0cnVjdG9yIiwibWVzc2FnZSIsImV4cG9ydHMiLCJSZXF1ZXN0RXJyb3IiLCJudW1iZXIiLCJzdGF0ZSIsImNsYXNzIiwic2VydmVyTmFtZSIsInByb2NOYW1lIiwibGluZU51bWJlciJdLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29kZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIGlzVHJhbnNpZW50OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgY29kZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuXG4gICAgdGhpcy5jb2RlID0gY29kZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUmVxdWVzdEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgbnVtYmVyOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHN0YXRlOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGNsYXNzOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHNlcnZlck5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHJvY05hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgbGluZU51bWJlcjogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgY29kZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuXG4gICAgdGhpcy5jb2RlID0gY29kZTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBTyxNQUFNQSxlQUFlLFNBQVNDLEtBQUssQ0FBQztFQUN6Q0MsSUFBSTtFQUVKQyxXQUFXO0VBRVhDLFdBQVdBLENBQUNDLE9BQWUsRUFBRUgsSUFBYSxFQUFFO0lBQzFDLEtBQUssQ0FBQ0csT0FBTyxDQUFDO0lBRWQsSUFBSSxDQUFDSCxJQUFJLEdBQUdBLElBQUk7RUFDbEI7QUFDRjtBQUFDSSxPQUFBLENBQUFOLGVBQUEsR0FBQUEsZUFBQTtBQUVNLE1BQU1PLFlBQVksU0FBU04sS0FBSyxDQUFDO0VBQ3RDQyxJQUFJO0VBRUpNLE1BQU07RUFDTkMsS0FBSztFQUNMQyxLQUFLO0VBQ0xDLFVBQVU7RUFDVkMsUUFBUTtFQUNSQyxVQUFVO0VBRVZULFdBQVdBLENBQUNDLE9BQWUsRUFBRUgsSUFBYSxFQUFFO0lBQzFDLEtBQUssQ0FBQ0csT0FBTyxDQUFDO0lBRWQsSUFBSSxDQUFDSCxJQUFJLEdBQUdBLElBQUk7RUFDbEI7QUFDRjtBQUFDSSxPQUFBLENBQUFDLFlBQUEsR0FBQUEsWUFBQSJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","names":["ConnectionError","Error","code","isTransient","constructor","message","exports","RequestError","number","state","class","serverName","procName","lineNumber"],"sources":["../src/errors.ts"],"sourcesContent":["export class ConnectionError extends Error {\n code: string | undefined;\n\n isTransient: boolean | undefined;\n\n constructor(message: string, code?: string) {\n super(message);\n\n this.code = code;\n }\n}\n\nexport class RequestError extends Error {\n code: string | undefined;\n\n number: number | undefined;\n state: number | undefined;\n class: number | undefined;\n serverName: string | undefined;\n procName: string | undefined;\n lineNumber: number | undefined;\n\n constructor(message: string, code?: string) {\n super(message);\n\n this.code = code;\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,eAAe,SAASC,KAAK,CAAC;EACzCC,IAAI;EAEJC,WAAW;EAEXC,WAAWA,CAACC,OAAe,EAAEH,IAAa,EAAE;IAC1C,KAAK,CAACG,OAAO,CAAC;IAEd,IAAI,CAACH,IAAI,GAAGA,IAAI;EAClB;AACF;AAACI,OAAA,CAAAN,eAAA,GAAAA,eAAA;AAEM,MAAMO,YAAY,SAASN,KAAK,CAAC;EACtCC,IAAI;EAEJM,MAAM;EACNC,KAAK;EACLC,KAAK;EACLC,UAAU;EACVC,QAAQ;EACRC,UAAU;EAEVT,WAAWA,CAACC,OAAe,EAAEH,IAAa,EAAE;IAC1C,KAAK,CAACG,OAAO,CAAC;IAEd,IAAI,CAACH,IAAI,GAAGA,IAAI;EAClB;AACF;AAACI,OAAA,CAAAC,YAAA,GAAAA,YAAA"}
@@ -8,29 +8,23 @@ exports.bufferToUpperCaseGuid = bufferToUpperCaseGuid;
8
8
  exports.guidToArray = guidToArray;
9
9
  const UPPER_CASE_MAP = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '0A', '0B', '0C', '0D', '0E', '0F', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '1A', '1B', '1C', '1D', '1E', '1F', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '2A', '2B', '2C', '2D', '2E', '2F', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '3A', '3B', '3C', '3D', '3E', '3F', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '4A', '4B', '4C', '4D', '4E', '4F', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '5A', '5B', '5C', '5D', '5E', '5F', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '6A', '6B', '6C', '6D', '6E', '6F', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '7A', '7B', '7C', '7D', '7E', '7F', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '8A', '8B', '8C', '8D', '8E', '8F', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', '9A', '9B', '9C', '9D', '9E', '9F', 'A0', 'A1', 'A2', 'A3', 'A4', 'A5', 'A6', 'A7', 'A8', 'A9', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'B0', 'B1', 'B2', 'B3', 'B4', 'B5', 'B6', 'B7', 'B8', 'B9', 'BA', 'BB', 'BC', 'BD', 'BE', 'BF', 'C0', 'C1', 'C2', 'C3', 'C4', 'C5', 'C6', 'C7', 'C8', 'C9', 'CA', 'CB', 'CC', 'CD', 'CE', 'CF', 'D0', 'D1', 'D2', 'D3', 'D4', 'D5', 'D6', 'D7', 'D8', 'D9', 'DA', 'DB', 'DC', 'DD', 'DE', 'DF', 'E0', 'E1', 'E2', 'E3', 'E4', 'E5', 'E6', 'E7', 'E8', 'E9', 'EA', 'EB', 'EC', 'ED', 'EE', 'EF', 'F0', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'FA', 'FB', 'FC', 'FD', 'FE', 'FF'];
10
10
  const LOWER_CASE_MAP = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '0a', '0b', '0c', '0d', '0e', '0f', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '1a', '1b', '1c', '1d', '1e', '1f', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '2a', '2b', '2c', '2d', '2e', '2f', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '3a', '3b', '3c', '3d', '3e', '3f', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '4a', '4b', '4c', '4d', '4e', '4f', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '5a', '5b', '5c', '5d', '5e', '5f', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '6a', '6b', '6c', '6d', '6e', '6f', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '7a', '7b', '7c', '7d', '7e', '7f', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '8a', '8b', '8c', '8d', '8e', '8f', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', '9a', '9b', '9c', '9d', '9e', '9f', 'a0', 'a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'a8', 'a9', 'aa', 'ab', 'ac', 'ad', 'ae', 'af', 'b0', 'b1', 'b2', 'b3', 'b4', 'b5', 'b6', 'b7', 'b8', 'b9', 'ba', 'bb', 'bc', 'bd', 'be', 'bf', 'c0', 'c1', 'c2', 'c3', 'c4', 'c5', 'c6', 'c7', 'c8', 'c9', 'ca', 'cb', 'cc', 'cd', 'ce', 'cf', 'd0', 'd1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7', 'd8', 'd9', 'da', 'db', 'dc', 'dd', 'de', 'df', 'e0', 'e1', 'e2', 'e3', 'e4', 'e5', 'e6', 'e7', 'e8', 'e9', 'ea', 'eb', 'ec', 'ed', 'ee', 'ef', 'f0', 'f1', 'f2', 'f3', 'f4', 'f5', 'f6', 'f7', 'f8', 'f9', 'fa', 'fb', 'fc', 'fd', 'fe', 'ff'];
11
-
12
11
  function bufferToUpperCaseGuid(buffer) {
13
12
  return UPPER_CASE_MAP[buffer[3]] + UPPER_CASE_MAP[buffer[2]] + UPPER_CASE_MAP[buffer[1]] + UPPER_CASE_MAP[buffer[0]] + '-' + UPPER_CASE_MAP[buffer[5]] + UPPER_CASE_MAP[buffer[4]] + '-' + UPPER_CASE_MAP[buffer[7]] + UPPER_CASE_MAP[buffer[6]] + '-' + UPPER_CASE_MAP[buffer[8]] + UPPER_CASE_MAP[buffer[9]] + '-' + UPPER_CASE_MAP[buffer[10]] + UPPER_CASE_MAP[buffer[11]] + UPPER_CASE_MAP[buffer[12]] + UPPER_CASE_MAP[buffer[13]] + UPPER_CASE_MAP[buffer[14]] + UPPER_CASE_MAP[buffer[15]];
14
13
  }
15
-
16
14
  function bufferToLowerCaseGuid(buffer) {
17
15
  return LOWER_CASE_MAP[buffer[3]] + LOWER_CASE_MAP[buffer[2]] + LOWER_CASE_MAP[buffer[1]] + LOWER_CASE_MAP[buffer[0]] + '-' + LOWER_CASE_MAP[buffer[5]] + LOWER_CASE_MAP[buffer[4]] + '-' + LOWER_CASE_MAP[buffer[7]] + LOWER_CASE_MAP[buffer[6]] + '-' + LOWER_CASE_MAP[buffer[8]] + LOWER_CASE_MAP[buffer[9]] + '-' + LOWER_CASE_MAP[buffer[10]] + LOWER_CASE_MAP[buffer[11]] + LOWER_CASE_MAP[buffer[12]] + LOWER_CASE_MAP[buffer[13]] + LOWER_CASE_MAP[buffer[14]] + LOWER_CASE_MAP[buffer[15]];
18
16
  }
19
-
20
17
  const CHARCODEMAP = {};
21
18
  const hexDigits = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'A', 'B', 'C', 'D', 'E', 'F'].map(d => d.charCodeAt(0));
22
-
23
19
  for (let i = 0; i < hexDigits.length; i++) {
24
20
  const map = CHARCODEMAP[hexDigits[i]] = {};
25
-
26
21
  for (let j = 0; j < hexDigits.length; j++) {
27
22
  const hex = String.fromCharCode(hexDigits[i], hexDigits[j]);
28
23
  const value = parseInt(hex, 16);
29
24
  map[hexDigits[j]] = value;
30
25
  }
31
26
  }
32
-
33
27
  function guidToArray(guid) {
34
28
  return [CHARCODEMAP[guid.charCodeAt(6)][guid.charCodeAt(7)], CHARCODEMAP[guid.charCodeAt(4)][guid.charCodeAt(5)], CHARCODEMAP[guid.charCodeAt(2)][guid.charCodeAt(3)], CHARCODEMAP[guid.charCodeAt(0)][guid.charCodeAt(1)], CHARCODEMAP[guid.charCodeAt(11)][guid.charCodeAt(12)], CHARCODEMAP[guid.charCodeAt(9)][guid.charCodeAt(10)], CHARCODEMAP[guid.charCodeAt(16)][guid.charCodeAt(17)], CHARCODEMAP[guid.charCodeAt(14)][guid.charCodeAt(15)], CHARCODEMAP[guid.charCodeAt(19)][guid.charCodeAt(20)], CHARCODEMAP[guid.charCodeAt(21)][guid.charCodeAt(22)], CHARCODEMAP[guid.charCodeAt(24)][guid.charCodeAt(25)], CHARCODEMAP[guid.charCodeAt(26)][guid.charCodeAt(27)], CHARCODEMAP[guid.charCodeAt(28)][guid.charCodeAt(29)], CHARCODEMAP[guid.charCodeAt(30)][guid.charCodeAt(31)], CHARCODEMAP[guid.charCodeAt(32)][guid.charCodeAt(33)], CHARCODEMAP[guid.charCodeAt(34)][guid.charCodeAt(35)]];
35
29
  }
36
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJVUFBFUl9DQVNFX01BUCIsIkxPV0VSX0NBU0VfTUFQIiwiYnVmZmVyVG9VcHBlckNhc2VHdWlkIiwiYnVmZmVyIiwiYnVmZmVyVG9Mb3dlckNhc2VHdWlkIiwiQ0hBUkNPREVNQVAiLCJoZXhEaWdpdHMiLCJtYXAiLCJkIiwiY2hhckNvZGVBdCIsImkiLCJsZW5ndGgiLCJqIiwiaGV4IiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwidmFsdWUiLCJwYXJzZUludCIsImd1aWRUb0FycmF5IiwiZ3VpZCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9ndWlkLXBhcnNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBVUFBFUl9DQVNFX01BUCA9IFtcbiAgJzAwJywgJzAxJywgJzAyJywgJzAzJywgJzA0JywgJzA1JywgJzA2JywgJzA3JywgJzA4JywgJzA5JywgJzBBJywgJzBCJywgJzBDJywgJzBEJywgJzBFJywgJzBGJyxcbiAgJzEwJywgJzExJywgJzEyJywgJzEzJywgJzE0JywgJzE1JywgJzE2JywgJzE3JywgJzE4JywgJzE5JywgJzFBJywgJzFCJywgJzFDJywgJzFEJywgJzFFJywgJzFGJyxcbiAgJzIwJywgJzIxJywgJzIyJywgJzIzJywgJzI0JywgJzI1JywgJzI2JywgJzI3JywgJzI4JywgJzI5JywgJzJBJywgJzJCJywgJzJDJywgJzJEJywgJzJFJywgJzJGJyxcbiAgJzMwJywgJzMxJywgJzMyJywgJzMzJywgJzM0JywgJzM1JywgJzM2JywgJzM3JywgJzM4JywgJzM5JywgJzNBJywgJzNCJywgJzNDJywgJzNEJywgJzNFJywgJzNGJyxcbiAgJzQwJywgJzQxJywgJzQyJywgJzQzJywgJzQ0JywgJzQ1JywgJzQ2JywgJzQ3JywgJzQ4JywgJzQ5JywgJzRBJywgJzRCJywgJzRDJywgJzREJywgJzRFJywgJzRGJyxcbiAgJzUwJywgJzUxJywgJzUyJywgJzUzJywgJzU0JywgJzU1JywgJzU2JywgJzU3JywgJzU4JywgJzU5JywgJzVBJywgJzVCJywgJzVDJywgJzVEJywgJzVFJywgJzVGJyxcbiAgJzYwJywgJzYxJywgJzYyJywgJzYzJywgJzY0JywgJzY1JywgJzY2JywgJzY3JywgJzY4JywgJzY5JywgJzZBJywgJzZCJywgJzZDJywgJzZEJywgJzZFJywgJzZGJyxcbiAgJzcwJywgJzcxJywgJzcyJywgJzczJywgJzc0JywgJzc1JywgJzc2JywgJzc3JywgJzc4JywgJzc5JywgJzdBJywgJzdCJywgJzdDJywgJzdEJywgJzdFJywgJzdGJyxcbiAgJzgwJywgJzgxJywgJzgyJywgJzgzJywgJzg0JywgJzg1JywgJzg2JywgJzg3JywgJzg4JywgJzg5JywgJzhBJywgJzhCJywgJzhDJywgJzhEJywgJzhFJywgJzhGJyxcbiAgJzkwJywgJzkxJywgJzkyJywgJzkzJywgJzk0JywgJzk1JywgJzk2JywgJzk3JywgJzk4JywgJzk5JywgJzlBJywgJzlCJywgJzlDJywgJzlEJywgJzlFJywgJzlGJyxcbiAgJ0EwJywgJ0ExJywgJ0EyJywgJ0EzJywgJ0E0JywgJ0E1JywgJ0E2JywgJ0E3JywgJ0E4JywgJ0E5JywgJ0FBJywgJ0FCJywgJ0FDJywgJ0FEJywgJ0FFJywgJ0FGJyxcbiAgJ0IwJywgJ0IxJywgJ0IyJywgJ0IzJywgJ0I0JywgJ0I1JywgJ0I2JywgJ0I3JywgJ0I4JywgJ0I5JywgJ0JBJywgJ0JCJywgJ0JDJywgJ0JEJywgJ0JFJywgJ0JGJyxcbiAgJ0MwJywgJ0MxJywgJ0MyJywgJ0MzJywgJ0M0JywgJ0M1JywgJ0M2JywgJ0M3JywgJ0M4JywgJ0M5JywgJ0NBJywgJ0NCJywgJ0NDJywgJ0NEJywgJ0NFJywgJ0NGJyxcbiAgJ0QwJywgJ0QxJywgJ0QyJywgJ0QzJywgJ0Q0JywgJ0Q1JywgJ0Q2JywgJ0Q3JywgJ0Q4JywgJ0Q5JywgJ0RBJywgJ0RCJywgJ0RDJywgJ0REJywgJ0RFJywgJ0RGJyxcbiAgJ0UwJywgJ0UxJywgJ0UyJywgJ0UzJywgJ0U0JywgJ0U1JywgJ0U2JywgJ0U3JywgJ0U4JywgJ0U5JywgJ0VBJywgJ0VCJywgJ0VDJywgJ0VEJywgJ0VFJywgJ0VGJyxcbiAgJ0YwJywgJ0YxJywgJ0YyJywgJ0YzJywgJ0Y0JywgJ0Y1JywgJ0Y2JywgJ0Y3JywgJ0Y4JywgJ0Y5JywgJ0ZBJywgJ0ZCJywgJ0ZDJywgJ0ZEJywgJ0ZFJywgJ0ZGJ1xuXTtcblxuY29uc3QgTE9XRVJfQ0FTRV9NQVAgPSBbXG4gICcwMCcsICcwMScsICcwMicsICcwMycsICcwNCcsICcwNScsICcwNicsICcwNycsICcwOCcsICcwOScsICcwYScsICcwYicsICcwYycsICcwZCcsICcwZScsICcwZicsXG4gICcxMCcsICcxMScsICcxMicsICcxMycsICcxNCcsICcxNScsICcxNicsICcxNycsICcxOCcsICcxOScsICcxYScsICcxYicsICcxYycsICcxZCcsICcxZScsICcxZicsXG4gICcyMCcsICcyMScsICcyMicsICcyMycsICcyNCcsICcyNScsICcyNicsICcyNycsICcyOCcsICcyOScsICcyYScsICcyYicsICcyYycsICcyZCcsICcyZScsICcyZicsXG4gICczMCcsICczMScsICczMicsICczMycsICczNCcsICczNScsICczNicsICczNycsICczOCcsICczOScsICczYScsICczYicsICczYycsICczZCcsICczZScsICczZicsXG4gICc0MCcsICc0MScsICc0MicsICc0MycsICc0NCcsICc0NScsICc0NicsICc0NycsICc0OCcsICc0OScsICc0YScsICc0YicsICc0YycsICc0ZCcsICc0ZScsICc0ZicsXG4gICc1MCcsICc1MScsICc1MicsICc1MycsICc1NCcsICc1NScsICc1NicsICc1NycsICc1OCcsICc1OScsICc1YScsICc1YicsICc1YycsICc1ZCcsICc1ZScsICc1ZicsXG4gICc2MCcsICc2MScsICc2MicsICc2MycsICc2NCcsICc2NScsICc2NicsICc2NycsICc2OCcsICc2OScsICc2YScsICc2YicsICc2YycsICc2ZCcsICc2ZScsICc2ZicsXG4gICc3MCcsICc3MScsICc3MicsICc3MycsICc3NCcsICc3NScsICc3NicsICc3NycsICc3OCcsICc3OScsICc3YScsICc3YicsICc3YycsICc3ZCcsICc3ZScsICc3ZicsXG4gICc4MCcsICc4MScsICc4MicsICc4MycsICc4NCcsICc4NScsICc4NicsICc4NycsICc4OCcsICc4OScsICc4YScsICc4YicsICc4YycsICc4ZCcsICc4ZScsICc4ZicsXG4gICc5MCcsICc5MScsICc5MicsICc5MycsICc5NCcsICc5NScsICc5NicsICc5NycsICc5OCcsICc5OScsICc5YScsICc5YicsICc5YycsICc5ZCcsICc5ZScsICc5ZicsXG4gICdhMCcsICdhMScsICdhMicsICdhMycsICdhNCcsICdhNScsICdhNicsICdhNycsICdhOCcsICdhOScsICdhYScsICdhYicsICdhYycsICdhZCcsICdhZScsICdhZicsXG4gICdiMCcsICdiMScsICdiMicsICdiMycsICdiNCcsICdiNScsICdiNicsICdiNycsICdiOCcsICdiOScsICdiYScsICdiYicsICdiYycsICdiZCcsICdiZScsICdiZicsXG4gICdjMCcsICdjMScsICdjMicsICdjMycsICdjNCcsICdjNScsICdjNicsICdjNycsICdjOCcsICdjOScsICdjYScsICdjYicsICdjYycsICdjZCcsICdjZScsICdjZicsXG4gICdkMCcsICdkMScsICdkMicsICdkMycsICdkNCcsICdkNScsICdkNicsICdkNycsICdkOCcsICdkOScsICdkYScsICdkYicsICdkYycsICdkZCcsICdkZScsICdkZicsXG4gICdlMCcsICdlMScsICdlMicsICdlMycsICdlNCcsICdlNScsICdlNicsICdlNycsICdlOCcsICdlOScsICdlYScsICdlYicsICdlYycsICdlZCcsICdlZScsICdlZicsXG4gICdmMCcsICdmMScsICdmMicsICdmMycsICdmNCcsICdmNScsICdmNicsICdmNycsICdmOCcsICdmOScsICdmYScsICdmYicsICdmYycsICdmZCcsICdmZScsICdmZidcbl07XG5cbmV4cG9ydCBmdW5jdGlvbiBidWZmZXJUb1VwcGVyQ2FzZUd1aWQoYnVmZmVyOiBCdWZmZXIpIHtcbiAgcmV0dXJuIChcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbM11dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMl1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMV1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMF1dICtcbiAgICAnLScgK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlcls1XV0gK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlcls0XV0gK1xuICAgICctJyArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzddXSArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzZdXSArXG4gICAgJy0nICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbOF1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbOV1dICtcbiAgICAnLScgK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlclsxMF1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMTFdXSArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzEyXV0gK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlclsxM11dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMTRdXSArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzE1XV1cbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1ZmZlclRvTG93ZXJDYXNlR3VpZChidWZmZXI6IEJ1ZmZlcikge1xuICByZXR1cm4gKFxuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclszXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsyXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsxXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclswXV0gK1xuICAgICctJyArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzVdXSArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzRdXSArXG4gICAgJy0nICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbN11dICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbNl1dICtcbiAgICAnLScgK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlcls4XV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlcls5XV0gK1xuICAgICctJyArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzEwXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsxMV1dICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbMTJdXSArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzEzXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsxNF1dICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbMTVdXVxuICApO1xufVxuXG5jb25zdCBDSEFSQ09ERU1BUDogeyBba2V5OiBudW1iZXJdOiB7IFtrZXk6IG51bWJlcl06IG51bWJlciB9IH0gPSB7fTtcblxuY29uc3QgaGV4RGlnaXRzID0gW1xuICAnMCcsICcxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JywgJzgnLCAnOScsXG4gICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicsXG4gICdBJywgJ0InLCAnQycsICdEJywgJ0UnLCAnRidcbl0ubWFwKChkKSA9PiBkLmNoYXJDb2RlQXQoMCkpO1xuXG5mb3IgKGxldCBpID0gMDsgaSA8IGhleERpZ2l0cy5sZW5ndGg7IGkrKykge1xuICBjb25zdCBtYXA6IHsgW2tleTogbnVtYmVyXTogbnVtYmVyIH0gPSBDSEFSQ09ERU1BUFtoZXhEaWdpdHNbaV1dID0ge307XG4gIGZvciAobGV0IGogPSAwOyBqIDwgaGV4RGlnaXRzLmxlbmd0aDsgaisrKSB7XG4gICAgY29uc3QgaGV4ID0gU3RyaW5nLmZyb21DaGFyQ29kZShoZXhEaWdpdHNbaV0sIGhleERpZ2l0c1tqXSk7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJzZUludChoZXgsIDE2KTtcbiAgICBtYXBbaGV4RGlnaXRzW2pdXSA9IHZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBndWlkVG9BcnJheShndWlkOiBzdHJpbmcpIHtcbiAgcmV0dXJuIFtcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoNildW2d1aWQuY2hhckNvZGVBdCg3KV0sXG4gICAgQ0hBUkNPREVNQVBbZ3VpZC5jaGFyQ29kZUF0KDQpXVtndWlkLmNoYXJDb2RlQXQoNSldLFxuICAgIENIQVJDT0RFTUFQW2d1aWQuY2hhckNvZGVBdCgyKV1bZ3VpZC5jaGFyQ29kZUF0KDMpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMCldW2d1aWQuY2hhckNvZGVBdCgxKV0sXG4gICAgQ0hBUkNPREVNQVBbZ3VpZC5jaGFyQ29kZUF0KDExKV1bZ3VpZC5jaGFyQ29kZUF0KDEyKV0sXG4gICAgQ0hBUkNPREVNQVBbZ3VpZC5jaGFyQ29kZUF0KDkpXVtndWlkLmNoYXJDb2RlQXQoMTApXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMTYpXVtndWlkLmNoYXJDb2RlQXQoMTcpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMTQpXVtndWlkLmNoYXJDb2RlQXQoMTUpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMTkpXVtndWlkLmNoYXJDb2RlQXQoMjApXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjEpXVtndWlkLmNoYXJDb2RlQXQoMjIpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjQpXVtndWlkLmNoYXJDb2RlQXQoMjUpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjYpXVtndWlkLmNoYXJDb2RlQXQoMjcpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjgpXVtndWlkLmNoYXJDb2RlQXQoMjkpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMzApXVtndWlkLmNoYXJDb2RlQXQoMzEpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMzIpXVtndWlkLmNoYXJDb2RlQXQoMzMpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMzQpXVtndWlkLmNoYXJDb2RlQXQoMzUpXVxuICBdO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLE1BQU1BLGNBQWMsR0FBRyxDQUNyQixJQURxQixFQUNmLElBRGUsRUFDVCxJQURTLEVBQ0gsSUFERyxFQUNHLElBREgsRUFDUyxJQURULEVBQ2UsSUFEZixFQUNxQixJQURyQixFQUMyQixJQUQzQixFQUNpQyxJQURqQyxFQUN1QyxJQUR2QyxFQUM2QyxJQUQ3QyxFQUNtRCxJQURuRCxFQUN5RCxJQUR6RCxFQUMrRCxJQUQvRCxFQUNxRSxJQURyRSxFQUVyQixJQUZxQixFQUVmLElBRmUsRUFFVCxJQUZTLEVBRUgsSUFGRyxFQUVHLElBRkgsRUFFUyxJQUZULEVBRWUsSUFGZixFQUVxQixJQUZyQixFQUUyQixJQUYzQixFQUVpQyxJQUZqQyxFQUV1QyxJQUZ2QyxFQUU2QyxJQUY3QyxFQUVtRCxJQUZuRCxFQUV5RCxJQUZ6RCxFQUUrRCxJQUYvRCxFQUVxRSxJQUZyRSxFQUdyQixJQUhxQixFQUdmLElBSGUsRUFHVCxJQUhTLEVBR0gsSUFIRyxFQUdHLElBSEgsRUFHUyxJQUhULEVBR2UsSUFIZixFQUdxQixJQUhyQixFQUcyQixJQUgzQixFQUdpQyxJQUhqQyxFQUd1QyxJQUh2QyxFQUc2QyxJQUg3QyxFQUdtRCxJQUhuRCxFQUd5RCxJQUh6RCxFQUcrRCxJQUgvRCxFQUdxRSxJQUhyRSxFQUlyQixJQUpxQixFQUlmLElBSmUsRUFJVCxJQUpTLEVBSUgsSUFKRyxFQUlHLElBSkgsRUFJUyxJQUpULEVBSWUsSUFKZixFQUlxQixJQUpyQixFQUkyQixJQUozQixFQUlpQyxJQUpqQyxFQUl1QyxJQUp2QyxFQUk2QyxJQUo3QyxFQUltRCxJQUpuRCxFQUl5RCxJQUp6RCxFQUkrRCxJQUovRCxFQUlxRSxJQUpyRSxFQUtyQixJQUxxQixFQUtmLElBTGUsRUFLVCxJQUxTLEVBS0gsSUFMRyxFQUtHLElBTEgsRUFLUyxJQUxULEVBS2UsSUFMZixFQUtxQixJQUxyQixFQUsyQixJQUwzQixFQUtpQyxJQUxqQyxFQUt1QyxJQUx2QyxFQUs2QyxJQUw3QyxFQUttRCxJQUxuRCxFQUt5RCxJQUx6RCxFQUsrRCxJQUwvRCxFQUtxRSxJQUxyRSxFQU1yQixJQU5xQixFQU1mLElBTmUsRUFNVCxJQU5TLEVBTUgsSUFORyxFQU1HLElBTkgsRUFNUyxJQU5ULEVBTWUsSUFOZixFQU1xQixJQU5yQixFQU0yQixJQU4zQixFQU1pQyxJQU5qQyxFQU11QyxJQU52QyxFQU02QyxJQU43QyxFQU1tRCxJQU5uRCxFQU15RCxJQU56RCxFQU0rRCxJQU4vRCxFQU1xRSxJQU5yRSxFQU9yQixJQVBxQixFQU9mLElBUGUsRUFPVCxJQVBTLEVBT0gsSUFQRyxFQU9HLElBUEgsRUFPUyxJQVBULEVBT2UsSUFQZixFQU9xQixJQVByQixFQU8yQixJQVAzQixFQU9pQyxJQVBqQyxFQU91QyxJQVB2QyxFQU82QyxJQVA3QyxFQU9tRCxJQVBuRCxFQU95RCxJQVB6RCxFQU8rRCxJQVAvRCxFQU9xRSxJQVByRSxFQVFyQixJQVJxQixFQVFmLElBUmUsRUFRVCxJQVJTLEVBUUgsSUFSRyxFQVFHLElBUkgsRUFRUyxJQVJULEVBUWUsSUFSZixFQVFxQixJQVJyQixFQVEyQixJQVIzQixFQVFpQyxJQVJqQyxFQVF1QyxJQVJ2QyxFQVE2QyxJQVI3QyxFQVFtRCxJQVJuRCxFQVF5RCxJQVJ6RCxFQVErRCxJQVIvRCxFQVFxRSxJQVJyRSxFQVNyQixJQVRxQixFQVNmLElBVGUsRUFTVCxJQVRTLEVBU0gsSUFURyxFQVNHLElBVEgsRUFTUyxJQVRULEVBU2UsSUFUZixFQVNxQixJQVRyQixFQVMyQixJQVQzQixFQVNpQyxJQVRqQyxFQVN1QyxJQVR2QyxFQVM2QyxJQVQ3QyxFQVNtRCxJQVRuRCxFQVN5RCxJQVR6RCxFQVMrRCxJQVQvRCxFQVNxRSxJQVRyRSxFQVVyQixJQVZxQixFQVVmLElBVmUsRUFVVCxJQVZTLEVBVUgsSUFWRyxFQVVHLElBVkgsRUFVUyxJQVZULEVBVWUsSUFWZixFQVVxQixJQVZyQixFQVUyQixJQVYzQixFQVVpQyxJQVZqQyxFQVV1QyxJQVZ2QyxFQVU2QyxJQVY3QyxFQVVtRCxJQVZuRCxFQVV5RCxJQVZ6RCxFQVUrRCxJQVYvRCxFQVVxRSxJQVZyRSxFQVdyQixJQVhxQixFQVdmLElBWGUsRUFXVCxJQVhTLEVBV0gsSUFYRyxFQVdHLElBWEgsRUFXUyxJQVhULEVBV2UsSUFYZixFQVdxQixJQVhyQixFQVcyQixJQVgzQixFQVdpQyxJQVhqQyxFQVd1QyxJQVh2QyxFQVc2QyxJQVg3QyxFQVdtRCxJQVhuRCxFQVd5RCxJQVh6RCxFQVcrRCxJQVgvRCxFQVdxRSxJQVhyRSxFQVlyQixJQVpxQixFQVlmLElBWmUsRUFZVCxJQVpTLEVBWUgsSUFaRyxFQVlHLElBWkgsRUFZUyxJQVpULEVBWWUsSUFaZixFQVlxQixJQVpyQixFQVkyQixJQVozQixFQVlpQyxJQVpqQyxFQVl1QyxJQVp2QyxFQVk2QyxJQVo3QyxFQVltRCxJQVpuRCxFQVl5RCxJQVp6RCxFQVkrRCxJQVovRCxFQVlxRSxJQVpyRSxFQWFyQixJQWJxQixFQWFmLElBYmUsRUFhVCxJQWJTLEVBYUgsSUFiRyxFQWFHLElBYkgsRUFhUyxJQWJULEVBYWUsSUFiZixFQWFxQixJQWJyQixFQWEyQixJQWIzQixFQWFpQyxJQWJqQyxFQWF1QyxJQWJ2QyxFQWE2QyxJQWI3QyxFQWFtRCxJQWJuRCxFQWF5RCxJQWJ6RCxFQWErRCxJQWIvRCxFQWFxRSxJQWJyRSxFQWNyQixJQWRxQixFQWNmLElBZGUsRUFjVCxJQWRTLEVBY0gsSUFkRyxFQWNHLElBZEgsRUFjUyxJQWRULEVBY2UsSUFkZixFQWNxQixJQWRyQixFQWMyQixJQWQzQixFQWNpQyxJQWRqQyxFQWN1QyxJQWR2QyxFQWM2QyxJQWQ3QyxFQWNtRCxJQWRuRCxFQWN5RCxJQWR6RCxFQWMrRCxJQWQvRCxFQWNxRSxJQWRyRSxFQWVyQixJQWZxQixFQWVmLElBZmUsRUFlVCxJQWZTLEVBZUgsSUFmRyxFQWVHLElBZkgsRUFlUyxJQWZULEVBZWUsSUFmZixFQWVxQixJQWZyQixFQWUyQixJQWYzQixFQWVpQyxJQWZqQyxFQWV1QyxJQWZ2QyxFQWU2QyxJQWY3QyxFQWVtRCxJQWZuRCxFQWV5RCxJQWZ6RCxFQWUrRCxJQWYvRCxFQWVxRSxJQWZyRSxFQWdCckIsSUFoQnFCLEVBZ0JmLElBaEJlLEVBZ0JULElBaEJTLEVBZ0JILElBaEJHLEVBZ0JHLElBaEJILEVBZ0JTLElBaEJULEVBZ0JlLElBaEJmLEVBZ0JxQixJQWhCckIsRUFnQjJCLElBaEIzQixFQWdCaUMsSUFoQmpDLEVBZ0J1QyxJQWhCdkMsRUFnQjZDLElBaEI3QyxFQWdCbUQsSUFoQm5ELEVBZ0J5RCxJQWhCekQsRUFnQitELElBaEIvRCxFQWdCcUUsSUFoQnJFLENBQXZCO0FBbUJBLE1BQU1DLGNBQWMsR0FBRyxDQUNyQixJQURxQixFQUNmLElBRGUsRUFDVCxJQURTLEVBQ0gsSUFERyxFQUNHLElBREgsRUFDUyxJQURULEVBQ2UsSUFEZixFQUNxQixJQURyQixFQUMyQixJQUQzQixFQUNpQyxJQURqQyxFQUN1QyxJQUR2QyxFQUM2QyxJQUQ3QyxFQUNtRCxJQURuRCxFQUN5RCxJQUR6RCxFQUMrRCxJQUQvRCxFQUNxRSxJQURyRSxFQUVyQixJQUZxQixFQUVmLElBRmUsRUFFVCxJQUZTLEVBRUgsSUFGRyxFQUVHLElBRkgsRUFFUyxJQUZULEVBRWUsSUFGZixFQUVxQixJQUZyQixFQUUyQixJQUYzQixFQUVpQyxJQUZqQyxFQUV1QyxJQUZ2QyxFQUU2QyxJQUY3QyxFQUVtRCxJQUZuRCxFQUV5RCxJQUZ6RCxFQUUrRCxJQUYvRCxFQUVxRSxJQUZyRSxFQUdyQixJQUhxQixFQUdmLElBSGUsRUFHVCxJQUhTLEVBR0gsSUFIRyxFQUdHLElBSEgsRUFHUyxJQUhULEVBR2UsSUFIZixFQUdxQixJQUhyQixFQUcyQixJQUgzQixFQUdpQyxJQUhqQyxFQUd1QyxJQUh2QyxFQUc2QyxJQUg3QyxFQUdtRCxJQUhuRCxFQUd5RCxJQUh6RCxFQUcrRCxJQUgvRCxFQUdxRSxJQUhyRSxFQUlyQixJQUpxQixFQUlmLElBSmUsRUFJVCxJQUpTLEVBSUgsSUFKRyxFQUlHLElBSkgsRUFJUyxJQUpULEVBSWUsSUFKZixFQUlxQixJQUpyQixFQUkyQixJQUozQixFQUlpQyxJQUpqQyxFQUl1QyxJQUp2QyxFQUk2QyxJQUo3QyxFQUltRCxJQUpuRCxFQUl5RCxJQUp6RCxFQUkrRCxJQUovRCxFQUlxRSxJQUpyRSxFQUtyQixJQUxxQixFQUtmLElBTGUsRUFLVCxJQUxTLEVBS0gsSUFMRyxFQUtHLElBTEgsRUFLUyxJQUxULEVBS2UsSUFMZixFQUtxQixJQUxyQixFQUsyQixJQUwzQixFQUtpQyxJQUxqQyxFQUt1QyxJQUx2QyxFQUs2QyxJQUw3QyxFQUttRCxJQUxuRCxFQUt5RCxJQUx6RCxFQUsrRCxJQUwvRCxFQUtxRSxJQUxyRSxFQU1yQixJQU5xQixFQU1mLElBTmUsRUFNVCxJQU5TLEVBTUgsSUFORyxFQU1HLElBTkgsRUFNUyxJQU5ULEVBTWUsSUFOZixFQU1xQixJQU5yQixFQU0yQixJQU4zQixFQU1pQyxJQU5qQyxFQU11QyxJQU52QyxFQU02QyxJQU43QyxFQU1tRCxJQU5uRCxFQU15RCxJQU56RCxFQU0rRCxJQU4vRCxFQU1xRSxJQU5yRSxFQU9yQixJQVBxQixFQU9mLElBUGUsRUFPVCxJQVBTLEVBT0gsSUFQRyxFQU9HLElBUEgsRUFPUyxJQVBULEVBT2UsSUFQZixFQU9xQixJQVByQixFQU8yQixJQVAzQixFQU9pQyxJQVBqQyxFQU91QyxJQVB2QyxFQU82QyxJQVA3QyxFQU9tRCxJQVBuRCxFQU95RCxJQVB6RCxFQU8rRCxJQVAvRCxFQU9xRSxJQVByRSxFQVFyQixJQVJxQixFQVFmLElBUmUsRUFRVCxJQVJTLEVBUUgsSUFSRyxFQVFHLElBUkgsRUFRUyxJQVJULEVBUWUsSUFSZixFQVFxQixJQVJyQixFQVEyQixJQVIzQixFQVFpQyxJQVJqQyxFQVF1QyxJQVJ2QyxFQVE2QyxJQVI3QyxFQVFtRCxJQVJuRCxFQVF5RCxJQVJ6RCxFQVErRCxJQVIvRCxFQVFxRSxJQVJyRSxFQVNyQixJQVRxQixFQVNmLElBVGUsRUFTVCxJQVRTLEVBU0gsSUFURyxFQVNHLElBVEgsRUFTUyxJQVRULEVBU2UsSUFUZixFQVNxQixJQVRyQixFQVMyQixJQVQzQixFQVNpQyxJQVRqQyxFQVN1QyxJQVR2QyxFQVM2QyxJQVQ3QyxFQVNtRCxJQVRuRCxFQVN5RCxJQVR6RCxFQVMrRCxJQVQvRCxFQVNxRSxJQVRyRSxFQVVyQixJQVZxQixFQVVmLElBVmUsRUFVVCxJQVZTLEVBVUgsSUFWRyxFQVVHLElBVkgsRUFVUyxJQVZULEVBVWUsSUFWZixFQVVxQixJQVZyQixFQVUyQixJQVYzQixFQVVpQyxJQVZqQyxFQVV1QyxJQVZ2QyxFQVU2QyxJQVY3QyxFQVVtRCxJQVZuRCxFQVV5RCxJQVZ6RCxFQVUrRCxJQVYvRCxFQVVxRSxJQVZyRSxFQVdyQixJQVhxQixFQVdmLElBWGUsRUFXVCxJQVhTLEVBV0gsSUFYRyxFQVdHLElBWEgsRUFXUyxJQVhULEVBV2UsSUFYZixFQVdxQixJQVhyQixFQVcyQixJQVgzQixFQVdpQyxJQVhqQyxFQVd1QyxJQVh2QyxFQVc2QyxJQVg3QyxFQVdtRCxJQVhuRCxFQVd5RCxJQVh6RCxFQVcrRCxJQVgvRCxFQVdxRSxJQVhyRSxFQVlyQixJQVpxQixFQVlmLElBWmUsRUFZVCxJQVpTLEVBWUgsSUFaRyxFQVlHLElBWkgsRUFZUyxJQVpULEVBWWUsSUFaZixFQVlxQixJQVpyQixFQVkyQixJQVozQixFQVlpQyxJQVpqQyxFQVl1QyxJQVp2QyxFQVk2QyxJQVo3QyxFQVltRCxJQVpuRCxFQVl5RCxJQVp6RCxFQVkrRCxJQVovRCxFQVlxRSxJQVpyRSxFQWFyQixJQWJxQixFQWFmLElBYmUsRUFhVCxJQWJTLEVBYUgsSUFiRyxFQWFHLElBYkgsRUFhUyxJQWJULEVBYWUsSUFiZixFQWFxQixJQWJyQixFQWEyQixJQWIzQixFQWFpQyxJQWJqQyxFQWF1QyxJQWJ2QyxFQWE2QyxJQWI3QyxFQWFtRCxJQWJuRCxFQWF5RCxJQWJ6RCxFQWErRCxJQWIvRCxFQWFxRSxJQWJyRSxFQWNyQixJQWRxQixFQWNmLElBZGUsRUFjVCxJQWRTLEVBY0gsSUFkRyxFQWNHLElBZEgsRUFjUyxJQWRULEVBY2UsSUFkZixFQWNxQixJQWRyQixFQWMyQixJQWQzQixFQWNpQyxJQWRqQyxFQWN1QyxJQWR2QyxFQWM2QyxJQWQ3QyxFQWNtRCxJQWRuRCxFQWN5RCxJQWR6RCxFQWMrRCxJQWQvRCxFQWNxRSxJQWRyRSxFQWVyQixJQWZxQixFQWVmLElBZmUsRUFlVCxJQWZTLEVBZUgsSUFmRyxFQWVHLElBZkgsRUFlUyxJQWZULEVBZWUsSUFmZixFQWVxQixJQWZyQixFQWUyQixJQWYzQixFQWVpQyxJQWZqQyxFQWV1QyxJQWZ2QyxFQWU2QyxJQWY3QyxFQWVtRCxJQWZuRCxFQWV5RCxJQWZ6RCxFQWUrRCxJQWYvRCxFQWVxRSxJQWZyRSxFQWdCckIsSUFoQnFCLEVBZ0JmLElBaEJlLEVBZ0JULElBaEJTLEVBZ0JILElBaEJHLEVBZ0JHLElBaEJILEVBZ0JTLElBaEJULEVBZ0JlLElBaEJmLEVBZ0JxQixJQWhCckIsRUFnQjJCLElBaEIzQixFQWdCaUMsSUFoQmpDLEVBZ0J1QyxJQWhCdkMsRUFnQjZDLElBaEI3QyxFQWdCbUQsSUFoQm5ELEVBZ0J5RCxJQWhCekQsRUFnQitELElBaEIvRCxFQWdCcUUsSUFoQnJFLENBQXZCOztBQW1CTyxTQUFTQyxxQkFBVCxDQUErQkMsTUFBL0IsRUFBK0M7RUFDcEQsT0FDRUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsQ0FBRCxDQUFQLENBQWQsR0FDQUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsQ0FBRCxDQUFQLENBRGQsR0FFQUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsQ0FBRCxDQUFQLENBRmQsR0FHQUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsQ0FBRCxDQUFQLENBSGQsR0FJQSxHQUpBLEdBS0FILGNBQWMsQ0FBQ0csTUFBTSxDQUFDLENBQUQsQ0FBUCxDQUxkLEdBTUFILGNBQWMsQ0FBQ0csTUFBTSxDQUFDLENBQUQsQ0FBUCxDQU5kLEdBT0EsR0FQQSxHQVFBSCxjQUFjLENBQUNHLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FSZCxHQVNBSCxjQUFjLENBQUNHLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FUZCxHQVVBLEdBVkEsR0FXQUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsQ0FBRCxDQUFQLENBWGQsR0FZQUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsQ0FBRCxDQUFQLENBWmQsR0FhQSxHQWJBLEdBY0FILGNBQWMsQ0FBQ0csTUFBTSxDQUFDLEVBQUQsQ0FBUCxDQWRkLEdBZUFILGNBQWMsQ0FBQ0csTUFBTSxDQUFDLEVBQUQsQ0FBUCxDQWZkLEdBZ0JBSCxjQUFjLENBQUNHLE1BQU0sQ0FBQyxFQUFELENBQVAsQ0FoQmQsR0FpQkFILGNBQWMsQ0FBQ0csTUFBTSxDQUFDLEVBQUQsQ0FBUCxDQWpCZCxHQWtCQUgsY0FBYyxDQUFDRyxNQUFNLENBQUMsRUFBRCxDQUFQLENBbEJkLEdBbUJBSCxjQUFjLENBQUNHLE1BQU0sQ0FBQyxFQUFELENBQVAsQ0FwQmhCO0FBc0JEOztBQUVNLFNBQVNDLHFCQUFULENBQStCRCxNQUEvQixFQUErQztFQUNwRCxPQUNFRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FBZCxHQUNBRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FEZCxHQUVBRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FGZCxHQUdBRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FIZCxHQUlBLEdBSkEsR0FLQUYsY0FBYyxDQUFDRSxNQUFNLENBQUMsQ0FBRCxDQUFQLENBTGQsR0FNQUYsY0FBYyxDQUFDRSxNQUFNLENBQUMsQ0FBRCxDQUFQLENBTmQsR0FPQSxHQVBBLEdBUUFGLGNBQWMsQ0FBQ0UsTUFBTSxDQUFDLENBQUQsQ0FBUCxDQVJkLEdBU0FGLGNBQWMsQ0FBQ0UsTUFBTSxDQUFDLENBQUQsQ0FBUCxDQVRkLEdBVUEsR0FWQSxHQVdBRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FYZCxHQVlBRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxDQUFELENBQVAsQ0FaZCxHQWFBLEdBYkEsR0FjQUYsY0FBYyxDQUFDRSxNQUFNLENBQUMsRUFBRCxDQUFQLENBZGQsR0FlQUYsY0FBYyxDQUFDRSxNQUFNLENBQUMsRUFBRCxDQUFQLENBZmQsR0FnQkFGLGNBQWMsQ0FBQ0UsTUFBTSxDQUFDLEVBQUQsQ0FBUCxDQWhCZCxHQWlCQUYsY0FBYyxDQUFDRSxNQUFNLENBQUMsRUFBRCxDQUFQLENBakJkLEdBa0JBRixjQUFjLENBQUNFLE1BQU0sQ0FBQyxFQUFELENBQVAsQ0FsQmQsR0FtQkFGLGNBQWMsQ0FBQ0UsTUFBTSxDQUFDLEVBQUQsQ0FBUCxDQXBCaEI7QUFzQkQ7O0FBRUQsTUFBTUUsV0FBeUQsR0FBRyxFQUFsRTtBQUVBLE1BQU1DLFNBQVMsR0FBRyxDQUNoQixHQURnQixFQUNYLEdBRFcsRUFDTixHQURNLEVBQ0QsR0FEQyxFQUNJLEdBREosRUFDUyxHQURULEVBQ2MsR0FEZCxFQUNtQixHQURuQixFQUN3QixHQUR4QixFQUM2QixHQUQ3QixFQUVoQixHQUZnQixFQUVYLEdBRlcsRUFFTixHQUZNLEVBRUQsR0FGQyxFQUVJLEdBRkosRUFFUyxHQUZULEVBR2hCLEdBSGdCLEVBR1gsR0FIVyxFQUdOLEdBSE0sRUFHRCxHQUhDLEVBR0ksR0FISixFQUdTLEdBSFQsRUFJaEJDLEdBSmdCLENBSVhDLENBQUQsSUFBT0EsQ0FBQyxDQUFDQyxVQUFGLENBQWEsQ0FBYixDQUpLLENBQWxCOztBQU1BLEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR0osU0FBUyxDQUFDSyxNQUE5QixFQUFzQ0QsQ0FBQyxFQUF2QyxFQUEyQztFQUN6QyxNQUFNSCxHQUE4QixHQUFHRixXQUFXLENBQUNDLFNBQVMsQ0FBQ0ksQ0FBRCxDQUFWLENBQVgsR0FBNEIsRUFBbkU7O0VBQ0EsS0FBSyxJQUFJRSxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHTixTQUFTLENBQUNLLE1BQTlCLEVBQXNDQyxDQUFDLEVBQXZDLEVBQTJDO0lBQ3pDLE1BQU1DLEdBQUcsR0FBR0MsTUFBTSxDQUFDQyxZQUFQLENBQW9CVCxTQUFTLENBQUNJLENBQUQsQ0FBN0IsRUFBa0NKLFNBQVMsQ0FBQ00sQ0FBRCxDQUEzQyxDQUFaO0lBQ0EsTUFBTUksS0FBSyxHQUFHQyxRQUFRLENBQUNKLEdBQUQsRUFBTSxFQUFOLENBQXRCO0lBQ0FOLEdBQUcsQ0FBQ0QsU0FBUyxDQUFDTSxDQUFELENBQVYsQ0FBSCxHQUFvQkksS0FBcEI7RUFDRDtBQUNGOztBQUVNLFNBQVNFLFdBQVQsQ0FBcUJDLElBQXJCLEVBQW1DO0VBQ3hDLE9BQU8sQ0FDTGQsV0FBVyxDQUFDYyxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsQ0FBaEIsQ0FBRCxDQUFYLENBQWdDVSxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsQ0FBaEIsQ0FBaEMsQ0FESyxFQUVMSixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixDQUFoQixDQUFELENBQVgsQ0FBZ0NVLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixDQUFoQixDQUFoQyxDQUZLLEVBR0xKLFdBQVcsQ0FBQ2MsSUFBSSxDQUFDVixVQUFMLENBQWdCLENBQWhCLENBQUQsQ0FBWCxDQUFnQ1UsSUFBSSxDQUFDVixVQUFMLENBQWdCLENBQWhCLENBQWhDLENBSEssRUFJTEosV0FBVyxDQUFDYyxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsQ0FBaEIsQ0FBRCxDQUFYLENBQWdDVSxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsQ0FBaEIsQ0FBaEMsQ0FKSyxFQUtMSixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFELENBQVgsQ0FBaUNVLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFqQyxDQUxLLEVBTUxKLFdBQVcsQ0FBQ2MsSUFBSSxDQUFDVixVQUFMLENBQWdCLENBQWhCLENBQUQsQ0FBWCxDQUFnQ1UsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQWhDLENBTkssRUFPTEosV0FBVyxDQUFDYyxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsRUFBaEIsQ0FBRCxDQUFYLENBQWlDVSxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsRUFBaEIsQ0FBakMsQ0FQSyxFQVFMSixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFELENBQVgsQ0FBaUNVLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFqQyxDQVJLLEVBU0xKLFdBQVcsQ0FBQ2MsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQUQsQ0FBWCxDQUFpQ1UsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQWpDLENBVEssRUFVTEosV0FBVyxDQUFDYyxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsRUFBaEIsQ0FBRCxDQUFYLENBQWlDVSxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsRUFBaEIsQ0FBakMsQ0FWSyxFQVdMSixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFELENBQVgsQ0FBaUNVLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFqQyxDQVhLLEVBWUxKLFdBQVcsQ0FBQ2MsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQUQsQ0FBWCxDQUFpQ1UsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQWpDLENBWkssRUFhTEosV0FBVyxDQUFDYyxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsRUFBaEIsQ0FBRCxDQUFYLENBQWlDVSxJQUFJLENBQUNWLFVBQUwsQ0FBZ0IsRUFBaEIsQ0FBakMsQ0FiSyxFQWNMSixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFELENBQVgsQ0FBaUNVLElBQUksQ0FBQ1YsVUFBTCxDQUFnQixFQUFoQixDQUFqQyxDQWRLLEVBZUxKLFdBQVcsQ0FBQ2MsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQUQsQ0FBWCxDQUFpQ1UsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQWpDLENBZkssRUFnQkxKLFdBQVcsQ0FBQ2MsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQUQsQ0FBWCxDQUFpQ1UsSUFBSSxDQUFDVixVQUFMLENBQWdCLEVBQWhCLENBQWpDLENBaEJLLENBQVA7QUFrQkQifQ==
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJVUFBFUl9DQVNFX01BUCIsIkxPV0VSX0NBU0VfTUFQIiwiYnVmZmVyVG9VcHBlckNhc2VHdWlkIiwiYnVmZmVyIiwiYnVmZmVyVG9Mb3dlckNhc2VHdWlkIiwiQ0hBUkNPREVNQVAiLCJoZXhEaWdpdHMiLCJtYXAiLCJkIiwiY2hhckNvZGVBdCIsImkiLCJsZW5ndGgiLCJqIiwiaGV4IiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwidmFsdWUiLCJwYXJzZUludCIsImd1aWRUb0FycmF5IiwiZ3VpZCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9ndWlkLXBhcnNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBVUFBFUl9DQVNFX01BUCA9IFtcbiAgJzAwJywgJzAxJywgJzAyJywgJzAzJywgJzA0JywgJzA1JywgJzA2JywgJzA3JywgJzA4JywgJzA5JywgJzBBJywgJzBCJywgJzBDJywgJzBEJywgJzBFJywgJzBGJyxcbiAgJzEwJywgJzExJywgJzEyJywgJzEzJywgJzE0JywgJzE1JywgJzE2JywgJzE3JywgJzE4JywgJzE5JywgJzFBJywgJzFCJywgJzFDJywgJzFEJywgJzFFJywgJzFGJyxcbiAgJzIwJywgJzIxJywgJzIyJywgJzIzJywgJzI0JywgJzI1JywgJzI2JywgJzI3JywgJzI4JywgJzI5JywgJzJBJywgJzJCJywgJzJDJywgJzJEJywgJzJFJywgJzJGJyxcbiAgJzMwJywgJzMxJywgJzMyJywgJzMzJywgJzM0JywgJzM1JywgJzM2JywgJzM3JywgJzM4JywgJzM5JywgJzNBJywgJzNCJywgJzNDJywgJzNEJywgJzNFJywgJzNGJyxcbiAgJzQwJywgJzQxJywgJzQyJywgJzQzJywgJzQ0JywgJzQ1JywgJzQ2JywgJzQ3JywgJzQ4JywgJzQ5JywgJzRBJywgJzRCJywgJzRDJywgJzREJywgJzRFJywgJzRGJyxcbiAgJzUwJywgJzUxJywgJzUyJywgJzUzJywgJzU0JywgJzU1JywgJzU2JywgJzU3JywgJzU4JywgJzU5JywgJzVBJywgJzVCJywgJzVDJywgJzVEJywgJzVFJywgJzVGJyxcbiAgJzYwJywgJzYxJywgJzYyJywgJzYzJywgJzY0JywgJzY1JywgJzY2JywgJzY3JywgJzY4JywgJzY5JywgJzZBJywgJzZCJywgJzZDJywgJzZEJywgJzZFJywgJzZGJyxcbiAgJzcwJywgJzcxJywgJzcyJywgJzczJywgJzc0JywgJzc1JywgJzc2JywgJzc3JywgJzc4JywgJzc5JywgJzdBJywgJzdCJywgJzdDJywgJzdEJywgJzdFJywgJzdGJyxcbiAgJzgwJywgJzgxJywgJzgyJywgJzgzJywgJzg0JywgJzg1JywgJzg2JywgJzg3JywgJzg4JywgJzg5JywgJzhBJywgJzhCJywgJzhDJywgJzhEJywgJzhFJywgJzhGJyxcbiAgJzkwJywgJzkxJywgJzkyJywgJzkzJywgJzk0JywgJzk1JywgJzk2JywgJzk3JywgJzk4JywgJzk5JywgJzlBJywgJzlCJywgJzlDJywgJzlEJywgJzlFJywgJzlGJyxcbiAgJ0EwJywgJ0ExJywgJ0EyJywgJ0EzJywgJ0E0JywgJ0E1JywgJ0E2JywgJ0E3JywgJ0E4JywgJ0E5JywgJ0FBJywgJ0FCJywgJ0FDJywgJ0FEJywgJ0FFJywgJ0FGJyxcbiAgJ0IwJywgJ0IxJywgJ0IyJywgJ0IzJywgJ0I0JywgJ0I1JywgJ0I2JywgJ0I3JywgJ0I4JywgJ0I5JywgJ0JBJywgJ0JCJywgJ0JDJywgJ0JEJywgJ0JFJywgJ0JGJyxcbiAgJ0MwJywgJ0MxJywgJ0MyJywgJ0MzJywgJ0M0JywgJ0M1JywgJ0M2JywgJ0M3JywgJ0M4JywgJ0M5JywgJ0NBJywgJ0NCJywgJ0NDJywgJ0NEJywgJ0NFJywgJ0NGJyxcbiAgJ0QwJywgJ0QxJywgJ0QyJywgJ0QzJywgJ0Q0JywgJ0Q1JywgJ0Q2JywgJ0Q3JywgJ0Q4JywgJ0Q5JywgJ0RBJywgJ0RCJywgJ0RDJywgJ0REJywgJ0RFJywgJ0RGJyxcbiAgJ0UwJywgJ0UxJywgJ0UyJywgJ0UzJywgJ0U0JywgJ0U1JywgJ0U2JywgJ0U3JywgJ0U4JywgJ0U5JywgJ0VBJywgJ0VCJywgJ0VDJywgJ0VEJywgJ0VFJywgJ0VGJyxcbiAgJ0YwJywgJ0YxJywgJ0YyJywgJ0YzJywgJ0Y0JywgJ0Y1JywgJ0Y2JywgJ0Y3JywgJ0Y4JywgJ0Y5JywgJ0ZBJywgJ0ZCJywgJ0ZDJywgJ0ZEJywgJ0ZFJywgJ0ZGJ1xuXTtcblxuY29uc3QgTE9XRVJfQ0FTRV9NQVAgPSBbXG4gICcwMCcsICcwMScsICcwMicsICcwMycsICcwNCcsICcwNScsICcwNicsICcwNycsICcwOCcsICcwOScsICcwYScsICcwYicsICcwYycsICcwZCcsICcwZScsICcwZicsXG4gICcxMCcsICcxMScsICcxMicsICcxMycsICcxNCcsICcxNScsICcxNicsICcxNycsICcxOCcsICcxOScsICcxYScsICcxYicsICcxYycsICcxZCcsICcxZScsICcxZicsXG4gICcyMCcsICcyMScsICcyMicsICcyMycsICcyNCcsICcyNScsICcyNicsICcyNycsICcyOCcsICcyOScsICcyYScsICcyYicsICcyYycsICcyZCcsICcyZScsICcyZicsXG4gICczMCcsICczMScsICczMicsICczMycsICczNCcsICczNScsICczNicsICczNycsICczOCcsICczOScsICczYScsICczYicsICczYycsICczZCcsICczZScsICczZicsXG4gICc0MCcsICc0MScsICc0MicsICc0MycsICc0NCcsICc0NScsICc0NicsICc0NycsICc0OCcsICc0OScsICc0YScsICc0YicsICc0YycsICc0ZCcsICc0ZScsICc0ZicsXG4gICc1MCcsICc1MScsICc1MicsICc1MycsICc1NCcsICc1NScsICc1NicsICc1NycsICc1OCcsICc1OScsICc1YScsICc1YicsICc1YycsICc1ZCcsICc1ZScsICc1ZicsXG4gICc2MCcsICc2MScsICc2MicsICc2MycsICc2NCcsICc2NScsICc2NicsICc2NycsICc2OCcsICc2OScsICc2YScsICc2YicsICc2YycsICc2ZCcsICc2ZScsICc2ZicsXG4gICc3MCcsICc3MScsICc3MicsICc3MycsICc3NCcsICc3NScsICc3NicsICc3NycsICc3OCcsICc3OScsICc3YScsICc3YicsICc3YycsICc3ZCcsICc3ZScsICc3ZicsXG4gICc4MCcsICc4MScsICc4MicsICc4MycsICc4NCcsICc4NScsICc4NicsICc4NycsICc4OCcsICc4OScsICc4YScsICc4YicsICc4YycsICc4ZCcsICc4ZScsICc4ZicsXG4gICc5MCcsICc5MScsICc5MicsICc5MycsICc5NCcsICc5NScsICc5NicsICc5NycsICc5OCcsICc5OScsICc5YScsICc5YicsICc5YycsICc5ZCcsICc5ZScsICc5ZicsXG4gICdhMCcsICdhMScsICdhMicsICdhMycsICdhNCcsICdhNScsICdhNicsICdhNycsICdhOCcsICdhOScsICdhYScsICdhYicsICdhYycsICdhZCcsICdhZScsICdhZicsXG4gICdiMCcsICdiMScsICdiMicsICdiMycsICdiNCcsICdiNScsICdiNicsICdiNycsICdiOCcsICdiOScsICdiYScsICdiYicsICdiYycsICdiZCcsICdiZScsICdiZicsXG4gICdjMCcsICdjMScsICdjMicsICdjMycsICdjNCcsICdjNScsICdjNicsICdjNycsICdjOCcsICdjOScsICdjYScsICdjYicsICdjYycsICdjZCcsICdjZScsICdjZicsXG4gICdkMCcsICdkMScsICdkMicsICdkMycsICdkNCcsICdkNScsICdkNicsICdkNycsICdkOCcsICdkOScsICdkYScsICdkYicsICdkYycsICdkZCcsICdkZScsICdkZicsXG4gICdlMCcsICdlMScsICdlMicsICdlMycsICdlNCcsICdlNScsICdlNicsICdlNycsICdlOCcsICdlOScsICdlYScsICdlYicsICdlYycsICdlZCcsICdlZScsICdlZicsXG4gICdmMCcsICdmMScsICdmMicsICdmMycsICdmNCcsICdmNScsICdmNicsICdmNycsICdmOCcsICdmOScsICdmYScsICdmYicsICdmYycsICdmZCcsICdmZScsICdmZidcbl07XG5cbmV4cG9ydCBmdW5jdGlvbiBidWZmZXJUb1VwcGVyQ2FzZUd1aWQoYnVmZmVyOiBCdWZmZXIpIHtcbiAgcmV0dXJuIChcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbM11dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMl1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMV1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMF1dICtcbiAgICAnLScgK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlcls1XV0gK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlcls0XV0gK1xuICAgICctJyArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzddXSArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzZdXSArXG4gICAgJy0nICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbOF1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbOV1dICtcbiAgICAnLScgK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlclsxMF1dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMTFdXSArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzEyXV0gK1xuICAgIFVQUEVSX0NBU0VfTUFQW2J1ZmZlclsxM11dICtcbiAgICBVUFBFUl9DQVNFX01BUFtidWZmZXJbMTRdXSArXG4gICAgVVBQRVJfQ0FTRV9NQVBbYnVmZmVyWzE1XV1cbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1ZmZlclRvTG93ZXJDYXNlR3VpZChidWZmZXI6IEJ1ZmZlcikge1xuICByZXR1cm4gKFxuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclszXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsyXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsxXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclswXV0gK1xuICAgICctJyArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzVdXSArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzRdXSArXG4gICAgJy0nICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbN11dICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbNl1dICtcbiAgICAnLScgK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlcls4XV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlcls5XV0gK1xuICAgICctJyArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzEwXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsxMV1dICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbMTJdXSArXG4gICAgTE9XRVJfQ0FTRV9NQVBbYnVmZmVyWzEzXV0gK1xuICAgIExPV0VSX0NBU0VfTUFQW2J1ZmZlclsxNF1dICtcbiAgICBMT1dFUl9DQVNFX01BUFtidWZmZXJbMTVdXVxuICApO1xufVxuXG5jb25zdCBDSEFSQ09ERU1BUDogeyBba2V5OiBudW1iZXJdOiB7IFtrZXk6IG51bWJlcl06IG51bWJlciB9IH0gPSB7fTtcblxuY29uc3QgaGV4RGlnaXRzID0gW1xuICAnMCcsICcxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JywgJzgnLCAnOScsXG4gICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicsXG4gICdBJywgJ0InLCAnQycsICdEJywgJ0UnLCAnRidcbl0ubWFwKChkKSA9PiBkLmNoYXJDb2RlQXQoMCkpO1xuXG5mb3IgKGxldCBpID0gMDsgaSA8IGhleERpZ2l0cy5sZW5ndGg7IGkrKykge1xuICBjb25zdCBtYXA6IHsgW2tleTogbnVtYmVyXTogbnVtYmVyIH0gPSBDSEFSQ09ERU1BUFtoZXhEaWdpdHNbaV1dID0ge307XG4gIGZvciAobGV0IGogPSAwOyBqIDwgaGV4RGlnaXRzLmxlbmd0aDsgaisrKSB7XG4gICAgY29uc3QgaGV4ID0gU3RyaW5nLmZyb21DaGFyQ29kZShoZXhEaWdpdHNbaV0sIGhleERpZ2l0c1tqXSk7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJzZUludChoZXgsIDE2KTtcbiAgICBtYXBbaGV4RGlnaXRzW2pdXSA9IHZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBndWlkVG9BcnJheShndWlkOiBzdHJpbmcpIHtcbiAgcmV0dXJuIFtcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoNildW2d1aWQuY2hhckNvZGVBdCg3KV0sXG4gICAgQ0hBUkNPREVNQVBbZ3VpZC5jaGFyQ29kZUF0KDQpXVtndWlkLmNoYXJDb2RlQXQoNSldLFxuICAgIENIQVJDT0RFTUFQW2d1aWQuY2hhckNvZGVBdCgyKV1bZ3VpZC5jaGFyQ29kZUF0KDMpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMCldW2d1aWQuY2hhckNvZGVBdCgxKV0sXG4gICAgQ0hBUkNPREVNQVBbZ3VpZC5jaGFyQ29kZUF0KDExKV1bZ3VpZC5jaGFyQ29kZUF0KDEyKV0sXG4gICAgQ0hBUkNPREVNQVBbZ3VpZC5jaGFyQ29kZUF0KDkpXVtndWlkLmNoYXJDb2RlQXQoMTApXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMTYpXVtndWlkLmNoYXJDb2RlQXQoMTcpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMTQpXVtndWlkLmNoYXJDb2RlQXQoMTUpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMTkpXVtndWlkLmNoYXJDb2RlQXQoMjApXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjEpXVtndWlkLmNoYXJDb2RlQXQoMjIpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjQpXVtndWlkLmNoYXJDb2RlQXQoMjUpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjYpXVtndWlkLmNoYXJDb2RlQXQoMjcpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMjgpXVtndWlkLmNoYXJDb2RlQXQoMjkpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMzApXVtndWlkLmNoYXJDb2RlQXQoMzEpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMzIpXVtndWlkLmNoYXJDb2RlQXQoMzMpXSxcbiAgICBDSEFSQ09ERU1BUFtndWlkLmNoYXJDb2RlQXQoMzQpXVtndWlkLmNoYXJDb2RlQXQoMzUpXVxuICBdO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLE1BQU1BLGNBQWMsR0FBRyxDQUNyQixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQy9GO0FBRUQsTUFBTUMsY0FBYyxHQUFHLENBQ3JCLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDOUYsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUM5RixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzlGLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FDL0Y7QUFFTSxTQUFTQyxxQkFBcUJBLENBQUNDLE1BQWMsRUFBRTtFQUNwRCxPQUNFSCxj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QUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ25ESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3BESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ3JESixXQUFXLENBQUNjLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUNVLElBQUksQ0FBQ1YsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQ3REO0FBQ0gifQ==