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.
@@ -30,11 +30,11 @@ const TYPE = {
30
30
  exports.TYPE = TYPE;
31
31
 
32
32
  class Token {
33
- constructor(name, event) {
33
+ constructor(name, handlerName) {
34
34
  this.name = void 0;
35
- this.event = void 0;
35
+ this.handlerName = void 0;
36
36
  this.name = name;
37
- this.event = event;
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', 'columnMetadata');
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', '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', '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', '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', 'databaseChange');
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', 'languageChange');
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', 'charsetChange');
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', 'packetSizeChange');
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', 'beginTransaction');
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', 'commitTransaction');
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', 'rollbackTransaction');
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', 'partnerNode');
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', 'resetConnection');
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', 'sqlCollationChange');
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', 'routingChange');
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', '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', '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', 'infoMessage');
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', 'errorMessage');
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', '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', 'row');
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', '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', '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', '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', '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', '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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi90b2tlbi50cyJdLCJuYW1lcyI6WyJUWVBFIiwiQUxUTUVUQURBVEEiLCJBTFRST1ciLCJDT0xNRVRBREFUQSIsIkNPTElORk8iLCJET05FIiwiRE9ORVBST0MiLCJET05FSU5QUk9DIiwiRU5WQ0hBTkdFIiwiRVJST1IiLCJGRUFUVVJFRVhUQUNLIiwiRkVEQVVUSElORk8iLCJJTkZPIiwiTE9HSU5BQ0siLCJOQkNST1ciLCJPRkZTRVQiLCJPUkRFUiIsIlJFVFVSTlNUQVRVUyIsIlJFVFVSTlZBTFVFIiwiUk9XIiwiU1NQSSIsIlRBQk5BTUUiLCJUb2tlbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsImhhbmRsZXJOYW1lIiwiQ29sTWV0YWRhdGFUb2tlbiIsImNvbHVtbnMiLCJEb25lVG9rZW4iLCJtb3JlIiwic3FsRXJyb3IiLCJhdHRlbnRpb24iLCJzZXJ2ZXJFcnJvciIsInJvd0NvdW50IiwiY3VyQ21kIiwiRG9uZUluUHJvY1Rva2VuIiwiRG9uZVByb2NUb2tlbiIsIkRhdGFiYXNlRW52Q2hhbmdlVG9rZW4iLCJuZXdWYWx1ZSIsIm9sZFZhbHVlIiwidHlwZSIsIkxhbmd1YWdlRW52Q2hhbmdlVG9rZW4iLCJDaGFyc2V0RW52Q2hhbmdlVG9rZW4iLCJQYWNrZXRTaXplRW52Q2hhbmdlVG9rZW4iLCJCZWdpblRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4iLCJDb21taXRUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiUm9sbGJhY2tUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiRGF0YWJhc2VNaXJyb3JpbmdQYXJ0bmVyRW52Q2hhbmdlVG9rZW4iLCJSZXNldENvbm5lY3Rpb25FbnZDaGFuZ2VUb2tlbiIsIkNvbGxhdGlvbkNoYW5nZVRva2VuIiwiUm91dGluZ0VudkNoYW5nZVRva2VuIiwiRmVhdHVyZUV4dEFja1Rva2VuIiwiZmVkQXV0aCIsInV0ZjhTdXBwb3J0IiwiRmVkQXV0aEluZm9Ub2tlbiIsInNwbiIsInN0c3VybCIsIkluZm9NZXNzYWdlVG9rZW4iLCJudW1iZXIiLCJzdGF0ZSIsImNsYXNzIiwiY2xhenoiLCJtZXNzYWdlIiwic2VydmVyTmFtZSIsInByb2NOYW1lIiwibGluZU51bWJlciIsIkVycm9yTWVzc2FnZVRva2VuIiwiTG9naW5BY2tUb2tlbiIsImludGVyZmFjZSIsImludGVyZmF6ZSIsInRkc1ZlcnNpb24iLCJwcm9nTmFtZSIsInByb2dWZXJzaW9uIiwiTkJDUm93VG9rZW4iLCJPcmRlclRva2VuIiwib3JkZXJDb2x1bW5zIiwiUmV0dXJuU3RhdHVzVG9rZW4iLCJ2YWx1ZSIsIlJldHVyblZhbHVlVG9rZW4iLCJwYXJhbU9yZGluYWwiLCJwYXJhbU5hbWUiLCJtZXRhZGF0YSIsIlJvd1Rva2VuIiwiU1NQSVRva2VuIiwibnRsbXBhY2tldCIsIm50bG1wYWNrZXRCdWZmZXIiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUtPLE1BQU1BLElBQUksR0FBRztBQUNsQkMsRUFBQUEsV0FBVyxFQUFFLElBREs7QUFFbEJDLEVBQUFBLE1BQU0sRUFBRSxJQUZVO0FBR2xCQyxFQUFBQSxXQUFXLEVBQUUsSUFISztBQUlsQkMsRUFBQUEsT0FBTyxFQUFFLElBSlM7QUFLbEJDLEVBQUFBLElBQUksRUFBRSxJQUxZO0FBTWxCQyxFQUFBQSxRQUFRLEVBQUUsSUFOUTtBQU9sQkMsRUFBQUEsVUFBVSxFQUFFLElBUE07QUFRbEJDLEVBQUFBLFNBQVMsRUFBRSxJQVJPO0FBU2xCQyxFQUFBQSxLQUFLLEVBQUUsSUFUVztBQVVsQkMsRUFBQUEsYUFBYSxFQUFFLElBVkc7QUFXbEJDLEVBQUFBLFdBQVcsRUFBRSxJQVhLO0FBWWxCQyxFQUFBQSxJQUFJLEVBQUUsSUFaWTtBQWFsQkMsRUFBQUEsUUFBUSxFQUFFLElBYlE7QUFjbEJDLEVBQUFBLE1BQU0sRUFBRSxJQWRVO0FBZWxCQyxFQUFBQSxNQUFNLEVBQUUsSUFmVTtBQWdCbEJDLEVBQUFBLEtBQUssRUFBRSxJQWhCVztBQWlCbEJDLEVBQUFBLFlBQVksRUFBRSxJQWpCSTtBQWtCbEJDLEVBQUFBLFdBQVcsRUFBRSxJQWxCSztBQW1CbEJDLEVBQUFBLEdBQUcsRUFBRSxJQW5CYTtBQW9CbEJDLEVBQUFBLElBQUksRUFBRSxJQXBCWTtBQXFCbEJDLEVBQUFBLE9BQU8sRUFBRTtBQXJCUyxDQUFiOzs7QUEwQkEsTUFBZUMsS0FBZixDQUFxQjtBQUkxQkMsRUFBQUEsV0FBVyxDQUFDQyxJQUFELEVBQWVDLFdBQWYsRUFBeUM7QUFBQSxTQUhwREQsSUFHb0Q7QUFBQSxTQUZwREMsV0FFb0Q7QUFDbEQsU0FBS0QsSUFBTCxHQUFZQSxJQUFaO0FBQ0EsU0FBS0MsV0FBTCxHQUFtQkEsV0FBbkI7QUFDRDs7QUFQeUI7Ozs7QUFVckIsTUFBTUMsZ0JBQU4sU0FBK0JKLEtBQS9CLENBQXFDO0FBTTFDQyxFQUFBQSxXQUFXLENBQUNJLE9BQUQsRUFBNEI7QUFDckMsVUFBTSxhQUFOLEVBQXFCLGVBQXJCO0FBRHFDLFNBRnZDQSxPQUV1QztBQUdyQyxTQUFLQSxPQUFMLEdBQWVBLE9BQWY7QUFDRDs7QUFWeUM7Ozs7QUFhckMsTUFBTUMsU0FBTixTQUF3Qk4sS0FBeEIsQ0FBOEI7QUFXbkNDLEVBQUFBLFdBQVcsQ0FBQztBQUFFTSxJQUFBQSxJQUFGO0FBQVFDLElBQUFBLFFBQVI7QUFBa0JDLElBQUFBLFNBQWxCO0FBQTZCQyxJQUFBQSxXQUE3QjtBQUEwQ0MsSUFBQUEsUUFBMUM7QUFBb0RDLElBQUFBO0FBQXBELEdBQUQsRUFBNkw7QUFDdE0sVUFBTSxNQUFOLEVBQWMsUUFBZDtBQURzTSxTQVB4TUwsSUFPd007QUFBQSxTQU54TUMsUUFNd007QUFBQSxTQUx4TUMsU0FLd007QUFBQSxTQUp4TUMsV0FJd007QUFBQSxTQUh4TUMsUUFHd007QUFBQSxTQUZ4TUMsTUFFd007QUFHdE0sU0FBS0wsSUFBTCxHQUFZQSxJQUFaO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxTQUFMLEdBQWlCQSxTQUFqQjtBQUNBLFNBQUtDLFdBQUwsR0FBbUJBLFdBQW5CO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxNQUFMLEdBQWNBLE1BQWQ7QUFDRDs7QUFwQmtDOzs7O0FBdUI5QixNQUFNQyxlQUFOLFNBQThCYixLQUE5QixDQUFvQztBQVd6Q0MsRUFBQUEsV0FBVyxDQUFDO0FBQUVNLElBQUFBLElBQUY7QUFBUUMsSUFBQUEsUUFBUjtBQUFrQkMsSUFBQUEsU0FBbEI7QUFBNkJDLElBQUFBLFdBQTdCO0FBQTBDQyxJQUFBQSxRQUExQztBQUFvREMsSUFBQUE7QUFBcEQsR0FBRCxFQUE2TDtBQUN0TSxVQUFNLFlBQU4sRUFBb0IsY0FBcEI7QUFEc00sU0FQeE1MLElBT3dNO0FBQUEsU0FOeE1DLFFBTXdNO0FBQUEsU0FMeE1DLFNBS3dNO0FBQUEsU0FKeE1DLFdBSXdNO0FBQUEsU0FIeE1DLFFBR3dNO0FBQUEsU0FGeE1DLE1BRXdNO0FBR3RNLFNBQUtMLElBQUwsR0FBWUEsSUFBWjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsU0FBTCxHQUFpQkEsU0FBakI7QUFDQSxTQUFLQyxXQUFMLEdBQW1CQSxXQUFuQjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsTUFBTCxHQUFjQSxNQUFkO0FBQ0Q7O0FBcEJ3Qzs7OztBQXVCcEMsTUFBTUUsYUFBTixTQUE0QmQsS0FBNUIsQ0FBa0M7QUFXdkNDLEVBQUFBLFdBQVcsQ0FBQztBQUFFTSxJQUFBQSxJQUFGO0FBQVFDLElBQUFBLFFBQVI7QUFBa0JDLElBQUFBLFNBQWxCO0FBQTZCQyxJQUFBQSxXQUE3QjtBQUEwQ0MsSUFBQUEsUUFBMUM7QUFBb0RDLElBQUFBO0FBQXBELEdBQUQsRUFBNkw7QUFDdE0sVUFBTSxVQUFOLEVBQWtCLFlBQWxCO0FBRHNNLFNBUHhNTCxJQU93TTtBQUFBLFNBTnhNQyxRQU13TTtBQUFBLFNBTHhNQyxTQUt3TTtBQUFBLFNBSnhNQyxXQUl3TTtBQUFBLFNBSHhNQyxRQUd3TTtBQUFBLFNBRnhNQyxNQUV3TTtBQUd0TSxTQUFLTCxJQUFMLEdBQVlBLElBQVo7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtDLFNBQUwsR0FBaUJBLFNBQWpCO0FBQ0EsU0FBS0MsV0FBTCxHQUFtQkEsV0FBbkI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtDLE1BQUwsR0FBY0EsTUFBZDtBQUNEOztBQXBCc0M7Ozs7QUF1QmxDLE1BQU1HLHNCQUFOLFNBQXFDZixLQUFyQyxDQUEyQztBQVFoREMsRUFBQUEsV0FBVyxDQUFDZSxRQUFELEVBQW1CQyxRQUFuQixFQUFxQztBQUM5QyxVQUFNLFdBQU4sRUFBbUIsa0JBQW5CO0FBRDhDLFNBSmhEQyxJQUlnRDtBQUFBLFNBSGhERixRQUdnRDtBQUFBLFNBRmhEQyxRQUVnRDtBQUc5QyxTQUFLQyxJQUFMLEdBQVksVUFBWjtBQUNBLFNBQUtGLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDRDs7QUFkK0M7Ozs7QUFpQjNDLE1BQU1FLHNCQUFOLFNBQXFDbkIsS0FBckMsQ0FBMkM7QUFRaERDLEVBQUFBLFdBQVcsQ0FBQ2UsUUFBRCxFQUFtQkMsUUFBbkIsRUFBcUM7QUFDOUMsVUFBTSxXQUFOLEVBQW1CLGtCQUFuQjtBQUQ4QyxTQUpoREMsSUFJZ0Q7QUFBQSxTQUhoREYsUUFHZ0Q7QUFBQSxTQUZoREMsUUFFZ0Q7QUFHOUMsU0FBS0MsSUFBTCxHQUFZLFVBQVo7QUFDQSxTQUFLRixRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0Q7O0FBZCtDOzs7O0FBaUIzQyxNQUFNRyxxQkFBTixTQUFvQ3BCLEtBQXBDLENBQTBDO0FBUS9DQyxFQUFBQSxXQUFXLENBQUNlLFFBQUQsRUFBbUJDLFFBQW5CLEVBQXFDO0FBQzlDLFVBQU0sV0FBTixFQUFtQixpQkFBbkI7QUFEOEMsU0FKaERDLElBSWdEO0FBQUEsU0FIaERGLFFBR2dEO0FBQUEsU0FGaERDLFFBRWdEO0FBRzlDLFNBQUtDLElBQUwsR0FBWSxTQUFaO0FBQ0EsU0FBS0YsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNEOztBQWQ4Qzs7OztBQWlCMUMsTUFBTUksd0JBQU4sU0FBdUNyQixLQUF2QyxDQUE2QztBQVFsREMsRUFBQUEsV0FBVyxDQUFDZSxRQUFELEVBQW1CQyxRQUFuQixFQUFxQztBQUM5QyxVQUFNLFdBQU4sRUFBbUIsb0JBQW5CO0FBRDhDLFNBSmhEQyxJQUlnRDtBQUFBLFNBSGhERixRQUdnRDtBQUFBLFNBRmhEQyxRQUVnRDtBQUc5QyxTQUFLQyxJQUFMLEdBQVksYUFBWjtBQUNBLFNBQUtGLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDRDs7QUFkaUQ7Ozs7QUFpQjdDLE1BQU1LLDhCQUFOLFNBQTZDdEIsS0FBN0MsQ0FBbUQ7QUFReERDLEVBQUFBLFdBQVcsQ0FBQ2UsUUFBRCxFQUFtQkMsUUFBbkIsRUFBcUM7QUFDOUMsVUFBTSxXQUFOLEVBQW1CLG9CQUFuQjtBQUQ4QyxTQUpoREMsSUFJZ0Q7QUFBQSxTQUhoREYsUUFHZ0Q7QUFBQSxTQUZoREMsUUFFZ0Q7QUFHOUMsU0FBS0MsSUFBTCxHQUFZLFdBQVo7QUFDQSxTQUFLRixRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0Q7O0FBZHVEOzs7O0FBaUJuRCxNQUFNTSwrQkFBTixTQUE4Q3ZCLEtBQTlDLENBQW9EO0FBUXpEQyxFQUFBQSxXQUFXLENBQUNlLFFBQUQsRUFBbUJDLFFBQW5CLEVBQXFDO0FBQzlDLFVBQU0sV0FBTixFQUFtQixxQkFBbkI7QUFEOEMsU0FKaERDLElBSWdEO0FBQUEsU0FIaERGLFFBR2dEO0FBQUEsU0FGaERDLFFBRWdEO0FBRzlDLFNBQUtDLElBQUwsR0FBWSxZQUFaO0FBQ0EsU0FBS0YsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNEOztBQWR3RDs7OztBQWlCcEQsTUFBTU8saUNBQU4sU0FBZ0R4QixLQUFoRCxDQUFzRDtBQVEzREMsRUFBQUEsV0FBVyxDQUFDZSxRQUFELEVBQW1CQyxRQUFuQixFQUFxQztBQUM5QyxVQUFNLFdBQU4sRUFBbUIsdUJBQW5CO0FBRDhDLFNBSmhEQyxJQUlnRDtBQUFBLFNBSGhERCxRQUdnRDtBQUFBLFNBRmhERCxRQUVnRDtBQUc5QyxTQUFLRSxJQUFMLEdBQVksY0FBWjtBQUNBLFNBQUtGLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDRDs7QUFkMEQ7Ozs7QUFpQnRELE1BQU1RLHNDQUFOLFNBQXFEekIsS0FBckQsQ0FBMkQ7QUFRaEVDLEVBQUFBLFdBQVcsQ0FBQ2UsUUFBRCxFQUFtQkMsUUFBbkIsRUFBcUM7QUFDOUMsVUFBTSxXQUFOLEVBQW1CLDRCQUFuQjtBQUQ4QyxTQUpoREMsSUFJZ0Q7QUFBQSxTQUhoREQsUUFHZ0Q7QUFBQSxTQUZoREQsUUFFZ0Q7QUFHOUMsU0FBS0UsSUFBTCxHQUFZLDRCQUFaO0FBQ0EsU0FBS0YsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNEOztBQWQrRDs7OztBQWlCM0QsTUFBTVMsNkJBQU4sU0FBNEMxQixLQUE1QyxDQUFrRDtBQVF2REMsRUFBQUEsV0FBVyxDQUFDZSxRQUFELEVBQW1CQyxRQUFuQixFQUFxQztBQUM5QyxVQUFNLFdBQU4sRUFBbUIsbUJBQW5CO0FBRDhDLFNBSmhEQyxJQUlnRDtBQUFBLFNBSGhERCxRQUdnRDtBQUFBLFNBRmhERCxRQUVnRDtBQUc5QyxTQUFLRSxJQUFMLEdBQVksa0JBQVo7QUFDQSxTQUFLRixRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0Q7O0FBZHNEOzs7O0FBaUJsRCxNQUFNVSxvQkFBTixTQUFtQzNCLEtBQW5DLENBQXlDO0FBUTlDQyxFQUFBQSxXQUFXLENBQUNlLFFBQUQsRUFBa0NDLFFBQWxDLEVBQW1FO0FBQzVFLFVBQU0sV0FBTixFQUFtQixzQkFBbkI7QUFENEUsU0FKOUVDLElBSThFO0FBQUEsU0FIOUVELFFBRzhFO0FBQUEsU0FGOUVELFFBRThFO0FBRzVFLFNBQUtFLElBQUwsR0FBWSxlQUFaO0FBQ0EsU0FBS0YsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNEOztBQWQ2Qzs7OztBQWlCekMsTUFBTVcscUJBQU4sU0FBb0M1QixLQUFwQyxDQUEwQztBQVEvQ0MsRUFBQUEsV0FBVyxDQUFDZSxRQUFELEVBQStEQyxRQUEvRCxFQUFpRjtBQUMxRixVQUFNLFdBQU4sRUFBbUIsaUJBQW5CO0FBRDBGLFNBSjVGQyxJQUk0RjtBQUFBLFNBSDVGRixRQUc0RjtBQUFBLFNBRjVGQyxRQUU0RjtBQUcxRixTQUFLQyxJQUFMLEdBQVksZ0JBQVo7QUFDQSxTQUFLRixRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0Q7O0FBZDhDOzs7O0FBaUIxQyxNQUFNWSxrQkFBTixTQUFpQzdCLEtBQWpDLENBQXVDO0FBTTVDO0FBQ0Y7QUFDQTtBQUdFQyxFQUFBQSxXQUFXLENBQUM2QixPQUFELEVBQThCQyxXQUE5QixFQUFnRTtBQUN6RSxVQUFNLGVBQU4sRUFBdUIsaUJBQXZCO0FBRHlFLFNBUDNFRCxPQU8yRTtBQUFBLFNBRjNFQyxXQUUyRTtBQUd6RSxTQUFLRCxPQUFMLEdBQWVBLE9BQWY7QUFDQSxTQUFLQyxXQUFMLEdBQW1CQSxXQUFuQjtBQUNEOztBQWhCMkM7Ozs7QUFtQnZDLE1BQU1DLGdCQUFOLFNBQStCaEMsS0FBL0IsQ0FBcUM7QUFPMUNDLEVBQUFBLFdBQVcsQ0FBQ2dDLEdBQUQsRUFBMEJDLE1BQTFCLEVBQXNEO0FBQy9ELFVBQU0sYUFBTixFQUFxQixlQUFyQjtBQUQrRCxTQUhqRUQsR0FHaUU7QUFBQSxTQUZqRUMsTUFFaUU7QUFHL0QsU0FBS0QsR0FBTCxHQUFXQSxHQUFYO0FBQ0EsU0FBS0MsTUFBTCxHQUFjQSxNQUFkO0FBQ0Q7O0FBWnlDOzs7O0FBZXJDLE1BQU1DLGdCQUFOLFNBQStCbkMsS0FBL0IsQ0FBcUM7QUFZMUNDLEVBQUFBLFdBQVcsQ0FBQztBQUFFbUMsSUFBQUEsTUFBRjtBQUFVQyxJQUFBQSxLQUFWO0FBQWlCQyxJQUFBQSxLQUFLLEVBQUVDLEtBQXhCO0FBQStCQyxJQUFBQSxPQUEvQjtBQUF3Q0MsSUFBQUEsVUFBeEM7QUFBb0RDLElBQUFBLFFBQXBEO0FBQThEQyxJQUFBQTtBQUE5RCxHQUFELEVBQTBNO0FBQ25OLFVBQU0sTUFBTixFQUFjLGVBQWQ7QUFEbU4sU0FSck5QLE1BUXFOO0FBQUEsU0FQck5DLEtBT3FOO0FBQUEsU0FOck5DLEtBTXFOO0FBQUEsU0FMck5FLE9BS3FOO0FBQUEsU0FKck5DLFVBSXFOO0FBQUEsU0FIck5DLFFBR3FOO0FBQUEsU0FGck5DLFVBRXFOO0FBR25OLFNBQUtQLE1BQUwsR0FBY0EsTUFBZDtBQUNBLFNBQUtDLEtBQUwsR0FBYUEsS0FBYjtBQUNBLFNBQUtDLEtBQUwsR0FBYUMsS0FBYjtBQUNBLFNBQUtDLE9BQUwsR0FBZUEsT0FBZjtBQUNBLFNBQUtDLFVBQUwsR0FBa0JBLFVBQWxCO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxVQUFMLEdBQWtCQSxVQUFsQjtBQUNEOztBQXRCeUM7Ozs7QUF5QnJDLE1BQU1DLGlCQUFOLFNBQWdDNUMsS0FBaEMsQ0FBc0M7QUFZM0NDLEVBQUFBLFdBQVcsQ0FBQztBQUFFbUMsSUFBQUEsTUFBRjtBQUFVQyxJQUFBQSxLQUFWO0FBQWlCQyxJQUFBQSxLQUFLLEVBQUVDLEtBQXhCO0FBQStCQyxJQUFBQSxPQUEvQjtBQUF3Q0MsSUFBQUEsVUFBeEM7QUFBb0RDLElBQUFBLFFBQXBEO0FBQThEQyxJQUFBQTtBQUE5RCxHQUFELEVBQTBNO0FBQ25OLFVBQU0sT0FBTixFQUFlLGdCQUFmO0FBRG1OLFNBUnJOUCxNQVFxTjtBQUFBLFNBUHJOQyxLQU9xTjtBQUFBLFNBTnJOQyxLQU1xTjtBQUFBLFNBTHJORSxPQUtxTjtBQUFBLFNBSnJOQyxVQUlxTjtBQUFBLFNBSHJOQyxRQUdxTjtBQUFBLFNBRnJOQyxVQUVxTjtBQUduTixTQUFLUCxNQUFMLEdBQWNBLE1BQWQ7QUFDQSxTQUFLQyxLQUFMLEdBQWFBLEtBQWI7QUFDQSxTQUFLQyxLQUFMLEdBQWFDLEtBQWI7QUFDQSxTQUFLQyxPQUFMLEdBQWVBLE9BQWY7QUFDQSxTQUFLQyxVQUFMLEdBQWtCQSxVQUFsQjtBQUNBLFNBQUtDLFFBQUwsR0FBZ0JBLFFBQWhCO0FBQ0EsU0FBS0MsVUFBTCxHQUFrQkEsVUFBbEI7QUFDRDs7QUF0QjBDOzs7O0FBeUJ0QyxNQUFNRSxhQUFOLFNBQTRCN0MsS0FBNUIsQ0FBa0M7QUFTdkNDLEVBQUFBLFdBQVcsQ0FBQztBQUFFNkMsSUFBQUEsU0FBUyxFQUFFQyxTQUFiO0FBQXdCQyxJQUFBQSxVQUF4QjtBQUFvQ0MsSUFBQUEsUUFBcEM7QUFBOENDLElBQUFBO0FBQTlDLEdBQUQsRUFBa087QUFDM08sVUFBTSxVQUFOLEVBQWtCLFlBQWxCO0FBRDJPLFNBTDdPSixTQUs2TztBQUFBLFNBSjdPRSxVQUk2TztBQUFBLFNBSDdPQyxRQUc2TztBQUFBLFNBRjdPQyxXQUU2TztBQUczTyxTQUFLSixTQUFMLEdBQWlCQyxTQUFqQjtBQUNBLFNBQUtDLFVBQUwsR0FBa0JBLFVBQWxCO0FBQ0EsU0FBS0MsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxTQUFLQyxXQUFMLEdBQW1CQSxXQUFuQjtBQUNEOztBQWhCc0M7Ozs7QUFtQmxDLE1BQU1DLFdBQU4sU0FBMEJuRCxLQUExQixDQUFnQztBQU1yQ0MsRUFBQUEsV0FBVyxDQUFDSSxPQUFELEVBQWU7QUFDeEIsVUFBTSxRQUFOLEVBQWdCLE9BQWhCO0FBRHdCLFNBRjFCQSxPQUUwQjtBQUd4QixTQUFLQSxPQUFMLEdBQWVBLE9BQWY7QUFDRDs7QUFWb0M7Ozs7QUFhaEMsTUFBTStDLFVBQU4sU0FBeUJwRCxLQUF6QixDQUErQjtBQU1wQ0MsRUFBQUEsV0FBVyxDQUFDb0QsWUFBRCxFQUF5QjtBQUNsQyxVQUFNLE9BQU4sRUFBZSxTQUFmO0FBRGtDLFNBRnBDQSxZQUVvQztBQUdsQyxTQUFLQSxZQUFMLEdBQW9CQSxZQUFwQjtBQUNEOztBQVZtQzs7OztBQWEvQixNQUFNQyxpQkFBTixTQUFnQ3RELEtBQWhDLENBQXNDO0FBTTNDQyxFQUFBQSxXQUFXLENBQUNzRCxLQUFELEVBQWdCO0FBQ3pCLFVBQU0sY0FBTixFQUFzQixnQkFBdEI7QUFEeUIsU0FGM0JBLEtBRTJCO0FBR3pCLFNBQUtBLEtBQUwsR0FBYUEsS0FBYjtBQUNEOztBQVYwQzs7OztBQWF0QyxNQUFNQyxnQkFBTixTQUErQnhELEtBQS9CLENBQXFDO0FBUzFDQyxFQUFBQSxXQUFXLENBQUM7QUFBRXdELElBQUFBLFlBQUY7QUFBZ0JDLElBQUFBLFNBQWhCO0FBQTJCQyxJQUFBQSxRQUEzQjtBQUFxQ0osSUFBQUE7QUFBckMsR0FBRCxFQUFnSTtBQUN6SSxVQUFNLGFBQU4sRUFBcUIsZUFBckI7QUFEeUksU0FMM0lFLFlBSzJJO0FBQUEsU0FKM0lDLFNBSTJJO0FBQUEsU0FIM0lDLFFBRzJJO0FBQUEsU0FGM0lKLEtBRTJJO0FBR3pJLFNBQUtFLFlBQUwsR0FBb0JBLFlBQXBCO0FBQ0EsU0FBS0MsU0FBTCxHQUFpQkEsU0FBakI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCQSxRQUFoQjtBQUNBLFNBQUtKLEtBQUwsR0FBYUEsS0FBYjtBQUNEOztBQWhCeUM7Ozs7QUFtQnJDLE1BQU1LLFFBQU4sU0FBdUI1RCxLQUF2QixDQUE2QjtBQU1sQ0MsRUFBQUEsV0FBVyxDQUFDSSxPQUFELEVBQWU7QUFDeEIsVUFBTSxLQUFOLEVBQWEsT0FBYjtBQUR3QixTQUYxQkEsT0FFMEI7QUFHeEIsU0FBS0EsT0FBTCxHQUFlQSxPQUFmO0FBQ0Q7O0FBVmlDOzs7O0FBYTdCLE1BQU13RCxTQUFOLFNBQXdCN0QsS0FBeEIsQ0FBOEI7QUFPbkNDLEVBQUFBLFdBQVcsQ0FBQzZELFVBQUQsRUFBa0JDLGdCQUFsQixFQUE0QztBQUNyRCxVQUFNLGVBQU4sRUFBdUIsUUFBdkI7QUFEcUQsU0FIdkRELFVBR3VEO0FBQUEsU0FGdkRDLGdCQUV1RDtBQUdyRCxTQUFLRCxVQUFMLEdBQWtCQSxVQUFsQjtBQUNBLFNBQUtDLGdCQUFMLEdBQXdCQSxnQkFBeEI7QUFDRDs7QUFaa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsYXRpb24gfSBmcm9tICcuLi9jb2xsYXRpb24nO1xuaW1wb3J0IHsgTWV0YWRhdGEgfSBmcm9tICcuLi9tZXRhZGF0YS1wYXJzZXInO1xuaW1wb3J0IHsgQ29sdW1uTWV0YWRhdGEgfSBmcm9tICcuL2NvbG1ldGFkYXRhLXRva2VuLXBhcnNlcic7XG5pbXBvcnQgeyBUb2tlbkhhbmRsZXIgfSBmcm9tICcuL2hhbmRsZXInO1xuXG5leHBvcnQgY29uc3QgVFlQRSA9IHtcbiAgQUxUTUVUQURBVEE6IDB4ODgsXG4gIEFMVFJPVzogMHhEMyxcbiAgQ09MTUVUQURBVEE6IDB4ODEsXG4gIENPTElORk86IDB4QTUsXG4gIERPTkU6IDB4RkQsXG4gIERPTkVQUk9DOiAweEZFLFxuICBET05FSU5QUk9DOiAweEZGLFxuICBFTlZDSEFOR0U6IDB4RTMsXG4gIEVSUk9SOiAweEFBLFxuICBGRUFUVVJFRVhUQUNLOiAweEFFLFxuICBGRURBVVRISU5GTzogMHhFRSxcbiAgSU5GTzogMHhBQixcbiAgTE9HSU5BQ0s6IDB4QUQsXG4gIE5CQ1JPVzogMHhEMixcbiAgT0ZGU0VUOiAweDc4LFxuICBPUkRFUjogMHhBOSxcbiAgUkVUVVJOU1RBVFVTOiAweDc5LFxuICBSRVRVUk5WQUxVRTogMHhBQyxcbiAgUk9XOiAweEQxLFxuICBTU1BJOiAweEVELFxuICBUQUJOQU1FOiAweEE0XG59O1xuXG50eXBlIEhhbmRsZXJOYW1lID0ga2V5b2YgVG9rZW5IYW5kbGVyO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVG9rZW4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGhhbmRsZXJOYW1lOiBrZXlvZiBUb2tlbkhhbmRsZXI7XG5cbiAgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBoYW5kbGVyTmFtZTogSGFuZGxlck5hbWUpIHtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMuaGFuZGxlck5hbWUgPSBoYW5kbGVyTmFtZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29sTWV0YWRhdGFUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnQ09MTUVUQURBVEEnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Db2xNZXRhZGF0YSc7XG5cbiAgY29sdW1uczogQ29sdW1uTWV0YWRhdGFbXVxuXG4gIGNvbnN0cnVjdG9yKGNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10pIHtcbiAgICBzdXBlcignQ09MTUVUQURBVEEnLCAnb25Db2xNZXRhZGF0YScpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdET05FJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uRG9uZSc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FJywgJ29uRG9uZScpO1xuXG4gICAgdGhpcy5tb3JlID0gbW9yZTtcbiAgICB0aGlzLnNxbEVycm9yID0gc3FsRXJyb3I7XG4gICAgdGhpcy5hdHRlbnRpb24gPSBhdHRlbnRpb247XG4gICAgdGhpcy5zZXJ2ZXJFcnJvciA9IHNlcnZlckVycm9yO1xuICAgIHRoaXMucm93Q291bnQgPSByb3dDb3VudDtcbiAgICB0aGlzLmN1ckNtZCA9IGN1ckNtZDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZUluUHJvY1Rva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdET05FSU5QUk9DJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uRG9uZUluUHJvYyc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FSU5QUk9DJywgJ29uRG9uZUluUHJvYycpO1xuXG4gICAgdGhpcy5tb3JlID0gbW9yZTtcbiAgICB0aGlzLnNxbEVycm9yID0gc3FsRXJyb3I7XG4gICAgdGhpcy5hdHRlbnRpb24gPSBhdHRlbnRpb247XG4gICAgdGhpcy5zZXJ2ZXJFcnJvciA9IHNlcnZlckVycm9yO1xuICAgIHRoaXMucm93Q291bnQgPSByb3dDb3VudDtcbiAgICB0aGlzLmN1ckNtZCA9IGN1ckNtZDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRG9uZVByb2NUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRE9ORVBST0MnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Eb25lUHJvYyc7XG5cbiAgbW9yZTogYm9vbGVhbjtcbiAgc3FsRXJyb3I6IGJvb2xlYW47XG4gIGF0dGVudGlvbjogYm9vbGVhbjtcbiAgc2VydmVyRXJyb3I6IGJvb2xlYW47XG4gIHJvd0NvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGN1ckNtZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHsgbW9yZSwgc3FsRXJyb3IsIGF0dGVudGlvbiwgc2VydmVyRXJyb3IsIHJvd0NvdW50LCBjdXJDbWQgfTogeyBtb3JlOiBib29sZWFuLCBzcWxFcnJvcjogYm9vbGVhbiwgYXR0ZW50aW9uOiBib29sZWFuLCBzZXJ2ZXJFcnJvcjogYm9vbGVhbiwgcm93Q291bnQ6IG51bWJlciB8IHVuZGVmaW5lZCwgY3VyQ21kOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdET05FUFJPQycsICdvbkRvbmVQcm9jJyk7XG5cbiAgICB0aGlzLm1vcmUgPSBtb3JlO1xuICAgIHRoaXMuc3FsRXJyb3IgPSBzcWxFcnJvcjtcbiAgICB0aGlzLmF0dGVudGlvbiA9IGF0dGVudGlvbjtcbiAgICB0aGlzLnNlcnZlckVycm9yID0gc2VydmVyRXJyb3I7XG4gICAgdGhpcy5yb3dDb3VudCA9IHJvd0NvdW50O1xuICAgIHRoaXMuY3VyQ21kID0gY3VyQ21kO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhYmFzZUVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25EYXRhYmFzZUNoYW5nZSc7XG5cbiAgdHlwZTogJ0RBVEFCQVNFJztcbiAgbmV3VmFsdWU6IHN0cmluZztcbiAgb2xkVmFsdWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogc3RyaW5nLCBvbGRWYWx1ZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvbkRhdGFiYXNlQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnREFUQUJBU0UnO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExhbmd1YWdlRW52Q2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkxhbmd1YWdlQ2hhbmdlJztcblxuICB0eXBlOiAnTEFOR1VBR0UnO1xuICBuZXdWYWx1ZTogc3RyaW5nO1xuICBvbGRWYWx1ZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBzdHJpbmcsIG9sZFZhbHVlOiBzdHJpbmcpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uTGFuZ3VhZ2VDaGFuZ2UnKTtcblxuICAgIHRoaXMudHlwZSA9ICdMQU5HVUFHRSc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ2hhcnNldEVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25DaGFyc2V0Q2hhbmdlJztcblxuICB0eXBlOiAnQ0hBUlNFVCc7XG4gIG5ld1ZhbHVlOiBzdHJpbmc7XG4gIG9sZFZhbHVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAnb25DaGFyc2V0Q2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnQ0hBUlNFVCc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFja2V0U2l6ZUVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25QYWNrZXRTaXplQ2hhbmdlJztcblxuICB0eXBlOiAnUEFDS0VUX1NJWkUnO1xuICBuZXdWYWx1ZTogbnVtYmVyO1xuICBvbGRWYWx1ZTogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBudW1iZXIsIG9sZFZhbHVlOiBudW1iZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uUGFja2V0U2l6ZUNoYW5nZScpO1xuXG4gICAgdGhpcy50eXBlID0gJ1BBQ0tFVF9TSVpFJztcbiAgICB0aGlzLm5ld1ZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbGRWYWx1ZSA9IG9sZFZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCZWdpblRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkJlZ2luVHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdCRUdJTl9UWE4nO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uQmVnaW5UcmFuc2FjdGlvbicpO1xuXG4gICAgdGhpcy50eXBlID0gJ0JFR0lOX1RYTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29tbWl0VHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRU5WQ0hBTkdFJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uQ29tbWl0VHJhbnNhY3Rpb24nO1xuXG4gIHR5cGU6ICdDT01NSVRfVFhOJztcbiAgbmV3VmFsdWU6IEJ1ZmZlcjtcbiAgb2xkVmFsdWU6IEJ1ZmZlcjtcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogQnVmZmVyLCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvbkNvbW1pdFRyYW5zYWN0aW9uJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnQ09NTUlUX1RYTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUm9sbGJhY2tUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Sb2xsYmFja1RyYW5zYWN0aW9uJztcblxuICB0eXBlOiAnUk9MTEJBQ0tfVFhOJztcbiAgb2xkVmFsdWU6IEJ1ZmZlcjtcbiAgbmV3VmFsdWU6IEJ1ZmZlcjtcblxuICBjb25zdHJ1Y3RvcihuZXdWYWx1ZTogQnVmZmVyLCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvblJvbGxiYWNrVHJhbnNhY3Rpb24nKTtcblxuICAgIHRoaXMudHlwZSA9ICdST0xMQkFDS19UWE4nO1xuICAgIHRoaXMubmV3VmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERhdGFiYXNlTWlycm9yaW5nUGFydG5lckVudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25EYXRhYmFzZU1pcnJvcmluZ1BhcnRuZXInO1xuXG4gIHR5cGU6ICdEQVRBQkFTRV9NSVJST1JJTkdfUEFSVE5FUic7XG4gIG9sZFZhbHVlOiBzdHJpbmc7XG4gIG5ld1ZhbHVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyKCdFTlZDSEFOR0UnLCAnb25EYXRhYmFzZU1pcnJvcmluZ1BhcnRuZXInKTtcblxuICAgIHRoaXMudHlwZSA9ICdEQVRBQkFTRV9NSVJST1JJTkdfUEFSVE5FUic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUmVzZXRDb25uZWN0aW9uRW52Q2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvblJlc2V0Q29ubmVjdGlvbic7XG5cbiAgdHlwZTogJ1JFU0VUX0NPTk5FQ1RJT04nO1xuICBvbGRWYWx1ZTogQnVmZmVyO1xuICBuZXdWYWx1ZTogQnVmZmVyO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBCdWZmZXIsIG9sZFZhbHVlOiBCdWZmZXIpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uUmVzZXRDb25uZWN0aW9uJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnUkVTRVRfQ09OTkVDVElPTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29sbGF0aW9uQ2hhbmdlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0VOVkNIQU5HRSc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvblNxbENvbGxhdGlvbkNoYW5nZSc7XG5cbiAgdHlwZTogJ1NRTF9DT0xMQVRJT04nO1xuICBvbGRWYWx1ZTogQ29sbGF0aW9uIHwgdW5kZWZpbmVkO1xuICBuZXdWYWx1ZTogQ29sbGF0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKG5ld1ZhbHVlOiBDb2xsYXRpb24gfCB1bmRlZmluZWQsIG9sZFZhbHVlOiBDb2xsYXRpb24gfCB1bmRlZmluZWQpIHtcbiAgICBzdXBlcignRU5WQ0hBTkdFJywgJ29uU3FsQ29sbGF0aW9uQ2hhbmdlJyk7XG5cbiAgICB0aGlzLnR5cGUgPSAnU1FMX0NPTExBVElPTic7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUm91dGluZ0VudkNoYW5nZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFTlZDSEFOR0UnO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25Sb3V0aW5nQ2hhbmdlJztcblxuICB0eXBlOiAnUk9VVElOR19DSEFOR0UnO1xuICBuZXdWYWx1ZTogeyBwcm90b2NvbDogbnVtYmVyLCBwb3J0OiBudW1iZXIsIHNlcnZlcjogc3RyaW5nIH07XG4gIG9sZFZhbHVlOiBCdWZmZXI7XG5cbiAgY29uc3RydWN0b3IobmV3VmFsdWU6IHsgcHJvdG9jb2w6IG51bWJlciwgcG9ydDogbnVtYmVyLCBzZXJ2ZXI6IHN0cmluZyB9LCBvbGRWYWx1ZTogQnVmZmVyKSB7XG4gICAgc3VwZXIoJ0VOVkNIQU5HRScsICdvblJvdXRpbmdDaGFuZ2UnKTtcblxuICAgIHRoaXMudHlwZSA9ICdST1VUSU5HX0NIQU5HRSc7XG4gICAgdGhpcy5uZXdWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub2xkVmFsdWUgPSBvbGRWYWx1ZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRmVhdHVyZUV4dEFja1Rva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdGRUFUVVJFRVhUQUNLJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uRmVhdHVyZUV4dEFjayc7XG5cbiAgZmVkQXV0aDogQnVmZmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiBWYWx1ZSBvZiBVVEY4X1NVUFBPUlQgYWNrbm93bGVkZ2VtZW50LlxuICAgKlxuICAgKiB1bmRlZmluZWQgd2hlbiBVVEY4X1NVUFBPUlQgbm90IGluY2x1ZGVkIGluIHRva2VuLiAqL1xuICB1dGY4U3VwcG9ydDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihmZWRBdXRoOiBCdWZmZXIgfCB1bmRlZmluZWQsIHV0ZjhTdXBwb3J0OiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgc3VwZXIoJ0ZFQVRVUkVFWFRBQ0snLCAnb25GZWF0dXJlRXh0QWNrJyk7XG5cbiAgICB0aGlzLmZlZEF1dGggPSBmZWRBdXRoO1xuICAgIHRoaXMudXRmOFN1cHBvcnQgPSB1dGY4U3VwcG9ydDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRmVkQXV0aEluZm9Ub2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnRkVEQVVUSElORk8nO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25GZWRBdXRoSW5mbyc7XG5cbiAgc3BuOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHN0c3VybDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKHNwbjogc3RyaW5nIHwgdW5kZWZpbmVkLCBzdHN1cmw6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHN1cGVyKCdGRURBVVRISU5GTycsICdvbkZlZEF1dGhJbmZvJyk7XG5cbiAgICB0aGlzLnNwbiA9IHNwbjtcbiAgICB0aGlzLnN0c3VybCA9IHN0c3VybDtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW5mb01lc3NhZ2VUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnSU5GTyc7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkluZm9NZXNzYWdlJztcblxuICBudW1iZXI6IG51bWJlcjtcbiAgc3RhdGU6IG51bWJlcjtcbiAgY2xhc3M6IG51bWJlcjtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBzZXJ2ZXJOYW1lOiBzdHJpbmc7XG4gIHByb2NOYW1lOiBzdHJpbmc7XG4gIGxpbmVOdW1iZXI6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcih7IG51bWJlciwgc3RhdGUsIGNsYXNzOiBjbGF6eiwgbWVzc2FnZSwgc2VydmVyTmFtZSwgcHJvY05hbWUsIGxpbmVOdW1iZXIgfTogeyBudW1iZXI6IG51bWJlciwgc3RhdGU6IG51bWJlciwgY2xhc3M6IG51bWJlciwgbWVzc2FnZTogc3RyaW5nLCBzZXJ2ZXJOYW1lOiBzdHJpbmcsIHByb2NOYW1lOiBzdHJpbmcsIGxpbmVOdW1iZXI6IG51bWJlciB9KSB7XG4gICAgc3VwZXIoJ0lORk8nLCAnb25JbmZvTWVzc2FnZScpO1xuXG4gICAgdGhpcy5udW1iZXIgPSBudW1iZXI7XG4gICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuY2xhc3MgPSBjbGF6ejtcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIHRoaXMuc2VydmVyTmFtZSA9IHNlcnZlck5hbWU7XG4gICAgdGhpcy5wcm9jTmFtZSA9IHByb2NOYW1lO1xuICAgIHRoaXMubGluZU51bWJlciA9IGxpbmVOdW1iZXI7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEVycm9yTWVzc2FnZVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdFUlJPUic7XG4gIGRlY2xhcmUgaGFuZGxlck5hbWU6ICdvbkVycm9yTWVzc2FnZSc7XG5cbiAgbnVtYmVyOiBudW1iZXI7XG4gIHN0YXRlOiBudW1iZXI7XG4gIGNsYXNzOiBudW1iZXI7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgc2VydmVyTmFtZTogc3RyaW5nO1xuICBwcm9jTmFtZTogc3RyaW5nO1xuICBsaW5lTnVtYmVyOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoeyBudW1iZXIsIHN0YXRlLCBjbGFzczogY2xhenosIG1lc3NhZ2UsIHNlcnZlck5hbWUsIHByb2NOYW1lLCBsaW5lTnVtYmVyIH06IHsgbnVtYmVyOiBudW1iZXIsIHN0YXRlOiBudW1iZXIsIGNsYXNzOiBudW1iZXIsIG1lc3NhZ2U6IHN0cmluZywgc2VydmVyTmFtZTogc3RyaW5nLCBwcm9jTmFtZTogc3RyaW5nLCBsaW5lTnVtYmVyOiBudW1iZXIgfSkge1xuICAgIHN1cGVyKCdFUlJPUicsICdvbkVycm9yTWVzc2FnZScpO1xuXG4gICAgdGhpcy5udW1iZXIgPSBudW1iZXI7XG4gICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuY2xhc3MgPSBjbGF6ejtcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIHRoaXMuc2VydmVyTmFtZSA9IHNlcnZlck5hbWU7XG4gICAgdGhpcy5wcm9jTmFtZSA9IHByb2NOYW1lO1xuICAgIHRoaXMubGluZU51bWJlciA9IGxpbmVOdW1iZXI7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExvZ2luQWNrVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ0xPR0lOQUNLJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uTG9naW5BY2snO1xuXG4gIGludGVyZmFjZTogc3RyaW5nO1xuICB0ZHNWZXJzaW9uOiBzdHJpbmc7XG4gIHByb2dOYW1lOiBzdHJpbmc7XG4gIHByb2dWZXJzaW9uOiB7IG1ham9yOiBudW1iZXIsIG1pbm9yOiBudW1iZXIsIGJ1aWxkTnVtSGk6IG51bWJlciwgYnVpbGROdW1Mb3c6IG51bWJlciB9O1xuXG4gIGNvbnN0cnVjdG9yKHsgaW50ZXJmYWNlOiBpbnRlcmZhemUsIHRkc1ZlcnNpb24sIHByb2dOYW1lLCBwcm9nVmVyc2lvbiB9OiB7IGludGVyZmFjZTogTG9naW5BY2tUb2tlblsnaW50ZXJmYWNlJ10sIHRkc1ZlcnNpb246IExvZ2luQWNrVG9rZW5bJ3Rkc1ZlcnNpb24nXSwgcHJvZ05hbWU6IExvZ2luQWNrVG9rZW5bJ3Byb2dOYW1lJ10sIHByb2dWZXJzaW9uOiBMb2dpbkFja1Rva2VuWydwcm9nVmVyc2lvbiddIH0pIHtcbiAgICBzdXBlcignTE9HSU5BQ0snLCAnb25Mb2dpbkFjaycpO1xuXG4gICAgdGhpcy5pbnRlcmZhY2UgPSBpbnRlcmZhemU7XG4gICAgdGhpcy50ZHNWZXJzaW9uID0gdGRzVmVyc2lvbjtcbiAgICB0aGlzLnByb2dOYW1lID0gcHJvZ05hbWU7XG4gICAgdGhpcy5wcm9nVmVyc2lvbiA9IHByb2dWZXJzaW9uO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOQkNSb3dUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnTkJDUk9XJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUm93JztcblxuICBjb2x1bW5zOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoY29sdW1uczogYW55KSB7XG4gICAgc3VwZXIoJ05CQ1JPVycsICdvblJvdycpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgT3JkZXJUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnT1JERVInO1xuICBkZWNsYXJlIGhhbmRsZXJOYW1lOiAnb25PcmRlcic7XG5cbiAgb3JkZXJDb2x1bW5zOiBudW1iZXJbXTtcblxuICBjb25zdHJ1Y3RvcihvcmRlckNvbHVtbnM6IG51bWJlcltdKSB7XG4gICAgc3VwZXIoJ09SREVSJywgJ29uT3JkZXInKTtcblxuICAgIHRoaXMub3JkZXJDb2x1bW5zID0gb3JkZXJDb2x1bW5zO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSZXR1cm5TdGF0dXNUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnUkVUVVJOU1RBVFVTJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUmV0dXJuU3RhdHVzJztcblxuICB2YWx1ZTogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKHZhbHVlOiBudW1iZXIpIHtcbiAgICBzdXBlcignUkVUVVJOU1RBVFVTJywgJ29uUmV0dXJuU3RhdHVzJyk7XG5cbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJldHVyblZhbHVlVG9rZW4gZXh0ZW5kcyBUb2tlbiB7XG4gIGRlY2xhcmUgbmFtZTogJ1JFVFVSTlZBTFVFJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUmV0dXJuVmFsdWUnO1xuXG4gIHBhcmFtT3JkaW5hbDogbnVtYmVyO1xuICBwYXJhbU5hbWU6IHN0cmluZztcbiAgbWV0YWRhdGE6IE1ldGFkYXRhO1xuICB2YWx1ZTogdW5rbm93bjtcblxuICBjb25zdHJ1Y3Rvcih7IHBhcmFtT3JkaW5hbCwgcGFyYW1OYW1lLCBtZXRhZGF0YSwgdmFsdWUgfTogeyBwYXJhbU9yZGluYWw6IG51bWJlciwgcGFyYW1OYW1lOiBzdHJpbmcsIG1ldGFkYXRhOiBNZXRhZGF0YSwgdmFsdWU6IHVua25vd24gfSkge1xuICAgIHN1cGVyKCdSRVRVUk5WQUxVRScsICdvblJldHVyblZhbHVlJyk7XG5cbiAgICB0aGlzLnBhcmFtT3JkaW5hbCA9IHBhcmFtT3JkaW5hbDtcbiAgICB0aGlzLnBhcmFtTmFtZSA9IHBhcmFtTmFtZTtcbiAgICB0aGlzLm1ldGFkYXRhID0gbWV0YWRhdGE7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSb3dUb2tlbiBleHRlbmRzIFRva2VuIHtcbiAgZGVjbGFyZSBuYW1lOiAnUk9XJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uUm93JztcblxuICBjb2x1bW5zOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoY29sdW1uczogYW55KSB7XG4gICAgc3VwZXIoJ1JPVycsICdvblJvdycpO1xuXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU1NQSVRva2VuIGV4dGVuZHMgVG9rZW4ge1xuICBkZWNsYXJlIG5hbWU6ICdTU1BJQ0hBTExFTkdFJztcbiAgZGVjbGFyZSBoYW5kbGVyTmFtZTogJ29uU1NQSSc7XG5cbiAgbnRsbXBhY2tldDogYW55O1xuICBudGxtcGFja2V0QnVmZmVyOiBCdWZmZXI7XG5cbiAgY29uc3RydWN0b3IobnRsbXBhY2tldDogYW55LCBudGxtcGFja2V0QnVmZmVyOiBCdWZmZXIpIHtcbiAgICBzdXBlcignU1NQSUNIQUxMRU5HRScsICdvblNTUEknKTtcblxuICAgIHRoaXMubnRsbXBhY2tldCA9IG50bG1wYWNrZXQ7XG4gICAgdGhpcy5udGxtcGFja2V0QnVmZmVyID0gbnRsbXBhY2tldEJ1ZmZlcjtcbiAgfVxufVxuIl19
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": "13.0.5",
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",