tedious 13.0.5 → 14.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/bulk-load-payload.js +1 -19
- package/lib/bulk-load.js +1 -76
- package/lib/connection.js +164 -391
- package/lib/data-types/char.js +2 -6
- package/lib/data-types/nchar.js +2 -6
- package/lib/data-types/ntext.js +2 -6
- package/lib/data-types/nvarchar.js +2 -6
- package/lib/data-types/text.js +2 -6
- package/lib/data-types/uniqueidentifier.js +2 -6
- package/lib/data-types/varchar.js +2 -6
- package/lib/errors.js +26 -33
- package/lib/message-io.js +17 -7
- package/lib/token/handler.js +552 -0
- package/lib/token/token-stream-parser.js +3 -5
- package/lib/token/token.js +30 -34
- package/package.json +1 -2
package/lib/token/token.js
CHANGED
|
@@ -30,11 +30,11 @@ const TYPE = {
|
|
|
30
30
|
exports.TYPE = TYPE;
|
|
31
31
|
|
|
32
32
|
class Token {
|
|
33
|
-
constructor(name,
|
|
33
|
+
constructor(name, handlerName) {
|
|
34
34
|
this.name = void 0;
|
|
35
|
-
this.
|
|
35
|
+
this.handlerName = void 0;
|
|
36
36
|
this.name = name;
|
|
37
|
-
this.
|
|
37
|
+
this.handlerName = handlerName;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
}
|
|
@@ -43,7 +43,7 @@ exports.Token = Token;
|
|
|
43
43
|
|
|
44
44
|
class ColMetadataToken extends Token {
|
|
45
45
|
constructor(columns) {
|
|
46
|
-
super('COLMETADATA', '
|
|
46
|
+
super('COLMETADATA', 'onColMetadata');
|
|
47
47
|
this.columns = void 0;
|
|
48
48
|
this.columns = columns;
|
|
49
49
|
}
|
|
@@ -61,7 +61,7 @@ class DoneToken extends Token {
|
|
|
61
61
|
rowCount,
|
|
62
62
|
curCmd
|
|
63
63
|
}) {
|
|
64
|
-
super('DONE', '
|
|
64
|
+
super('DONE', 'onDone');
|
|
65
65
|
this.more = void 0;
|
|
66
66
|
this.sqlError = void 0;
|
|
67
67
|
this.attention = void 0;
|
|
@@ -89,7 +89,7 @@ class DoneInProcToken extends Token {
|
|
|
89
89
|
rowCount,
|
|
90
90
|
curCmd
|
|
91
91
|
}) {
|
|
92
|
-
super('DONEINPROC', '
|
|
92
|
+
super('DONEINPROC', 'onDoneInProc');
|
|
93
93
|
this.more = void 0;
|
|
94
94
|
this.sqlError = void 0;
|
|
95
95
|
this.attention = void 0;
|
|
@@ -117,7 +117,7 @@ class DoneProcToken extends Token {
|
|
|
117
117
|
rowCount,
|
|
118
118
|
curCmd
|
|
119
119
|
}) {
|
|
120
|
-
super('DONEPROC', '
|
|
120
|
+
super('DONEPROC', 'onDoneProc');
|
|
121
121
|
this.more = void 0;
|
|
122
122
|
this.sqlError = void 0;
|
|
123
123
|
this.attention = void 0;
|
|
@@ -138,7 +138,7 @@ exports.DoneProcToken = DoneProcToken;
|
|
|
138
138
|
|
|
139
139
|
class DatabaseEnvChangeToken extends Token {
|
|
140
140
|
constructor(newValue, oldValue) {
|
|
141
|
-
super('ENVCHANGE', '
|
|
141
|
+
super('ENVCHANGE', 'onDatabaseChange');
|
|
142
142
|
this.type = void 0;
|
|
143
143
|
this.newValue = void 0;
|
|
144
144
|
this.oldValue = void 0;
|
|
@@ -153,7 +153,7 @@ exports.DatabaseEnvChangeToken = DatabaseEnvChangeToken;
|
|
|
153
153
|
|
|
154
154
|
class LanguageEnvChangeToken extends Token {
|
|
155
155
|
constructor(newValue, oldValue) {
|
|
156
|
-
super('ENVCHANGE', '
|
|
156
|
+
super('ENVCHANGE', 'onLanguageChange');
|
|
157
157
|
this.type = void 0;
|
|
158
158
|
this.newValue = void 0;
|
|
159
159
|
this.oldValue = void 0;
|
|
@@ -168,7 +168,7 @@ exports.LanguageEnvChangeToken = LanguageEnvChangeToken;
|
|
|
168
168
|
|
|
169
169
|
class CharsetEnvChangeToken extends Token {
|
|
170
170
|
constructor(newValue, oldValue) {
|
|
171
|
-
super('ENVCHANGE', '
|
|
171
|
+
super('ENVCHANGE', 'onCharsetChange');
|
|
172
172
|
this.type = void 0;
|
|
173
173
|
this.newValue = void 0;
|
|
174
174
|
this.oldValue = void 0;
|
|
@@ -183,7 +183,7 @@ exports.CharsetEnvChangeToken = CharsetEnvChangeToken;
|
|
|
183
183
|
|
|
184
184
|
class PacketSizeEnvChangeToken extends Token {
|
|
185
185
|
constructor(newValue, oldValue) {
|
|
186
|
-
super('ENVCHANGE', '
|
|
186
|
+
super('ENVCHANGE', 'onPacketSizeChange');
|
|
187
187
|
this.type = void 0;
|
|
188
188
|
this.newValue = void 0;
|
|
189
189
|
this.oldValue = void 0;
|
|
@@ -198,12 +198,10 @@ exports.PacketSizeEnvChangeToken = PacketSizeEnvChangeToken;
|
|
|
198
198
|
|
|
199
199
|
class BeginTransactionEnvChangeToken extends Token {
|
|
200
200
|
constructor(newValue, oldValue) {
|
|
201
|
-
super('ENVCHANGE', '
|
|
201
|
+
super('ENVCHANGE', 'onBeginTransaction');
|
|
202
202
|
this.type = void 0;
|
|
203
203
|
this.newValue = void 0;
|
|
204
204
|
this.oldValue = void 0;
|
|
205
|
-
this.name = 'ENVCHANGE';
|
|
206
|
-
this.event = 'beginTransaction';
|
|
207
205
|
this.type = 'BEGIN_TXN';
|
|
208
206
|
this.newValue = newValue;
|
|
209
207
|
this.oldValue = oldValue;
|
|
@@ -215,7 +213,7 @@ exports.BeginTransactionEnvChangeToken = BeginTransactionEnvChangeToken;
|
|
|
215
213
|
|
|
216
214
|
class CommitTransactionEnvChangeToken extends Token {
|
|
217
215
|
constructor(newValue, oldValue) {
|
|
218
|
-
super('ENVCHANGE', '
|
|
216
|
+
super('ENVCHANGE', 'onCommitTransaction');
|
|
219
217
|
this.type = void 0;
|
|
220
218
|
this.newValue = void 0;
|
|
221
219
|
this.oldValue = void 0;
|
|
@@ -230,7 +228,7 @@ exports.CommitTransactionEnvChangeToken = CommitTransactionEnvChangeToken;
|
|
|
230
228
|
|
|
231
229
|
class RollbackTransactionEnvChangeToken extends Token {
|
|
232
230
|
constructor(newValue, oldValue) {
|
|
233
|
-
super('ENVCHANGE', '
|
|
231
|
+
super('ENVCHANGE', 'onRollbackTransaction');
|
|
234
232
|
this.type = void 0;
|
|
235
233
|
this.oldValue = void 0;
|
|
236
234
|
this.newValue = void 0;
|
|
@@ -245,12 +243,10 @@ exports.RollbackTransactionEnvChangeToken = RollbackTransactionEnvChangeToken;
|
|
|
245
243
|
|
|
246
244
|
class DatabaseMirroringPartnerEnvChangeToken extends Token {
|
|
247
245
|
constructor(newValue, oldValue) {
|
|
248
|
-
super('ENVCHANGE', '
|
|
246
|
+
super('ENVCHANGE', 'onDatabaseMirroringPartner');
|
|
249
247
|
this.type = void 0;
|
|
250
248
|
this.oldValue = void 0;
|
|
251
249
|
this.newValue = void 0;
|
|
252
|
-
this.name = 'ENVCHANGE';
|
|
253
|
-
this.event = 'partnerNode';
|
|
254
250
|
this.type = 'DATABASE_MIRRORING_PARTNER';
|
|
255
251
|
this.newValue = newValue;
|
|
256
252
|
this.oldValue = oldValue;
|
|
@@ -262,7 +258,7 @@ exports.DatabaseMirroringPartnerEnvChangeToken = DatabaseMirroringPartnerEnvChan
|
|
|
262
258
|
|
|
263
259
|
class ResetConnectionEnvChangeToken extends Token {
|
|
264
260
|
constructor(newValue, oldValue) {
|
|
265
|
-
super('ENVCHANGE', '
|
|
261
|
+
super('ENVCHANGE', 'onResetConnection');
|
|
266
262
|
this.type = void 0;
|
|
267
263
|
this.oldValue = void 0;
|
|
268
264
|
this.newValue = void 0;
|
|
@@ -277,7 +273,7 @@ exports.ResetConnectionEnvChangeToken = ResetConnectionEnvChangeToken;
|
|
|
277
273
|
|
|
278
274
|
class CollationChangeToken extends Token {
|
|
279
275
|
constructor(newValue, oldValue) {
|
|
280
|
-
super('ENVCHANGE', '
|
|
276
|
+
super('ENVCHANGE', 'onSqlCollationChange');
|
|
281
277
|
this.type = void 0;
|
|
282
278
|
this.oldValue = void 0;
|
|
283
279
|
this.newValue = void 0;
|
|
@@ -292,7 +288,7 @@ exports.CollationChangeToken = CollationChangeToken;
|
|
|
292
288
|
|
|
293
289
|
class RoutingEnvChangeToken extends Token {
|
|
294
290
|
constructor(newValue, oldValue) {
|
|
295
|
-
super('ENVCHANGE', '
|
|
291
|
+
super('ENVCHANGE', 'onRoutingChange');
|
|
296
292
|
this.type = void 0;
|
|
297
293
|
this.newValue = void 0;
|
|
298
294
|
this.oldValue = void 0;
|
|
@@ -310,7 +306,7 @@ class FeatureExtAckToken extends Token {
|
|
|
310
306
|
*
|
|
311
307
|
* undefined when UTF8_SUPPORT not included in token. */
|
|
312
308
|
constructor(fedAuth, utf8Support) {
|
|
313
|
-
super('FEATUREEXTACK', '
|
|
309
|
+
super('FEATUREEXTACK', 'onFeatureExtAck');
|
|
314
310
|
this.fedAuth = void 0;
|
|
315
311
|
this.utf8Support = void 0;
|
|
316
312
|
this.fedAuth = fedAuth;
|
|
@@ -323,7 +319,7 @@ exports.FeatureExtAckToken = FeatureExtAckToken;
|
|
|
323
319
|
|
|
324
320
|
class FedAuthInfoToken extends Token {
|
|
325
321
|
constructor(spn, stsurl) {
|
|
326
|
-
super('FEDAUTHINFO', '
|
|
322
|
+
super('FEDAUTHINFO', 'onFedAuthInfo');
|
|
327
323
|
this.spn = void 0;
|
|
328
324
|
this.stsurl = void 0;
|
|
329
325
|
this.spn = spn;
|
|
@@ -344,7 +340,7 @@ class InfoMessageToken extends Token {
|
|
|
344
340
|
procName,
|
|
345
341
|
lineNumber
|
|
346
342
|
}) {
|
|
347
|
-
super('INFO', '
|
|
343
|
+
super('INFO', 'onInfoMessage');
|
|
348
344
|
this.number = void 0;
|
|
349
345
|
this.state = void 0;
|
|
350
346
|
this.class = void 0;
|
|
@@ -375,7 +371,7 @@ class ErrorMessageToken extends Token {
|
|
|
375
371
|
procName,
|
|
376
372
|
lineNumber
|
|
377
373
|
}) {
|
|
378
|
-
super('ERROR', '
|
|
374
|
+
super('ERROR', 'onErrorMessage');
|
|
379
375
|
this.number = void 0;
|
|
380
376
|
this.state = void 0;
|
|
381
377
|
this.class = void 0;
|
|
@@ -403,7 +399,7 @@ class LoginAckToken extends Token {
|
|
|
403
399
|
progName,
|
|
404
400
|
progVersion
|
|
405
401
|
}) {
|
|
406
|
-
super('LOGINACK', '
|
|
402
|
+
super('LOGINACK', 'onLoginAck');
|
|
407
403
|
this.interface = void 0;
|
|
408
404
|
this.tdsVersion = void 0;
|
|
409
405
|
this.progName = void 0;
|
|
@@ -420,7 +416,7 @@ exports.LoginAckToken = LoginAckToken;
|
|
|
420
416
|
|
|
421
417
|
class NBCRowToken extends Token {
|
|
422
418
|
constructor(columns) {
|
|
423
|
-
super('NBCROW', '
|
|
419
|
+
super('NBCROW', 'onRow');
|
|
424
420
|
this.columns = void 0;
|
|
425
421
|
this.columns = columns;
|
|
426
422
|
}
|
|
@@ -431,7 +427,7 @@ exports.NBCRowToken = NBCRowToken;
|
|
|
431
427
|
|
|
432
428
|
class OrderToken extends Token {
|
|
433
429
|
constructor(orderColumns) {
|
|
434
|
-
super('ORDER', '
|
|
430
|
+
super('ORDER', 'onOrder');
|
|
435
431
|
this.orderColumns = void 0;
|
|
436
432
|
this.orderColumns = orderColumns;
|
|
437
433
|
}
|
|
@@ -442,7 +438,7 @@ exports.OrderToken = OrderToken;
|
|
|
442
438
|
|
|
443
439
|
class ReturnStatusToken extends Token {
|
|
444
440
|
constructor(value) {
|
|
445
|
-
super('RETURNSTATUS', '
|
|
441
|
+
super('RETURNSTATUS', 'onReturnStatus');
|
|
446
442
|
this.value = void 0;
|
|
447
443
|
this.value = value;
|
|
448
444
|
}
|
|
@@ -458,7 +454,7 @@ class ReturnValueToken extends Token {
|
|
|
458
454
|
metadata,
|
|
459
455
|
value
|
|
460
456
|
}) {
|
|
461
|
-
super('RETURNVALUE', '
|
|
457
|
+
super('RETURNVALUE', 'onReturnValue');
|
|
462
458
|
this.paramOrdinal = void 0;
|
|
463
459
|
this.paramName = void 0;
|
|
464
460
|
this.metadata = void 0;
|
|
@@ -475,7 +471,7 @@ exports.ReturnValueToken = ReturnValueToken;
|
|
|
475
471
|
|
|
476
472
|
class RowToken extends Token {
|
|
477
473
|
constructor(columns) {
|
|
478
|
-
super('ROW', '
|
|
474
|
+
super('ROW', 'onRow');
|
|
479
475
|
this.columns = void 0;
|
|
480
476
|
this.columns = columns;
|
|
481
477
|
}
|
|
@@ -486,7 +482,7 @@ exports.RowToken = RowToken;
|
|
|
486
482
|
|
|
487
483
|
class SSPIToken extends Token {
|
|
488
484
|
constructor(ntlmpacket, ntlmpacketBuffer) {
|
|
489
|
-
super('SSPICHALLENGE', '
|
|
485
|
+
super('SSPICHALLENGE', 'onSSPI');
|
|
490
486
|
this.ntlmpacket = void 0;
|
|
491
487
|
this.ntlmpacketBuffer = void 0;
|
|
492
488
|
this.ntlmpacket = ntlmpacket;
|
|
@@ -496,4 +492,4 @@ class SSPIToken extends Token {
|
|
|
496
492
|
}
|
|
497
493
|
|
|
498
494
|
exports.SSPIToken = SSPIToken;
|
|
499
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi90b2tlbi50cyJdLCJuYW1lcyI6WyJUWVBFIiwiQUxUTUVUQURBVEEiLCJBTFRST1ciLCJDT0xNRVRBREFUQSIsIkNPTElORk8iLCJET05FIiwiRE9ORVBST0MiLCJET05FSU5QUk9DIiwiRU5WQ0hBTkdFIiwiRVJST1IiLCJGRUFUVVJFRVhUQUNLIiwiRkVEQVVUSElORk8iLCJJTkZPIiwiTE9HSU5BQ0siLCJOQkNST1ciLCJPRkZTRVQiLCJPUkRFUiIsIlJFVFVSTlNUQVRVUyIsIlJFVFVSTlZBTFVFIiwiUk9XIiwiU1NQSSIsIlRBQk5BTUUiLCJUb2tlbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsImV2ZW50IiwiQ29sTWV0YWRhdGFUb2tlbiIsImNvbHVtbnMiLCJEb25lVG9rZW4iLCJtb3JlIiwic3FsRXJyb3IiLCJhdHRlbnRpb24iLCJzZXJ2ZXJFcnJvciIsInJvd0NvdW50IiwiY3VyQ21kIiwiRG9uZUluUHJvY1Rva2VuIiwiRG9uZVByb2NUb2tlbiIsIkRhdGFiYXNlRW52Q2hhbmdlVG9rZW4iLCJuZXdWYWx1ZSIsIm9sZFZhbHVlIiwidHlwZSIsIkxhbmd1YWdlRW52Q2hhbmdlVG9rZW4iLCJDaGFyc2V0RW52Q2hhbmdlVG9rZW4iLCJQYWNrZXRTaXplRW52Q2hhbmdlVG9rZW4iLCJCZWdpblRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4iLCJDb21taXRUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiUm9sbGJhY2tUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiRGF0YWJhc2VNaXJyb3JpbmdQYXJ0bmVyRW52Q2hhbmdlVG9rZW4iLCJSZXNldENvbm5lY3Rpb25FbnZDaGFuZ2VUb2tlbiIsIkNvbGxhdGlvbkNoYW5nZVRva2VuIiwiUm91dGluZ0VudkNoYW5nZVRva2VuIiwiRmVhdHVyZUV4dEFja1Rva2VuIiwiZmVkQXV0aCIsInV0ZjhTdXBwb3J0IiwiRmVkQXV0aEluZm9Ub2tlbiIsInNwbiIsInN0c3VybCIsIkluZm9NZXNzYWdlVG9rZW4iLCJudW1iZXIiLCJzdGF0ZSIsImNsYXNzIiwiY2xhenoiLCJtZXNzYWdlIiwic2VydmVyTmFtZSIsInByb2NOYW1lIiwibGluZU51bWJlciIsIkVycm9yTWVzc2FnZVRva2VuIiwiTG9naW5BY2tUb2tlbiIsImludGVyZmFjZSIsImludGVyZmF6ZSIsInRkc1ZlcnNpb24iLCJwcm9nTmFtZSIsInByb2dWZXJzaW9uIiwiTkJDUm93VG9rZW4iLCJPcmRlclRva2VuIiwib3JkZXJDb2x1bW5zIiwiUmV0dXJuU3RhdHVzVG9rZW4iLCJ2YWx1ZSIsIlJldHVyblZhbHVlVG9rZW4iLCJwYXJhbU9yZGluYWwiLCJwYXJhbU5hbWUiLCJtZXRhZGF0YSIsIlJvd1Rva2VuIiwiU1NQSVRva2VuIiwibnRsbXBhY2tldCIsIm50bG1wYWNrZXRCdWZmZXIiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUlPLE1BQU1BLElBQUksR0FBRztBQUNsQkMsRUFBQUEsV0FBVyxFQUFFLElBREs7QUFFbEJDLEVBQUFBLE1BQU0sRUFBRSxJQUZVO0FBR2xCQyxFQUFBQSxXQUFXLEVBQUUsSUFISztBQUlsQkMsRUFBQUEsT0FBTyxFQUFFLElBSlM7QUFLbEJDLEVBQUFBLElBQUksRUFBRSxJQUxZO0FBTWxCQyxFQUFBQSxRQUFRLEVBQUUsSUFOUTtBQU9sQkMsRUFBQUEsVUFBVSxFQUFFLElBUE07QUFRbEJDLEVBQUFBLFNBQVMsRUFBRSxJQVJPO0FBU2xCQyxFQUFBQSxLQUFLLEVBQUUsSUFUVztBQVVsQkMsRUFBQUEsYUFBYSxFQUFFLElBVkc7QUFXbEJDLEVBQUFBLFdBQVcsRUFBRSxJQVhLO0FBWWxCQyxFQUFBQSxJQUFJLEVBQUUsSUFaWTtBQWFsQkMsRUFBQUEsUUFBUSxFQUFFLElBYlE7QUFjbEJDLEVBQUFBLE1BQU0sRUFBRSxJQWRVO0FBZWxCQyxFQUFBQSxNQUFNLEVBQUUsSUFmVTtBQWdCbEJDLEVBQUFBLEtBQUssRUFBRSxJQWhCVztBQWlCbEJDLEVBQUFBLFlBQVksRUFBRSxJQWpCSTtB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Qzs7OztBQWE3QixNQUFNd0QsU0FBTixTQUF3QjdELEtBQXhCLENBQThCO0FBT25DQyxFQUFBQSxXQUFXLENBQUM2RCxVQUFELEVBQWtCQyxnQkFBbEIsRUFBNEM7QUFDckQsVUFBTSxlQUFOLEVBQXVCLGVBQXZCO0FBRHFELFNBSHZERCxVQUd1RDtBQUFBLFNBRnZEQyxnQkFFdUQ7QUFHckQsU0FBS0QsVUFBTCxHQUFrQkEsVUFBbEI7QUFDQSxTQUFLQyxnQkFBTCxHQUF3QkEsZ0JBQXhCO0FBQ0Q7O0FBWmtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGF0aW9uIH0gZnJvbSAnLi4vY29sbGF0aW9uJztcbmltcG9ydCB7IE1ldGFkYXRhIH0gZnJvbSAnLi4vbWV0YWRhdGEtcGFyc2VyJztcbmltcG9ydCB7IENvbHVtbk1ldGFkYXRhIH0gZnJvbSAnLi9jb2xtZXRhZGF0YS10b2tlbi1wYXJzZXInO1xuXG5leHBvcnQgY29uc3QgVFlQRSA9IHtcbiAgQUxUTUVUQURBVEE6IDB4ODgsXG4gIEFMVFJPVzogMHhEMyxcbiAgQ09MTUVUQURBVEE6IDB4ODEsXG4gIENPTElORk86IDB4QTUsXG4gIERPTkU6IDB4RkQsXG4gIERPTkVQUk9DOiAweEZFLFxuICBET05FSU5QUk9DOiAweEZGLFxuICBFTlZDSEFOR0U6IDB4RTMsXG4gIEVSUk9SOiAweEFBLFxuICBGRUFUVVJFRVhUQUNLOiAweEFFLFxuICBGRURBVVRISU5GTzogMHhFRSxcbiAgSU5GTzogMHhBQixcbiAgTE9HSU5BQ0s6IDB4QUQsXG4gIE5CQ1JPVzogMHhEMixcbiAgT0ZGU0VUOiAweDc4LFxuICBPUkRFUjogMHhBOSxcbiAgUkVUVVJOU1RBVFVTOiAweDc5LFxuICBSRVRVUk5WQUxVRTogMHhBQyxcbiAgUk9XOiAweEQxLFxuICBTU1BJOiAweEVELFxuICBUQUJOQU1FOiAweEE0XG59O1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVG9rZW4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGV2ZW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBldmVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLmV2ZW50ID0gZXZlbnQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENvbE1ldGFkYXRhVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0NPTE1FVEFEQVRBJztcbiAgZGVjbGFyZSBldmVudDogJ2NvbHVtbk1ldGFkYXRhJztcblxuICBjb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdXG5cbiAgY29uc3RydWN0b3IoY29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSkge1xuICAgIHN1cGVyKCdDT0xNRVRBREFUQScsICdjb2x1bW5NZXRhZGF0YScpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdET05FJztcbiAgZGVjbGFyZSBldmVudDogJ2RvbmUnO1xuXG4gIG1vcmU6IGJvb2xlYW47XG4gIHNxbEVycm9yOiBib29sZWFuO1xuICBhdHRlbnRpb246IGJvb2xlYW47XG4gIHNlcnZlckVycm9yOiBib29sZWFuO1xuICByb3dDb3VudDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBjdXJDbWQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcih7IG1vcmUsIHNxbEVycm9yLCBhdHRlbnRpb24sIHNlcnZlckVycm9yLCByb3dDb3VudCwgY3VyQ21kIH06IHsgbW9yZTogYm9vbGVhbiwgc3FsRXJyb3I6IGJvb2xlYW4sIGF0dGVudGlvbjogYm9vbGVhbiwgc2VydmVyRXJyb3I6IGJvb2xlYW4sIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQsIGN1ckNtZDogbnVtYmVyIH0pIHtcbiAgICBzdXBlcignRE9ORScsICdkb25lJyk7XG5cbiAgICB0aGlzLm1vcmUgPSBtb3JlO1xuICAgIHRoaXMuc3FsRXJyb3IgPSBzcWxFcnJvcjtcbiAgICB0aGlzLmF0dGVudGlvbiA9IGF0dGVudGlvbjtcbiAgICB0aGlzLnNlcnZlckVycm9yID0gc2VydmVyRXJyb3I7XG4gICAgdGhpcy5yb3dDb3VudCA9IHJvd0NvdW50O1xuICAgIHRoaXMuY3VyQ21kID0gY3VyQ21kO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEb25lSW5Qcm9jVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0RPTkVJTlBST0MnO1xuICBkZWNsYXJlIGV2ZW50OiAnZG9uZUluUHJvYyc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FSU5QUk9DJywgJ2RvbmVJblByb2MnKTtcblxuICAgIHRoaXMubW9yZSA9IG1vcmU7XG4gICAgdGhpcy5zcWxFcnJvciA9IHNxbEVycm9yO1xuICAgIHRoaXMuYXR0ZW50aW9uID0gYXR0ZW50aW9uO1xuICAgIHRoaXMuc2VydmVyRXJyb3IgPSBzZXJ2ZXJFcnJvcjtcbiAgICB0aGlzLnJvd0NvdW50ID0gcm93Q291bnQ7XG4gICAgdGhpcy5jdXJDbWQgPSBjdXJDbWQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERvbmVQcm9jVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0RPTkVQUk9DJztcbiAgZGVjbGFyZSBldmVudDogJ2RvbmVQcm9jJztcblxuICBtb3JlOiBib29sZWFuO1xuICBzcWxFcnJvcjogYm9vbGVhbjtcbiAgYXR0ZW50aW9uOiBib29sZWFuO1xuICBzZXJ2ZXJFcnJvcjogYm9vbGVhbjtcbiAgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgY3VyQ21kOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoeyBtb3JlLCBzcWxFcnJvciwgYXR0ZW50aW9uLCBzZXJ2ZXJFcnJvciwgcm93Q291bnQsIGN1ckNtZCB9OiB7IG1vcmU6IGJvb2xlYW4sIHNxbEVycm9yOiBib29sZWFuLCBhdHRlbnRpb246IGJvb2xlYW4sIHNlcnZlckVycm9yOiBib29sZWFuLCByb3dDb3VudDogbnVtYmVyIHwgdW5kZWZpbmVkLCBjdXJDbWQ6IG51bWJlciB9KSB7XG4gICAgc3VwZXIoJ0RPTkVQUk9DJywgJ2RvbmVQcm9jJyk7XG5cbiAgICB0aGlzLm1vcmUgPSBtb3JlO1xuICAgIHRoaXMuc3FsRXJyb3IgPSBzcWxFcnJvcjtcbiAgICB0aGlzLmF0dGVudGlvbiA9IGF0dGVudGlvbjtcbiAgICB0aGlzLnNlcnZlckVycm9yID0gc2VydmVyRXJyb3I7XG4gICAgdGhpcy5yb3dDb3VudCA9IHJvd0NvdW50O1xuICAgIHRoaXMuY3VyQ21kID0gY3VyQ21kO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhYmFzZUVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGV2ZW50OiAnZGF0YWJhc2VDaGFuZ2UnO1xuXG4gIHR5cGU6ICdEQVRBQkFTRSc7XG4gIG5ld1ZhbHVlOiBzdHJpbmc7XG4gIG9sZFZhbHVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAnZGF0YWJhc2VDaGFuZ2UnKTtcblxuICAgIHRoaXMudHlwZSA9ICdEQVRBQkFTRSc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGFuZ3VhZ2VFbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBldmVudDogJ2xhbmd1YWdlQ2hhbmdlJztcblxuICB0eXBlOiAnTEFOR1VBR0UnO1xuICBuZXdWYWx1ZTogc3RyaW5nO1xuICBvbGRWYWx1ZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBzdHJpbmcsIG9sZFZhbHVlOiBzdHJpbmcpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ2xhbmd1YWdlQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnTEFOR1VBR0UnO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENoYXJzZXRFbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBldmVudDogJ2NoYXJzZXRDaGFuZ2UnO1xuXG4gIHR5cGU6ICdDSEFSU0VUJztcbiAgbmV3VmFsdWU6IHN0cmluZztcbiAgb2xkVmFsdWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogc3RyaW5nLCBvbGRWYWx1ZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdjaGFyc2V0Q2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnQ0hBUlNFVCc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFja2V0U2l6ZUVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGV2ZW50OiAncGFja2V0U2l6ZUNoYW5nZSc7XG5cbiAgdHlwZTogJ1BBQ0tFVF9TSVpFJztcbiAgbmV3VmFsdWU6IG51bWJlcjtcbiAgb2xkVmFsdWU6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogbnVtYmVyLCBvbGRWYWx1ZTogbnVtYmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdwYWNrZXRTaXplQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnUEFDS0VUX1NJWkUnO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEJlZ2luVHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBldmVudDogJ2JlZ2luVHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdCRUdJTl9UWE4nO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ2JlZ2luVHJhbnNhY3Rpb24nKTtcblxuICAgIHRoaXMubmFtZSA9ICdFTlZDSEFOR0UnO1xuICAgIHRoaXMuZXZlbnQgPSAnYmVnaW5UcmFuc2FjdGlvbic7XG5cbiAgICB0aGlzLnR5cGUgPSAnQkVHSU5fVFhOJztcbiAgICB0aGlzLm5ld1ZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbGRWYWx1ZSA9IG9sZFZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb21taXRUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGV2ZW50OiAnY29tbWl0VHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdDT01NSVRfVFhOJztcbiAgbmV3VmFsdWU6IEJ1ZmZlcjtcbiAgb2xkVmFsdWU6IEJ1ZmZlcjtcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogQnVmZmVyLCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdjb21taXRUcmFuc2FjdGlvbicpO1xuXG4gICAgdGhpcy50eXBlID0gJ0NPTU1JVF9UWE4nO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJvbGxiYWNrVHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBldmVudDogJ3JvbGxiYWNrVHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdST0xMQkFDS19UWE4nO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ3JvbGxiYWNrVHJhbnNhY3Rpb24nKTtcblxuICAgIHRoaXMudHlwZSA9ICdST0xMQkFDS19UWE4nO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERhdGFiYXNlTWlycm9yaW5nUGFydG5lckVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGV2ZW50OiAncGFydG5lck5vZGUnO1xuXG4gIHR5cGU6ICdEQVRBQkFTRV9NSVJST1JJTkdfUEFSVE5FUic7XG4gIG9sZFZhbHVlOiBzdHJpbmc7XG4gIG5ld1ZhbHVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAncGFydG5lck5vZGUnKTtcblxuICAgIHRoaXMubmFtZSA9ICdFTlZDSEFOR0UnO1xuICAgIHRoaXMuZXZlbnQgPSAncGFydG5lck5vZGUnO1xuXG4gICAgdGhpcy50eXBlID0gJ0RBVEFCQVNFX01JUlJPUklOR19QQVJUTkVSJztcbiAgICB0aGlzLm5ld1ZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbGRWYWx1ZSA9IG9sZFZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSZXNldENvbm5lY3Rpb25FbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBldmVudDogJ3Jlc2V0Q29ubmVjdGlvbic7XG5cbiAgdHlwZTogJ1JFU0VUX0NPTk5FQ1RJT04nO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ3Jlc2V0Q29ubmVjdGlvbicpO1xuXG4gICAgdGhpcy50eXBlID0gJ1JFU0VUX0NPTk5FQ1RJT04nO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENvbGxhdGlvbkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGV2ZW50OiAnc3FsQ29sbGF0aW9uQ2hhbmdlJztcblxuICB0eXBlOiAnU1FMX0NPTExBVElPTic7XG4gIG9sZFZhbHVlOiBDb2xsYXRpb24gfCB1bmRlZmluZWQ7XG4gIG5ld1ZhbHVlOiBDb2xsYXRpb24gfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IENvbGxhdGlvbiB8IHVuZGVmaW5lZCwgb2xkVmFsdWU6IENvbGxhdGlvbiB8IHVuZGVmaW5lZCkge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAnc3FsQ29sbGF0aW9uQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnU1FMX0NPTExBVElPTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUm91dGluZ0VudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGV2ZW50OiAncm91dGluZ0NoYW5nZSc7XG5cbiAgdHlwZTogJ1JPVVRJTkdfQ0hBTkdFJztcbiAgbmV3VmFsdWU6IHsgcHJvdG9jb2w6IG51bWJlciwgcG9ydDogbnVtYmVyLCBzZXJ2ZXI6IHN0cmluZyB9O1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiB7IHByb3RvY29sOiBudW1iZXIsIHBvcnQ6IG51bWJlciwgc2VydmVyOiBzdHJpbmcgfSwgb2xkVmFsdWU6IEJ1ZmZlcikge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAncm91dGluZ0NoYW5nZScpO1xuXG4gICAgdGhpcy50eXBlID0gJ1JPVVRJTkdfQ0hBTkdFJztcbiAgICB0aGlzLm5ld1ZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbGRWYWx1ZSA9IG9sZFZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBGZWF0dXJlRXh0QWNrVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0ZFQVRVUkVFWFRBQ0snO1xuICBkZWNsYXJlIGV2ZW50OiAnZmVhdHVyZUV4dEFjayc7XG5cbiAgZmVkQXV0aDogQnVmZmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBWYWx1ZSBvZiBVVEY4X1NVUFBPUlQgYWNrbm93bGVkZ2VtZW50LlxuICAgKlxuICAgKiB1bmRlZmluZWQgd2hlbiBVVEY4X1NVUFBPUlQgbm90IGluY2x1ZGVkIGluIHRva2VuLiAqL1xuICB1dGY4U3VwcG9ydDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihmZWRBdXRoOiBCdWZmZXIgfCB1bmRlZmluZWQsIHV0ZjhTdXBwb3J0OiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgc3VwZXIoJ0ZFQVRVUkVFWFRBQ0snLCAnZmVhdHVyZUV4dEFjaycpO1xuXG4gICAgdGhpcy5mZWRBdXRoID0gZmVkQXV0aDtcbiAgICB0aGlzLnV0ZjhTdXBwb3J0ID0gdXRmOFN1cHBvcnQ7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZlZEF1dGhJbmZvVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0ZFREFVVEhJTkZPJztcbiAgZGVjbGFyZSBldmVudDogJ2ZlZEF1dGhJbmZvJztcblxuICBzcG46IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgc3RzdXJsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3Ioc3BuOiBzdHJpbmcgfCB1bmRlZmluZWQsIHN0c3VybDogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgc3VwZXIoJ0ZFREFVVEhJTkZPJywgJ2ZlZEF1dGhJbmZvJyk7XG5cbiAgICB0aGlzLnNwbiA9IHNwbjtcbiAgICB0aGlzLnN0c3VybCA9IHN0c3VybDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW5mb01lc3NhZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnSU5GTyc7XG4gIGRlY2xhcmUgZXZlbnQ6ICdpbmZvTWVzc2FnZSc7XG5cbiAgbnVtYmVyOiBudW1iZXI7XG4gIHN0YXRlOiBudW1iZXI7XG4gIGNsYXNzOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgc2VydmVyTmFtZTogc3RyaW5nO1xuICBwcm9jTmFtZTogc3RyaW5nO1xuICBsaW5lTnVtYmVyOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoeyBudW1iZXIsIHN0YXRlLCBjbGFzczogY2xhenosIG1lc3NhZ2UsIHNlcnZlck5hbWUsIHByb2NOYW1lLCBsaW5lTnVtYmVyIH06IHsgbnVtYmVyOiBudW1iZXIsIHN0YXRlOiBudW1iZXIsIGNsYXNzOiBudW1iZXIsIG1lc3NhZ2U6IHN0cmluZywgc2VydmVyTmFtZTogc3RyaW5nLCBwcm9jTmFtZTogc3RyaW5nLCBsaW5lTnVtYmVyOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdJTkZPJywgJ2luZm9NZXNzYWdlJyk7XG5cbiAgICB0aGlzLm51bWJlciA9IG51bWJlcjtcbiAgICB0aGlzLnN0YXRlID0gc3RhdGU7XG4gICAgdGhpcy5jbGFzcyA9IGNsYXp6O1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgdGhpcy5zZXJ2ZXJOYW1lID0gc2VydmVyTmFtZTtcbiAgICB0aGlzLnByb2NOYW1lID0gcHJvY05hbWU7XG4gICAgdGhpcy5saW5lTnVtYmVyID0gbGluZU51bWJlcjtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRXJyb3JNZXNzYWdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VSUk9SJztcbiAgZGVjbGFyZSBldmVudDogJ2Vycm9yTWVzc2FnZSc7XG5cbiAgbnVtYmVyOiBudW1iZXI7XG4gIHN0YXRlOiBudW1iZXI7XG4gIGNsYXNzOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgc2VydmVyTmFtZTogc3RyaW5nO1xuICBwcm9jTmFtZTogc3RyaW5nO1xuICBsaW5lTnVtYmVyOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoeyBudW1iZXIsIHN0YXRlLCBjbGFzczogY2xhenosIG1lc3NhZ2UsIHNlcnZlck5hbWUsIHByb2NOYW1lLCBsaW5lTnVtYmVyIH06IHsgbnVtYmVyOiBudW1iZXIsIHN0YXRlOiBudW1iZXIsIGNsYXNzOiBudW1iZXIsIG1lc3NhZ2U6IHN0cmluZywgc2VydmVyTmFtZTogc3RyaW5nLCBwcm9jTmFtZTogc3RyaW5nLCBsaW5lTnVtYmVyOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdFUlJPUicsICdlcnJvck1lc3NhZ2UnKTtcblxuICAgIHRoaXMubnVtYmVyID0gbnVtYmVyO1xuICAgIHRoaXMuc3RhdGUgPSBzdGF0ZTtcbiAgICB0aGlzLmNsYXNzID0gY2xheno7XG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTtcbiAgICB0aGlzLnNlcnZlck5hbWUgPSBzZXJ2ZXJOYW1lO1xuICAgIHRoaXMucHJvY05hbWUgPSBwcm9jTmFtZTtcbiAgICB0aGlzLmxpbmVOdW1iZXIgPSBsaW5lTnVtYmVyO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBMb2dpbkFja1Rva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdMT0dJTkFDSyc7XG4gIGRlY2xhcmUgZXZlbnQ6ICdsb2dpbmFjayc7XG5cbiAgaW50ZXJmYWNlOiBzdHJpbmc7XG4gIHRkc1ZlcnNpb246IHN0cmluZztcbiAgcHJvZ05hbWU6IHN0cmluZztcbiAgcHJvZ1ZlcnNpb246IHsgbWFqb3I6IG51bWJlciwgbWlub3I6IG51bWJlciwgYnVpbGROdW1IaTogbnVtYmVyLCBidWlsZE51bUxvdzogbnVtYmVyIH07XG5cbiAgY29uc3RydWN0b3IoeyBpbnRlcmZhY2U6IGludGVyZmF6ZSwgdGRzVmVyc2lvbiwgcHJvZ05hbWUsIHByb2dWZXJzaW9uIH06IHsgaW50ZXJmYWNlOiBMb2dpbkFja1Rva2VuWydpbnRlcmZhY2UnXSwgdGRzVmVyc2lvbjogTG9naW5BY2tUb2tlblsndGRzVmVyc2lvbiddLCBwcm9nTmFtZTogTG9naW5BY2tUb2tlblsncHJvZ05hbWUnXSwgcHJvZ1ZlcnNpb246IExvZ2luQWNrVG9rZW5bJ3Byb2dWZXJzaW9uJ10gfSkge1xuICAgIHN1cGVyKCdMT0dJTkFDSycsICdsb2dpbmFjaycpO1xuXG4gICAgdGhpcy5pbnRlcmZhY2UgPSBpbnRlcmZhemU7XG4gICAgdGhpcy50ZHNWZXJzaW9uID0gdGRzVmVyc2lvbjtcbiAgICB0aGlzLnByb2dOYW1lID0gcHJvZ05hbWU7XG4gICAgdGhpcy5wcm9nVmVyc2lvbiA9IHByb2dWZXJzaW9uO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOQkNSb3dUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnTkJDUk9XJztcbiAgZGVjbGFyZSBldmVudDogJ3Jvdyc7XG5cbiAgY29sdW1uczogYW55O1xuXG4gIGNvbnN0cnVjdG9yKGNvbHVtbnM6IGFueSkge1xuICAgIHN1cGVyKCdOQkNST1cnLCAncm93Jyk7XG5cbiAgICB0aGlzLmNvbHVtbnMgPSBjb2x1bW5zO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBPcmRlclRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdPUkRFUic7XG4gIGRlY2xhcmUgZXZlbnQ6ICdvcmRlcic7XG5cbiAgb3JkZXJDb2x1bW5zOiBudW1iZXJbXTtcblxuICBjb25zdHJ1Y3RvcihvcmRlckNvbHVtbnM6IG51bWJlcltdKSB7XG4gICAgc3VwZXIoJ09SREVSJywgJ29yZGVyJyk7XG5cbiAgICB0aGlzLm9yZGVyQ29sdW1ucyA9IG9yZGVyQ29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUmV0dXJuU3RhdHVzVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ1JFVFVSTlNUQVRVUyc7XG4gIGRlY2xhcmUgZXZlbnQ6ICdyZXR1cm5TdGF0dXMnO1xuXG4gIHZhbHVlOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IG51bWJlcikge1xuICAgIHN1cGVyKCdSRVRVUk5TVEFUVVMnLCAncmV0dXJuU3RhdHVzJyk7XG5cbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJldHVyblZhbHVlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ1JFVFVSTlZBTFVFJztcbiAgZGVjbGFyZSBldmVudDogJ3JldHVyblZhbHVlJztcblxuICBwYXJhbU9yZGluYWw6IG51bWJlcjtcbiAgcGFyYW1OYW1lOiBzdHJpbmc7XG4gIG1ldGFkYXRhOiBNZXRhZGF0YTtcbiAgdmFsdWU6IHVua25vd247XG5cbiAgY29uc3RydWN0b3IoeyBwYXJhbU9yZGluYWwsIHBhcmFtTmFtZSwgbWV0YWRhdGEsIHZhbHVlIH06IHsgcGFyYW1PcmRpbmFsOiBudW1iZXIsIHBhcmFtTmFtZTogc3RyaW5nLCBtZXRhZGF0YTogTWV0YWRhdGEsIHZhbHVlOiB1bmtub3duIH0pIHtcbiAgICBzdXBlcignUkVUVVJOVkFMVUUnLCAncmV0dXJuVmFsdWUnKTtcblxuICAgIHRoaXMucGFyYW1PcmRpbmFsID0gcGFyYW1PcmRpbmFsO1xuICAgIHRoaXMucGFyYW1OYW1lID0gcGFyYW1OYW1lO1xuICAgIHRoaXMubWV0YWRhdGEgPSBtZXRhZGF0YTtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJvd1Rva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdST1cnO1xuICBkZWNsYXJlIGV2ZW50OiAncm93JztcblxuICBjb2x1bW5zOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoY29sdW1uczogYW55KSB7XG4gICAgc3VwZXIoJ1JPVycsICdyb3cnKTtcblxuICAgIHRoaXMuY29sdW1ucyA9IGNvbHVtbnM7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNTUElUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnU1NQSUNIQUxMRU5HRSc7XG4gIGRlY2xhcmUgZXZlbnQ6ICdzc3BpY2hhbGxlbmdlJztcblxuICBudGxtcGFja2V0OiBhbnk7XG4gIG50bG1wYWNrZXRCdWZmZXI6IEJ1ZmZlcjtcblxuICBjb25zdHJ1Y3RvcihudGxtcGFja2V0OiBhbnksIG50bG1wYWNrZXRCdWZmZXI6IEJ1ZmZlcikge1xuICAgIHN1cGVyKCdTU1BJQ0hBTExFTkdFJywgJ3NzcGljaGFsbGVuZ2UnKTtcblxuICAgIHRoaXMubnRsbXBhY2tldCA9IG50bG1wYWNrZXQ7XG4gICAgdGhpcy5udGxtcGFja2V0QnVmZmVyID0gbnRsbXBhY2tldEJ1ZmZlcjtcbiAgfVxufVxuIl19
|
|
495
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi90b2tlbi50cyJdLCJuYW1lcyI6WyJUWVBFIiwiQUxUTUVUQURBVEEiLCJBTFRST1ciLCJDT0xNRVRBREFUQSIsIkNPTElORk8iLCJET05FIiwiRE9ORVBST0MiLCJET05FSU5QUk9DIiwiRU5WQ0hBTkdFIiwiRVJST1IiLCJGRUFUVVJFRVhUQUNLIiwiRkVEQVVUSElORk8iLCJJTkZPIiwiTE9HSU5BQ0siLCJOQkNST1ciLCJPRkZTRVQiLCJPUkRFUiIsIlJFVFVSTlNUQVRVUyIsIlJFVFVSTlZBTFVFIiwiUk9XIiwiU1NQSSIsIlRBQk5BTUUiLCJUb2tlbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsImhhbmRsZXJOYW1lIiwiQ29sTWV0YWRhdGFUb2tlbiIsImNvbHVtbnMiLCJEb25lVG9rZW4iLCJtb3JlIiwic3FsRXJyb3IiLCJhdHRlbnRpb24iLCJzZXJ2ZXJFcnJvciIsInJvd0NvdW50IiwiY3VyQ21kIiwiRG9uZUluUHJvY1Rva2VuIiwiRG9uZVByb2NUb2tlbiIsIkRhdGFiYXNlRW52Q2hhbmdlVG9rZW4iLCJuZXdWYWx1ZSIsIm9sZFZhbHVlIiwidHlwZSIsIkxhbmd1YWdlRW52Q2hhbmdlVG9rZW4iLCJDaGFyc2V0RW52Q2hhbmdlVG9rZW4iLCJQYWNrZXRTaXplRW52Q2hhbmdlVG9rZW4iLCJCZWdpblRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4iLCJDb21taXRUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiUm9sbGJhY2tUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiRGF0YWJhc2VNaXJyb3JpbmdQYXJ0bmVyRW52Q2hhbmdlVG9rZW4iLCJSZXNldENvbm5lY3Rpb25FbnZDaGFuZ2VUb2tlbiIsIkNvbGxhdGlvbkNoYW5nZVRva2VuIiwiUm91dGluZ0VudkNoYW5nZVRva2VuIiwiRmVhdHVyZUV4dEFja1Rva2VuIiwiZmVkQXV0aCIsInV0ZjhTdXBwb3J0IiwiRmVkQXV0aEluZm9Ub2tlbiIsInNwbiIsInN0c3VybCIsIkluZm9NZXNzYWdlVG9rZW4iLCJudW1iZXIiLCJzdGF0ZSIsImNsYXNzIiwiY2xhenoiLCJtZXNzYWdlIiwic2VydmVyTmFtZSIsInByb2NOYW1lIiwibGluZU51bWJlciIsIkVycm9yTWVzc2FnZVRva2VuIiwiTG9naW5BY2tUb2tlbiIsImludGVyZmFjZSIsImludGVyZmF6ZSIsInRkc1ZlcnNpb24iLCJwcm9nTmFtZSIsInByb2dWZXJzaW9uIiwiTkJDUm93VG9rZW4iLCJPcmRlclRva2VuIiwib3JkZXJDb2x1bW5zIiwiUmV0dXJuU3RhdHVzVG9rZW4iLCJ2YWx1ZSIsIlJldHVyblZhbHVlVG9rZW4iLCJwYXJhbU9yZGluYWwiLCJwYXJhbU5hbWUiLCJtZXRhZGF0YSIsIlJvd1Rva2VuIiwiU1NQSVRva2VuIiwibnRsbXBhY2tldCIsIm50bG1wYWNrZXRCdWZmZXIiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUtPLE1BQU1BLElBQUksR0FBRztBQUNsQkMsRUFBQUEsV0FBVyxFQUFFLElBREs7QUFFbEJDLEVBQUFBLE1BQU0sRUFBRSxJQUZVO0FBR2xCQyxFQUFBQSxXQUFXLEVBQUUsSUFISztBQUlsQkMsRUFBQUEsT0FBTyxFQUFFLElBSlM7QUFLbEJDLEVBQUFBLElBQUksRUFBRSxJQUxZO0FBTWxCQyxFQUFBQSxRQUFRLEVBQUUsSUFOUTtBQU9sQkMsRUFBQUEsVUFBVSxFQUFFLElBUE07QUFRbEJDLEVBQUFBLFNBQVMsRUFBRSxJQVJPO0FBU2xCQyxFQUFBQSxLQUFLLEVBQUUsSUFUVztBQVVsQkMsRUFBQUEsYUFBYSxFQUFFLElBVkc7QUFXbEJDLEVBQUFBLFdBQVcsRUFBRSxJQVhLO0FBWWxCQyxFQUFBQSxJQUFJLEVBQUUsSUFaWTtBQWFsQkMsRUFBQUEsUUFBUSxFQUFFLElBYlE7QUFjbEJDLEVBQUFBLE1BQU0sRUFBRSxJQWRVO0FBZWxCQyxFQUFBQSxNQUFNLEVBQUUsSUFmVTtBQWdCbEJDLEVBQUFBLEtBQUssRUFBRSxJQWhCVztBQWlCbEJDLEVBQUFBLFlBQVksRUFBRSxJ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QUNyRCxVQUFNLGVBQU4sRUFBdUIsUUFBdkI7QUFEcUQsU0FIdkRELFVBR3VEO0FBQUEsU0FGdkRDLGdCQUV1RDtBQUdyRCxTQUFLRCxVQUFMLEdBQWtCQSxVQUFsQjtBQUNBLFNBQUtDLGdCQUFMLEdBQXdCQSxnQkFBeEI7QUFDRDs7QUFaa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsYXRpb24gfSBmcm9tICcuLi9jb2xsYXRpb24nO1xuaW1wb3J0IHsgTWV0YWRhdGEgfSBmcm9tICcuLi9tZXRhZGF0YS1wYXJzZXInO1xuaW1wb3J0IHsgQ29sdW1uTWV0YWRhdGEgfSBmcm9tICcuL2NvbG1ldGFkYXRhLXRva2VuLXBhcnNlcic7XG5pbXBvcnQgeyBUb2tlbkhhbmRsZXIgfSBmcm9tICcuL2hhbmRsZXInO1xuXG5leHBvcnQgY29uc3QgVFlQRSA9IHtcbiAgQUxUTUVUQURBVEE6IDB4ODgsXG4gIEFMVFJPVzogMHhEMyxcbiAgQ09MTUVUQURBVEE6IDB4ODEsXG4gIENPTElORk86IDB4QTUsXG4gIERPTkU6IDB4RkQsXG4gIERPTkVQUk9DOiAweEZFLFxuICBET05FSU5QUk9DOiAweEZGLFxuICBFTlZDSEFOR0U6IDB4RTMsXG4gIEVSUk9SOiAweEFBLFxuICBGRUFUVVJFRVhUQUNLOiAweEFFLFxuICBGRURBVVRISU5GTzogMHhFRSxcbiAgSU5GTzogMHhBQixcbiAgTE9HSU5BQ0s6IDB4QUQsXG4gIE5CQ1JPVzogMHhEMixcbiAgT0ZGU0VUOiAweDc4LFxuICBPUkRFUjogMHhBOSxcbiAgUkVUVVJOU1RBVFVTOiAweDc5LFxuICBSRVRVUk5WQUxVRTogMHhBQyxcbiAgUk9XOiAweEQxLFxuICBTU1BJOiAweEVELFxuICBUQUJOQU1FOiAweEE0XG59O1xuXG50eXBlIEhhbmRsZXJOYW1lID0ga2V5b2YgVG9rZW5IYW5kbGVyO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVG9rZW4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGhhbmRsZXJOYW1lOiBrZXlvZiBUb2tlbkhhbmRsZXI7XG5cbiAgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBoYW5kbGVyTmFtZTogSGFuZGxlck5hbWUpIHtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMuaGFuZGxlck5hbWUgPSBoYW5kbGVyTmFtZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29sTWV0YWRhdGFUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnQ09MTUVUQURBVEEnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Db2xNZXRhZGF0YSc7XG5cbiAgY29sdW1uczogQ29sdW1uTWV0YWRhdGFbXVxuXG4gIGNvbnN0cnVjdG9yKGNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10pIHtcbiAgICBzdXBlcignQ09MTUVUQURBVEEnLCAnb25Db2xNZXRhZGF0YScpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdET05FJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uRG9uZSc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FJywgJ29uRG9uZScpO1xuXG4gICAgdGhpcy5tb3JlID0gbW9yZTtcbiAgICB0aGlzLnNxbEVycm9yID0gc3FsRXJyb3I7XG4gICAgdGhpcy5hdHRlbnRpb24gPSBhdHRlbnRpb247XG4gICAgdGhpcy5zZXJ2ZXJFcnJvciA9IHNlcnZlckVycm9yO1xuICAgIHRoaXMucm93Q291bnQgPSByb3dDb3VudDtcbiAgICB0aGlzLmN1ckNtZCA9IGN1ckNtZDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZUluUHJvY1Rva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdET05FSU5QUk9DJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uRG9uZUluUHJvYyc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FSU5QUk9DJywgJ29uRG9uZUluUHJvYycpO1xuXG4gICAgdGhpcy5tb3JlID0gbW9yZTtcbiAgICB0aGlzLnNxbEVycm9yID0gc3FsRXJyb3I7XG4gICAgdGhpcy5hdHRlbnRpb24gPSBhdHRlbnRpb247XG4gICAgdGhpcy5zZXJ2ZXJFcnJvciA9IHNlcnZlckVycm9yO1xuICAgIHRoaXMucm93Q291bnQgPSByb3dDb3VudDtcbiAgICB0aGlzLmN1ckNtZCA9IGN1ckNtZDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZVByb2NUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRE9ORVBST0MnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Eb25lUHJvYyc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FUFJPQycsICdvbkRvbmVQcm9jJyk7XG5cbiAgICB0aGlzLm1vcmUgPSBtb3JlO1xuICAgIHRoaXMuc3FsRXJyb3IgPSBzcWxFcnJvcjtcbiAgICB0aGlzLmF0dGVudGlvbiA9IGF0dGVudGlvbjtcbiAgICB0aGlzLnNlcnZlckVycm9yID0gc2VydmVyRXJyb3I7XG4gICAgdGhpcy5yb3dDb3VudCA9IHJvd0NvdW50O1xuICAgIHRoaXMuY3VyQ21kID0gY3VyQ21kO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhYmFzZUVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25EYXRhYmFzZUNoYW5nZSc7XG5cbiAgdHlwZTogJ0RBVEFCQVNFJztcbiAgbmV3VmFsdWU6IHN0cmluZztcbiAgb2xkVmFsdWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogc3RyaW5nLCBvbGRWYWx1ZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvbkRhdGFiYXNlQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnREFUQUJBU0UnO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExhbmd1YWdlRW52Q2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkxhbmd1YWdlQ2hhbmdlJztcblxuICB0eXBlOiAnTEFOR1VBR0UnO1xuICBuZXdWYWx1ZTogc3RyaW5nO1xuICBvbGRWYWx1ZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBzdHJpbmcsIG9sZFZhbHVlOiBzdHJpbmcpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uTGFuZ3VhZ2VDaGFuZ2UnKTtcblxuICAgIHRoaXMudHlwZSA9ICdMQU5HVUFHRSc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ2hhcnNldEVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25DaGFyc2V0Q2hhbmdlJztcblxuICB0eXBlOiAnQ0hBUlNFVCc7XG4gIG5ld1ZhbHVlOiBzdHJpbmc7XG4gIG9sZFZhbHVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAnb25DaGFyc2V0Q2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnQ0hBUlNFVCc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFja2V0U2l6ZUVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25QYWNrZXRTaXplQ2hhbmdlJztcblxuICB0eXBlOiAnUEFDS0VUX1NJWkUnO1xuICBuZXdWYWx1ZTogbnVtYmVyO1xuICBvbGRWYWx1ZTogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBudW1iZXIsIG9sZFZhbHVlOiBudW1iZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uUGFja2V0U2l6ZUNoYW5nZScpO1xuXG4gICAgdGhpcy50eXBlID0gJ1BBQ0tFVF9TSVpFJztcbiAgICB0aGlzLm5ld1ZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbGRWYWx1ZSA9IG9sZFZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCZWdpblRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkJlZ2luVHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdCRUdJTl9UWE4nO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uQmVnaW5UcmFuc2FjdGlvbicpO1xuXG4gICAgdGhpcy50eXBlID0gJ0JFR0lOX1RYTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29tbWl0VHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uQ29tbWl0VHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdDT01NSVRfVFhOJztcbiAgbmV3VmFsdWU6IEJ1ZmZlcjtcbiAgb2xkVmFsdWU6IEJ1ZmZlcjtcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogQnVmZmVyLCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvbkNvbW1pdFRyYW5zYWN0aW9uJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnQ09NTUlUX1RYTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUm9sbGJhY2tUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Sb2xsYmFja1RyYW5zYWN0aW9uJztcblxuICB0eXBlOiAnUk9MTEJBQ0tfVFhOJztcbiAgb2xkVmFsdWU6IEJ1ZmZlcjtcbiAgbmV3VmFsdWU6IEJ1ZmZlcjtcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogQnVmZmVyLCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvblJvbGxiYWNrVHJhbnNhY3Rpb24nKTtcblxuICAgIHRoaXMudHlwZSA9ICdST0xMQkFDS19UWE4nO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERhdGFiYXNlTWlycm9yaW5nUGFydG5lckVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25EYXRhYmFzZU1pcnJvcmluZ1BhcnRuZXInO1xuXG4gIHR5cGU6ICdEQVRBQkFTRV9NSVJST1JJTkdfUEFSVE5FUic7XG4gIG9sZFZhbHVlOiBzdHJpbmc7XG4gIG5ld1ZhbHVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAnb25EYXRhYmFzZU1pcnJvcmluZ1BhcnRuZXInKTtcblxuICAgIHRoaXMudHlwZSA9ICdEQVRBQkFTRV9NSVJST1JJTkdfUEFSVE5FUic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUmVzZXRDb25uZWN0aW9uRW52Q2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvblJlc2V0Q29ubmVjdGlvbic7XG5cbiAgdHlwZTogJ1JFU0VUX0NPTk5FQ1RJT04nO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uUmVzZXRDb25uZWN0aW9uJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnUkVTRVRfQ09OTkVDVElPTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29sbGF0aW9uQ2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvblNxbENvbGxhdGlvbkNoYW5nZSc7XG5cbiAgdHlwZTogJ1NRTF9DT0xMQVRJT04nO1xuICBvbGRWYWx1ZTogQ29sbGF0aW9uIHwgdW5kZWZpbmVkO1xuICBuZXdWYWx1ZTogQ29sbGF0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBDb2xsYXRpb24gfCB1bmRlZmluZWQsIG9sZFZhbHVlOiBDb2xsYXRpb24gfCB1bmRlZmluZWQpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uU3FsQ29sbGF0aW9uQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnU1FMX0NPTExBVElPTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUm91dGluZ0VudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Sb3V0aW5nQ2hhbmdlJztcblxuICB0eXBlOiAnUk9VVElOR19DSEFOR0UnO1xuICBuZXdWYWx1ZTogeyBwcm90b2NvbDogbnVtYmVyLCBwb3J0OiBudW1iZXIsIHNlcnZlcjogc3RyaW5nIH07XG4gIG9sZFZhbHVlOiBCdWZmZXI7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHsgcHJvdG9jb2w6IG51bWJlciwgcG9ydDogbnVtYmVyLCBzZXJ2ZXI6IHN0cmluZyB9LCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvblJvdXRpbmdDaGFuZ2UnKTtcblxuICAgIHRoaXMudHlwZSA9ICdST1VUSU5HX0NIQU5HRSc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRmVhdHVyZUV4dEFja1Rva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdGRUFUVVJFRVhUQUNLJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uRmVhdHVyZUV4dEFjayc7XG5cbiAgZmVkQXV0aDogQnVmZmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBWYWx1ZSBvZiBVVEY4X1NVUFBPUlQgYWNrbm93bGVkZ2VtZW50LlxuICAgKlxuICAgKiB1bmRlZmluZWQgd2hlbiBVVEY4X1NVUFBPUlQgbm90IGluY2x1ZGVkIGluIHRva2VuLiAqL1xuICB1dGY4U3VwcG9ydDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihmZWRBdXRoOiBCdWZmZXIgfCB1bmRlZmluZWQsIHV0ZjhTdXBwb3J0OiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgc3VwZXIoJ0ZFQVRVUkVFWFRBQ0snLCAnb25GZWF0dXJlRXh0QWNrJyk7XG5cbiAgICB0aGlzLmZlZEF1dGggPSBmZWRBdXRoO1xuICAgIHRoaXMudXRmOFN1cHBvcnQgPSB1dGY4U3VwcG9ydDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRmVkQXV0aEluZm9Ub2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRkVEQVVUSElORk8nO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25GZWRBdXRoSW5mbyc7XG5cbiAgc3BuOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHN0c3VybDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKHNwbjogc3RyaW5nIHwgdW5kZWZpbmVkLCBzdHN1cmw6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHN1cGVyKCdGRURBVVRISU5GTycsICdvbkZlZEF1dGhJbmZvJyk7XG5cbiAgICB0aGlzLnNwbiA9IHNwbjtcbiAgICB0aGlzLnN0c3VybCA9IHN0c3VybDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW5mb01lc3NhZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnSU5GTyc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkluZm9NZXNzYWdlJztcblxuICBudW1iZXI6IG51bWJlcjtcbiAgc3RhdGU6IG51bWJlcjtcbiAgY2xhc3M6IG51bWJlcjtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBzZXJ2ZXJOYW1lOiBzdHJpbmc7XG4gIHByb2NOYW1lOiBzdHJpbmc7XG4gIGxpbmVOdW1iZXI6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcih7IG51bWJlciwgc3RhdGUsIGNsYXNzOiBjbGF6eiwgbWVzc2FnZSwgc2VydmVyTmFtZSwgcHJvY05hbWUsIGxpbmVOdW1iZXIgfTogeyBudW1iZXI6IG51bWJlciwgc3RhdGU6IG51bWJlciwgY2xhc3M6IG51bWJlciwgbWVzc2FnZTogc3RyaW5nLCBzZXJ2ZXJOYW1lOiBzdHJpbmcsIHByb2NOYW1lOiBzdHJpbmcsIGxpbmVOdW1iZXI6IG51bWJlciB9KSB7XG4gICAgc3VwZXIoJ0lORk8nLCAnb25JbmZvTWVzc2FnZScpO1xuXG4gICAgdGhpcy5udW1iZXIgPSBudW1iZXI7XG4gICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuY2xhc3MgPSBjbGF6ejtcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIHRoaXMuc2VydmVyTmFtZSA9IHNlcnZlck5hbWU7XG4gICAgdGhpcy5wcm9jTmFtZSA9IHByb2NOYW1lO1xuICAgIHRoaXMubGluZU51bWJlciA9IGxpbmVOdW1iZXI7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEVycm9yTWVzc2FnZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFUlJPUic7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkVycm9yTWVzc2FnZSc7XG5cbiAgbnVtYmVyOiBudW1iZXI7XG4gIHN0YXRlOiBudW1iZXI7XG4gIGNsYXNzOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgc2VydmVyTmFtZTogc3RyaW5nO1xuICBwcm9jTmFtZTogc3RyaW5nO1xuICBsaW5lTnVtYmVyOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoeyBudW1iZXIsIHN0YXRlLCBjbGFzczogY2xhenosIG1lc3NhZ2UsIHNlcnZlck5hbWUsIHByb2NOYW1lLCBsaW5lTnVtYmVyIH06IHsgbnVtYmVyOiBudW1iZXIsIHN0YXRlOiBudW1iZXIsIGNsYXNzOiBudW1iZXIsIG1lc3NhZ2U6IHN0cmluZywgc2VydmVyTmFtZTogc3RyaW5nLCBwcm9jTmFtZTogc3RyaW5nLCBsaW5lTnVtYmVyOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdFUlJPUicsICdvbkVycm9yTWVzc2FnZScpO1xuXG4gICAgdGhpcy5udW1iZXIgPSBudW1iZXI7XG4gICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuY2xhc3MgPSBjbGF6ejtcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIHRoaXMuc2VydmVyTmFtZSA9IHNlcnZlck5hbWU7XG4gICAgdGhpcy5wcm9jTmFtZSA9IHByb2NOYW1lO1xuICAgIHRoaXMubGluZU51bWJlciA9IGxpbmVOdW1iZXI7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExvZ2luQWNrVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0xPR0lOQUNLJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uTG9naW5BY2snO1xuXG4gIGludGVyZmFjZTogc3RyaW5nO1xuICB0ZHNWZXJzaW9uOiBzdHJpbmc7XG4gIHByb2dOYW1lOiBzdHJpbmc7XG4gIHByb2dWZXJzaW9uOiB7IG1ham9yOiBudW1iZXIsIG1pbm9yOiBudW1iZXIsIGJ1aWxkTnVtSGk6IG51bWJlciwgYnVpbGROdW1Mb3c6IG51bWJlciB9O1xuXG4gIGNvbnN0cnVjdG9yKHsgaW50ZXJmYWNlOiBpbnRlcmZhemUsIHRkc1ZlcnNpb24sIHByb2dOYW1lLCBwcm9nVmVyc2lvbiB9OiB7IGludGVyZmFjZTogTG9naW5BY2tUb2tlblsnaW50ZXJmYWNlJ10sIHRkc1ZlcnNpb246IExvZ2luQWNrVG9rZW5bJ3Rkc1ZlcnNpb24nXSwgcHJvZ05hbWU6IExvZ2luQWNrVG9rZW5bJ3Byb2dOYW1lJ10sIHByb2dWZXJzaW9uOiBMb2dpbkFja1Rva2VuWydwcm9nVmVyc2lvbiddIH0pIHtcbiAgICBzdXBlcignTE9HSU5BQ0snLCAnb25Mb2dpbkFjaycpO1xuXG4gICAgdGhpcy5pbnRlcmZhY2UgPSBpbnRlcmZhemU7XG4gICAgdGhpcy50ZHNWZXJzaW9uID0gdGRzVmVyc2lvbjtcbiAgICB0aGlzLnByb2dOYW1lID0gcHJvZ05hbWU7XG4gICAgdGhpcy5wcm9nVmVyc2lvbiA9IHByb2dWZXJzaW9uO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOQkNSb3dUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnTkJDUk9XJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUm93JztcblxuICBjb2x1bW5zOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoY29sdW1uczogYW55KSB7XG4gICAgc3VwZXIoJ05CQ1JPVycsICdvblJvdycpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgT3JkZXJUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnT1JERVInO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25PcmRlcic7XG5cbiAgb3JkZXJDb2x1bW5zOiBudW1iZXJbXTtcblxuICBjb25zdHJ1Y3RvcihvcmRlckNvbHVtbnM6IG51bWJlcltdKSB7XG4gICAgc3VwZXIoJ09SREVSJywgJ29uT3JkZXInKTtcblxuICAgIHRoaXMub3JkZXJDb2x1bW5zID0gb3JkZXJDb2x1bW5zO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSZXR1cm5TdGF0dXNUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnUkVUVVJOU1RBVFVTJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUmV0dXJuU3RhdHVzJztcblxuICB2YWx1ZTogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHZhbHVlOiBudW1iZXIpIHtcbiAgICBzdXBlcignUkVUVVJOU1RBVFVTJywgJ29uUmV0dXJuU3RhdHVzJyk7XG5cbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJldHVyblZhbHVlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ1JFVFVSTlZBTFVFJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUmV0dXJuVmFsdWUnO1xuXG4gIHBhcmFtT3JkaW5hbDogbnVtYmVyO1xuICBwYXJhbU5hbWU6IHN0cmluZztcbiAgbWV0YWRhdGE6IE1ldGFkYXRhO1xuICB2YWx1ZTogdW5rbm93bjtcblxuICBjb25zdHJ1Y3Rvcih7IHBhcmFtT3JkaW5hbCwgcGFyYW1OYW1lLCBtZXRhZGF0YSwgdmFsdWUgfTogeyBwYXJhbU9yZGluYWw6IG51bWJlciwgcGFyYW1OYW1lOiBzdHJpbmcsIG1ldGFkYXRhOiBNZXRhZGF0YSwgdmFsdWU6IHVua25vd24gfSkge1xuICAgIHN1cGVyKCdSRVRVUk5WQUxVRScsICdvblJldHVyblZhbHVlJyk7XG5cbiAgICB0aGlzLnBhcmFtT3JkaW5hbCA9IHBhcmFtT3JkaW5hbDtcbiAgICB0aGlzLnBhcmFtTmFtZSA9IHBhcmFtTmFtZTtcbiAgICB0aGlzLm1ldGFkYXRhID0gbWV0YWRhdGE7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSb3dUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnUk9XJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUm93JztcblxuICBjb2x1bW5zOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoY29sdW1uczogYW55KSB7XG4gICAgc3VwZXIoJ1JPVycsICdvblJvdycpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU1NQSVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdTU1BJQ0hBTExFTkdFJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uU1NQSSc7XG5cbiAgbnRsbXBhY2tldDogYW55O1xuICBudGxtcGFja2V0QnVmZmVyOiBCdWZmZXI7XG5cbiAgY29uc3RydWN0b3IobnRsbXBhY2tldDogYW55LCBudGxtcGFja2V0QnVmZmVyOiBCdWZmZXIpIHtcbiAgICBzdXBlcignU1NQSUNIQUxMRU5HRScsICdvblNTUEknKTtcblxuICAgIHRoaXMubnRsbXBhY2tldCA9IG50bG1wYWNrZXQ7XG4gICAgdGhpcy5udGxtcGFja2V0QnVmZmVyID0gbnRsbXBhY2tldEJ1ZmZlcjtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"homepage": "https://github.com/tediousjs/tedious",
|
|
28
28
|
"bugs": "https://github.com/tediousjs/tedious/issues",
|
|
29
29
|
"license": "MIT",
|
|
30
|
-
"version": "
|
|
30
|
+
"version": "14.1.0",
|
|
31
31
|
"main": "./lib/tedious.js",
|
|
32
32
|
"repository": {
|
|
33
33
|
"type": "git",
|
|
@@ -44,7 +44,6 @@
|
|
|
44
44
|
"@azure/keyvault-keys": "^4.3.0",
|
|
45
45
|
"@js-joda/core": "^4.0.0",
|
|
46
46
|
"bl": "^5.0.0",
|
|
47
|
-
"depd": "^2.0.0",
|
|
48
47
|
"iconv-lite": "^0.6.3",
|
|
49
48
|
"jsbi": "^3.2.1",
|
|
50
49
|
"native-duplexpair": "^1.0.0",
|