dexbot 1.4.4 → 1.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/modules/bots_file_lock.d.ts +4 -4
- package/dist/modules/bots_file_lock.d.ts.map +1 -1
- package/dist/modules/bots_file_lock.js +16 -53
- package/dist/modules/bots_file_lock.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +10 -10
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_class.js +18 -8
- package/dist/modules/dexbot_class.js.map +1 -1
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.js +4 -5
- package/dist/modules/dexbot_cow_runtime.js.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.d.ts +2 -2
- package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.js +8 -7
- package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
- package/dist/modules/dexbot_startup_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_startup_runtime.js +1 -0
- package/dist/modules/dexbot_startup_runtime.js.map +1 -1
- package/dist/modules/dexbot_state_recovery.js +2 -2
- package/dist/modules/dexbot_state_recovery.js.map +1 -1
- package/dist/modules/order/async_lock.d.ts +12 -3
- package/dist/modules/order/async_lock.d.ts.map +1 -1
- package/dist/modules/order/async_lock.js +46 -8
- package/dist/modules/order/async_lock.js.map +1 -1
- package/dist/modules/order/grid.d.ts +10 -10
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +75 -92
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile.d.ts +4 -2
- package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile.js +70 -55
- package/dist/modules/order/grid_reconcile.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts +6 -2
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +101 -44
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/manager.d.ts +21 -5
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +123 -44
- package/dist/modules/order/manager.js.map +1 -1
- package/dist/modules/order/strategy.d.ts.map +1 -1
- package/dist/modules/order/strategy.js +9 -2
- package/dist/modules/order/strategy.js.map +1 -1
- package/dist/modules/order/sync_engine.d.ts +7 -3
- package/dist/modules/order/sync_engine.d.ts.map +1 -1
- package/dist/modules/order/sync_engine.js +10 -23
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +5 -2
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +23 -6
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/system.d.ts +2 -1
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +8 -5
- package/dist/modules/order/utils/system.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../modules/order/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkMH,cAAM,YAAY;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,EAAE,GAAG,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,GAAG,CAAC;IACjB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,QAAQ,EAAE,GAAG,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../modules/order/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -291,12 +291,13 @@ class OrderManager {
|
|
|
291
291
|
_pendingBroadcasts;
|
|
292
292
|
_committedOrderIds;
|
|
293
293
|
_committedOrderIdsBuiltAt;
|
|
294
|
+
_gapSlots;
|
|
294
295
|
_gridDirtyAt;
|
|
295
296
|
_orphanFillsCreditedAt;
|
|
296
297
|
_pendingRecovery;
|
|
297
298
|
_recentFillKeysSnapshot;
|
|
298
299
|
_metrics;
|
|
299
|
-
|
|
300
|
+
_currentWorkingGridStack;
|
|
300
301
|
_cowEngine;
|
|
301
302
|
accountOrders;
|
|
302
303
|
btsBalance;
|
|
@@ -321,8 +322,8 @@ class OrderManager {
|
|
|
321
322
|
this.strategy = new strategy_1.default(this);
|
|
322
323
|
this.sync = new sync_engine_1.default(this);
|
|
323
324
|
this._rebalanceState = constants_1.REBALANCE_STATES.NORMAL;
|
|
324
|
-
this._bootstrapping =
|
|
325
|
-
this._broadcastingFlag =
|
|
325
|
+
this._bootstrapping = 0;
|
|
326
|
+
this._broadcastingFlag = 0;
|
|
326
327
|
this._broadcastingStartedAt = 0;
|
|
327
328
|
this._illegalStateSignal = null;
|
|
328
329
|
this._accountingFailureSignal = null;
|
|
@@ -353,19 +354,19 @@ class OrderManager {
|
|
|
353
354
|
// LOCK HIERARCHY (convention — not enforced at runtime to avoid false
|
|
354
355
|
// positives from async contention and multi-bot sharing a process).
|
|
355
356
|
// Acquire in ascending level order only:
|
|
356
|
-
// Level 0:
|
|
357
|
-
// Level 1:
|
|
358
|
-
// Level 2:
|
|
359
|
-
// Level 3:
|
|
357
|
+
// Level 0: _fillProcessingLock (fill processing — outermost)
|
|
358
|
+
// Level 1: _divergenceLock (divergence checks)
|
|
359
|
+
// Level 2: _syncLock (sync operations — timeout-protected)
|
|
360
|
+
// Level 3: _gridLock (grid mutations)
|
|
360
361
|
// Level 4: _fundLock (fund operations — innermost)
|
|
361
362
|
// Note: AsyncLock IS re-entrant (acquire detects nested calls via _holding).
|
|
362
|
-
this.
|
|
363
|
-
this.
|
|
363
|
+
this._fillProcessingLock = new async_lock_1.default({ level: 0, timeout: constants_1.TIMING.SYNC_LOCK_TIMEOUT_MS });
|
|
364
|
+
this._divergenceLock = new async_lock_1.default({ level: 1 });
|
|
365
|
+
this._syncLock = new async_lock_1.default({ level: 2 });
|
|
364
366
|
this._gridLock = new async_lock_1.default({
|
|
365
|
-
level:
|
|
367
|
+
level: 3,
|
|
366
368
|
onContention: () => { this._metrics.gridLockContention++; }
|
|
367
369
|
});
|
|
368
|
-
this._syncLock = new async_lock_1.default({ level: 3 });
|
|
369
370
|
this._fundLock = new async_lock_1.default({ level: 4, timeout: 30000 });
|
|
370
371
|
this._recentlyRotatedOrderIds = new Set();
|
|
371
372
|
this._gridSidesUpdated = new Set();
|
|
@@ -382,6 +383,7 @@ class OrderManager {
|
|
|
382
383
|
this._pendingBroadcasts = new Map();
|
|
383
384
|
this._committedOrderIds = new Set();
|
|
384
385
|
this._committedOrderIdsBuiltAt = 0;
|
|
386
|
+
this._gapSlots = 0;
|
|
385
387
|
this._gridDirtyAt = null;
|
|
386
388
|
this._orphanFillsCreditedAt = null;
|
|
387
389
|
this._pendingRecovery = null;
|
|
@@ -395,9 +397,9 @@ class OrderManager {
|
|
|
395
397
|
lastSyncDurationMs: 0,
|
|
396
398
|
metricsStartTime: Date.now()
|
|
397
399
|
};
|
|
398
|
-
this._bootstrapping =
|
|
400
|
+
this._bootstrapping = 1;
|
|
399
401
|
this.logger?.log('[BOOTSTRAP] Started', 'debug');
|
|
400
|
-
this.
|
|
402
|
+
this._currentWorkingGridStack = [];
|
|
401
403
|
this._cowEngine = null;
|
|
402
404
|
this._cleanExpiredLocks();
|
|
403
405
|
}
|
|
@@ -413,13 +415,20 @@ class OrderManager {
|
|
|
413
415
|
return this._cowEngine;
|
|
414
416
|
}
|
|
415
417
|
_clearWorkingGridRef() {
|
|
416
|
-
this.
|
|
417
|
-
this._rebalanceState =
|
|
418
|
+
this._currentWorkingGridStack.pop();
|
|
419
|
+
this._rebalanceState = this._currentWorkingGridStack.length > 0
|
|
420
|
+
? constants_1.REBALANCE_STATES.REBALANCING
|
|
421
|
+
: constants_1.REBALANCE_STATES.NORMAL;
|
|
418
422
|
}
|
|
419
423
|
_setRebalanceState(state) {
|
|
420
424
|
this._rebalanceState = state;
|
|
421
425
|
this.logger?.log(`[COW] Rebalance state: ${state}`, 'debug');
|
|
422
426
|
}
|
|
427
|
+
_resetRebalanceStateToDepth() {
|
|
428
|
+
this._rebalanceState = this._currentWorkingGridStack.length > 0
|
|
429
|
+
? constants_1.REBALANCE_STATES.REBALANCING
|
|
430
|
+
: constants_1.REBALANCE_STATES.NORMAL;
|
|
431
|
+
}
|
|
423
432
|
/**
|
|
424
433
|
* @returns {boolean}
|
|
425
434
|
*/
|
|
@@ -436,14 +445,14 @@ class OrderManager {
|
|
|
436
445
|
* @returns {boolean}
|
|
437
446
|
*/
|
|
438
447
|
isBootstrapping() {
|
|
439
|
-
return this._bootstrapping;
|
|
448
|
+
return this._bootstrapping > 0;
|
|
440
449
|
}
|
|
441
450
|
/**
|
|
442
451
|
* Whether a broadcast is currently active (no side-effects).
|
|
443
452
|
* @returns {boolean}
|
|
444
453
|
*/
|
|
445
454
|
isBroadcastingActive() {
|
|
446
|
-
return this._broadcastingFlag;
|
|
455
|
+
return this._broadcastingFlag > 0;
|
|
447
456
|
}
|
|
448
457
|
/**
|
|
449
458
|
* Auto-clears a stale broadcast flag after 120s so a hung
|
|
@@ -454,11 +463,14 @@ class OrderManager {
|
|
|
454
463
|
* @returns {void}
|
|
455
464
|
*/
|
|
456
465
|
_clearStaleBroadcastFlag() {
|
|
457
|
-
if (this._broadcastingFlag && this._broadcastingStartedAt > 0) {
|
|
466
|
+
if (this._broadcastingFlag > 0 && this._broadcastingStartedAt > 0) {
|
|
458
467
|
const elapsed = Date.now() - this._broadcastingStartedAt;
|
|
459
468
|
if (elapsed > 120000) {
|
|
460
469
|
this.logger?.log?.('[BROADCAST] Auto-clearing stale broadcast flag after 120s', 'warn');
|
|
461
|
-
this
|
|
470
|
+
// Hard-reset to 0 (not decrement) — this is a safety valve for
|
|
471
|
+
// a hung broadcast where stopBroadcasting() was never called.
|
|
472
|
+
// The caller is released from the refcount contract.
|
|
473
|
+
this._broadcastingFlag = 0;
|
|
462
474
|
this._broadcastingStartedAt = 0;
|
|
463
475
|
}
|
|
464
476
|
}
|
|
@@ -474,16 +486,20 @@ class OrderManager {
|
|
|
474
486
|
* @returns {void}
|
|
475
487
|
*/
|
|
476
488
|
startBootstrap() {
|
|
477
|
-
this._bootstrapping
|
|
478
|
-
|
|
489
|
+
if (this._bootstrapping === 0) {
|
|
490
|
+
this.logger?.log('[BOOTSTRAP] Started', 'debug');
|
|
491
|
+
}
|
|
492
|
+
this._bootstrapping++;
|
|
479
493
|
}
|
|
480
494
|
/**
|
|
481
495
|
* @returns {import('./types').BootstrapResult}
|
|
482
496
|
*/
|
|
483
497
|
finishBootstrap() {
|
|
484
498
|
const result = { hadDrift: false, driftInfo: null };
|
|
485
|
-
if (this._bootstrapping) {
|
|
486
|
-
this._bootstrapping
|
|
499
|
+
if (this._bootstrapping > 0) {
|
|
500
|
+
this._bootstrapping--;
|
|
501
|
+
}
|
|
502
|
+
if (this._bootstrapping === 0) {
|
|
487
503
|
this.logger?.log('[BOOTSTRAP] Finished', 'debug');
|
|
488
504
|
// Validate fund state at bootstrap completion - if drift exists here,
|
|
489
505
|
// it's not transient (grid is now stable) and indicates a potential bug
|
|
@@ -502,16 +518,22 @@ class OrderManager {
|
|
|
502
518
|
* @returns {void}
|
|
503
519
|
*/
|
|
504
520
|
startBroadcasting() {
|
|
505
|
-
this._broadcastingFlag
|
|
506
|
-
|
|
507
|
-
|
|
521
|
+
if (this._broadcastingFlag === 0) {
|
|
522
|
+
this._broadcastingStartedAt = Date.now();
|
|
523
|
+
}
|
|
524
|
+
this._broadcastingFlag++;
|
|
525
|
+
this.logger?.log?.('[BROADCAST] Flag incremented — fill processing will be deferred until stopBroadcasting()', 'debug');
|
|
508
526
|
}
|
|
509
527
|
/**
|
|
510
528
|
* @returns {void}
|
|
511
529
|
*/
|
|
512
530
|
stopBroadcasting() {
|
|
513
|
-
this._broadcastingFlag
|
|
514
|
-
|
|
531
|
+
if (this._broadcastingFlag > 0) {
|
|
532
|
+
this._broadcastingFlag--;
|
|
533
|
+
}
|
|
534
|
+
if (this._broadcastingFlag === 0) {
|
|
535
|
+
this._broadcastingStartedAt = 0;
|
|
536
|
+
}
|
|
515
537
|
}
|
|
516
538
|
/**
|
|
517
539
|
* @returns {void}
|
|
@@ -533,10 +555,31 @@ class OrderManager {
|
|
|
533
555
|
return (this.funds?.committed?.grid?.[side] || 0) + (this.funds?.virtual?.[side] || 0);
|
|
534
556
|
}
|
|
535
557
|
/**
|
|
558
|
+
* Computes committed amounts directly from the orders map to ensure the
|
|
559
|
+
* snapshot is internally consistent even when called inside a
|
|
560
|
+
* pauseFundRecalc region. Normally recalculateFunds() keeps
|
|
561
|
+
* funds.committed.chain in sync, but when pauses are nested the cached
|
|
562
|
+
* value can lag behind the actual orders state (virtualized orders
|
|
563
|
+
* release committed capital via updateOptimisticFreeBalance without
|
|
564
|
+
* triggering a recalc). Reading from the orders map avoids that race.
|
|
536
565
|
* @returns {import('./types').ChainFundsSnapshot}
|
|
537
566
|
*/
|
|
538
567
|
getChainFundsSnapshot() {
|
|
539
|
-
|
|
568
|
+
let committedBuy = 0, committedSell = 0;
|
|
569
|
+
for (const order of this.orders.values()) {
|
|
570
|
+
const isActive = (order.state === constants_1.ORDER_STATES.ACTIVE || order.state === constants_1.ORDER_STATES.PARTIAL) && !!order.orderId;
|
|
571
|
+
if (!isActive)
|
|
572
|
+
continue;
|
|
573
|
+
const size = toFiniteNumber(order.size);
|
|
574
|
+
if (size <= 0)
|
|
575
|
+
continue;
|
|
576
|
+
const isBuy = order.type === constants_1.ORDER_TYPES.BUY || (order.type === constants_1.ORDER_TYPES.SPREAD && order.price < this.config.startPrice);
|
|
577
|
+
if (isBuy)
|
|
578
|
+
committedBuy += size;
|
|
579
|
+
else
|
|
580
|
+
committedSell += size;
|
|
581
|
+
}
|
|
582
|
+
const totals = (0, math_1.computeChainFundTotals)(this.accountTotals, { buy: committedBuy, sell: committedSell });
|
|
540
583
|
const allocatedBuy = toFiniteNumber(this.funds?.allocated?.buy, totals.chainTotalBuy);
|
|
541
584
|
const allocatedSell = toFiniteNumber(this.funds?.allocated?.sell, totals.chainTotalSell);
|
|
542
585
|
const btsBalance = (this.config.assetA !== 'BTS' && this.config.assetB !== 'BTS')
|
|
@@ -777,14 +820,13 @@ class OrderManager {
|
|
|
777
820
|
* @param {string} src - Source identifier
|
|
778
821
|
* @returns {Promise<import('./types').SyncResult>}
|
|
779
822
|
*/
|
|
780
|
-
async synchronizeWithChain(data, src
|
|
781
|
-
//
|
|
782
|
-
//
|
|
783
|
-
|
|
784
|
-
return await this._applySync(data, src, options);
|
|
823
|
+
async synchronizeWithChain(data, src) {
|
|
824
|
+
// Lock delegation: createOrder/cancelOrder acquire _gridLock internally;
|
|
825
|
+
// readOpenOrders/periodicBlockchainFetch acquire _syncLock → _gridLock.
|
|
826
|
+
return await this._applySync(data, src);
|
|
785
827
|
}
|
|
786
|
-
async _applySync(data, src
|
|
787
|
-
return await this.sync.synchronizeWithChain(data, src
|
|
828
|
+
async _applySync(data, src) {
|
|
829
|
+
return await this.sync.synchronizeWithChain(data, src);
|
|
788
830
|
}
|
|
789
831
|
async _initializeAssets() {
|
|
790
832
|
return await this.sync.initializeAssets();
|
|
@@ -888,11 +930,17 @@ class OrderManager {
|
|
|
888
930
|
let nextOrder = { ...validation.normalizedOrder };
|
|
889
931
|
// Apply phantom order auto-correction to the normalized order
|
|
890
932
|
const phantomError = validation.errors.find((e) => e.code === 'PHANTOM_ORDER');
|
|
933
|
+
let accountingSkip = skipAccounting;
|
|
891
934
|
if (phantomError && phantomError.autoCorrect) {
|
|
892
935
|
nextOrder = { ...nextOrder, ...phantomError.autoCorrect };
|
|
936
|
+
// Phantom orders never had funds committed on-chain (no orderId).
|
|
937
|
+
// The auto-correction transitions ACTIVE/PARTIAL → VIRTUAL which
|
|
938
|
+
// updateOptimisticFreeBalance would treat as capital release,
|
|
939
|
+
// inflating accountTotals. Skip capital commitment accounting.
|
|
940
|
+
accountingSkip = true;
|
|
893
941
|
}
|
|
894
942
|
if (this.accountant) {
|
|
895
|
-
await this.accountant.updateOptimisticFreeBalance(oldOrder, nextOrder, context, normalizedFee,
|
|
943
|
+
await this.accountant.updateOptimisticFreeBalance(oldOrder, nextOrder, context, normalizedFee, accountingSkip);
|
|
896
944
|
}
|
|
897
945
|
const updatedOrder = (0, system_1.deepFreeze)({ ...nextOrder });
|
|
898
946
|
const id = order.id;
|
|
@@ -907,16 +955,33 @@ class OrderManager {
|
|
|
907
955
|
this._markGridDirty();
|
|
908
956
|
return true;
|
|
909
957
|
}
|
|
958
|
+
/**
|
|
959
|
+
* Backward-compatible accessor for _currentWorkingGrid.
|
|
960
|
+
* Returns the top of the working grid stack (null if empty).
|
|
961
|
+
*/
|
|
962
|
+
get _currentWorkingGrid() {
|
|
963
|
+
return this._peekWorkingGrid();
|
|
964
|
+
}
|
|
965
|
+
set _currentWorkingGrid(val) {
|
|
966
|
+
if (val !== null) {
|
|
967
|
+
this._currentWorkingGridStack.push(val);
|
|
968
|
+
}
|
|
969
|
+
}
|
|
970
|
+
_peekWorkingGrid() {
|
|
971
|
+
const stack = this._currentWorkingGridStack;
|
|
972
|
+
return stack.length > 0 ? stack[stack.length - 1] : null;
|
|
973
|
+
}
|
|
910
974
|
_syncWorkingGridFromMasterMutation(orderId, context) {
|
|
911
|
-
|
|
975
|
+
const wg = this._peekWorkingGrid();
|
|
976
|
+
if (!wg || !this.isPlanningActive()) {
|
|
912
977
|
return;
|
|
913
978
|
}
|
|
914
979
|
try {
|
|
915
|
-
|
|
916
|
-
|
|
980
|
+
wg.markStale(`master mutation during ${(this._rebalanceState || '').toLowerCase()} (${context})`);
|
|
981
|
+
wg.syncFromMaster(this.orders, orderId, this._gridVersion);
|
|
917
982
|
}
|
|
918
983
|
catch (syncErr) {
|
|
919
|
-
|
|
984
|
+
wg.markStale(`working-grid sync failure: ${(0, errors_1.getErrorMessage)(syncErr)}`);
|
|
920
985
|
this.logger.log(`[COW] Failed to sync working grid for order ${orderId}: ${(0, errors_1.getErrorMessage)(syncErr)}`, 'warn');
|
|
921
986
|
}
|
|
922
987
|
}
|
|
@@ -932,8 +997,14 @@ class OrderManager {
|
|
|
932
997
|
let allOk = true;
|
|
933
998
|
for (const update of updates) {
|
|
934
999
|
const ok = await this._applyOrderUpdate(update, context, updateOptions);
|
|
935
|
-
if (ok === false)
|
|
1000
|
+
if (ok === false) {
|
|
936
1001
|
allOk = false;
|
|
1002
|
+
// Stop on first fatal error (ILLEGAL_SPREAD_STATE).
|
|
1003
|
+
// Remaining valid updates will be reconciled on the
|
|
1004
|
+
// next sync cycle — safer than applying mutations on
|
|
1005
|
+
// top of an inconsistent grid state.
|
|
1006
|
+
break;
|
|
1007
|
+
}
|
|
937
1008
|
}
|
|
938
1009
|
return allOk;
|
|
939
1010
|
});
|
|
@@ -1281,7 +1352,7 @@ class OrderManager {
|
|
|
1281
1352
|
this._clearWorkingGridRef();
|
|
1282
1353
|
return result;
|
|
1283
1354
|
}
|
|
1284
|
-
this.
|
|
1355
|
+
this._currentWorkingGridStack.push(result.workingGrid);
|
|
1285
1356
|
return result;
|
|
1286
1357
|
}
|
|
1287
1358
|
_reconcileGridCOW(targetGrid, targetBoundary, workingGrid) {
|
|
@@ -1425,6 +1496,9 @@ class OrderManager {
|
|
|
1425
1496
|
catch (recalcErr) {
|
|
1426
1497
|
this.logger.log(`[COW] Fund recalculation failed post-commit: ${(0, errors_1.getErrorMessage)(recalcErr)}`, 'error');
|
|
1427
1498
|
this._recoveryState = { ...this._recoveryState, lastFailureAt: Date.now() };
|
|
1499
|
+
// Re-throw to signal callers that the commit is incomplete
|
|
1500
|
+
// (grid state committed, but fund state is stale).
|
|
1501
|
+
throw recalcErr;
|
|
1428
1502
|
}
|
|
1429
1503
|
finally {
|
|
1430
1504
|
this._clearWorkingGridRef();
|
|
@@ -1480,7 +1554,12 @@ class OrderManager {
|
|
|
1480
1554
|
this.logger.log(`[PERSISTENCE-GATE] Skipping persistence of corrupted state: ${validation.reason}`, 'warn');
|
|
1481
1555
|
return validation;
|
|
1482
1556
|
}
|
|
1483
|
-
await (0, system_1.persistGridSnapshot)(this, this.accountOrders, snapshotOrders, recentFillKeys);
|
|
1557
|
+
const persisted = await (0, system_1.persistGridSnapshot)(this, this.accountOrders, snapshotOrders, recentFillKeys);
|
|
1558
|
+
if (persisted === false) {
|
|
1559
|
+
this.logger.log(`[PERSIST] Grid persistence FAILED (disk full / permissions / write error)`, 'error');
|
|
1560
|
+
// Keep the dirty flag set so the next flush retries.
|
|
1561
|
+
return { isValid: false, reason: 'persistence write failed', skipped: false, suspended: false };
|
|
1562
|
+
}
|
|
1484
1563
|
// On a successful live-grid persist (the default — no explicit
|
|
1485
1564
|
// snapshotOrders was passed in), clear the dirty flag so that
|
|
1486
1565
|
// a subsequent end-of-tick flushGridDirty() call sees the grid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../modules/order/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../modules/order/manager.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,kFAAkF;AAClF,mCAAmC;AACnC,kFAAkF;AAGlF,2CAA2E;AAC3E,6CAA8C;AAC9C,iDAA6C;AAC7C,sDAA8B;AAC9B,8DAAqC;AACrC,8DAAsC;AACtC,0DAAwC;AACxC,gEAAuC;AACvC,iCAAuF;AACvF,iDAAmC;AACnC,4CASsB;AACtB,uCAOsB;AACtB,+CAc0B;AAC1B,4CAAkD;AAClD,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;AAElC,kFAAkF;AAClF,kCAAkC;AAClC,kFAAkF;AAClF,EAAE;AACF,mDAAmD;AACnD,EAAE;AACF,kBAAkB;AAClB,0EAA0E;AAC1E,0EAA0E;AAC1E,EAAE;AACF,2EAA2E;AAC3E,EAAE;AACF,YAAY;AACZ,kEAAkE;AAClE,iDAAiD;AACjD,qFAAqF;AACrF,6DAA6D;AAC7D,qEAAqE;AACrE,4CAA4C;AAC5C,0EAA0E;AAC1E,EAAE;AACF,kBAAkB;AAClB,6EAA6E;AAC7E,6DAA6D;AAC7D,iEAAiE;AACjE,gEAAgE;AAChE,2EAA2E;AAC3E,EAAE;AACF,kCAAkC;AAClC,2EAA2E;AAC3E,mDAAmD;AACnD,4DAA4D;AAC5D,iEAAiE;AACjE,mEAAmE;AACnE,EAAE;AACF,4BAA4B;AAC5B,4EAA4E;AAC5E,mEAAmE;AACnE,kEAAkE;AAClE,2DAA2D;AAC3D,EAAE;AACF,kFAAkF;AAElF,MAAM,kBAAkB;IACpB,QAAQ,CAAM;IACd,MAAM,CAAM;IACZ,MAAM,CAAM;IACZ,MAAM,CAAM;IAEZ,YAAY,IAAS;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACX,KAAK,EACL,KAAK,GAAG,EAAE,EACV,UAAU,GAAG,IAAI,GAAG,EAAE,EACpB;QACF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,WAAW,GAAG,IAAI,0BAAW,CAAC,UAAU,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9E,MAAM,cAAc,GAAG;YACnB,gBAAgB,EAAE,UAAU;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa,EAAE,IAAI,CAAC,MAAM;YAC1B,KAAK;YACL,UAAU;YACV,KAAK;YACL,kBAAkB,EAAE,WAAW;SAClC,CAAC;QAEF,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAEtG,IAAI,oBAAoB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,iCAAiC,CAAC;QACtF,MAAM,eAAe,GAAG,IAAA,wBAAa,EACjC,UAAU,EACV,UAAU,EACV,cAAc,EACd;YACI,MAAM,EAAE,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;YAC9D,oBAAoB;SACvB,CACJ,CAAC;QAEF,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,IAAA,6BAAkB,EAAE,eAAuB,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAA,mCAAwB,EAAC,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACvF,IAAA,qCAA0B,EAAC,WAAW,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAEnF,MAAM,UAAU,GAAG;YACf,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS;YAC5C,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS;SAChD,CAAC;QAEF,MAAM,SAAS,GAAG,IAAA,mCAAwB,EAAC,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACxF,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,iCAAiC,SAAS,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;YAC9E,OAAO,IAAA,6BAAkB,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,WAAW,CAAC,cAAc,EAAE,IAAI,qCAAqC,CAAC;YACrF,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,qCAAqC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;YACxE,OAAO,IAAA,6BAAkB,EAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,4BAAiB,EAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAErE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,iCAAiC,QAAQ,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,GAAG,CACZ,uBAAuB,gBAAgB,CAAC,MAAM,kBAAkB,YAAY,CAAC,MAAM,EAAE,EACrF,MAAM,CACT,CAAC;QAEF,OAAO,IAAA,6BAAkB,EAAC;YACtB,OAAO,EAAE,gBAAgB;YACzB,YAAY;YACZ,WAAW;YACX,eAAe,EAAE,cAAc;YAC/B,gBAAgB,EAAE,QAAQ;SAC7B,CAAC,CAAC;IACP,CAAC;CACJ;AAED,kFAAkF;AAClF,iCAAiC;AACjC,kFAAkF;AAElF,MAAM,YAAY;IACd,MAAM,CAAM;IACZ,UAAU,CAAM;IAChB,MAAM,CAAM;IACZ,MAAM,CAAM;IACZ,WAAW,CAAM;IACjB,UAAU,CAAM;IAChB,UAAU,CAAM;IAChB,QAAQ,CAAM;IACd,IAAI,CAAM;IACV,eAAe,CAAS;IACxB,cAAc,CAAS;IACvB,iBAAiB,CAAS;IAC1B,sBAAsB,CAAS;IAC/B,mBAAmB,CAAM;IACzB,wBAAwB,CAAM;IAC9B,mBAAmB,CAAgJ;IACnK,oBAAoB,CAA0G;IACtH,kBAAkB,GAAuC,IAAI,CAAC;IAC9D,mBAAmB,GAAuC,IAAI,CAAC;IAC/D,yBAAyB,GAAW,CAAC,CAAC,CAAC;IACvC,0BAA0B,GAAW,CAAC,CAAC,CAAC;IAEhD;;;;;;;;;;;;OAYG;IACH,IAAI,aAAa;QACb,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,IAAI,IAAI,CAAC,yBAAyB,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3F,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACnC,CAAC;QACD,MAAM,MAAM,GAAgC,EAAE,CAAC;QAC/C,KAAK,MAAM,GAAG,IAAI,CAAC,uBAAW,CAAC,GAAG,EAAE,uBAAW,CAAC,IAAI,EAAE,uBAAW,CAAC,MAAM,CAAC,EAAE,CAAC;YACxE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5B,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;QACjC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,YAAY,CAAC;QACnD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,aAAa,CAAC,GAAgC;QAC9C,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;QAC9B,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,YAAY,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,IAAI,cAAc;QACd,IAAI,IAAI,CAAC,mBAAmB,KAAK,IAAI,IAAI,IAAI,CAAC,0BAA0B,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7F,OAAO,IAAI,CAAC,mBAAmB,CAAC;QACpC,CAAC;QACD,MAAM,OAAO,GAAgC,EAAE,CAAC;QAChD,KAAK,MAAM,GAAG,IAAI,CAAC,wBAAY,CAAC,OAAO,EAAE,wBAAY,CAAC,MAAM,EAAE,wBAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YAClF,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;QAC7B,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;gBAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACnC,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,YAAY,CAAC;QACpD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,IAAI,cAAc,CAAC,GAAgC;QAC/C,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAC;QAC/B,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,YAAY,CAAC;IACxD,CAAC;IACD,iBAAiB,CAAS;IAC1B,kBAAkB,CAAS;IAC3B,WAAW,CAAS;IACpB,MAAM,CAAM;IACZ,SAAS,CAAM;IACf,aAAa,CAAM;IACnB,KAAK,CAAM;IACX,qBAAqB,CAAM;IAC3B,qBAAqB,CAAM;IAC3B,iBAAiB,CAAU;IAC3B,4BAA4B,CAAQ;IACpC,cAAc,CAAgB;IAC9B,oBAAoB,CAAgB;IACpC,kBAAkB,CAAM;IACxB,SAAS,CAAM;IACf,mBAAmB,CAAM;IACzB,eAAe,CAAM;IACrB,SAAS,CAAM;IACf,SAAS,CAAM;IACf,wBAAwB,CAAW;IACnC,iBAAiB,CAAW;IAC5B,gBAAgB,CAAS;IACzB,wBAAwB,CAAuC;IAC/D,mBAAmB,CAAU;IAC7B,2BAA2B,CAAuC;IAClE,oBAAoB,CAAU;IAC9B,qBAAqB,CAAM;IAC3B,kBAAkB,CAAU;IAC5B,eAAe,CAAS;IACxB,YAAY,CAAS;IACrB,+BAA+B,CAAM;IACrC,kBAAkB,CAAgB;IAClC,kBAAkB,CAAc;IAChC,yBAAyB,CAAS;IAClC,SAAS,CAAS;IAClB,YAAY,CAAgB;IAC5B,sBAAsB,CAAgB;IACtC,gBAAgB,CAAuB;IACvC,uBAAuB,CAAgC;IAEvD,QAAQ,CAAM;IACN,wBAAwB,CAAQ;IACxC,UAAU,CAAM;IAChB,aAAa,CAAM;IACnB,UAAU,CAAkD;IAE5D;;OAEG;IACH,YAAY,SAA8B,EAAE;QACxC,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,0BAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1I,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC,QAAQ,EAAE;YAC/B,KAAK,EAAE,aAAa,EAAE,KAAK,IAAI,qBAAS;YACxC,OAAO;YACP,cAAc,EAAE,aAAa,EAAE,MAAM,IAAI,SAAS;SACrD,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAU,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAc,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAU,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,eAAe,GAAG,4BAAgB,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,mBAAmB,GAAG;YACvB,KAAK,EAAE,MAAM;YACb,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,KAAK;YACf,aAAa,EAAE,CAAC;SACnB,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG;YACxB,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE;YACxC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE;SAC5C,CAAC;QAIF,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,4BAA4B,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAE/B,sEAAsE;QACtE,oEAAoE;QACpE,yCAAyC;QACzC,gEAAgE;QAChE,mDAAmD;QACnD,qEAAqE;QACrE,gDAAgD;QAChD,6DAA6D;QAC7D,6EAA6E;QAC7E,IAAI,CAAC,mBAAmB,GAAG,IAAI,oBAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC7F,IAAI,CAAC,eAAe,GAAG,IAAI,oBAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAS,CAAC;YAC3B,KAAK,EAAE,CAAC;YACR,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;SAC9D,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAE7D,IAAI,CAAC,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1C,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;QACxC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;QAC5C,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC,yBAAyB,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QAEpC,IAAI,CAAC,QAAQ,GAAG;YACZ,eAAe,EAAE,CAAC;YAClB,gBAAgB,EAAE,CAAC;YACnB,mBAAmB,EAAE,CAAC;YACtB,kBAAkB,EAAE,CAAC;YACrB,2BAA2B,EAAE,CAAC;YAC9B,kBAAkB,EAAE,CAAC;YACrB,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE;SAC/B,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAED,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC,UAAU,GAAG,IAAI,kBAAkB,CAAC;gBACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED,oBAAoB;QAChB,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,CAAC;QACpC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC;YAC3D,CAAC,CAAC,4BAAgB,CAAC,WAAW;YAC9B,CAAC,CAAC,4BAAgB,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,kBAAkB,CAAC,KAAU;QACzB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,0BAA0B,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,2BAA2B;QACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,GAAG,CAAC;YAC3D,CAAC,CAAC,4BAAgB,CAAC,WAAW;YAC9B,CAAC,CAAC,4BAAgB,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,aAAa;QACT,OAAO,IAAI,CAAC,eAAe,KAAK,4BAAgB,CAAC,WAAW,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,cAAc;QACV,OAAO,IAAI,CAAC,eAAe,KAAK,4BAAgB,CAAC,YAAY,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,eAAe;QACX,OAAO,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;;OAGG;IACH,oBAAoB;QAChB,OAAO,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;OAOG;IACH,wBAAwB;QACpB,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,IAAI,CAAC,sBAAsB,GAAG,CAAC,EAAE,CAAC;YAChE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,sBAAsB,CAAC;YACzD,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;gBACnB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,2DAA2D,EAAE,MAAM,CAAC,CAAC;gBACxF,+DAA+D;gBAC/D,8DAA8D;gBAC9D,qDAAqD;gBACrD,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;YACpC,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,cAAc;QACV,IAAI,IAAI,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,eAAe;QACX,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAEpD,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAElD,sEAAsE;YACtE,wEAAwE;YACxE,MAAM,UAAU,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACnD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACvB,MAAM,CAAC,SAAS,GAAG,UAAiB,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,wDAAwD,UAAU,CAAC,MAAM,IAAI;oBAC7E,iDAAiD,EACjD,MAAM,CACT,CAAC;YACN,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8EAA8E,EAAE,MAAM,CAAC,CAAC;QAC5G,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,iBAAiB;QACb,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,0FAA0F,EAAE,OAAO,CAAC,CAAC;IAC5H,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC;QACD,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAc,EAAE,IAAS,EAAE,SAAc;QAChE,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAc,EAAE,IAAS,EAAE,SAAc;QAC3D,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;IAED,aAAa,CAAC,IAAS;QACnB,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;;;;;OASG;IACH,qBAAqB;QACjB,IAAI,YAAY,GAAG,CAAC,EAAE,aAAa,GAAG,CAAC,CAAC;QACxC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,wBAAY,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,wBAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;YAClH,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,IAAI,IAAI,CAAC;gBAAE,SAAS;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,uBAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,uBAAW,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC5H,IAAI,KAAK;gBAAE,YAAY,IAAI,IAAI,CAAC;;gBAC3B,aAAa,IAAI,IAAI,CAAC;QAC/B,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,6BAAsB,EAAC,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QACtG,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QACtF,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;QACzF,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC;YAC7E,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YACvD,CAAC,CAAC,IAAI,CAAC;QACX,OAAO,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;IAClE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,oBAAoB,CAAC,YAAiB,kBAAM,CAAC,yBAAyB;QACxE,IAAI,IAAA,4BAAqB,EAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;YAAE,OAAO;QAE5D,IAAI,WAAW,GAAG,IAAI,CAAC;QAEvB,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YACpC,IAAI,IAAA,4BAAqB,EAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;gBAAE,OAAO;YAC5D,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC9B,IAAI,CAAC,qBAAqB,GAAG,IAAI,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE;oBACtD,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC;gBACzC,CAAC,CAAC,CAAC;YACP,CAAC;YACD,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW;YAAE,OAAO;QAEzB,MAAM,IAAA,qBAAW,EAAC,WAAW,EAAE,SAAS,EAAE;YACtC,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,SAAgB;YAC9B,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2CAA2C,EAAE,MAAM,CAAC;SAChG,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,SAAc;QACnC,IAAI,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC1C,MAAM,IAAI,CAAC,iCAAiC,EAAE,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,iCAAiC;QACnC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,gCAAgC,EAAE,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAc,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;QACzF,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3C,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAW;QAC/B,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC9F,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QAEnC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE/B,IAAI,IAAA,4BAAqB,EAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,qBAAqB,KAAK,UAAU,EAAE,CAAC;YACtG,IAAI,CAAC;gBACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACjC,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACd,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,2CAA2C,IAAA,wBAAe,EAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAChG,CAAC;YACD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACtC,CAAC;IACL,CAAC;IAED,kCAAkC;QAC9B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,iCAAiC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;gBAClD,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;YACnC,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;OAEG;IACH,uBAAuB;QACnB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QACzD,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,IAAA,6BAAsB,EAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAEnH,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACnC,MAAM,YAAY,GAAG,IAAA,qCAA8B,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACtH,MAAM,aAAa,GAAG,IAAA,qCAA8B,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE1H,IAAI,YAAY,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtH,IAAI,aAAa,KAAK,CAAC;gBAAE,IAAI,CAAC,kCAAkC,EAAE,CAAC;QACvE,CAAC;QACD,IAAI,aAAa,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACzH,IAAI,cAAc,KAAK,CAAC;gBAAE,IAAI,CAAC,kCAAkC,EAAE,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QAElE,MAAM,YAAY,GAAG,YAAY,GAAG,CAAC,IAAI,IAAA,+BAAwB,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC5F,MAAM,aAAa,GAAG,aAAa,GAAG,CAAC,IAAI,IAAA,+BAAwB,EAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE/F,IAAI,YAAY;YAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;QAC3G,IAAI,aAAa;YAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC;IACnH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB;QAClB,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3C,OAAO,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,eAAe;QACX,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,yEAAyE;QACzE,yEAAyE;QACzE,2EAA2E;QAC3E,wBAAwB;QACxB,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAChC,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,CAAC,wBAAwB,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5C,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACd,mEAAmE,IAAI,CAAC,gBAAgB,OAAO,EAC/F,MAAM,CACT,CAAC;oBACF,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;oBAC1B,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;oBACrC,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;wBACxC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,qCAAqC,IAAA,wBAAe,EAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC7F,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC,EAAE,kBAAM,CAAC,uBAAuB,CAAC,CAAC;QACvC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB;QAClB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAChC,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBAC5C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACzC,CAAC;YACD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,kBAAkB;QACd,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACnC,YAAY,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,2BAA2B,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/C,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACd,sEAAsE,kBAAM,CAAC,uBAAuB,IAAI,EACxG,MAAM,CACT,CAAC;YACF,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;YACjC,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;QAC5C,CAAC,EAAE,kBAAM,CAAC,uBAAuB,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACf,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACnC,YAAY,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC/C,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;QAC5C,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAAC,MAAW,EAAE,IAAS;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,IAAS,EAAE,OAAY;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACH,wBAAwB,CAAC,KAAU,EAAE,OAAY;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CAAC,IAAS,EAAE,GAAQ;QAC1C,yEAAyE;QACzE,wEAAwE;QACxE,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAS,EAAE,GAAQ;QAChC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,QAAa;QACpB,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAM,CAAC,eAAe,CAAC;QACvD,KAAK,MAAM,EAAE,IAAI,QAAQ;YAAE,IAAI,EAAE;gBAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC3E,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,QAAa;QACtB,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,KAAK,MAAM,EAAE,IAAI,QAAQ;YAAE,IAAI,EAAE;gBAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,EAAO;QACjB,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,kBAAkB;QACd,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAChD,IAAI,GAAG,GAAG,SAAS,EAAE,CAAC;gBAClB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;IACL,CAAC;IAED,4BAA4B,CAAC,UAA+B,EAAE;QAC1D,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC;QAClE,CAAC;QAED,OAAO;YACH,cAAc,EAAE,OAAO,CAAC,cAAc,KAAK,IAAI;YAC/C,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACtE,CAAC;IACN,CAAC;IAED,uBAAuB,CAAC,UAA+B,EAAE;QACrD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,KAAU,EAAE,UAAe,aAAa,EAAE,UAAe,EAAE;QAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACjE,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3C,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAAU,EAAE,UAAe,aAAa,EAAE,UAAe,EAAE;QAC/E,MAAM,aAAa,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACjE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,aAAa,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,IAAA,wBAAa,EAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAE3D,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAE,CAAS,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,sBAAsB,CAAC,CAAC;YAC/G,IAAI,UAAU,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC7C,IAAI,CAAC,iBAAiB,GAAG;oBACrB,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,OAAO;oBACP,OAAO,EAAE,UAAU,CAAC,OAAO;iBAC9B,CAAC;gBACF,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC5B,MAAM,GAAG,GAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC/C,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;oBAC3B,MAAM,GAAG,CAAC;gBACd,CAAC;gBACD,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,uEAAuE;QACvE,uEAAuE;QACvE,IAAI,SAAS,GAAG,EAAE,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC;QAElD,8DAA8D;QAC9D,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;QACpF,IAAI,cAAc,GAAG,cAAc,CAAC;QACpC,IAAI,YAAY,IAAK,YAAoB,CAAC,WAAW,EAAE,CAAC;YACpD,SAAS,GAAG,EAAE,GAAG,SAAS,EAAE,GAAI,YAAoB,CAAC,WAAW,EAAE,CAAC;YACnE,kEAAkE;YAClE,iEAAiE;YACjE,8DAA8D;YAC9D,gEAAgE;YAChE,cAAc,GAAG,IAAI,CAAC;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;QACnH,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,mBAAU,EAAC,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;QAClD,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QAEpB,MAAM,MAAM,GAAG,IAAA,iBAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,IAAI,CAAC,kCAAkC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAErD,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClC,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,IAAI,mBAAmB;QACnB,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,mBAAmB,CAAC,GAAQ;QAC5B,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC;IAED,gBAAgB;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC5C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,CAAC;IAED,kCAAkC,CAAC,OAAY,EAAE,OAAY;QACzD,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACnC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAClC,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,EAAE,CAAC,SAAS,CACR,0BAA0B,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,GAAG,CACtF,CAAC;YACF,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,OAAY,EAAE,CAAC;YACpB,EAAE,CAAC,SAAS,CAAC,8BAA8B,IAAA,wBAAe,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+CAA+C,OAAO,KAAK,IAAA,wBAAe,EAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACnH,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CAAC,OAAY,EAAE,UAAe,cAAc,EAAE,UAAe,EAAE;QACrF,MAAM,aAAa,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACjE,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3C,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC3B,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;gBACxE,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;oBACf,KAAK,GAAG,KAAK,CAAC;oBACd,oDAAoD;oBACpD,oDAAoD;oBACpD,qDAAqD;oBACrD,qCAAqC;oBACrC,MAAM;gBACV,CAAC;YACL,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc;QACV,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACnC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,eAAe;QACX,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,WAAW;QACP,OAAO,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,cAAc,CAAC,eAAoB,kBAAkB;QACvD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAC5B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAClD,CAAC;QACD,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACd,6DAA6D,IAAI,CAAC,+BAA+B,EAAE,EACnG,MAAM,CACT,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAC5F,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,MAAM,IAAK,MAAc,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC7C,iEAAiE;YACjE,4CAA4C;YAC5C,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACd,sDAAsD,YAAY,MAAM,MAAM,CAAC,MAAM,IAAI,SAAS,EAAE,EACpG,MAAM,CACT,CAAC;YACF,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACd,8CAA8C,YAAY,EAAE,EAC5D,MAAM,CACT,CAAC;QACF,OAAO,MAAM,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,MAAW,EAAE,IAAS,EAAE,QAAa;QAC3D,oDAAoD;QACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAEnD,wDAAwD;QACxD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,wBAAwB,CAAC,CAAC;QAC3F,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAEhD,IAAI,eAAe,EAAE,CAAC;YAClB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACtE,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,0BAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACrF,OAAO;YACH,OAAO,EAAE,EAAE;YACX,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,KAAK;YAClB,WAAW;YACX,cAAc,EAAE,WAAW,CAAC,UAAU,EAAE;YACxC,eAAe,EAAE,IAAI,CAAC,WAAW;YACjC,OAAO,EAAE,KAAK;SACjB,CAAC;IACN,CAAC;IAED;;OAEG;IACH,0BAA0B;QACtB,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAE/E,mCAAmC;QACnC,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,qBAAqB,CAAC;QAC1E,MAAM,WAAW,GAAG,IAAA,8BAAuB,EAAC,uBAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAC/F,MAAM,UAAU,GAAG,IAAA,8BAAuB,EAAC,uBAAW,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAE7F,2EAA2E;QAC3E,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;QACrD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;QACpD,MAAM,cAAc,GAAG,IAAA,2BAAoB,EAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACxE,MAAM,aAAa,GAAG,IAAA,2BAAoB,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAErE,0FAA0F;QAC1F,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,uBAAW,CAAC,IAAI,EAAE,wBAAY,CAAC,OAAO,CAAC;aAC9E,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aAC3C,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACzB,2EAA2E;QAC3E,MAAM,UAAU,GAAG,MAAM;aACpB,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAA,2BAAoB,EAAC,CAAC,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,cAAc,CAAC;aACjF,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAEjD,yFAAyF;QACzF,MAAM,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,uBAAW,CAAC,GAAG,EAAE,wBAAY,CAAC,OAAO,CAAC;aAC5E,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aAC3C,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACxB,0EAA0E;QAC1E,MAAM,SAAS,GAAG,KAAK;aAClB,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAA,2BAAoB,EAAC,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,aAAa,CAAC;aAC/E,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAEjD,OAAO,CAAC,GAAG,UAAU,EAAE,GAAG,SAAS,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACH,uBAAuB,CAAC,IAAS,EAAE,KAAU;QACzC,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG;YAAE,OAAO,MAAM,CAAC;QACxB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACnB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClC,mEAAmE;YACnE,2CAA2C;YAC3C,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBAC1E,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,IAAS;QAC5B,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,wBAAY,CAAC,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,MAAc;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACd,yDAAyD,IAAI,CAAC,WAAW,MAAM,MAAM,KAAK;gBAC1F,+DAA+D,EAC/D,MAAM,CACT,CAAC;QACN,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,MAAc;QAC3B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,yBAAyB;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACxC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,8BAA8B;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC7C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACrC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAc,EAAE,OAAY;QACnD,OAAO,MAAM,IAAA,2BAAoB,EAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,OAAY;QAC9B,OAAO,MAAM,IAAA,sBAAe,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,sBAAsB;QAClB,OAAO,IAAA,6BAAsB,EAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,wBAAwB;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAA,4BAAqB,EAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAC7D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,IAAA,yBAAc,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,CAAC,CAAC;IACzG,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,kBAAgD,CAAC;QAC7D,MAAM,iBAAiB,GAAwB,CAAC,OAAO,eAAe,KAAK,QAAQ,CAAC;YAChF,CAAC,CAAC,EAAE,uBAAuB,EAAE,eAAe,EAAE;YAC9C,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QAE9B,MAAM,uBAAuB,GAAG,cAAc,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;QAC1F,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,CAAC,CAAC,iBAAiB,CAAC,aAAa,CAAC;QACxD,MAAM,gBAAgB,GAAG,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;QAC9D,MAAM,YAAY,GAAG,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC;QAEtD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,2EAA2E;QAC3E,uEAAuE;QACvE,IAAI,uBAAuB,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,uBAAuB,eAAe,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,IAAI,CAAC,4BAA4B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,4BAA4B,CAAC,MAAM,sBAAsB,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,wBAAwB,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,YAAY,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACpD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5C,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACtC,CAAC;QAED,OAAO;YACH,OAAO,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC;YAC7B,OAAO;SACV,CAAC;IACN,CAAC;IAED;;OAEG;IACH,4BAA4B;QACxB,IAAI,CAAC,IAAI,CAAC,qBAAqB;YAAE,OAAO,KAAK,CAAC;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,IAAI,2BAAe,CAAC,UAAU,CAAC;QACxF,IAAI,GAAG,GAAG,SAAS;YAAE,OAAO,KAAK,CAAC;QAElC,IAAI,CAAC,4BAA4B,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,iBAAiB;QACb,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB;YAC9C,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB;YACzC,CAAC,CAAC,CAAC,CAAC;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,IAAI,2BAAe,CAAC,UAAU,CAAC;QAExF,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,qBAAqB,KAAK,IAAI;YAC9C,iBAAiB,EAAE,eAAe;YAClC,UAAU,EAAE,eAAe,GAAG,SAAS;YACvC,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;YAC1C,kBAAkB,EAAE,IAAI,CAAC,4BAA4B,CAAC,MAAM;YAC5D,gBAAgB,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,IAAI,CAAC;SACtD,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,UAAe,EAAE,cAAmB;QAC9C,OAAO,IAAA,wBAAa,EAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE;YAC1D,MAAM,EAAE,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;YAC7D,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,iCAAiC;SACnF,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CAAC,QAAa,EAAE,EAAE,aAAkB,IAAI,GAAG,EAAE;QACnE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,CAAC;QACjE,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3C,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAa,EAAE,EAAE,aAAkB,IAAI,GAAG,EAAE;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,IAAA,6BAAkB,EAAC,mDAAmD,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,4BAAgB,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC;YACnC,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE;YACnC,KAAK;YACL,UAAU;SACb,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACvD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,iBAAiB,CAAC,UAAe,EAAE,cAAmB,EAAE,WAAgB;QACpE,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAC9D,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,MAAM,CAAC;QAElC,MAAM,OAAO,GAAG,IAAA,mCAAwB,EAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAA,qCAA0B,EAAC,WAAW,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAEjE,OAAO;YACH,GAAG,MAAM;YACT,OAAO;YACP,GAAG,IAAA,2BAAgB,EAAC,OAAO,CAAC;SAC/B,CAAC;IACN,CAAC;IAED,yBAAyB,CAAC,WAAgB,EAAE,cAAmB;QAC3D,OAAO,IAAA,mCAAwB,EAAC,WAAW,EAAE,cAAc,EAAE;YACzD,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS;YAC5C,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS;SAChD,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IAED,+BAA+B,CAAC,WAAgB,EAAE,aAAkC,EAAE;QAClF,OAAO,IAAA,iCAAsB,EAAC,WAAW,EAAE;YACvC,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS;YACvE,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS;SAC5E,CAAC,CAAC;IACP,CAAC;IAED,wBAAwB;QACpB,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;QACvD,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;QACxD,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC;QAC1D,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;QAC7C,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC/C,MAAM,gBAAgB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAErD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CACX,0DAA0D,eAAe,UAAU,gBAAgB,KAAK;gBACxG,wCAAwC,CAC3C,CAAC;QACN,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,KAAK,CACX,+DAA+D,mBAAmB,KAAK;gBACvF,wCAAwC,CAC3C,CAAC;QACN,CAAC;QAED,oEAAoE;QACpE,4EAA4E;QAC5E,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,IAAI,CAAC;QAEvD,OAAO;YACH,YAAY;YACZ,aAAa;YACb,sBAAsB;SACzB,CAAC;IACN,CAAC;IAED,kBAAkB,CAAC,OAAY,EAAE,UAAe;QAC5C,OAAO,IAAA,4BAAiB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,sBAAsB,CAAC,MAAW;QAC9B,OAAO,IAAA,6BAAkB,EAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,WAAgB,EAAE,eAAoB,EAAE,eAAoB,EAAE,UAAe,EAAE;QACpG,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;QAC3C,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,iBAAiB,CAAC;QAEtB,IAAI,CAAC;YACD,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,YAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,IAAA,wBAAe,EAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACnE,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,cAAc,GAAG,IAAA,yBAAc,EAAC,WAAW,EAAE;YAC/C,OAAO,EAAE,KAAK;YACd,cAAc,EAAE,IAAI,CAAC,YAAY;YACjC,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,iBAAiB;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,MAAM,EAAE,EAAE,cAAc,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC;YAClF,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YACpC,MAAM,eAAe,GAAG,IAAA,yBAAc,EAAC,WAAW,EAAE;gBAChD,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI,CAAC,YAAY;gBACjC,UAAU,EAAE,IAAI,CAAC,MAAM;gBACvB,iBAAiB;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,eAAe,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC;gBACpF,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,OAAO;YACX,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,kCAAkC,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,QAAQ,WAAW,EACjF,OAAO,CACV,CAAC;YAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;YACrC,0EAA0E;YAC1E,2EAA2E;YAC3E,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBACzC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnC,IAAA,mBAAU,EAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACnC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,SAAS,GAAG,IAAI,CAAC;YAEjB,2EAA2E;YAC3E,qEAAqE;YACrE,oEAAoE;YACpE,0DAA0D;YAC1D,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;YAC1C,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBACzC,IAAI,KAAK,CAAC,OAAO;oBAAE,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1D,CAAC;YACD,IAAI,CAAC,kBAAkB,GAAG,eAAe,CAAC;YAC1C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE5C,gGAAgG;QACpG,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,CAAC;YACD,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,iEAAiE;gBACjE,oEAAoE;gBACpE,sEAAsE;gBACtE,IAAI,IAAI,CAAC,sBAAsB,EAAE,MAAM,KAAK,OAAO,EAAE,CAAC;oBAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,qGAAqG,EACrG,MAAM,CACT,CAAC;oBACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAClD,CAAC;gBACD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAClC,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,QAAQ,IAAI,EAAE,OAAO,CAAC,CAAC;YAElE,IAAI,KAAK,CAAC,IAAI,GAAG,2BAAe,CAAC,mBAAmB,EAAE,CAAC;gBACnD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,mCAAmC,KAAK,CAAC,IAAI,2BAA2B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,EACnH,MAAM,CACT,CAAC;YACN,CAAC;QACL,CAAC;QAAC,OAAO,SAAc,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gDAAgD,IAAA,wBAAe,EAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACvG,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC5E,2DAA2D;YAC3D,mDAAmD;YACnD,MAAM,SAAS,CAAC;QACpB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAChC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,+BAA+B,CAAC,UAA+B,EAAE;QAC7D,MAAM,MAAM,GAAG,IAAA,qCAA0B,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3E,MAAM,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,KAAK,KAAK,CAAC;QAE1E,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,uBAAuB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACpE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2CAA2C,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;YACrF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC3C,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,SAAc,WAAW;QAC5C,IAAI,CAAC,+BAA+B,GAAG,MAAM,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,SAAc,IAAI;QACpC,IAAI,CAAC,IAAI,CAAC,+BAA+B;YAAE,OAAO;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,+CAA+C,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAC7E,MAAM,CACT,CAAC;QACF,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC;IAChD,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,WAAW,CAAC,cAAmB,EAAE,cAAoB;QACvD,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,iEAAiE,IAAI,CAAC,+BAA+B,EAAE,EACvG,MAAM,CACT,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAC3G,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAC1D,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,+DAA+D,UAAU,CAAC,MAAM,EAAE,EAClF,MAAM,CACT,CAAC;YACF,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAA,4BAAmB,EAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QAEtG,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,2EAA2E,EAC3E,OAAO,CACV,CAAC;YACF,qDAAqD;YACrD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QACpG,CAAC;QAED,+DAA+D;QAC/D,8DAA8D;QAC9D,+DAA+D;QAC/D,gEAAgE;QAChE,2DAA2D;QAC3D,gEAAgE;QAChE,+CAA+C;QAC/C,IAAI,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAC5D,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,UAAU;QACN,OAAO;YACH,GAAG,IAAI,CAAC,QAAQ;YAChB,KAAK,EAAE;gBACH,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,kBAAkB,EAAE,IAAI,EAAE;gBACpE,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,mBAAmB,EAAE;gBACzC,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,oBAAoB,EAAE;gBAC3C,SAAS,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,cAAc,EAAE;gBACnD,SAAS,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,sBAAsB,EAAE;gBAC7F,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE;aACrG;YACD,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;SAC1B,CAAC;IACN,CAAC;IAED,2BAA2B,CAAC,WAAgB,EAAE,UAAe;QACzD,OAAO,IAAA,qCAA0B,EAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED,oBAAoB,CAAC,OAAY;QAC7B,OAAO,IAAA,2BAAgB,EAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,0BAA0B,CAAC,WAAgB,EAAE,UAAe,KAAK;QAC7D,IAAI,iBAAiB,CAAC;QACtB,IAAI,CAAC;YACD,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,YAAiB,EAAE,CAAC;YACzB,OAAO;gBACH,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,IAAA,wBAAe,EAAC,YAAY,CAAC;gBACrC,KAAK,EAAE,OAAO;aACjB,CAAC;QACN,CAAC;QAED,OAAO,IAAA,yBAAc,EAAC,WAAW,EAAE;YAC/B,OAAO;YACP,cAAc,EAAE,IAAI,CAAC,YAAY;YACjC,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,iBAAiB;SACpB,CAAC,CAAC;IACP,CAAC;IAED,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC;IAC5C,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAK;QACvB,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,mBAAmB,GAAG;gBACvB,GAAG,KAAK;gBACR,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;aACjB,CAAC;QACN,CAAC;IACL,CAAC;IAED,IAAI,sBAAsB;QACtB,OAAO,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC;IACjD,CAAC;IAED,IAAI,sBAAsB,CAAC,KAAK;QAC5B,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,wBAAwB,GAAG;gBAC5B,GAAG,KAAK;gBACR,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;aACjB,CAAC;QACN,CAAC;IACL,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED,IAAI,cAAc,CAAC,KAAK;QACpB,MAAM,QAAQ,GAAG;YACb,KAAK,EAAE,MAAM;YACb,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,KAAK;YACf,aAAa,EAAE,CAAC;YAChB,yBAAyB,EAAE,KAAK;SACnC,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG;YACvB,GAAG,QAAQ;YACX,GAAG,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC;IACN,CAAC;IAED,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAED,IAAI,eAAe,CAAC,KAAK;QACrB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO;QAEhD,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,oBAAoB,GAAG;YACxB,GAAG,EAAE,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;YAC7C,IAAI,EAAE,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE;SAClD,CAAC;IACN,CAAC;CAEJ;AAEQ,oCAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../modules/order/strategy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAaH,cAAM,cAAc;IAChB,OAAO,EAAE,GAAG,CAAC;IAEb;;OAEG;gBACS,OAAO,EAAE,GAAG;IAMxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACG,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE,eAAe,GAAE,GAAe;IAyC1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACH,mBAAmB,CAAC,MAAM,EAAE;QACxB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,CAAC;QACZ,aAAa,EAAE,GAAG,CAAC;QACnB,KAAK,EAAE,GAAG,CAAC;QACX,KAAK,EAAE,GAAG,EAAE,CAAC;QACb,kBAAkB,EAAE,MAAM,CAAC;KAC9B;;;;
|
|
1
|
+
{"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../modules/order/strategy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAaH,cAAM,cAAc;IAChB,OAAO,EAAE,GAAG,CAAC;IAEb;;OAEG;gBACS,OAAO,EAAE,GAAG;IAMxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACG,gBAAgB,CAAC,YAAY,EAAE,GAAG,EAAE,eAAe,GAAE,GAAe;IAyC1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACH,mBAAmB,CAAC,MAAM,EAAE;QACxB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,CAAC;QACZ,aAAa,EAAE,GAAG,CAAC;QACnB,KAAK,EAAE,GAAG,CAAC;QACX,KAAK,EAAE,GAAG,EAAE,CAAC;QACb,kBAAkB,EAAE,MAAM,CAAC;KAC9B;;;;CA+IJ;AAED,eAAe,cAAc,CAAA"}
|
|
@@ -183,8 +183,15 @@ class StrategyEngine {
|
|
|
183
183
|
if (allSlots.length === 0)
|
|
184
184
|
return { targetGrid: new Map(), boundaryIdx: currentBoundaryIdx };
|
|
185
185
|
// 1. Determine new boundary based on fills (Boundary Crawl)
|
|
186
|
-
|
|
187
|
-
|
|
186
|
+
// Use the stored gapSlots from grid creation (always consistent with
|
|
187
|
+
// the grid geometry) instead of recomputing from live config which may
|
|
188
|
+
// have drifted if targetSpreadPercent or gridLimits changed.
|
|
189
|
+
const gapSlots = this.manager._gapSlots ?? (0, grid_1.calculateGapSlots)(config.incrementPercent, config.targetSpreadPercent, config.gridLimits);
|
|
190
|
+
const crossChunkBudget = this.manager._boundaryShiftBudget;
|
|
191
|
+
const { boundaryIdx: newBoundaryIdx, remainingBudget } = (0, order_1.deriveTargetBoundary)(fills, currentBoundaryIdx, allSlots, config, gapSlots, crossChunkBudget);
|
|
192
|
+
if (crossChunkBudget != null) {
|
|
193
|
+
this.manager._boundaryShiftBudget = remainingBudget;
|
|
194
|
+
}
|
|
188
195
|
// 2. Assign Roles (Buy/Sell/Spread)
|
|
189
196
|
const updatedSlots = (0, order_2.assignGridRoles)(allSlots, newBoundaryIdx, gapSlots, constants_1.ORDER_TYPES, constants_1.ORDER_STATES, { assignOnChain: true });
|
|
190
197
|
this.manager.logger.log(`[DEBUG] calculateTargetGrid: boundary=${newBoundaryIdx}, gap=${gapSlots}, allSlots=${updatedSlots.length}`, 'debug');
|