mongodb-data-service 21.16.2 → 21.19.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.
@@ -23,6 +23,7 @@ function isEmptyObject(obj) {
23
23
  return Object.keys(obj).length === 0;
24
24
  }
25
25
  let id = 0;
26
+ const kSessionClientType = Symbol('kSessionClientType');
26
27
  class DataService extends events_1.EventEmitter {
27
28
  constructor(connectionOptions) {
28
29
  super();
@@ -46,7 +47,7 @@ class DataService extends events_1.EventEmitter {
46
47
  return new mongodb_connection_string_url_1.default(this._connectionOptions.connectionString);
47
48
  }
48
49
  getReadPreference() {
49
- return this._initializedClient.readPreference;
50
+ return this._initializedClient('CRUD').readPreference;
50
51
  }
51
52
  collection(ns, options, callback) {
52
53
  async_1.default.parallel({
@@ -76,7 +77,7 @@ class DataService extends events_1.EventEmitter {
76
77
  }
77
78
  collectionStats(databaseName, collectionName, callback) {
78
79
  const logop = this._startLogOp(mongoLogId(1001000031), 'Fetching collection info', { ns: `${databaseName}.${collectionName}` });
79
- const db = this._initializedClient.db(databaseName);
80
+ const db = this._initializedClient('META').db(databaseName);
80
81
  db.command({ collStats: collectionName, verbose: true }, (error, data) => {
81
82
  logop(error);
82
83
  if (error && !error.message.includes('is a view, not a collection')) {
@@ -95,7 +96,7 @@ class DataService extends events_1.EventEmitter {
95
96
  }
96
97
  }
97
98
  command(databaseName, comm, callback) {
98
- const db = this._initializedClient.db(databaseName);
99
+ const db = this._initializedClient('META').db(databaseName);
99
100
  db.command(comm, (error, result) => {
100
101
  if (error) {
101
102
  return callback(this._translateMessage(error));
@@ -115,7 +116,7 @@ class DataService extends events_1.EventEmitter {
115
116
  async connectionStatus() {
116
117
  const logop = this._startLogOp(mongoLogId(1001000100), 'Running connectionStatus');
117
118
  try {
118
- const adminDb = this._initializedClient.db('admin');
119
+ const adminDb = this._initializedClient('META').db('admin');
119
120
  const result = await (0, run_command_1.runCommand)(adminDb, {
120
121
  connectionStatus: 1,
121
122
  showPrivileges: true,
@@ -137,7 +138,7 @@ class DataService extends events_1.EventEmitter {
137
138
  }
138
139
  async listCollections(databaseName, filter = {}, { nameOnly, privileges = null, } = {}) {
139
140
  const logop = this._startLogOp(mongoLogId(1001000032), 'Running listCollections', { db: databaseName, nameOnly: nameOnly !== null && nameOnly !== void 0 ? nameOnly : false });
140
- const db = this._initializedClient.db(databaseName);
141
+ const db = this._initializedClient('CRUD').db(databaseName);
141
142
  const listCollections = async () => {
142
143
  try {
143
144
  return await db.listCollections(filter, { nameOnly }).toArray();
@@ -169,7 +170,7 @@ class DataService extends events_1.EventEmitter {
169
170
  }
170
171
  async listDatabases({ nameOnly, privileges = null, } = {}) {
171
172
  const logop = this._startLogOp(mongoLogId(1001000033), 'Running listDatabases', { nameOnly: nameOnly !== null && nameOnly !== void 0 ? nameOnly : false });
172
- const adminDb = this._initializedClient.db('admin');
173
+ const adminDb = this._initializedClient('CRUD').db('admin');
173
174
  const listDatabases = async () => {
174
175
  try {
175
176
  const { databases } = await (0, run_command_1.runCommand)(adminDb, {
@@ -206,7 +207,7 @@ class DataService extends events_1.EventEmitter {
206
207
  }
207
208
  }
208
209
  async connect() {
209
- if (this._client) {
210
+ if (this._metadataClient) {
210
211
  debug('already connected');
211
212
  return;
212
213
  }
@@ -220,14 +221,15 @@ class DataService extends events_1.EventEmitter {
220
221
  url: (0, redact_1.redactConnectionString)(this._connectionOptions.connectionString),
221
222
  });
222
223
  try {
223
- const [client, tunnel, connectionOptions] = await (0, connect_mongo_client_1.default)(this._connectionOptions, this.setupListeners.bind(this));
224
+ const [metadataClient, crudClient, tunnel, connectionOptions] = await (0, connect_mongo_client_1.default)(this._connectionOptions, this.setupListeners.bind(this));
224
225
  const attr = {
225
226
  isWritable: this.isWritable(),
226
227
  isMongos: this.isMongos(),
227
228
  };
228
229
  log.info(mongoLogId(1001000015), this._logCtx(), 'Connected', attr);
229
230
  debug('connected!', attr);
230
- this._client = client;
231
+ this._metadataClient = metadataClient;
232
+ this._crudClient = crudClient;
231
233
  this._tunnel = tunnel;
232
234
  this._mongoClientConnectionOptions = connectionOptions;
233
235
  }
@@ -237,21 +239,21 @@ class DataService extends events_1.EventEmitter {
237
239
  }
238
240
  estimatedCount(ns, options, callback) {
239
241
  const logop = this._startLogOp(mongoLogId(1001000034), 'Running estimatedCount', { ns });
240
- this._collection(ns).estimatedDocumentCount(options, (err, result) => {
242
+ this._collection(ns, 'CRUD').estimatedDocumentCount(options, (err, result) => {
241
243
  logop(err, result);
242
244
  callback(err, result);
243
245
  });
244
246
  }
245
247
  count(ns, filter, options, callback) {
246
248
  const logop = this._startLogOp(mongoLogId(1001000035), 'Running countDocuments', { ns });
247
- this._collection(ns).countDocuments(filter, options, (err, result) => {
249
+ this._collection(ns, 'CRUD').countDocuments(filter, options, (err, result) => {
248
250
  logop(err, result);
249
251
  callback(err, result);
250
252
  });
251
253
  }
252
254
  createCollection(ns, options, callback) {
253
255
  const collectionName = this._collectionName(ns);
254
- const db = this._initializedClient.db(this._databaseName(ns));
256
+ const db = this._initializedClient('CRUD').db(this._databaseName(ns));
255
257
  const logop = this._startLogOp(mongoLogId(1001000036), 'Running createCollection', { ns, options });
256
258
  db.createCollection(collectionName, options, (error, result) => {
257
259
  logop(error);
@@ -263,7 +265,7 @@ class DataService extends events_1.EventEmitter {
263
265
  }
264
266
  createIndex(ns, spec, options, callback) {
265
267
  const logop = this._startLogOp(mongoLogId(1001000037), 'Running createIndex', { ns, spec, options });
266
- this._collection(ns).createIndex(spec, options, (error, result) => {
268
+ this._collection(ns, 'CRUD').createIndex(spec, options, (error, result) => {
267
269
  logop(error);
268
270
  if (error) {
269
271
  return callback(this._translateMessage(error));
@@ -281,7 +283,7 @@ class DataService extends events_1.EventEmitter {
281
283
  }
282
284
  deleteOne(ns, filter, options, callback) {
283
285
  const logop = this._startLogOp(mongoLogId(1001000038), 'Running deleteOne', { ns });
284
- this._collection(ns).deleteOne(filter, options, (error, result) => {
286
+ this._collection(ns, 'CRUD').deleteOne(filter, options, (error, result) => {
285
287
  logop(error, result);
286
288
  if (error) {
287
289
  return callback(this._translateMessage(error));
@@ -291,7 +293,7 @@ class DataService extends events_1.EventEmitter {
291
293
  }
292
294
  deleteMany(ns, filter, options, callback) {
293
295
  const logop = this._startLogOp(mongoLogId(1001000039), 'Running deleteMany', { ns });
294
- this._collection(ns).deleteMany(filter, options, (error, result) => {
296
+ this._collection(ns, 'CRUD').deleteMany(filter, options, (error, result) => {
295
297
  logop(error, result);
296
298
  if (error) {
297
299
  return callback(this._translateMessage(error));
@@ -300,11 +302,15 @@ class DataService extends events_1.EventEmitter {
300
302
  });
301
303
  }
302
304
  async disconnect() {
303
- var _a, _b;
305
+ var _a, _b, _c;
304
306
  log.info(mongoLogId(1001000016), this._logCtx(), 'Disconnecting');
305
307
  try {
306
- await ((_a = this._client) === null || _a === void 0 ? void 0 : _a.close(true).catch((err) => debug('failed to close MongoClient', err)));
307
- await ((_b = this._tunnel) === null || _b === void 0 ? void 0 : _b.close().catch((err) => debug('failed to close tunnel', err)));
308
+ await Promise.all([
309
+ (_a = this._metadataClient) === null || _a === void 0 ? void 0 : _a.close(true).catch((err) => debug('failed to close MongoClient', err)),
310
+ this._crudClient !== this._metadataClient &&
311
+ ((_b = this._crudClient) === null || _b === void 0 ? void 0 : _b.close(true).catch((err) => debug('failed to close MongoClient', err))),
312
+ (_c = this._tunnel) === null || _c === void 0 ? void 0 : _c.close().catch((err) => debug('failed to close tunnel', err)),
313
+ ]);
308
314
  }
309
315
  finally {
310
316
  this._cleanup();
@@ -313,7 +319,7 @@ class DataService extends events_1.EventEmitter {
313
319
  }
314
320
  dropCollection(ns, callback) {
315
321
  const logop = this._startLogOp(mongoLogId(1001000059), 'Running dropCollection', { ns });
316
- this._collection(ns).drop((error, result) => {
322
+ this._collection(ns, 'CRUD').drop((error, result) => {
317
323
  logop(error, result);
318
324
  if (error) {
319
325
  return callback(this._translateMessage(error));
@@ -323,7 +329,7 @@ class DataService extends events_1.EventEmitter {
323
329
  }
324
330
  dropDatabase(name, callback) {
325
331
  const logop = this._startLogOp(mongoLogId(1001000040), 'Running dropDatabase', { db: name });
326
- this._initializedClient
332
+ this._initializedClient('CRUD')
327
333
  .db(this._databaseName(name))
328
334
  .dropDatabase((error, result) => {
329
335
  logop(error, result);
@@ -335,7 +341,7 @@ class DataService extends events_1.EventEmitter {
335
341
  }
336
342
  dropIndex(ns, name, callback) {
337
343
  const logop = this._startLogOp(mongoLogId(1001000060), 'Running dropIndex', { ns, name });
338
- this._collection(ns).dropIndex(name, (error, result) => {
344
+ this._collection(ns, 'CRUD').dropIndex(name, (error, result) => {
339
345
  logop(error, result);
340
346
  if (error) {
341
347
  return callback(this._translateMessage(error));
@@ -352,7 +358,7 @@ class DataService extends events_1.EventEmitter {
352
358
  callback = options;
353
359
  options = undefined;
354
360
  }
355
- const cursor = this._collection(ns).aggregate(pipeline, options);
361
+ const cursor = this._collection(ns, 'CRUD').aggregate(pipeline, options);
356
362
  if ((0, lodash_1.isFunction)(callback)) {
357
363
  process.nextTick(callback, null, cursor);
358
364
  return;
@@ -363,7 +369,7 @@ class DataService extends events_1.EventEmitter {
363
369
  const logop = this._startLogOp(mongoLogId(1001000042), 'Running find', {
364
370
  ns,
365
371
  });
366
- const cursor = this._collection(ns).find(filter, options);
372
+ const cursor = this._collection(ns, 'CRUD').find(filter, options);
367
373
  cursor.toArray((error, documents) => {
368
374
  logop(error);
369
375
  if (error) {
@@ -375,11 +381,11 @@ class DataService extends events_1.EventEmitter {
375
381
  fetch(ns, filter, options) {
376
382
  const logop = this._startLogOp(mongoLogId(1001000043), 'Running raw find', { ns });
377
383
  logop(null);
378
- return this._collection(ns).find(filter, options);
384
+ return this._collection(ns, 'CRUD').find(filter, options);
379
385
  }
380
386
  findOneAndReplace(ns, filter, replacement, options, callback) {
381
387
  const logop = this._startLogOp(mongoLogId(1001000044), 'Running findOneAndReplace', { ns });
382
- this._collection(ns).findOneAndReplace(filter, replacement, options, (error, result) => {
388
+ this._collection(ns, 'CRUD').findOneAndReplace(filter, replacement, options, (error, result) => {
383
389
  logop(error);
384
390
  if (error) {
385
391
  return callback(this._translateMessage(error));
@@ -389,7 +395,7 @@ class DataService extends events_1.EventEmitter {
389
395
  }
390
396
  findOneAndUpdate(ns, filter, update, options, callback) {
391
397
  const logop = this._startLogOp(mongoLogId(1001000045), 'Running findOneAndUpdate', { ns });
392
- this._collection(ns).findOneAndUpdate(filter, update, options, (error, result) => {
398
+ this._collection(ns, 'CRUD').findOneAndUpdate(filter, update, options, (error, result) => {
393
399
  logop(error);
394
400
  if (error) {
395
401
  return callback(this._translateMessage(error));
@@ -399,7 +405,7 @@ class DataService extends events_1.EventEmitter {
399
405
  }
400
406
  explain(ns, filter, options, callback) {
401
407
  const logop = this._startLogOp(mongoLogId(1001000046), 'Running find explain', { ns });
402
- this._collection(ns)
408
+ this._collection(ns, 'CRUD')
403
409
  .find(filter, options)
404
410
  .explain((error, explanation) => {
405
411
  logop(error);
@@ -411,7 +417,7 @@ class DataService extends events_1.EventEmitter {
411
417
  }
412
418
  indexes(ns, options, callback) {
413
419
  const logop = this._startLogOp(mongoLogId(1001000047), 'Listing indexes', { ns });
414
- getIndexes(this._initializedClient, ns, (error, data) => {
420
+ getIndexes(this._initializedClient('CRUD'), ns, (error, data) => {
415
421
  logop(error);
416
422
  if (error) {
417
423
  return callback(this._translateMessage(error));
@@ -421,7 +427,7 @@ class DataService extends events_1.EventEmitter {
421
427
  }
422
428
  async instance() {
423
429
  try {
424
- const instanceData = await (0, instance_detail_helper_1.getInstance)(this._initializedClient);
430
+ const instanceData = await (0, instance_detail_helper_1.getInstance)(this._initializedClient('META'));
425
431
  log.info(mongoLogId(1001000024), this._logCtx(), 'Fetched instance information', {
426
432
  serverVersion: instanceData.build.version,
427
433
  genuineMongoDB: instanceData.genuineMongoDB,
@@ -436,7 +442,7 @@ class DataService extends events_1.EventEmitter {
436
442
  }
437
443
  insertOne(ns, doc, options, callback) {
438
444
  const logop = this._startLogOp(mongoLogId(1001000048), 'Running insertOne', { ns });
439
- this._collection(ns).insertOne(doc, options, (error, result) => {
445
+ this._collection(ns, 'CRUD').insertOne(doc, options, (error, result) => {
440
446
  logop(error, { acknowledged: result === null || result === void 0 ? void 0 : result.acknowledged });
441
447
  if (error) {
442
448
  return callback(this._translateMessage(error));
@@ -446,7 +452,7 @@ class DataService extends events_1.EventEmitter {
446
452
  }
447
453
  insertMany(ns, docs, options, callback) {
448
454
  const logop = this._startLogOp(mongoLogId(1001000049), 'Running insertOne', { ns });
449
- this._collection(ns).insertMany(docs, options, (error, result) => {
455
+ this._collection(ns, 'CRUD').insertMany(docs, options, (error, result) => {
450
456
  logop(error, {
451
457
  acknowledged: result === null || result === void 0 ? void 0 : result.acknowledged,
452
458
  insertedCount: result === null || result === void 0 ? void 0 : result.insertedCount,
@@ -458,12 +464,12 @@ class DataService extends events_1.EventEmitter {
458
464
  });
459
465
  }
460
466
  putMany(ns, docs, options) {
461
- return this._collection(ns).insertMany(docs, options);
467
+ return this._collection(ns, 'CRUD').insertMany(docs, options);
462
468
  }
463
469
  updateCollection(ns, flags, callback) {
464
470
  const logop = this._startLogOp(mongoLogId(1001000050), 'Running updateCollection', { ns });
465
471
  const collectionName = this._collectionName(ns);
466
- const db = this._initializedClient.db(this._databaseName(ns));
472
+ const db = this._initializedClient('CRUD').db(this._databaseName(ns));
467
473
  const command = {
468
474
  collMod: collectionName,
469
475
  ...flags,
@@ -478,7 +484,7 @@ class DataService extends events_1.EventEmitter {
478
484
  }
479
485
  updateOne(ns, filter, update, options, callback) {
480
486
  const logop = this._startLogOp(mongoLogId(1001000051), 'Running updateOne', { ns });
481
- this._collection(ns).updateOne(filter, update, options, (error, result) => {
487
+ this._collection(ns, 'CRUD').updateOne(filter, update, options, (error, result) => {
482
488
  logop(error, result);
483
489
  if (error) {
484
490
  return callback(this._translateMessage(error));
@@ -488,7 +494,7 @@ class DataService extends events_1.EventEmitter {
488
494
  }
489
495
  updateMany(ns, filter, update, options, callback) {
490
496
  const logop = this._startLogOp(mongoLogId(1001000052), 'Running updateMany', { ns });
491
- this._collection(ns).updateMany(filter, update, options, (error, result) => {
497
+ this._collection(ns, 'CRUD').updateMany(filter, update, options, (error, result) => {
492
498
  logop(error, result);
493
499
  if (error) {
494
500
  return callback(this._translateMessage(error));
@@ -498,13 +504,13 @@ class DataService extends events_1.EventEmitter {
498
504
  }
499
505
  currentOp(includeAll, callback) {
500
506
  const logop = this._startLogOp(mongoLogId(1001000053), 'Running currentOp');
501
- this._initializedClient
507
+ this._initializedClient('META')
502
508
  .db('admin')
503
509
  .command({ currentOp: 1, $all: includeAll }, (error, result) => {
504
510
  logop(error);
505
511
  if (error) {
506
512
  const logop = this._startLogOp(mongoLogId(1001000054), 'Searching $cmd.sys.inprog manually');
507
- this._initializedClient
513
+ this._initializedClient('META')
508
514
  .db('admin')
509
515
  .collection('$cmd.sys.inprog')
510
516
  .findOne({ $all: includeAll }, (error2, result2) => {
@@ -524,7 +530,10 @@ class DataService extends events_1.EventEmitter {
524
530
  }
525
531
  serverstats(callback) {
526
532
  const logop = this._startLogOp(mongoLogId(1001000061), 'Running serverStats');
527
- this._defaultDb.admin().serverStatus((error, result) => {
533
+ this._initializedClient('META')
534
+ .db()
535
+ .admin()
536
+ .serverStatus((error, result) => {
528
537
  logop(error);
529
538
  if (error) {
530
539
  return callback(this._translateMessage(error));
@@ -534,7 +543,10 @@ class DataService extends events_1.EventEmitter {
534
543
  }
535
544
  top(callback) {
536
545
  const logop = this._startLogOp(mongoLogId(1001000062), 'Running top');
537
- this._defaultDb.admin().command({ top: 1 }, (error, result) => {
546
+ this._initializedClient('META')
547
+ .db()
548
+ .admin()
549
+ .command({ top: 1 }, (error, result) => {
538
550
  logop(error);
539
551
  if (error) {
540
552
  return callback(this._translateMessage(error));
@@ -551,7 +563,7 @@ class DataService extends events_1.EventEmitter {
551
563
  stages: pipeline.map((stage) => Object.keys(stage)[0]),
552
564
  options,
553
565
  });
554
- this._initializedClient
566
+ this._initializedClient('CRUD')
555
567
  .db(this._databaseName(sourceNs))
556
568
  .createCollection(name, options, (error, result) => {
557
569
  logop(error, result);
@@ -568,7 +580,7 @@ class DataService extends events_1.EventEmitter {
568
580
  collMod: name,
569
581
  ...options,
570
582
  };
571
- const db = this._initializedClient.db(this._databaseName(sourceNs));
583
+ const db = this._initializedClient('META').db(this._databaseName(sourceNs));
572
584
  const logop = this._startLogOp(mongoLogId(1001000056), 'Running updateView', {
573
585
  name,
574
586
  sourceNs,
@@ -608,21 +620,30 @@ class DataService extends events_1.EventEmitter {
608
620
  ...options,
609
621
  });
610
622
  }
611
- startSession() {
612
- return this._initializedClient.startSession();
623
+ startSession(clientType) {
624
+ const session = this._initializedClient(clientType).startSession();
625
+ session[kSessionClientType] = clientType;
626
+ return session;
613
627
  }
614
628
  killSessions(sessions) {
615
- return this._initializedClient.db('admin').command({
616
- killSessions: Array.isArray(sessions)
617
- ? sessions.map((s) => s.id)
618
- : [sessions.id],
629
+ const sessionsArray = Array.isArray(sessions) ? sessions : [sessions];
630
+ const clientTypes = new Set(sessionsArray.map((s) => s[kSessionClientType]));
631
+ if (clientTypes.size !== 1) {
632
+ throw new Error(`Cannot kill sessions without a specific client type: [${[
633
+ ...clientTypes,
634
+ ].join(', ')}]`);
635
+ }
636
+ const [clientType] = clientTypes;
637
+ return this._initializedClient(clientType)
638
+ .db('admin')
639
+ .command({
640
+ killSessions: sessionsArray.map((s) => s.id),
619
641
  });
620
642
  }
621
643
  isConnected() {
622
- return !!this._client;
644
+ return !!this._metadataClient;
623
645
  }
624
646
  setupListeners(client) {
625
- this._client = client;
626
647
  if (client) {
627
648
  client.on('serverDescriptionChanged', (evt) => {
628
649
  var _a, _b;
@@ -743,19 +764,20 @@ class DataService extends events_1.EventEmitter {
743
764
  });
744
765
  }
745
766
  }
746
- get _initializedClient() {
747
- if (!this._client) {
748
- throw new Error('client not yet initialized');
767
+ _initializedClient(type) {
768
+ if (type !== 'CRUD' && type !== 'META') {
769
+ throw new Error(`Invalid client type: ${type}`);
749
770
  }
750
- return this._client;
751
- }
752
- get _defaultDb() {
753
- return this._initializedClient.db();
771
+ const client = type === 'CRUD' ? this._crudClient : this._metadataClient;
772
+ if (!client) {
773
+ throw new Error('Client not yet initialized');
774
+ }
775
+ return client;
754
776
  }
755
777
  async databaseStats(name) {
756
778
  const logop = this._startLogOp(mongoLogId(1001000057), 'Running databaseStats', { db: name });
757
779
  try {
758
- const db = this._initializedClient.db(name);
780
+ const db = this._initializedClient('META').db(name);
759
781
  const stats = await (0, run_command_1.runCommand)(db, { dbStats: 1 });
760
782
  const normalized = (0, instance_detail_helper_1.adaptDatabaseInfo)(stats);
761
783
  return { name, ...normalized };
@@ -809,8 +831,8 @@ class DataService extends events_1.EventEmitter {
809
831
  collections: db.collections,
810
832
  };
811
833
  }
812
- _collection(ns) {
813
- return this._initializedClient
834
+ _collection(ns, type) {
835
+ return this._initializedClient(type)
814
836
  .db(this._databaseName(ns))
815
837
  .collection(this._collectionName(ns));
816
838
  }
@@ -841,10 +863,11 @@ class DataService extends events_1.EventEmitter {
841
863
  return error;
842
864
  }
843
865
  _cleanup() {
844
- if (this._client) {
845
- this._client.removeAllListeners();
846
- }
847
- this._client = undefined;
866
+ var _a, _b, _c, _d;
867
+ (_b = (_a = this._metadataClient) === null || _a === void 0 ? void 0 : _a.removeAllListeners) === null || _b === void 0 ? void 0 : _b.call(_a);
868
+ (_d = (_c = this._crudClient) === null || _c === void 0 ? void 0 : _c.removeAllListeners) === null || _d === void 0 ? void 0 : _d.call(_c);
869
+ this._metadataClient = undefined;
870
+ this._crudClient = undefined;
848
871
  this._tunnel = undefined;
849
872
  this._mongoClientConnectionOptions = undefined;
850
873
  this._isWritable = false;
@@ -1 +1 @@
1
- {"version":3,"file":"data-service.js","sourceRoot":"","sources":["../src/data-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-service.js","sourceRoot":"","sources":["../src/data-service.ts"],"names":[],"mappings":";;;;;AAAA,+BAAiC;AAEjC,kDAA0B;AAC1B,kFAAmE;AACnE,mCAAsC;AACtC,mCAAoC;AA6CpC,kGAAgE;AAChE,4DAAwC;AAGxC,qEAKkC;AAClC,qCAAkD;AAClD,kFAAwD;AAQxD,+CAA2C;AAG3C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAE7D,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAA,yBAAwB,EACzD,sBAAsB,CACvB,CAAC;AAEF,SAAS,QAAQ,CACf,MAAW,EACX,GAAY;IAEZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,aAAa,CAAC,GAA4B;IACjD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,IAAI,EAAE,GAAG,CAAC,CAAC;AAGX,MAAM,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAKxD,MAAM,WAAY,SAAQ,qBAAY;IAsBpC,YAAY,iBAA8C;QACxD,KAAK,EAAE,CAAC;QArBF,kBAAa,GAAG,KAAK,CAAC;QActB,sBAAiB,GAA+B,IAAI,CAAC;QAErD,gBAAW,GAAG,KAAK,CAAC;QACpB,kBAAa,GAAiB,SAAS,CAAC;QAK9C,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC;QAChB,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAC9C,CAAC;IAED,+BAA+B;QAG7B,OAAO,IAAI,CAAC,6BAA6B,CAAC;IAC5C,CAAC;IAEO,OAAO;QACb,OAAO,cAAc,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,uCAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IAC3E,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC;IACxD,CAAC;IASD,UAAU,CAAC,EAAU,EAAE,OAAgB,EAAE,QAA4B;QAEnE,eAAK,CAAC,QAAQ,CACZ;YACE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAC9B,IAAI,EACJ,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,EACtB,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CACzB;YACD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC;SAC9C,EACD,CACE,KAAK,EACL,IAA6D,EAC7D,EAAE;YACF,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QACxD,CAAC,CACF,CAAC;IACJ,CAAC;IAQD,WAAW,CACT,YAAoB,EACpB,QAAqC;QAErC,IAAI,YAAY,KAAK,QAAQ,EAAE;YAC7B,OAAO,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SAC3B;QACD,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACnD,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YAED,eAAK,CAAC,QAAQ,CACZ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzB,OAAO,CAAC,IAA+B,EAAE,EAAE;oBACzC,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBACjD,CAAC,CAAC;YACJ,CAAC,CAAC,EACF,QAAQ,CACT,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IASD,eAAe,CACb,YAAoB,EACpB,cAAsB,EACtB,QAAmC;QAEnC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,0BAA0B,EAC1B,EAAE,EAAE,EAAE,GAAG,YAAY,IAAI,cAAc,EAAE,EAAE,CAC5C,CAAC;QAKF,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAC5D,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACvE,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAC,EAAE;gBAEnE,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CACN,IAAI,EACJ,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,CACrE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IASD,KAAK,CAAC,cAAc,CAClB,MAAc,EACd,QAAgB;QAEhB,IAAI;YACF,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1E,OAAO,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,IAAI,CAAC;SACzB;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;SACnC;IACH,CAAC;IASD,OAAO,CACL,YAAoB,EACpB,IAAc,EACd,QAA4B;QAE5B,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAC5D,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACjC,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAOD,UAAU;QACR,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAOD,QAAQ;QACN,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC;IAC1C,CAAC;IAQD,mBAAmB;QACjB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,0BAA0B,CAC3B,CAAC;QACF,IAAI;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAU,EAAC,OAAO,EAAE;gBACvC,gBAAgB,EAAE,CAAC;gBACnB,cAAc,EAAE,IAAI;aACrB,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,CAAC;YACZ,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,CAAC,EAAE;YACV,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,aAEW,IAAI;QAEf,IAAI,UAAU,EAAE;YACd,OAAO,UAAU,CAAC;SACnB;QACD,MAAM,EACJ,QAAQ,EAAE,EAAE,2BAA2B,EAAE,GAC1C,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClC,OAAO,2BAA2B,CAAC;IACrC,CAAC;IAKD,KAAK,CAAC,eAAe,CACnB,YAAoB,EACpB,SAAmB,EAAE,EACrB,EACE,QAAQ,EACR,UAAU,GAAG,IAAI,MAMf,EAAE;QAEN,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,yBAAyB,EACzB,EAAE,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,KAAK,EAAE,CAClD,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAE5D,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;YACjC,IAAI;gBACF,OAAO,MAAM,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;aACjE;YAAC,OAAO,GAAG,EAAE;gBAUZ,GAAG,CAAC,IAAI,CACN,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,+BAA+B,EAC/B,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE,CACpC,CAAC;gBACF,OAAO,EAAwB,CAAC;aACjC;QACH,CAAC,CAAC;QAEF,MAAM,4BAA4B,GAAG,KAAK,IAAI,EAAE;YAC9C,MAAM,SAAS,GAAG,IAAA,6DAAoC,EACpD,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,EAC/C,CAAC,MAAM,CAAC,CACT,CAAC;YACF,OAAO,MAAM,CAAC,IAAI,CAEhB,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,CAC9B;iBACE,MAAM,CAIL,OAAO,CACR;iBACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI;YACF,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvE,eAAe,EAAE;gBAMjB,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC,EAAE;aAC5D,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,QAAQ,CAG1B,CAAC,GAAG,yBAAyB,EAAE,GAAG,iBAAiB,CAAC,EACpD,MAAM,CACP,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4CAAmB,EAAC,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;YAEpE,KAAK,CAAC,IAAI,EAAE,EAAE,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;YAEtD,OAAO,WAAW,CAAC;SACpB;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,CAAC,GAAG,CAAC,CAAC;YACX,MAAM,GAAG,CAAC;SACX;IACH,CAAC;IAKD,KAAK,CAAC,aAAa,CAAC,EAClB,QAAQ,EACR,UAAU,GAAG,IAAI,MAMf,EAAE;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,uBAAuB,EACvB,EAAE,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,KAAK,EAAE,CAChC,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAE5D,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;YAC/B,IAAI;gBACF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,wBAAU,EAAC,OAAO,EAAE;oBAC9C,aAAa,EAAE,CAAC;oBAChB,QAAQ;iBAGT,CAAC,CAAC;gBACH,OAAO,SAAS,CAAC;aAClB;YAAC,OAAO,GAAG,EAAE;gBASZ,GAAG,CAAC,IAAI,CACN,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,6BAA6B,EAC7B,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE,CACpC,CAAC;gBACF,OAAO,EAAE,CAAC;aACX;QACH,CAAC,CAAC;QAEF,MAAM,0BAA0B,GAAG,KAAK,IAAI,EAAE;YAC5C,MAAM,SAAS,GAAG,IAAA,6DAAoC,EACpD,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,EAC/C,CAAC,MAAM,CAAC,CACT,CAAC;YACF,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;iBAC1B,MAAM,CAKL,OAAO,CACR;iBACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,IAAI;YACF,MAAM,CAAC,eAAe,EAAE,uBAAuB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACnE,aAAa,EAAE;gBACf,0BAA0B,EAAE;aAC7B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,QAAQ,CAGxB,CAAC,GAAG,uBAAuB,EAAE,GAAG,eAAe,CAAC,EAChD,MAAM,CACP,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACX,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,IAAA,0CAAiB,EAAC,EAAE,CAAC,EAAE,CAAC;YACnE,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YAElD,OAAO,SAAS,CAAC;SAClB;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,CAAC,GAAG,CAAC,CAAC;YACX,MAAM,GAAG,CAAC;SACX;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC3B,OAAO;SACR;QAED,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC9C,OAAO;SACR;QAED,KAAK,CAAC,eAAe,CAAC,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAE1B,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE;YAChE,GAAG,EAAE,IAAA,+BAAsB,EAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC;SACtE,CAAC,CAAC;QAEH,IAAI;YACF,MAAM,CAAC,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,CAAC,GAC3D,MAAM,IAAA,8BAAkB,EACtB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/B,CAAC;YAEJ,MAAM,IAAI,GAAG;gBACX,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;aAC1B,CAAC;YAEF,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YACvE,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAE1B,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YACtC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,6BAA6B,GAAG,iBAAiB,CAAC;SACxD;gBAAS;YACR,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;SAC5B;IACH,CAAC;IASD,cAAc,CACZ,EAAU,EACV,OAAsC,EACtC,QAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,wBAAwB,EACxB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,sBAAsB,CACjD,OAAO,EACP,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACnB,QAAQ,CAAC,GAAG,EAAE,MAAO,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IAUD,KAAK,CACH,EAAU,EACV,MAAwB,EACxB,OAA8B,EAC9B,QAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,wBAAwB,EACxB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,cAAc,CACzC,MAAM,EACN,OAAO,EACP,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACnB,QAAQ,CAAC,GAAG,EAAE,MAAO,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IASD,gBAAgB,CACd,EAAU,EACV,OAAgC,EAChC,QAAwC;QAExC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,0BAA0B,EAC1B,EAAE,EAAE,EAAE,OAAO,EAAE,CAChB,CAAC;QAEF,EAAE,CAAC,gBAAgB,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7D,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAUD,WAAW,CACT,EAAU,EACV,IAAwB,EACxB,OAA6B,EAC7B,QAA0B;QAE1B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,qBAAqB,EACrB,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CACtB,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACxE,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IASD,QAAQ,CAAC,IAAY,EAAE,OAAgB,EAAE,QAA4B;QACnE,MAAM,UAAU,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1D,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACjE,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE;YACvB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAC1E,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YAEN,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;QACxC,CAAC,CACF,CAAC;IACJ,CAAC;IAUD,SAAS,CACP,EAAU,EACV,MAAwB,EACxB,OAAsB,EACtB,QAAgC;QAEhC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,mBAAmB,EACnB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACxE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAUD,UAAU,CACR,EAAU,EACV,MAAwB,EACxB,OAAsB,EACtB,QAAgC;QAEhC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,oBAAoB,EACpB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,UAAU,CACrC,MAAM,EACN,OAAO,EACP,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CACF,CAAC;IACJ,CAAC;IAMD,KAAK,CAAC,UAAU;;QACd,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC;QAErE,IAAI;YACF,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,MAAA,IAAI,CAAC,eAAe,0CAChB,KAAK,CAAC,IAAI,EACX,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;gBAC5D,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,eAAe;qBACvC,MAAA,IAAI,CAAC,WAAW,0CACZ,KAAK,CAAC,IAAI,EACX,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC,CAAA;gBAC9D,MAAA,IAAI,CAAC,OAAO,0CACR,KAAK,GACN,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;aACxD,CAAC,CAAC;SACJ;gBAAS;YACR,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;SACrE;IACH,CAAC;IAQD,cAAc,CAAC,EAAU,EAAE,QAA2B;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,wBAAwB,EACxB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAClD,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAQD,YAAY,CAAC,IAAY,EAAE,QAA2B;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,sBAAsB,EACtB,EAAE,EAAE,EAAE,IAAI,EAAE,CACb,CAAC;QACF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;aAC5B,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;aAC5B,YAAY,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC9B,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IASD,SAAS,CAAC,EAAU,EAAE,IAAY,EAAE,QAA4B;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,mBAAmB,EACnB,EAAE,EAAE,EAAE,IAAI,EAAE,CACb,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7D,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IA4BD,SAAS,CACP,EAAU,EACV,QAAoB,EACpB,OAAwD,EACxD,QAAsC;QAEtC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE;YACzE,EAAE;YACF,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACvD,CAAC,CAAC;QACH,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YACjC,QAAQ,GAAG,OAAO,CAAC;YACnB,OAAO,GAAG,SAAS,CAAC;SACrB;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEzE,IAAI,IAAA,mBAAU,EAAC,QAAQ,CAAC,EAAE;YACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACzC,OAAO;SACR;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAUD,IAAI,CACF,EAAU,EACV,MAAwB,EACxB,OAAoB,EACpB,QAA8B;QAE9B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,cAAc,EAAE;YACxE,EAAE;SACH,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClE,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YAClC,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,SAAU,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IASD,KAAK,CACH,EAAU,EACV,MAAwB,EACxB,OAAoB;QAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,kBAAkB,EAClB,EAAE,EAAE,EAAE,CACP,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAWD,iBAAiB,CACf,EAAU,EACV,MAAwB,EACxB,WAAqB,EACrB,OAAiC,EACjC,QAA4B;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,2BAA2B,EAC3B,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,iBAAiB,CAC5C,MAAM,EACN,WAAW,EACX,OAAO,EACP,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChB,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,KAAM,CAAC,CAAC;QACjC,CAAC,CACF,CAAC;IACJ,CAAC;IAWD,gBAAgB,CACd,EAAU,EACV,MAAwB,EACxB,MAAgB,EAChB,OAAgC,EAChC,QAA4B;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,0BAA0B,EAC1B,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,gBAAgB,CAC3C,MAAM,EACN,MAAM,EACN,OAAO,EACP,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChB,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,KAAM,CAAC,CAAC;QACjC,CAAC,CACF,CAAC;IACJ,CAAC;IAUD,OAAO,CACL,EAAU,EACV,MAAwB,EACxB,OAAuB,EACvB,QAA4B;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,sBAAsB,EACtB,EAAE,EAAE,EAAE,CACP,CAAC;QAGF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC;aACzB,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;aACrB,OAAO,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;YAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IASD,OAAO,CAAC,EAAU,EAAE,OAAgB,EAAE,QAA4B;QAChE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,iBAAiB,EACjB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,UAAU,CACR,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAC/B,EAAE,EACF,CAAC,KAAwB,EAAE,IAAoB,EAAE,EAAE;YACjD,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,QAAQ;QACZ,IAAI;YACF,MAAM,YAAY,GAAG,MAAM,IAAA,oCAAW,EAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;YAExE,GAAG,CAAC,IAAI,CACN,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,8BAA8B,EAC9B;gBACE,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO;gBACzC,cAAc,EAAE,YAAY,CAAC,cAAc;gBAC3C,QAAQ,EAAE,YAAY,CAAC,QAAQ;gBAC/B,2BAA2B,EAAE,YAAY,CAAC,2BAA2B;aACtE,CACF,CAAC;YAEF,OAAO,YAAY,CAAC;SACrB;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;SACnC;IACH,CAAC;IAUD,SAAS,CACP,EAAU,EACV,GAAa,EACb,OAAyB,EACzB,QAA6C;QAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,mBAAmB,EACnB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACrE,KAAK,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,EAAE,CAAC,CAAC;YACrD,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAUD,UAAU,CACR,EAAU,EACV,IAAgB,EAChB,OAAyB,EACzB,QAA8C;QAE9C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,mBAAmB,EACnB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACvE,KAAK,CAAC,KAAK,EAAE;gBACX,YAAY,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY;gBAClC,aAAa,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa;aACrC,CAAC,CAAC;YACH,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAUD,OAAO,CACL,EAAU,EACV,IAAgB,EAChB,OAAyB;QAEzB,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IASD,gBAAgB,CACd,EAAU,EAIV,KAAqC,EACrC,QAA4B;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,0BAA0B,EAC1B,EAAE,EAAE,EAAE,CACP,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;QAGtE,MAAM,OAAO,GAAG;YACd,OAAO,EAAE,cAAc;YACvB,GAAG,KAAK;SACT,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACpC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAWD,SAAS,CACP,EAAU,EACV,MAAwB,EACxB,MAAyC,EACzC,OAAsB,EACtB,QAA4B;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,mBAAmB,EACnB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,SAAS,CACpC,MAAM,EACN,MAAM,EACN,OAAO,EACP,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CACF,CAAC;IACJ,CAAC;IAWD,UAAU,CACR,EAAU,EACV,MAAwB,EACxB,MAA8B,EAC9B,OAAsB,EACtB,QAA2C;QAE3C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,oBAAoB,EACpB,EAAE,EAAE,EAAE,CACP,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,UAAU,CACrC,MAAM,EACN,MAAM,EACN,OAAO,EACP,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CACF,CAAC;IACJ,CAAC;IAQD,SAAS,CAAC,UAAmB,EAAE,QAA4B;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,mBAAmB,CACpB,CAAC;QACF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;aAC5B,EAAE,CAAC,OAAO,CAAC;aACX,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7D,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBACT,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,oCAAoC,CACrC,CAAC;gBACF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;qBAC5B,EAAE,CAAC,OAAO,CAAC;qBACX,UAAU,CAAC,iBAAiB,CAAC;qBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;oBACjD,KAAK,CAAC,MAAM,CAAC,CAAC;oBACd,IAAI,MAAM,EAAE;wBAEV,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;qBACjD;oBACD,QAAQ,CAAC,IAAI,EAAE,OAAQ,CAAC,CAAC;gBAC3B,CAAC,CAAC,CAAC;gBACL,OAAO;aACR;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAMD,mBAAmB;QACjB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAKD,WAAW,CAAC,QAA4B;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,qBAAqB,CACtB,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;aAC5B,EAAE,EAAE;aACJ,KAAK,EAAE;aACP,YAAY,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;YAEb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAOD,GAAG,CAAC,QAA4B;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,aAAa,CAAC,CAAC;QACzE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;aAC5B,EAAE,EAAE;aACJ,KAAK,EAAE;aACP,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACrC,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAWD,UAAU,CACR,IAAY,EACZ,QAAgB,EAChB,QAAoB,EACpB,OAAgC,EAChC,QAAwC;QAExC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChD,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,oBAAoB,EACpB;YACE,IAAI;YACJ,QAAQ;YACR,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,OAAO;SACR,CACF,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;aAC5B,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;aAChC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACjD,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAWD,UAAU,CACR,IAAY,EACZ,QAAgB,EAChB,QAAoB,EACpB,OAAiB,EACjB,QAA4B;QAE5B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChD,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE5B,MAAM,OAAO,GAAG;YACd,OAAO,EAAE,IAAI;YACb,GAAG,OAAO;SACX,CAAC;QACF,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE5E,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,oBAAoB,EACpB;YACE,IAAI;YACJ,QAAQ;YACR,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,OAAO;SACR,CACF,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACpC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrB,IAAI,KAAK,EAAE;gBAET,OAAO,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;aAChD;YACD,QAAQ,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAQD,QAAQ,CAAC,EAAU,EAAE,QAA2B;QAC9C,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;IASD,MAAM,CACJ,EAAU,EACV,EACE,KAAK,EACL,IAAI,EACJ,MAAM,MAC4D,EAAE,EACtE,UAA4B,EAAE;QAE9B,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1C,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;SACJ;QAED,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE;gBACP,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI;aACpC;SACF,CAAC,CAAC;QAGH,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5C,QAAQ,CAAC,IAAI,CAAC;gBACZ,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE;YAClC,YAAY,EAAE,IAAI;YAClB,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAKD,YAAY,CAAC,UAAsB;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CACrC,UAAU,CACX,CAAC,YAAY,EAA0B,CAAC;QACzC,OAAO,CAAC,kBAAkB,CAAC,GAAG,UAAU,CAAC;QACzC,OAAO,OAAO,CAAC;IACjB,CAAC;IAMD,YAAY,CACV,QAAuD;QAEvD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAChD,CAAC;QACF,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CACb,yDAAyD;gBACvD,GAAG,WAAW;aACf,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,CAAC;SACH;QACD,MAAM,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;QACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;aACvC,EAAE,CAAC,OAAO,CAAC;aACX,OAAO,CAAC;YACP,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7C,CAAC,CAAC;IACP,CAAC;IAED,WAAW;QAIT,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAOO,cAAc,CAAC,MAAmB;QACxC,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,EAAE,CACP,0BAA0B,EAC1B,CAAC,GAAkC,EAAE,EAAE;;gBACrC,GAAG,CAAC,IAAI,CACN,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,4BAA4B,EAC5B;oBACE,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,KAAK,EAAE,MAAA,MAAA,GAAG,CAAC,cAAc,CAAC,KAAK,0CAAE,OAAO,mCAAI,IAAI;oBAChD,YAAY,EAAE,GAAG,CAAC,mBAAmB,CAAC,IAAI;oBAC1C,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI;iBACjC,CACF,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC,CACF,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,GAAuB,EAAE,EAAE;gBACrD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,gBAAgB,EAAE;oBACpE,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,GAAsB,EAAE,EAAE;gBACnD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,UAAa,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE;oBACnE,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,GAAyB,EAAE,EAAE;gBACzD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,GAAwB,EAAE,EAAE;gBACvD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CACP,4BAA4B,EAC5B,CAAC,GAAoC,EAAE,EAAE;gBACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAC9C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC;gBAC7C,MAAM,IAAI,GAAG;oBACX,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;oBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACzB,YAAY,EAAE,GAAG,CAAC,mBAAmB,CAAC,IAAI;oBAC1C,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,IAAI;iBACjC,CAAC;gBACF,GAAG,CAAC,IAAI,CACN,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,8BAA8B,EAC9B,IAAI,CACL,CAAC;gBAEF,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,cAAc,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;YAC/C,CAAC,CACF,CAAC;YAKF,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAG/B,CAAC;YACJ,MAAM,2BAA2B,GAAG,CAClC,MAAc,EACd,KAAa,EACJ,EAAE;gBAEX,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC/B,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAE7B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YAClD,CAAC,CAAC;YAEF,MAAM,CAAC,EAAE,CACP,0BAA0B,EAC1B,CAAC,GAAkC,EAAE,EAAE;gBACrC,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAChE,IACE,CAAC,cAAc;oBACf,cAAc,CAAC,OAAO;oBACtB,2BAA2B,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,EAClE;oBACA,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE;wBACvC,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,GAAG,CAAC,QAAQ;qBACvB,CAAC,CAAC;oBACH,GAAG,CAAC,KAAK,CAAC;wBACR,CAAC,EAAE,IAAI;wBACP,EAAE,EAAE,UAAU,CAAC,UAAa,CAAC;wBAC7B,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE;wBACnB,GAAG,EAAE,4BAA4B;wBACjC,IAAI,EAAE;4BACJ,YAAY,EAAE,GAAG,CAAC,YAAY;4BAC9B,QAAQ,EAAE,GAAG,CAAC,QAAQ;yBACvB;qBACF,CAAC,CAAC;iBACJ;gBACD,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC,CACF,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,uBAAuB,EAAE,CAAC,GAA+B,EAAE,EAAE;gBACrE,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAChE,IACE,CAAC,cAAc;oBACf,CAAC,cAAc,CAAC,OAAO;oBACvB,2BAA2B,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,EAClE;oBACA,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE;wBACvC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO;wBAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;qBACvB,CAAC,CAAC;oBACH,GAAG,CAAC,IAAI,CACN,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,yBAAyB,EACzB;wBACE,YAAY,EAAE,GAAG,CAAC,YAAY;wBAC9B,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO;qBAC7B,CACF,CAAC;iBACH;gBACD,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,GAA0B,EAAE,EAAE;gBAC3D,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;gBAC7D,GAAG,CAAC,KAAK,CAAC;oBACR,CAAC,EAAE,IAAI;oBACP,EAAE,EAAE,UAAU,CAAC,UAAa,CAAC;oBAC7B,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE;oBACnB,GAAG,EAAE,0BAA0B;oBAC/B,IAAI,EAAE;wBACJ,OAAO;wBACP,kBAAkB,EAAE,YAAY;wBAChC,QAAQ;wBACR,WAAW;qBACZ;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,GAAuB,EAAE,EAAE;gBACrD,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;gBACtE,GAAG,CAAC,KAAK,CAAC;oBACR,CAAC,EAAE,IAAI;oBACP,EAAE,EAAE,UAAU,CAAC,UAAa,CAAC;oBAC7B,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE;oBACnB,GAAG,EAAE,uBAAuB;oBAC5B,IAAI,EAAE;wBACJ,OAAO;wBACP,kBAAkB,EAAE,YAAY;wBAChC,QAAQ;wBACR,WAAW;wBACX,OAAO,EAAE,OAAO,CAAC,OAAO;qBACzB;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAEO,kBAAkB,CAAC,IAAgB;QACzC,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,EAAE;YACtC,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAc,EAAE,CAAC,CAAC;SAC3D;QACD,MAAM,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;QACzE,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC/C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAQD,KAAK,CAAC,aAAa,CACjB,IAAY;QAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B,UAAU,CAAC,UAAa,CAAC,EACzB,uBAAuB,EACvB,EAAE,EAAE,EAAE,IAAI,EAAE,CACb,CAAC;QACF,IAAI;YACF,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,MAAM,IAAA,wBAAU,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,IAAA,0CAAiB,EAAC,KAAK,CAAC,CAAC;YAC5C,OAAO,EAAE,IAAI,EAAE,GAAG,UAAU,EAAE,CAAC;SAChC;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,CAAC,GAAG,CAAC,CAAC;YACX,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;SACnC;IACH,CAAC;IAQO,sBAAsB,CAC5B,EAAU,EACV,IAAyD;QAEzD,OAAO;YACL,GAAG,IAAI,CAAC,KAAK;YACb,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9B,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAOO,qBAAqB,CAC3B,YAAoB,EACpB,cAAsB,EACtB,IAAwB;;QAExB,OAAO;YACL,EAAE,EAAE,YAAY,GAAG,GAAG,GAAG,cAAc;YACvC,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,IAAI,CAAC,MAAM;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,eAAe,EAAE,IAAI,CAAC,SAAS,KAAK,CAAC;YACrC,WAAW,EAAE,IAAI,CAAC,UAAU;YAC5B,cAAc,EAAE,MAAA,IAAI,CAAC,KAAK,mCAAI,CAAC;YAC/B,aAAa,EAAE,IAAI,CAAC,IAAI;YACxB,iBAAiB,EAAE,MAAA,IAAI,CAAC,UAAU,mCAAI,CAAC;YACvC,YAAY,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC;YACnC,iBAAiB,EAAE,MAAA,IAAI,CAAC,eAAe,mCAAI,CAAC;YAC5C,WAAW,EAAE,MAAA,IAAI,CAAC,QAAQ,mCAAI,CAAC;YAC/B,UAAU,EAAE,MAAA,IAAI,CAAC,cAAc,mCAAI,CAAC;YACpC,cAAc,EAAE,IAAI,CAAC,aAAa;YAClC,YAAY,EAAE,IAAI,CAAC,UAAU;YAC7B,gBAAgB,EAAE,IAAI,CAAC,cAAc;YACrC,UAAU,EAAE,IAAI,CAAC,SAAS;YAC1B,iBAAiB,EAAE,IAAI,CAAC,OAAO;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;YACtC,WAAW,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;SACnC,CAAC;IACJ,CAAC;IAQO,oBAAoB,CAAC,IAAY,EAAE,EAAY;QACrD,OAAO;YACL,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,WAAW,EAAE,EAAE,CAAC,WAAW;SAC5B,CAAC;IACJ,CAAC;IAQD,WAAW,CAAC,EAAU,EAAE,IAAgB;QACtC,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;aACjC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;aAC1B,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;IAQO,gBAAgB,CACtB,YAAoB,EACpB,QAA4B;QAO5B,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAC7D,CAAC,WAAW,EAAE,EAAE;YACd,MAAM,KAAK,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9C,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YAER,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC,CACF,CAAC;IACJ,CAAC;IAOO,eAAe,CAAC,EAAU;QAChC,OAAO,IAAA,oBAAc,EAAC,EAAE,CAAC,CAAC,UAAU,CAAC;IACvC,CAAC;IAOO,aAAa,CAAC,EAAU;QAC9B,OAAO,IAAA,oBAAc,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;IACrC,CAAC;IASO,gBAAgB,CAAC,GAAoC;QAC3D,OAAO,CAAC,GAAG,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAClD,CAAC,MAAyB,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CACjD,CAAC;IACJ,CAAC;IASO,iBAAiB,CAAC,KAAU;QAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC5B;aAAM;YACL,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC;SAC5D;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,QAAQ;;QACd,MAAA,MAAA,IAAI,CAAC,eAAe,0CAAE,kBAAkB,kDAAI,CAAC;QAC7C,MAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,kBAAkB,kDAAI,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,6BAA6B,GAAG,SAAS,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAEO,WAAW,CACjB,KAAoC,EACpC,EAAU,EACV,OAAY,EAAE;QAEd,OAAO,CAAC,KAAU,EAAE,MAAW,EAAE,EAAE;YACjC,IAAI,KAAK,EAAE;gBACT,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAClD,GAAG,CAAC,KAAK,CACP,UAAU,CAAC,UAAa,CAAC,EACzB,IAAI,CAAC,OAAO,EAAE,EACd,0CAA0C,EAC1C;oBACE,EAAE;oBACF,OAAO;oBACP,GAAG,IAAI;iBACR,CACF,CAAC;aACH;iBAAM;gBACL,IAAI,MAAM,EAAE;oBACV,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC;iBAC5B;gBACD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;oBAChC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;iBAC3C;qBAAM;oBACL,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;iBACrC;aACF;QACH,CAAC,CAAC;IACJ,CAAC;CACF;AAED,kBAAe,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-connection-model.d.ts","sourceRoot":"","sources":["../../src/legacy/legacy-connection-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"legacy-connection-model.d.ts","sourceRoot":"","sources":["../../src/legacy/legacy-connection-model.ts"],"names":[],"mappings":"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"}