dexbot 1.5.0 → 1.5.2
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/CHANGELOG.md +44 -0
- package/analysis/ama_fitting/package.json +1 -1
- package/analysis/trend_detection/package.json +1 -1
- package/claw/package.json +1 -1
- package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
- package/claw/runtimes/openclaw-plugin/package.json +1 -1
- package/claw/tests/test_claw_mcp_transport.ts +2 -2
- package/dist/dexbot.js +5 -5
- package/dist/dexbot.js.map +1 -1
- package/dist/modules/account_orders.d.ts +7 -1
- package/dist/modules/account_orders.d.ts.map +1 -1
- package/dist/modules/account_orders.js +34 -1
- package/dist/modules/account_orders.js.map +1 -1
- package/dist/modules/constants.d.ts +2 -0
- package/dist/modules/constants.d.ts.map +1 -1
- package/dist/modules/constants.js +12 -0
- package/dist/modules/constants.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +1 -0
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.d.ts +19 -1
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.js +335 -78
- package/dist/modules/dexbot_cow_runtime.js.map +1 -1
- package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_fill_runtime.js +7 -1
- package/dist/modules/dexbot_fill_runtime.js.map +1 -1
- package/dist/modules/dexbot_startup_runtime.d.ts +1 -0
- package/dist/modules/dexbot_startup_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_startup_runtime.js +54 -4
- package/dist/modules/dexbot_startup_runtime.js.map +1 -1
- package/dist/modules/dexbot_state_recovery.d.ts.map +1 -1
- package/dist/modules/dexbot_state_recovery.js +7 -0
- package/dist/modules/dexbot_state_recovery.js.map +1 -1
- package/dist/modules/order/accounting.d.ts +34 -0
- package/dist/modules/order/accounting.d.ts.map +1 -1
- package/dist/modules/order/accounting.js +199 -5
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/export.d.ts +122 -15
- package/dist/modules/order/export.d.ts.map +1 -1
- package/dist/modules/order/export.js +310 -46
- package/dist/modules/order/export.js.map +1 -1
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +22 -17
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile.js +7 -3
- package/dist/modules/order/grid_reconcile.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +98 -28
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/manager.d.ts +52 -6
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +156 -21
- 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 +17 -2
- package/dist/modules/order/strategy.js.map +1 -1
- package/dist/modules/order/sync_engine.d.ts.map +1 -1
- package/dist/modules/order/sync_engine.js +213 -17
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/math.d.ts +70 -4
- package/dist/modules/order/utils/math.d.ts.map +1 -1
- package/dist/modules/order/utils/math.js +136 -5
- package/dist/modules/order/utils/math.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +117 -5
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +274 -13
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/system.d.ts +14 -0
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +51 -3
- package/dist/modules/order/utils/system.js.map +1 -1
- package/dist/modules/order/utils/validate.d.ts +29 -2
- package/dist/modules/order/utils/validate.d.ts.map +1 -1
- package/dist/modules/order/utils/validate.js +207 -35
- package/dist/modules/order/utils/validate.js.map +1 -1
- package/dist/scripts/analyze-credit.d.ts.map +1 -1
- package/dist/scripts/analyze-credit.js +53 -33
- package/dist/scripts/analyze-credit.js.map +1 -1
- package/docs/DEXBOT_COMPARISON.md +3 -3
- package/docs/EVOLUTION.md +7 -5
- package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +3 -1
- package/docs/GRID_RECONCILE.md +1 -0
- package/docs/LOGGING.md +3 -0
- package/docs/README.md +2 -2
- package/docs/WORKFLOW.md +1 -1
- package/package.json +1 -1
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
// ===============================================================================
|
|
36
36
|
import * as Format from '../format.js';
|
|
37
37
|
import { ORDER_STATES, ORDER_TYPES, COW_ACTIONS, GRID_LIMITS } from '../../constants.js';
|
|
38
|
-
import { floatToBlockchainInt, blockchainToFloat, getPrecisionSlack, getDoubleDustThreshold, clamp } from './math.js';
|
|
38
|
+
import { floatToBlockchainInt, blockchainToFloat, getPrecisionSlack, getPrecisionByOrderType, getDoubleDustThreshold, getSellStartIdx, isSlotIndexInGapBand, isEvacuationRotationAllowed, clamp, priceSlotEqual } from './math.js';
|
|
39
39
|
import { parseSlotIndex } from './slot.js';
|
|
40
|
-
import { isOrderOnChain, isPhantomOrder, convertToSpreadPlaceholder } from './order.js';
|
|
40
|
+
import { isOrderOnChain, isPhantomOrder, convertToSpreadPlaceholder, detectGapEvacuationCandidates, updateGapEvacuationStreaks } from './order.js';
|
|
41
41
|
const { isValidNumber, toFiniteNumber } = Format;
|
|
42
42
|
// Pre-computed valid sets
|
|
43
43
|
const VALID_ORDER_STATES = new Set(Object.values(ORDER_STATES));
|
|
@@ -85,6 +85,12 @@ function validateOrder(order, oldOrder = null, context = 'validate') {
|
|
|
85
85
|
});
|
|
86
86
|
normalizedOrder.size = 0;
|
|
87
87
|
}
|
|
88
|
+
// RAIL-HOLE PRESERVATION (Phase 2): a sized BUY/SELL VIRTUAL slot with no
|
|
89
|
+
// orderId is a rail-typed hole (rotation source, fill-consumed rail slot),
|
|
90
|
+
// NOT a spread placeholder — it must pass through untouched. Only SPREAD
|
|
91
|
+
// is size-normalized above; the phantom and ILLEGAL_SPREAD_STATE checks
|
|
92
|
+
// below fire solely for on-chain states, so rail holes are never
|
|
93
|
+
// zeroed, retyped, or rejected here. Locked by test_gap_evacuation.
|
|
88
94
|
const isOnChainState = (normalizedOrder.state === ORDER_STATES.ACTIVE ||
|
|
89
95
|
normalizedOrder.state === ORDER_STATES.PARTIAL);
|
|
90
96
|
if (normalizedOrder.type === ORDER_TYPES.SPREAD && isOnChainState) {
|
|
@@ -325,6 +331,61 @@ function clampRotationSizeForPartial(surplusMaster, holeSize, logger = null, hol
|
|
|
325
331
|
}
|
|
326
332
|
return target;
|
|
327
333
|
}
|
|
334
|
+
/**
|
|
335
|
+
* Stamp a rotation UPDATE as a gap-evacuation when plan-build geometry says
|
|
336
|
+
* it moves a live order OUT of the gap band onto its rail. The stamp freezes
|
|
337
|
+
* the boundary + gap width AT PLAN-BUILD TIME (B-stamp) so the COW executor's
|
|
338
|
+
* LAST-FILL guard validates against the geometry the plan was built for —
|
|
339
|
+
* plans can otherwise validate against a later-committed boundary and the
|
|
340
|
+
* evacuation gets misjudged. Stamping requires BOTH:
|
|
341
|
+
* - geometry: source slot index strictly inside the gap band, destination on
|
|
342
|
+
* the same side's rail (pure parseSlotIndex vs frozen boundary/gapSlots —
|
|
343
|
+
* never the stored slot type),
|
|
344
|
+
* - allowance: isEvacuationRotationAllowed(oldPrice, oldSize, newPrice,
|
|
345
|
+
* newSize, type) — outward repricing with bit-exact non-growing size.
|
|
346
|
+
* Anything else stays unstamped and obeys the guard normally (safe default).
|
|
347
|
+
*
|
|
348
|
+
* @param {Object} action - Rotation UPDATE action being built
|
|
349
|
+
* @param {Object} sourceMaster - Live master-grid order for the source slot
|
|
350
|
+
* @param {number|string} destPrice - Destination (hole) price
|
|
351
|
+
* @param {number} destSize - Destination (clamped) size
|
|
352
|
+
* @param {string} type - ORDER_TYPES.BUY or SELL
|
|
353
|
+
* @param {number} frozenBoundary - Plan-build boundary index
|
|
354
|
+
* @param {number} frozenGapSlots - Plan-build gap slot count
|
|
355
|
+
* @returns {Object} The action, stamped when it qualifies
|
|
356
|
+
*/
|
|
357
|
+
function stampGapEvacuationRotation(action, sourceMaster, destPrice, destSize, type, frozenBoundary, frozenGapSlots, assets = null) {
|
|
358
|
+
const b = Number(frozenBoundary);
|
|
359
|
+
const g = Number(frozenGapSlots);
|
|
360
|
+
if (!Number.isFinite(b) || !Number.isFinite(g) || g < 0)
|
|
361
|
+
return action;
|
|
362
|
+
const srcIdx = parseSlotIndex(sourceMaster?.id ?? action?.id);
|
|
363
|
+
const dstIdx = parseSlotIndex(action?.newGridId);
|
|
364
|
+
if (srcIdx === null || srcIdx === undefined || dstIdx === null || dstIdx === undefined)
|
|
365
|
+
return action;
|
|
366
|
+
if (!isSlotIndexInGapBand(srcIdx, b, g))
|
|
367
|
+
return action;
|
|
368
|
+
if (isSlotIndexInGapBand(dstIdx, b, g))
|
|
369
|
+
return action;
|
|
370
|
+
const sellStartIdx = getSellStartIdx(b, g);
|
|
371
|
+
const dstInRail = type === ORDER_TYPES.SELL ? Number(dstIdx) >= sellStartIdx : Number(dstIdx) <= b;
|
|
372
|
+
if (!dstInRail)
|
|
373
|
+
return action;
|
|
374
|
+
// Bit-exact size check with the side's on-chain precision (mirrors the
|
|
375
|
+
// live unstamped probe in dexbot_cow_runtime) — a 1-satoshi size growth
|
|
376
|
+
// must be refused at stamp time, not just at execution.
|
|
377
|
+
let stampPrecision = null;
|
|
378
|
+
try {
|
|
379
|
+
stampPrecision = assets ? getPrecisionByOrderType(assets, type) : null;
|
|
380
|
+
}
|
|
381
|
+
catch {
|
|
382
|
+
stampPrecision = null;
|
|
383
|
+
}
|
|
384
|
+
const check = isEvacuationRotationAllowed(sourceMaster?.price, sourceMaster?.size, destPrice, destSize, type, stampPrecision);
|
|
385
|
+
if (!check.allowed)
|
|
386
|
+
return action;
|
|
387
|
+
return { ...action, origin: 'gap-evacuation', evacBoundary: b, evacGapSlots: Math.floor(g) };
|
|
388
|
+
}
|
|
328
389
|
/**
|
|
329
390
|
* Reconcile target grid against master state
|
|
330
391
|
* @param {Map} masterGrid - Current master grid
|
|
@@ -335,6 +396,12 @@ function clampRotationSizeForPartial(surplusMaster, holeSize, logger = null, hol
|
|
|
335
396
|
*/
|
|
336
397
|
function reconcileGrid(masterGrid, targetGrid, targetBoundary, options = {}) {
|
|
337
398
|
const { logger = null, dustThresholdPercent = GRID_LIMITS.PARTIAL_DUST_THRESHOLD_PERCENTAGE } = options;
|
|
399
|
+
// B-stamp inputs for gap-evacuation rotation stamping (frozen at
|
|
400
|
+
// plan-build): callers pass the geometry this plan was built for. Absent
|
|
401
|
+
// or non-finite => no stamping (guarded default, never fail-open).
|
|
402
|
+
const planGapSlots = Number(options?.gapSlots);
|
|
403
|
+
const hasPlanGeometry = Number.isFinite(planGapSlots) && planGapSlots >= 0;
|
|
404
|
+
const evacAssets = options?.assets ?? null;
|
|
338
405
|
const actions = [];
|
|
339
406
|
const surplusesBuy = [];
|
|
340
407
|
const surplusesSell = [];
|
|
@@ -451,16 +518,25 @@ function reconcileGrid(masterGrid, targetGrid, targetBoundary, options = {}) {
|
|
|
451
518
|
for (let i = 0; i < rotationCount; i++) {
|
|
452
519
|
const surplus = surpluses[i];
|
|
453
520
|
const hole = healthyHoles[i];
|
|
454
|
-
|
|
521
|
+
const clampedSize = clampRotationSizeForPartial(surplus.master, hole.order.size, logger, hole.id);
|
|
522
|
+
let rotation = {
|
|
455
523
|
type: COW_ACTIONS.UPDATE,
|
|
456
524
|
id: surplus.id,
|
|
457
525
|
orderId: surplus.master.orderId,
|
|
458
526
|
newGridId: hole.id,
|
|
459
|
-
newSize:
|
|
527
|
+
newSize: clampedSize,
|
|
460
528
|
newPrice: hole.order.price,
|
|
461
529
|
order: hole.order,
|
|
462
530
|
isRotation: true
|
|
463
|
-
}
|
|
531
|
+
};
|
|
532
|
+
// Gap-evacuation B-stamp (plan-build frozen boundary): a surplus
|
|
533
|
+
// stranded in the gap band rotating onto its rail bypasses the
|
|
534
|
+
// LAST-FILL guard at execution — the rotation reduces the
|
|
535
|
+
// violation surface instead of adding exposure.
|
|
536
|
+
if (hasPlanGeometry) {
|
|
537
|
+
rotation = stampGapEvacuationRotation(rotation, surplus.master, hole.order.price, clampedSize, surplus.master?.type, validatedBoundary, planGapSlots, evacAssets);
|
|
538
|
+
}
|
|
539
|
+
actions.push(rotation);
|
|
464
540
|
}
|
|
465
541
|
for (let i = rotationCount; i < healthyHoles.length; i++) {
|
|
466
542
|
actions.push({ type: COW_ACTIONS.CREATE, id: healthyHoles[i].id, order: healthyHoles[i].order });
|
|
@@ -475,10 +551,28 @@ function reconcileGrid(masterGrid, targetGrid, targetBoundary, options = {}) {
|
|
|
475
551
|
actions.push({ type: COW_ACTIONS.CANCEL, id, orderId: masterOrder.orderId, reason: 'orphan-slot' });
|
|
476
552
|
}
|
|
477
553
|
}
|
|
554
|
+
// Phase 3: tick the per-slot gap-evacuation streak counter when the
|
|
555
|
+
// caller supplies a Map (in-memory on the manager; resets on restart).
|
|
556
|
+
// Detection is geometry-only (parse slot idx vs frozen boundary/gapSlots).
|
|
557
|
+
let evacReady = [];
|
|
558
|
+
try {
|
|
559
|
+
if (options?.evacStreaks instanceof Map && hasPlanGeometry) {
|
|
560
|
+
const candidates = detectGapEvacuationCandidates(masterGrid, validatedBoundary, planGapSlots);
|
|
561
|
+
const tick = updateGapEvacuationStreaks(options.evacStreaks, candidates);
|
|
562
|
+
evacReady = tick.ready;
|
|
563
|
+
if (evacReady.length > 0 && logger) {
|
|
564
|
+
logger(`[GAP-EVAC] ${evacReady.length} stuck in-band order(s) ` +
|
|
565
|
+
`(boundary ${validatedBoundary}, gap ${planGapSlots}): ` +
|
|
566
|
+
evacReady.map((c) => `${c.id}(x${tick.streaks[c.id] ?? '?'})`).join(', '), 'warn');
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
catch { /* streak tracking is best-effort */ }
|
|
478
571
|
return {
|
|
479
572
|
actions,
|
|
480
573
|
aborted: false,
|
|
481
574
|
boundaryIdx: validatedBoundary,
|
|
575
|
+
evacReady,
|
|
482
576
|
summary: summarizeActions(actions)
|
|
483
577
|
};
|
|
484
578
|
}
|
|
@@ -495,6 +589,13 @@ function optimizeRebalanceActions(actions, masterGrid, options = {}) {
|
|
|
495
589
|
if (!Array.isArray(actions) || actions.length === 0)
|
|
496
590
|
return [];
|
|
497
591
|
const { logger = null } = options;
|
|
592
|
+
// B-stamp inputs (same contract as reconcileGrid): frozen plan-build
|
|
593
|
+
// boundary + gap width for gap-evacuation rotation stamping. Absent =>
|
|
594
|
+
// no stamping, guarded default.
|
|
595
|
+
const optBoundary = Number(options?.boundaryIdx);
|
|
596
|
+
const optGapSlots = Number(options?.gapSlots);
|
|
597
|
+
const hasOptGeometry = Number.isFinite(optBoundary) && Number.isFinite(optGapSlots) && optGapSlots >= 0;
|
|
598
|
+
const optAssets = options?.assets ?? null;
|
|
498
599
|
const creates = [];
|
|
499
600
|
const cancels = [];
|
|
500
601
|
const passthrough = [];
|
|
@@ -543,16 +644,21 @@ function optimizeRebalanceActions(actions, masterGrid, options = {}) {
|
|
|
543
644
|
continue;
|
|
544
645
|
}
|
|
545
646
|
const createAction = remainingCreates.splice(bestIdx, 1)[0];
|
|
546
|
-
|
|
647
|
+
const clampedSize = clampRotationSizeForPartial(masterOrder, toFiniteNumber(createAction?.order?.size), logger, createAction.id);
|
|
648
|
+
let rotation = {
|
|
547
649
|
type: COW_ACTIONS.UPDATE,
|
|
548
650
|
id: cancelAction.id,
|
|
549
651
|
orderId: cancelAction.orderId,
|
|
550
652
|
newGridId: createAction.id,
|
|
551
|
-
newSize:
|
|
653
|
+
newSize: clampedSize,
|
|
552
654
|
newPrice: toFiniteNumber(createAction?.order?.price),
|
|
553
655
|
order: createAction.order,
|
|
554
656
|
isRotation: true
|
|
555
|
-
}
|
|
657
|
+
};
|
|
658
|
+
if (hasOptGeometry) {
|
|
659
|
+
rotation = stampGapEvacuationRotation(rotation, masterOrder, toFiniteNumber(createAction?.order?.price), clampedSize, cancelType, optBoundary, optGapSlots, optAssets);
|
|
660
|
+
}
|
|
661
|
+
optimized.push(rotation);
|
|
556
662
|
}
|
|
557
663
|
for (const createAction of remainingCreates) {
|
|
558
664
|
optimized.push(createAction);
|
|
@@ -585,11 +691,13 @@ function hasExecutableActions(rebalanceResult) {
|
|
|
585
691
|
/**
|
|
586
692
|
* Validate that CREATE actions target slots that are not already occupied on-chain
|
|
587
693
|
* and that no CREATE price collides with an existing placed order or unmatched
|
|
588
|
-
* on-chain order. Checks
|
|
694
|
+
* on-chain order. Checks five layers:
|
|
589
695
|
* 1. Slot occupancy — target grid slot already has a placed order
|
|
590
696
|
* 2. Master grid slot collision — same slotId already placed (priceSlotEqual)
|
|
591
697
|
* 3. Chain orphan slot collision — chain order's nearest slotId equals target slotId
|
|
592
698
|
* 4. Same-batch duplicate slotId — two CREATEs target same slotId
|
|
699
|
+
* 5. Same-batch bit-identical duplicate price — two CREATEs on different
|
|
700
|
+
* target slots at the exact same price (same side)
|
|
593
701
|
*
|
|
594
702
|
* Cancel and rotation-released slots are considered free.
|
|
595
703
|
*
|
|
@@ -639,15 +747,15 @@ function validateCreateTargetSlots(actions, orders, _assets = null, chainOrderCa
|
|
|
639
747
|
});
|
|
640
748
|
}
|
|
641
749
|
if (action.order?.price != null && action.order?.type != null) {
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
750
|
+
// Key on the BROADCAST price (action.order.price — the price
|
|
751
|
+
// actually placed on chain), never the live slot price: layer-5
|
|
752
|
+
// guards the batch being broadcast, and the chain-orphan price
|
|
753
|
+
// fallback below compares the same broadcast price against the
|
|
754
|
+
// orphan's chain price (correct collision semantics there too).
|
|
647
755
|
createEntries.push({
|
|
648
756
|
targetId,
|
|
649
757
|
action,
|
|
650
|
-
price:
|
|
758
|
+
price: Number(action.order.price),
|
|
651
759
|
size: Number(action.order.size || 0),
|
|
652
760
|
type: action.order.type,
|
|
653
761
|
});
|
|
@@ -663,30 +771,37 @@ function validateCreateTargetSlots(actions, orders, _assets = null, chainOrderCa
|
|
|
663
771
|
violations.push({ targetId: entry.targetId, currentOrderId: entry.targetId, currentType: entry.type, currentState: 'CHAIN_ORPHAN', reason: 'chain_orphan_collision' });
|
|
664
772
|
}
|
|
665
773
|
}
|
|
666
|
-
// Price-based fallback
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
774
|
+
// Price-based fallback, PER CANDIDATE: candidates WITH a slot id
|
|
775
|
+
// already matched by slot above; candidates WITHOUT one (e.g.
|
|
776
|
+
// slot-unknown-* cancelOnly orphans from sync_engine) can never
|
|
777
|
+
// match by slot, so price-check ONLY those — regardless of
|
|
778
|
+
// whether other candidates carry slot ids. Gating the fallback
|
|
779
|
+
// on chainSlotIds.size === 0 skipped the price check for a mixed
|
|
780
|
+
// set entirely, letting a CREATE collide with a slot-unknown
|
|
781
|
+
// chain order sitting at the same price level (duplicate order).
|
|
782
|
+
if (_assets) {
|
|
783
|
+
// priceSlotEqual is a top-level import (the old inline
|
|
784
|
+
// require('./math.js') threw under ESM and the catch-all
|
|
785
|
+
// below silently disabled the whole fallback).
|
|
786
|
+
const slotlessCandidates = validChainCandidates.filter((u) => !(u.chainSlotId || u.candidateSlotId));
|
|
787
|
+
for (const entry of createEntries) {
|
|
788
|
+
if (violations.some(v => v.targetId === entry.targetId))
|
|
789
|
+
continue;
|
|
790
|
+
for (const u of slotlessCandidates) {
|
|
791
|
+
if (u.price == null || entry.price == null)
|
|
672
792
|
continue;
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
if (priceSlotEqual(u.price, entry.price, precision)) {
|
|
681
|
-
violations.push({ targetId: entry.targetId, currentOrderId: u.chainOrderId, currentType: entry.type, currentState: 'CHAIN_ORPHAN', reason: 'chain_orphan_collision' });
|
|
682
|
-
break;
|
|
683
|
-
}
|
|
793
|
+
if (u.type && entry.type && u.type !== entry.type)
|
|
794
|
+
continue;
|
|
795
|
+
const precision = entry.type === 'sell' ? _assets.assetA?.precision : _assets.assetB?.precision;
|
|
796
|
+
try {
|
|
797
|
+
if (priceSlotEqual(u.price, entry.price, precision)) {
|
|
798
|
+
violations.push({ targetId: entry.targetId, currentOrderId: u.chainOrderId, currentType: entry.type, currentState: 'CHAIN_ORPHAN', reason: 'chain_orphan_collision' });
|
|
799
|
+
break;
|
|
684
800
|
}
|
|
685
|
-
catch { }
|
|
686
801
|
}
|
|
802
|
+
catch { }
|
|
687
803
|
}
|
|
688
804
|
}
|
|
689
|
-
catch { }
|
|
690
805
|
}
|
|
691
806
|
}
|
|
692
807
|
// Same-batch duplicate slot
|
|
@@ -698,6 +813,63 @@ function validateCreateTargetSlots(actions, orders, _assets = null, chainOrderCa
|
|
|
698
813
|
else
|
|
699
814
|
seen.add(entry.targetId);
|
|
700
815
|
}
|
|
816
|
+
// Same-batch bit-identical duplicate price across DIFFERENT target slots.
|
|
817
|
+
// The genesis-frozen slot mapping gives every slot a distinct price
|
|
818
|
+
// level, so two CREATEs at the exact same price on different slots
|
|
819
|
+
// indicate a degenerate plan (production incident 2026-08-29: several
|
|
820
|
+
// slots planned at one price; every batch was filtered down to a
|
|
821
|
+
// single op and the grid rebuild crawled at one placement per cycle).
|
|
822
|
+
// The tolerance-based price-collision check that caught this class was
|
|
823
|
+
// removed with the slot-based rewrite; this exact-equality check
|
|
824
|
+
// restores the protection without tolerance false-positives. First
|
|
825
|
+
// target per (type, price) wins; later duplicates are skipped by the
|
|
826
|
+
// caller via violatingTargetIds.
|
|
827
|
+
const priceOwner = new Map();
|
|
828
|
+
for (const entry of createEntries) {
|
|
829
|
+
const priceNum = Number(entry.price);
|
|
830
|
+
if (!Number.isFinite(priceNum)) {
|
|
831
|
+
// Fail closed: an unpriceable CREATE cannot be proven
|
|
832
|
+
// collision-free, so it is rejected, not skipped.
|
|
833
|
+
violations.push({
|
|
834
|
+
targetId: entry.targetId,
|
|
835
|
+
currentOrderId: null,
|
|
836
|
+
currentType: entry.type,
|
|
837
|
+
currentState: 'CREATE',
|
|
838
|
+
reason: 'create_price_invalid',
|
|
839
|
+
});
|
|
840
|
+
continue;
|
|
841
|
+
}
|
|
842
|
+
// Key on the on-chain integer repr when the side precision is
|
|
843
|
+
// known (bit-exact: prices that quantize to the same chain int
|
|
844
|
+
// ARE the same price on the DEX); float fallback preserves the
|
|
845
|
+
// old behavior for callers without assets context.
|
|
846
|
+
let key;
|
|
847
|
+
let sidePrecision = null;
|
|
848
|
+
try {
|
|
849
|
+
sidePrecision = _assets ? getPrecisionByOrderType(_assets, entry.type) : null;
|
|
850
|
+
}
|
|
851
|
+
catch {
|
|
852
|
+
sidePrecision = null;
|
|
853
|
+
}
|
|
854
|
+
if (Number.isFinite(Number(sidePrecision)) && Number(sidePrecision) > 0) {
|
|
855
|
+
try {
|
|
856
|
+
key = `${String(entry.type)}:i${floatToBlockchainInt(priceNum, Number(sidePrecision))}`;
|
|
857
|
+
}
|
|
858
|
+
catch {
|
|
859
|
+
key = `${String(entry.type)}:${priceNum}`;
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
else {
|
|
863
|
+
key = `${String(entry.type)}:${priceNum}`;
|
|
864
|
+
}
|
|
865
|
+
const owner = priceOwner.get(key);
|
|
866
|
+
if (owner === undefined) {
|
|
867
|
+
priceOwner.set(key, entry.targetId);
|
|
868
|
+
}
|
|
869
|
+
else if (owner !== entry.targetId) {
|
|
870
|
+
violations.push({ targetId: entry.targetId, currentOrderId: null, currentType: entry.type, currentState: 'CREATE', reason: 'same_batch_price_duplicate', duplicateOf: owner });
|
|
871
|
+
}
|
|
872
|
+
}
|
|
701
873
|
}
|
|
702
874
|
const violatingTargetIds = new Set(violations.map(v => v.targetId));
|
|
703
875
|
return {
|
|
@@ -1023,5 +1195,5 @@ function evaluateCommit(workingGrid, options = {}) {
|
|
|
1023
1195
|
// ===============================================================================
|
|
1024
1196
|
// EXPORTS
|
|
1025
1197
|
// ===============================================================================
|
|
1026
|
-
export { validateOrder, validateGridForPersistence, validateWorkingGridFunds, checkFundDrift, reconcileGrid, optimizeRebalanceActions, hasExecutableActions, validateCreateTargetSlots, hasActionForOrder, removeActionsForOrder, projectTargetToWorkingGrid, buildStateUpdates, buildAbortedResult, buildSuccessResult, evaluateCommit };
|
|
1198
|
+
export { validateOrder, validateGridForPersistence, validateWorkingGridFunds, checkFundDrift, reconcileGrid, optimizeRebalanceActions, hasExecutableActions, validateCreateTargetSlots, hasActionForOrder, removeActionsForOrder, projectTargetToWorkingGrid, buildStateUpdates, buildAbortedResult, buildSuccessResult, evaluateCommit, stampGapEvacuationRotation };
|
|
1027
1199
|
//# sourceMappingURL=validate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../modules/order/utils/validate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../modules/order/utils/validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,kFAAkF;AAClF,mCAAmC;AACnC,kFAAkF;AAGlF,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AACvC,OAAO,EACH,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,2BAA2B,EAC3B,KAAK,EACL,cAAc,EACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EACH,cAAc,EACd,cAAc,EACd,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC7B,MAAM,YAAY,CAAC;AACpB,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;AAEjD,0BAA0B;AAC1B,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;AAChE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AAE9D,kFAAkF;AAClF,wBAAwB;AACxB,kFAAkF;AAElF;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,KAAU,EAAE,WAAgB,IAAI,EAAE,UAAe,UAAU;IAC9E,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAU,EAAE,CAAC;IAC3B,IAAI,eAAe,GAAG,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;IAExD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC,CAAC;QACrF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,eAAe,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1E,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;YACxB,eAAe,CAAC,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC;QAC9C,CAAC;IACL,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,4BAA4B,KAAK,CAAC,EAAE,oBAAoB,eAAe,CAAC,KAAK,eAAe,OAAO,GAAG;SAClH,CAAC,CAAC;IACP,CAAC;IAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,4BAA4B,KAAK,CAAC,EAAE,mBAAmB,eAAe,CAAC,IAAI,eAAe,OAAO,GAAG;SAChH,CAAC,CAAC;IACP,CAAC;IAED,IAAI,eAAe,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,IAAI,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5F,QAAQ,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,wCAAwC,KAAK,CAAC,EAAE,SAAS,eAAe,CAAC,IAAI,mBAAmB,OAAO,GAAG;SACtH,CAAC,CAAC;QACH,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,yEAAyE;IACzE,wEAAwE;IACxE,iEAAiE;IACjE,oEAAoE;IAEpE,MAAM,cAAc,GAAG,CACnB,eAAe,CAAC,KAAK,KAAK,YAAY,CAAC,MAAM;QAC7C,eAAe,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO,CACjD,CAAC;IAEF,IAAI,eAAe,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE,gDAAgD,KAAK,CAAC,EAAE,OAAO,eAAe,CAAC,KAAK,sCAAsC;YACnI,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;IACP,CAAC;IAED,IAAI,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,wCAAwC,KAAK,CAAC,EAAE,OAAO,eAAe,CAAC,KAAK,8BAA8B,OAAO,iEAAiE;YAC3L,WAAW,EAAE;gBACT,KAAK,EAAE,YAAY,CAAC,OAAO;gBAC3B,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,CAAC;aACV;SACJ,CAAC,CAAC;IACP,CAAC;IAED,IAAI,eAAe,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,IAAI,eAAe,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;QACxF,eAAe,CAAC,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC;IACzD,CAAC;SAAM,IAAI,CAAC,eAAe,CAAC,aAAa,IAAI,QAAQ,EAAE,CAAC;QACpD,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YACzB,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAC3D,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACjF,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC;QAClD,CAAC;IACL,CAAC;IAED,OAAO;QACH,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACnE,MAAM;QACN,QAAQ;QACR,eAAe;KAClB,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,0BAA0B,CAAC,MAAW,EAAE,aAAkB;IAC/D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QAClC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,iCAAiC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC,KAAK,qBAAqB;aAC3F,CAAC;QACN,CAAC;IACL,CAAC;IAED,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5F,OAAO;YACH,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,gCAAgC;SAC3C,CAAC;IACN,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,IAAS,EAAE,aAAkC,EAAE;IAC3E,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC7C,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;IAE/C,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,eAAe,GAAG,CAAC,CAAC;IAExB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;QAExD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,QAAQ,GAAG,KAAK,KAAK,YAAY,CAAC,MAAM,IAAI,KAAK,KAAK,YAAY,CAAC,OAAO,CAAC;QAEjF,IAAI,QAAQ,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACpC,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,EAAE,CAAC;gBACjC,cAAc,IAAI,oBAAoB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAC/D,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;gBACzC,eAAe,IAAI,oBAAoB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YACjE,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO;QACH,MAAM,EAAE,cAAc;QACtB,OAAO,EAAE,eAAe;QACxB,GAAG,EAAE,iBAAiB,CAAC,cAAc,EAAE,YAAY,CAAC;QACpD,IAAI,EAAE,iBAAiB,CAAC,eAAe,EAAE,aAAa,CAAC;KAC1D,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAAC,WAAgB,EAAE,cAAmB,EAAE,aAAkC,EAAE,EAAE,SAAc,IAAI;IAC7H,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,IAAI,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;IAC1E,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,IAAI,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;IAE5E,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;IAEtF,MAAM,YAAY,GAAG,aAAa,CAAC,cAAc,EAAE,YAAY,CAAC;QAC5D,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC;QACrC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,CAAC;YAC1C,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC;YACtC,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,IAAI,cAAc,EAAE,YAAY,CAAC,CAAC;IAElF,MAAM,aAAa,GAAG,aAAa,CAAC,cAAc,EAAE,aAAa,CAAC;QAC9D,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC;QACtC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;YAC3C,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC;YACvC,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,IAAI,cAAc,EAAE,aAAa,CAAC,CAAC;IAEpF,MAAM,UAAU,GAAU,EAAE,CAAC;IAE7B,MAAM,eAAe,GAAG,oBAAoB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACzE,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAE5E,IAAI,QAAQ,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;QACpC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC1E,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC3E,UAAU,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,UAAU;YAC3C,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,iBAAiB;YAC5B,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,MAAM,GAAG,eAAe,EAAE,YAAY,CAAC;SAC9E,CAAC,CAAC;IACP,CAAC;IAED,IAAI,QAAQ,CAAC,OAAO,GAAG,gBAAgB,EAAE,CAAC;QACtC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC7E,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;QAC9E,UAAU,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,WAAW;YAC5C,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,kBAAkB;YAC7B,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,OAAO,GAAG,gBAAgB,EAAE,aAAa,CAAC;SACjF,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,OAAO,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;QAChC,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACtF,UAAU;QACV,QAAQ;QACR,SAAS,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE;KACxD,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,MAAwB,EAAE,aAAkB,EAAE,SAAc,IAAI,EAAE,aAAkB,IAAI;IAC5G,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;YAAE,SAAS;QAElD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG;YAAE,OAAO,IAAI,IAAI,CAAC;aAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI;YAAE,QAAQ,IAAI,IAAI,CAAC;IAC/D,CAAC;IAED,MAAM,YAAY,GAAG,aAAa,EAAE,OAAO,IAAI,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,aAAa,EAAE,QAAQ,IAAI,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,aAAa,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,aAAa,EAAE,IAAI,IAAI,CAAC,CAAC;IAE5C,MAAM,WAAW,GAAG,YAAY,GAAG,OAAO,CAAC;IAC3C,MAAM,YAAY,GAAG,aAAa,GAAG,QAAQ,CAAC;IAE9C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;IAEtD,MAAM,YAAY,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;IAEhD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;QAChE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,kCAAkC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC1D,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,sBAAsB,GAAG,UAAU,EAAE,gCAAgC,IAAI,WAAW,CAAC,gCAAgC,CAAC;IAC5H,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,GAAG,CAAC;IAEtD,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,GAAG,gBAAgB,CAAC,CAAC;IAClF,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,UAAU,GAAG,gBAAgB,CAAC,CAAC;IAErF,MAAM,KAAK,GAAG,QAAQ,IAAI,eAAe,CAAC;IAC1C,MAAM,MAAM,GAAG,SAAS,IAAI,gBAAgB,CAAC;IAE7C,OAAO;QACH,OAAO,EAAE,KAAK,IAAI,MAAM;QACxB,QAAQ;QACR,SAAS;QACT,eAAe;QACf,gBAAgB;QAChB,MAAM,EAAE,CAAC,KAAK;YACV,CAAC,CAAC,aAAa,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,YAAY,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,eAAe,EAAE,YAAY,CAAC,EAAE;YAC1I,CAAC,CAAC,CAAC,MAAM;gBACL,CAAC,CAAC,cAAc,MAAM,CAAC,uBAAuB,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,aAAa,CAAC,EAAE;gBAC/I,CAAC,CAAC,IAAI;KACjB,CAAC;AACN,CAAC;AAED,kFAAkF;AAClF,gDAAgD;AAChD,kFAAkF;AAElF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAS,2BAA2B,CAAC,aAAkB,EAAE,QAAgB,EAAE,SAAc,IAAI,EAAE,SAAiB,EAAE;IAC9G,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAClF,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC;IACvF,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC;QAClB,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,CACF,iCAAiC,aAAa,CAAC,EAAE,OAAO,MAAM,IAAI,GAAG,IAAI;gBACzE,4CAA4C,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG;gBAC3E,oBAAoB,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,gCAAgC;gBAChF,yDAAyD,EACzD,MAAM,CACT,CAAC;QACN,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAS,0BAA0B,CAAC,MAAW,EAAE,YAAiB,EAAE,SAAc,EAAE,QAAa,EAAE,IAAS,EAAE,cAAmB,EAAE,cAAmB,EAAE,SAAc,IAAI;IACtK,MAAM,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACjC,MAAM,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACvE,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,EAAE,EAAE,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjD,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACtG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IACvD,IAAI,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IACtD,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnG,IAAI,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC;IAC9B,uEAAuE;IACvE,wEAAwE;IACxE,wDAAwD;IACxD,IAAI,cAAc,GAAQ,IAAI,CAAC;IAC/B,IAAI,CAAC;QAAC,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,cAAc,GAAG,IAAI,CAAC;IAAC,CAAC;IAChH,MAAM,KAAK,GAAG,2BAA2B,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC9H,IAAI,CAAC,KAAK,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAClC,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AACjG,CAAC;AAGD;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,UAAe,EAAE,UAAe,EAAE,cAAmB,EAAE,UAA+B,EAAE;IAC3G,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,oBAAoB,GAAG,WAAW,CAAC,iCAAiC,EAAE,GAAG,OAAO,CAAC;IACxG,iEAAiE;IACjE,yEAAyE;IACzE,mEAAmE;IACnE,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC/C,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAU,EAAE,CAAC;IAE1B,MAAM,YAAY,GAAU,EAAE,CAAC;IAC/B,MAAM,aAAa,GAAU,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAU,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAU,EAAE,CAAC;IAE5B,MAAM,eAAe,GAAG,CAAC,KAAU,EAAE,EAAE;QACnC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAChC,MAAM,UAAU,GAAG,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAC3E,IAAI,KAAK,CAAC,IAAI,GAAG,UAAU,EAAE,CAAC;YAC1B,IAAI,MAAM,EAAE,CAAC;gBACT,MAAM,CACF,2CAA2C,KAAK,CAAC,EAAE,GAAG;oBACtD,QAAQ,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG;oBAC5F,UAAU,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,eAAe,oBAAoB,GAAG,CAAC,IAAI,EACpF,MAAM,CACT,CAAC;YACN,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,IAAI,iBAAiB,GAAG,cAAc,CAAC;IACvC,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QAChD,IAAI,cAAc,GAAG,CAAC,IAAI,cAAc,GAAG,MAAM,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;YACjD,IAAI,MAAM,EAAE,CAAC;gBACT,MAAM,CAAC,wCAAwC,cAAc,OAAO,OAAO,SAAS,MAAM,IAAI,EAAE,MAAM,CAAC,CAAC;YAC5G,CAAC;YACD,iBAAiB,GAAG,OAAO,CAAC;QAChC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,UAAU,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEvC,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YAC7D,yDAAyD;YACzD,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;gBACpE,oCAAoC;gBACpC,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,EAAE,CAAC;oBACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;gBAC9C,CAAC;qBAAM,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;oBAC/C,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;YACD,SAAS;QACb,CAAC;QAED,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YACtG,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,KAAK,YAAY,CAAC,MAAM,IAAI,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;gBACpG,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,SAAS;QACb,CAAC;QAED,uEAAuE;QACvE,4CAA4C;QAC5C,IAAI,cAAc,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YAC5E,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,EAAE,CAAC;gBACvC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;YACxE,CAAC;iBAAM,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC/C,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,SAAS;QACb,CAAC;QAED,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC7G,CAAC;YACD,8CAA8C;YAC9C,0EAA0E;YAC1E,2EAA2E;YAC3E,qDAAqD;QACzD,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,CAAC,SAAc,EAAE,EAAE;QACvC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC,CAAC;YACtI,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,SAAc,EAAE,KAAU,EAAE,EAAE;QACjD,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAE9E,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,8DAA8D;YAC9D,eAAe,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO;QACX,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,OAAO;QACX,CAAC;QAED,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,GAAG,CAAC;QAC7D,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClH,YAAY,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE;YACjC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzB,IAAI,EAAE,KAAK,EAAE;gBAAE,OAAO,EAAE,GAAG,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,SAAS,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE;YAC9B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzB,IAAI,EAAE,KAAK,EAAE;gBAAE,OAAO,EAAE,GAAG,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,WAAW,GAAG,2BAA2B,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAElG,IAAI,QAAQ,GAAQ;gBAChB,IAAI,EAAE,WAAW,CAAC,MAAM;gBACxB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;gBAC/B,SAAS,EAAE,IAAI,CAAC,EAAE;gBAClB,OAAO,EAAE,WAAW;gBACpB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI;aACnB,CAAC;YACF,iEAAiE;YACjE,+DAA+D;YAC/D,0DAA0D;YAC1D,gDAAgD;YAChD,IAAI,eAAe,EAAE,CAAC;gBAClB,QAAQ,GAAG,0BAA0B,CACjC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,EACvD,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,EAAE,UAAU,CACpE,CAAC;YACN,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACrG,CAAC;QAED,2DAA2D;QAC3D,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC;IAEF,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtC,aAAa,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAExC,KAAK,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,UAAU,EAAE,CAAC;QACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;QACxG,CAAC;IACL,CAAC;IAED,oEAAoE;IACpE,uEAAuE;IACvE,2EAA2E;IAC3E,IAAI,SAAS,GAAU,EAAE,CAAC;IAC1B,IAAI,CAAC;QACD,IAAI,OAAO,EAAE,WAAW,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;YACzD,MAAM,UAAU,GAAG,6BAA6B,CAAC,UAAU,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAC;YAC9F,MAAM,IAAI,GAAG,0BAA0B,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACzE,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;YACvB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;gBACjC,MAAM,CACF,cAAc,SAAS,CAAC,MAAM,0BAA0B;oBACxD,aAAa,iBAAiB,SAAS,YAAY,KAAK;oBACxD,SAAS,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9E,MAAM,CACT,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,oCAAoC,CAAC,CAAC;IAEhD,OAAO;QACH,OAAO;QACP,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,iBAAiB;QAC9B,SAAS;QACT,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC;KACrC,CAAC;AACN,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,wBAAwB,CAAC,OAAY,EAAE,UAAe,EAAE,UAA+B,EAAE;IAC9F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/D,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAClC,qEAAqE;IACrE,uEAAuE;IACvE,gCAAgC;IAChC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,IAAI,CAAC,CAAC;IACxG,MAAM,SAAS,GAAG,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAU,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAU,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAU,EAAE,CAAC;IAE9B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACJ,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,MAAM,gBAAgB,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;IAEnC,KAAK,MAAM,YAAY,IAAI,OAAO,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,WAAW,EAAE,IAAI,CAAC;QAErC,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YACvD,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,SAAS;QACb,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;QACjB,IAAI,YAAY,GAAG,QAAQ,CAAC;QAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC;YAC7C,IAAI,UAAU,KAAK,UAAU;gBAAE,SAAS;YAExC,MAAM,OAAO,GAAG,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,cAAc,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;YAEhH,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;gBAC1B,YAAY,GAAG,QAAQ,CAAC;gBACxB,OAAO,GAAG,CAAC,CAAC;YAChB,CAAC;QACL,CAAC;QAED,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,SAAS;QACb,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,2BAA2B,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QACjI,IAAI,QAAQ,GAAQ;YAChB,IAAI,EAAE,WAAW,CAAC,MAAM;YACxB,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,SAAS,EAAE,YAAY,CAAC,EAAE;YAC1B,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,cAAc,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC;YACpD,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,UAAU,EAAE,IAAI;SACnB,CAAC;QACF,IAAI,cAAc,EAAE,CAAC;YACjB,QAAQ,GAAG,0BAA0B,CACjC,QAAQ,EAAE,WAAW,EAAE,cAAc,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,WAAW,EAC9E,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,CAClD,CAAC;QACN,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE,CAAC;QAC1C,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,OAAY;IAClC,OAAO;QACH,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM;QACzE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM;QACzE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM;KAC5E,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,eAAoB;IAC9C,MAAM,OAAO,GAAG,eAAe,EAAE,OAAO,CAAC;IACzC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAS,yBAAyB,CAAC,OAAY,EAAE,MAAW,EAAE,UAAe,IAAI,EAAE,uBAA8B,EAAE;IAC/G,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;IAC5D,MAAM,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;IAElC,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACnD,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/B,SAAS;QACb,CAAC;QAED,IACI,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,MAAM;YACnC,MAAM,CAAC,EAAE;YACT,MAAM,CAAC,SAAS;YAChB,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,EAAE,EAChC,CAAC;YACC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAU,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAsF,EAAE,CAAC;IAE5G,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,MAAM;YAAE,SAAS;QAElD,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QAC/C,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,SAAS;QAEzD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEvC,kDAAkD;QAClD,IAAI,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC;gBACZ,QAAQ;gBACR,cAAc,EAAE,OAAO,CAAC,OAAO;gBAC/B,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,YAAY,EAAE,OAAO,CAAC,KAAK;gBAC3B,MAAM,EAAE,eAAe;aAC1B,CAAC,CAAC;QACP,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;YAC5D,6DAA6D;YAC7D,gEAAgE;YAChE,+DAA+D;YAC/D,+DAA+D;YAC/D,gEAAgE;YAChE,aAAa,CAAC,IAAI,CAAC;gBACf,QAAQ;gBACR,MAAM;gBACN,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;gBACjC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;gBACpC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;aAC1B,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,iEAAiE;QACjE,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5H,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACvH,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAChC,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACnC,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;gBAC3K,CAAC;YACL,CAAC;YACD,iEAAiE;YACjE,8DAA8D;YAC9D,gEAAgE;YAChE,2DAA2D;YAC3D,+DAA+D;YAC/D,iEAAiE;YACjE,6DAA6D;YAC7D,iEAAiE;YACjE,IAAI,OAAO,EAAE,CAAC;gBACV,uDAAuD;gBACvD,yDAAyD;gBACzD,+CAA+C;gBAC/C,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;gBAC1G,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;oBAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;wBAAE,SAAS;oBAClE,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE,CAAC;wBACjC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI;4BAAE,SAAS;wBACrD,IAAI,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;4BAAE,SAAS;wBAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC;wBAChG,IAAI,CAAC;4BAAC,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;gCAAC,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;gCAAC,MAAM;4BAAC,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAA,CAAC;oBAC5P,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,4BAA4B;QAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3B,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC,CAAC;YAC/J,CAAC;;gBAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QACD,0EAA0E;QAC1E,oEAAoE;QACpE,mEAAmE;QACnE,sEAAsE;QACtE,iEAAiE;QACjE,sEAAsE;QACtE,uEAAuE;QACvE,iEAAiE;QACjE,mEAAmE;QACnE,qEAAqE;QACrE,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,sDAAsD;gBACtD,kDAAkD;gBAClD,UAAU,CAAC,IAAI,CAAC;oBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,cAAc,EAAE,IAAI;oBACpB,WAAW,EAAE,KAAK,CAAC,IAAI;oBACvB,YAAY,EAAE,QAAQ;oBACtB,MAAM,EAAE,sBAAsB;iBACjC,CAAC,CAAC;gBACH,SAAS;YACb,CAAC;YACD,8DAA8D;YAC9D,+DAA+D;YAC/D,+DAA+D;YAC/D,mDAAmD;YACnD,IAAI,GAAW,CAAC;YAChB,IAAI,aAAa,GAAQ,IAAI,CAAC;YAC9B,IAAI,CAAC;gBAAC,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,aAAa,GAAG,IAAI,CAAC;YAAC,CAAC;YACtH,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtE,IAAI,CAAC;oBACD,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;gBAC5F,CAAC;gBAAC,MAAM,CAAC;oBACL,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC9C,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC9C,CAAC;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC;iBAAM,IAAI,KAAK,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAClC,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,4BAA4B,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACnL,CAAC;QACL,CAAC;IACL,CAAC;IAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEpE,OAAO;QACH,OAAO,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;QAChC,UAAU;QACV,kBAAkB;KACrB,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,MAAW,EAAE,QAAa;IAClD,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5F,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,OAAY,EAAE,UAAe,EAAE,QAAa;IACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAW,EAAE,EAAE;QAChC,IAAI,UAAU,IAAI,MAAM,EAAE,IAAI,KAAK,UAAU;YAAE,OAAO,KAAK,CAAC;QAC5D,OAAO,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,qBAAqB,CAAC,OAAY,EAAE,UAAe,EAAE,QAAa;IACvE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,CAAC,CAAC;IACtC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,UAAU,IAAI,MAAM,EAAE,IAAI,KAAK,UAAU;YAAE,SAAS;QACxD,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;YAAE,SAAS;QACpD,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,EAAE,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,OAAY;IACvC,MAAM,SAAS,GAAG;QACd,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,QAAQ,EAAE,IAAI,GAAG,EAAE;KACtB,CAAC;IAEF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAE9C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,MAAM,EAAE,IAAI,KAAK,WAAW,CAAC,MAAM;YAAE,SAAS;QAClD,IAAI,MAAM,CAAC,EAAE;YAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,SAAS;YAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QACtE,IAAI,MAAM,CAAC,OAAO;YAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,SAAS,0BAA0B,CAAC,SAAc,EAAE,OAAY,EAAE,EAAO;IACrE,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IAE7B,IAAI,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;IACjC,OAAO,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAAC,OAAY,EAAE,WAAgB,EAAE,UAAe,EAAE,WAAgB,EAAE,aAAkB;IACjH,IAAI,OAAO,CAAC,KAAK,KAAK,WAAW,CAAC,KAAK;QACnC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI;QACjC,OAAO,CAAC,KAAK,KAAK,WAAW;QAC7B,OAAO,CAAC,IAAI,KAAK,UAAU;QAC3B,OAAO,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,0BAA0B,CAAC,WAAgB,EAAE,UAAe,EAAE,UAA+B,EAAE;IACpG,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;IAE5B,KAAK,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QACnD,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAErD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,qFAAqF;YACrF,iFAAiF;YACjF,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE;gBAChB,GAAG,WAAW;gBACd,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC;gBAC7B,KAAK,EAAE,YAAY,CAAC,OAAO;gBAC3B,OAAO,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,SAAS;QACb,CAAC;QAED,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC;YACjF,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YACnF,uEAAuE;YACvE,mEAAmE;YACnE,EAAE;YACF,kFAAkF;YAClF,iEAAiE;YACjE,oEAAoE;YACpE,iDAAiD;YACjD,MAAM,kBAAkB,GAAG,WAAW,IAAI,CAAC,iBAAiB,CAAC;YAC7D,MAAM,aAAa,GAAG,kBAAkB;gBACpC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC,CAAC,UAAU,CAAC;YACjB,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC;YACvE,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3D,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,CAAC;gBAC3F,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE;oBAChB,GAAG,OAAO;oBACV,GAAG,WAAW;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE,WAAW;oBAClB,OAAO,EAAE,aAAa;iBACzB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC/E,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE;oBAChB,GAAG,OAAO;oBACV,GAAG,WAAW;oBACd,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,YAAY,CAAC,OAAO;oBAC3B,OAAO,EAAE,IAAI;iBAChB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QAChD,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS;QAChC,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,OAAY,EAAE,UAAe;IACpD,MAAM,YAAY,GAAU,EAAE,CAAC;IAE/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACrC,YAAY,CAAC,IAAI,CAAC;gBACd,GAAG,MAAM,CAAC,KAAK;gBACf,KAAK,EAAE,YAAY,CAAC,OAAO;gBAC3B,OAAO,EAAE,IAAI;aAChB,CAAC,CAAC;QACP,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAI,WAAW,EAAE,CAAC;gBACd,YAAY,CAAC,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC,CAAC;YAC/D,CAAC;QACL,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAI,WAAW,EAAE,CAAC;gBACd,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACrE,YAAY,CAAC,IAAI,CAAC,EAAE,GAAG,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACzD,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,YAAY,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,MAAW;IACnC,OAAO;QACH,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,IAAI;QACrB,gBAAgB,EAAE,CAAC;QACnB,OAAO,EAAE,IAAI;QACb,MAAM;KACT,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,EACxB,OAAO,EACP,YAAY,EACZ,WAAW,EACX,eAAe,EACf,gBAAgB,EACd;IACF,OAAO;QACH,OAAO;QACP,YAAY;QACZ,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC;QACrG,WAAW;QACX,cAAc,EAAE,WAAW,CAAC,UAAU,EAAE;QACxC,eAAe;QACf,gBAAgB;QAChB,OAAO,EAAE,KAAK;KACjB,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,WAAgB,EAAE,UAAe,EAAE;IACvD,MAAM,OAAO,GAAG,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5E,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3E,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO;YACH,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,2BAA2B;YACnC,KAAK,EAAE,OAAO;SACjB,CAAC;IACN,CAAC;IAED,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QACxB,OAAO;YACH,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,qCAAqC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,cAAc,EAAE,IAAI,qCAAqC,EAAE;YACvJ,KAAK,EAAE,MAAM;SAChB,CAAC;IACN,CAAC;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAE5C,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QACpD,OAAO;YACH,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,kCAAkC;YAC1C,KAAK,EAAE,OAAO;SACjB,CAAC;IACN,CAAC;IAED,IAAI,cAAc,KAAK,IAAI,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,cAAc,EAAE,CAAC;QAClG,OAAO;YACH,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,8CAA8C,MAAM,CAAC,WAAW,CAAC,eAAe,cAAc,EAAE;YACxG,KAAK,EAAE,MAAM;SAChB,CAAC;IACN,CAAC;IAED,IAAI,UAAU,IAAI,OAAO,WAAW,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE;YAC7C,UAAU,EAAE,OAAO,EAAE,iBAAiB,IAAI,IAAI;SACjD,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO;gBACH,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,2CAA2C;gBACnD,KAAK,EAAE,OAAO;aACjB,CAAC;QACN,CAAC;IACL,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,KAAK,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO;gBACH,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,uBAAuB;gBAC/B,KAAK,EAAE,MAAM;aAChB,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,kFAAkF;AAClF,UAAU;AACV,kFAAkF;AAElF,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,cAAc,EAAE,aAAa,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,cAAc,EAAE,0BAA0B,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-credit.d.ts","sourceRoot":"","sources":["../../scripts/analyze-credit.ts"],"names":[],"mappings":"AAqDA,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiB3C;
|
|
1
|
+
{"version":3,"file":"analyze-credit.d.ts","sourceRoot":"","sources":["../../scripts/analyze-credit.ts"],"names":[],"mappings":"AAqDA,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiB3C;AAeD,iBAAS,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAErC;AAuoBD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC"}
|