dexbot 1.5.0 → 1.5.1
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 +26 -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/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 +18 -1
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.js +223 -32
- package/dist/modules/dexbot_cow_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 +12 -1
- 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 +182 -5
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +21 -16
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +72 -0
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/manager.d.ts +41 -1
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +144 -15
- 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 +58 -8
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/math.d.ts +42 -1
- package/dist/modules/order/utils/math.d.ts.map +1 -1
- package/dist/modules/order/utils/math.js +91 -1
- package/dist/modules/order/utils/math.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +52 -1
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +137 -7
- 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 +165 -10
- package/dist/modules/order/utils/validate.js.map +1 -1
- package/docs/DEXBOT_COMPARISON.md +3 -3
- package/docs/EVOLUTION.md +6 -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/package.json +1 -1
|
@@ -11,6 +11,7 @@ declare function initializeStartupState(bot: any): Promise<{
|
|
|
11
11
|
persistedBtsBalance: any;
|
|
12
12
|
persistedRecentFillKeys: any;
|
|
13
13
|
persistedGenesis: any;
|
|
14
|
+
persistedGapEvacStreaks: any;
|
|
14
15
|
}>;
|
|
15
16
|
/**
|
|
16
17
|
* Finish the startup sequence: activate fill listener, reconcile grid, place initial orders.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dexbot_startup_runtime.d.ts","sourceRoot":"","sources":["../../modules/dexbot_startup_runtime.ts"],"names":[],"mappings":"AAAA,iFAAiF;
|
|
1
|
+
{"version":3,"file":"dexbot_startup_runtime.d.ts","sourceRoot":"","sources":["../../modules/dexbot_startup_runtime.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAkDjF;;;;GAIG;AACH,iBAAe,sBAAsB,CAAC,GAAG,EAAE,GAAG;;;;;;;;GAgG7C;AAED;;;;GAIG;AACH,iBAAe,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,iBA6gB/D;AAED;;;GAGG;AACH,iBAAe,sBAAsB,CAAC,GAAG,EAAE,GAAG,iBA2C7C;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,CAAA"}
|
|
@@ -21,6 +21,7 @@ function withBlockchainRetry(...args) { return require('./order/utils/system').w
|
|
|
21
21
|
function buildFillKey(...args) { return require('./order/utils/order').buildFillKey(...args); }
|
|
22
22
|
function correctAllPriceMismatches(...args) { return require('./order/utils/order').correctAllPriceMismatches(...args); }
|
|
23
23
|
function parseChainOrder(...args) { return require('./order/utils/order').parseChainOrder(...args); }
|
|
24
|
+
function restoreGapEvacStreaks(...args) { return require('./order/utils/system').restoreGapEvacStreaks(...args); }
|
|
24
25
|
const storage = getStorage();
|
|
25
26
|
function attemptResumePersistedGridByPriceMatch(...args) { return require('./order/grid_reconcile').attemptResumePersistedGridByPriceMatch(...args); }
|
|
26
27
|
function decideStartupGridAction(...args) { return require('./order/grid_reconcile').decideStartupGridAction(...args); }
|
|
@@ -127,6 +128,7 @@ async function initializeStartupState(bot) {
|
|
|
127
128
|
const persistedBtsBalance = bot.accountOrders.loadBtsBalance();
|
|
128
129
|
const persistedRecentFillKeys = bot.accountOrders.loadRecentFillKeys();
|
|
129
130
|
const persistedGenesis = bot.accountOrders.loadGenesis?.() ?? null;
|
|
131
|
+
const persistedGapEvacStreaks = bot.accountOrders.loadGapEvacStreaks?.() ?? null;
|
|
130
132
|
return {
|
|
131
133
|
persistedGrid: repairedGrid,
|
|
132
134
|
persistedBtsFeesOwed,
|
|
@@ -134,6 +136,7 @@ async function initializeStartupState(bot) {
|
|
|
134
136
|
persistedBtsBalance,
|
|
135
137
|
persistedRecentFillKeys,
|
|
136
138
|
persistedGenesis,
|
|
139
|
+
persistedGapEvacStreaks,
|
|
137
140
|
};
|
|
138
141
|
}
|
|
139
142
|
/**
|
|
@@ -142,7 +145,7 @@ async function initializeStartupState(bot) {
|
|
|
142
145
|
* @param {Object} startupState
|
|
143
146
|
*/
|
|
144
147
|
async function finishStartupSequence(bot, startupState) {
|
|
145
|
-
let { persistedGrid, persistedBtsFeesOwed, persistedBoundaryIdx, persistedBtsBalance, persistedRecentFillKeys, persistedGenesis, } = startupState;
|
|
148
|
+
let { persistedGrid, persistedBtsFeesOwed, persistedBoundaryIdx, persistedBtsBalance, persistedRecentFillKeys, persistedGenesis, persistedGapEvacStreaks, } = startupState;
|
|
146
149
|
try {
|
|
147
150
|
if (typeof bot._fillsUnsubscribe === 'function') {
|
|
148
151
|
await bot._fillsUnsubscribe().catch(() => { });
|
|
@@ -493,6 +496,14 @@ async function finishStartupSequence(bot, startupState) {
|
|
|
493
496
|
else {
|
|
494
497
|
bot._log('Found active session. Loading and syncing existing grid.');
|
|
495
498
|
await botGridModule(bot).loadGrid(bot.manager, persistedGrid, persistedBoundaryIdx, persistedGenesis);
|
|
499
|
+
// Phase 3 restart resilience: restore persisted gap-evacuation
|
|
500
|
+
// streaks (pruned to surviving slots) so an order stranded
|
|
501
|
+
// in-band across frequent restarts still reaches the cancel
|
|
502
|
+
// threshold instead of resetting its cycle count each boot.
|
|
503
|
+
const restoredStreaks = restoreGapEvacStreaks(bot.manager, persistedGapEvacStreaks);
|
|
504
|
+
if (restoredStreaks > 0) {
|
|
505
|
+
bot._log(`[GAP-EVAC] Restored ${restoredStreaks} persisted in-band streak(s) from snapshot`);
|
|
506
|
+
}
|
|
496
507
|
let startupChainOpenOrders = chainOpenOrders;
|
|
497
508
|
if (chainReadTruncated) {
|
|
498
509
|
// Sync on a partial window would virtualize live ACTIVE
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dexbot_startup_runtime.js","sourceRoot":"","sources":["../../modules/dexbot_startup_runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dexbot_startup_runtime.js","sourceRoot":"","sources":["../../modules/dexbot_startup_runtime.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,WAAW,IAAI,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;AACjD,SAAS,kBAAkB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,sBAAsB,CAAC,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACjH,SAAS,qBAAqB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,sBAAsB,CAAC,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACvH,SAAS,mBAAmB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,sBAAsB,CAAC,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACnH,SAAS,YAAY,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,qBAAqB,CAAC,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACpG,SAAS,yBAAyB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,qBAAqB,CAAC,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9H,SAAS,eAAe,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,qBAAqB,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC1G,SAAS,qBAAqB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,sBAAsB,CAAC,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACvH,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAC7B,SAAS,sCAAsC,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,wBAAwB,CAAC,CAAC,sCAAsC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3J,SAAS,uBAAuB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,wBAAwB,CAAC,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7H,SAAS,mBAAmB,CAAC,GAAG,IAAS,IAAI,OAAO,OAAO,CAAC,wBAAwB,CAAC,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACrH,SAAS,cAAc,CAAC,GAAQ;IAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,0EAA0E;AAC1E,sEAAsE;AACtE,SAAS,aAAa,CAAC,GAAQ;IAC3B,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7F,CAAC;AACD,SAAS,kBAAkB,CAAC,GAAQ;IAChC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,OAAO,GAAG,CAAC,oBAAoB,KAAK,QAAQ,CAAC;QAC7E,CAAC,CAAC,GAAG,CAAC,oBAAoB;QAC1B,CAAC,CAAC,EAAE,sCAAsC,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,CAAC;AACnG,CAAC;AACD,KAAK,UAAU,wBAAwB,CAAC,GAAQ,EAAE,IAAS;IACvD,IAAI,OAAO,GAAG,CAAC,mBAAmB,KAAK,UAAU;QAAE,OAAO,MAAM,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC1F,OAAO,MAAM,qBAAqB,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACzE,CAAC;AACD,MAAM,kBAAkB,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;AAEpD;;;;GAIG;AACH,KAAK,UAAU,sBAAsB,CAAC,GAAQ;IAC1C,GAAG,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACrE,GAAG,CAAC,mBAAmB,CAAC,SAAS,CAAC;QAC9B,aAAa,EAAE,GAAG,CAAC,aAAa;KACnC,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,GAAG,CAAC,mBAAmB,CAAC,aAAa,CAAC;QAC/D,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,sBAAsB;KACxD,CAAC,CAAC;IACH,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,IAAI,CAAC,UAAU,oBAAoB,iDAAiD,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IAC5D,MAAM,WAAW,GAAG,aAAa;SAC5B,GAAG,CAAC,CAAC,CAAM,EAAE,WAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;SAChG,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE3D,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtG,GAAG,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QACvE,GAAG,CAAC,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAClC,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QACtC,GAAG,CAAC,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IAClD,CAAC;IACD,GAAG,CAAC,gCAAgC,EAAE,CAAC;IACvC,GAAG,CAAC,4BAA4B,EAAE,CAAC;IACnC,GAAG,CAAC,0BAA0B,EAAE,CAAC;IACjC,wEAAwE;IACxE,wEAAwE;IACxE,uEAAuE;IACvE,wEAAwE;IACxE,yEAAyE;IACzE,uEAAuE;IACvE,wEAAwE;IACxE,qEAAqE;IACrE,wDAAwD;IAExD,IAAI,CAAC;QACD,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1D,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACtC,MAAM,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpD,GAAG,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC/D,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,iCAAiC,eAAe,CAAC,GAAG,CAAC,6DAA6D,EAAE,OAAO,CAAC,CAAC;IAC1I,CAAC;IAED,IAAI,CAAC;QACD,MAAM,kBAAkB,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,oCAAoC,eAAe,CAAC,GAAG,CAAC,gEAAgE,EAAE,OAAO,CAAC,CAAC;IAChJ,CAAC;IAED,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAEnD,IAAI,YAAY,GAAG,aAAa,CAAC;IACjC,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;YAC5C,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC;gBACvD,WAAW,EAAE,CAAC;gBACd,MAAM,aAAa,GAAG,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;gBAChD,IAAI,aAAa,CAAC,KAAK,KAAK,YAAY,CAAC,MAAM,IAAI,aAAa,CAAC,KAAK,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;oBAC9F,aAAa,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC;gBAC/C,CAAC;gBACD,OAAO,aAAa,CAAC;YACzB,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YAClB,GAAG,CAAC,IAAI,CAAC,qBAAqB,WAAW,oEAAoE,CAAC,CAAC;QACnH,CAAC;IACL,CAAC;IAED,MAAM,oBAAoB,GAAG,GAAG,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;IACjE,MAAM,oBAAoB,GAAG,GAAG,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;IACjE,MAAM,mBAAmB,GAAG,GAAG,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;IAC/D,MAAM,uBAAuB,GAAG,GAAG,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;IACvE,MAAM,gBAAgB,GAAG,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,IAAI,IAAI,CAAC;IACnE,MAAM,uBAAuB,GAAG,GAAG,CAAC,aAAa,CAAC,kBAAkB,EAAE,EAAE,IAAI,IAAI,CAAC;IAEjF,OAAO;QACH,aAAa,EAAE,YAAY;QAC3B,oBAAoB;QACpB,oBAAoB;QACpB,mBAAmB;QACnB,uBAAuB;QACvB,gBAAgB;QAChB,uBAAuB;KAC1B,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,qBAAqB,CAAC,GAAQ,EAAE,YAAiB;IAC5D,IAAI,EACA,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,GAC1B,GAAG,YAAY,CAAC;IAEjB,IAAI,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC9C,MAAM,GAAG,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,GAAG,CAAC,iBAAiB,GAAG,CAAC,OAAO,GAAG,CAAC,mBAAmB,KAAK,UAAU,CAAC;YACnE,CAAC,CAAC,MAAM,GAAG,CAAC,mBAAmB,EAAE;YACjC,CAAC,CAAC,MAAM,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,IAAI,SAAS,EAAE,GAAG,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC;QACvG,IAAI,OAAO,GAAG,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC9C,GAAG,CAAC,KAAK,CAAC,2FAA2F,CAAC,CAAC;YACvG,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACjC,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;QAE5E,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC;YAC5B,GAAG,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,GAAG,EAAE;gBAClD,GAAG,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;gBAC7E,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;oBAChC,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBAC3E,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC;wBACzE,IAAI,cAAc,CAAC;wBACnB,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;4BACnE,IAAI,GAAG,CAAC,aAAa;gCAAE,OAAO;4BAC9B,kDAAkD;4BAClD,iDAAiD;4BACjD,+CAA+C;4BAC/C,MAAM,eAAe,GAAG,MAAM,wBAAwB,CAAC,GAAG,EAAE;gCACxD,GAAG,EAAE,CAAC,OAAe,EAAE,KAAU,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;gCAC9D,KAAK,EAAE,gBAAgB;6BAC1B,CAAC,CAAC;4BACH,IAAI,eAAe,KAAK,IAAI,IAAI,GAAG,CAAC,aAAa;gCAAE,OAAO;4BAC1D,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;4BAC7F,IAAI,GAAG,CAAC,aAAa;gCAAE,OAAO;4BAC9B,IAAI,UAAU,EAAE,YAAY,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;gCACvC,GAAG,CAAC,iCAAiC,CAAC,0BAA0B,CAAC,CAAC;gCAClE,GAAG,CAAC,IAAI,CAAC,wBAAwB,UAAU,CAAC,YAAY,CAAC,MAAM,8BAA8B,EAAE,MAAM,CAAC,CAAC;gCACvG,MAAM,GAAG,CAAC,yBAAyB,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,0BAA0B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gCACxH,IAAI,GAAG,CAAC,aAAa;oCAAE,OAAO;4BAClC,CAAC;4BACD,GAAG,CAAC,OAAO,CAAC,uBAAuB,GAAG,GAAG,CAAC,0BAA0B,EAAE,CAAC;4BACvE,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;4BAEhC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;gCACrB,IAAI,CAAC;oCACD,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,eAAe,CACrD,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CACxC,CAAC;oCACF,MAAM,GAAG,CAAC,iBAAiB,CAAC;wCACxB,GAAG,EAAE,eAAe,CAAC,aAAa;wCAClC,IAAI,EAAE,eAAe,CAAC,cAAc;qCACvC,CAAC,CAAC;gCACP,CAAC;gCAAC,OAAO,QAAa,EAAE,CAAC;oCACrB,GAAG,CAAC,KAAK,CAAC,mCAAmC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gCAC9E,CAAC;4BACL,CAAC;wBACL,CAAC,CAAC,CAAC;wBACH,IAAI,CAAC;4BACD,MAAM,OAAO,CAAC,IAAI,CAAC;gCACf,WAAW;gCACX,IAAI,OAAO,CAAC,CAAC,CAAM,EAAE,MAAW,EAAE,EAAE;oCAChC,cAAc,GAAG,UAAU,CACvB,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,kBAAkB,QAAQ,CAAC,CAAC,EAC/E,kBAAkB,CACrB,CAAC;gCACN,CAAC,CAAC;6BACL,CAAC,CAAC;wBACP,CAAC;wBAAC,OAAO,MAAW,EAAE,CAAC;4BACnB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gCAChC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,CAAC,CAAC;gCAC/C,IAAI,OAAO,CAAgB,CAAC,OAAY,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;6BAC5F,CAAC,CAAC;4BACH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gCACd,GAAG,CAAC,IAAI,CAAC,sEAAsE,EAAE,MAAM,CAAC,CAAC;4BAC7F,CAAC;iCAAM,CAAC;gCACJ,GAAG,CAAC,KAAK,CAAC,2CAA2C,MAAM,EAAE,OAAO,IAAI,MAAM,EAAE,CAAC,CAAC;4BACtF,CAAC;wBACL,CAAC;gCAAS,CAAC;4BACP,IAAI,cAAc;gCAAE,YAAY,CAAC,cAAc,CAAC,CAAC;wBACrD,CAAC;oBACL,CAAC;gBACL,CAAC,CAAC;gBACF,YAAY,CAAC,GAAG,EAAE;oBACd,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;wBAClC,IAAI,CAAC;4BACD,GAAG,CAAC,KAAK,CAAC,yCAAyC,GAAG,CAAC,GAAG,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC;wBACjF,CAAC;wBAAC,OAAO,CAAM,EAAE,CAAC;wBAClB,CAAC;oBACL,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;QAE/D,IAAI,eAAe,EAAE,CAAC;YAClB,GAAG,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;YAElF,MAAM,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBACrD,IAAI,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,GAAG,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,kBAAkB,CAAC,MAAM,uDAAuD,CAAC,CAAC;oBAE/G,MAAM,KAAK,GAAG,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC/C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;oBACpC,IAAI,sBAAsB,GAAG,KAAK,CAAC;oBAEnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACvB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;4BAAE,SAAS;wBAE1C,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;4BACpD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAW,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;wBAEvG,IAAI,CAAC,SAAS,EAAE,CAAC;4BACb,IAAI,MAAM,sBAAsB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE;gCACnE,OAAO,EAAE,YAAY;gCACrB,KAAK,EAAE,YAAY;gCACnB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gCACnC,aAAa,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,gDAAgD,EAAE,CAAC,QAAQ,6BAA6B;6BACvH,CAAC,EAAE,CAAC;gCACD,sBAAsB,GAAG,IAAI,CAAC;4BAClC,CAAC;4BACD,SAAS;wBACb,CAAC;wBAED,GAAG,CAAC,IAAI,CAAC,oCAAoC,SAAS,CAAC,IAAI,UAAU,SAAS,CAAC,EAAE,aAAa,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;wBAEjH,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;wBAC1C,IAAI,cAAc,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC3G,SAAS;wBACb,CAAC;wBAED,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;wBACvC,IAAI,CAAC;4BACD,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,qCAAqC,CAAC,IAAI,EAAE,MAAM,EAAE;gCACnF,OAAO,EAAE,YAAY;gCACrB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gCACnC,aAAa,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,oCAAoC,EAAE,CAAC,QAAQ,gCAAgC;6BAC9G,CAAC,CAAC;4BACH,IAAI,gBAAgB,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;gCAC5C,sBAAsB,GAAG,IAAI,CAAC;gCAC9B,SAAS;4BACb,CAAC;4BACD,IAAI,gBAAgB,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gCACxC,SAAS;4BACb,CAAC;4BACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,qBAAqB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;4BACpI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gCACjB,GAAG,CAAC,KAAK,CAAC,uFAAuF,CAAC,CAAC;gCACnG,SAAS;4BACb,CAAC;wBACL,CAAC;gCAAS,CAAC;4BACP,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC7C,CAAC;oBACL,CAAC;oBAED,IAAI,sBAAsB,EAAE,CAAC;wBACzB,GAAG,CAAC,IAAI,CAAC,mGAAmG,EAAE,MAAM,CAAC,CAAC;wBACtH,6CAA6C;wBAC7C,wDAAwD;wBACxD,sDAAsD;wBACtD,kDAAkD;wBAClD,MAAM,wBAAwB,GAAG,MAAM,wBAAwB,CAAC,GAAG,EAAE;4BACjE,GAAG,EAAE,CAAC,OAAe,EAAE,KAAU,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;4BAC9D,KAAK,EAAE,YAAY;4BACnB,MAAM,EAAE,sBAAsB;yBACjC,CAAC,CAAC;wBACH,IAAI,wBAAwB,KAAK,IAAI,EAAE,CAAC;4BACpC,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;4BAClF,IAAI,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;gCACtC,MAAM,GAAG,CAAC,yBAAyB,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,mCAAmC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;4BACrI,CAAC;wBACL,CAAC;oBACL,CAAC;oBAED,MAAM,GAAG,CAAC,8BAA8B,CAAC,kBAAkB,CAAC,CAAC;oBAE7D,GAAG,CAAC,OAAO,CAAC,uBAAuB,GAAG,GAAG,CAAC,0BAA0B,EAAE,CAAC;oBACvE,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACpC,CAAC;gBAED,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,GACjE,MAAM,GAAG,CAAC,8BAA8B,CAAC,yBAAyB,CAAC,CAAC;gBAExE,IAAI,kBAAkB,EAAE,CAAC;oBACrB,GAAG,CAAC,KAAK,CAAC,4CAA4C,kBAAkB,8DAA8D,CAAC,CAAC;gBAC5I,CAAC;gBAED,MAAM,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBACrC,IAAI,CAAC,gBAAgB,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC3C,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,oBAAoB,CACvD,SAAS,EACT,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CACxC,CAAC;oBACF,IAAI,YAAY,IAAI,YAAY,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;wBAChD,GAAG,CAAC,IAAI,CAAC,4CAA4C,YAAY,CAAC,YAAY,kBAAkB,CAAC,CAAC;wBAClG,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;oBAC3C,CAAC;gBACL,CAAC;gBAED,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;oBACrB,IAAI,CAAC;wBACD,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,eAAe,CACrD,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CACxC,CAAC;wBACF,MAAM,GAAG,CAAC,iBAAiB,CAAC;4BACxB,GAAG,EAAE,eAAe,CAAC,aAAa;4BAClC,IAAI,EAAE,eAAe,CAAC,cAAc;yBACvC,CAAC,CAAC;oBACP,CAAC;oBAAC,OAAO,QAAa,EAAE,CAAC;wBACrB,GAAG,CAAC,KAAK,CAAC,oCAAoC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAC/E,CAAC;gBACL,CAAC;gBACD,GAAG,CAAC,IAAI,CAAC,oDAAoD,EAAE,MAAM,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;YAEH,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;YACvC,MAAM,GAAG,CAAC,mBAAmB,EAAE,CAAC;YAChC,MAAM,GAAG,CAAC,4BAA4B,EAAE,CAAC;YACzC,MAAM,GAAG,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC;YAClD,GAAG,CAAC,6BAA6B,EAAE,CAAC;YACpC,IAAI,OAAO,GAAG,CAAC,4BAA4B,KAAK,UAAU;gBAAE,GAAG,CAAC,4BAA4B,EAAE,CAAC;YAC/F,GAAG,CAAC,4BAA4B,EAAE,CAAC;YACnC,GAAG,CAAC,sCAAsC,EAAE,CAAC;YAC7C,GAAG,CAAC,6BAA6B,EAAE,CAAC;YACpC,MAAM,GAAG,CAAC,mBAAmB,EAAE,CAAC;YAChC,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;YACjD,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAE9B,IAAI,GAAG,CAAC,4BAA4B,EAAE,EAAE,CAAC;gBACrC,GAAG,CAAC,wBAAwB,EAAE,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACJ,GAAG,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;YAChE,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YACjF,OAAO;QACX,CAAC;QAED,MAAM,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3C,MAAM,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC7D,IAAI,mBAAmB,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;gBACjE,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG;oBACrB,IAAI,EAAE,mBAAmB,CAAC,IAAI,IAAI,CAAC;oBACnC,KAAK,EAAE,mBAAmB,CAAC,KAAK,IAAI,CAAC;oBACrC,MAAM,EAAE,mBAAmB,CAAC,MAAM,IAAI,CAAC;iBAC1C,CAAC;YACN,CAAC;QACL,CAAC;QAED,IAAI,uBAAuB,IAAI,OAAO,uBAAuB,KAAK,QAAQ,EAAE,CAAC;YACzE,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC;gBACzE,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,sDAAsD,EAAE,OAAO,CAAC,CAAC;QACrI,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,MAAM,wBAAwB,CAAC,GAAG,EAAE;gBAClC,GAAG,EAAE,CAAC,OAAe,EAAE,KAAU,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;gBAC9D,KAAK,EAAE,SAAS;aACnB,CAAC,CAAC;QACP,qEAAqE;QACrE,iEAAiE;QACjE,mEAAmE;QACnE,MAAM,kBAAkB,GAAG,kBAAkB,KAAK,IAAI,CAAC;QACvD,MAAM,eAAe,GAAG,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC9E,kEAAkE;QAClE,mEAAmE;QACnE,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtF,IAAI,CAAC;gBAAC,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,CAAC,eAAe,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QAClF,CAAC;QAED,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,gBAAgB,GAAG,IAAI,CAAC;YACxB,GAAG,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,uBAAuB,CAAC;gBACxD,aAAa;gBACb,eAAe;gBACf,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC;gBAC3B,SAAS,EAAE,KAAK,EAAE,MAAW,EAAE,EAAE;oBAC7B,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC1C,CAAC;gBACD,WAAW,EAAE,oBAAoB;gBACjC,OAAO,EAAE,gBAAgB;gBACzB,eAAe,EAAE,YAAY,CAAC,sCAAsC;aACvE,CAAC,CAAC;YACH,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;YAE7C,IAAI,gBAAgB,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;YACnG,CAAC;YAED,IAAI,gBAAgB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;gBACxE,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CACrC,CAAC,CAAM,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAC9D,CAAC,MAAM,CAAC;gBACT,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;oBACnB,GAAG,CAAC,IAAI,CAAC,iDAAiD,eAAe,CAAC,MAAM,wDAAwD,CAAC,CAAC;gBAC9I,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpB,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;oBAC3C,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,oBAAoB,CAAC;gBACzD,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC5F,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YACpE,MAAM,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBAC3C,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YACrD,IAAI,CAAC;gBACD,GAAG,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,gBAAgB,EAAE,CAAC;oBACnB,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC1C,CAAC;gBACD,IAAI,gBAAgB,EAAE,CAAC;oBACnB,IAAI,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACtF,GAAG,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;wBAC7E,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACrD,MAAM,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,eAAe,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;wBAChF,8DAA8D;wBAC9D,6DAA6D;wBAC7D,6DAA6D;wBAC7D,2DAA2D;wBAC3D,wDAAwD;wBACxD,6CAA6C;wBAC7C,IAAI,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpC,GAAG,CAAC,IAAI,CAAC,wBAAwB,GAAG,CAAC,kBAAkB,CAAC,MAAM,+DAA+D,EAAE,MAAM,CAAC,CAAC;4BACvI,MAAM,GAAG,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC;wBAC1D,CAAC;wBACD,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC;4BAC3D,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,MAAM,EAAE,GAAG,CAAC,MAAM;4BAClB,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,UAAU,EAAE,GAAG,CAAC,UAAU;4BAC1B,WAAW;4BACX,eAAe;yBAClB,CAAC,CAAC;wBAEH,MAAM,GAAG,CAAC,qBAAqB,CAAC,eAAe,EAAE,sCAAsC,CAAC,CAAC;oBAC7F,CAAC;yBAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC7B,GAAG,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;wBACvE,MAAM,GAAG,CAAC,kBAAkB,EAAE,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACJ,uDAAuD;wBACvD,yDAAyD;wBACzD,yDAAyD;wBACzD,qDAAqD;wBACrD,GAAG,CAAC,IAAI,CAAC,8HAA8H,EAAE,MAAM,CAAC,CAAC;oBACrJ,CAAC;oBACD,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;oBACrE,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;oBACtG,+DAA+D;oBAC/D,2DAA2D;oBAC3D,4DAA4D;oBAC5D,4DAA4D;oBAC5D,MAAM,eAAe,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;oBACpF,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;wBACtB,GAAG,CAAC,IAAI,CAAC,uBAAuB,eAAe,4CAA4C,CAAC,CAAC;oBACjG,CAAC;oBACD,IAAI,sBAAsB,GAAG,eAAe,CAAC;oBAC7C,IAAI,kBAAkB,EAAE,CAAC;wBACrB,wDAAwD;wBACxD,uDAAuD;wBACvD,qDAAqD;wBACrD,GAAG,CAAC,IAAI,CAAC,mHAAmH,EAAE,MAAM,CAAC,CAAC;oBAC1I,CAAC;yBAAM,CAAC;wBACJ,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;wBAE1G,IAAI,UAAU,CAAC,uBAAuB,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;4BACjD,MAAM,yBAAyB,CAC3B,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,EAAE,WAAW,CACxD,CAAC;wBACN,CAAC;wBAED,IAAI,UAAU,CAAC,YAAY,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAChE,GAAG,CAAC,IAAI,CAAC,iBAAiB,UAAU,CAAC,YAAY,CAAC,MAAM,mDAAmD,EAAE,MAAM,CAAC,CAAC;4BACrH,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,yBAAyB,CACnD,UAAU,CAAC,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,6BAA6B,EACjE,EAAE,uBAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CACpD,CAAC;4BAEF,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gCACxB,MAAM,YAAY,GAAG,MAAM,wBAAwB,CAAC,GAAG,EAAE;oCACrD,GAAG,EAAE,CAAC,OAAe,EAAE,KAAU,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;oCAC9D,KAAK,EAAE,SAAS;oCAChB,MAAM,EAAE,mBAAmB;iCAC9B,CAAC,CAAC;gCACH,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;oCACxB,sBAAsB,GAAG,YAAY,CAAC;oCACtC,MAAM,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAC;oCACjF,IAAI,CAAC;wCAAC,GAAG,CAAC,OAAO,EAAE,4BAA4B,EAAE,CAAC,sBAAsB,CAAC,CAAC;oCAAC,CAAC;oCAAC,MAAM,CAAC,CAAA,CAAC;gCACzF,CAAC;4BACL,CAAC;wBACL,CAAC;oBACL,CAAC;oBAED,8DAA8D;oBAC9D,8DAA8D;oBAC9D,+DAA+D;oBAC/D,gEAAgE;oBAChE,6DAA6D;oBAC7D,oDAAoD;oBACpD,IAAI,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpC,GAAG,CAAC,IAAI,CAAC,wBAAwB,GAAG,CAAC,kBAAkB,CAAC,MAAM,4DAA4D,EAAE,MAAM,CAAC,CAAC;wBACpI,MAAM,GAAG,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC;oBAC1D,CAAC;oBAED,IAAI,kBAAkB,EAAE,CAAC;wBACrB,wDAAwD;wBACxD,wDAAwD;wBACxD,GAAG,CAAC,IAAI,CAAC,uFAAuF,EAAE,MAAM,CAAC,CAAC;oBAC9G,CAAC;yBAAM,CAAC;wBACJ,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC;4BAC3D,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,MAAM,EAAE,GAAG,CAAC,MAAM;4BAClB,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,UAAU,EAAE,GAAG,CAAC,UAAU;4BAC1B,WAAW;4BACX,eAAe,EAAE,sBAAsB;yBAC1C,CAAC,CAAC;wBAEH,MAAM,GAAG,CAAC,qBAAqB,CAAC,eAAe,EAAE,iCAAiC,CAAC,CAAC;oBACxF,CAAC;oBAED,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;oBAEvC,MAAM,GAAG,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC;gBACtD,CAAC;gBAED,IAAI,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,GAAG,CAAC,IAAI,CAAC,wBAAwB,GAAG,CAAC,kBAAkB,CAAC,MAAM,uCAAuC,CAAC,CAAC;oBACvG,MAAM,GAAG,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC;gBAC1D,CAAC;gBAED,iEAAiE;gBACjE,+DAA+D;gBAC/D,8DAA8D;gBAC9D,uEAAuE;gBACvE,IAAI,CAAC;oBACD,MAAM,mBAAmB,CACrB,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,EACtC,oBAAoB,EACpB,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE,CAClC,CAAC;gBACN,CAAC;gBAAC,OAAO,QAAa,EAAE,CAAC;oBACrB,GAAG,CAAC,IAAI,CACJ,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,IAAI,SAAS,8CAA8C,eAAe,CAAC,QAAQ,CAAC,0CAA0C,EAC9J,MAAM,CACT,CAAC;gBACN,CAAC;gBAED,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;gBAE9B,MAAM,GAAG,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBAEzC,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,eAAe,CACnD,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CACxC,CAAC;gBACF,MAAM,GAAG,CAAC,iBAAiB,CAAC;oBACxB,GAAG,EAAE,aAAa,CAAC,aAAa;oBAChC,IAAI,EAAE,aAAa,CAAC,cAAc;iBACrC,CAAC,CAAC;gBAEH,GAAG,CAAC,IAAI,CAAC,oDAAoD,EAAE,MAAM,CAAC,CAAC;YAC3E,CAAC;oBAAS,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;QACvC,MAAM,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAChC,MAAM,GAAG,CAAC,4BAA4B,EAAE,CAAC;QACzC,MAAM,GAAG,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC;QAClD,GAAG,CAAC,6BAA6B,EAAE,CAAC;QACpC,IAAI,OAAO,GAAG,CAAC,4BAA4B,KAAK,UAAU;YAAE,GAAG,CAAC,4BAA4B,EAAE,CAAC;QAC/F,GAAG,CAAC,4BAA4B,EAAE,CAAC;QACnC,GAAG,CAAC,sCAAsC,EAAE,CAAC;QAE7C,GAAG,CAAC,6BAA6B,EAAE,CAAC;QACpC,MAAM,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAChC,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QAEjD,IAAI,GAAG,CAAC,4BAA4B,EAAE,EAAE,CAAC;YACrC,GAAG,CAAC,wBAAwB,EAAE,CAAC;QACnC,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAChE,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAErF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,CAAC,qCAAqC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,GAAG,CAAC;IACd,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CAAC,GAAQ;IAC1C,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtG,GAAG,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QACvE,GAAG,CAAC,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IAClD,CAAC;IACD,GAAG,CAAC,gCAAgC,EAAE,CAAC;IACvC,GAAG,CAAC,4BAA4B,EAAE,CAAC;IACnC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IAC7B,IAAI,CAAC;QACD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,MAAM,YAAY,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC1E,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChG,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,iCAAiC,KAAK,UAAU,EAAE,CAAC;oBACtE,MAAM,GAAG,CAAC,OAAO,CAAC,iCAAiC,EAAE,CAAC;gBAC1D,CAAC;YACL,CAAC;QACL,CAAC;QAAC,OAAO,QAAa,EAAE,CAAC;YACrB,GAAG,CAAC,KAAK,CAAC,4DAA4D,QAAQ,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1J,CAAC;QAED,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,qDAAqD,EAAE,MAAM,CAAC,CAAC;YACtF,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAChC,OAAO;QACX,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,oCAAoC,EAAE,MAAM,CAAC,CAAC;QACrE,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC;QAElE,MAAM,WAAW,GAAG,GAAG,CAAC,kCAAkC,CAAC,gBAAgB,CAAC,CAAC;QAE7E,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAC9B,MAAM,GAAG,CAAC,uBAAuB,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;YAAS,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;IAClC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dexbot_state_recovery.d.ts","sourceRoot":"","sources":["../../modules/dexbot_state_recovery.ts"],"names":[],"mappings":"AAAA,kFAAkF;
|
|
1
|
+
{"version":3,"file":"dexbot_state_recovery.d.ts","sourceRoot":"","sources":["../../modules/dexbot_state_recovery.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAgBlF;;;GAGG;AACH,iBAAe,yBAAyB,CAAC,GAAG,EAAE,GAAG,iBAchD;AAED;;;;GAIG;AACH,iBAAS,yBAAyB,CAAC,GAAG,EAAE,GAAG,0BAgB1C;AAED;;;;GAIG;AACH,iBAAe,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAE,GAA2B,iBAuCpF;AAED;;;;;GAKG;AACH,iBAAe,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,oBAahE;AAED;;;;;;;GAOG;AACH,iBAAe,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,GAAE,GAAwB,EAAE,QAAQ,GAAE,GAAO;;;;;;;;UAsBzG;AAED;;;;;;GAMG;AACH,iBAAe,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAE,GAA+B,mBAuB1G;AAED;;;;;;GAMG;AACH,iBAAe,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAE,GAA2B;;;;;;;;;;GAyC1G;AAED;;;;;;GAMG;AACH,iBAAe,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,GAAE,GAAQ;;;;;GA0C5E;AAED;;;;GAIG;AACH,iBAAS,wBAAwB,CAAC,UAAU,EAAE,GAAG,aAWhD;AAED;;;;GAIG;AACH,iBAAe,wBAAwB,CAAC,GAAG,EAAE,GAAG;;;;;;GAmL/C;AAyFD;;;;;GAKG;AACH,iBAAe,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,oBA4BhE;AAED;;;;;GAKG;AACH,iBAAe,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,oBA+CzD;AAED,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,CAAA"}
|
|
@@ -7,6 +7,7 @@ import { ORDER_TYPES, TIMING } from './constants.js';
|
|
|
7
7
|
import * as Format from './order/format.js';
|
|
8
8
|
import * as grid from './order/grid.js';
|
|
9
9
|
import { convertToSpreadPlaceholder, parseChainOrder } from './order/utils/order.js';
|
|
10
|
+
import { restoreGapEvacStreaks } from './order/utils/system.js';
|
|
10
11
|
import { blockchainToFloat, calculateGapSlots, validatePersistedBoundary } from './order/utils/math.js';
|
|
11
12
|
import { hasExecutableActions } from './order/utils/validate.js';
|
|
12
13
|
import { getErrorMessage } from './utils/errors.js';
|
|
@@ -310,6 +311,12 @@ async function recoverFromPersistedGrid(bot) {
|
|
|
310
311
|
}
|
|
311
312
|
const persistedGenesis = bot.accountOrders.loadGenesis?.(true) ?? null;
|
|
312
313
|
await grid.loadGrid(bot.manager, persistedGrid, boundaryIdx, persistedGenesis);
|
|
314
|
+
// Restart resilience: same pruning rules as the startup path — streaks
|
|
315
|
+
// only survive for slots that still exist in the reloaded grid.
|
|
316
|
+
const restoredStreaks = restoreGapEvacStreaks(bot.manager, bot.accountOrders.loadGapEvacStreaks?.(true) ?? null);
|
|
317
|
+
if (restoredStreaks > 0) {
|
|
318
|
+
bot.manager.logger.log(`[GAP-EVAC] Restored ${restoredStreaks} persisted in-band streak(s) during recovery reload`, 'info');
|
|
319
|
+
}
|
|
313
320
|
if (await bot._rejectCorruptedGridSnapshot('recovery')) {
|
|
314
321
|
// P4: rejected snapshot's boundary must not survive for rebuild.
|
|
315
322
|
// clearGrid() already wiped persisted boundaryIdx; also clear the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dexbot_state_recovery.js","sourceRoot":"","sources":["../../modules/dexbot_state_recovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dexbot_state_recovery.js","sourceRoot":"","sources":["../../modules/dexbot_state_recovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -189,6 +189,40 @@ declare class Accountant {
|
|
|
189
189
|
* @returns {Promise<Object>} - Validation result from validateGridStateForPersistence()
|
|
190
190
|
*/
|
|
191
191
|
_performStateRecovery(mgr: any): Promise<any>;
|
|
192
|
+
/**
|
|
193
|
+
* Rebuild the tracked fund commitment from a fresh chain read (recovery
|
|
194
|
+
* recalibration).
|
|
195
|
+
*
|
|
196
|
+
* Runs AFTER the structural sync when the fund-drift check still fails.
|
|
197
|
+
* The sync re-matches orders but reconciliation short-circuits (pending
|
|
198
|
+
* price corrections, committed-order guards, rejected updates) can leave
|
|
199
|
+
* grid ACTIVE/PARTIAL sizes diverged from the chain's actual open-order
|
|
200
|
+
* sizes — the tracked total then disagrees with chain truth and every
|
|
201
|
+
* recovery attempt re-reports the same drift without repairing it.
|
|
202
|
+
*
|
|
203
|
+
* Conservative sweep, mirroring pass-1 semantics:
|
|
204
|
+
* - Matched order (orderId present in the fresh read, same type):
|
|
205
|
+
* force slot size to the chain size; transition to PARTIAL when the
|
|
206
|
+
* chain shows a smaller remainder; virtualize when fully consumed.
|
|
207
|
+
* - Absent order: leave untouched when recently committed/assigned
|
|
208
|
+
* (the chain read may lag a live broadcast — virtualizing then would
|
|
209
|
+
* strand live orders); otherwise treat as gone and virtualize.
|
|
210
|
+
* - Free balances are NEVER derived here (total − grid would absorb
|
|
211
|
+
* third-party locked funds on shared accounts); they stay as fetched.
|
|
212
|
+
*
|
|
213
|
+
* Every mutation honors _applyOrderUpdate's result: a rejected update
|
|
214
|
+
* (fatal validation) is counted, not recorded as repaired.
|
|
215
|
+
*
|
|
216
|
+
* @param {Object} mgr - Manager instance
|
|
217
|
+
* @param {Array} openOrders - Fresh raw chain open orders (same read the sync used)
|
|
218
|
+
* @returns {Promise<{attempted: number, resized: number, virtualized: number, rejected: number}>}
|
|
219
|
+
*/
|
|
220
|
+
_recalibrateTrackedFundsFromChain(mgr: any, openOrders: any[]): Promise<{
|
|
221
|
+
attempted: number;
|
|
222
|
+
resized: number;
|
|
223
|
+
virtualized: number;
|
|
224
|
+
rejected: number;
|
|
225
|
+
}>;
|
|
192
226
|
/**
|
|
193
227
|
* Attempt immediate recovery from fund invariant violations.
|
|
194
228
|
* Runs once per cycle - subsequent violations in same cycle are skipped.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounting.d.ts","sourceRoot":"","sources":["../../../modules/order/accounting.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EG;AAmCH;;;GAGG;AACH,cAAM,UAAU;IACZ;;;;;;;;OAQG;IACH,OAAO,EAAE,GAAG,CAAC;IACb,sBAAsB,EAAE,OAAO,CAAC;IAChC,yBAAyB,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvH,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;gBAE3D,OAAO,EAAE,GAAG;IAOxB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,GAAE,GAAY,EAAE,UAAU,GAAE,GAAqC;IAgB5G;;;;OAIG;IACG,wBAAwB,CAAC,kBAAkB,EAAE,GAAG;IAMtD,gBAAgB;IAIhB,qBAAqB,CAAC,KAAK,EAAE,GAAG;;;IAOhC,kBAAkB;;;;;;IAuBlB,8BAA8B,CAAC,cAAc,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG;IAkBpE,uBAAuB,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG;;;;IA4DpF,iCAAiC,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG;;;;;IAsB5D;;;;OAIG;IACH,UAAU;IAcV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACG,gBAAgB;IAuJrB;;;;;;;;;;;;;;OAcG;IACI,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG;IAmJ7I;;;;;;OAMG;IACG,qBAAqB,CAAC,GAAG,EAAE,GAAG;IA+
|
|
1
|
+
{"version":3,"file":"accounting.d.ts","sourceRoot":"","sources":["../../../modules/order/accounting.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,8 +77,8 @@ import { createRequire } from 'node:module';
|
|
|
77
77
|
const require = createRequire(import.meta.url);
|
|
78
78
|
import { ORDER_TYPES, ORDER_STATES, PIPELINE_TIMING, TIMING, FEE_PARAMETERS, GRID_LIMITS } from '../constants.js';
|
|
79
79
|
import { resolveAccountRef } from './utils/system.js';
|
|
80
|
-
import { resolveSpreadOrderSide, parseSlotIndex } from './utils/order.js';
|
|
81
|
-
import { isSlotInRail } from './utils/math.js';
|
|
80
|
+
import { resolveSpreadOrderSide, parseSlotIndex, parseChainOrder, applyChainSizeToGridOrder, convertToSpreadPlaceholder } from './utils/order.js';
|
|
81
|
+
import { isSlotInRail, floatToBlockchainInt } from './utils/math.js';
|
|
82
82
|
import * as Format from './format.js';
|
|
83
83
|
import * as fundRegistry from '../fund_registry.js';
|
|
84
84
|
import * as chainOrders from '../chain_orders.js';
|
|
@@ -603,7 +603,22 @@ class Accountant {
|
|
|
603
603
|
};
|
|
604
604
|
}
|
|
605
605
|
// 1. Fetch fresh blockchain state
|
|
606
|
+
// Verify the fetch actually refreshed: _setAccountTotals stamps
|
|
607
|
+
// _lastFetchedAt only when the balance lookup succeeded. A failed fetch
|
|
608
|
+
// leaves the stale/optimistic snapshot in place — validating against it
|
|
609
|
+
// reports the drift as unfixable and burns a recovery attempt on data
|
|
610
|
+
// no amount of re-syncing can repair (production incident 2026-09-05:
|
|
611
|
+
// SELL drift 7.4151 reported identical before and after recovery).
|
|
612
|
+
const fetchedBefore = mgr.accountTotals?._lastFetchedAt || 0;
|
|
606
613
|
await mgr.fetchAccountTotals(accountRef);
|
|
614
|
+
const fetchedAfter = mgr.accountTotals?._lastFetchedAt || 0;
|
|
615
|
+
if (fetchedAfter <= fetchedBefore) {
|
|
616
|
+
return {
|
|
617
|
+
isValid: false,
|
|
618
|
+
deferred: true,
|
|
619
|
+
reason: 'Recovery fetch did not refresh accountTotals (chain read failed or returned no balances) — deferring to next reconcile cycle instead of validating stale/optimistic balances',
|
|
620
|
+
};
|
|
621
|
+
}
|
|
607
622
|
// After a fresh chain fetch, reset the orphan-fill credit
|
|
608
623
|
// timestamp. The fetched values now incorporate on-chain fill
|
|
609
624
|
// proceeds, so the temporary invariant tolerance is no longer needed.
|
|
@@ -652,7 +667,31 @@ class Accountant {
|
|
|
652
667
|
return persistenceValidation;
|
|
653
668
|
}
|
|
654
669
|
if (typeof mgr.checkFundDriftAfterFills === 'function') {
|
|
655
|
-
|
|
670
|
+
let driftValidation = mgr.checkFundDriftAfterFills();
|
|
671
|
+
if (driftValidation && driftValidation.isValid === false) {
|
|
672
|
+
// Drift persisted past the structural resync. The sync re-matches
|
|
673
|
+
// orders but leaves the tracked commitment (grid ACTIVE/PARTIAL
|
|
674
|
+
// sizes) and the optimistic free balance un-reconciled when the
|
|
675
|
+
// divergence came from fill/broadcast races — re-matching alone
|
|
676
|
+
// reports the same drift forever (production incident 2026-09-05:
|
|
677
|
+
// SELL drift 7.4151 survived every recovery attempt). Rebuild the
|
|
678
|
+
// tracked commitment from the fresh chain read, recompute fund
|
|
679
|
+
// totals from the reconciled grid, and re-measure.
|
|
680
|
+
const recalibration = await this._recalibrateTrackedFundsFromChain(mgr, openOrders);
|
|
681
|
+
if (recalibration.attempted > 0) {
|
|
682
|
+
mgr.logger?.log?.(`[RECOVERY] Fund recalibration from chain: attempted=${recalibration.attempted} ` +
|
|
683
|
+
`resized=${recalibration.resized} virtualized=${recalibration.virtualized} rejected=${recalibration.rejected}`, 'warn');
|
|
684
|
+
try {
|
|
685
|
+
if (typeof mgr.recalculateFunds === 'function') {
|
|
686
|
+
await mgr.recalculateFunds();
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
catch (recalcErr) {
|
|
690
|
+
mgr.logger?.log?.(`[RECOVERY] Post-recalibration fund recalc failed: ${getErrorMessage(recalcErr)}`, 'warn');
|
|
691
|
+
}
|
|
692
|
+
driftValidation = mgr.checkFundDriftAfterFills();
|
|
693
|
+
}
|
|
694
|
+
}
|
|
656
695
|
if (driftValidation && driftValidation.isValid === false) {
|
|
657
696
|
if (unmatchedChainOrders.length > 0) {
|
|
658
697
|
return {
|
|
@@ -667,6 +706,137 @@ class Accountant {
|
|
|
667
706
|
}
|
|
668
707
|
return persistenceValidation;
|
|
669
708
|
}
|
|
709
|
+
/**
|
|
710
|
+
* Rebuild the tracked fund commitment from a fresh chain read (recovery
|
|
711
|
+
* recalibration).
|
|
712
|
+
*
|
|
713
|
+
* Runs AFTER the structural sync when the fund-drift check still fails.
|
|
714
|
+
* The sync re-matches orders but reconciliation short-circuits (pending
|
|
715
|
+
* price corrections, committed-order guards, rejected updates) can leave
|
|
716
|
+
* grid ACTIVE/PARTIAL sizes diverged from the chain's actual open-order
|
|
717
|
+
* sizes — the tracked total then disagrees with chain truth and every
|
|
718
|
+
* recovery attempt re-reports the same drift without repairing it.
|
|
719
|
+
*
|
|
720
|
+
* Conservative sweep, mirroring pass-1 semantics:
|
|
721
|
+
* - Matched order (orderId present in the fresh read, same type):
|
|
722
|
+
* force slot size to the chain size; transition to PARTIAL when the
|
|
723
|
+
* chain shows a smaller remainder; virtualize when fully consumed.
|
|
724
|
+
* - Absent order: leave untouched when recently committed/assigned
|
|
725
|
+
* (the chain read may lag a live broadcast — virtualizing then would
|
|
726
|
+
* strand live orders); otherwise treat as gone and virtualize.
|
|
727
|
+
* - Free balances are NEVER derived here (total − grid would absorb
|
|
728
|
+
* third-party locked funds on shared accounts); they stay as fetched.
|
|
729
|
+
*
|
|
730
|
+
* Every mutation honors _applyOrderUpdate's result: a rejected update
|
|
731
|
+
* (fatal validation) is counted, not recorded as repaired.
|
|
732
|
+
*
|
|
733
|
+
* @param {Object} mgr - Manager instance
|
|
734
|
+
* @param {Array} openOrders - Fresh raw chain open orders (same read the sync used)
|
|
735
|
+
* @returns {Promise<{attempted: number, resized: number, virtualized: number, rejected: number}>}
|
|
736
|
+
*/
|
|
737
|
+
async _recalibrateTrackedFundsFromChain(mgr, openOrders) {
|
|
738
|
+
const result = { attempted: 0, resized: 0, virtualized: 0, rejected: 0 };
|
|
739
|
+
if (!mgr?.orders || !Array.isArray(openOrders) || openOrders.length === 0)
|
|
740
|
+
return result;
|
|
741
|
+
const parsedChainOrders = new Map();
|
|
742
|
+
for (const order of openOrders) {
|
|
743
|
+
try {
|
|
744
|
+
const parsed = parseChainOrder(order, mgr.assets);
|
|
745
|
+
if (!parsed)
|
|
746
|
+
continue;
|
|
747
|
+
parsedChainOrders.set(order.id, parsed);
|
|
748
|
+
}
|
|
749
|
+
catch {
|
|
750
|
+
continue;
|
|
751
|
+
}
|
|
752
|
+
}
|
|
753
|
+
const applyUpdate = async (nextOrder, context) => {
|
|
754
|
+
try {
|
|
755
|
+
const applied = await mgr._applyOrderUpdate(nextOrder, context, { skipAccounting: true, fee: 0 });
|
|
756
|
+
return applied !== false;
|
|
757
|
+
}
|
|
758
|
+
catch (err) {
|
|
759
|
+
// _throwOnIllegalState mode throws instead of returning false —
|
|
760
|
+
// one rejected slot must not abort the whole sweep.
|
|
761
|
+
mgr.logger?.log?.(`[RECOVERY] Recalibration update rejected for ${nextOrder?.id}: ${getErrorMessage(err)}`, 'warn');
|
|
762
|
+
return false;
|
|
763
|
+
}
|
|
764
|
+
};
|
|
765
|
+
const sweep = async () => {
|
|
766
|
+
for (const gridOrder of Array.from(mgr.orders.values())) {
|
|
767
|
+
if (!gridOrder?.orderId)
|
|
768
|
+
continue;
|
|
769
|
+
if (gridOrder.state !== ORDER_STATES.ACTIVE && gridOrder.state !== ORDER_STATES.PARTIAL)
|
|
770
|
+
continue;
|
|
771
|
+
const chainOrder = parsedChainOrders.get(gridOrder.orderId);
|
|
772
|
+
if (chainOrder) {
|
|
773
|
+
if (chainOrder.type !== gridOrder.type)
|
|
774
|
+
continue; // type mismatches belong to the corrections path
|
|
775
|
+
const precision = chainOrder.type === ORDER_TYPES.SELL ? mgr.assets.assetA.precision : mgr.assets.assetB.precision;
|
|
776
|
+
let gridInt;
|
|
777
|
+
let chainInt;
|
|
778
|
+
try {
|
|
779
|
+
gridInt = floatToBlockchainInt(gridOrder.size, precision);
|
|
780
|
+
chainInt = floatToBlockchainInt(chainOrder.size, precision);
|
|
781
|
+
}
|
|
782
|
+
catch {
|
|
783
|
+
continue;
|
|
784
|
+
}
|
|
785
|
+
if (gridInt === chainInt)
|
|
786
|
+
continue;
|
|
787
|
+
result.attempted++;
|
|
788
|
+
if (chainInt <= 0) {
|
|
789
|
+
const spreadOrder = convertToSpreadPlaceholder(gridOrder);
|
|
790
|
+
if (await applyUpdate(spreadOrder, 'recovery-fund-recalibration'))
|
|
791
|
+
result.virtualized++;
|
|
792
|
+
else
|
|
793
|
+
result.rejected++;
|
|
794
|
+
continue;
|
|
795
|
+
}
|
|
796
|
+
let updated = null;
|
|
797
|
+
try {
|
|
798
|
+
updated = await applyChainSizeToGridOrder(mgr, gridOrder, chainOrder.size);
|
|
799
|
+
}
|
|
800
|
+
catch {
|
|
801
|
+
updated = null;
|
|
802
|
+
}
|
|
803
|
+
const next = { ...gridOrder, ...(updated || {}) };
|
|
804
|
+
if (chainInt < gridInt)
|
|
805
|
+
next.state = ORDER_STATES.PARTIAL;
|
|
806
|
+
if (await applyUpdate(next, 'recovery-fund-recalibration'))
|
|
807
|
+
result.resized++;
|
|
808
|
+
else
|
|
809
|
+
result.rejected++;
|
|
810
|
+
}
|
|
811
|
+
else {
|
|
812
|
+
// Absent from the fresh read — same lag guards as pass 1's
|
|
813
|
+
// committed-order escape hatches.
|
|
814
|
+
const commitAge = Date.now() - (mgr._committedOrderIdsBuiltAt || 0);
|
|
815
|
+
const recentCommit = mgr._committedOrderIds?.has?.(gridOrder.orderId) && commitAge < TIMING.SYNC_LOCK_TIMEOUT_MS;
|
|
816
|
+
const assignedAt = mgr._orderIdAssignedAt?.get?.(gridOrder.orderId) || 0;
|
|
817
|
+
const recentAssign = assignedAt > 0 && (Date.now() - assignedAt) < TIMING.SYNC_LOCK_TIMEOUT_MS;
|
|
818
|
+
if (recentCommit || recentAssign)
|
|
819
|
+
continue;
|
|
820
|
+
result.attempted++;
|
|
821
|
+
const spreadOrder = convertToSpreadPlaceholder(gridOrder);
|
|
822
|
+
if (await applyUpdate(spreadOrder, 'recovery-fund-recalibration'))
|
|
823
|
+
result.virtualized++;
|
|
824
|
+
else
|
|
825
|
+
result.rejected++;
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
};
|
|
829
|
+
try {
|
|
830
|
+
if (mgr._gridLock?.acquire)
|
|
831
|
+
await mgr._gridLock.acquire(sweep);
|
|
832
|
+
else
|
|
833
|
+
await sweep();
|
|
834
|
+
}
|
|
835
|
+
catch (err) {
|
|
836
|
+
mgr.logger?.log?.(`[RECOVERY] Fund recalibration sweep failed: ${getErrorMessage(err)}`, 'warn');
|
|
837
|
+
}
|
|
838
|
+
return result;
|
|
839
|
+
}
|
|
670
840
|
/**
|
|
671
841
|
* Attempt immediate recovery from fund invariant violations.
|
|
672
842
|
* Runs once per cycle - subsequent violations in same cycle are skipped.
|
|
@@ -1036,10 +1206,17 @@ class Accountant {
|
|
|
1036
1206
|
const oldSideType = this._resolveOrderSide(oldOrder, newOrder);
|
|
1037
1207
|
const sideForPrecision = newSideType || oldSideType;
|
|
1038
1208
|
if (mgr.logger && mgr.logger.level === 'debug') {
|
|
1209
|
+
// Debug-formatter guard: formatSizeByOrderType throws on an
|
|
1210
|
+
// unresolvable side (precision undefined). A debug line must
|
|
1211
|
+
// never crash the accounting flow — fall back to raw numbers.
|
|
1212
|
+
const sideIsResolvable = sideForPrecision === ORDER_TYPES.BUY || sideForPrecision === ORDER_TYPES.SELL;
|
|
1213
|
+
const fmtSize = (value) => sideIsResolvable
|
|
1214
|
+
? Format.formatSizeByOrderType(value, sideForPrecision, mgr.assets)
|
|
1215
|
+
: toFiniteNumber(value);
|
|
1039
1216
|
mgr.logger.log(`[ACCOUNTING] updateOptimisticFreeBalance: id=${newOrder.id}, type=${newOrder.type}, ` +
|
|
1040
1217
|
`state=${oldOrder.state}->${newOrder.state}, ` +
|
|
1041
|
-
`size=${
|
|
1042
|
-
`delta=${
|
|
1218
|
+
`size=${fmtSize(oldSize)}->${fmtSize(newSize)}, ` +
|
|
1219
|
+
`delta=${fmtSize(commitmentDelta)}, context=${context}`, 'debug');
|
|
1043
1220
|
}
|
|
1044
1221
|
if (commitmentDelta > 0) {
|
|
1045
1222
|
// Lock capital: move from Free to Committed
|