dexbot 1.4.24 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +67 -0
- package/README.md +7 -2
- package/analysis/README.md +61 -5
- package/analysis/ama_fitting/package.json +1 -1
- package/analysis/analyze_derivatives.ts +1 -1
- package/analysis/bot_key_utils.ts +272 -3
- package/analysis/bot_usage/discover_bot_accounts.ts +64 -9
- package/analysis/bot_usage/kibana_bot_queries.ts +40 -1
- package/analysis/chart_utils.ts +6 -3
- package/analysis/grid_correction_check.ts +932 -0
- package/analysis/resolve_bot_accounts.ts +199 -0
- package/analysis/trade_profitability.ts +36 -8
- package/analysis/tradingview/README.md +25 -0
- package/analysis/tradingview/analyze_tradingview.ts +2 -2
- package/analysis/trend_detection/package.json +1 -1
- package/claw/modules/claw_launcher.ts +5 -4
- package/claw/modules/credit_runtime_adapter.ts +2 -1
- package/claw/modules/dexbot_profiles.ts +4 -3
- 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/analysis/analyze_derivatives.js +1 -1
- package/dist/analysis/bot_key_utils.d.ts +28 -1
- package/dist/analysis/bot_key_utils.d.ts.map +1 -1
- package/dist/analysis/bot_key_utils.js +385 -3
- package/dist/analysis/bot_key_utils.js.map +1 -1
- package/dist/analysis/bot_usage/discover_bot_accounts.js +60 -10
- package/dist/analysis/bot_usage/discover_bot_accounts.js.map +1 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +45 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.js +39 -1
- package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -1
- package/dist/analysis/chart_utils.d.ts +2 -1
- package/dist/analysis/chart_utils.d.ts.map +1 -1
- package/dist/analysis/chart_utils.js +4 -1
- package/dist/analysis/chart_utils.js.map +1 -1
- package/dist/analysis/grid_correction_check.d.ts +90 -0
- package/dist/analysis/grid_correction_check.d.ts.map +1 -0
- package/dist/analysis/grid_correction_check.js +901 -0
- package/dist/analysis/grid_correction_check.js.map +1 -0
- package/dist/analysis/resolve_bot_accounts.d.ts +3 -0
- package/dist/analysis/resolve_bot_accounts.d.ts.map +1 -0
- package/dist/analysis/resolve_bot_accounts.js +216 -0
- package/dist/analysis/resolve_bot_accounts.js.map +1 -0
- package/dist/analysis/trade_profitability.d.ts.map +1 -1
- package/dist/analysis/trade_profitability.js +40 -8
- package/dist/analysis/trade_profitability.js.map +1 -1
- package/dist/analysis/tradingview/analyze_tradingview.js +2 -2
- package/dist/analysis/tradingview/analyze_tradingview.js.map +1 -1
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +2 -1
- package/dist/bot.js.map +1 -1
- package/dist/dexbot.d.ts.map +1 -1
- package/dist/dexbot.js +134 -22
- package/dist/dexbot.js.map +1 -1
- package/dist/market_adapter/ama_signal_runner.js +2 -2
- package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js +2 -1
- package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js.map +1 -1
- package/dist/market_adapter/inputs/fetch_lp_data.d.ts +4 -1
- package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -1
- package/dist/market_adapter/inputs/fetch_lp_data.js +3 -2
- package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -1
- package/dist/modules/account_bots.d.ts +42 -1
- package/dist/modules/account_bots.d.ts.map +1 -1
- package/dist/modules/account_bots.js +221 -22
- package/dist/modules/account_bots.js.map +1 -1
- package/dist/modules/account_orders.d.ts +7 -10
- package/dist/modules/account_orders.d.ts.map +1 -1
- package/dist/modules/account_orders.js +26 -2
- package/dist/modules/account_orders.js.map +1 -1
- package/dist/modules/bitshares_client.d.ts +4 -1
- package/dist/modules/bitshares_client.d.ts.map +1 -1
- package/dist/modules/bitshares_client.js +12 -4
- package/dist/modules/bitshares_client.js.map +1 -1
- package/dist/modules/bot_settings.d.ts.map +1 -1
- package/dist/modules/bot_settings.js +2 -1
- package/dist/modules/bot_settings.js.map +1 -1
- package/dist/modules/chain_orders.d.ts.map +1 -1
- package/dist/modules/chain_orders.js +21 -2
- package/dist/modules/chain_orders.js.map +1 -1
- package/dist/modules/cli_colors.d.ts +39 -0
- package/dist/modules/cli_colors.d.ts.map +1 -0
- package/dist/modules/cli_colors.js +42 -0
- package/dist/modules/cli_colors.js.map +1 -0
- package/dist/modules/config.d.ts.map +1 -1
- package/dist/modules/config.js +27 -0
- package/dist/modules/config.js.map +1 -1
- package/dist/modules/constants.d.ts +14 -1
- package/dist/modules/constants.d.ts.map +1 -1
- package/dist/modules/constants.js +66 -11
- package/dist/modules/constants.js.map +1 -1
- package/dist/modules/credit_pricing.d.ts +61 -0
- package/dist/modules/credit_pricing.d.ts.map +1 -0
- package/dist/modules/credit_pricing.js +237 -0
- package/dist/modules/credit_pricing.js.map +1 -0
- package/dist/modules/credit_runtime.d.ts +1 -0
- package/dist/modules/credit_runtime.d.ts.map +1 -1
- package/dist/modules/credit_runtime.js +49 -107
- package/dist/modules/credit_runtime.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +25 -0
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_class.js +82 -12
- package/dist/modules/dexbot_class.js.map +1 -1
- package/dist/modules/dexbot_cow_runtime.d.ts +39 -17
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.js +875 -134
- package/dist/modules/dexbot_cow_runtime.js.map +1 -1
- package/dist/modules/dexbot_fill_runtime.d.ts +11 -1
- package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_fill_runtime.js +108 -1
- package/dist/modules/dexbot_fill_runtime.js.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.d.ts +29 -14
- package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.js +279 -63
- package/dist/modules/dexbot_maintenance_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 +58 -7
- 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 +55 -3
- package/dist/modules/dexbot_state_recovery.js.map +1 -1
- package/dist/modules/fund_registry.d.ts +1 -1
- package/dist/modules/fund_registry.js +1 -1
- package/dist/modules/graceful_shutdown.d.ts +12 -1
- package/dist/modules/graceful_shutdown.d.ts.map +1 -1
- package/dist/modules/graceful_shutdown.js +39 -1
- package/dist/modules/graceful_shutdown.js.map +1 -1
- package/dist/modules/key_store.d.ts.map +1 -1
- package/dist/modules/key_store.js +38 -1
- package/dist/modules/key_store.js.map +1 -1
- package/dist/modules/launcher/adapter_requirement.d.ts +38 -0
- package/dist/modules/launcher/adapter_requirement.d.ts.map +1 -0
- package/dist/modules/launcher/adapter_requirement.js +141 -0
- package/dist/modules/launcher/adapter_requirement.js.map +1 -0
- package/dist/modules/launcher/bot_supervisor.d.ts +2 -2
- package/dist/modules/launcher/bot_supervisor.d.ts.map +1 -1
- package/dist/modules/launcher/bot_supervisor.js +32 -3
- package/dist/modules/launcher/bot_supervisor.js.map +1 -1
- package/dist/modules/launcher/launch_modes.d.ts.map +1 -1
- package/dist/modules/launcher/launch_modes.js +5 -4
- package/dist/modules/launcher/launch_modes.js.map +1 -1
- package/dist/modules/launcher/monolithic_runtime.d.ts +1 -1
- package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -1
- package/dist/modules/launcher/monolithic_runtime.js +12 -8
- package/dist/modules/launcher/monolithic_runtime.js.map +1 -1
- package/dist/modules/launcher/status_reporting.d.ts +6 -6
- package/dist/modules/launcher/status_reporting.d.ts.map +1 -1
- package/dist/modules/launcher/status_reporting.js +9 -6
- package/dist/modules/launcher/status_reporting.js.map +1 -1
- package/dist/modules/order/accounting.d.ts.map +1 -1
- package/dist/modules/order/accounting.js +20 -3
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/export.d.ts +1 -1
- package/dist/modules/order/export.js +1 -1
- package/dist/modules/order/grid.d.ts +1 -1
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +335 -43
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile.d.ts +4 -2
- package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile.js +242 -222
- package/dist/modules/order/grid_reconcile.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts +11 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +132 -6
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/logger.d.ts +23 -1
- package/dist/modules/order/logger.d.ts.map +1 -1
- package/dist/modules/order/logger.js +60 -17
- package/dist/modules/order/logger.js.map +1 -1
- package/dist/modules/order/manager.d.ts +68 -14
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +281 -52
- 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 +25 -8
- 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 +262 -167
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/math.d.ts +47 -5
- package/dist/modules/order/utils/math.d.ts.map +1 -1
- package/dist/modules/order/utils/math.js +175 -11
- package/dist/modules/order/utils/math.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +16 -15
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +199 -32
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/slot.d.ts +8 -0
- package/dist/modules/order/utils/slot.d.ts.map +1 -0
- package/dist/modules/order/utils/slot.js +16 -0
- package/dist/modules/order/utils/slot.js.map +1 -0
- package/dist/modules/order/utils/system.d.ts +52 -4
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +109 -16
- package/dist/modules/order/utils/system.js.map +1 -1
- package/dist/modules/order/utils/validate.d.ts +6 -9
- package/dist/modules/order/utils/validate.d.ts.map +1 -1
- package/dist/modules/order/utils/validate.js +107 -85
- package/dist/modules/order/utils/validate.js.map +1 -1
- package/dist/modules/order/working_grid.d.ts +5 -0
- package/dist/modules/order/working_grid.d.ts.map +1 -1
- package/dist/modules/order/working_grid.js +21 -0
- package/dist/modules/order/working_grid.js.map +1 -1
- package/dist/modules/paths.d.ts +4 -2
- package/dist/modules/paths.d.ts.map +1 -1
- package/dist/modules/paths.js +79 -24
- package/dist/modules/paths.js.map +1 -1
- package/dist/modules/utils/chain_logs.d.ts +11 -0
- package/dist/modules/utils/chain_logs.d.ts.map +1 -0
- package/dist/modules/utils/chain_logs.js +23 -0
- package/dist/modules/utils/chain_logs.js.map +1 -0
- package/dist/modules/utils/sanitize_key.d.ts +7 -0
- package/dist/modules/utils/sanitize_key.d.ts.map +1 -1
- package/dist/modules/utils/sanitize_key.js +15 -0
- package/dist/modules/utils/sanitize_key.js.map +1 -1
- package/dist/pm2.d.ts +11 -1
- package/dist/pm2.d.ts.map +1 -1
- package/dist/pm2.js +66 -15
- package/dist/pm2.js.map +1 -1
- package/dist/scripts/analyze-credit.d.ts +4 -0
- package/dist/scripts/analyze-credit.d.ts.map +1 -0
- package/dist/scripts/analyze-credit.js +760 -0
- package/dist/scripts/analyze-credit.js.map +1 -0
- package/dist/scripts/analyze-orders.d.ts +1 -10
- package/dist/scripts/analyze-orders.d.ts.map +1 -1
- package/dist/scripts/analyze-orders.js +34 -36
- package/dist/scripts/analyze-orders.js.map +1 -1
- package/dist/scripts/generate_market_adapter_whitelist.d.ts +2 -5
- package/dist/scripts/generate_market_adapter_whitelist.d.ts.map +1 -1
- package/dist/scripts/generate_market_adapter_whitelist.js +83 -1
- package/dist/scripts/generate_market_adapter_whitelist.js.map +1 -1
- package/dist/scripts/test-credit-renewal.d.ts.map +1 -1
- package/dist/scripts/test-credit-renewal.js +37 -5
- package/dist/scripts/test-credit-renewal.js.map +1 -1
- package/dist/scripts/tv.d.ts +11 -0
- package/dist/scripts/tv.d.ts.map +1 -0
- package/dist/scripts/tv.js +357 -0
- package/dist/scripts/tv.js.map +1 -0
- package/dist/scripts/update.js +77 -10
- package/dist/scripts/update.js.map +1 -1
- package/dist/unlock.d.ts.map +1 -1
- package/dist/unlock.js +20 -8
- package/dist/unlock.js.map +1 -1
- package/docs/DEXBOT_COMPARISON.md +11 -11
- package/docs/EVOLUTION.md +10 -8
- package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +1 -1
- package/docs/GRID_RECALCULATION.md +6 -0
- package/docs/MPA_CREDIT_USAGE.md +3 -1
- package/docs/README.md +2 -2
- package/docs/WORKFLOW.md +3 -1
- package/market_adapter/README.md +10 -0
- package/package.json +3 -1
- package/scripts/README.md +16 -0
|
@@ -84,8 +84,9 @@
|
|
|
84
84
|
*/
|
|
85
85
|
import { path } from './path_api.js';
|
|
86
86
|
import { getStorage } from './storage/index.js';
|
|
87
|
-
import { ensureProfilesDirectory, readInput } from './order/utils/system.js';
|
|
88
|
-
import {
|
|
87
|
+
import { ensureProfilesDirectory, readInput, sleep } from './order/utils/system.js';
|
|
88
|
+
import { setGlobalConsoleLevel, getGlobalConsoleLevel } from './order/logger.js';
|
|
89
|
+
import { DEFAULT_CONFIG, GRID_LIMITS, TIMING, RANGE_QUALITY, LOG_LEVEL, UPDATER, MARKET_ADAPTER, NODE_MANAGEMENT, FILL_PROCESSING, PIPELINE_TIMING, CREDENTIAL_PROMPTS, MAINTENANCE, COW_PERFORMANCE, INCREMENT_BOUNDS, FEE_PARAMETERS, API_LIMITS, LOGGING_CONFIG, NATIVE_CLIENT, LAUNCHER } from './constants.js';
|
|
89
90
|
import { PATHS } from './paths.js';
|
|
90
91
|
import { SETTINGS_FILE, readGeneralSettings, writeGeneralSettings } from './general_settings.js';
|
|
91
92
|
import { parseJsonWithComments } from './order/utils/system.js';
|
|
@@ -93,24 +94,27 @@ import { assertNoDuplicateBotKeys, loadSettingsFile } from './bot_settings.js';
|
|
|
93
94
|
import { mergeSettings } from './settings_merge.js';
|
|
94
95
|
import { getErrorMessage } from './utils/errors.js';
|
|
95
96
|
import { roundToDecimals, parseRelativeMultiplier } from './order/utils/math.js';
|
|
97
|
+
import { CLI_COLORS } from './cli_colors.js';
|
|
96
98
|
const storage = getStorage();
|
|
97
99
|
const { writeJSON } = storage;
|
|
98
100
|
const BOTS_FILE = PATHS.PROFILES.BOTS_JSON;
|
|
99
101
|
const PROFILES_DIR = PATHS.PROFILES_DIR;
|
|
102
|
+
// Editor palette: values come from the centralized CLI_COLORS module
|
|
103
|
+
// (rendered output unchanged).
|
|
100
104
|
const COLORS = {
|
|
101
|
-
reset:
|
|
102
|
-
bold:
|
|
103
|
-
white:
|
|
104
|
-
gray:
|
|
105
|
-
blue:
|
|
106
|
-
cyan:
|
|
107
|
-
orange:
|
|
108
|
-
yellow:
|
|
109
|
-
yellowBold:
|
|
110
|
-
green:
|
|
111
|
-
greenBold:
|
|
112
|
-
red:
|
|
113
|
-
redStrong:
|
|
105
|
+
reset: CLI_COLORS.reset,
|
|
106
|
+
bold: CLI_COLORS.bold,
|
|
107
|
+
white: CLI_COLORS.white,
|
|
108
|
+
gray: CLI_COLORS.silver,
|
|
109
|
+
blue: CLI_COLORS.blue,
|
|
110
|
+
cyan: CLI_COLORS.sky,
|
|
111
|
+
orange: CLI_COLORS.orange,
|
|
112
|
+
yellow: CLI_COLORS.yellow,
|
|
113
|
+
yellowBold: CLI_COLORS.yellowBold,
|
|
114
|
+
green: CLI_COLORS.buy,
|
|
115
|
+
greenBold: CLI_COLORS.greenBold,
|
|
116
|
+
red: CLI_COLORS.boldRed,
|
|
117
|
+
redStrong: CLI_COLORS.redStrong
|
|
114
118
|
};
|
|
115
119
|
/**
|
|
116
120
|
* Loads the bots configuration from profiles/bots.json.
|
|
@@ -390,7 +394,7 @@ async function askAssetB(promptText, defaultValue, assetA) {
|
|
|
390
394
|
async function askWeightDistribution(promptText, defaultValue) {
|
|
391
395
|
const MIN_WEIGHT = -1;
|
|
392
396
|
const MAX_WEIGHT = 2;
|
|
393
|
-
console.log(` ${COLORS.cyan}-1=SuperValley${COLORS.reset} ←→ ${COLORS.blue}0=Valley${COLORS.reset} ←→ ${COLORS.gray}0.5=Neutral${COLORS.reset} ←→ ${COLORS.orange}1=Mountain${COLORS.reset} ←→ ${COLORS.redStrong}2=SuperMountain${COLORS.reset}`);
|
|
397
|
+
console.log(` ${COLORS.cyan}-1=SuperValley${COLORS.reset} ←→ ${COLORS.blue}0=Valley${COLORS.reset} ←→ ${COLORS.gray}0.5=Neutral${COLORS.reset} ←→ ${COLORS.bold}${COLORS.orange}1=Mountain${COLORS.reset} ←→ ${COLORS.redStrong}2=SuperMountain${COLORS.reset}`);
|
|
394
398
|
const suffix = defaultValue !== undefined && defaultValue !== null ? ` [${defaultValue}]` : '';
|
|
395
399
|
const raw = (await readInput(`${promptText}${suffix}: `)).trim();
|
|
396
400
|
if (raw === '\x1b')
|
|
@@ -494,7 +498,51 @@ function colorPercentageInput(value) {
|
|
|
494
498
|
* @returns {string} ANSI-colored value string.
|
|
495
499
|
*/
|
|
496
500
|
function colorPriceRangeValue(value) {
|
|
497
|
-
return
|
|
501
|
+
return colorRangeValueByQuality(String(value));
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Returns quality tier for a range multiplier: green/yellow/orange/red/fixed.
|
|
505
|
+
* Uses RANGE_QUALITY thresholds: green ≥2.0x, yellow ≥1.55x, orange 1.45x–1.55x, red <1.45x.
|
|
506
|
+
* @param {*} value - Raw range value (e.g. "2x" or numeric).
|
|
507
|
+
* @returns {string} Tier key.
|
|
508
|
+
*/
|
|
509
|
+
function getRangeQuality(value) {
|
|
510
|
+
const m = parseRelativeMultiplier(value);
|
|
511
|
+
if (m === null)
|
|
512
|
+
return 'fixed';
|
|
513
|
+
if (m >= RANGE_QUALITY.GREEN_MIN)
|
|
514
|
+
return 'green';
|
|
515
|
+
if (m >= RANGE_QUALITY.YELLOW_MIN)
|
|
516
|
+
return 'yellow';
|
|
517
|
+
if (m < RANGE_QUALITY.RED_MAX)
|
|
518
|
+
return 'red';
|
|
519
|
+
if (m >= RANGE_QUALITY.ORANGE_MIN)
|
|
520
|
+
return 'orange';
|
|
521
|
+
return 'orange';
|
|
522
|
+
}
|
|
523
|
+
/**
|
|
524
|
+
* Colors a range value by quality tier (mountain-style legend):
|
|
525
|
+
* ≥2.0x green wide, ≥1.55x yellow effeciant, ≥1.45x orange tight, <1.45x red suizidal, fixed → red.
|
|
526
|
+
* @param {string} value - Raw value string.
|
|
527
|
+
* @returns {string} ANSI-colored value.
|
|
528
|
+
*/
|
|
529
|
+
function colorRangeValueByQuality(value) {
|
|
530
|
+
// retain colorMultiplierInput for fixed-value fallback compatibility
|
|
531
|
+
void colorMultiplierInput;
|
|
532
|
+
const tier = getRangeQuality(value);
|
|
533
|
+
if (tier === 'green')
|
|
534
|
+
return `${COLORS.green}${value}${COLORS.reset}`;
|
|
535
|
+
if (tier === 'yellow')
|
|
536
|
+
return `${COLORS.yellowBold}${value}${COLORS.reset}`;
|
|
537
|
+
if (tier === 'orange')
|
|
538
|
+
return `${COLORS.orange}${value}${COLORS.reset}`;
|
|
539
|
+
return `${COLORS.red}${value}${COLORS.reset}`;
|
|
540
|
+
}
|
|
541
|
+
/**
|
|
542
|
+
* Prints pre-entry legend for Range inputs (mirrors weight mountain legend).
|
|
543
|
+
*/
|
|
544
|
+
function printRangeQualityLegend() {
|
|
545
|
+
console.log(` ${COLORS.green}≥2.0x: wide${COLORS.reset} ←→ ${COLORS.yellowBold}≥1.55x: effeciant${COLORS.reset} ←→ ${COLORS.orange}≥1.45x: tight${COLORS.reset} ←→ ${COLORS.red}<1.45x: suizidal${COLORS.reset}`);
|
|
498
546
|
}
|
|
499
547
|
/**
|
|
500
548
|
* Checks if a value is a dynamic price source ("pool", "book", or an AMA
|
|
@@ -710,8 +758,11 @@ async function askIntegerInRange(promptText, defaultValue, minVal = 0, maxVal =
|
|
|
710
758
|
* @returns {Promise<number|string>} The value or '\x1b' if ESC.
|
|
711
759
|
*/
|
|
712
760
|
async function askNumberOrMultiplier(promptText, defaultValue) {
|
|
761
|
+
// Pre-entry legend for Range bounds (mirrors weight mountain legend)
|
|
762
|
+
if (/^(minPrice|maxPrice)/i.test(promptText))
|
|
763
|
+
printRangeQualityLegend();
|
|
713
764
|
const suffix = defaultValue !== undefined && defaultValue !== null ? ` [${colorPriceRangeValue(defaultValue)}]` : '';
|
|
714
|
-
const raw = (await readInput(`${promptText}${suffix}: `, { colorize: (input) =>
|
|
765
|
+
const raw = (await readInput(`${promptText}${suffix}: `, { colorize: (input) => colorRangeValueByQuality(input) })).trim();
|
|
715
766
|
if (raw === '\x1b')
|
|
716
767
|
return '\x1b';
|
|
717
768
|
if (raw === '')
|
|
@@ -754,8 +805,9 @@ async function askNumberOrMultiplier(promptText, defaultValue) {
|
|
|
754
805
|
* @returns {Promise<number|string>} The value or '\x1b' if ESC.
|
|
755
806
|
*/
|
|
756
807
|
async function askMaxPrice(promptText, defaultValue, minPrice) {
|
|
808
|
+
printRangeQualityLegend();
|
|
757
809
|
const suffix = defaultValue !== undefined && defaultValue !== null ? ` [${colorPriceRangeValue(defaultValue)}]` : '';
|
|
758
|
-
const raw = (await readInput(`${promptText}${suffix}: `, { colorize: (input) =>
|
|
810
|
+
const raw = (await readInput(`${promptText}${suffix}: `, { colorize: (input) => colorRangeValueByQuality(input) })).trim();
|
|
759
811
|
if (raw === '\x1b')
|
|
760
812
|
return '\x1b';
|
|
761
813
|
if (raw === '')
|
|
@@ -982,6 +1034,124 @@ function normalizeBotDraft(base = {}) {
|
|
|
982
1034
|
delete data.gridPriceOffsetClampToBounds;
|
|
983
1035
|
return data;
|
|
984
1036
|
}
|
|
1037
|
+
/**
|
|
1038
|
+
* Resolve data.preferredAccount to a chain account ID and stamp data.accountId
|
|
1039
|
+
* (persisted to profiles/bots.json on save). A typed 1.2.x ID is stored
|
|
1040
|
+
* directly; a name is resolved via chain lookup (lazy import so the config
|
|
1041
|
+
* editor never drags in the chain stack at module load). Fail-soft: when the
|
|
1042
|
+
* lookup fails or times out (offline), accountId is left unset with a warning
|
|
1043
|
+
* and analysis tools backfill it on their next successful lookup.
|
|
1044
|
+
*
|
|
1045
|
+
* CONTRACT: a cached accountId is only trusted when it was stored for the
|
|
1046
|
+
* current preferredAccount value. Callers that change preferredAccount MUST
|
|
1047
|
+
* either delete data.accountId first or pass force=true; otherwise a stale
|
|
1048
|
+
* ID is returned as 'cached' without verification.
|
|
1049
|
+
*
|
|
1050
|
+
* Side effects are contained: chain INFO/WARN spam is suppressed for the
|
|
1051
|
+
* duration of the lookup (setSuppressConnectionLog + the Logger global
|
|
1052
|
+
* console floor, both restored in `finally`), and the shared client is
|
|
1053
|
+
* disconnected afterwards so the configurator never holds a socket open
|
|
1054
|
+
* longer than needed (`dexbot bot` additionally disconnects and exits).
|
|
1055
|
+
* Residual edge: if our timeout abandons a still-in-flight connect sweep,
|
|
1056
|
+
* the stack's own total-timeout guard settles it later; the next lookup's
|
|
1057
|
+
* `finally` disconnects any socket it left behind.
|
|
1058
|
+
*
|
|
1059
|
+
* @warning Disconnects the SHARED chain client in `finally`. Call ONLY from
|
|
1060
|
+
* short-lived flows (bot configurator, one-shot scripts) that own no live
|
|
1061
|
+
* connection. NEVER from a long-running process (bot runtime, daemon,
|
|
1062
|
+
* concurrent worker) — it would drop the socket out from under the runtime.
|
|
1063
|
+
* @param {Object} data - Bot draft being edited.
|
|
1064
|
+
* @param {number} [timeoutMs=15000] - Max ms to wait for the chain lookup.
|
|
1065
|
+
* @param {boolean} [quiet=false] - Suppress console output.
|
|
1066
|
+
* @param {boolean} [force=false] - Ignore a cached accountId and re-resolve.
|
|
1067
|
+
* @returns {Promise<{id: string|null, reason: string}>} reason is one of
|
|
1068
|
+
* 'invalid' (no usable preferredAccount), 'id' (typed 1.2.x ID, stamped
|
|
1069
|
+
* directly), 'cached' (previously verified ID reused, no chain hit),
|
|
1070
|
+
* 'resolved' (fresh chain lookup succeeded), 'not-found' (chain answered,
|
|
1071
|
+
* no such account), 'timeout' (nodes unreachable within timeoutMs),
|
|
1072
|
+
* 'error' (import/lookup threw).
|
|
1073
|
+
*/
|
|
1074
|
+
async function ensureBotAccountId(data, timeoutMs = 15000, quiet = false, force = false) {
|
|
1075
|
+
if (!data || typeof data !== 'object')
|
|
1076
|
+
return { id: null, reason: 'invalid' };
|
|
1077
|
+
const ref = String(data.preferredAccount ?? '').trim();
|
|
1078
|
+
if (!ref)
|
|
1079
|
+
return { id: null, reason: 'invalid' };
|
|
1080
|
+
if (/^1\.2\.\d+$/.test(ref)) {
|
|
1081
|
+
if (data.accountId !== ref)
|
|
1082
|
+
data.accountId = ref;
|
|
1083
|
+
return { id: ref, reason: 'id' };
|
|
1084
|
+
}
|
|
1085
|
+
if (!force && data.accountId && /^1\.2\.\d+$/.test(String(data.accountId))) {
|
|
1086
|
+
return { id: String(data.accountId), reason: 'cached' };
|
|
1087
|
+
}
|
|
1088
|
+
let chainClient = null;
|
|
1089
|
+
let prevSuppress = false;
|
|
1090
|
+
let prevGlobalLevel = null;
|
|
1091
|
+
let suppressionArmed = false;
|
|
1092
|
+
try {
|
|
1093
|
+
chainClient = await import('./bitshares_client.js');
|
|
1094
|
+
prevSuppress = chainClient.isSuppressConnectionLog();
|
|
1095
|
+
prevGlobalLevel = getGlobalConsoleLevel();
|
|
1096
|
+
suppressionArmed = true;
|
|
1097
|
+
chainClient.setSuppressConnectionLog(true);
|
|
1098
|
+
setGlobalConsoleLevel('warn');
|
|
1099
|
+
const chainOrders = await import('./chain_orders.js');
|
|
1100
|
+
const timeoutErr = new Error(`account lookup timed out after ${timeoutMs}ms`);
|
|
1101
|
+
timeoutErr.code = 'ACCOUNT_LOOKUP_TIMEOUT';
|
|
1102
|
+
let id = null;
|
|
1103
|
+
try {
|
|
1104
|
+
id = await Promise.race([
|
|
1105
|
+
chainOrders.resolveAccountId(ref),
|
|
1106
|
+
sleep(timeoutMs).then(() => { throw timeoutErr; }),
|
|
1107
|
+
]);
|
|
1108
|
+
}
|
|
1109
|
+
catch (err) {
|
|
1110
|
+
const reason = err && err.code === 'ACCOUNT_LOOKUP_TIMEOUT' ? 'timeout' : 'error';
|
|
1111
|
+
if (!quiet) {
|
|
1112
|
+
const hint = reason === 'timeout'
|
|
1113
|
+
? `nodes unreachable (timed out after ${timeoutMs}ms). Continuing without accountId — it will be stored automatically once a lookup succeeds.`
|
|
1114
|
+
: `(${getErrorMessage(err)}). Continuing without accountId — it will be stored automatically once a lookup succeeds.`;
|
|
1115
|
+
console.log(` ${COLORS.yellow}Could not resolve account '${ref}' to 1.2.x ${hint}${COLORS.reset}`);
|
|
1116
|
+
}
|
|
1117
|
+
return { id: null, reason };
|
|
1118
|
+
}
|
|
1119
|
+
if (id && /^1\.2\.\d+$/.test(String(id))) {
|
|
1120
|
+
data.accountId = String(id);
|
|
1121
|
+
if (!quiet)
|
|
1122
|
+
console.log(` ${COLORS.green}Resolved account '${ref}' → ${id} (stored as accountId).${COLORS.reset}`);
|
|
1123
|
+
return { id: String(id), reason: 'resolved' };
|
|
1124
|
+
}
|
|
1125
|
+
if (!quiet)
|
|
1126
|
+
console.log(` ${COLORS.yellow}Account '${ref}' not found on the blockchain. Continuing without accountId — fix the name and it will be stored automatically once a lookup succeeds.${COLORS.reset}`);
|
|
1127
|
+
return { id: null, reason: 'not-found' };
|
|
1128
|
+
}
|
|
1129
|
+
catch (err) {
|
|
1130
|
+
if (!quiet)
|
|
1131
|
+
console.log(` ${COLORS.yellow}Could not resolve account '${ref}' to 1.2.x (${getErrorMessage(err)}). Continuing without accountId — it will be stored automatically once a lookup succeeds.${COLORS.reset}`);
|
|
1132
|
+
return { id: null, reason: 'error' };
|
|
1133
|
+
}
|
|
1134
|
+
finally {
|
|
1135
|
+
if (chainClient) {
|
|
1136
|
+
try {
|
|
1137
|
+
await chainClient.disconnectClient();
|
|
1138
|
+
}
|
|
1139
|
+
catch (_) { /* best-effort cleanup */ }
|
|
1140
|
+
if (suppressionArmed) {
|
|
1141
|
+
try {
|
|
1142
|
+
chainClient.setSuppressConnectionLog(prevSuppress);
|
|
1143
|
+
}
|
|
1144
|
+
catch (_) { /* restore-only */ }
|
|
1145
|
+
}
|
|
1146
|
+
}
|
|
1147
|
+
if (suppressionArmed) {
|
|
1148
|
+
try {
|
|
1149
|
+
setGlobalConsoleLevel(prevGlobalLevel);
|
|
1150
|
+
}
|
|
1151
|
+
catch (_) { /* restore-only */ }
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
985
1155
|
/**
|
|
986
1156
|
* Interactive menu to edit bot data.
|
|
987
1157
|
* @param {Object} [base={}] - The initial bot data to edit.
|
|
@@ -995,7 +1165,7 @@ async function promptBotData(base = {}) {
|
|
|
995
1165
|
while (!finished) {
|
|
996
1166
|
if (showMenu) {
|
|
997
1167
|
console.log(`\n${COLORS.bold}--- Bot Editor: ` + (data.name || 'New Bot') + ` ---${COLORS.reset}`);
|
|
998
|
-
console.log(`${COLORS.yellowBold}1) Pair:${COLORS.reset} ${COLORS.
|
|
1168
|
+
console.log(`${COLORS.yellowBold}1) Pair:${COLORS.reset} ${COLORS.cyan}${data.assetA || '?'} / ${data.assetB || '?'}${COLORS.reset}`);
|
|
999
1169
|
console.log(`${COLORS.yellowBold}2) Identity:${COLORS.reset} ${COLORS.orange}Name:${COLORS.reset} ${data.name || '?'} , ${COLORS.orange}Account:${COLORS.reset} ${data.preferredAccount || '?'} , ${COLORS.orange}Active:${COLORS.reset} ${colorBooleanFlag(data.active, true)}, ${COLORS.orange}DryRun:${COLORS.reset} ${colorBooleanFlag(data.dryRun, false)}`);
|
|
1000
1170
|
console.log(`${COLORS.yellowBold}3) Price:${COLORS.reset} ${COLORS.orange}Range:${COLORS.reset} [${colorPriceRangeValue(data.minPrice)} - ${colorPriceRangeValue(data.maxPrice)}], ${COLORS.orange}Start:${COLORS.reset} ${colorStartPriceValue(data.startPrice)}, ${COLORS.orange}Pool:${COLORS.reset} ${data.poolRef || 'none'}, ${COLORS.orange}GridPrice:${COLORS.reset} ${colorGridPriceValue(data.gridPrice, data.startPrice)}`);
|
|
1001
1171
|
console.log(`${COLORS.yellowBold}4) Grid:${COLORS.reset} ${COLORS.orange}Weights:${COLORS.reset} (S:${data.weightDistribution.sell}, B:${data.weightDistribution.buy}), ${COLORS.orange}Incr:${COLORS.reset} ${data.incrementPercent}%, ${COLORS.orange}Spread:${COLORS.reset} ${data.targetSpreadPercent}%`);
|
|
@@ -1029,9 +1199,35 @@ async function promptBotData(base = {}) {
|
|
|
1029
1199
|
const name = await askRequiredString('Bot name', data.name);
|
|
1030
1200
|
if (name === '\x1b')
|
|
1031
1201
|
break;
|
|
1032
|
-
|
|
1202
|
+
let prefAcc = await askRequiredString('Preferred account', data.preferredAccount);
|
|
1033
1203
|
if (prefAcc === '\x1b')
|
|
1034
1204
|
break;
|
|
1205
|
+
// Verify the account exists on the blockchain and stamp its ID.
|
|
1206
|
+
// Re-prompt while verification fails. A 'timeout' means the
|
|
1207
|
+
// nodes were unreachable (indistinguishable from a bad name
|
|
1208
|
+
// while offline); anything else means the name is unknown.
|
|
1209
|
+
{
|
|
1210
|
+
const draft = { ...data, preferredAccount: prefAcc };
|
|
1211
|
+
for (;;) {
|
|
1212
|
+
const checked = await ensureBotAccountId(draft, 15000, true, true);
|
|
1213
|
+
if (checked.id)
|
|
1214
|
+
break;
|
|
1215
|
+
const why = checked.reason === 'timeout'
|
|
1216
|
+
? `nodes unreachable (lookup timed out). Check your connection and try again, or press Esc to cancel.`
|
|
1217
|
+
: `account '${draft.preferredAccount}' not found on the blockchain. Check the name and try again, or press Esc to cancel.`;
|
|
1218
|
+
console.log(`${COLORS.red}Error: ${why}${COLORS.reset}`);
|
|
1219
|
+
const retry = await askRequiredString('Preferred account', String(draft.preferredAccount ?? ''));
|
|
1220
|
+
if (retry === '\x1b') {
|
|
1221
|
+
prefAcc = retry;
|
|
1222
|
+
break;
|
|
1223
|
+
}
|
|
1224
|
+
draft.preferredAccount = retry;
|
|
1225
|
+
}
|
|
1226
|
+
if (prefAcc === '\x1b')
|
|
1227
|
+
break;
|
|
1228
|
+
prefAcc = String(draft.preferredAccount);
|
|
1229
|
+
data.accountId = draft.accountId;
|
|
1230
|
+
}
|
|
1035
1231
|
const active = await askBoolean('Active', data.active);
|
|
1036
1232
|
if (active === '\x1b')
|
|
1037
1233
|
break;
|
|
@@ -1125,6 +1321,9 @@ async function promptBotData(base = {}) {
|
|
|
1125
1321
|
break;
|
|
1126
1322
|
}
|
|
1127
1323
|
}
|
|
1324
|
+
// Stamp accountId when possible (fail-soft when offline); the
|
|
1325
|
+
// Identity section above already hard-verifies the name on entry.
|
|
1326
|
+
await ensureBotAccountId(data);
|
|
1128
1327
|
finished = true;
|
|
1129
1328
|
break;
|
|
1130
1329
|
case 'c':
|
|
@@ -1402,5 +1601,5 @@ async function main() {
|
|
|
1402
1601
|
}
|
|
1403
1602
|
console.log('Botmanager closed!');
|
|
1404
1603
|
}
|
|
1405
|
-
export { main, normalizeBotDraft, parseJsonWithComments, parseCronToDelta, deltaToCron };
|
|
1604
|
+
export { main, normalizeBotDraft, ensureBotAccountId, parseJsonWithComments, parseCronToDelta, deltaToCron };
|
|
1406
1605
|
//# sourceMappingURL=account_bots.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account_bots.js","sourceRoot":"","sources":["../../modules/account_bots.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"account_bots.js","sourceRoot":"","sources":["../../modules/account_bots.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmFG;AAGH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACpT,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAC7B,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;AAG9B,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC3C,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;AACxC,qEAAqE;AACrE,+BAA+B;AAC/B,MAAM,MAAM,GAAG;IACX,KAAK,EAAE,UAAU,CAAC,KAAK;IACvB,IAAI,EAAE,UAAU,CAAC,IAAI;IACrB,KAAK,EAAE,UAAU,CAAC,KAAK;IACvB,IAAI,EAAE,UAAU,CAAC,MAAM;IACvB,IAAI,EAAE,UAAU,CAAC,IAAI;IACrB,IAAI,EAAE,UAAU,CAAC,GAAG;IACpB,MAAM,EAAE,UAAU,CAAC,MAAM;IACzB,MAAM,EAAE,UAAU,CAAC,MAAM;IACzB,UAAU,EAAE,UAAU,CAAC,UAAU;IACjC,KAAK,EAAE,UAAU,CAAC,GAAG;IACrB,SAAS,EAAE,UAAU,CAAC,SAAS;IAC/B,GAAG,EAAE,UAAU,CAAC,OAAO;IACvB,SAAS,EAAE,UAAU,CAAC,SAAS;CAClC,CAAC;AAEF;;;GAGG;AACH,SAAS,cAAc;IACnB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,gBAAgB,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/F,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;IACrF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IAClD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,MAAW,EAAE,QAAgB;IACjD,IAAI,CAAC;QACD,uBAAuB,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;YAAE,wBAAwB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC3E,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1E,MAAM,GAAG,CAAC;IACd,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB;IACxB,MAAM,QAAQ,GAAG;QACb,SAAS,EAAE,SAAS;QACpB,WAAW,EAAE,EAAE,GAAG,WAAW,EAAE,eAAe,EAAE,EAAE,GAAG,WAAW,CAAC,eAAe,EAAE,EAAE;QACpF,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE;QACvB,cAAc,EAAE,EAAE,GAAG,cAAc,EAAE;QACrC,eAAe,EAAE,EAAE,GAAG,eAAe,EAAE;QACvC,cAAc,EAAE,EAAE,GAAG,cAAc,EAAE;QACrC,eAAe,EAAE,EAAE,GAAG,eAAe,EAAE;QACvC,eAAe,EAAE,EAAE,GAAG,eAAe,EAAE;QACvC,kBAAkB,EAAE,EAAE,GAAG,kBAAkB,EAAE;QAC7C,WAAW,EAAE,EAAE,GAAG,WAAW,EAAE;QAC/B,eAAe,EAAE,EAAE,GAAG,eAAe,EAAE;QACvC,gBAAgB,EAAE,EAAE,GAAG,gBAAgB,EAAE;QACzC,cAAc,EAAE,EAAE,GAAG,cAAc,EAAE;QACrC,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE;QAC7B,cAAc,EAAE,EAAE,GAAG,cAAc,EAAE;QACrC,aAAa,EAAE,EAAE,GAAG,aAAa,EAAE;QACnC,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE;KAC5B,CAAC;IAEF,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACjC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YAClB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5E,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEjD,4DAA4D;IAC5D,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;IACzF,MAAM,qBAAqB,GAAG,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,sBAAsB,GAAG,CAAC;QAC/F,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,cAAc,CAAC,2BAA2B,CAAC;IACjD,MAAM,CAAC,cAAc,CAAC,2BAA2B,GAAG,qBAAqB,CAAC;IAE1E,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,QAAa;IACtC,IAAI,CAAC;QACD,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5E,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,IAAW;IACzB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO;IACX,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,YAAY,KAAK,GAAG,CAAC,GAAG,CAAC;QAClD,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,GAAG,cAAc,GAAG,YAAY,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,cAAc,CAAC,IAAW,EAAE,aAAqB;IAC5D,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,CAAC;IACf,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,aAAa,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9E,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACxB,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACpD,IAAI,GAAG,KAAK,EAAE;YAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,GAAG,CAAC,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,SAAS,CAAC,UAAkB,EAAE,YAAkB;IAC3D,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC;IAC3D,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,CAAC,MAAM;QAAE,OAAO,YAAY,CAAC;IACjC,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAAC,UAAkB,EAAE,YAAkB;IACnE,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACpC,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC3C,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,eAAe,CAAC,WAAmB,EAAE,YAAoB;IACpE,MAAM,OAAO,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAE/C,kBAAkB;IAClB,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACjF,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAEnC,cAAc;IACd,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACxB,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACtC,IAAI,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9C,IAAI,GAAG,OAAO,CAAC;YACf,MAAM;QACV,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,gBAAgB,CAAC,UAAkB,EAAE,YAAoB;IACpE,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACtD,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACpC,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,uCAAuC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,WAAW,CAAC,UAAkB,EAAE,YAAoB;IAC/D,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,qBAAqB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACpC,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,0CAA0C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,QAAQ,CAAC,UAAkB,EAAE,YAAkB;IAC1D,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,MAAM,MAAM,GAAG,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAErG,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC;QAC3D,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAErC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,cAAc;gBAAE,OAAO,cAAc,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACvC,SAAS;QACb,CAAC;QAED,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,SAAS,CAAC,UAAkB,EAAE,YAAkB,EAAE,MAAe;IAC5E,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,MAAM,MAAM,GAAG,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAErG,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC;QAC3D,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAErC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,cAAc;gBAAE,OAAO,cAAc,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACvC,SAAS;QACb,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAE3C,kDAAkD;QAClD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,mDAAmD,MAAM,GAAG,CAAC,CAAC;YAC1E,SAAS;QACb,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,qBAAqB,CAAC,UAAkB,EAAE,YAAkB;IACvE,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC;IACtB,MAAM,UAAU,GAAG,CAAC,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,iBAAiB,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,IAAI,WAAW,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,IAAI,cAAc,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,aAAa,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,SAAS,kBAAkB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAClQ,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,MAAM,GAAG,UAAU,IAAI,MAAM,GAAG,UAAU,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,uCAAuC,UAAU,QAAQ,UAAU,GAAG,CAAC,CAAC;QACpF,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,6BAA6B,CAAC,UAAkB,EAAE,YAAkB;IAC/E,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC;IACtB,MAAM,UAAU,GAAG,CAAC,CAAC;IACrB,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,6BAA6B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,MAAM,GAAG,UAAU,IAAI,MAAM,GAAG,UAAU,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,uCAAuC,UAAU,QAAQ,UAAU,GAAG,CAAC,CAAC;QACpF,OAAO,6BAA6B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,KAAU;IAClC,OAAO,uBAAuB,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AACnD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,oBAAoB,CAAC,KAAa;IACvC,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACzC,gEAAgE;QAChE,qEAAqE;QACrE,yDAAyD;QACzD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QACvE,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,KAAU;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,KAAU;IACpC,IAAI,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/E,OAAO,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oBAAoB,CAAC,KAAU;IACpC,OAAO,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,KAAU;IAC/B,MAAM,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IAC/B,IAAI,CAAC,IAAI,aAAa,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC;IACjD,IAAI,CAAC,IAAI,aAAa,CAAC,UAAU;QAAE,OAAO,QAAQ,CAAC;IACnD,IAAI,CAAC,GAAG,aAAa,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC,IAAI,aAAa,CAAC,UAAU;QAAE,OAAO,QAAQ,CAAC;IACnD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,KAAa;IAC3C,qEAAqE;IACrE,KAAK,oBAAoB,CAAC;IAC1B,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IACtE,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,MAAM,CAAC,UAAU,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5E,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IACxE,OAAO,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB;IAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,cAAc,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,UAAU,oBAAoB,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,MAAM,gBAAgB,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,GAAG,mBAAmB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;AACvN,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,KAAU;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACzC,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,KAAU;IACpC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IACjC,IAAI,oBAAoB,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/E,OAAO,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,mBAAmB,CAAC,KAAU,EAAE,UAAgB;IACrD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,oBAAoB,CAAC,UAAU,CAAC;YAC1C,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,aAAa,MAAM,CAAC,KAAK,EAAE;YAC5C,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,aAAa,MAAM,CAAC,KAAK,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3B,IAAI,oBAAoB,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/E,OAAO,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,KAAU,EAAE,aAAsB;IACxD,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;IACvB,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AACrG,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,IAAY;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAE1D,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,IAAI,GAAG,CAAC,CAAC;IAEb,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC1B,IAAI,GAAG,CAAC,CAAC;IACb,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY;IAC3C,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7C,OAAO,GAAG,GAAG,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,mBAAmB,CAAC,UAAkB,EAAE,YAAkB,EAAE,SAAiB,CAAC,EAAE,SAAiB,GAAG;IAC/G,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,mBAAmB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC;IACD,mEAAmE;IACnE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO,mBAAmB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC;IACD,kBAAkB;IAClB,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,gBAAgB,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,mBAAmB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,gBAAgB,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,mBAAmB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,sBAAsB,CAAC,UAAkB,EAAE,YAAkB,EAAE,mBAA2B,CAAC,EAAE,kBAA0B,WAAW,CAAC,iBAAiB;IAC/J,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,MAAM,mBAAmB,GAAG,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC;IAC/G,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,GAAG,mBAAmB,EAAE,CAAC,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IAChI,MAAM,MAAM,GAAG,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACtH,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,QAAQ,gBAAgB,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1F,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,gBAAgB,CAAC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,sBAAsB,CAAC,UAAU,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC/F,CAAC;IACD,mEAAmE;IACnE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACnD,OAAO,sBAAsB,CAAC,UAAU,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC/F,CAAC;IACD,0FAA0F;IAC1F,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,GAAG,WAAW,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,gBAAgB,mBAAmB,uBAAuB,gBAAgB,GAAG,CAAC,CAAC;QAC3H,OAAO,sBAAsB,CAAC,UAAU,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC/F,CAAC;IACD,uBAAuB;IACvB,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,sBAAsB,CAAC,CAAC;QACpE,OAAO,sBAAsB,CAAC,UAAU,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC/F,CAAC;IACD,OAAO,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,iBAAiB,CAAC,UAAkB,EAAE,YAAkB,EAAE,SAAiB,CAAC,EAAE,SAAiB,GAAG;IAC7G,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,iBAAiB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IACD,8CAA8C;IAC9C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,oCAAoC,CAAC,CAAC;QAClF,OAAO,iBAAiB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IACD,kBAAkB;IAClB,IAAI,MAAM,GAAG,MAAM,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,qBAAqB,MAAM,QAAQ,MAAM,EAAE,CAAC,CAAC;QACzF,OAAO,iBAAiB,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,qBAAqB,CAAC,UAAkB,EAAE,YAAkB;IACvE,qEAAqE;IACrE,IAAI,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,uBAAuB,EAAE,CAAC;IACxE,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACrH,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3H,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,MAAM,OAAO,uDAAuD,CAAC,CAAC;YACvG,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC3D,CAAC;QACD,mEAAmE;QACnE,uEAAuE;QACvE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YACzC,CAAC,CAAC,4GAA4G;YAC9G,CAAC,CAAC,6IAA6I,CAAC;QACpJ,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,MAAM,OAAO,MAAM,aAAa,EAAE,CAAC,CAAC;YACrE,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;QACpE,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IACD,iDAAiD;IACjD,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,iCAAiC,CAAC,CAAC;QAC/E,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,WAAW,CAAC,UAAkB,EAAE,YAAkB,EAAE,QAAc;IAC7E,uBAAuB,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACrH,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3H,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,MAAM,OAAO,uDAAuD,CAAC,CAAC;YACvG,OAAO,WAAW,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;QACD,oEAAoE;QACpE,yEAAyE;QACzE,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,MAAM,OAAO,+GAA+G,CAAC,CAAC;YAC/J,OAAO,WAAW,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;QACpE,OAAO,WAAW,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IACD,iDAAiD;IACjD,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,iCAAiC,CAAC,CAAC;QAC/E,OAAO,WAAW,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IACD,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,+EAA+E;IAC/E,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,MAAM,aAAa,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACrF,IAAI,MAAM,IAAI,aAAa,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,KAAK,MAAM,yBAAyB,aAAa,GAAG,CAAC,CAAC;YACvF,OAAO,WAAW,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,KAAa;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACpD,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,GAAG,OAAO,GAAG,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,qBAAqB,CAAC,UAAkB,EAAE,YAAkB;IACvE,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACrH,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACvH,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,YAAY,CAAC;IACpC,MAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IACrC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;QAC1E,OAAO,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,UAAU,CAAC,UAAkB,EAAE,YAAkB;IAC5D,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3C,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACjF,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,CAAC,GAAG;QAAE,OAAO,CAAC,CAAC,YAAY,CAAC;IAChC,OAAO,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,aAAa,CAAC,UAAkB,EAAE,YAAkB;IAC/D,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACrH,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,IAAI,EAAE;YACrD,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC;SAC3D,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEX,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAElC,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBACtD,OAAO,YAAY,CAAC;YACxB,CAAC;YACD,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;QACnC,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAEpC,6CAA6C;QAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,OAAO,GAAG,CAAC;QACf,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;IACpE,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,UAAU,CAAC,UAAkB,EAAE,YAAwC;IAClF,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM,oBAAoB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjF,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAClC,IAAI,CAAC,GAAG;YAAE,OAAO,YAAY,IAAI,IAAI,CAAC;QAEtC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC7E,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC;QACjE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,OAAO,UAAU,CAAC;QACtB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,sFAAsF,CAAC,CAAC;IACxG,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,gBAAgB,CAAC,UAAkB,EAAE,YAAkB,EAAE,UAAgB;IACpF,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,SAAS;YACtE,CAAC,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC;YACvC,CAAC,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,UAAU,KAAK,cAAc,KAAK,EAAE;YAChE,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC;SAC1D,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACX,IAAI,GAAG,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAClC,IAAI,CAAC,GAAG;YAAE,OAAO,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;QAElE,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,YAAY;YAAE,OAAO,IAAI,CAAC;QACrG,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,KAAK,CAAC;QACnC,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QACpC,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAEhD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;QAEhD,OAAO,CAAC,GAAG,CAAC,mFAAmF,CAAC,CAAC;IACrG,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,IAAI,GAAG,EAAE;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9C,IAAI,CAAC,IAAI,CAAC,kBAAkB;QAAE,IAAI,CAAC,kBAAkB,GAAG,EAAE,GAAG,cAAc,CAAC,kBAAkB,EAAE,CAAC;IACjG,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;IACnE,IAAI,CAAC,IAAI,CAAC,YAAY;QAAE,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,cAAc,CAAC,YAAY,EAAE,CAAC;IAE/E,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IACnE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IACnE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;IACzE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;IACzE,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;QAAE,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,gBAAgB,CAAC;IACjG,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;QAAE,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC,mBAAmB,CAAC;IAC1G,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;QAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,cAAc,CAAC,UAAU,IAAI,MAAM,CAAC;IAC5G,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IAC/B,OAAO,IAAI,CAAC,4BAA4B,CAAC;IACzC,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,KAAK,UAAU,kBAAkB,CAAC,IAAS,EAAE,SAAS,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK;IACxF,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC9E,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACjD,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS,KAAK,GAAG;YAAE,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACjD,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC5D,CAAC;IACD,IAAI,WAAW,GAAQ,IAAI,CAAC;IAC5B,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,CAAC;QACD,WAAW,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACpD,YAAY,GAAG,WAAW,CAAC,uBAAuB,EAAE,CAAC;QACrD,eAAe,GAAG,qBAAqB,EAAE,CAAC;QAC1C,gBAAgB,GAAG,IAAI,CAAC;QACxB,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC3C,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACtD,MAAM,UAAU,GAAQ,IAAI,KAAK,CAAC,kCAAkC,SAAS,IAAI,CAAC,CAAC;QACnF,UAAU,CAAC,IAAI,GAAG,wBAAwB,CAAC;QAC3C,IAAI,EAAE,GAAkB,IAAI,CAAC;QAC7B,IAAI,CAAC;YACD,EAAE,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBACpB,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC;gBACjC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;aACrD,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAClF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,MAAM,IAAI,GAAG,MAAM,KAAK,SAAS;oBAC7B,CAAC,CAAC,sCAAsC,SAAS,6FAA6F;oBAC9I,CAAC,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,2FAA2F,CAAC;gBAC1H,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,8BAA8B,GAAG,cAAc,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACxG,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,EAAE,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,qBAAqB,GAAG,OAAO,EAAE,0BAA0B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACpH,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,YAAY,GAAG,yIAAyI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAClN,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,8BAA8B,GAAG,eAAe,eAAe,CAAC,GAAG,CAAC,4FAA4F,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1N,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACzC,CAAC;YAAS,CAAC;QACP,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,CAAC;gBAAC,MAAM,WAAW,CAAC,gBAAgB,EAAE,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAC,yBAAyB,CAAC,CAAC;YACrF,IAAI,gBAAgB,EAAE,CAAC;gBACnB,IAAI,CAAC;oBAAC,WAAW,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;gBAAC,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC;YAChG,CAAC;QACL,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACnB,IAAI,CAAC;gBAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC;QACpF,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAAC,IAAI,GAAG,EAAE;IAClC,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,QAAQ,GAAG,IAAI,CAAC;IAEpB,OAAO,CAAC,QAAQ,EAAE,CAAC;QACf,IAAI,QAAQ,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,kBAAkB,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,GAAG,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACnG,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,WAAW,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5I,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,eAAe,MAAM,CAAC,KAAK,MAAM,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,WAAW,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,UAAU,MAAM,CAAC,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,UAAU,MAAM,CAAC,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YACpW,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,YAAY,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,KAAK,KAAK,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,KAAK,IAAI,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,aAAa,MAAM,CAAC,KAAK,IAAI,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC5a,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,WAAW,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,MAAM,WAAW,MAAM,CAAC,KAAK,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,MAAM,MAAM,CAAC,MAAM,UAAU,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACpT,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,KAAK,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,OAAO,MAAM,CAAC,KAAK,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,UAAU,MAAM,CAAC,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,CAAC;YACrU,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,SAAS,iBAAiB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,8BAA8B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC1E,QAAQ,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,SAAS,CAAC,oCAAoC,EAAE;YAClE,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;SACjG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAEzB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACpB,QAAQ,GAAG,IAAI,CAAC;YAChB,SAAS,GAAG,IAAI,CAAC;YACjB,MAAM;QACV,CAAC;QAED,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,GAAG;gBACJ,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClE,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAC7B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC1E,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5D,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,IAAI,OAAO,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAClF,IAAI,OAAO,KAAK,MAAM;oBAAE,MAAM;gBAC9B,gEAAgE;gBAChE,4DAA4D;gBAC5D,4DAA4D;gBAC5D,2DAA2D;gBAC3D,CAAC;oBACG,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;oBACrD,SAAS,CAAC;wBACN,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;wBACnE,IAAI,OAAO,CAAC,EAAE;4BAAE,MAAM;wBACtB,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;4BACpC,CAAC,CAAC,oGAAoG;4BACtG,CAAC,CAAC,YAAY,KAAK,CAAC,gBAAgB,sFAAsF,CAAC;wBAC/H,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,UAAU,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;wBACzD,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,CAAC;wBACjG,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;4BAAC,OAAO,GAAG,KAAK,CAAC;4BAAC,MAAM;wBAAC,CAAC;wBACjD,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBACnC,CAAC;oBACD,IAAI,OAAO,KAAK,MAAM;wBAAE,MAAM;oBAC9B,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;oBACzC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;gBACrC,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvD,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAC7B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACxD,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;gBAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpE,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChE,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,gCAAgC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtF,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAC7B,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,2CAA2C,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC1F,IAAI,KAAK,KAAK,MAAM;oBAAE,MAAM;gBAC5B,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,uCAAuC,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC5G,IAAI,EAAE,KAAK,MAAM;oBAAE,MAAM;gBACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;gBACzB,IAAI,CAAC,OAAO,GAAG,KAAK,IAAI,SAAS,CAAC;gBAClC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,4BAA4B,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACtG,IAAI,KAAK,KAAK,MAAM;oBAAE,MAAM;gBAC5B,MAAM,IAAI,GAAG,MAAM,6BAA6B,CAAC,2BAA2B,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBAC3G,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;gBAC/I,IAAI,KAAK,KAAK,MAAM;oBAAE,MAAM;gBAC5B,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,IAAI,KAAK,GAAG,CAAC,CAAC;gBAE5D,wDAAwD;gBACxD,MAAM,eAAe,GAAG,mBAAmB,EAAE,CAAC;gBAC9C,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,gBAAgB,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;gBAEpI,IAAI,OAAO,KAAK,MAAM;oBAAE,MAAM;gBAC9B,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,KAAK,CAAC;gBACrC,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,IAAI,CAAC;gBACnC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;gBACnC,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,sBAAsB,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACtF,IAAI,KAAK,KAAK,MAAM;oBAAE,MAAM;gBAC5B,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACnF,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,yBAAyB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;gBACjG,IAAI,KAAK,KAAK,MAAM;oBAAE,MAAM;gBAC5B,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,wBAAwB,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC9F,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;gBAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,KAAK,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,GAAG,GAAG,IAAI,CAAC;gBAC7B,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,uCAAuC;gBACvC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACvE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,6DAA6D,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBACtG,MAAM;gBACV,CAAC;gBACD,CAAC;oBACG,MAAM,eAAe,GAAG,mBAAmB,EAAE,CAAC;oBAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC,iBAAiB,CAAC;wBAC/E,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,iBAAiB;wBAC/C,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC;oBACpC,MAAM,iBAAiB,GAAG,eAAe,CAAC,IAAI,CAAC,gBAAgB,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC;oBACnF,IAAI,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,OAAO,GAAG,iBAAiB,EAAE,CAAC;wBAChE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,+BAA+B,IAAI,CAAC,mBAAmB,gBAAgB,YAAY,uBAAuB,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;wBACpL,MAAM;oBACV,CAAC;gBACL,CAAC;gBACD,8DAA8D;gBAC9D,kEAAkE;gBAClE,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC/B,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,QAAQ,GAAG,IAAI,CAAC;gBAChB,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM;YACV,QAAQ;YACJ,0EAA0E;QAClF,CAAC;IACL,CAAC;IAED,IAAI,SAAS;QAAE,OAAO,IAAI,CAAC;IAE3B,6EAA6E;IAC7E,+EAA+E;IAC/E,gFAAgF;IAChF,gFAAgF;IAChF,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,qBAAqB;IAChC,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;IACvC,IAAI,QAAQ,GAAG,KAAK,CAAC;IAEpB,OAAO,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,oCAAoC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,kBAAkB,MAAM,CAAC,KAAK,MAAM,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,WAAW,CAAC,4BAA4B,MAAM,MAAM,CAAC,MAAM,OAAO,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,cAAc,MAAM,MAAM,CAAC,MAAM,aAAa,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,cAAc,CAAC,2BAA2B,GAAG,CAAC,CAAC;QAChW,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,qBAAqB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,kBAAkB,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,WAAW,CAAC,iCAAiC,GAAG,CAAC,CAAC;QAC/K,MAAM,SAAS,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACrD,MAAM,aAAa,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,UAAU,IAAI,eAAe,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChI,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,aAAa,IAAI,MAAM,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,kBAAkB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,KAAK,IAAI,SAAS,KAAK,MAAM,CAAC,MAAM,aAAa,MAAM,CAAC,KAAK,IAAI,aAAa,QAAQ,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;QACjP,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,6BAA6B,CAAC,CAAC;QACnJ,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvH,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,IAAI,WAAW,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,KAAK,UAAU,aAAa,KAAK,MAAM,CAAC,MAAM,UAAU,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,MAAM,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACnR,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,SAAS,iBAAiB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,8BAA8B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,MAAM,MAAM,GAAG,CAAC,MAAM,SAAS,CAAC,oCAAoC,EAAE;YACjE,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;SACpF,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE1B,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACpB,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM;QACV,CAAC;QAED,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,GAAG;gBACJ,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,2BAA2B,EAAE,QAAQ,CAAC,WAAW,CAAC,4BAA4B,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;gBAClI,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAC7B,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,4BAA4B,EAAE,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;gBACjI,IAAI,GAAG,KAAK,MAAM;oBAAE,MAAM;gBAC1B,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC,2BAA2B,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBACpI,IAAI,QAAQ,KAAK,MAAM;oBAAE,MAAM;gBAC/B,QAAQ,CAAC,WAAW,CAAC,4BAA4B,GAAG,MAAM,CAAC;gBAC3D,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,cAAc,GAAG,GAAG,CAAC;gBAC1D,QAAQ,CAAC,cAAc,CAAC,2BAA2B,GAAG,QAAQ,CAAC;gBAC/D,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAAC,iCAAiC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpI,IAAI,IAAI,KAAK,MAAM;oBAAE,MAAM;gBAC3B,QAAQ,CAAC,WAAW,CAAC,iCAAiC,GAAG,IAAI,CAAC;gBAC9D,MAAM;YACV,KAAK,GAAG;gBACJ,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;gBAC9B,CAAC;oBACG,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;wBACrE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI;wBACrB,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC;oBACpC,IAAI,QAAQ,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;oBAChC,IAAI,eAAe,GAAG,KAAK,CAAC;oBAE5B,OAAO,IAAI,EAAE,CAAC;wBACV,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,2BAA2B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;wBACvE,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;4BACzB,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;wBACtE,CAAC,CAAC,CAAC;wBACH,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,cAAc,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;wBAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,GAAG,iBAAiB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;wBAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,UAAU,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;wBAE5D,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;wBACxE,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;4BACxB,eAAe,GAAG,IAAI,CAAC;4BACvB,MAAM;wBACV,CAAC;wBAED,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;4BACrB,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,CAAC;4BACpD,IAAI,OAAO,KAAK,MAAM;gCAAE,SAAS;4BACjC,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;gCAC5B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gCAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,KAAK,WAAW,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;4BACpF,CAAC;wBACL,CAAC;6BAAM,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;4BAC5B,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gCACvB,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,6CAA6C,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gCAC3F,SAAS;4BACb,CAAC;4BACD,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,+BAA+B,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;4BAClG,IAAI,SAAS,KAAK,MAAM;gCAAE,SAAS;4BACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BACrD,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC;wBACvE,CAAC;6BAAM,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;4BAC5B,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;4BAC/B,MAAM;wBACV,CAAC;oBACL,CAAC;oBAED,IAAI,eAAe;wBAAE,MAAM;gBAC/B,CAAC;gBAED,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,6BAA6B,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,UAAU,IAAI,eAAe,CAAC,wBAAwB,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;gBAClL,IAAI,UAAU,KAAK,MAAM;oBAAE,MAAM;gBACjC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW;oBAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC;gBACjE,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC;gBAE3D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,0DAA0D,EAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;gBAC5I,IAAI,QAAQ,KAAK,MAAM;oBAAE,MAAM;gBAC/B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS;oBAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;gBAC7D,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;gBACjE,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,iBAAiB,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAC1E,IAAI,QAAQ,KAAK,MAAM;oBAAE,MAAM;gBAC/B,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC;gBAC9B,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,0BAA0B,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;gBACjG,IAAI,QAAQ,KAAK,MAAM;oBAAE,MAAM;gBAC/B,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;gBAElC,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,OAAO,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,GAAG,OAAO,MAAM,CAAC,KAAK,QAAQ,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,KAAK,qBAAqB,CAAC,CAAC;gBACzN,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACzE,IAAI,MAAM,KAAK,MAAM;oBAAE,MAAM;gBAE7B,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC9E,IAAI,QAAQ,KAAK,MAAM;oBAAE,MAAM;gBAE/B,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;gBAEjC,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBACrC,MAAM;YACV,KAAK,GAAG;gBACJ,mBAAmB,CAAC,QAAQ,CAAC,CAAC;gBAC9B,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV,KAAK,GAAG;gBACJ,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACV;gBACI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACvC,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,IAAI;IACf,OAAO,CAAC,GAAG,CAAC,+CAA+C,SAAS,GAAG,CAAC,CAAC;IACzE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,EAAE,CAAC;IAC9C,IAAI,IAAI,GAAG,KAAK,CAAC;IAChB,OAAO,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,CAAC,MAAM,SAAS,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;YAChE,IAAI,GAAG,IAAI,CAAC;YACZ,SAAS;QACb,CAAC;QAEF,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,OAAO,IAAI,EAAE,CAAC;oBACV,IAAI,CAAC;wBACD,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAC;wBACpC,IAAI,CAAC,KAAK;4BAAE,MAAM;wBAClB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACxB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBACjC,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAC9E,CAAC;oBAAC,OAAO,GAAQ,EAAE,CAAC;wBAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBAC5D,MAAM;oBACV,CAAC;gBACL,CAAC;gBACD,MAAM;YACV,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,OAAO,IAAI,EAAE,CAAC;oBACV,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;oBAC7E,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM;wBAAE,MAAM;oBAC1C,IAAI,CAAC;wBACD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;wBACpD,IAAI,KAAK,EAAE,CAAC;4BACR,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;4BACzB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;4BACjC,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;wBACnF,CAAC;oBACL,CAAC;oBAAC,OAAO,GAAQ,EAAE,CAAC;wBAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAChE,CAAC;gBACL,CAAC;gBACD,MAAM;YACV,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,OAAO,IAAI,EAAE,CAAC;oBACV,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;oBAC7E,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM;wBAAE,MAAM;oBAC1C,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC;oBACxE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,eAAe,IAAI,EAAE,KAAK,CAAC,CAAC;oBACxE,IAAI,OAAO,KAAK,MAAM;wBAAE,MAAM;oBAC9B,IAAI,OAAO,EAAE,CAAC;wBACV,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC9C,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBACjC,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,CAAC,IAAI,IAAI,eAAe,UAAU,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACvG,CAAC;yBAAM,CAAC;wBACJ,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;oBACzC,CAAC;gBACL,CAAC;gBACD,MAAM;YACV,CAAC;YACD,KAAK,GAAG,CAAC,CAAC,CAAC;gBACP,OAAO,IAAI,EAAE,CAAC;oBACV,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC;oBAC3E,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM;wBAAE,MAAM;oBAC1C,IAAI,CAAC;wBACD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;wBACpD,IAAI,KAAK,EAAE,CAAC;4BACR,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;4BACtC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;4BACjC,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,CAAC,IAAI,UAAU,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;wBACjF,CAAC;oBACL,CAAC;oBAAC,OAAO,GAAQ,EAAE,CAAC;wBAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAChE,CAAC;gBACL,CAAC;gBACD,MAAM;YACV,CAAC;YACD,KAAK,GAAG;gBACJ,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,MAAM;YACV,KAAK,GAAG;gBACJ,MAAM,qBAAqB,EAAE,CAAC;gBAC9B,MAAM;YACV,KAAK,GAAG;gBACJ,IAAI,GAAG,IAAI,CAAC;gBACZ,MAAM;YACV;gBACI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAC1C,CAAC;IACL,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACtC,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -53,6 +53,8 @@
|
|
|
53
53
|
* - price: Price level
|
|
54
54
|
* - size: Order size in base asset
|
|
55
55
|
* - orderId: Blockchain order ID (null for VIRTUAL)
|
|
56
|
+
* - createUncertain: (optional, only when true) slot keeps its size because a
|
|
57
|
+
* CREATE broadcast result was lost; consumed by the loadGrid orphan sanitizer
|
|
56
58
|
*
|
|
57
59
|
* ===============================================================================
|
|
58
60
|
*/
|
|
@@ -89,7 +91,7 @@ declare class AccountOrders {
|
|
|
89
91
|
/**
|
|
90
92
|
* Create an AccountOrders instance.
|
|
91
93
|
* @param {Object} options - Configuration options
|
|
92
|
-
* @param {string} options.botKey - Bot identifier (e.g., '
|
|
94
|
+
* @param {string} options.botKey - Bot identifier (e.g., 'asset1-asset2-0', 'market-a-1')
|
|
93
95
|
* @param {string} [options.ordersDir] - Optional override for the per-bot storage directory
|
|
94
96
|
* @param {string} [options.profilesPath] - Optional override for the per-bot storage file path
|
|
95
97
|
*/
|
|
@@ -161,14 +163,16 @@ declare class AccountOrders {
|
|
|
161
163
|
* @param {Object|null} assets - Optional asset metadata { assetA, assetB }
|
|
162
164
|
* @param {Object|null} debugInputs - Optional debug-only input snapshot
|
|
163
165
|
* @param {Object|null} recentFillKeys - Optional fill key dedup snapshot for crash recovery
|
|
166
|
+
* @param {Object|null} genesis - Optional frozen genesis (priceLevels etc)
|
|
164
167
|
*/
|
|
165
|
-
storeMasterGrid(orders?: any[], btsFeesOwed?: any, boundaryIdx?: any, assets?: any, debugInputs?: any, recentFillKeys?: any): Promise<void>;
|
|
168
|
+
storeMasterGrid(orders?: any[], btsFeesOwed?: any, boundaryIdx?: any, assets?: any, debugInputs?: any, recentFillKeys?: any, genesis?: any): Promise<void>;
|
|
166
169
|
/**
|
|
167
170
|
* Load the persisted order grid for this bot.
|
|
168
171
|
* @param {boolean} forceReload - If true, reload from disk to ensure fresh data
|
|
169
172
|
* @returns {Array|null} Order grid array or null if not found
|
|
170
173
|
*/
|
|
171
174
|
loadGrid(forceReload?: boolean): any;
|
|
175
|
+
loadGenesis(forceReload?: boolean): any;
|
|
172
176
|
/**
|
|
173
177
|
* Load the recently queued fill keys for crash-durable dedup.
|
|
174
178
|
* @param {boolean} forceReload - If true, reload from disk
|
|
@@ -255,14 +259,7 @@ declare class AccountOrders {
|
|
|
255
259
|
* @returns {Object} The serialized order.
|
|
256
260
|
* @private
|
|
257
261
|
*/
|
|
258
|
-
_serializeOrder(order?: any):
|
|
259
|
-
id: any;
|
|
260
|
-
type: any;
|
|
261
|
-
state: any;
|
|
262
|
-
price: number;
|
|
263
|
-
size: number;
|
|
264
|
-
orderId: any;
|
|
265
|
-
};
|
|
262
|
+
_serializeOrder(order?: any): Record<string, any>;
|
|
266
263
|
}
|
|
267
264
|
export { AccountOrders, createBotKey, sanitizeKey };
|
|
268
265
|
//# sourceMappingURL=account_orders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account_orders.d.ts","sourceRoot":"","sources":["../../modules/account_orders.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"account_orders.d.ts","sourceRoot":"","sources":["../../modules/account_orders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAaH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAgBtD;;;;;;;;GAQG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,UAUzC;AA2DD;;;;;;;;;;;;GAYG;AACH,cAAM,aAAa;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,GAAG,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,IAAI,EAAE,GAAG,CAAC;IAEV;;;;;;OAMG;gBACS,OAAO,GAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAmB;IAkBnG;;;;OAIG;IACH,SAAS;IAKT;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,GAAG;IAoBvB;;;OAGG;IACH,QAAQ;IAKR;;;;;OAKG;IACG,QAAQ,CAAC,SAAS,EAAE,GAAG;IAyB7B;;;;;;OAMG;IACH,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;IASrC;;;;;;;;OAQG;IACH,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAW;;;;;;;;;;IAc/F;;;;;;;;;;OAUG;IACG,eAAe,CAAC,MAAM,GAAE,GAAG,EAAO,EAAE,WAAW,GAAE,GAAU,EAAE,WAAW,GAAE,GAAU,EAAE,MAAM,GAAE,GAAU,EAAE,WAAW,GAAE,GAAU,EAAE,cAAc,GAAE,GAAU,EAAE,OAAO,GAAE,GAAU;IAuDxL;;;;OAIG;IACH,QAAQ,CAAC,WAAW,GAAE,OAAe;IAOrC,WAAW,CAAC,WAAW,GAAE,OAAe;IAUxC;;;;OAIG;IACH,kBAAkB,CAAC,WAAW,GAAE,OAAe;IAU/C;;;;OAIG;IACH,mBAAmB,CAAC,WAAW,GAAE,OAAe;IAUhD;;;;OAIG;IACH,eAAe,CAAC,WAAW,GAAE,OAAe;IAa5C;;;;OAIG;IACH,cAAc,CAAC,WAAW,GAAE,OAAe;IAU3C;;;;;;OAMG;IACH,eAAe,CAAC,WAAW,GAAE,OAAe;IAa5C;;;OAGG;IACG,SAAS;IAYf;;;;;OAKG;IACH,kBAAkB,CAAC,OAAO,GAAE,OAAO,GAAG;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAO;IAoB3F;;;OAGG;IACG,yBAAyB,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAyB1D;;;;OAIG;IACG,sBAAsB,CAAC,WAAW,GAAE,MAAgB;IA2B1D;;;;;OAKG;IACH,gBAAgB,CAAC,WAAW,GAAE,OAAe;;;;;;;;;;;;;;;;IA+B7C;;;;;OAKG;IACH,eAAe,CAAC,KAAK,GAAE,GAAQ;CAkChC;AAED,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,CAAA"}
|