dexbot 1.6.2 → 1.6.4

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.
Files changed (212) hide show
  1. package/CHANGELOG.md +53 -3
  2. package/README.md +11 -7
  3. package/analysis/README.md +20 -14
  4. package/analysis/account_resolver.ts +171 -0
  5. package/analysis/ama_fitting/analyze_lambda_vs_slow.ts +2 -5
  6. package/analysis/ama_fitting/package.json +1 -1
  7. package/analysis/bot_usage/discover_bot_accounts.ts +20 -27
  8. package/analysis/chain_pool.ts +47 -0
  9. package/analysis/chart_utils.ts +33 -20
  10. package/analysis/derivative_chart_generator.ts +2 -3
  11. package/analysis/fills_source.ts +234 -0
  12. package/analysis/grid_correction_check.ts +104 -244
  13. package/analysis/results/ama_sweep_results_lp_pool_133_1h.json +2455 -0
  14. package/analysis/results/bot_fitting_results_lp_pool_133_1h.json +218 -0
  15. package/analysis/trade_profitability.ts +169 -304
  16. package/analysis/tradingview/README.md +2 -2
  17. package/analysis/tradingview/h-bts_tradingview.html +1570 -0
  18. package/analysis/tradingview/t-bts_tradingview.html +1570 -0
  19. package/analysis/tradingview/tradingview_uplot_chart_generator.ts +3 -4
  20. package/analysis/trend_detection/dynamic_weight_chart_generator.ts +2 -3
  21. package/analysis/trend_detection/kalman_chart_generator.ts +2 -3
  22. package/analysis/trend_detection/package.json +1 -1
  23. package/analysis/trend_detection/regime_chart_generator.ts +2 -3
  24. package/analysis/trend_detection/volatility_chart_generator.ts +2 -3
  25. package/claw/package.json +1 -1
  26. package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
  27. package/claw/runtimes/openclaw-plugin/package.json +1 -1
  28. package/claw/tests/test_claw_mcp_transport.ts +2 -2
  29. package/dist/analysis/account_resolver.d.ts +43 -0
  30. package/dist/analysis/account_resolver.d.ts.map +1 -0
  31. package/dist/analysis/account_resolver.js +137 -0
  32. package/dist/analysis/account_resolver.js.map +1 -0
  33. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.d.ts.map +1 -1
  34. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js +2 -4
  35. package/dist/analysis/ama_fitting/analyze_lambda_vs_slow.js.map +1 -1
  36. package/dist/analysis/bot_usage/discover_bot_accounts.js +20 -28
  37. package/dist/analysis/bot_usage/discover_bot_accounts.js.map +1 -1
  38. package/dist/analysis/chain_pool.d.ts +10 -0
  39. package/dist/analysis/chain_pool.d.ts.map +1 -0
  40. package/dist/analysis/chain_pool.js +47 -0
  41. package/dist/analysis/chain_pool.js.map +1 -0
  42. package/dist/analysis/chart_utils.d.ts +14 -1
  43. package/dist/analysis/chart_utils.d.ts.map +1 -1
  44. package/dist/analysis/chart_utils.js +32 -22
  45. package/dist/analysis/chart_utils.js.map +1 -1
  46. package/dist/analysis/derivative_chart_generator.d.ts.map +1 -1
  47. package/dist/analysis/derivative_chart_generator.js +2 -3
  48. package/dist/analysis/derivative_chart_generator.js.map +1 -1
  49. package/dist/analysis/fills_source.d.ts +79 -0
  50. package/dist/analysis/fills_source.d.ts.map +1 -0
  51. package/dist/analysis/fills_source.js +186 -0
  52. package/dist/analysis/fills_source.js.map +1 -0
  53. package/dist/analysis/grid_correction_check.d.ts +4 -20
  54. package/dist/analysis/grid_correction_check.d.ts.map +1 -1
  55. package/dist/analysis/grid_correction_check.js +95 -248
  56. package/dist/analysis/grid_correction_check.js.map +1 -1
  57. package/dist/analysis/trade_profitability.d.ts +18 -19
  58. package/dist/analysis/trade_profitability.d.ts.map +1 -1
  59. package/dist/analysis/trade_profitability.js +136 -280
  60. package/dist/analysis/trade_profitability.js.map +1 -1
  61. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.d.ts.map +1 -1
  62. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js +3 -4
  63. package/dist/analysis/tradingview/tradingview_uplot_chart_generator.js.map +1 -1
  64. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.d.ts.map +1 -1
  65. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js +2 -3
  66. package/dist/analysis/trend_detection/dynamic_weight_chart_generator.js.map +1 -1
  67. package/dist/analysis/trend_detection/kalman_chart_generator.d.ts.map +1 -1
  68. package/dist/analysis/trend_detection/kalman_chart_generator.js +2 -3
  69. package/dist/analysis/trend_detection/kalman_chart_generator.js.map +1 -1
  70. package/dist/analysis/trend_detection/regime_chart_generator.d.ts.map +1 -1
  71. package/dist/analysis/trend_detection/regime_chart_generator.js +2 -3
  72. package/dist/analysis/trend_detection/regime_chart_generator.js.map +1 -1
  73. package/dist/analysis/trend_detection/volatility_chart_generator.d.ts.map +1 -1
  74. package/dist/analysis/trend_detection/volatility_chart_generator.js +2 -3
  75. package/dist/analysis/trend_detection/volatility_chart_generator.js.map +1 -1
  76. package/dist/market_adapter/lp_chart_core.d.ts.map +1 -1
  77. package/dist/market_adapter/lp_chart_core.js +2 -3
  78. package/dist/market_adapter/lp_chart_core.js.map +1 -1
  79. package/dist/modules/account_bots.d.ts +1 -18
  80. package/dist/modules/account_bots.d.ts.map +1 -1
  81. package/dist/modules/account_bots.js +1 -1
  82. package/dist/modules/account_bots.js.map +1 -1
  83. package/dist/modules/bitshares-native/serial/operations.d.ts +1 -84
  84. package/dist/modules/bitshares-native/serial/operations.d.ts.map +1 -1
  85. package/dist/modules/bitshares-native/serial/operations.js +1 -38
  86. package/dist/modules/bitshares-native/serial/operations.js.map +1 -1
  87. package/dist/modules/cli_colors.d.ts +0 -1
  88. package/dist/modules/cli_colors.d.ts.map +1 -1
  89. package/dist/modules/constants.js +5 -5
  90. package/dist/modules/constants.js.map +1 -1
  91. package/dist/modules/credential_policy.d.ts +1 -25
  92. package/dist/modules/credential_policy.d.ts.map +1 -1
  93. package/dist/modules/credential_policy.js +1 -1
  94. package/dist/modules/credential_policy.js.map +1 -1
  95. package/dist/modules/credential_runtime.d.ts +1 -6
  96. package/dist/modules/credential_runtime.d.ts.map +1 -1
  97. package/dist/modules/credential_runtime.js +1 -1
  98. package/dist/modules/credential_runtime.js.map +1 -1
  99. package/dist/modules/credential_session_cache.d.ts +1 -5
  100. package/dist/modules/credential_session_cache.d.ts.map +1 -1
  101. package/dist/modules/credential_session_cache.js +1 -1
  102. package/dist/modules/credential_session_cache.js.map +1 -1
  103. package/dist/modules/crypto/pure_secp256k1.d.ts +1 -2
  104. package/dist/modules/crypto/pure_secp256k1.d.ts.map +1 -1
  105. package/dist/modules/crypto/pure_secp256k1.js +1 -1
  106. package/dist/modules/crypto/pure_secp256k1.js.map +1 -1
  107. package/dist/modules/dexbot_class.d.ts +9 -8
  108. package/dist/modules/dexbot_class.d.ts.map +1 -1
  109. package/dist/modules/dexbot_class.js +9 -8
  110. package/dist/modules/dexbot_class.js.map +1 -1
  111. package/dist/modules/dexbot_cow_runtime.d.ts +87 -7
  112. package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
  113. package/dist/modules/dexbot_cow_runtime.js +489 -14
  114. package/dist/modules/dexbot_cow_runtime.js.map +1 -1
  115. package/dist/modules/dexbot_fill_runtime.d.ts +1 -17
  116. package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
  117. package/dist/modules/dexbot_fill_runtime.js +1 -1
  118. package/dist/modules/dexbot_fill_runtime.js.map +1 -1
  119. package/dist/modules/dexbot_maintenance_runtime.d.ts +1 -1
  120. package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
  121. package/dist/modules/dexbot_maintenance_runtime.js +21 -5
  122. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
  123. package/dist/modules/dexbot_state_recovery.d.ts +1 -7
  124. package/dist/modules/dexbot_state_recovery.d.ts.map +1 -1
  125. package/dist/modules/dexbot_state_recovery.js +1 -1
  126. package/dist/modules/dexbot_state_recovery.js.map +1 -1
  127. package/dist/modules/launcher/adapter_requirement.d.ts +1 -5
  128. package/dist/modules/launcher/adapter_requirement.d.ts.map +1 -1
  129. package/dist/modules/launcher/adapter_requirement.js +1 -1
  130. package/dist/modules/launcher/adapter_requirement.js.map +1 -1
  131. package/dist/modules/launcher/bot_supervisor.d.ts +1 -6
  132. package/dist/modules/launcher/bot_supervisor.d.ts.map +1 -1
  133. package/dist/modules/launcher/bot_supervisor.js +1 -1
  134. package/dist/modules/launcher/bot_supervisor.js.map +1 -1
  135. package/dist/modules/launcher/foreign_cred_daemon.d.ts +1 -3
  136. package/dist/modules/launcher/foreign_cred_daemon.d.ts.map +1 -1
  137. package/dist/modules/launcher/foreign_cred_daemon.js +1 -1
  138. package/dist/modules/launcher/foreign_cred_daemon.js.map +1 -1
  139. package/dist/modules/launcher/launch_modes.d.ts +1 -2
  140. package/dist/modules/launcher/launch_modes.d.ts.map +1 -1
  141. package/dist/modules/launcher/launch_modes.js +1 -1
  142. package/dist/modules/launcher/launch_modes.js.map +1 -1
  143. package/dist/modules/launcher/market_adapter_runtime.d.ts +1 -3
  144. package/dist/modules/launcher/market_adapter_runtime.d.ts.map +1 -1
  145. package/dist/modules/launcher/market_adapter_runtime.js +1 -1
  146. package/dist/modules/launcher/market_adapter_runtime.js.map +1 -1
  147. package/dist/modules/launcher/monolithic_runtime.d.ts +1 -5
  148. package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -1
  149. package/dist/modules/launcher/monolithic_runtime.js +1 -1
  150. package/dist/modules/launcher/monolithic_runtime.js.map +1 -1
  151. package/dist/modules/launcher/status_reporting.d.ts +1 -2
  152. package/dist/modules/launcher/status_reporting.d.ts.map +1 -1
  153. package/dist/modules/launcher/status_reporting.js +1 -1
  154. package/dist/modules/launcher/status_reporting.js.map +1 -1
  155. package/dist/modules/order/export.d.ts +1 -8
  156. package/dist/modules/order/export.d.ts.map +1 -1
  157. package/dist/modules/order/export.js +1 -1
  158. package/dist/modules/order/export.js.map +1 -1
  159. package/dist/modules/order/grid.d.ts +7 -0
  160. package/dist/modules/order/grid.d.ts.map +1 -1
  161. package/dist/modules/order/grid.js +52 -98
  162. package/dist/modules/order/grid.js.map +1 -1
  163. package/dist/modules/order/grid_reconcile_internal.d.ts +1 -10
  164. package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
  165. package/dist/modules/order/grid_reconcile_internal.js +2 -2
  166. package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
  167. package/dist/modules/order/manager.d.ts +10 -2
  168. package/dist/modules/order/manager.d.ts.map +1 -1
  169. package/dist/modules/order/manager.js +20 -7
  170. package/dist/modules/order/manager.js.map +1 -1
  171. package/dist/modules/order/sync_engine.d.ts.map +1 -1
  172. package/dist/modules/order/sync_engine.js +25 -20
  173. package/dist/modules/order/sync_engine.js.map +1 -1
  174. package/dist/modules/order/utils/math.d.ts +1 -10
  175. package/dist/modules/order/utils/math.d.ts.map +1 -1
  176. package/dist/modules/order/utils/math.js +1 -1
  177. package/dist/modules/order/utils/math.js.map +1 -1
  178. package/dist/modules/order/utils/order.d.ts +45 -7
  179. package/dist/modules/order/utils/order.d.ts.map +1 -1
  180. package/dist/modules/order/utils/order.js +160 -15
  181. package/dist/modules/order/utils/order.js.map +1 -1
  182. package/dist/modules/order/utils/system.d.ts +0 -15
  183. package/dist/modules/order/utils/system.d.ts.map +1 -1
  184. package/dist/modules/order/utils/system.js +2 -2
  185. package/dist/modules/order/utils/system.js.map +1 -1
  186. package/dist/modules/process_discovery.d.ts +0 -3
  187. package/dist/modules/process_discovery.d.ts.map +1 -1
  188. package/dist/modules/process_discovery.js +1 -1
  189. package/dist/modules/process_discovery.js.map +1 -1
  190. package/dist/modules/utils/chain_logs.d.ts +1 -2
  191. package/dist/modules/utils/chain_logs.d.ts.map +1 -1
  192. package/dist/modules/utils/chain_logs.js +1 -1
  193. package/dist/modules/utils/chain_logs.js.map +1 -1
  194. package/dist/scripts/analyze-git.js +2 -2
  195. package/dist/scripts/analyze-git.js.map +1 -1
  196. package/dist/scripts/update.js +46 -31
  197. package/dist/scripts/update.js.map +1 -1
  198. package/docs/BITSHARES_ONBOARDING.md +110 -40
  199. package/docs/COPY_ON_WRITE_MASTER_PLAN.md +10 -207
  200. package/docs/COW_INVARIANTS.md +16 -10
  201. package/docs/DEXBOT_COMPARISON.md +3 -3
  202. package/docs/EVOLUTION.md +75 -29
  203. package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +6 -6
  204. package/docs/GRID_RECALCULATION.md +14 -6
  205. package/docs/GRID_RECONCILE.md +28 -25
  206. package/docs/LIFECYCLE.md +12 -11
  207. package/docs/README.md +48 -42
  208. package/docs/architecture.md +19 -30
  209. package/docs/developer_guide.md +3 -3
  210. package/package.json +1 -1
  211. package/scripts/git-viewer.sh +1 -1
  212. package/tests/README.md +10 -1
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../scripts/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../scripts/update.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAE/E,6CAA6C;AAC7C,uDAAuD;AACvD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,MAAM,aAAa,GAAG;IAClB,KAAK,EAAE,UAAU,CAAC,KAAK;IACvB,EAAE,EAAE,UAAU,CAAC,WAAW;IAC1B,IAAI,EAAE,UAAU,CAAC,UAAU;IAC3B,KAAK,EAAE,UAAU,CAAC,OAAO;CAC5B,CAAC;AAEF,SAAS,iBAAiB,CAAC,IAAY,EAAE,KAAa,EAAE,SAA6B,OAAO,CAAC,MAAM;IAC/F,OAAO,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ;QACnC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE;QACzC,CAAC,CAAC,IAAI,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,SAAS,GAAG,CAAC,GAAW;IACpB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,cAAc,GAAG,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC3B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,cAAc,GAAG,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;AACtG,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC5B,OAAO,iBAAiB,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,KAAK,CAAC,GAAW,EAAE,GAAW;IACnC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;IACzB,IAAI,CAAC;QACD,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC,CAAC;QAC7D,MAAM,GAAG,CAAC;IACd,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,GAAG,CAAC,GAAW;IACpB,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC;AAED,wEAAwE;AAExE,SAAS,eAAe,CAAC,IAAY;IACjC,IAAI,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAwB,CAAC;IAC5E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACpC,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,OAAO,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACjC,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,OAAO,GAAG,EAAE,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3E,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IACzC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,OAAe;IACxC,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,OAAO,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC7F,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChE,OAAO,OAAO,CAAC;IACnB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,0DAA0D,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxG,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB;IACrB,IAAI,CAAC;QACD,uEAAuE;QACvE,mEAAmE;QACnE,wCAAwC;QACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACxG,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,CAAS;IAC3B,IAAI,CAAC;QACD,OAAO,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACL,IAAI,CAAC;YACD,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,qBAAqB,CAAC,WAAmB,EAAE,UAAkB;IAClE,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5D,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,YAAY,CAAC;AAC1D,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACrC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,CAAC;IAEvC,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,GAAG,CAAC;IACf,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,CAAC;IACb,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB;IAC5B,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAClE,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAE7B,MAAM,QAAQ,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,EAAc,EAAE,CAAC;IACtH,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAC1D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACvE,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACtB,QAAQ,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IACd,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,wBAAwB;IAC7B,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC;WAC5C,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC;WACjD,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,wBAAwB,CAAC,UAAe;IAC7C,MAAM,OAAO,GAAG;QACZ,eAAe,UAAU,CAAC,UAAU,EAAE;QACtC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI;QACzD,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;KAChF,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,GAAG,CAAC,gCAAgC,OAAO,8BAA8B,CAAC,CAAC;IAC3E,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;QAC7D,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IACd,IAAI,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAAC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;AACxE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,sBAAsB;IAC3B,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACnF,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC;QACvD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,iBAAiB,CACzB,gFAAgF;YAChF,wCAAwC;YACxC,4BAA4B;YAC5B,qBAAqB;YACrB,iEAAiE,EACjE,aAAa,CAAC,IAAI,CACrB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,GAAG,CAAC,8CAA8C,CAAC,CAAC;IACpD,IAAI,CAAC;QACD,QAAQ,CAAC,SAAS,UAAU,GAAG,EAAE;YAC7B,GAAG,EAAE,KAAK,CAAC,YAAY;YACvB,KAAK,EAAE,SAAS;SACnB,CAAC,CAAC;QACH,UAAU,CAAC,4BAA4B,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,GAAG,CAAC,oDAAoD,eAAe,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpH,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAED,SAAS,eAAe;IACpB,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC/G,IAAI,OAAO;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,SAAS,GAAG,QAAQ,CAAC,0CAA0C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACrI,OAAO,CAAC,CAAC,SAAS,CAAC;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CAAC,OAAe;IACpC,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,+CAA+C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACrI,IAAI,IAAI,EAAE,CAAC;YACP,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9B,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,GAAG,CAAC,wFAAwF,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,WAAW,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CAAC,aAAqB;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;WAC1D,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,iEAAiE,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,iEAAiE;IACjE,sDAAsD;IACtD,MAAM,OAAO,GAAG,aAAa,IAAI,UAAU,CAAC;IAC5C,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,wBAAwB,OAAO,qDAAqD,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC5K,IAAI,MAAM,EAAE,CAAC;YACT,GAAG,CAAC,yCAAyC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9E,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,sEAAsE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAC7J,IAAI,KAAK,EAAE,CAAC;YACR,GAAG,CAAC,4EAA4E,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,wBAAwB;IACnC,IAAI,CAAC;QACD,MAAM,IAAI,GAAQ,MAAM,kBAAkB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9D,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,MAA8B,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,KAAK,UAAU,8BAA8B;IACzC,MAAM,MAAM,GAAG,MAAM,wBAAwB,EAAE,CAAC;IAChD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SACtC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAM,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;SAC5F,GAAG,CAAC,CAAC,CAAC,IAAI,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAEhC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,GAAG,CAAC,kFAAkF,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,GAAG,CAAC,uCAAuC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtE,MAAM,kBAAkB,CAAC,EAAE,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,wEAAwE;AAExE;;;;;GAKG;AACH,SAAS,uBAAuB;IAC5B,MAAM,oBAAoB,GAAG,CAAC,CAAC,uBAAuB,EAAE,CAAC;IACzD,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;IACtD,IAAI,oBAAoB,EAAE,CAAC;QACvB,GAAG,CAAC,8EAA8E,CAAC,CAAC;IACxF,CAAC;SAAM,IAAI,kBAAkB,EAAE,CAAC;QAC5B,GAAG,CAAC,iGAAiG,CAAC,CAAC;IAC3G,CAAC;IACD,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,yBAAyB;IACpC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IAC5C,IAAI,CAAC;QACD,sEAAsE;QACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YACrC,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC;YACxB,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC5D,SAAS,CAAC,uBAAuB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3E,GAAG,CAAC,4CAA4C,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,kDAAkD,eAAe,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACrH,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,kBAAkB,EAAkE;IAC7I,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAC9C,IAAI,CAAC;QACD,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;YACnC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YAC9C,SAAS,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,CAAC;YACJ,MAAM,UAAU,GAAG,uBAAuB,EAAE,CAAC;YAC7C,IAAI,UAAU,EAAE,CAAC;gBACb,wBAAwB,CAAC,UAAU,CAAC,CAAC;gBACrC,SAAS,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,IAAI,MAAM,8BAA8B,EAAE,EAAE,CAAC;gBAChD,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBAC9C,SAAS,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACJ,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC3C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;oBAC/C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;oBAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAEpC,MAAM,cAAc,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;yBACrC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC;yBACtC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACvB,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAEtC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,IAAI,gBAAgB,GAAa,EAAE,CAAC;wBACpC,IAAI,SAAS,GAAG,IAAI,CAAC;wBACrB,IAAI,CAAC;4BACD,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;4BACvD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;4BACtC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;gCACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gCAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gCACpC,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BACtD,CAAC;iCAAM,CAAC;gCACJ,GAAG,CAAC,uDAAuD,CAAC,CAAC;4BACjE,CAAC;wBACL,CAAC;wBAAC,OAAO,CAAM,EAAE,CAAC;4BACd,sDAAsD;4BACtD,oDAAoD;4BACpD,uDAAuD;4BACvD,gDAAgD;4BAChD,qDAAqD;4BACrD,GAAG,CAAC,2FAA2F,CAAC,CAAC;4BACjG,SAAS,GAAG,KAAK,CAAC;wBACtB,CAAC;wBAED,IAAI,SAAS,EAAE,CAAC;4BACZ,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAE,gBAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;4BAC7G,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;4BAC9E,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAE,gBAA6B,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;4BACzG,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;4BAClE,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;gCACnC,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC;gCACtB,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;4BAC5D,MAAM,qBAAqB,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;4BAE9E,MAAM,oBAAoB,GAAa,qBAAqB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;4BACvF,MAAM,iBAAiB,GAAa,oBAAoB,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAE,gBAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;4BACjI,MAAM,YAAY,GAAa,CAAC,GAAG,aAAa,EAAE,GAAG,iBAAiB,CAAC,CAAC;4BAExE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC1B,GAAG,CAAC,8BAA8B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAC7D,IAAI,SAAS,GAAG,KAAK,CAAC;gCACtB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;oCAC9B,IAAI,CAAC;wCACD,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC,CAAC;wCAC7B,SAAS,GAAG,IAAI,CAAC;oCACrB,CAAC;oCAAC,OAAO,CAAC,EAAE,CAAC;wCACT,GAAG,CAAC,uCAAuC,IAAI,8BAA8B,CAAC,CAAC;oCACnF,CAAC;gCACL,CAAC;gCACD,IAAI,SAAS,EAAE,CAAC;oCACZ,SAAS,GAAG,IAAI,CAAC;gCACrB,CAAC;qCAAM,CAAC;oCACJ,GAAG,CAAC,sDAAsD,CAAC,CAAC;gCAChE,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACJ,GAAG,CAAC,iEAAiE,CAAC,CAAC;4BAC3E,CAAC;4BAED,IAAI,qBAAqB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gCACxE,GAAG,CAAC,2FAA2F,CAAC,CAAC;gCACjG,IAAI,CAAC;oCACD,GAAG,CAAC,cAAc,KAAK,CAAC,QAAQ,CAAC,mBAAmB,yBAAyB,CAAC,CAAC;gCACnF,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC;oCACT,GAAG,CAAC,gEAAgE,CAAC,CAAC;gCAC1E,CAAC;4BACL,CAAC;wBACL,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACJ,GAAG,CAAC,iCAAiC,CAAC,CAAC;oBAC3C,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,YAAY,KAAK,CAAC,QAAQ,CAAC,SAAS,yCAAyC,CAAC,CAAC;gBACvF,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,0CAA0C,eAAe,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;IACjI,CAAC;IAED,qEAAqE;IACrE,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC;QAClD,IAAI,oBAAoB,IAAI,kBAAkB,EAAE,CAAC;YAC7C,GAAG,CAAC,yFAAyF,CAAC,CAAC;YAC/F,IAAI,sBAAsB,EAAE,EAAE,CAAC;gBAC3B,SAAS,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACJ,GAAG,CAAC,wEAAwE,CAAC,CAAC;YAClF,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,iBAAiB,CACzB,0CAA0C;YAC1C,2EAA2E;YAC3E,qBAAqB;YACrB,+EAA+E;YAC/E,sCAAsC;YACtC,uDAAuD,EACvD,aAAa,CAAC,IAAI,CACrB,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,wEAAwE;AAExE;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,gBAAgB;IAC3B,GAAG,CAAC,yEAAyE,CAAC,CAAC;IAE/E,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC9D,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,iDAAiD,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC;IAC5F,CAAC;IACD,GAAG,CAAC,8BAA8B,cAAc,EAAE,CAAC,CAAC;IAEpD,uEAAuE;IACvE,wEAAwE;IACxE,0EAA0E;IAC1E,qCAAqC;IACrC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACX,wFAAwF;YACxF,gFAAgF;YAChF,qDAAqD,CACxD,CAAC;IACN,CAAC;IACD,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;QACzD,uEAAuE;QACvE,qEAAqE;QACrE,oEAAoE;QACpE,sCAAsC;QACtC,MAAM,IAAI,KAAK,CACX,0BAA0B,GAAG,KAAK,CAAC,YAAY,GAAG,6BAA6B,GAAG,UAAU,GAAG,IAAI;YACnG,+FAA+F;YAC/F,4FAA4F;YAC5F,kBAAkB,GAAG,OAAO,GAAG,oFAAoF,CACtH,CAAC;IACN,CAAC;IAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACnD,GAAG,CAAC,6BAA6B,aAAa,EAAE,CAAC,CAAC;IAElD,IAAI,eAAe,CAAC,cAAc,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,oGAAoG,CAAC,CAAC;QAC1G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAG,cAAc,OAAO,aAAa,kDAAkD,CAAC,CAAC;IAE7F,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;IAE3C,uEAAuE;IACvE,6EAA6E;IAC7E,KAAK,CAAC,OAAO,EAAE,EAAE,kBAAkB,OAAO,IAAI,aAAa,EAAE,CAAC,CAAC;IAE/D,uEAAuE;IACvE,qEAAqE;IACrE,0EAA0E;IAC1E,oDAAoD;IACpD,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC9D,GAAG,CAAC,mCAAmC,cAAc,IAAI,SAAS,EAAE,CAAC,CAAC;IACtE,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACX,iEAAiE,KAAK,CAAC,YAAY,IAAI;YACvF,iEAAiE,OAAO,KAAK,CAChF,CAAC;IACN,CAAC;IACD,IAAI,eAAe,CAAC,cAAc,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CACX,+CAA+C,cAAc,gCAAgC;YAC7F,GAAG,aAAa,0BAA0B,OAAO,IAAI,aAAa,yCAAyC,CAC9G,CAAC;IACN,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,sEAAsE;IACtE,wEAAwE;IACxE,WAAW;IACX,MAAM,WAAW,GAAG;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC;QACrD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC;KACxD,CAAC;IACF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACX,wBAAwB,SAAS,gCAAgC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YAC5F,kGAAkG;YAClG,mBAAmB,CACtB,CAAC;IACN,CAAC;IACD,GAAG,CAAC,GAAG,SAAS,0BAA0B,CAAC,CAAC;IAE5C,MAAM,yBAAyB,EAAE,CAAC;IAClC,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,CAAC,KAAK,IAAI,EAAE;IACZ,IAAI,CAAC;QACD,gDAAgD;QAChD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAE1C;;;;;;;;;;WAUG;QACH,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAE/D,IAAI,CAAC,SAAS,IAAI,YAAY,EAAE,CAAC;YAC7B,MAAM,gBAAgB,EAAE,CAAC;YACzB,UAAU,CAAC,wCAAwC,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACX,gEAAgE;gBAChE,qDAAqD,CACxD,CAAC;QACN,CAAC;QAED,kDAAkD;QAClD,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC;QACvC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE5B;;;WAGG;QACH,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAE/B,IAAI,aAAa,CAAC;QAClB,IAAI,CAAC;YACD,oCAAoC;YACpC,aAAa,GAAG,QAAQ,CAAC,iCAAiC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAClF,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,4BAA4B;YAC5B,aAAa,GAAG,SAAS,CAAC;QAC9B,CAAC;QAED;;;;WAIG;QACH,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACpB,IAAI,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC1D,mDAAmD;gBACnD,MAAM,GAAG,MAAM,CAAC;gBAChB,GAAG,CAAC,mDAAmD,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACJ,kCAAkC;gBAClC,MAAM,GAAG,aAAa,CAAC;gBACvB,GAAG,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QAED;;;;WAIG;QACH,IAAI,CAAC;YACD,MAAM,aAAa,GAAG,QAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YACjG,GAAG,CAAC,qCAAqC,aAAa,6BAA6B,CAAC,CAAC;QACzF,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,2CAA2C;YAC3C,GAAG,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAC;YACxC,GAAG,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAC;QAC5C,CAAC;QAED;;;WAGG;QACH,GAAG,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;QAElC,2CAA2C;QAE3C;;;;WAIG;QACH,MAAM,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC,qCAAqC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAChH,MAAM,gBAAgB,GAAG,eAAe,GAAG,CAAC,CAAC;QAC7C,MAAM,kBAAkB,GAAG,aAAa,KAAK,MAAM,CAAC;QAEpD;;;;;;;;;;WAUG;QACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpB,0DAA0D;YAC1D,IAAI,kBAAkB,EAAE,CAAC;gBACrB,GAAG,CAAC,8BAA8B,aAAa,OAAO,MAAM,yBAAyB,CAAC,CAAC;gBACvF,GAAG,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC;gBAC9B,GAAG,CAAC,6CAA6C,CAAC,CAAC;YACvD,CAAC;YACD,GAAG,CAAC,oEAAoE,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,GAAG,CAAC,GAAG,eAAe,yDAAyD,CAAC,CAAC;QAEjF,eAAe;QACf,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,IAAI,CAAC;YACD,QAAQ,CAAC,qDAAqD,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QAC3H,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QAElF;;;;;;;WAOG;QACH,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;QAC3C,MAAM,oBAAoB,GAAG,QAAQ,CAAC,oBAAoB,CAAC;QAC3D,MAAM,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAC;QAEvD,kEAAkE;QAClE,8DAA8D;QAC9D,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC;YACD,aAAa,GAAG,QAAQ,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACjH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;QAEd;;;;;;;WAOG;QACH,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,aAAa,GAAG,oBAAoB,CAAC;QAC3C,IAAI,eAAe,EAAE,EAAE,CAAC;YACpB,GAAG,CAAC,uCAAuC,CAAC,CAAC;YAC7C,GAAG,CAAC,iDAAiD,aAAa,qBAAqB,CAAC,CAAC;YACzF,OAAO,GAAG,IAAI,CAAC;QACnB,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAC9C,CAAC;QAED;;;WAGG;QACH,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YAC3B,GAAG,CAAC,wBAAwB,MAAM,KAAK,CAAC,CAAC;YACzC,GAAG,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,GAAG,CAAC,+BAA+B,OAAO,aAAa,MAAM,MAAM,CAAC,CAAC;QACrE,oEAAoE;QACpE,GAAG,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;QAE1C;;;;;;;;;;;;;WAaG;QACH,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;YAChD,GAAG,CAAC,8BAA8B,CAAC,CAAC;YACpC,IAAI,CAAC;gBACD,QAAQ,CAAC,mBAAmB,QAAQ,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;YACpG,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,6EAA6E;gBAC7E,GAAG,CAAC,wEAAwE,CAAC,CAAC;gBAC9E,IAAI,CAAC;oBACD,QAAQ,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;gBACnG,CAAC;gBAAC,OAAO,EAAE,EAAE,CAAC,CAAA,CAAC;YACnB,CAAC;YACD,gEAAgE;YAChE,IAAI,CAAC;gBACD,QAAQ,CAAC,kBAAkB,QAAQ,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;YACnG,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,GAAG,CAAC,yEAAyE,CAAC,CAAC;YACnF,CAAC;YACD,qDAAqD;YACrD,IAAI,CAAC;gBACD,MAAM,WAAW,GAAG,QAAQ,CAAC,sCAAsC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBACnI,IAAI,WAAW,EAAE,CAAC;oBACd,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACzD,GAAG,CAAC,eAAe,QAAQ,CAAC,MAAM,oDAAoD,CAAC,CAAC;oBACxF,QAAQ,CAAC,4BAA4B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;oBACnH,6DAA6D;oBAC7D,yDAAyD;oBACzD,IAAI,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;wBACzC,GAAG,CAAC,oDAAoD,CAAC,CAAC;wBAC1D,QAAQ,CAAC,oDAAoD,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;wBAC3G,eAAe,GAAG,IAAI,CAAC;oBAC3B,CAAC;gBACL,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;QAClB,CAAC;QAED;;;;;;;;;WASG;QACH,IAAI,eAAe,EAAE,CAAC;YAClB,GAAG,CAAC,kFAAkF,CAAC,CAAC;QAC5F,CAAC;aAAM,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YAChC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC1D,CAAC;QAED;;;;;;;;;;;;;;WAcG;QACH,GAAG,CAAC,gDAAgD,CAAC,CAAC;QACtD,GAAG,CAAC,eAAe,CAAC,CAAC;QAErB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAClF,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC3F,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACX,yBAAyB,SAAS,4BAA4B;oBAC9D,iDAAiD;oBACjD,wDAAwD,CAC3D,CAAC;YACN,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CACX,yBAAyB,SAAS,2BAA2B;oBAC7D,cAAc,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI;oBAC7C,GAAG,SAAS,UAAU,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK;oBACvD,+CAA+C;oBAC/C,wDAAwD,CAC3D,CAAC;YACN,CAAC;YACD,GAAG,CAAC,GAAG,SAAS,qBAAqB,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC3E,CAAC;QAED;;;;;WAKG;QACH,MAAM,yBAAyB,EAAE,CAAC;QAElC;;;;;;WAMG;QACH,MAAM,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAE1E,UAAU,CAAC,wCAAwC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACD,CAAC,CAAC,EAAE,CAAC"}
@@ -14,7 +14,7 @@ trade, assuming you are new to BitShares and the Linux terminal:
14
14
 
