@paraswap/dex-lib 4.0.3-Cables.1 → 4.0.3
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/.vscode/launch.json +53 -0
- package/.vscode/settings.json +2 -0
- package/.vscode/tasks.json +15 -0
- package/build/abi/{integral/pool.json → inception/inception-ineth-pool.json} +558 -537
- package/build/abi/inception/inception-ratio-feed.json +329 -0
- package/build/abi/inception/inception-vault.json +991 -0
- package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
- package/build/abi/usual-m-smart-m/usualM.abi.json +483 -0
- package/build/abi/usual-m-usd0/usualCollateralDao.abi.json +681 -0
- package/build/abi/usual-m-wrapped-m/usualM.abi.json +509 -0
- package/build/abi/{integral/relayer.json → wombat/pool.json} +474 -721
- package/build/dex/aave-v1/aave-v1.d.ts +2 -1
- package/build/dex/aave-v1/aave-v1.js +23 -0
- package/build/dex/aave-v1/aave-v1.js.map +1 -1
- package/build/dex/aave-v2/tokens-avalanche.json +44 -0
- package/build/dex/aave-v2/tokens-mainnet.json +188 -0
- package/build/dex/aave-v2/tokens-polygon.json +44 -0
- package/build/dex/algebra/algebra.js +2 -31
- package/build/dex/algebra/algebra.js.map +1 -1
- package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
- package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
- package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
- package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +34 -0
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +406 -0
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +1 -0
- package/build/dex/bebop/bebop.js +1 -1
- package/build/dex/bebop/bebop.js.map +1 -1
- package/build/dex/cables/cables.d.ts +2 -4
- package/build/dex/cables/cables.js +154 -89
- package/build/dex/cables/cables.js.map +1 -1
- package/build/dex/cables/constants.js +1 -1
- package/build/dex/cables/constants.js.map +1 -1
- package/build/dex/cables/rate-fetcher.js +10 -26
- package/build/dex/cables/rate-fetcher.js.map +1 -1
- package/build/dex/cables/types.d.ts +28 -15
- package/build/dex/cables/types.js +13 -2
- package/build/dex/cables/types.js.map +1 -1
- package/build/dex/dexalot/dexalot.js.map +1 -1
- package/build/dex/inception/config.d.ts +4 -0
- package/build/dex/inception/config.js +109 -0
- package/build/dex/inception/config.js.map +1 -0
- package/build/dex/inception/inception-event-pool.d.ts +16 -0
- package/build/dex/inception/inception-event-pool.js +49 -0
- package/build/dex/inception/inception-event-pool.js.map +1 -0
- package/build/dex/inception/inception.d.ts +43 -0
- package/build/dex/inception/inception.js +180 -0
- package/build/dex/inception/inception.js.map +1 -0
- package/build/dex/inception/tokens.d.ts +9 -0
- package/build/dex/inception/tokens.js +28 -0
- package/build/dex/inception/tokens.js.map +1 -0
- package/build/dex/inception/types.d.ts +22 -0
- package/build/dex/inception/types.js +3 -0
- package/build/dex/inception/types.js.map +1 -0
- package/build/dex/inception/utils.d.ts +7 -0
- package/build/dex/inception/utils.js +58 -0
- package/build/dex/inception/utils.js.map +1 -0
- package/build/dex/index.js +0 -2
- package/build/dex/index.js.map +1 -1
- package/build/dex/jarvis.d.ts +2 -1
- package/build/dex/jarvis.js +58 -0
- package/build/dex/jarvis.js.map +1 -1
- package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
- package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
- package/build/dex/maker-psm/scripts/validate-state.js +185 -0
- package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
- package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
- package/build/dex/platypus/platypus.d.ts +2 -1
- package/build/dex/platypus/platypus.js +45 -0
- package/build/dex/platypus/platypus.js.map +1 -1
- package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
- package/build/dex/stable-pool.js +1 -8
- package/build/dex/stable-pool.js.map +1 -1
- package/build/dex/swaap-v1/swaap-v1.d.ts +2 -1
- package/build/dex/swaap-v1/swaap-v1.js +14 -0
- package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +1 -0
- package/build/dex/usual/types.d.ts +13 -0
- package/build/dex/usual/types.js +3 -0
- package/build/dex/usual/types.js.map +1 -0
- package/build/dex/usual/usual-bond.d.ts +18 -0
- package/build/dex/usual/usual-bond.js +52 -0
- package/build/dex/usual/usual-bond.js.map +1 -0
- package/build/dex/usual/usual-m-smart-m.d.ts +17 -0
- package/build/dex/usual/usual-m-smart-m.js +50 -0
- package/build/dex/usual/usual-m-smart-m.js.map +1 -0
- package/build/dex/usual/usual-m-usd0.d.ts +17 -0
- package/build/dex/usual/usual-m-usd0.js +51 -0
- package/build/dex/usual/usual-m-usd0.js.map +1 -0
- package/build/dex/usual/usual-m-wrapped-m.d.ts +17 -0
- package/build/dex/usual/usual-m-wrapped-m.js +50 -0
- package/build/dex/usual/usual-m-wrapped-m.js.map +1 -0
- package/build/dex/usual/usual.d.ts +27 -0
- package/build/dex/usual/usual.js +125 -0
- package/build/dex/usual/usual.js.map +1 -0
- package/build/dex/usual-m-smart-m/config.d.ts +3 -0
- package/build/dex/usual-m-smart-m/config.js +13 -0
- package/build/dex/usual-m-smart-m/config.js.map +1 -0
- package/build/dex/usual-m-smart-m/types.d.ts +7 -0
- package/build/dex/usual-m-smart-m/types.js +3 -0
- package/build/dex/usual-m-smart-m/types.js.map +1 -0
- package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +35 -0
- package/build/dex/usual-m-smart-m/usual-m-smart-m.js +161 -0
- package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +1 -0
- package/build/dex/usual-m-usd0/config.d.ts +3 -0
- package/build/dex/usual-m-usd0/config.js +14 -0
- package/build/dex/usual-m-usd0/config.js.map +1 -0
- package/build/dex/usual-m-usd0/types.d.ts +8 -0
- package/build/dex/usual-m-usd0/types.js +3 -0
- package/build/dex/usual-m-usd0/types.js.map +1 -0
- package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +35 -0
- package/build/dex/usual-m-usd0/usual-m-usd0.js +159 -0
- package/build/dex/usual-m-usd0/usual-m-usd0.js.map +1 -0
- package/build/dex/zerox/index.d.ts +4 -26
- package/build/dex/zerox/index.js +50 -42
- package/build/dex/zerox/index.js.map +1 -1
- package/build/dex/zerox/types.d.ts +29 -0
- package/build/dex/zerox/types.js +8 -1
- package/build/dex/zerox/types.js.map +1 -1
- package/build/executor/Executor01BytecodeBuilder.js +6 -11
- package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
- package/build/executor/Executor02BytecodeBuilder.js +6 -11
- package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
- package/build/executor/Executor03BytecodeBuilder.js +6 -11
- package/build/executor/Executor03BytecodeBuilder.js.map +1 -1
- package/build/lib/pub-sub.d.ts +35 -0
- package/build/lib/pub-sub.js +106 -0
- package/build/lib/pub-sub.js.map +1 -0
- package/build/types.d.ts +0 -1
- package/package.json +1 -1
- package/src/dex/algebra/algebra.ts +9 -48
- package/src/dex/bebop/bebop.ts +1 -1
- package/src/dex/dexalot/dexalot.ts +0 -1
- package/src/dex/index.ts +0 -2
- package/src/executor/Executor01BytecodeBuilder.ts +11 -15
- package/src/executor/Executor02BytecodeBuilder.ts +9 -13
- package/src/executor/Executor03BytecodeBuilder.ts +9 -16
- package/src/types.ts +0 -1
- package/tests/constants-e2e.ts +2 -2
- package/.idea/aws.xml +0 -17
- package/.idea/codeStyles/Project.xml +0 -19
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/paraswap-dex-lib.iml +0 -9
- package/.idea/prettier.xml +0 -7
- package/.idea/vcs.xml +0 -6
- package/build/abi/integral/factory.json +0 -333
- package/build/abi/integral/oracle.json +0 -501
- package/build/dex/fluid-dex/fluid-dex-generate-pool.d.ts +0 -49
- package/build/dex/fluid-dex/fluid-dex-generate-pool.js +0 -104
- package/build/dex/fluid-dex/fluid-dex-generate-pool.js.map +0 -1
- package/build/dex/integral/config.d.ts +0 -4
- package/build/dex/integral/config.js +0 -20
- package/build/dex/integral/config.js.map +0 -1
- package/build/dex/integral/context.d.ts +0 -40
- package/build/dex/integral/context.js +0 -158
- package/build/dex/integral/context.js.map +0 -1
- package/build/dex/integral/integral-factory.d.ts +0 -24
- package/build/dex/integral/integral-factory.js +0 -95
- package/build/dex/integral/integral-factory.js.map +0 -1
- package/build/dex/integral/integral-pool.d.ts +0 -50
- package/build/dex/integral/integral-pool.js +0 -149
- package/build/dex/integral/integral-pool.js.map +0 -1
- package/build/dex/integral/integral-pricing.d.ts +0 -18
- package/build/dex/integral/integral-pricing.js +0 -114
- package/build/dex/integral/integral-pricing.js.map +0 -1
- package/build/dex/integral/integral-relayer.d.ts +0 -42
- package/build/dex/integral/integral-relayer.js +0 -192
- package/build/dex/integral/integral-relayer.js.map +0 -1
- package/build/dex/integral/integral-token.d.ts +0 -27
- package/build/dex/integral/integral-token.js +0 -59
- package/build/dex/integral/integral-token.js.map +0 -1
- package/build/dex/integral/integral.d.ts +0 -41
- package/build/dex/integral/integral.js +0 -376
- package/build/dex/integral/integral.js.map +0 -1
- package/build/dex/integral/types.d.ts +0 -85
- package/build/dex/integral/types.js +0 -9
- package/build/dex/integral/types.js.map +0 -1
- package/build/dex/integral/utils-e2e.d.ts +0 -9
- package/build/dex/integral/utils-e2e.js +0 -131
- package/build/dex/integral/utils-e2e.js.map +0 -1
- package/build/dex/integral/utils.d.ts +0 -17
- package/build/dex/integral/utils.js +0 -94
- package/build/dex/integral/utils.js.map +0 -1
- package/build/dex/trader-joe-v2.1/optimizer.d.ts +0 -2
- package/build/dex/trader-joe-v2.1/optimizer.js +0 -47
- package/build/dex/trader-joe-v2.1/optimizer.js.map +0 -1
- package/src/abi/cables/CablesMainnetRFQ.json +0 -1083
- package/src/dex/cables/cables-e2e.test.ts +0 -207
- package/src/dex/cables/cables-integration.test.ts +0 -391
- package/src/dex/cables/cables.ts +0 -824
- package/src/dex/cables/config.ts +0 -13
- package/src/dex/cables/constants.ts +0 -35
- package/src/dex/cables/rate-fetcher.ts +0 -212
- package/src/dex/cables/types.ts +0 -113
- package/src/dex/cables/validators.test.ts +0 -151
- package/src/dex/cables/validators.ts +0 -61
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Executor02BytecodeBuilder.js","sourceRoot":"","sources":["../../src/executor/Executor02BytecodeBuilder.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAYhC,mCAAsD;AACtD,oCAAwC;AAExC,uEAImC;AACnC,2CASqB;AAErB,MAAM,EACJ,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,GACvE,GAAG,eAAM,CAAC;AAcX;;GAEG;AACH,MAAa,yBAA0B,SAAQ,iDAG9C;IACC,IAAI,GAAG,iBAAS,CAAC,GAAG,CAAC;IACrB;;;;;;;;;;;;OAYG;IACO,oBAAoB,CAC5B,UAAuB,EACvB,cAAuC,EACvC,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,kBAA0B,EAC1B,iBAAyC;QAEzC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAC3B,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,kCAAkC,EAClC,qCAAqC,EACrC,qBAAqB,GACtB,GAAG,aAAa,CAAC;QAElB,MAAM,QAAQ,GAAG,cAAc,IAAI,QAAQ,IAAI,iBAAiB,EAAE,OAAO,CAAC;QAC1E,MAAM,UAAU,GACd,cAAc,IAAI,SAAS,IAAI,iBAAiB,EAAE,QAAQ,CAAC;QAC7D,MAAM,YAAY,GAChB,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,kBAAU,CAAC,OAAO,CAAC;QAExE,MAAM,4BAA4B,GAChC,qCAAqC;YACrC,CAAC,YAAY,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAExD,IAAI,OAAO,GAAG,4BAA4B;YACxC,CAAC,CAAC,YAAI,CAAC,qDAAqD;YAC5D,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,SAAS;QACpE,IAAI,WAAW,GACb,YAAI,CAAC,qDAAqD,CAAC,CAAC,IAAI;QAElE,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,OAAO,GAAG,mBAAmB;gBAC3B,CAAC,CAAC,YAAI,CAAC,2DAA2D,CAAC,IAAI;gBACvE,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,CAAC,IAAI;QACjF,CAAC;aAAM,IAAI,SAAS,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,oDAAoD;gBAC3D,CAAC,CAAC,YAAI,CAAC,+CAA+C,CAAC,CAAC,SAAS;QACrE,CAAC;aAAM,IAAI,CAAC,mBAAmB,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,EAAE,CAAC;YAC7D,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,0DAA0D;gBACjE,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,CAAC,UAAU;QAC5E,CAAC;QAED,iEAAiE;QACjE,0EAA0E;QAC1E,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAI,CAAC,gEAAgE,CAAC;QAC1E,CAAC;QAED,OAAO;YACL,OAAO;YACP,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,uBAAuB,CAC/B,UAAuB,EACvB,cAAuC,EACvC,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,kBAA0B,EAC1B,iBAAyC;QAEzC,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEpC,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAEzD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACrC,MAAM,sBAAsB,GAAG,IAAI,CAAC,oCAAoC,CACtE,UAAU,EACV,UAAU,EACV,IAAI,CACL,CAAC;QAEF,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,uDAAuD;QAC5G,MAAM,WAAW,GAAG,SAAS,KAAK,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,CAAC,WAAW,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAExE,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,kCAAkC,EAClC,qCAAqC,EACrC,WAAW,EACX,kCAAkC,EAClC,qBAAqB,GACtB,GAAG,aAAa,CAAC;QAElB,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,UAAU,GACd,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC;YACtE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,YAAY,GAChB,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,kBAAU,CAAC,OAAO,CAAC;QAExE,MAAM,4BAA4B,GAChC,qCAAqC;YACrC,CAAC,YAAY,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAExD,MAAM,mBAAmB,GACvB,CAAC,YAAY;YACX,oBAAoB;YACpB,CAAC,sBAAsB;YACvB,CAAC,UAAU,CAAC;YACd,CAAC,mBAAmB,CAAC;QAEvB,MAAM,UAAU,GACd,cAAc,IAAI,SAAS,IAAI,iBAAiB,EAAE,QAAQ,CAAC;QAE7D,MAAM,WAAW,GAAG,QAAQ,IAAI,CAAC,cAAc,CAAC;QAChD,MAAM,mBAAmB,GAAG,SAAS,IAAI,CAAC,cAAc,CAAC;QAEzD,MAAM,0BAA0B,GAC9B,CAAC,UAAU,IAAI,CAAC,sBAAsB,CAAC;YACvC,CAAC,oBAAoB,IAAI,CAAC,sBAAsB,IAAI,CAAC,UAAU,CAAC,CAAC;QAEnE,IAAI,OAAa,CAAC;QAClB,IAAI,WAAW,GACb,YAAI,CAAC,qDAAqD,CAAC,CAAC,IAAI;QAElE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,uBAAuB,GAC3B,4BAA4B,IAAI,CAAC,kCAAkC,CAAC;YACtE,OAAO,GAAG,mBAAmB;gBAC3B,CAAC,CAAC,uBAAuB;oBACvB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;oBAC5E,CAAC,CAAC,YAAI,CAAC,wFAAwF,CAAC,KAAK;gBACvG,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,uBAAuB;wBACvB,CAAC,CAAC,YAAI,CAAC,2DAA2D,CAAC,IAAI;wBACvE,CAAC,CAAC,YAAI,CAAC,mFAAmF,CAAC,KAAK;oBAClG,CAAC,CAAC,uBAAuB;wBACzB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;wBAC5E,CAAC,CAAC,YAAI,CAAC,mFAAmF,CAAC,CAAC,KAAK;QACrG,CAAC;aAAM,IAAI,mBAAmB,EAAE,CAAC;YAC/B,OAAO;gBACL,0BAA0B,IAAI,mBAAmB;oBAC/C,CAAC,CAAC,4BAA4B,IAAI,mBAAmB;wBACnD,CAAC,CAAC,YAAI,CAAC,oDAAoD,CAAC,IAAI;wBAChE,CAAC,CAAC,YAAI,CAAC,+CAA+C,CAAC,IAAI;oBAC7D,CAAC,CAAC,4BAA4B,IAAI,mBAAmB;wBACrD,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,IAAI;wBACjE,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,IAAI;QACnE,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,0BAA0B,IAAI,mBAAmB;oBAC/C,CAAC,CAAC,4BAA4B;wBAC5B,CAAC,CAAC,YAAI,CAAC,0DAA0D,CAAC,IAAI;wBACtE,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,KAAK;oBACpE,CAAC,CAAC,4BAA4B;wBAC9B,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,IAAI;wBACjE,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,IAAI;QACnE,CAAC;QAED,iEAAiE;QACjE,0EAA0E;QAC1E,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAI,CAAC,gEAAgE,CAAC;QAC1E,CAAC;QAED,OAAO;YACL,OAAO;YACP,WAAW;SACZ,CAAC;IACJ,CAAC;IAES,gBAAgB,CACxB,MAAsD;QAEtD,MAAM,EACJ,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,SAAS,EACT,IAAI,GACL,GAAG,MAAM,CAAC;QAEX,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,GAClE,aAAa,CAAC;QAEhB,MAAM,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAC9D,UAAU,EACV,cAAc,CACf,CAAC;QAEF,MAAM,eAAe,GACnB,aAAa,CAAC,eAAe,KAAK,SAAS,IAAI,CAAC,uBAAuB,CAAC,qEAAqE;YAC3I,CAAC,CAAC,aAAa,CAAC,eAAe;YAC/B,CAAC,CAAC,qCAAyB,CAAC;QAEhC,MAAM,sBAAsB,GAAG,IAAI,CAAC,oCAAoC,CACtE,UAAU,EACV,UAAU,EACV,IAAI,CACL,CAAC;QACF,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,8BAA8B,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAE1D,MAAM,eAAe,GACnB,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,cAAc;YAC3C,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;YACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAElC,MAAM,gBAAgB,GACpB,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,IAAI,cAAc;YAC5C,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;YACpC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAEnC,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,eAAe,CAChB,CAAC;QAEF,IACE,sBAAsB;YACtB,CAAC,8BAA8B,IAAI,CAAC,yBAAyB,CAAC,EAC9D,CAAC;YACD,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,gBAAgB,CACjB,CAAC;QACJ,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,8BAA8B,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACjE,MAAM,kBAAkB,GAAG,YAAY;iBACpC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC/C,YAAY,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,aAAa,CAAC,mBAAmB,EAAE,CAAC;gBACtC,aAAa,GAAG,aAAa,CAAC,mBAAmB,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CACpD,CAAC,SAAS,CAAC,EACX,CAAC,YAAY,CAAC,SAAS,CAAC,CACzB,CAAC;gBACF,MAAM,eAAe,GAAG,YAAY;qBACjC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;qBACjB,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;gBAEzC,aAAa;oBACX,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CACvB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,cAAc,IAAI,kBAAU,CAAC,OAAO,EACpC,IAAI,EACJ,SAAS,EACT,eAAe,CAChB,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAC1B,UAAuB,EACvB,cAAuC,EACvC,QAAgB,EAChB,UAAkB,EAClB,IAAiB,EACjB,kBAA0B,EAC1B,0BAAmC,EACnC,qCAAqC,GAAG,KAAK;QAE7C,IAAI,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEpC,IAAI,+BAAwC,CAAC;QAC7C,IAAI,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5B,+BAA+B;gBAC7B,IAAA,oBAAY,EAAC,eAAe,CAAC;oBAC7B,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,cAAc;wBAChD,CAAC,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,cAAc;4BACjD,qCAAqC,CAAC,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,+BAA+B;gBAC7B,IAAA,oBAAY,EAAC,eAAe,CAAC;oBAC7B,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACvE,CAAC;QAED,IACE,+BAA+B;YAC/B,IAAA,oBAAY,EAAC,eAAe,CAAC;YAC7B,CAAC,0BAA0B,EAC3B,CAAC;YACD,eAAe;gBACb,kBAAkB,GAAG,CAAC,CAAC;oBACrB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACzD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC;QAC7D,CAAC;QAED,IAAI,sBAAsB,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QAC3D,IAAI,WAAmB,CAAC;QAExB,IAAI,UAAU,KAAK,wCAA4B,EAAE,CAAC;YAChD,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,IAAI,IAAA,oBAAY,EAAC,sBAAsB,CAAC,EAAE,CAAC;YAChD,WAAW,GAAG,oDAAwC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,MAAM,iBAAiB,GAAG,QAAQ;iBAC/B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAErD,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EACxC;YACE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,gBAAgB;YAClE,WAAW,EAAE,cAAc;YAC3B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa;YACnE,QAAQ,EAAE,gBAAgB;SAC3B,CACF,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAAC,YAAoB;QACpD,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EACpD;YACE,0BAAc,EAAE,gBAAgB;YAChC,yBAAa,EAAE,oBAAoB;YACnC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YAC/C,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YACxE,YAAY,EAAE,WAAW;SAC1B,CACF,CAAC;IACJ,CAAC;IAEO,6BAA6B,CACnC,qBAA6B,EAC7B,aAAqB,EACrB,YAAoB,EACpB,IAAU;QAEV,OAAO,YAAY,CACjB;YACE,SAAS;YACT,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,OAAO;SACR,EACD;YACE,0BAAc,EAAE,aAAa;YAC7B,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,sBAAsB;YACpF,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB;YACvD,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,eAAe;YACrD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,kBAAkB;YAC7C,UAAU,CAAC,OAAO,CAAC,kBAAU,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU;YACzE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO;YACrC,qBAAqB,EAAE,iBAAiB;SACzC,CACF,CAAC;IACJ,CAAC;IAEO,8BAA8B,CACpC,UAAuB,EACvB,UAAkB,EAClB,cAAuC,EACvC,IAAiB,EACjB,YAAoB,EACpB,IAAU;QAEV,MAAM,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;QAE1D,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,oBAAoB,CAAC,CAAC;QAErD,IAAI,2BAA2B,GAAG,KAAK,CAAC;QACxC,IAAI,gCAAgC,GAAG,KAAK,CAAC;QAC7C,IAAI,YAAoB,CAAC;QAEzB,IAAI,SAAS,EAAE,CAAC;YACd,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAC5D,UAAU,EACV,IAAI,EACJ,cAAc,CACf,CAAC;YACF,gCAAgC,GAAG,IAAI,CAAC,gCAAgC,CACtE,UAAU,EACV,IAAI,EACJ,cAAc,CACf,CAAC;QACJ,CAAC;QAED,IACE,SAAS;YACT,gCAAgC;YAChC,CAAC,2BAA2B,EAC5B,CAAC;YACD,YAAY,GAAG,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,kBAAkB,GAAG,IAAI;iBAC5B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CACN,CAAC,SAAS;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE;gBACpE,CAAC,CAAC,oBAAoB,CAAC,WAAW,EAAE,CACrC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CACpB,CAAC;YAEJ,YAAY,GAAG,kBAAkB,GAAG,CAAC,GAAG,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAwC;QAE7F,OAAO,IAAI,CAAC,6BAA6B,CACvC,IAAI,EACJ,aAAa,EACb,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EACnC,IAAI,CACL,CAAC;IACJ,CAAC;IAEO,+BAA+B,CACrC,UAAuB,EACvB,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,cAAuC,EACvC,KAAsD,EACtD,0BAAsD,EACtD,cAAc,GAAG,IAAI,EACrB,oBAAoB,GAAG,KAAK,EAC5B,iBAAyC,EACzC,oBAA8B,EAC9B,sBAAgC;QAEhC,MAAM,YAAY,GAChB,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YACjC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;QAC7C,IAAI,oBAAoB,GAAG,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAE3D,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAE/B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;gBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC;oBAChC,kBAAkB,GAAG,sBAAsB,CAAC;gBAC9C,CAAC;gBACD,sBAAsB,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,gBAAgB,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAE5D,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACxC,UAAU;YACV,UAAU;YACV,SAAS;YACT,iBAAiB;YACjB,cAAc;YACd,kBAAkB;YAClB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC;YACrC,YAAY;SACb,CAAC,CAAC;QAEH,IAAI,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,gBAAgB,CAAC,qBAAqB,CACvC,CAAC;YACF,oBAAoB,GAAG,SAAS,CAAC,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,oBAAoB,GAAG,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,UAAU,GACd,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,kBAAkB,KAAK,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QAEhE,IAAI,gBAAgB,CAAC,0BAA0B,EAAE,CAAC;YAChD,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CACjD,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE;gBACjD,gBAAgB,CAAC,0BAA0B;gBAC3C,YAAY,CAAC,SAAS;aACvB,CAAC,EACF,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;gBACzB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;gBACvC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAChC,CAAC;YAEF,oBAAoB,GAAG,SAAS,CAAC;gBAC/B,gBAAgB;gBAChB,oBAAoB;aACrB,CAAC,CAAC;QACL,CAAC;QAED,IACE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;YAC5B,CAAC,gBAAgB,CAAC,0BAA0B;YAC5C,CAAC,gBAAgB,CAAC,YAAY;YAC9B,gBAAgB,CAAC,WAAW,EAC5B,CAAC;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,gBAAgB,CAAC,WAAW,CAAC,MAAM,EACnC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAClC,gBAAgB,CAAC,eAAe,CACjC,CAAC;YAEF,oBAAoB,GAAG,SAAS,CAAC,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,gBAAgB,CAAC,cAAc,EAAE,CAAC;YACpC,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,IAAI,mBAAmB,GAAG,IAAI,CAAC;gBAC/B,IACE,gBAAgB,CAAC,WAAW;oBAC5B,CAAC,gBAAgB,CAAC,0BAA0B;oBAC5C,CAAC,gBAAgB,CAAC,YAAY,EAC9B,CAAC;oBACD,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAC7C,gBAAgB,CAAC,WAAW,CAAC,MAAM,EACnC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAClC,gBAAgB,CAAC,eAAe,CACjC,CAAC;gBACJ,CAAC;gBAED,MAAM,cAAc,GAAG,SAAS,KAAK,CAAC,CAAC;gBACvC,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,QAAQ,GACZ,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;oBACxD,MAAM,gCAAgC,GACpC,IAAI,CAAC,gCAAgC,CACnC,UAAU,EACV,QAAQ,EACR,cAAc,CACf,CAAC;oBACJ,QAAQ,GAAG,CAAC,gCAAgC,CAAC;gBAC/C,CAAC;gBAED,IAAI,eAAe,GAAG,IAAI,CAAC;gBAC3B,IACE,iBAAiB;oBACjB,iBAAiB,CAAC,OAAO;oBACzB,CAAC,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,cAAc,CAAC;oBAC3D,cAAc;oBACd,CAAC,0BAA0B,CACzB,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAClD;oBACD,CAAC,QAAQ,EACT,CAAC;oBACD,eAAe,GAAG,IAAI,CAAC,oBAAoB,CACzC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAClC,YAAI,CAAC,2DAA2D,CACjE,CAAC;oBACF,0BAA0B,CACxB,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAClD,GAAG,IAAI,CAAC;gBACX,CAAC;gBAED,oBAAoB,GAAG,SAAS,CAAC;oBAC/B,mBAAmB;oBACnB,eAAe;oBACf,oBAAoB;iBACrB,CAAC,CAAC;YACL,CAAC;YAED,IACE,iBAAiB;gBACjB,iBAAiB,CAAC,QAAQ;gBAC1B,CAAC,CAAC,CAAC,sBAAsB,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxD,CAAC,sBAAsB;wBACrB,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;wBAC5B,IAAI,CAAC,gCAAgC,CACnC,UAAU,EACV,IAAI,EACJ,cAAc,CACf,CAAC,CAAC,EACP,CAAC;gBACD,IAAI,gBAAgB,GAAG,IAAI,CAAC;gBAE5B,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,WAAW,CAAC;gBACvD,MAAM,sBAAsB,GAC1B,YAAY;oBACZ,4DAA4D;oBAC5D,cAAc,CAAC,WAAW,CACxB,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,CAC5B,aAAa,CAAC,cAAc,KAAK,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EACnE,CAAC,CAAC,CACH,KAAK,kBAAkB,CAAC;gBAE3B,IACE,iBAAiB;oBACjB,sBAAsB,CAAC,8DAA8D;kBACrF,CAAC;oBACD,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAC5C,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CACpC,CAAC;gBACJ,CAAC;gBAED,oBAAoB,GAAG,SAAS,CAAC;oBAC/B,oBAAoB;oBACpB,gBAAgB;iBACjB,CAAC,CAAC;gBAEH,IAAI,sBAAsB,IAAI,iBAAiB,EAAE,CAAC;oBAChD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;oBACtE,oBAAoB,GAAG,SAAS,CAAC;wBAC/B,oBAAoB;wBACpB,wBAAwB;qBACzB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,qCAAqC,GAAG,KAAK,CAAC;QAClD,IACE,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;YAC3B,iBAAiB;YACjB,iBAAiB,CAAC,QAAQ;YAC1B,CAAC,gBAAgB,CAAC,cAAc,EAChC,CAAC;YACD,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACvE,IAAI,4BAA4B,GAAY,KAAK,CAAC;YAElD,IAAI,QAAQ,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACtC,4BAA4B,GAAG,IAAI,CAAC,4BAA4B,CAC9D,UAAU,EACV,QAAQ,EACR,cAAc,CACf,CAAC;YACJ,CAAC;YAED,IAAI,oBAAoB,IAAI,4BAA4B,EAAE,CAAC;gBACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CACpC,CAAC;gBAEF,oBAAoB,GAAG,SAAS,CAAC;oBAC/B,gBAAgB;oBAChB,oBAAoB;iBACrB,CAAC,CAAC;gBACH,qCAAqC,GAAG,IAAI,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IACE,UAAU;YACV,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,mBAAmB;YACvD,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC7B,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EACvC,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CACjD,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE;gBACjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB;gBAC5C,YAAY,CAAC,UAAU;aACxB,CAAC,EACF,IAAI,CAAC,SAAS,CACf,CAAC;YAEF,oBAAoB,GAAG,SAAS,CAAC;gBAC/B,oBAAoB;gBACpB,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;QAED,IACE,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,mBAAmB;YACvD,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,MAAM;YACN,mGAAmG;YACnG,CAAC,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,cAAc,CAAC,EAC7D,CAAC;YACD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;YACtE,oBAAoB,GAAG,SAAS,CAAC;gBAC/B,oBAAoB;gBACpB,wBAAwB;aACzB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,oBAAoB,CAC9B,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,YAAY,CAAC,OAAO,EACpB,IAAI,EACJ,kBAAkB,EAClB,0BAA0B,CACxB,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAClD,EACD,qCAAqC,CACtC,CAAC;QACJ,CAAC;QAED,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAEO,qBAAqB,CAC3B,QAAgB,EAChB,iBAAyC,EACzC,qBAAqB,GAAG,KAAK;QAE7B,IAAI,iBAAiB,EAAE,OAAO,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,qBAAqB;gBACpC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAC5B,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAClC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,CACnE;gBACH,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC;YAEvC,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAClE,QAAQ,EACR,qBAAqB;gBACnB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;gBAC5E,CAAC,CAAC,YAAI,CAAC,2DAA2D,EAAE,IAAI;YAC1E,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9B,CAAC;YAEF,OAAO,SAAS,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,4BAA4B,CAClC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,GAAG,iBAAiB,CAAC;oBAC5B,CAAC;oBACD,iBAAiB,EAAE,CAAC;gBACtB,CAAC,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,2BAA2B,CACjC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACzC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACxB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBAC1C,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;4BACzB,KAAK,GAAG,iBAAiB,CAAC;wBAC5B,CAAC;wBACD,iBAAiB,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAEO,mCAAmC,CACzC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACxB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBAC1C,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;4BACzB,KAAK,GAAG,iBAAiB,CAAC;wBAC5B,CAAC;wBACD,iBAAiB,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uCAAuC,CAC7C,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACxB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBAC1C,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;4BACzB,KAAK,GAAG,iBAAiB,CAAC;wBAC5B,CAAC;wBACD,iBAAiB,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,CAAC,gBAAgB,CAAC,cAAc,IAAI,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gCAAgC,CACtC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa;aACtB,GAAG,CAAC,KAAK,CAAC,EAAE;YACX,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,GAAG,iBAAiB,CAAC;oBAC5B,CAAC;oBACD,iBAAiB,EAAE,CAAC;gBACtB,CAAC,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAC1C,CAAC,CAAC;aACD,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAEO,oCAAoC,CAC1C,UAAuB,EACvB,UAAkB,EAClB,IAAiB;QAEjB,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,MAAM,WAAW,GACf,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnE,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IACtE,CAAC;IAEO,0BAA0B,CAChC,UAAuB,EACvB,IAAiB,EACjB,cAAuC,EACvC,UAAkB,EAClB,SAAiB;QAEjB,IAAI,IAAI,GAAG,YAAI,CAAC,qDAAqD,CAAC,CAAC,KAAK;QAE5E,MAAM,UAAU,GACd,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAElE,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,QAAQ,GACZ,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CACpC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAClD,CAAC;YACJ,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC;YACjD,MAAM,wBAAwB,GAAG,iBAAiB;iBAC/C,GAAG,CAAC,KAAK,CAAC,EAAE;gBACX,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;gBAC1B,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACnD,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,GAAG,iBAAiB,CAAC;oBAC5B,CAAC;oBACD,iBAAiB,EAAE,CAAC;gBACtB,CAAC,CAAC,CACH,CAAC;gBAEF,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;gBAE/C,OAAO,CACL,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CACjE,CAAC;YACJ,CAAC,CAAC;iBACD,QAAQ,CAAC,IAAI,CAAC,CAAC;YAElB,MAAM,YAAY,GAAG,SAAS,IAAI,CAAC,wBAAwB,CAAC;YAE5D,IAAI,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC/B,IAAI,GAAG,YAAI,CAAC,gDAAgD,CAAC,CAAC,IAAI;YACpE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE/C,IAAI,SAAS,EAAE,CAAC;gBACd,IACE,IAAI,CAAC,gCAAgC,CACnC,UAAU,EACV,IAAI,EACJ,cAAc,CACf,EACD,CAAC;oBACD,IAAI,GAAG,YAAI,CAAC,+CAA+C,CAAC,CAAC,IAAI;gBACnE,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAES,uBAAuB,CAC/B,MAAoE;QAEpE,MAAM,EACJ,UAAU,EACV,cAAc,EACd,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,IAAI,GACL,GAAG,MAAM,CAAC;QACX,MAAM,UAAU,GACd,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,MAAM,WAAW,GACf,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QAE/B,MAAM,sBAAsB,GAAG,IAAI,CAAC,oCAAoC,CACtE,UAAU,EACV,UAAU,EACV,IAAI,CACL,CAAC;QAEF,MAAM,gCAAgC,GACpC,IAAI,CAAC,gCAAgC,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAE1E,MAAM,wBAAwB,GAC5B,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,gCAAgC;YAChC,CAAC,UAAU;YACX,iBAAiB,EAAE,OAAO,CAAC;QAE7B,IAAI,YAAY,GAAG,aAAa,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE;YACvC,OAAO,SAAS,CAAC;gBACf,GAAG;gBACH,IAAI,CAAC,+BAA+B,CAClC,UAAU,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,KAAK,EACL,qBAAqB,EACrB,CAAC,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC,EAC7B,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC,EAC5B,iBAAiB,EACjB,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAC7B,sBAAsB,CACvB;aACF,CAAC,CAAC;QACL,CAAC,EACD,IAAI,CACL,CAAC;QAEF,IAAI,wBAAwB,EAAE,CAAC;YAC7B,aAAa,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAClC,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,OAAO,wBAAwB;gBAC7B,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,iBAAiB,CAAC;gBAC7D,CAAC,CAAC,YAAY,CAAC;QACnB,CAAC;QAED,IAAI,sBAAsB,EAAE,CAAC;YAC3B,MAAM,qBAAqB,GAAG,IAAI,CAAC,8BAA8B,CAC/D,UAAU,EACV,UAAU,EACV,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,0BAA0B,CAC7B,UAAU,EACV,IAAI,EACJ,cAAc,EACd,UAAU,EACV,SAAS,CACV,CACF,CAAC;YAEF,OAAO,wBAAwB;gBAC7B,CAAC,CAAC,IAAI,CAAC,qBAAqB,CACxB,qBAAqB,EACrB,iBAAiB,EACjB,IAAI,CACL;gBACH,CAAC,CAAC,qBAAqB,CAAC;QAC5B,CAAC;QAED,OAAO,wBAAwB;YAC7B,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,iBAAiB,CAAC;YAC7D,CAAC,CAAC,YAAY,CAAC;IACnB,CAAC;IAES,wBAAwB,CAChC,UAAuB,EACvB,cAAuC,EACvC,KAAmB,EACnB,UAAkB,EAClB,KAAsD,EACtD,MAAc,EACd,iBAAyC;QAEzC,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QAExB,MAAM,6BAA6B,GAAG,EAAE,CAAC;QACzC,MAAM,kBAAkB,GAAG,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAC3B,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAC3B,SAAS,CAAC;YACR,OAAO;YACP,IAAI,CAAC,uBAAuB,CAAC;gBAC3B,UAAU;gBACV,cAAc;gBACd,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,MAAM;gBACN,qBAAqB,EAAE,6BAA6B;gBACpD,aAAa,EAAE,kBAAkB;gBACjC,iBAAiB;gBACjB,IAAI;gBACJ,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,EACJ,IAAI,CACL,CAAC;QAEF,MAAM,qCAAqC,GACzC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YACxB,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;YACzC,CAAC,IAAI,CAAC,oCAAoC,CACxC,UAAU,EACV,UAAU,EACV,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CACf,CAAC;QAEJ,IAAI,UAAU,IAAI,CAAC,qCAAqC,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC,oBAAoB,CAC9B,UAAU,EACV,cAAc,EACd,QAAQ,EACR,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EACd,6CAAiC,EACjC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CACjD,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,yBAAyB,CAC/B,UAAuB,EACvB,cAAuC;QAEvC,IAAI,CAAC,IAAA,oBAAY,EAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,4BAA4B,GAAG,IAAI,CAAC,4BAA4B,CACpE,UAAU,EACV,SAAS,EACT,cAAc,CACf,CAAC;YAEF,OAAO,4BAA4B,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,2BAA2B,CACjC,UAAuB,EACvB,cAA2D;QAE3D,IAAI,CAAC,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACrD,MAAM,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAClE,UAAU,EACV,QAAQ,EACR,cAAc,CACf,CAAC;YAEF,OAAO,2BAA2B,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAmB,CAAC,iBAAS,CAAC,GAAG,CAAC,CAAC;IACvE,CAAC;IAEM,aAAa,CAClB,UAAuB,EACvB,cAAuC,EACvC,MAAc,EACd,iBAAyC;QAEzC,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAE5E,MAAM,WAAW,GACf,iBAAiB,EAAE,OAAO,IAAI,IAAA,oBAAY,EAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,aAAa,GACjB,iBAAiB,EAAE,QAAQ,IAAI,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,iBAAiB,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC7D,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAC1D,UAAU,EACV,cAAc,CACf,CAAC;QACF,MAAM,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAC9D,UAAU,EACV,cAAc,CACf,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAC3B,UAAU,EACV,cAAc,EACd,iBAAiB,CAClB,CAAC;QAEF,IAAI,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAC7C,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAC9B,SAAS,CAAC;YACR,QAAQ;YACR,IAAI,CAAC,wBAAwB,CAC3B,UAAU,EACV,cAAc,EACd,KAAK,EACL,UAAU,EACV,KAAK,EACL,MAAM,EACN,iBAAiB,CAClB;SACF,CAAC,EACJ,IAAI,CACL,CAAC;QAEF,IAAI,UAAU,IAAI,CAAC,WAAW,IAAI,aAAa,CAAC,EAAE,CAAC;YACjD,MAAM,cAAc,GAClB,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxD,aAAa,GAAG,IAAI,CAAC,8BAA8B,CACjD,UAAU,EACV,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAC/B,cAAc,EACd,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EACrD,aAAa,EACb,WAAW;gBACT,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,IAAI;gBACjE,CAAC,CAAC,YAAI,CAAC,0DAA0D,CACpE,CAAC;QACJ,CAAC;QAED,WAAW;QACX,IAAI,WAAW,IAAI,qBAAqB,EAAE,CAAC;YACzC,IAAI,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EACpD,iBAAiB,CAAC,OAAQ,CAAC,QAAQ,EACnC,YAAI,CAAC,2DAA2D,CACjE,CAAC;YAEF,IAAI,CAAC,CAAC,UAAU,IAAI,WAAW,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9C,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC;oBAC3D,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,IAAI,CAAC,aAAa;yBACf,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;wBACpB,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC;oBAC9C,CAAC,CAAC;yBACD,MAAM,CAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;wBAC1B,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC;wBAClB,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,CAAC,CAAC,CAAC;gBAEZ,eAAe,GAAG,YAAY,CAC5B,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAC/B;oBACE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,CAAC;oBACvD,UAAU,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;oBACtC,eAAe;iBAChB,CACF,CAAC;YACJ,CAAC;YAED,aAAa,GAAG,SAAS,CAAC,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,iDAAiD;QACjD,IACE,aAAa;YACb,uBAAuB;YACvB,CAAC,WAAW,IAAI,UAAU,CAAC,EAC3B,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EACpD,iBAAiB,CAAC,QAAS,CAAC,QAAQ,CACrC,CAAC;YACF,aAAa,GAAG,SAAS,CAAC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,0EAA0E;QAC1E,IACE,iBAAiB;YACjB,uBAAuB;YACvB,CAAC,WAAW,IAAI,UAAU,CAAC,EAC3B,CAAC;YACD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;YACtE,aAAa,GAAG,SAAS,CAAC,CAAC,aAAa,EAAE,wBAAwB,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,CAAC,WAAW,IAAI,aAAa,CAAC,IAAI,UAAU,CAAC,IAAI,WAAW,EAAE,CAAC;YAClE,aAAa,GAAG,IAAI,CAAC,oBAAoB,CACvC,UAAU,EACV,cAAc,EACd,aAAa,EACb,wCAA4B,EAC5B,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAChC,6CAAiC,EACjC,KAAK,CACN,CAAC;QACJ,CAAC;QAED,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAC7B;YACE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YAC/C,UAAU,CACR,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,2BAAe,CAAC,EAAE,wDAAwD;YACjH,EAAE,CACH;YACD,aAAa,EAAE,WAAW;SAC3B,CACF,CAAC;IACJ,CAAC;CACF;AAr0CD,8DAq0CC"}
|
|
1
|
+
{"version":3,"file":"Executor02BytecodeBuilder.js","sourceRoot":"","sources":["../../src/executor/Executor02BytecodeBuilder.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAYhC,mCAAsD;AACtD,oCAAwC;AAExC,uEAImC;AACnC,2CASqB;AAErB,MAAM,EACJ,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,GACvE,GAAG,eAAM,CAAC;AAcX;;GAEG;AACH,MAAa,yBAA0B,SAAQ,iDAG9C;IACC,IAAI,GAAG,iBAAS,CAAC,GAAG,CAAC;IACrB;;;;;;;;;;;;OAYG;IACO,oBAAoB,CAC5B,UAAuB,EACvB,cAAuC,EACvC,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,kBAA0B,EAC1B,iBAAyC;QAEzC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAC3B,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,kCAAkC,EAClC,qCAAqC,EACrC,qBAAqB,GACtB,GAAG,aAAa,CAAC;QAElB,MAAM,QAAQ,GAAG,cAAc,IAAI,QAAQ,IAAI,iBAAiB,EAAE,OAAO,CAAC;QAC1E,MAAM,UAAU,GACd,cAAc,IAAI,SAAS,IAAI,iBAAiB,EAAE,QAAQ,CAAC;QAC7D,MAAM,YAAY,GAChB,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,kBAAU,CAAC,OAAO,CAAC;QAExE,MAAM,4BAA4B,GAChC,qCAAqC;YACrC,CAAC,YAAY,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAExD,IAAI,OAAO,GAAG,4BAA4B;YACxC,CAAC,CAAC,YAAI,CAAC,qDAAqD;YAC5D,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,SAAS;QACpE,IAAI,WAAW,GACb,YAAI,CAAC,qDAAqD,CAAC,CAAC,IAAI;QAElE,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,OAAO,GAAG,mBAAmB;gBAC3B,CAAC,CAAC,YAAI,CAAC,2DAA2D,CAAC,IAAI;gBACvE,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,CAAC,IAAI;QACjF,CAAC;aAAM,IAAI,SAAS,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,oDAAoD;gBAC3D,CAAC,CAAC,YAAI,CAAC,+CAA+C,CAAC,CAAC,SAAS;QACrE,CAAC;aAAM,IAAI,CAAC,mBAAmB,IAAI,CAAC,SAAS,IAAI,UAAU,CAAC,EAAE,CAAC;YAC7D,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,0DAA0D;gBACjE,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,CAAC,UAAU;QAC5E,CAAC;QAED,iEAAiE;QACjE,0EAA0E;QAC1E,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAI,CAAC,gEAAgE,CAAC;QAC1E,CAAC;QAED,OAAO;YACL,OAAO;YACP,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,uBAAuB,CAC/B,UAAuB,EACvB,cAAuC,EACvC,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,kBAA0B,EAC1B,iBAAyC;QAEzC,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEpC,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAEzD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACrC,MAAM,sBAAsB,GAAG,IAAI,CAAC,oCAAoC,CACtE,UAAU,EACV,UAAU,EACV,IAAI,CACL,CAAC;QAEF,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,uDAAuD;QAC5G,MAAM,WAAW,GAAG,SAAS,KAAK,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,CAAC,WAAW,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAExE,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,kCAAkC,EAClC,qCAAqC,EACrC,WAAW,EACX,kCAAkC,EAClC,qBAAqB,GACtB,GAAG,aAAa,CAAC;QAElB,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,UAAU,GACd,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC;YACtE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,YAAY,GAChB,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,kBAAU,CAAC,OAAO,CAAC;QAExE,MAAM,4BAA4B,GAChC,qCAAqC;YACrC,CAAC,YAAY,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAExD,MAAM,mBAAmB,GACvB,CAAC,YAAY;YACX,oBAAoB;YACpB,CAAC,sBAAsB;YACvB,CAAC,UAAU,CAAC;YACd,CAAC,mBAAmB,CAAC;QAEvB,MAAM,UAAU,GACd,cAAc,IAAI,SAAS,IAAI,iBAAiB,EAAE,QAAQ,CAAC;QAE7D,MAAM,WAAW,GAAG,QAAQ,IAAI,CAAC,cAAc,CAAC;QAChD,MAAM,mBAAmB,GAAG,SAAS,IAAI,CAAC,cAAc,CAAC;QAEzD,MAAM,0BAA0B,GAC9B,CAAC,UAAU,IAAI,CAAC,sBAAsB,CAAC;YACvC,CAAC,oBAAoB,IAAI,CAAC,sBAAsB,IAAI,CAAC,UAAU,CAAC,CAAC;QAEnE,IAAI,OAAa,CAAC;QAClB,IAAI,WAAW,GACb,YAAI,CAAC,qDAAqD,CAAC,CAAC,IAAI;QAElE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,uBAAuB,GAC3B,4BAA4B,IAAI,CAAC,kCAAkC,CAAC;YACtE,OAAO,GAAG,mBAAmB;gBAC3B,CAAC,CAAC,uBAAuB;oBACvB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;oBAC5E,CAAC,CAAC,YAAI,CAAC,wFAAwF,CAAC,KAAK;gBACvG,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,uBAAuB;wBACvB,CAAC,CAAC,YAAI,CAAC,2DAA2D,CAAC,IAAI;wBACvE,CAAC,CAAC,YAAI,CAAC,mFAAmF,CAAC,KAAK;oBAClG,CAAC,CAAC,uBAAuB;wBACzB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;wBAC5E,CAAC,CAAC,YAAI,CAAC,mFAAmF,CAAC,CAAC,KAAK;QACrG,CAAC;aAAM,IAAI,mBAAmB,EAAE,CAAC;YAC/B,OAAO;gBACL,0BAA0B,IAAI,mBAAmB;oBAC/C,CAAC,CAAC,4BAA4B,IAAI,mBAAmB;wBACnD,CAAC,CAAC,YAAI,CAAC,oDAAoD,CAAC,IAAI;wBAChE,CAAC,CAAC,YAAI,CAAC,+CAA+C,CAAC,IAAI;oBAC7D,CAAC,CAAC,4BAA4B,IAAI,mBAAmB;wBACrD,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,IAAI;wBACjE,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,IAAI;QACnE,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,0BAA0B,IAAI,mBAAmB;oBAC/C,CAAC,CAAC,4BAA4B;wBAC5B,CAAC,CAAC,YAAI,CAAC,0DAA0D,CAAC,IAAI;wBACtE,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,KAAK;oBACpE,CAAC,CAAC,4BAA4B;wBAC9B,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,IAAI;wBACjE,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,IAAI;QACnE,CAAC;QAED,iEAAiE;QACjE,0EAA0E;QAC1E,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO;gBACL,YAAI,CAAC,gEAAgE,CAAC;QAC1E,CAAC;QAED,OAAO;YACL,OAAO;YACP,WAAW;SACZ,CAAC;IACJ,CAAC;IAES,gBAAgB,CACxB,MAAsD;QAEtD,MAAM,EACJ,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,SAAS,EACT,IAAI,GACL,GAAG,MAAM,CAAC;QAEX,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,GAClE,aAAa,CAAC;QAEhB,MAAM,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAC9D,UAAU,EACV,cAAc,CACf,CAAC;QAEF,MAAM,eAAe,GACnB,aAAa,CAAC,eAAe,KAAK,SAAS,IAAI,CAAC,uBAAuB,CAAC,qEAAqE;YAC3I,CAAC,CAAC,aAAa,CAAC,eAAe;YAC/B,CAAC,CAAC,qCAAyB,CAAC;QAEhC,MAAM,sBAAsB,GAAG,IAAI,CAAC,oCAAoC,CACtE,UAAU,EACV,UAAU,EACV,IAAI,CACL,CAAC;QACF,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,8BAA8B,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAE1D,MAAM,eAAe,GACnB,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,cAAc;YAC3C,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;YACpC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAElC,MAAM,gBAAgB,GACpB,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,IAAI,cAAc;YAC5C,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;YACpC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAEnC,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,eAAe,CAChB,CAAC;QAEF,IACE,sBAAsB;YACtB,CAAC,8BAA8B,IAAI,CAAC,yBAAyB,CAAC,EAC9D,CAAC;YACD,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,gBAAgB,CACjB,CAAC;QACJ,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,8BAA8B,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACjE,MAAM,kBAAkB,GAAG,YAAY;iBACpC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC/C,YAAY,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,UAAU,GAAG,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CACpD,CAAC,SAAS,CAAC,EACX,CAAC,YAAY,CAAC,SAAS,CAAC,CACzB,CAAC;YACF,MAAM,eAAe,GAAG,YAAY;iBACjC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAEzC,aAAa;gBACX,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CACvB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,cAAc,IAAI,kBAAU,CAAC,OAAO,EACpC,IAAI,EACJ,SAAS,EACT,eAAe,CAChB,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAC1B,UAAuB,EACvB,cAAuC,EACvC,QAAgB,EAChB,UAAkB,EAClB,IAAiB,EACjB,kBAA0B,EAC1B,0BAAmC,EACnC,qCAAqC,GAAG,KAAK;QAE7C,IAAI,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEpC,IAAI,+BAAwC,CAAC;QAC7C,IAAI,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5B,+BAA+B;gBAC7B,IAAA,oBAAY,EAAC,eAAe,CAAC;oBAC7B,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,cAAc;wBAChD,CAAC,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,cAAc;4BACjD,qCAAqC,CAAC,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,+BAA+B;gBAC7B,IAAA,oBAAY,EAAC,eAAe,CAAC;oBAC7B,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACvE,CAAC;QAED,IACE,+BAA+B;YAC/B,IAAA,oBAAY,EAAC,eAAe,CAAC;YAC7B,CAAC,0BAA0B,EAC3B,CAAC;YACD,eAAe;gBACb,kBAAkB,GAAG,CAAC,CAAC;oBACrB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACzD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC;QAC7D,CAAC;QAED,IAAI,sBAAsB,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QAC3D,IAAI,WAAmB,CAAC;QAExB,IAAI,UAAU,KAAK,wCAA4B,EAAE,CAAC;YAChD,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,IAAI,IAAA,oBAAY,EAAC,sBAAsB,CAAC,EAAE,CAAC;YAChD,WAAW,GAAG,oDAAwC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,MAAM,iBAAiB,GAAG,QAAQ;iBAC/B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAErD,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EACxC;YACE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,gBAAgB;YAClE,WAAW,EAAE,cAAc;YAC3B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa;YACnE,QAAQ,EAAE,gBAAgB;SAC3B,CACF,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAAC,YAAoB;QACpD,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EACpD;YACE,0BAAc,EAAE,gBAAgB;YAChC,yBAAa,EAAE,oBAAoB;YACnC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YAC/C,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YACxE,YAAY,EAAE,WAAW;SAC1B,CACF,CAAC;IACJ,CAAC;IAEO,6BAA6B,CACnC,qBAA6B,EAC7B,aAAqB,EACrB,YAAoB,EACpB,IAAU;QAEV,OAAO,YAAY,CACjB;YACE,SAAS;YACT,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,QAAQ;YACR,OAAO;SACR,EACD;YACE,0BAAc,EAAE,aAAa;YAC7B,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,sBAAsB;YACpF,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB;YACvD,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,eAAe;YACrD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,kBAAkB;YAC7C,UAAU,CAAC,OAAO,CAAC,kBAAU,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU;YACzE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO;YACrC,qBAAqB,EAAE,iBAAiB;SACzC,CACF,CAAC;IACJ,CAAC;IAEO,8BAA8B,CACpC,UAAuB,EACvB,UAAkB,EAClB,cAAuC,EACvC,IAAiB,EACjB,YAAoB,EACpB,IAAU;QAEV,MAAM,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;QAE1D,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,oBAAoB,CAAC,CAAC;QAErD,IAAI,2BAA2B,GAAG,KAAK,CAAC;QACxC,IAAI,gCAAgC,GAAG,KAAK,CAAC;QAC7C,IAAI,YAAoB,CAAC;QAEzB,IAAI,SAAS,EAAE,CAAC;YACd,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAC5D,UAAU,EACV,IAAI,EACJ,cAAc,CACf,CAAC;YACF,gCAAgC,GAAG,IAAI,CAAC,gCAAgC,CACtE,UAAU,EACV,IAAI,EACJ,cAAc,CACf,CAAC;QACJ,CAAC;QAED,IACE,SAAS;YACT,gCAAgC;YAChC,CAAC,2BAA2B,EAC5B,CAAC;YACD,YAAY,GAAG,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,kBAAkB,GAAG,IAAI;iBAC5B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CACN,CAAC,SAAS;gBACR,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE;gBACpE,CAAC,CAAC,oBAAoB,CAAC,WAAW,EAAE,CACrC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CACpB,CAAC;YAEJ,YAAY,GAAG,kBAAkB,GAAG,CAAC,GAAG,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAwC;QAE7F,OAAO,IAAI,CAAC,6BAA6B,CACvC,IAAI,EACJ,aAAa,EACb,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EACnC,IAAI,CACL,CAAC;IACJ,CAAC;IAEO,+BAA+B,CACrC,UAAuB,EACvB,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,cAAuC,EACvC,KAAsD,EACtD,0BAAsD,EACtD,cAAc,GAAG,IAAI,EACrB,oBAAoB,GAAG,KAAK,EAC5B,iBAAyC,EACzC,oBAA8B,EAC9B,sBAAgC;QAEhC,MAAM,YAAY,GAChB,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YACjC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;QAC7C,IAAI,oBAAoB,GAAG,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAE3D,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAE/B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;gBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC;oBAChC,kBAAkB,GAAG,sBAAsB,CAAC;gBAC9C,CAAC;gBACD,sBAAsB,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,gBAAgB,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAE5D,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACxC,UAAU;YACV,UAAU;YACV,SAAS;YACT,iBAAiB;YACjB,cAAc;YACd,kBAAkB;YAClB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC;YACrC,YAAY;SACb,CAAC,CAAC;QAEH,IAAI,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,gBAAgB,CAAC,qBAAqB,CACvC,CAAC;YACF,oBAAoB,GAAG,SAAS,CAAC,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,oBAAoB,GAAG,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,UAAU,GACd,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,kBAAkB,KAAK,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QAEhE,IAAI,gBAAgB,CAAC,0BAA0B,EAAE,CAAC;YAChD,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CACjD,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE;gBACjD,gBAAgB,CAAC,0BAA0B;gBAC3C,YAAY,CAAC,SAAS;aACvB,CAAC,EACF,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;gBACzB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;gBACvC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAChC,CAAC;YAEF,oBAAoB,GAAG,SAAS,CAAC;gBAC/B,gBAAgB;gBAChB,oBAAoB;aACrB,CAAC,CAAC;QACL,CAAC;QAED,IACE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;YAC5B,CAAC,gBAAgB,CAAC,0BAA0B;YAC5C,CAAC,gBAAgB,CAAC,YAAY;YAC9B,gBAAgB,CAAC,WAAW,EAC5B,CAAC;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,gBAAgB,CAAC,WAAW,CAAC,MAAM,EACnC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAClC,gBAAgB,CAAC,eAAe,CACjC,CAAC;YAEF,oBAAoB,GAAG,SAAS,CAAC,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,gBAAgB,CAAC,cAAc,EAAE,CAAC;YACpC,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,IAAI,mBAAmB,GAAG,IAAI,CAAC;gBAC/B,IACE,gBAAgB,CAAC,WAAW;oBAC5B,CAAC,gBAAgB,CAAC,0BAA0B;oBAC5C,CAAC,gBAAgB,CAAC,YAAY,EAC9B,CAAC;oBACD,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAC7C,gBAAgB,CAAC,WAAW,CAAC,MAAM,EACnC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAClC,gBAAgB,CAAC,eAAe,CACjC,CAAC;gBACJ,CAAC;gBAED,MAAM,cAAc,GAAG,SAAS,KAAK,CAAC,CAAC;gBACvC,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,QAAQ,GACZ,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;oBACxD,MAAM,gCAAgC,GACpC,IAAI,CAAC,gCAAgC,CACnC,UAAU,EACV,QAAQ,EACR,cAAc,CACf,CAAC;oBACJ,QAAQ,GAAG,CAAC,gCAAgC,CAAC;gBAC/C,CAAC;gBAED,IAAI,eAAe,GAAG,IAAI,CAAC;gBAC3B,IACE,iBAAiB;oBACjB,iBAAiB,CAAC,OAAO;oBACzB,CAAC,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,cAAc,CAAC;oBAC3D,cAAc;oBACd,CAAC,0BAA0B,CACzB,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAClD;oBACD,CAAC,QAAQ,EACT,CAAC;oBACD,eAAe,GAAG,IAAI,CAAC,oBAAoB,CACzC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAClC,YAAI,CAAC,2DAA2D,CACjE,CAAC;oBACF,0BAA0B,CACxB,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAClD,GAAG,IAAI,CAAC;gBACX,CAAC;gBAED,oBAAoB,GAAG,SAAS,CAAC;oBAC/B,mBAAmB;oBACnB,eAAe;oBACf,oBAAoB;iBACrB,CAAC,CAAC;YACL,CAAC;YAED,IACE,iBAAiB;gBACjB,iBAAiB,CAAC,QAAQ;gBAC1B,CAAC,CAAC,CAAC,sBAAsB,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxD,CAAC,sBAAsB;wBACrB,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;wBAC5B,IAAI,CAAC,gCAAgC,CACnC,UAAU,EACV,IAAI,EACJ,cAAc,CACf,CAAC,CAAC,EACP,CAAC;gBACD,IAAI,gBAAgB,GAAG,IAAI,CAAC;gBAE5B,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,WAAW,CAAC;gBACvD,MAAM,sBAAsB,GAC1B,YAAY;oBACZ,4DAA4D;oBAC5D,cAAc,CAAC,WAAW,CACxB,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,CAC5B,aAAa,CAAC,cAAc,KAAK,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EACnE,CAAC,CAAC,CACH,KAAK,kBAAkB,CAAC;gBAE3B,IACE,iBAAiB;oBACjB,sBAAsB,CAAC,8DAA8D;kBACrF,CAAC;oBACD,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAC5C,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CACpC,CAAC;gBACJ,CAAC;gBAED,oBAAoB,GAAG,SAAS,CAAC;oBAC/B,oBAAoB;oBACpB,gBAAgB;iBACjB,CAAC,CAAC;gBAEH,IAAI,sBAAsB,IAAI,iBAAiB,EAAE,CAAC;oBAChD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;oBACtE,oBAAoB,GAAG,SAAS,CAAC;wBAC/B,oBAAoB;wBACpB,wBAAwB;qBACzB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,qCAAqC,GAAG,KAAK,CAAC;QAClD,IACE,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;YAC3B,iBAAiB;YACjB,iBAAiB,CAAC,QAAQ;YAC1B,CAAC,gBAAgB,CAAC,cAAc,EAChC,CAAC;YACD,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACvE,IAAI,4BAA4B,GAAY,KAAK,CAAC;YAElD,IAAI,QAAQ,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACtC,4BAA4B,GAAG,IAAI,CAAC,4BAA4B,CAC9D,UAAU,EACV,QAAQ,EACR,cAAc,CACf,CAAC;YACJ,CAAC;YAED,IAAI,oBAAoB,IAAI,4BAA4B,EAAE,CAAC;gBACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CACpC,CAAC;gBAEF,oBAAoB,GAAG,SAAS,CAAC;oBAC/B,gBAAgB;oBAChB,oBAAoB;iBACrB,CAAC,CAAC;gBACH,qCAAqC,GAAG,IAAI,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IACE,UAAU;YACV,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,mBAAmB;YACvD,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC7B,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EACvC,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CACjD,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE;gBACjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB;gBAC5C,YAAY,CAAC,UAAU;aACxB,CAAC,EACF,IAAI,CAAC,SAAS,CACf,CAAC;YAEF,oBAAoB,GAAG,SAAS,CAAC;gBAC/B,oBAAoB;gBACpB,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;QAED,IACE,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,mBAAmB;YACvD,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,MAAM;YACN,mGAAmG;YACnG,CAAC,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,cAAc,CAAC,EAC7D,CAAC;YACD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;YACtE,oBAAoB,GAAG,SAAS,CAAC;gBAC/B,oBAAoB;gBACpB,wBAAwB;aACzB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,oBAAoB,CAC9B,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,YAAY,CAAC,OAAO,EACpB,IAAI,EACJ,kBAAkB,EAClB,0BAA0B,CACxB,GAAG,UAAU,IAAI,SAAS,IAAI,iBAAiB,EAAE,CAClD,EACD,qCAAqC,CACtC,CAAC;QACJ,CAAC;QAED,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAEO,qBAAqB,CAC3B,QAAgB,EAChB,iBAAyC,EACzC,qBAAqB,GAAG,KAAK;QAE7B,IAAI,iBAAiB,EAAE,OAAO,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,qBAAqB;gBACpC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAC5B,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAClC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,CACnE;gBACH,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC;YAEvC,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAClE,QAAQ,EACR,qBAAqB;gBACnB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;gBAC5E,CAAC,CAAC,YAAI,CAAC,2DAA2D,EAAE,IAAI;YAC1E,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9B,CAAC;YAEF,OAAO,SAAS,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,4BAA4B,CAClC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACtC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,GAAG,iBAAiB,CAAC;oBAC5B,CAAC;oBACD,iBAAiB,EAAE,CAAC;gBACtB,CAAC,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,2BAA2B,CACjC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACzC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACxB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBAC1C,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;4BACzB,KAAK,GAAG,iBAAiB,CAAC;wBAC5B,CAAC;wBACD,iBAAiB,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAEO,mCAAmC,CACzC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACxB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBAC1C,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;4BACzB,KAAK,GAAG,iBAAiB,CAAC;wBAC5B,CAAC;wBACD,iBAAiB,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uCAAuC,CAC7C,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvC,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACxB,OAAO,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;wBAC1C,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;4BACzB,KAAK,GAAG,iBAAiB,CAAC;wBAC5B,CAAC;wBACD,iBAAiB,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,CAAC,gBAAgB,CAAC,cAAc,IAAI,gBAAgB,CAAC,WAAW,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gCAAgC,CACtC,UAAuB,EACvB,IAAiB,EACjB,cAAuC;QAEvC,OAAO,IAAI,CAAC,aAAa;aACtB,GAAG,CAAC,KAAK,CAAC,EAAE;YACX,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,GAAG,iBAAiB,CAAC;oBAC5B,CAAC;oBACD,iBAAiB,EAAE,CAAC;gBACtB,CAAC,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/C,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAC1C,CAAC,CAAC;aACD,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAEO,oCAAoC,CAC1C,UAAuB,EACvB,UAAkB,EAClB,IAAiB;QAEjB,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,MAAM,WAAW,GACf,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnE,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IACtE,CAAC;IAEO,0BAA0B,CAChC,UAAuB,EACvB,IAAiB,EACjB,cAAuC,EACvC,UAAkB,EAClB,SAAiB;QAEjB,IAAI,IAAI,GAAG,YAAI,CAAC,qDAAqD,CAAC,CAAC,KAAK;QAE5E,MAAM,UAAU,GACd,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAElE,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,QAAQ,GACZ,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CACpC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAClD,CAAC;YACJ,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC;YACjD,MAAM,wBAAwB,GAAG,iBAAiB;iBAC/C,GAAG,CAAC,KAAK,CAAC,EAAE;gBACX,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;gBAC1B,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACnD,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;oBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;wBACzB,KAAK,GAAG,iBAAiB,CAAC;oBAC5B,CAAC;oBACD,iBAAiB,EAAE,CAAC;gBACtB,CAAC,CAAC,CACH,CAAC;gBAEF,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;gBAE/C,OAAO,CACL,gBAAgB,CAAC,cAAc,IAAI,CAAC,gBAAgB,CAAC,WAAW,CACjE,CAAC;YACJ,CAAC,CAAC;iBACD,QAAQ,CAAC,IAAI,CAAC,CAAC;YAElB,MAAM,YAAY,GAAG,SAAS,IAAI,CAAC,wBAAwB,CAAC;YAE5D,IAAI,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC/B,IAAI,GAAG,YAAI,CAAC,gDAAgD,CAAC,CAAC,IAAI;YACpE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAE/C,IAAI,SAAS,EAAE,CAAC;gBACd,IACE,IAAI,CAAC,gCAAgC,CACnC,UAAU,EACV,IAAI,EACJ,cAAc,CACf,EACD,CAAC;oBACD,IAAI,GAAG,YAAI,CAAC,+CAA+C,CAAC,CAAC,IAAI;gBACnE,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAES,uBAAuB,CAC/B,MAAoE;QAEpE,MAAM,EACJ,UAAU,EACV,cAAc,EACd,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,IAAI,GACL,GAAG,MAAM,CAAC;QACX,MAAM,UAAU,GACd,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,MAAM,WAAW,GACf,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QAE/B,MAAM,sBAAsB,GAAG,IAAI,CAAC,oCAAoC,CACtE,UAAU,EACV,UAAU,EACV,IAAI,CACL,CAAC;QAEF,MAAM,gCAAgC,GACpC,IAAI,CAAC,gCAAgC,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAE1E,MAAM,wBAAwB,GAC5B,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,gCAAgC;YAChC,CAAC,UAAU;YACX,iBAAiB,EAAE,OAAO,CAAC;QAE7B,IAAI,YAAY,GAAG,aAAa,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE;YACvC,OAAO,SAAS,CAAC;gBACf,GAAG;gBACH,IAAI,CAAC,+BAA+B,CAClC,UAAU,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,KAAK,EACL,qBAAqB,EACrB,CAAC,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC,EAC7B,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC,EAC5B,iBAAiB,EACjB,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAC7B,sBAAsB,CACvB;aACF,CAAC,CAAC;QACL,CAAC,EACD,IAAI,CACL,CAAC;QAEF,IAAI,wBAAwB,EAAE,CAAC;YAC7B,aAAa,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAClC,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,OAAO,wBAAwB;gBAC7B,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,iBAAiB,CAAC;gBAC7D,CAAC,CAAC,YAAY,CAAC;QACnB,CAAC;QAED,IAAI,sBAAsB,EAAE,CAAC;YAC3B,MAAM,qBAAqB,GAAG,IAAI,CAAC,8BAA8B,CAC/D,UAAU,EACV,UAAU,EACV,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,0BAA0B,CAC7B,UAAU,EACV,IAAI,EACJ,cAAc,EACd,UAAU,EACV,SAAS,CACV,CACF,CAAC;YAEF,OAAO,wBAAwB;gBAC7B,CAAC,CAAC,IAAI,CAAC,qBAAqB,CACxB,qBAAqB,EACrB,iBAAiB,EACjB,IAAI,CACL;gBACH,CAAC,CAAC,qBAAqB,CAAC;QAC5B,CAAC;QAED,OAAO,wBAAwB;YAC7B,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,iBAAiB,CAAC;YAC7D,CAAC,CAAC,YAAY,CAAC;IACnB,CAAC;IAES,wBAAwB,CAChC,UAAuB,EACvB,cAAuC,EACvC,KAAmB,EACnB,UAAkB,EAClB,KAAsD,EACtD,MAAc,EACd,iBAAyC;QAEzC,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAEnD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QAExB,MAAM,6BAA6B,GAAG,EAAE,CAAC;QACzC,MAAM,kBAAkB,GAAG,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAC3B,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAC3B,SAAS,CAAC;YACR,OAAO;YACP,IAAI,CAAC,uBAAuB,CAAC;gBAC3B,UAAU;gBACV,cAAc;gBACd,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,MAAM;gBACN,qBAAqB,EAAE,6BAA6B;gBACpD,aAAa,EAAE,kBAAkB;gBACjC,iBAAiB;gBACjB,IAAI;gBACJ,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,EACJ,IAAI,CACL,CAAC;QAEF,MAAM,qCAAqC,GACzC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YACxB,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;YACzC,CAAC,IAAI,CAAC,oCAAoC,CACxC,UAAU,EACV,UAAU,EACV,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CACf,CAAC;QAEJ,IAAI,UAAU,IAAI,CAAC,qCAAqC,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC,oBAAoB,CAC9B,UAAU,EACV,cAAc,EACd,QAAQ,EACR,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EACd,6CAAiC,EACjC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CACjD,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,yBAAyB,CAC/B,UAAuB,EACvB,cAAuC;QAEvC,IAAI,CAAC,IAAA,oBAAY,EAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,4BAA4B,GAAG,IAAI,CAAC,4BAA4B,CACpE,UAAU,EACV,SAAS,EACT,cAAc,CACf,CAAC;YAEF,OAAO,4BAA4B,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,2BAA2B,CACjC,UAAuB,EACvB,cAA2D;QAE3D,IAAI,CAAC,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACrD,MAAM,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAClE,UAAU,EACV,QAAQ,EACR,cAAc,CACf,CAAC;YAEF,OAAO,2BAA2B,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAmB,CAAC,iBAAS,CAAC,GAAG,CAAC,CAAC;IACvE,CAAC;IAEM,aAAa,CAClB,UAAuB,EACvB,cAAuC,EACvC,MAAc,EACd,iBAAyC;QAEzC,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAE5E,MAAM,WAAW,GACf,iBAAiB,EAAE,OAAO,IAAI,IAAA,oBAAY,EAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,aAAa,GACjB,iBAAiB,EAAE,QAAQ,IAAI,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,iBAAiB,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC7D,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,CAC1D,UAAU,EACV,cAAc,CACf,CAAC;QACF,MAAM,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAC9D,UAAU,EACV,cAAc,CACf,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAC3B,UAAU,EACV,cAAc,EACd,iBAAiB,CAClB,CAAC;QAEF,IAAI,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAC7C,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAC9B,SAAS,CAAC;YACR,QAAQ;YACR,IAAI,CAAC,wBAAwB,CAC3B,UAAU,EACV,cAAc,EACd,KAAK,EACL,UAAU,EACV,KAAK,EACL,MAAM,EACN,iBAAiB,CAClB;SACF,CAAC,EACJ,IAAI,CACL,CAAC;QAEF,IAAI,UAAU,IAAI,CAAC,WAAW,IAAI,aAAa,CAAC,EAAE,CAAC;YACjD,MAAM,cAAc,GAClB,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxD,aAAa,GAAG,IAAI,CAAC,8BAA8B,CACjD,UAAU,EACV,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAC/B,cAAc,EACd,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EACrD,aAAa,EACb,WAAW;gBACT,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,IAAI;gBACjE,CAAC,CAAC,YAAI,CAAC,0DAA0D,CACpE,CAAC;QACJ,CAAC;QAED,WAAW;QACX,IAAI,WAAW,IAAI,qBAAqB,EAAE,CAAC;YACzC,IAAI,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EACpD,iBAAiB,CAAC,OAAQ,CAAC,QAAQ,EACnC,YAAI,CAAC,2DAA2D,CACjE,CAAC;YAEF,IAAI,CAAC,CAAC,UAAU,IAAI,WAAW,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9C,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC;oBAC3D,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,IAAI,CAAC,aAAa;yBACf,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;wBACpB,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC;oBAC9C,CAAC,CAAC;yBACD,MAAM,CAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;wBAC1B,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC;wBAClB,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,CAAC,CAAC,CAAC;gBAEZ,eAAe,GAAG,YAAY,CAC5B,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAC/B;oBACE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,CAAC;oBACvD,UAAU,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;oBACtC,eAAe;iBAChB,CACF,CAAC;YACJ,CAAC;YAED,aAAa,GAAG,SAAS,CAAC,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,iDAAiD;QACjD,IACE,aAAa;YACb,uBAAuB;YACvB,CAAC,WAAW,IAAI,UAAU,CAAC,EAC3B,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EACpD,iBAAiB,CAAC,QAAS,CAAC,QAAQ,CACrC,CAAC;YACF,aAAa,GAAG,SAAS,CAAC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,0EAA0E;QAC1E,IACE,iBAAiB;YACjB,uBAAuB;YACvB,CAAC,WAAW,IAAI,UAAU,CAAC,EAC3B,CAAC;YACD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;YACtE,aAAa,GAAG,SAAS,CAAC,CAAC,aAAa,EAAE,wBAAwB,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,CAAC,WAAW,IAAI,aAAa,CAAC,IAAI,UAAU,CAAC,IAAI,WAAW,EAAE,CAAC;YAClE,aAAa,GAAG,IAAI,CAAC,oBAAoB,CACvC,UAAU,EACV,cAAc,EACd,aAAa,EACb,wCAA4B,EAC5B,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAChC,6CAAiC,EACjC,KAAK,CACN,CAAC;QACJ,CAAC;QAED,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAC7B;YACE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YAC/C,UAAU,CACR,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,2BAAe,CAAC,EAAE,wDAAwD;YACjH,EAAE,CACH;YACD,aAAa,EAAE,WAAW;SAC3B,CACF,CAAC;IACJ,CAAC;CACF;AAj0CD,8DAi0CC"}
|
|
@@ -183,21 +183,16 @@ class Executor03BytecodeBuilder extends ExecutorBytecodeBuilder_1.ExecutorByteco
|
|
|
183
183
|
let fromAmountPos = 0;
|
|
184
184
|
let toAmountPos = 0;
|
|
185
185
|
if (insertAmount) {
|
|
186
|
-
|
|
187
|
-
fromAmountPos = exchangeParam.insertFromAmountPos;
|
|
188
|
-
}
|
|
189
|
-
else {
|
|
190
|
-
const fromAmount = ethers_1.ethers.utils.defaultAbiCoder.encode(['uint256'], [swap.swapExchanges[swapExchangeIndex].srcAmount]);
|
|
191
|
-
const fromAmountIndex = exchangeData
|
|
192
|
-
.replace('0x', '')
|
|
193
|
-
.indexOf(fromAmount.replace('0x', ''));
|
|
194
|
-
fromAmountPos =
|
|
195
|
-
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
196
|
-
}
|
|
186
|
+
const fromAmount = ethers_1.ethers.utils.defaultAbiCoder.encode(['uint256'], [swap.swapExchanges[swapExchangeIndex].srcAmount]);
|
|
197
187
|
const toAmount = ethers_1.ethers.utils.defaultAbiCoder.encode(['uint256'], [swap.swapExchanges[swapExchangeIndex].destAmount]);
|
|
188
|
+
const fromAmountIndex = exchangeData
|
|
189
|
+
.replace('0x', '')
|
|
190
|
+
.indexOf(fromAmount.replace('0x', ''));
|
|
198
191
|
const toAmountIndex = exchangeData
|
|
199
192
|
.replace('0x', '')
|
|
200
193
|
.indexOf(toAmount.replace('0x', ''));
|
|
194
|
+
fromAmountPos =
|
|
195
|
+
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
201
196
|
toAmountPos =
|
|
202
197
|
(toAmountIndex !== -1 ? toAmountIndex : exchangeData.length) / 2;
|
|
203
198
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Executor03BytecodeBuilder.js","sourceRoot":"","sources":["../../src/executor/Executor03BytecodeBuilder.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAQhC,oCAAwC;AAExC,mCAAsD;AACtD,2CAA8C;AAC9C,uEAImC;AAGnC,MAAM,EACJ,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,GACvE,GAAG,eAAM,CAAC;AAWX;;GAEG;AACH,MAAa,yBAA0B,SAAQ,iDAG9C;IACC,IAAI,GAAG,iBAAS,CAAC,KAAK,CAAC;IACvB;;;;;;;;;;;;OAYG;IACO,oBAAoB,CAC5B,UAAuB,EACvB,cAAuC,EACvC,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,kBAA0B,EAC1B,iBAAyC;QAEzC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE9C,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,qCAAqC,EACrC,cAAc,EACd,kCAAkC,EAClC,kCAAkC,GACnC,GAAG,aAAa,CAAC;QAClB,MAAM,YAAY,GAChB,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,kBAAU,CAAC,OAAO,CAAC;QAExE,MAAM,4BAA4B,GAChC,qCAAqC;YACrC,CAAC,YAAY,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,cAAc,IAAI,QAAQ,IAAI,iBAAiB,EAAE,OAAO,CAAC;QAC1E,MAAM,UAAU,GACd,cAAc,IAAI,SAAS,IAAI,iBAAiB,EAAE,QAAQ,CAAC;QAE7D,IAAI,OAAO,GAAG,4BAA4B;YACxC,CAAC,CAAC,YAAI,CAAC,qDAAqD;YAC5D,CAAC,CAAC,YAAI,CAAC,gDAAgD,CAAC,CAAC,SAAS;QAEpE,IAAI,WAAW,GACb,YAAI,CAAC,qDAAqD,CAAC,CAAC,IAAI;QAElE,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,uBAAuB,GAC3B,4BAA4B,IAAI,CAAC,kCAAkC,CAAC;YAEtE,OAAO,GAAG,mBAAmB;gBAC3B,CAAC,CAAC,uBAAuB;oBACvB,CAAC,CAAC,YAAI,CAAC,2DAA2D,CAAC,IAAI;oBACvE,CAAC,CAAC,YAAI,CAAC,mFAAmF,CAAC,KAAK;gBAClG,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,YAAI,CAAC,gEAAgE,CAAC,IAAI;oBAC5E,CAAC,CAAC,YAAI,CAAC,wFAAwF,CAAC,CAAC,KAAK;QAC1G,CAAC;aAAM,IAAI,SAAS,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,oDAAoD,CAAC,IAAI;gBAChE,CAAC,CAAC,YAAI,CAAC,+CAA+C,CAAC,CAAC,IAAI;QAChE,CAAC;aAAM,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,0DAA0D,CAAC,IAAI;gBACtE,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,CAAC,KAAK;YACrE,uBAAuB;QACzB,CAAC;aAAM,IACL,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC7B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,EACxD,CAAC;YACD,OAAO,GAAG,4BAA4B;gBACpC,CAAC,CAAC,YAAI,CAAC,0DAA0D,CAAC,IAAI;gBACtE,CAAC,CAAC,YAAI,CAAC,qDAAqD,CAAC,CAAC,KAAK;QACvE,CAAC;QAED,OAAO;YACL,OAAO;YACP,WAAW;SACZ,CAAC;IACJ,CAAC;IAES,uBAAuB,CAC/B,UAAuB,EACvB,cAAuC,EACvC,UAAkB,EAClB,SAAiB,EACjB,iBAAyB,EACzB,kBAA0B,EAC1B,iBAAyC;QAEzC,OAAO;YACL,OAAO,EAAE,YAAI,CAAC,qDAAqD,EAAE,IAAI;YACzE,WAAW,EAAE,YAAI,CAAC,qDAAqD,EAAE,IAAI;SAC9E,CAAC;IACJ,CAAC;IAES,uBAAuB,CAC/B,MAAoE;QAEpE,MAAM,EACJ,UAAU,EACV,cAAc,EACd,KAAK,EACL,KAAK,EACL,iBAAiB,EACjB,IAAI,GACL,GAAG,MAAM,CAAC;QACX,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAE5E,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAE/C,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACxC,UAAU;YACV,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,CAAC;YACZ,iBAAiB,EAAE,KAAK;YACxB,cAAc;YACd,kBAAkB,EAAE,KAAK;YACzB,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;YACxB,iBAAiB;SAClB,CAAC,CAAC;QAEH,YAAY,GAAG,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAExC,IACE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,cAAc;YAC9C,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;YAC5B,CAAC,gBAAgB,CAAC,YAAY;YAC9B,gBAAgB,CAAC,WAAW,EAC5B,CAAC;YACD,yFAAyF;YACzF,0DAA0D;YAC1D,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,gBAAgB,CAAC,WAAW,CAAC,MAAM,EACnC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EACrB,gBAAgB,CAAC,eAAe,CACjC,CAAC;YAEF,YAAY,GAAG,SAAS,CAAC,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,IACE,iBAAiB,EAAE,OAAO;YAC1B,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC;YAC3B,CAAC,gBAAgB,CAAC,YAAY;YAC9B,gBAAgB,CAAC,cAAc;QAC/B,mDAAmD;QACnD,4DAA4D;UAC5D,CAAC;YACD,IAAI,mBAAmB,GAAG,IAAI,CAAC;YAC/B,IAAI,gBAAgB,CAAC,WAAW,EAAE,CAAC;gBACjC,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAC7C,gBAAgB,CAAC,WAAW,CAAC,MAAM,EACnC,gBAAgB,CAAC,WAAW,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EACrB,gBAAgB,CAAC,eAAe,CACjC,CAAC;YACJ,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAC/C,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAClC,YAAI,CAAC,2DAA2D,CACjE,CAAC;YAEF,YAAY,GAAG,SAAS,CAAC;gBACvB,mBAAmB;gBACnB,eAAe;gBACf,YAAY;aACb,CAAC,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,IAAI,KAAK,KAAK,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,sEAAsE;YACtE,IACE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC;gBACxD,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,EAC7B,CAAC;gBACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CACjD,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE;oBACjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB;oBAC5C,0EAA0E;oBAC1E,GAAG;iBACJ,CAAC,EACF,IAAI,CAAC,SAAS,CACf,CAAC;gBAEF,YAAY,GAAG,SAAS,CAAC,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;YAC7D,CAAC;YAED,gBAAgB;YAChB,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,IAAI,iBAAiB,EAAE,QAAQ,EAAE,CAAC;gBAChE,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,EACrC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CACpC,CAAC;gBACF,YAAY,GAAG,SAAS,CAAC,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;YAC7D,CAAC;YAED,uBAAuB;YACvB,IACE,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;gBAC5B,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,IAAI,iBAAiB,EAAE,QAAQ,CAAC,EACtE,CAAC;gBACD,MAAM,wBAAwB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;gBACtE,YAAY,GAAG,SAAS,CAAC,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CACrB,YAAY,EACZ,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,EACjC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS;QACd,iEAAiE;QACjE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC;YAChD,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,CAC9B,CAAC;IACJ,CAAC;IAES,gBAAgB,CACxB,MAAsD;QAEtD,MAAM,EACJ,UAAU,EACV,UAAU,EACV,SAAS,EACT,cAAc,EACd,kBAAkB,EAClB,IAAI,EACJ,iBAAiB,EACjB,iBAAiB,GAClB,GAAG,MAAM,CAAC;QACX,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,8BAA8B,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAEtD,uBAAuB;QACvB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAEtD,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/D,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;QAErD,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAC5B,CAAC;QACF,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAC7B,CAAC;QAEF,8FAA8F;QAC9F,IACE,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,aAAa,CAAC,cAAc;YAC5B,iBAAiB,EAAE,QAAQ,EAC3B,CAAC;YACD,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAC3C,YAAY,EACZ,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CACnC,CAAC;QACJ,CAAC;QAED,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,IAAI,8BAA8B,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACjE,MAAM,aAAa,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,SAAS,CAAC;gBAChD,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;gBACpC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAEjC,MAAM,kBAAkB,GAAG,YAAY;iBACpC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5C,oBAAoB,GAAG,CAAC,kBAAkB,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,aAAa,CAAC,mBAAmB,EAAE,CAAC;gBACtC,aAAa,GAAG,aAAa,CAAC,mBAAmB,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CACpD,CAAC,SAAS,CAAC,EACX,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAClD,CAAC;gBAEF,MAAM,eAAe,GAAG,YAAY;qBACjC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;qBACjB,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;gBAEzC,aAAa;oBACX,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzE,CAAC;YAED,MAAM,QAAQ,GAAG,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAClD,CAAC,SAAS,CAAC,EACX,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CACnD,CAAC;YAEF,MAAM,aAAa,GAAG,YAAY;iBAC/B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAEvC,WAAW;gBACT,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CACvB,aAAa,CAAC,cAAc,EAC5B,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,cAAc,IAAI,kBAAU,CAAC,OAAO,EACpC,IAAI,EACJ,WAAW,CACZ,CAAC;IACJ,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAmB,CAAC,iBAAS,CAAC,KAAK,CAAC,CAAC;IACzE,CAAC;IAEM,aAAa,CAClB,UAAuB,EACvB,cAAuC,EACvC,MAAc,EACd,iBAAyC;QAEzC,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE9C,sEAAsE;QACtE,gFAAgF;QAChF,MAAM,qBAAqB,GAAG,cAAc;aACzC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAClB,aAAa,EAAE,CAAC;YAChB,2DAA2D;YAC3D,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;SACxC,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAExD,MAAM,wBAAwB,GAAgB;YAC5C,GAAG,IAAI;YACP,aAAa,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;SAC9D,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAC3B,UAAU,EACV,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,EAC/C,iBAAiB,CAClB,CAAC;QAEF,IAAI,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAC9C,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CACjB,SAAS,CAAC;YACR,GAAG;YACH,IAAI,CAAC,uBAAuB,CAAC;gBAC3B,UAAU;gBACV,cAAc,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;gBAC/D,KAAK;gBACL,KAAK;gBACL,MAAM;gBACN,iBAAiB;gBACjB,IAAI,EAAE,wBAAwB;aAC/B,CAAC;SACH,CAAC,EACJ,IAAI,CACL,CAAC;QAEF,OAAO,YAAY,CACjB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAC7B;YACE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,kBAAkB;YAC/C,UAAU,CACR,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,2BAAe,CAAC,EAAE,wDAAwD;YACjH,EAAE,CACH;YACD,aAAa,EAAE,cAAc;SAC9B,CACF,CAAC;IACJ,CAAC;IAEO,WAAW,CACjB,QAAgB,EAChB,UAAkB,EAClB,eAAwB,EACxB,gBAAyB,EACzB,YAAqB;QAErB,MAAM,sBAAsB,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAC;QAE/D,0EAA0E;QAC1E,gEAAgE;QAChE,MAAM,iBAAiB,GAAG,QAAQ;aAC/B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;aACjB,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAErD,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAElE,MAAM,kBAAkB,GAAG,QAAQ;aAChC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;aACjB,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAEtD,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpE,OAAO,YAAY,CACjB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC3D;YACE,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB;YACjE,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO;YACrD,YAAY,EAAE,mBAAmB;YACjC,WAAW,EAAE,kBAAkB;YAC/B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa;YAClE,QAAQ,EAAE,gBAAgB;SAC3B,CACF,CAAC;IACJ,CAAC;CACF;AArbD,8DAqbC"}
|
|
1
|
+
{"version":3,"file":"Executor03BytecodeBuilder.js","sourceRoot":"","sources":["../../src/executor/Executor03BytecodeBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import NodeCache from 'node-cache';
|
|
2
|
+
import { Network } from '../constants';
|
|
3
|
+
import { IDexHelper } from '../dex-helper';
|
|
4
|
+
type JsonPubSubMsg = {
|
|
5
|
+
expiresAt: number;
|
|
6
|
+
data: Record<string, unknown>;
|
|
7
|
+
};
|
|
8
|
+
type SetPubSubMsg = string[];
|
|
9
|
+
export declare class JsonPubSub {
|
|
10
|
+
private dexHelper;
|
|
11
|
+
private dexKey;
|
|
12
|
+
channel: string;
|
|
13
|
+
network: Network;
|
|
14
|
+
localCache: NodeCache;
|
|
15
|
+
constructor(dexHelper: IDexHelper, dexKey: string, channel: string);
|
|
16
|
+
initialize(): void;
|
|
17
|
+
subscribe(): void;
|
|
18
|
+
publish(data: Record<string, unknown>, ttl: number): void;
|
|
19
|
+
handleSubscription(json: JsonPubSubMsg): void;
|
|
20
|
+
getAndCache<T>(key: string): Promise<T | null>;
|
|
21
|
+
}
|
|
22
|
+
export declare class SetPubSub {
|
|
23
|
+
private dexHelper;
|
|
24
|
+
private dexKey;
|
|
25
|
+
channel: string;
|
|
26
|
+
network: Network;
|
|
27
|
+
set: Set<string>;
|
|
28
|
+
constructor(dexHelper: IDexHelper, dexKey: string, channel: string);
|
|
29
|
+
initialize(key: string): Promise<void>;
|
|
30
|
+
subscribe(): void;
|
|
31
|
+
publish(set: SetPubSubMsg): void;
|
|
32
|
+
handleSubscription(set: SetPubSubMsg): void;
|
|
33
|
+
has(key: string): Promise<boolean>;
|
|
34
|
+
}
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SetPubSub = exports.JsonPubSub = void 0;
|
|
7
|
+
const node_cache_1 = __importDefault(require("node-cache"));
|
|
8
|
+
class JsonPubSub {
|
|
9
|
+
dexHelper;
|
|
10
|
+
dexKey;
|
|
11
|
+
channel;
|
|
12
|
+
network;
|
|
13
|
+
localCache = new node_cache_1.default();
|
|
14
|
+
constructor(dexHelper, dexKey, channel) {
|
|
15
|
+
this.dexHelper = dexHelper;
|
|
16
|
+
this.dexKey = dexKey;
|
|
17
|
+
this.network = this.dexHelper.config.data.network;
|
|
18
|
+
this.channel = `${this.network}_${this.dexKey}_${channel}`;
|
|
19
|
+
}
|
|
20
|
+
initialize() {
|
|
21
|
+
this.subscribe();
|
|
22
|
+
}
|
|
23
|
+
subscribe() {
|
|
24
|
+
this.dexHelper.cache.subscribe(this.channel, (_, msg) => {
|
|
25
|
+
const decodedMsg = JSON.parse(msg);
|
|
26
|
+
this.handleSubscription(decodedMsg);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
publish(data, ttl) {
|
|
30
|
+
const expiresAt = Math.round(Date.now() / 1000) + ttl;
|
|
31
|
+
this.dexHelper.cache.publish(this.channel, JSON.stringify({ expiresAt, data }));
|
|
32
|
+
}
|
|
33
|
+
handleSubscription(json) {
|
|
34
|
+
const { expiresAt, data } = json;
|
|
35
|
+
const now = Math.round(Date.now() / 1000);
|
|
36
|
+
// calculating ttl as message might come with the delay
|
|
37
|
+
const ttl = expiresAt - now;
|
|
38
|
+
const keys = Object.keys(data);
|
|
39
|
+
for (const key of keys) {
|
|
40
|
+
this.localCache.set(key, data[key], ttl);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
async getAndCache(key) {
|
|
44
|
+
const localValue = this.localCache.get(key);
|
|
45
|
+
if (localValue) {
|
|
46
|
+
return localValue;
|
|
47
|
+
}
|
|
48
|
+
const [value, ttl] = await Promise.all([
|
|
49
|
+
this.dexHelper.cache.get(this.dexKey, this.network, key),
|
|
50
|
+
this.dexHelper.cache.ttl(this.dexKey, this.network, key),
|
|
51
|
+
]);
|
|
52
|
+
if (value) {
|
|
53
|
+
// setting ttl same as in cache
|
|
54
|
+
// TODO-ps: check if ttl is not null
|
|
55
|
+
const parsedValue = JSON.parse(value);
|
|
56
|
+
this.localCache.set(key, parsedValue, Number(ttl));
|
|
57
|
+
return parsedValue;
|
|
58
|
+
}
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.JsonPubSub = JsonPubSub;
|
|
63
|
+
class SetPubSub {
|
|
64
|
+
dexHelper;
|
|
65
|
+
dexKey;
|
|
66
|
+
channel;
|
|
67
|
+
network;
|
|
68
|
+
set = new Set();
|
|
69
|
+
constructor(dexHelper, dexKey, channel) {
|
|
70
|
+
this.dexHelper = dexHelper;
|
|
71
|
+
this.dexKey = dexKey;
|
|
72
|
+
this.network = this.dexHelper.config.data.network;
|
|
73
|
+
this.channel = `${this.network}_${this.dexKey}_${channel}`;
|
|
74
|
+
}
|
|
75
|
+
async initialize(key) {
|
|
76
|
+
// as there's no lazy load, we need to initialize the set
|
|
77
|
+
const initSet = await this.dexHelper.cache.smembers(key);
|
|
78
|
+
for (const member of initSet) {
|
|
79
|
+
this.set.add(member);
|
|
80
|
+
}
|
|
81
|
+
this.subscribe();
|
|
82
|
+
}
|
|
83
|
+
subscribe() {
|
|
84
|
+
this.dexHelper.cache.subscribe(this.channel, (_, msg) => {
|
|
85
|
+
const decodedMsg = JSON.parse(msg);
|
|
86
|
+
this.handleSubscription(decodedMsg);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
publish(set) {
|
|
90
|
+
// as there's no lazy load, also store locally
|
|
91
|
+
for (const key of set) {
|
|
92
|
+
this.set.add(key);
|
|
93
|
+
}
|
|
94
|
+
this.dexHelper.cache.publish(this.channel, JSON.stringify(set));
|
|
95
|
+
}
|
|
96
|
+
handleSubscription(set) {
|
|
97
|
+
for (const key of set) {
|
|
98
|
+
this.set.add(key);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async has(key) {
|
|
102
|
+
return this.set.has(key);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
exports.SetPubSub = SetPubSub;
|
|
106
|
+
//# sourceMappingURL=pub-sub.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pub-sub.js","sourceRoot":"","sources":["../../src/lib/pub-sub.ts"],"names":[],"mappings":"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"}
|
package/build/types.d.ts
CHANGED
|
@@ -148,7 +148,6 @@ export type DexExchangeParam = {
|
|
|
148
148
|
swappedAmountNotPresentInExchangeData?: boolean;
|
|
149
149
|
preSwapUnwrapCalldata?: string;
|
|
150
150
|
returnAmountPos: number | undefined;
|
|
151
|
-
insertFromAmountPos?: number;
|
|
152
151
|
permit2Approval?: boolean;
|
|
153
152
|
};
|
|
154
153
|
export type DexExchangeParamWithBooleanNeedWrapNative = DexExchangeParam & {
|
package/package.json
CHANGED
|
@@ -69,10 +69,6 @@ const ALGEBRA_TICK_BASE_OVERHEAD = 75_000;
|
|
|
69
69
|
const ALGEBRA_POOL_SEARCH_OVERHEAD = 10_000;
|
|
70
70
|
const ALGEBRA_QUOTE_GASLIMIT = 2_000_000;
|
|
71
71
|
|
|
72
|
-
const MAX_STALE_STATE_BLOCK_AGE = {
|
|
73
|
-
[Network.ZKEVM]: 150, // approximately 3min
|
|
74
|
-
};
|
|
75
|
-
|
|
76
72
|
type IAlgebraEventPool =
|
|
77
73
|
| AlgebraEventPoolV1_1
|
|
78
74
|
| AlgebraEventPoolV1_9
|
|
@@ -240,20 +236,6 @@ export class Algebra extends SimpleExchange implements IDex<AlgebraData> {
|
|
|
240
236
|
|
|
241
237
|
if (pool) {
|
|
242
238
|
if (!pool.initFailed) {
|
|
243
|
-
if (this.network !== Network.ZKEVM) return pool;
|
|
244
|
-
|
|
245
|
-
if (
|
|
246
|
-
pool.getStaleState() === null ||
|
|
247
|
-
(pool.getState(blockNumber) === null &&
|
|
248
|
-
blockNumber - pool.getStateBlockNumber() >
|
|
249
|
-
MAX_STALE_STATE_BLOCK_AGE[this.network])
|
|
250
|
-
) {
|
|
251
|
-
/* reload state, on zkEVM this would most likely timeout during request life
|
|
252
|
-
* but would allow to rely on staleState for couple of min for next requests
|
|
253
|
-
*/
|
|
254
|
-
await pool.initialize(blockNumber, { forceRegenerate: true });
|
|
255
|
-
}
|
|
256
|
-
|
|
257
239
|
return pool;
|
|
258
240
|
} else {
|
|
259
241
|
// if init failed then prefer to early return pool with empty state to fallback to rpc call
|
|
@@ -615,37 +597,16 @@ export class Algebra extends SimpleExchange implements IDex<AlgebraData> {
|
|
|
615
597
|
let state = pool.getState(blockNumber);
|
|
616
598
|
|
|
617
599
|
if (state === null) {
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
`${_srcAddress}_${_destAddress}_${pool.name}_${
|
|
627
|
-
pool.poolAddress
|
|
628
|
-
} state fallback to latest early enough state. Current blockNumber=${blockNumber}, stateBlockNumber=${pool.getStateBlockNumber()}`,
|
|
629
|
-
);
|
|
630
|
-
state = pool.getStaleState();
|
|
631
|
-
} else {
|
|
632
|
-
this.logger.warn(
|
|
633
|
-
`${_srcAddress}_${_destAddress}_${pool.name}_${pool.poolAddress} state is unhealthy, cannot compute price (no fallback on this chain)`,
|
|
634
|
-
);
|
|
635
|
-
return null; // never fallback as takes more time
|
|
636
|
-
}
|
|
637
|
-
} else {
|
|
638
|
-
const rpcPrice = await this.getPricingFromRpc(
|
|
639
|
-
_srcToken,
|
|
640
|
-
_destToken,
|
|
641
|
-
amounts,
|
|
642
|
-
side,
|
|
643
|
-
pool,
|
|
644
|
-
transferFees,
|
|
645
|
-
);
|
|
600
|
+
const rpcPrice = await this.getPricingFromRpc(
|
|
601
|
+
_srcToken,
|
|
602
|
+
_destToken,
|
|
603
|
+
amounts,
|
|
604
|
+
side,
|
|
605
|
+
pool,
|
|
606
|
+
transferFees,
|
|
607
|
+
);
|
|
646
608
|
|
|
647
|
-
|
|
648
|
-
}
|
|
609
|
+
return rpcPrice;
|
|
649
610
|
}
|
|
650
611
|
|
|
651
612
|
if (!state) return null;
|
package/src/dex/bebop/bebop.ts
CHANGED
|
@@ -723,7 +723,7 @@ export class Bebop extends SimpleExchange implements IDex<BebopData> {
|
|
|
723
723
|
}
|
|
724
724
|
}
|
|
725
725
|
|
|
726
|
-
if (side
|
|
726
|
+
if (side == SwapSide.SELL) {
|
|
727
727
|
const requiredAmount = BigInt(optimalSwapExchange.destAmount);
|
|
728
728
|
const quoteAmount = BigInt(
|
|
729
729
|
response.buyTokens[utils.getAddress(destToken.address)].amount,
|
|
@@ -593,7 +593,6 @@ export class Dexalot extends SimpleExchange implements IDex<DexalotData> {
|
|
|
593
593
|
.multipliedBy(10000)
|
|
594
594
|
.toFixed(0)
|
|
595
595
|
: options.slippageFactor.minus(1).multipliedBy(10000).toFixed(0);
|
|
596
|
-
|
|
597
596
|
const rfqParams = {
|
|
598
597
|
makerAsset: ethers.utils.getAddress(makerToken.address),
|
|
599
598
|
takerAsset: ethers.utils.getAddress(takerToken.address),
|
package/src/dex/index.ts
CHANGED
|
@@ -96,7 +96,6 @@ import { StkGHO } from './stkgho/stkgho';
|
|
|
96
96
|
import { BalancerV3 } from './balancer-v3/balancer-v3';
|
|
97
97
|
import { balancerV3Merge } from './balancer-v3/optimizer';
|
|
98
98
|
import { SkyConverter } from './sky-converter/sky-converter';
|
|
99
|
-
import { Cables } from './cables/cables';
|
|
100
99
|
import { Stader } from './stader/stader';
|
|
101
100
|
|
|
102
101
|
const LegacyDexes = [
|
|
@@ -188,7 +187,6 @@ const Dexes = [
|
|
|
188
187
|
UsualBond,
|
|
189
188
|
StkGHO,
|
|
190
189
|
SkyConverter,
|
|
191
|
-
Cables,
|
|
192
190
|
FluidDex,
|
|
193
191
|
];
|
|
194
192
|
|
|
@@ -379,21 +379,17 @@ export class Executor01BytecodeBuilder extends ExecutorBytecodeBuilder<
|
|
|
379
379
|
|
|
380
380
|
let fromAmountPos = 0;
|
|
381
381
|
if (insertFromAmount) {
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
)
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
fromAmountPos =
|
|
395
|
-
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
396
|
-
}
|
|
382
|
+
const fromAmount = ethers.utils.defaultAbiCoder.encode(
|
|
383
|
+
['uint256'],
|
|
384
|
+
[swap.swapExchanges[swapExchangeIndex].srcAmount],
|
|
385
|
+
);
|
|
386
|
+
|
|
387
|
+
const fromAmountIndex = exchangeData
|
|
388
|
+
.replace('0x', '')
|
|
389
|
+
.indexOf(fromAmount.replace('0x', ''));
|
|
390
|
+
|
|
391
|
+
fromAmountPos =
|
|
392
|
+
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
397
393
|
}
|
|
398
394
|
|
|
399
395
|
return this.buildCallData(
|
|
@@ -335,20 +335,16 @@ export class Executor02BytecodeBuilder extends ExecutorBytecodeBuilder<
|
|
|
335
335
|
|
|
336
336
|
let fromAmountPos = 0;
|
|
337
337
|
if (insertFromAmount) {
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
);
|
|
345
|
-
const fromAmountIndex = exchangeData
|
|
346
|
-
.replace('0x', '')
|
|
347
|
-
.indexOf(fromAmount.replace('0x', ''));
|
|
338
|
+
const fromAmount = ethers.utils.defaultAbiCoder.encode(
|
|
339
|
+
['uint256'],
|
|
340
|
+
[swapExchange.srcAmount],
|
|
341
|
+
);
|
|
342
|
+
const fromAmountIndex = exchangeData
|
|
343
|
+
.replace('0x', '')
|
|
344
|
+
.indexOf(fromAmount.replace('0x', ''));
|
|
348
345
|
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
}
|
|
346
|
+
fromAmountPos =
|
|
347
|
+
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
352
348
|
}
|
|
353
349
|
|
|
354
350
|
return this.buildCallData(
|
|
@@ -331,31 +331,24 @@ export class Executor03BytecodeBuilder extends ExecutorBytecodeBuilder<
|
|
|
331
331
|
let fromAmountPos = 0;
|
|
332
332
|
let toAmountPos = 0;
|
|
333
333
|
if (insertAmount) {
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
['uint256'],
|
|
339
|
-
[swap.swapExchanges[swapExchangeIndex].srcAmount],
|
|
340
|
-
);
|
|
341
|
-
|
|
342
|
-
const fromAmountIndex = exchangeData
|
|
343
|
-
.replace('0x', '')
|
|
344
|
-
.indexOf(fromAmount.replace('0x', ''));
|
|
345
|
-
|
|
346
|
-
fromAmountPos =
|
|
347
|
-
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
348
|
-
}
|
|
349
|
-
|
|
334
|
+
const fromAmount = ethers.utils.defaultAbiCoder.encode(
|
|
335
|
+
['uint256'],
|
|
336
|
+
[swap.swapExchanges[swapExchangeIndex].srcAmount],
|
|
337
|
+
);
|
|
350
338
|
const toAmount = ethers.utils.defaultAbiCoder.encode(
|
|
351
339
|
['uint256'],
|
|
352
340
|
[swap.swapExchanges[swapExchangeIndex].destAmount],
|
|
353
341
|
);
|
|
354
342
|
|
|
343
|
+
const fromAmountIndex = exchangeData
|
|
344
|
+
.replace('0x', '')
|
|
345
|
+
.indexOf(fromAmount.replace('0x', ''));
|
|
355
346
|
const toAmountIndex = exchangeData
|
|
356
347
|
.replace('0x', '')
|
|
357
348
|
.indexOf(toAmount.replace('0x', ''));
|
|
358
349
|
|
|
350
|
+
fromAmountPos =
|
|
351
|
+
(fromAmountIndex !== -1 ? fromAmountIndex : exchangeData.length) / 2;
|
|
359
352
|
toAmountPos =
|
|
360
353
|
(toAmountIndex !== -1 ? toAmountIndex : exchangeData.length) / 2;
|
|
361
354
|
}
|
package/src/types.ts
CHANGED