15
15
  **Prerequisite:** DEXBot2 is installed. See the "Installation" section of the
16
16
  root [README](../README.md#-installation) for installation options
17
- (`npm i -g dexbot` or clone + `npm install`).
17
+ (`npm i -g dexbot` or clone + `npm install` + `npm link`).
18
18
 
19
19
  ---
20
20
 
@@ -39,10 +39,10 @@ for the full vision.
39
39
  external asset through on-chain price feeds and is collateralized by BTS.
40
40
  Trading it works like any other pair — the price feeds just keep it pegged.
41
41
  - A **peer-to-peer (P2P) credit system** — on-chain lending between accounts,
42
- with no bank or broker in the middle. Lenders offer assets at interest
43
- through **credit offers**; borrowers pledge collateral to borrow and repay
44
- (or auto-repay) on expiry. DEXBot2 can borrow MPAs and take credit offers for
45
- you — see [MPA and Credit Usage](MPA_CREDIT_USAGE.md#which-section-do-i-need).
42
+ no bank or broker in the middle. Lenders offer assets at interest through **credit
43
+ offers**; borrowers pledge collateral and repay (or auto-repay) on expiry.
44
+ DEXBot2 can borrow MPAs and take credit offers for you — see
45
+ [MPA and Credit Usage](MPA_CREDIT_USAGE.md#which-section-do-i-need).
46
46
 
47
47
  DEXBot2 is a **grid trading bot** for these pairs: it places a ladder of buy
48
48
  and sell orders around a reference price and profits as price oscillates
@@ -55,8 +55,8 @@ through the grid.
55
55
  ### 2.1 Register an account
56
56
 
57
57
  DEXBot2 does **not** create accounts — the account must exist on-chain before
58
- the bot can resolve it. Registration is the same on-chain operation from any
59
- wallet, so pick whichever UI suits you:
58
+ the bot can resolve it. Any wallet can register one; pick whichever UI suits
59
+ you:
60
60
 
61
61
  1. Open one of the account-creation pages and choose to create a new account:
62
62
  - **bts.exchange (hosted BitShares UI)** —
@@ -67,10 +67,10 @@ wallet, so pick whichever UI suits you:
67
67
  email or SMS verification; a secret phrase is shown once, so save it.
68
68
  2. Pick an account name. It must be globally unique and consist of lowercase
69
69
  letters, digits, and dashes (e.g. `my-grid-bot`).
70
- 3. Registration costs a small fee in BTS. With **XBTS DEX** the exchange pays
71
- the blockchain registration fee for you, so signup is effectively free. If
72
- you become a **Lifetime Member (LTM)** you save 80% on all blockchain fees
73
- and can register **premium (short) account names**.
70
+ 3. Registration costs a small BTS fee; with **XBTS DEX** the exchange pays it
71
+ for you, so signup is effectively free. Becoming a **Lifetime Member (LTM)**
72
+ saves 80% on all blockchain fees and allows registering **premium (short)
73
+ account names**.
74
74
  4. Save the **master password / secret phrase / backup** in a safe place. It is
75
75
  the only way to recover or export your keys.
76
76
 
@@ -93,10 +93,10 @@ with.
93
93
 
94
94
  ### 2.3 Gateways and supported assets
95
95
 
96
- On-chain assets come from two sources: **gateways** issue assets that represent
97
- real coins from other blockchains, and **market-pegged assets (MPAs)** are
98
- backed by BTS collateral and tracked to an external reference by on-chain price
99
- feeds. The main gateway operators are:
96
+ Two sources of on-chain assets: **gateways** issue assets representing real
97
+ coins from other blockchains, and **market-pegged assets (MPAs)** are backed by
98
+ BTS collateral and tracked to an external reference by on-chain price feeds.
99
+ The main gateway operators are:
100
100
 
101
101
  #### ioxbank — [https://www.ioxbank.com/](https://www.ioxbank.com/)
102
102
 
@@ -150,10 +150,9 @@ maintenance collateral ratio, and feed behavior.
150
150
 
151
151
  #### Classic bitAssets (MPA)
152
152
 
153
- The original BitShares market-pegged assets, defined in the core genesis
154
- ([bitshares-core](https://github.com/bitshares/bitshares-core) genesis) and
155
- still the reference MPA set on the network. Same mechanics as HONEST.Assets:
156
- BTS-collateralized, tracked to an external reference by on-chain price feeds.
153
+ The original BitShares MPAs from the core genesis
154
+ ([bitshares-core](https://github.com/bitshares/bitshares-core)) — still the
155
+ reference MPA set on the network. Same mechanics as HONEST.Assets:
157
156
 
158
157
  | bitAsset | Tracks | bitAsset | Tracks |
159
158
  | :--- | :--- | :--- | :--- |
@@ -167,8 +166,8 @@ BTS-collateralized, tracked to an external reference by on-chain price feeds.
167
166
  | bitCAD | Canadian dollar | bitAUD | Australian dollar |
168
167
  | bitCHF | Swiss franc | bitNZD | New Zealand dollar |
169
168
 
170
- Trading bitAssets works like any other pair — e.g. `bitUSD / BTS` — and they
171
- can be borrowed/shorted with a collateral position just like the HONEST set.
169
+ Trade them like any other pair (e.g. `bitUSD / BTS`); borrowable/shortable with
170
+ a collateral position just like the HONEST set.
172
171
 
173
172
  ---
174
173
 
@@ -215,11 +214,11 @@ The easiest way to get the **active** private key (WIF) is the reference wallet
215
214
  > the **key icon** next to the active key → in the popup click **show** → enter
216
215
  > your wallet password → the WIF private key is displayed.
217
216
 
218
- Other wallets either hide the key behind encryption (trade.xbts.io, BeetVault)
219
- or keep keys in a connected wallet app (Astro UI). In those cases the fallback
220
- is always your **master password / secret phrase**: the active key is
221
- deterministically derived from it and can be regenerated in any wallet that
222
- supports password login — most conveniently in bts.exchange.
217
+ Other wallets hide the key behind encryption (trade.xbts.io, BeetVault) or a
218
+ connected wallet app (Astro UI). Fallback in all cases: the **master password /
219
+ secret phrase** — the active key is deterministically derived from it and can
220
+ be regenerated in any wallet that supports password login, most conveniently
221
+ in bts.exchange.
223
222
 
224
223
  ---
225
224
 
@@ -266,10 +265,9 @@ Key answers for your first bot:
266
265
  Keep all other defaults — they are sensible. Prefer **relative values** where
267
266
  possible: dynamic price sources like `"pool"` / `"book"` for `startPrice`,
268
267
  `"ama"` for `gridPrice`, `"2x"`-style multipliers for `minPrice` / `maxPrice`,
269
- and `"100%"`-style percentages for funds (`botFunds`). Relative values rescale
270
- automatically as the market moves; fixed numbers do not. The bot editor
271
- highlights these inputs live: **green** = relative/dynamic (recommended),
272
- **red** = fixed absolute value.
268
+ and percentage funds (`botFunds`) — they rescale automatically as the market
269
+ moves; fixed numbers do not. The editor highlights this live: **green** =
270
+ relative/dynamic (recommended), **red** = fixed absolute value.
273
271
 
274
272
  The only things worth tuning later:
275
273
 
@@ -279,12 +277,12 @@ The only things worth tuning later:
279
277
  more grid levels and smaller orders, larger increments fewer levels and
280
278
  larger orders. Smaller increments cycle faster — higher profits, but more
281
279
  fees.
282
- - `weightDistribution` — advanced order sizing per side (`{ "sell": …,
283
- "buy": … }`, range `-1` to `2`). Higher weight puts more funds in orders
284
- near the market price; lower weight shifts funds toward the grid edge.
285
- `-1` = super-valley, `0` = valley, `0.5` = neutral, `1` = mountain
286
- (default), `2` = super-mountain — the bot editor shows this scale live.
287
- Leave it at the default `{ "sell": 1.0, "buy": 1.0 }` for your first bot.
280
+ - `weightDistribution` — advanced order sizing per side
281
+ (`{ "sell": …, "buy": … }`, range `-1`–`2`): higher = more funds in orders
282
+ near the market price, lower = shifted toward the grid edge. `-1` =
283
+ super-valley, `0` = valley, `0.5` = neutral, `1` = mountain (default),
284
+ `2` = super-mountain — shown live in the editor. Leave the default
285
+ `{ "sell": 1.0, "buy": 1.0 }` for your first bot.
288
286
  - `minPrice` / `maxPrice` — grid bounds. Once AMA is active, tighten them
289
287
  around the market's maximum expected volatility instead of a wide range.
290
288
  - `gridPrice` — set it to `"ama"` so the market adapter centers the grid on the
@@ -316,10 +314,10 @@ For AMA pricing, enable the market adapter once:
316
314
  dexbot white
317
315
  ```
318
316
 
319
- This writes `profiles/market_adapter_whitelist.json` for your AMA bot so it
320
- writes live grid files and recalc triggers. New entries enable AMA pricing only;
321
- range scaling stays disabled unless you opt in with `dexbot white --asymmetric-bounds`.
322
- DEXBot2 starts/stops the adapter automatically when active AMA bots exist.
317
+ Writes `profiles/market_adapter_whitelist.json` for your AMA bot so it writes
318
+ live grid files and recalc triggers. New entries enable AMA pricing only;
319
+ range scaling stays off unless you opt in with `dexbot white --asymmetric-bounds`.
320
+ The adapter is started/stopped automatically when active AMA bots exist.
323
321
 
324
322
  ---
325
323
 
@@ -374,6 +372,78 @@ Stop the runtime with `dexbot stop`. `dexbot restart` restarts it.
374
372
 
375
373
  ## Troubleshooting first-run mistakes
376
374
 
375
+ ### "`npm link` says permission denied / `EACCES`"
376
+
377
+ Don't use `sudo npm link` — it creates root-owned files that break later
378
+ builds and runs. With a user-owned Node (nvm, Homebrew) `npm link` needs no
379
+ root. Check first:
380
+
381
+ ```bash
382
+ which node npm # both should point at your user install
383
+ npm prefix -g # must be a directory you own
384
+ ```
385
+
386
+ - **System Node (`/usr/bin`, `/usr/local/bin`)?** Redirect npm to your home
387
+ directory instead of using `sudo`:
388
+
389
+ ```bash
390
+ mkdir -p ~/.npm-global
391
+ npm config set prefix ~/.npm-global
392
+ # add ~/.npm-global/bin to PATH, then re-open the shell
393
+ ```
394
+
395
+ Packages installed before the redirect stay in the old prefix — reinstall
396
+ what you need (`npm i -g dexbot`) and check `which dexbot` points under
397
+ `~/.npm-global`.
398
+
399
+ - **Already ran `sudo npm link`?** Undo it and relink as yourself:
400
+
401
+ ```bash
402
+ sudo npm unlink -g dexbot
403
+ sudo chown -R "$(whoami)" <path-to-your-DEXBot2-checkout>
404
+ cd <path-to-your-DEXBot2-checkout>
405
+ npm install && npm link
406
+ ```
407
+
408
+ Check with `dexbot --help`.
409
+
410
+ ### "npm says it blocked dexbot's install scripts (`prepare` / `postinstall`)"
411
+
412
+ npm 12+ no longer runs lifecycle scripts of installed packages unless they
413
+ are allowlisted (supply-chain hardening,
414
+ [npm/rfcs#868](https://github.com/npm/rfcs/blob/master/text/0868-allow-scripts.md)).
415
+ You'll see `npm warn install-scripts ... blocked` listing dexbot's
416
+ `postinstall` and `prepare`. It shows up with `npm link` because link adds
417
+ your checkout to the **global** install tree as a `file:` dependency — npm
418
+ treats it like any third-party package and blocks its scripts. The warning's
419
+ own advice (`npm install-scripts ls` / `approve`) is a dead end here: in your
420
+ project the checkout is the project root, which npm deliberately never lists
421
+ or approves. Don't chase it.
422
+
423
+ A plain `npm install` is **not** gated — it runs the project's own `prepare`
424
+ directly, so the correct from-source order is:
425
+
426
+ ```bash
427
+ cd <path-to-your-DEXBot2-checkout>
428
+ npm install # runs prepare → builds dist/
429
+ npm link # a blocked prepare here is harmless
430
+ ```
431
+
432
+ If you skipped the install (or want to be sure), run `npm run build`. Bins
433
+ are never gated, so once `dist/` exists the linked `dexbot` works. The
434
+ blocked `postinstall` is only the "DEXBot2 installed!" banner — cosmetic;
435
+ `npm i -g dexbot` may warn about the same banner and that's harmless too
436
+ (the published package ships prebuilt).
437
+
438
+ ### "`Unknown command: dexbot` right after installing/linking"
439
+
440
+ - **The link or build silently failed** — see the two entries above.
441
+ `which dexbot` must point into a directory you own (not `/usr/bin` or
442
+ `/usr/local/bin`).
443
+ - **The shell hasn't noticed the new command yet.** Open a fresh shell
444
+ (`exec fish`, `exec bash`, or reopen the terminal), or run `hash -r` in
445
+ bash.
446
+
377
447
  ### "I imported my key but the bot's orders are rejected"
378
448
 
379
449
  You imported the wrong key type. DEXBot2 needs the account's **active**
@@ -78,6 +78,13 @@ NORMAL → REBALANCING → BROADCASTING → _commitWorkingGrid() → NORMAL
78
78
  - Any master mutation marks the working grid stale.
79
79
  - Commit succeeds only when stale/version/delta guards all pass.
80
80
 
81
+ ### Atomic Boundary Shifts
82
+
83
+ Boundary index changes during divergence correction are atomic with slot-type reassignment:
84
+ `pendingBoundaryIdx` carries boundary changes through the COW pipeline and `manager.boundaryIdx`
85
+ is untouched until `_commitWorkingGrid` completes. This prevents transient mismatches between
86
+ boundary position and slot BUY/SELL roles during blockchain execution.
87
+
81
88
  ## Data Flow
82
89
 
83
90
  ### Normal Rebalance Flow
@@ -215,145 +222,6 @@ syncFromMaster(masterGrid, orderId, masterVersion?) {
215
222
  - Prevents stale data from being committed.
216
223
  - Avoids unnecessary aborts for individual fills.
217
224
 
218
- ## Historical Context: Immutable Master Grid Evolution
219
-
220
- The COW architecture evolved from earlier attempts to achieve grid immutability. The three
221
- eras below describe design evolution over time; they are **distinct from the Build Steps**
222
- numbered 0–9 in the *Implementation Status* section (Build Steps track the construction
223
- work that produced the current code).
224
-
225
- ### Era 0: Original Optimistic State (Pre-v1.0) — ❌ Removed
226
- - **Approach:** Direct in-memory mutation of master grid during planning.
227
- - **Pattern:** Modify master directly → Broadcast to blockchain → No recovery mechanism.
228
- - **Vulnerability:** State corruption during any failure, no isolation between planning and committed state, no rollback capability.
229
- - **Incident:** This approach caused the Price Jump incident — a sudden market move corrupted in-flight grid state because planning mutations were applied directly to the master grid, with no isolation or rollback.
230
-
231
- ### Era 1: Frozen Master State (v1.0) — ✅ Retained as defense-in-depth
232
- - **Approach:** `Object.freeze()` on Maps and order objects.
233
- - **Implementation:** Each `_applyOrderUpdate` creates a new frozen Map via immutable-swap pattern.
234
- - **Advantage:** Runtime enforcement prevents accidental mutations; catches bugs that read `manager.orders` and mutate in-place.
235
- - **Original concern:** Performance overhead, complexity in deep-freezing nested structures.
236
-
237
- ### Era 2: Copy-on-Write (v2.0 — Current) — ✅ Production-ready
238
- - **Approach:** Working copy during planning, atomic swap on blockchain confirmation.
239
- - **Pattern:** Clone → Modify working copy → Broadcast → Commit on success / Discard on failure.
240
- - **Advantage:** True transactional semantics; master never in intermediate state; cleaner than snapshot/rollback.
241
-
242
- The production implementation uses both Era 1 (`Object.freeze`) and Era 2 (COW) as
243
- complementary layers; see **Freeze + COW Hybrid** under *Architecture* above.
244
-
245
- ## Implementation Status
246
-
247
- Build Steps track the construction work that produced the current code; they are distinct
248
- from the *Era* numbering used in *Historical Context*.
249
-
250
- ### Build Step 0: Dependencies ✅
251
- Dependency utilities merged into `modules/order/utils/order.ts` during v0.6.0-patch.19 consolidation.
252
-
253
- ### Build Step 1: Infrastructure ✅
254
- - Created `modules/order/working_grid.ts` — WorkingGrid class.
255
- - Added `COW_PERFORMANCE` thresholds to `modules/constants.ts`.
256
-
257
- ### Build Step 2: Core Integration ✅
258
- - `performSafeRebalance()` → delegates to `_applySafeRebalanceCOW()`.
259
- - `_applySafeRebalanceCOW()` — creates working grid, runs planning, returns result without modifying master.
260
- - `WorkingGrid.buildDelta()` — delta reconciliation against working copy (`modules/order/working_grid.ts:204`, delegating to `utils/order.ts`).
261
- - `_commitWorkingGrid()` — atomic swap from working to master.
262
-
263
- ### Build Step 3: Broadcast Integration ✅
264
- - `updateOrdersOnChainBatch()` — routes to COW path when `workingGrid` present.
265
- - `_updateOrdersOnChainBatchCOW()` — full COW broadcast with commit on success.
266
- - Removed legacy rollback code.
267
-
268
- ### Build Step 4: Fill Handling Strategy ✅
269
- **Decision:** "Selective abort — continue individual fills, block full-side updates."
270
- Full design is documented in the **Fill Handling Strategy** section above.
271
-
272
- ### Build Step 5: Tests ✅
273
- - `tests/test_cow_master_plan.ts` — 11 COW core tests.
274
- - `tests/test_cow_commit_guards.ts` — commit guard regression tests.
275
- - `tests/test_cow_concurrent_fills.ts` — concurrent fill integration tests.
276
- - `tests/test_cow_divergence_correction.ts` — divergence correction COW tests.
277
- - `tests/test_cow_orchestration_fixes.ts` — COW orchestration fixes.
278
- - `tests/test_cow_structural_resync.ts` — structural grid resync tests.
279
- - `tests/test_cow_static_analysis.ts` — static analysis and invariant checks.
280
- - `tests/test_cow_index_mutation_detection.ts` — index mutation detection.
281
- - `tests/test_cow_fund_validation_precision.ts` — fund validation precision tests.
282
- - `tests/test_cow_set_mutation_report.ts` — set mutation report tests.
283
- - `tests/test_sync_lock_routing.ts` — lock routing verification tests.
284
- - `tests/test_working_grid.ts` — WorkingGrid unit tests.
285
-
286
- ### Build Step 6: Divergence & Cache Updates ✅
287
- Divergence checks and cache function updates only execute when no fills are pending. See
288
- **Fill Handling Strategy → Divergence & Cache Checks Blocked During Rebalance**.
289
-
290
- ### Build Step 7: Divergence Correction COW Migration ✅
291
- Migrated `applyGridDivergenceCorrections` from queue-based cancellations to full COW pattern.
292
-
293
- **Atomic Boundary Shifts (Patch 20):** Boundary index changes during divergence correction are
294
- now atomic with slot-type reassignment. The `pendingBoundaryIdx` variable carries boundary
295
- changes through the COW pipeline without touching `manager.boundaryIdx` until
296
- `_commitWorkingGrid` completes. This prevents temporary mismatches between boundary position
297
- and slot BUY/SELL roles during blockchain execution.
298
-
299
- ```javascript
300
- // Boundary changes flow through COW pipeline atomically
301
- const boundarySync = syncBoundaryToFunds(manager); // Returns { changed, newIdx }
302
- if (boundarySync.changed) {
303
- pendingBoundaryIdx = boundarySync.newIdx; // NOT manager.boundaryIdx!
304
- // updateGridFromBlockchainSnapshot reassigns slot types in WorkingGrid
305
- // manager.boundaryIdx updated atomically in _commitWorkingGrid
306
- }
307
- ```
308
-
309
- **Before (Queue-Based):**
310
- ```javascript
311
- // Detect divergence → Queue corrections → Execute batch → Clear queue
312
- // Master grid stays ACTIVE during entire process (race condition)
313
- ordersNeedingPriceCorrection.push({ gridOrder, chainOrderId, isSurplus: true });
314
- // ...later...
315
- await updateOrdersOnChainBatchFn({ ordersToCancel, ordersToPlace, ordersToRotate });
316
- ```
317
-
318
- **After (COW-Based):**
319
- ```javascript
320
- // Detect divergence → Create WorkingGrid → Update sizes in working copy
321
- // → Execute UPDATE/CANCEL/CREATE ops on chain → Commit working grid on success
322
- const workingGrid = new WorkingGrid(manager.orders);
323
- workingGrid.set(orderId, convertToSpreadPlaceholder(order)); // Surplus → virtual slot
324
- const actions = [{ type: COW_ACTIONS.CANCEL, id, orderId }, ...];
325
- const cowResult = { actions, workingGrid, ... };
326
- await updateOrdersOnChainBatch(cowResult); // Commit only on success
327
- ```
328
-
329
- **Key Changes:**
330
- 1. **Surplus orders**: `CANCEL` on-chain and virtualize in working grid.
331
- 2. **State preservation**: `ACTIVE`/`PARTIAL` orders keep their state in working grid.
332
- 3. **No race conditions**: master unchanged until blockchain confirms.
333
- 4. **Unified flow**: same COW pattern as fill rebalancing.
334
-
335
- **Grid Resizing Also Migrated:** `updateGridFromBlockchainSnapshot` now returns a COW result:
336
-
337
- ```javascript
338
- // Before: Modified master grid directly
339
- await Grid.updateGridFromBlockchainSnapshot(manager, 'buy'); // Direct update!
340
-
341
- // After: Returns COW result for batch execution
342
- const cowResult = await Grid.updateGridFromBlockchainSnapshot(manager, 'buy');
343
- await updateOrdersOnChainBatch(cowResult); // Execute via COW
344
- ```
345
-
346
- ### Build Step 8: Benchmarks ✅
347
- - 100 orders: ~0.03ms clone
348
- - 500 orders: ~0.05ms clone
349
- - 1000 orders: ~0.08ms clone
350
- - 5000 orders: ~0.5ms clone
351
-
352
- ### Build Step 9: Cleanup ✅
353
- - Removed snapshot/rollback pattern; `performSafeRebalance()` now delegates to `_applySafeRebalanceCOW()`.
354
- - Removed duplicate `_updateOrdersOnChainBatchCOW`.
355
- - Removed legacy rollback references in `dexbot_class.ts`.
356
-
357
225
  ## Key Methods
358
226
 
359
227
  ### OrderManager (`modules/order/manager.ts`)
@@ -411,78 +279,13 @@ This architecture makes the "Metadata Reinterpretation" bug impossible by ensuri
411
279
 
412
280
  ---
413
281
 
414
- ## Appendix A: Files
415
-
416
- ### Files Created
417
- - `modules/order/working_grid.ts` — WorkingGrid class (COW wrapper with clone/delta/stale tracking).
418
- - Test files listed under **Build Step 5**.
419
- - *Dependency utilities consolidated into `modules/order/utils/order.ts` during v0.6.0-patch.19.*
420
-
421
- ### Files Modified
422
- - `modules/constants.ts` — added `COW_PERFORMANCE` thresholds.
423
- - `modules/order/manager.ts` — added COW methods, immutable master (`Object.freeze`), version tracking.
424
- - `modules/dexbot_class.ts` — wired COW broadcast, removed legacy rollback.
425
- - `modules/order/sync_engine.ts` — uses `_applyOrderUpdate` (lock-free) for all sync paths.
426
- - `modules/order/grid_reconcile.ts` — uses `_applySync` (lock-free) when inside `_gridLock`.
427
- - `modules/order/utils/system.ts` — migrated `applyGridDivergenceCorrections` to full COW pattern.
428
- - `modules/order/grid.ts` — migrated `updateGridFromBlockchainSnapshot` to return COW result instead of modifying master directly.
429
-
430
- ## Appendix B: Test Results
431
-
432
- ```
433
- Core COW Tests (test_cow_master_plan.ts):
434
- ✓ COW-001: Master unchanged on failure
435
- ✓ COW-002: Master updated only on success
436
- ✓ COW-003: Index transfer
437
- ✓ COW-004: Fund recalculation
438
- ✓ COW-005: Order comparison
439
- ✓ COW-006: Delta building
440
- ✓ COW-007: Index validation
441
- ✓ COW-008: Working grid independence
442
- ✓ COW-009: Empty grid handling
443
- ✓ COW-010: Memory stats
444
- ✓ COW-011: No spurious updates on unchanged grid
445
-
446
- Commit Guard Tests (test_cow_commit_guards.ts):
447
- ✓ COW-COMMIT-001: Version mismatch rejection
448
- ✓ COW-COMMIT-002: Empty delta rejection
449
-
450
- Concurrent Fill Tests (test_cow_concurrent_fills.ts):
451
- ✓ COW-FILL-001: Fill during REBALANCING syncs to working grid
452
- ✓ COW-FILL-002: Fill during BROADCASTING syncs to working grid
453
- ✓ COW-FILL-003: Commit rejected after fill during broadcast
454
- ✓ COW-FILL-004: No working grid sync during NORMAL state
455
- ✓ COW-FILL-005: _cloneOrder deep-clones rawOnChain
456
- ✓ COW-FILL-006: _cloneOrder handles missing rawOnChain
457
- ✓ COW-FILL-007: Staleness reason includes phase context
458
-
459
- Divergence Correction Tests (test_cow_divergence_correction.ts):
460
- ✓ Surplus orders are CANCELLED (not UPDATE to size=0)
461
- ✓ Working grid preserves order states (ACTIVE, PARTIAL)
462
- ✓ Orders within target window get size updates
463
- ✓ No duplicate UPDATE/CANCEL overlap for same order
464
-
465
- Stale-Plan & Stack Discipline Tests (v1.4.8):
466
- ✓ test_cow_guard_replan.ts — bounded re-plan from fresh master, boundary-budget
467
- restore, push-marker contract, no double-pop on re-plan failure
468
- ✓ test_cow_stale_slot_guard.ts — slot-id based stale-placement veto,
469
- boundary-only semantics, rotation-UPDATE coverage
470
- ✓ test_cow_commit_guards.ts — empty-action / never-pushed marker contract
471
- ✓ test_uncertain_broadcast.ts — verify-before-retry per op kind, truncated-read
472
- deferral, pending-broadcast protection kept on ambiguous reads
473
- ```
474
-
475
- **Additional Checks:**
476
- - Unchanged grids do not emit global COW `update` actions.
477
- - Missing on-chain `ACTIVE` order with `orderId` appears in `filledOrders` from open-order sync.
478
-
479
- ## Appendix C: Constants Added (`modules/constants.ts`)
282
+ ## Appendix: COW Constants (`modules/constants.ts`)
480
283
 
481
284
  ### COW Performance Thresholds
482
285
  - `COW_PERFORMANCE.MAX_REBALANCE_PLANNING_MS` — planning-phase duration above which a slow-plan warning is logged (100ms).
483
286
  - `COW_PERFORMANCE.GRID_MEMORY_WARNING` — working grid size (bytes) that triggers a memory warning (5,000).
484
287
  - `COW_PERFORMANCE.WORKING_GRID_BYTES_PER_ORDER` — estimated memory per order (500 bytes).
485
- - `COW_PERFORMANCE.MAX_OPS_PER_BROADCAST` — *removed*; the per-broadcast operation cap is now derived from the grid gap-slot count (`DEXBot._getGapSlotBatchSize`); larger batches are split into sequential broadcasts.
288
+ - `COW_PERFORMANCE.MAX_OPS_PER_BROADCAST` — *removed*; the per-broadcast operation cap is now derived from the grid gap-slot count + 1 (`DEXBot._getGapSlotBatchSize`); larger batches are split into sequential broadcasts.
486
289
 
487
290
  ### Pipeline Timing
488
291
  - `PIPELINE_TIMING.RECOVERY_DECAY_FALLBACK_MS` — recovery decay fallback (180 seconds).
@@ -491,7 +294,7 @@ Stale-Plan & Stack Discipline Tests (v1.4.8):
491
294
  - `GRID_LIMITS.RELATIVE_ORDER_UPDATE_THRESHOLD_PERCENT` — relative threshold (%) for in-memory COW order equality checks.
492
295
  - `TIMING.LOCK_REFRESH_MIN_MS` — minimum lock refresh interval (250ms).
493
296
 
494
- ## Appendix D: Validation Gates
297
+ ## Appendix: Validation Gates
495
298
 
496
299
  Run these tests before promotion:
497
300
  - `node dist/tests/test_engine_integration.js`