@drift-labs/sdk 0.1.26 → 0.1.27
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/lib/accounts/pollingOracleSubscriber.d.ts +26 -0
- package/lib/accounts/pollingOracleSubscriber.js +79 -0
- package/lib/accounts/types.d.ts +14 -1
- package/lib/clearingHouse.d.ts +4 -4
- package/lib/clearingHouse.js +32 -7
- package/lib/constants/markets.d.ts +2 -2
- package/lib/constants/markets.js +39 -28
- package/lib/idl/clearing_house.json +6 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/math/market.d.ts +2 -0
- package/lib/math/market.js +6 -1
- package/lib/orderParams.d.ts +1 -1
- package/lib/orderParams.js +2 -2
- package/lib/orders.d.ts +3 -2
- package/lib/orders.js +11 -4
- package/package.json +1 -1
- package/src/accounts/bulkAccountLoader.js +180 -0
- package/src/accounts/bulkAccountLoader.js.map +1 -0
- package/src/accounts/bulkUserSubscription.js +56 -0
- package/src/accounts/bulkUserSubscription.js.map +1 -0
- package/src/accounts/pollingClearingHouseAccountSubscriber.js +210 -0
- package/src/accounts/pollingClearingHouseAccountSubscriber.js.map +1 -0
- package/src/accounts/pollingOracleSubscriber.js +65 -0
- package/src/accounts/pollingOracleSubscriber.js.map +1 -0
- package/src/accounts/pollingOracleSubscriber.ts +103 -0
- package/src/accounts/pollingTokenAccountSubscriber.js +65 -0
- package/src/accounts/pollingTokenAccountSubscriber.js.map +1 -0
- package/src/accounts/pollingUserAccountSubscriber.js +139 -0
- package/src/accounts/pollingUserAccountSubscriber.js.map +1 -0
- package/src/accounts/types.js +1 -0
- package/src/accounts/types.js.map +1 -0
- package/src/accounts/types.ts +22 -1
- package/src/accounts/utils.js +1 -0
- package/src/accounts/utils.js.map +1 -0
- package/src/accounts/webSocketAccountSubscriber.js +15 -27
- package/src/accounts/webSocketAccountSubscriber.js.map +1 -0
- package/src/accounts/webSocketClearingHouseAccountSubscriber.js +212 -0
- package/src/accounts/webSocketClearingHouseAccountSubscriber.js.map +1 -0
- package/src/accounts/webSocketUserAccountSubscriber.js +78 -0
- package/src/accounts/webSocketUserAccountSubscriber.js.map +1 -0
- package/src/addresses.js +20 -44
- package/src/addresses.js.map +1 -0
- package/src/admin.js +443 -0
- package/src/admin.js.map +1 -0
- package/src/assert/assert.js +10 -0
- package/src/assert/assert.js.map +1 -0
- package/src/clearingHouse.js +769 -0
- package/src/clearingHouse.js.map +1 -0
- package/src/clearingHouse.ts +45 -7
- package/src/clearingHouseUser.js +581 -0
- package/src/clearingHouseUser.js.map +1 -0
- package/src/config.js +37 -0
- package/src/config.js.map +1 -0
- package/src/constants/markets.js +167 -0
- package/src/constants/markets.js.map +1 -0
- package/src/constants/markets.ts +41 -30
- package/src/constants/numericConstants.js +22 -0
- package/src/constants/numericConstants.js.map +1 -0
- package/src/factory/clearingHouse.js +65 -0
- package/src/factory/clearingHouse.js.map +1 -0
- package/src/factory/clearingHouseUser.js +35 -0
- package/src/factory/clearingHouseUser.js.map +1 -0
- package/src/factory/oracleClient.js +17 -0
- package/src/factory/oracleClient.js.map +1 -0
- package/src/idl/clearing_house.json +6 -1
- package/src/index.js +56 -0
- package/src/index.js.map +1 -0
- package/src/index.ts +1 -0
- package/src/math/amm.js +285 -0
- package/src/math/amm.js.map +1 -0
- package/src/math/conversion.js +16 -0
- package/src/math/conversion.js.map +1 -0
- package/src/math/funding.js +223 -0
- package/src/math/funding.js.map +1 -0
- package/src/math/insuranceFund.js +23 -0
- package/src/math/insuranceFund.js.map +1 -0
- package/src/math/market.js +30 -0
- package/src/math/market.js.map +1 -0
- package/src/math/market.ts +9 -0
- package/src/math/orders.js +73 -0
- package/src/math/orders.js.map +1 -0
- package/src/math/position.js +121 -0
- package/src/math/position.js.map +1 -0
- package/src/math/trade.js +182 -0
- package/src/math/trade.js.map +1 -0
- package/src/math/utils.js +27 -0
- package/src/math/utils.js.map +1 -0
- package/src/mockUSDCFaucet.js +88 -116
- package/src/mockUSDCFaucet.js.map +1 -0
- package/src/oracles/pythClient.js +39 -0
- package/src/oracles/pythClient.js.map +1 -0
- package/src/oracles/switchboardClient.js +60 -0
- package/src/oracles/switchboardClient.js.map +1 -0
- package/src/oracles/types.js +3 -0
- package/src/oracles/types.js.map +1 -0
- package/src/orderParams.js +109 -0
- package/src/orderParams.js.map +1 -0
- package/src/orderParams.ts +3 -2
- package/src/orders.js +172 -0
- package/src/orders.js.map +1 -0
- package/src/orders.ts +17 -4
- package/src/token/index.js +39 -0
- package/src/token/index.js.map +1 -0
- package/src/tx/defaultTxSender.js +13 -0
- package/src/tx/defaultTxSender.js.map +1 -0
- package/src/tx/retryTxSender.js +137 -0
- package/src/tx/retryTxSender.js.map +1 -0
- package/src/tx/types.js +3 -0
- package/src/tx/types.js.map +1 -0
- package/src/tx/utils.js +9 -0
- package/src/tx/utils.js.map +1 -0
- package/src/types.js +1 -0
- package/src/types.js.map +1 -0
- package/src/util/computeUnits.js +17 -0
- package/src/util/computeUnits.js.map +1 -0
- package/src/util/tps.js +17 -0
- package/src/util/tps.js.map +1 -0
- package/src/wallet.js +23 -0
- package/src/wallet.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clearingHouse.js","sourceRoot":"","sources":["clearingHouse.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmE;AACnE,iDAI2B;AAmB3B,8DAAgD;AAChD,oFAAyD;AAEzD,6CAQyB;AAKzB,2CAOqB;AAOrB,sCAAsC;AACtC,2DAGiC;AACjC,mEAAoD;AAEpD;;;;;;GAMG;AACH,MAAa,aAAa;IA0CzB,YACC,UAAsB,EACtB,MAAe,EACf,OAAgB,EAChB,iBAAiD,EACjD,QAAkB,EAClB,IAAoB;QAxCrB,kBAAa,GAAG,KAAK,CAAC;QA0CrB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IA9CD,IAAW,YAAY;QACtB,OAAO,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC;IAClE,CAAC;IAED,IAAW,YAAY,CAAC,GAAY;QACnC,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;IAC1B,CAAC;IAED;;;;;;;OAOG;IACI,MAAM,CAAC,IAAI,CACjB,UAAsB,EACtB,MAAe,EACf,sBAAiC,EACjC,OAAuB,iBAAQ,CAAC,cAAc,EAAE;QAEhD,MAAM,MAAM,GAAG,IAAA,+CAA+B,EAC7C,UAAU,EACV,MAAM,EACN,sBAAsB,EACtB,IAAI,CACJ,CAAC;QACF,OAAO,IAAA,gCAAgB,EAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAmBD;;;;OAIG;IACI,KAAK,CAAC,SAAS,CACrB,qBAAmD;QAEnD,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CACzD,qBAAqB,CACrB,CAAC;QACF,OAAO,IAAI,CAAC,YAAY,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,cAAc;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC;YACrB,qBAAqB;YACrB,uBAAuB;YACvB,8BAA8B;YAC9B,2BAA2B;YAC3B,2BAA2B;YAC3B,qBAAqB;YACrB,qBAAqB;SACrB,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,aAAa;QACzB,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,WAAW;QACvB,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC3B,CAAC;IAGM,KAAK,CAAC,iBAAiB;QAC7B,IAAI,IAAI,CAAC,cAAc,EAAE;YACxB,OAAO,IAAI,CAAC,cAAc,CAAC;SAC3B;QACD,IAAI,CAAC,cAAc,GAAG,MAAM,IAAA,iDAAqC,EAChE,IAAI,CAAC,OAAO,CAAC,SAAS,CACtB,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAEM,eAAe;QACrB,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;IACjD,CAAC;IAEM,iBAAiB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,CAAC;IACnD,CAAC;IAEM,SAAS,CAAC,WAAwB;QACxC,IAAI,WAAW,YAAY,WAAE,EAAE;YAC9B,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;SACrC;QACD,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;IAEM,+BAA+B;QACrC,OAAO,IAAI,CAAC,iBAAiB,CAAC,+BAA+B,EAAE,CAAC;IACjE,CAAC;IAEM,4BAA4B;QAClC,OAAO,IAAI,CAAC,iBAAiB,CAAC,4BAA4B,EAAE,CAAC;IAC9D,CAAC;IAEM,sBAAsB;QAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,CAAC;IACxD,CAAC;IAEM,4BAA4B;QAClC,OAAO,IAAI,CAAC,iBAAiB,CAAC,4BAA4B,EAAE,CAAC;IAC9D,CAAC;IAEM,wBAAwB;QAC9B,OAAO,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,CAAC;IAC1D,CAAC;IAEM,sBAAsB;QAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,CAAC;IACxD,CAAC;IAEM,sBAAsB;QAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,CAAC;IACxD,CAAC;IAGM,KAAK,CAAC,sBAAsB;QAClC,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC7B,OAAO,IAAI,CAAC,mBAAmB,CAAC;SAChC;QACD,IAAI,CAAC,mBAAmB,GAAG,MAAM,IAAA,yCAA6B,EAC7D,IAAI,CAAC,OAAO,CAAC,SAAS,CACtB,CAAC;QACF,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACjC,CAAC;IAEM,oBAAoB;QAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,CAAC;IACtD,CAAC;IAED;;;OAGG;IACI,YAAY,CAAC,SAAkB;QACrC,MAAM,WAAW,GAAG,IAAI,iBAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,IAAI,gBAAO,CAC7B,6BAAuB,EACvB,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,WAAW,CACX,CAAC;QAEF,uDAAuD;QACvD,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,WAAW,CAAC;QAErC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAC1B,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,0BAA0B,GAAG,SAAS,CAAC;QAC5C,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,qBAAqB;QAGjC,MAAM,CACL,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,6BAA6B,EAC7B,GAAG,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAE/C,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE;aAC1B,GAAG,CAAC,uBAAuB,CAAC;aAC5B,GAAG,CAAC,6BAA6B,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CACrC,EAAE,EACF,CAAC,oBAAoB,CAAC,EACtB,IAAI,CAAC,IAAI,CACT,CAAC;QACF,OAAO,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,6BAA6B;QAGlC,MAAM,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,GAC7C,MAAM,IAAA,2CAA+B,EACpC,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CACrB,CAAC;QAEH,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,MAAM,gBAAgB,GAAG;YACxB,cAAc,EAAE,KAAK;SACrB,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,aAAa,EAAE;YACxB,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC;YACvC,MAAM,wBAAwB,GAAG,MAAM,iBAAK,CAAC,yBAAyB,CACrE,uCAA2B,EAC3B,4BAAgB,EAChB,KAAK,CAAC,aAAa,EACnB,IAAI,CAAC,MAAM,CAAC,SAAS,CACrB,CAAC;YACF,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,wBAAwB;gBAChC,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,MAAM,aAAa,GAAG,IAAI,iBAAO,EAAE,CAAC;QACpC,MAAM,uBAAuB,GAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,cAAc,CAC5C,gBAAgB,EAChB,gBAAgB,EAChB;YACC,QAAQ,EAAE;gBACT,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB;gBACpC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS;gBAClD,aAAa,EAAE,aAAa,CAAC,SAAS;gBACtC,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;aACrC;YACD,iBAAiB,EAAE,iBAAiB;SACpC,CACD,CAAC;QAEH,MAAM,6BAA6B,GAClC,MAAM,IAAI,CAAC,kCAAkC,CAAC,oBAAoB,CAAC,CAAC;QAErE,OAAO;YACN,aAAa;YACb,oBAAoB;YACpB,uBAAuB;YACvB,6BAA6B;SAC7B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kCAAkC,CACvC,oBAAgC;QAEhC,IAAI,CAAC,oBAAoB,EAAE;YAC1B,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;SAC5D;QAED,MAAM,CAAC,0BAA0B,EAAE,sBAAsB,CAAC,GACzD,MAAM,IAAA,iDAAqC,EAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,oBAAoB,CACpB,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAoB,CACzD,sBAAsB,EACtB;YACC,QAAQ,EAAE;gBACT,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB;gBACpC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS;gBAClD,UAAU,EAAE,0BAA0B;gBACtC,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;aACrC;SACD,CACD,CAAC;IACH,CAAC;IAGD;;;OAGG;IACI,KAAK,CAAC,uBAAuB;QACnC,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC9B,OAAO,IAAI,CAAC,oBAAoB,CAAC;SACjC;QAED,IAAI,CAAC,oBAAoB,GAAG,MAAM,IAAA,mCAAuB,EACxD,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CACrB,CAAC;QACF,OAAO,IAAI,CAAC,oBAAoB,CAAC;IAClC,CAAC;IAGM,KAAK,CAAC,cAAc;QAC1B,IAAI,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO,IAAI,CAAC,WAAW,CAAC;SACxB;QAED,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CACxD,MAAM,IAAI,CAAC,uBAAuB,EAAE,CACpC,CAAgB,CAAC;QAClB,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAGD;;;OAGG;IACI,KAAK,CAAC,6BAA6B;QACzC,IAAI,IAAI,CAAC,0BAA0B,EAAE;YACpC,OAAO,IAAI,CAAC,0BAA0B,CAAC;SACvC;QAED,IAAI,CAAC,0BAA0B,GAAG,MAAM,IAAA,yCAA6B,EACpE,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,MAAM,IAAI,CAAC,uBAAuB,EAAE,CACpC,CAAC;QACF,OAAO,IAAI,CAAC,0BAA0B,CAAC;IACxC,CAAC;IAGD,KAAK,CAAC,uBAAuB;QAC5B,IAAI,IAAI,CAAC,eAAe,EAAE;YACzB,OAAO,IAAI,CAAC,eAAe,CAAC;SAC5B;QACD,MAAM,4BAA4B,GACjC,MAAM,IAAI,CAAC,UAAU,CAAC,oBAAoB,CACzC,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAC1C,CAAC;QAEH,IAAI,CAAC,eAAe,GAAG,4BAA4B,CAAC,KAAK,KAAK,IAAI,CAAC;QACnE,OAAO,IAAI,CAAC,eAAe,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC7B,MAAU,EACV,0BAAqC,EACrC,6BAAyC;QAEzC,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,+BAA+B,CACrE,MAAM,EACN,0BAA0B,EAC1B,6BAA6B,CAC7B,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAEtD,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,+BAA+B,CACpC,MAAU,EACV,0BAAqC,EACrC,6BAAyC;QAEzC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,IAAI,CAAC,6BAA6B,EAAE;YACnC,6BAA6B,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,SAAS,CAAC;SACxE;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE;YAC/D,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,qBAAqB,EAAE,0BAA0B;gBACjD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,YAAY,EAAE,4BAAgB;gBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,aAAa,EAAE,6BAA6B;aAC5C;SACD,CAAC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,yCAAyC,CACrD,MAAU,EACV,0BAAqC;QAErC,MAAM,CACL,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,6BAA6B,EAC7B,GAAG,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAE/C,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,+BAA+B,CACrE,MAAM,EACN,0BAA0B,EAC1B,oBAAoB,CAAC,SAAS,CAC9B,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE;aAC1B,GAAG,CAAC,uBAAuB,CAAC;aAC5B,GAAG,CAAC,6BAA6B,CAAC;aAClC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAE3E,OAAO,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IACtC,CAAC;IAEM,KAAK,CAAC,8BAA8B,CAC1C,cAA8B,EAC9B,MAAU;QAEV,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,EAAE,QAAQ,CAAC,GACnE,MAAM,cAAc,CAAC,iDAAiD,CACrE,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,MAAM,CACN,CAAC;QAEH,MAAM,CACL,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,6BAA6B,EAC7B,GAAG,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAE/C,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,+BAA+B,CACrE,MAAM,EACN,uBAAuB,EACvB,oBAAoB,CAAC,SAAS,CAC9B,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE;aAC1B,GAAG,CAAC,yBAAyB,CAAC;aAC9B,GAAG,CAAC,QAAQ,CAAC;aACb,GAAG,CAAC,uBAAuB,CAAC;aAC5B,GAAG,CAAC,6BAA6B,CAAC;aAClC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAE3E,OAAO,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IACtC,CAAC;IAEM,KAAK,CAAC,UAAU;QACtB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;YAC9D,QAAQ,EAAE;gBACT,IAAI,EAAE,oBAAoB;gBAC1B,aAAa,EAAE,IAAI,CAAC,SAAS;gBAC7B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;aAChC;SACD,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC9B,MAAU,EACV,0BAAqC;QAErC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CACxB,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,0BAA0B,CAAC,CACtE,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,uBAAuB,CACnC,MAAU,EACV,0BAAqC;QAErC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,IAAI,GAAQ,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CACtD,oBAAoB,CACpB,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,EAAE;YAChE,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,wBAAwB,EAAE,KAAK,CAAC,wBAAwB;gBACxD,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;gBACtD,qBAAqB,EAAE,0BAA0B;gBACjD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,YAAY,EAAE,4BAAgB;gBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,aAAa,EAAE,IAAI,CAAC,SAAS;gBAC7B,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,cAAc,EAAE,KAAK,CAAC,cAAc;aACpC;SACD,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,YAAY,CACxB,SAA4B,EAC5B,MAAU,EACV,WAAe,EACf,UAAe,EACf,aAAyB,EACzB,QAAoB;QAEpB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,iBAAiB,CAC3B,SAAS,EACT,MAAM,EACN,WAAW,EACX,UAAU,EACV,aAAa,EACb,QAAQ,CACR,CACD,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC7B,SAA4B,EAC5B,MAAU,EACV,WAAe,EACf,UAAe,EACf,aAAyB,EACzB,QAAoB;QAEpB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhD,IAAI,UAAU,IAAI,SAAS,EAAE;YAC5B,UAAU,GAAG,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW;SACnC;QAED,MAAM,gBAAgB,GAAG;YACxB,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,KAAK;SACf,CAAC;QACF,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,aAAa,EAAE;YAClB,gBAAgB,CAAC,aAAa,GAAG,IAAI,CAAC;YACtC,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,aAAa;gBACrB,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QACD,IAAI,QAAQ,EAAE;YACb,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC;YACjC,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,QAAQ;gBAChB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,MAAM,WAAW,GAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QAErE,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,CACjD,SAAS,EACT,MAAM,EACN,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB;YACC,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,MAAM,EAAE,WAAW;aACnB;YACD,iBAAiB,EAAE,iBAAiB;SACpC,CACD,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,kCAAkC,CAC9C,WAAwB,EACxB,aAAyB,EACzB,QAAoB;QAEpB,MAAM,YAAY,GAAyC,EAAE,CAAC;QAC9D,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACrE,IAAI,CAAC,uBAAuB,EAAE;YAC7B,YAAY,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC,CAAC;SACnE;QACD,YAAY,CAAC,IAAI,CAChB,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAChE,CAAC;QACF,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE,CAAC;QAC7B,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;YACvC,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SACpB;QAED,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAEM,KAAK,CAAC,UAAU,CACtB,WAAwB,EACxB,aAAyB,EACzB,QAAoB;QAEpB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAChE,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,eAAe,CAC3B,WAAwB,EACxB,aAAyB,EACzB,QAAoB;QAEpB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhD,MAAM,WAAW,GAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG;aACtE,MAAM,CAAC;QAEV,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,WAAW,CAAC,gBAAgB,CAAC,aAAa,EAAE;YAC/C,IAAI,CAAC,aAAa,EAAE;gBACnB,MAAM,KAAK,CACV,0EAA0E,CAC1E,CAAC;aACF;YAED,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,aAAa;gBACrB,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,IAAI,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YAC1C,IAAI,CAAC,QAAQ,EAAE;gBACd,MAAM,KAAK,CACV,8DAA8D,CAC9D,CAAC;aACF;YAED,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,QAAQ;gBAChB,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,uBAAI,CAAC,EAAE;YAC5C,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE;YAC7D,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,MAAM,IAAI,CAAC,6BAA6B,EAAE;gBACtD,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,UAAU,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAC/C,YAAY,EAAE,UAAU,CAAC,YAAY;aACrC;YACD,iBAAiB;SACjB,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,WAAW,CACvB,OAAW,EACX,MAAkB;QAElB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EACtD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAC5B,OAAW,EACX,MAAkB;QAElB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhD,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE/C,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE;YACX,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE;YAC1D,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,MAAM,IAAI,CAAC,6BAA6B,EAAE;gBACtD,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,UAAU,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAC/C,YAAY,EAAE,UAAU,CAAC,YAAY;aACrC;YACD,iBAAiB;SACjB,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAC/B,WAAmB,EACnB,MAAkB;QAElB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,EAClE,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,wBAAwB,CACpC,WAAmB,EACnB,MAAkB;QAElB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhD,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE/C,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE;YACX,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,WAAW,EAAE;YACtE,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,MAAM,IAAI,CAAC,6BAA6B,EAAE;gBACtD,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,UAAU,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAC/C,YAAY,EAAE,UAAU,CAAC,YAAY;aACrC;YACD,iBAAiB;SACjB,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,SAAS,CACrB,oBAA+B,EAC/B,0BAAqC,EACrC,KAAY;QAEZ,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,cAAc,CACxB,oBAAoB,EACpB,0BAA0B,EAC1B,KAAK,CACL,CACD,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,cAAc,CAC1B,oBAA+B,EAC/B,0BAAqC,EACrC,KAAY;QAEZ,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7D,MAAM,WAAW,GAAQ,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAC7D,oBAAoB,CACpB,CAAC;QAEF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QAEtD,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE/C,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,mBAAS,CAAC,OAAO,CAAC,EAAE;YAC9C,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,KAAK,CAAC,QAAQ;gBACtB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE;YACxD,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,MAAM,EAAE,eAAe;gBACvB,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,UAAU,EAAE,0BAA0B;gBACtC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,UAAU,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAC/C,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;gBAChD,MAAM,EAAE,MAAM;aACd;YACD,iBAAiB;SACjB,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,yCAAyC,CACrD,WAAwB,EACxB,aAAyB,EACzB,QAAoB;QAEpB,MAAM,YAAY,GAAyC,EAAE,CAAC;QAC9D,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACrE,IAAI,CAAC,uBAAuB,EAAE;YAC7B,YAAY,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC,CAAC;SACnE;QACD,YAAY,CAAC,IAAI,CAChB,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CACvE,CAAC;QACF,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE,CAAC;QAC7B,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;YACvC,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SACpB;QAED,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC7B,WAAwB,EACxB,aAAyB,EACzB,QAAoB;QAEpB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CACvE,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAClC,WAAwB,EACxB,aAAyB,EACzB,QAAoB;QAEpB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhD,MAAM,WAAW,GAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG;aACtE,MAAM,CAAC;QAEV,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,WAAW,CAAC,gBAAgB,CAAC,aAAa,EAAE;YAC/C,IAAI,CAAC,aAAa,EAAE;gBACnB,MAAM,KAAK,CACV,0EAA0E,CAC1E,CAAC;aACF;YAED,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,aAAa;gBACrB,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,IAAI,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YAC1C,IAAI,CAAC,QAAQ,EAAE;gBACd,MAAM,KAAK,CACV,8DAA8D,CAC9D,CAAC;aACF;YAED,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,QAAQ;gBAChB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,EAAE;YACpE,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,MAAM,IAAI,CAAC,6BAA6B,EAAE;gBACtD,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,UAAU,EAAE,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAC/C,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;gBAChD,MAAM,EAAE,WAAW;aACnB;YACD,iBAAiB;SACjB,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,aAAa,CACzB,WAAe,EACf,aAAyB,EACzB,QAAoB;QAEpB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC9B,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CACnE,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC9B,WAAe,EACf,aAAyB,EACzB,QAAoB;QAEpB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEhD,MAAM,WAAW,GAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QAErE,MAAM,gBAAgB,GAAG;YACxB,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,KAAK;SACf,CAAC;QACF,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,IAAI,aAAa,EAAE;YAClB,gBAAgB,CAAC,aAAa,GAAG,IAAI,CAAC;YACtC,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,aAAa;gBACrB,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QACD,IAAI,QAAQ,EAAE;YACb,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC;YACjC,iBAAiB,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,QAAQ;gBAChB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;SACH;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAClD,WAAW,EACX,gBAAgB,EAChB;YACC,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,aAAa,EAAE,WAAW,CAAC,SAAS;gBACpC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;gBAClD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,MAAM,EAAE,WAAW;aACnB;YACD,iBAAiB,EAAE,iBAAiB;SACpC,CACD,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,SAAS,CACrB,8BAAyC;QAEzC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CACxB,IAAA,gBAAQ,EAAC,MAAM,IAAI,CAAC,cAAc,CAAC,8BAA8B,CAAC,CAAC,EACnE,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,cAAc,CAC1B,8BAAyC;QAEzC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAElE,MAAM,qBAAqB,GAAQ,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CACvE,8BAA8B,CAC9B,CAAC;QACF,MAAM,mBAAmB,GACxB,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAC7C,qBAAqB,CAAC,SAAS,CAC/B,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzC,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,KAAK,MAAM,QAAQ,IAAI,mBAAmB,CAAC,SAAS,EAAE;YACrD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChE,iBAAiB,CAAC,IAAI,CAAC;oBACtB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM;oBACzB,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,KAAK;iBACf,CAAC,CAAC;aACH;SACD;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC;YAC/C,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,IAAI,EAAE,8BAA8B;gBACpC,UAAU,EAAE,oBAAoB;gBAChC,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,wBAAwB,EAAE,KAAK,CAAC,wBAAwB;gBACxD,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;gBACtD,YAAY,EAAE,4BAAgB;gBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,aAAa,EAAE,qBAAqB,CAAC,SAAS;gBAC9C,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;aAClD;YACD,iBAAiB,EAAE,iBAAiB;SACpC,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC7B,MAAiB,EACjB,WAAe;QAEf,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CACxB,IAAA,gBAAQ,EAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,EAChE,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAClC,MAAiB,EACjB,WAAe;QAEf,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,EAAE;YACpE,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,MAAM,EAAE,MAAM;gBACd,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;aAC5C;SACD,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAChC,WAAsB,EACtB,oBAA+B;QAE/B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CACxB,IAAA,gBAAQ,EACP,MAAM,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,oBAAoB,CAAC,CACvE,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACT,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,yBAAyB,CACrC,WAAsB,EACtB,oBAA+B;QAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC;YAC1D,QAAQ,EAAE;gBACT,KAAK,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;gBACrC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,WAAW;gBACjB,aAAa,EAAE,oBAAoB;gBACnC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;aAClD;SACD,CAAC,CAAC;IACJ,CAAC;IAEM,YAAY,CAAC,SAA2C,EAAE,IAAU;QAC1E,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;CACD;AAlpCD,sCAkpCC"}
|
package/src/clearingHouse.ts
CHANGED
|
@@ -57,6 +57,7 @@ import {
|
|
|
57
57
|
getClearingHouse,
|
|
58
58
|
getWebSocketClearingHouseConfig,
|
|
59
59
|
} from './factory/clearingHouse';
|
|
60
|
+
import { ZERO } from './constants/numericConstants';
|
|
60
61
|
|
|
61
62
|
/**
|
|
62
63
|
* # ClearingHouse
|
|
@@ -760,6 +761,14 @@ export class ClearingHouse {
|
|
|
760
761
|
});
|
|
761
762
|
}
|
|
762
763
|
|
|
764
|
+
if (!orderParams.oraclePriceOffset.eq(ZERO)) {
|
|
765
|
+
remainingAccounts.push({
|
|
766
|
+
pubkey: priceOracle,
|
|
767
|
+
isWritable: false,
|
|
768
|
+
isSigner: false,
|
|
769
|
+
});
|
|
770
|
+
}
|
|
771
|
+
|
|
763
772
|
const state = this.getStateAccount();
|
|
764
773
|
const orderState = this.getOrderStateAccount();
|
|
765
774
|
return await this.program.instruction.placeOrder(orderParams, {
|
|
@@ -774,26 +783,41 @@ export class ClearingHouse {
|
|
|
774
783
|
fundingRateHistory: state.fundingRateHistory,
|
|
775
784
|
orderState: await this.getOrderStatePublicKey(),
|
|
776
785
|
orderHistory: orderState.orderHistory,
|
|
777
|
-
oracle: priceOracle,
|
|
778
786
|
},
|
|
779
787
|
remainingAccounts,
|
|
780
788
|
});
|
|
781
789
|
}
|
|
782
790
|
|
|
783
|
-
public async cancelOrder(
|
|
791
|
+
public async cancelOrder(
|
|
792
|
+
orderId: BN,
|
|
793
|
+
oracle?: PublicKey
|
|
794
|
+
): Promise<TransactionSignature> {
|
|
784
795
|
return await this.txSender.send(
|
|
785
|
-
wrapInTx(await this.getCancelOrderIx(orderId)),
|
|
796
|
+
wrapInTx(await this.getCancelOrderIx(orderId, oracle)),
|
|
786
797
|
[],
|
|
787
798
|
this.opts
|
|
788
799
|
);
|
|
789
800
|
}
|
|
790
801
|
|
|
791
|
-
public async getCancelOrderIx(
|
|
802
|
+
public async getCancelOrderIx(
|
|
803
|
+
orderId: BN,
|
|
804
|
+
oracle?: PublicKey
|
|
805
|
+
): Promise<TransactionInstruction> {
|
|
792
806
|
const userAccountPublicKey = await this.getUserAccountPublicKey();
|
|
793
807
|
const userAccount = await this.getUserAccount();
|
|
794
808
|
|
|
795
809
|
const state = this.getStateAccount();
|
|
796
810
|
const orderState = this.getOrderStateAccount();
|
|
811
|
+
|
|
812
|
+
const remainingAccounts = [];
|
|
813
|
+
if (oracle) {
|
|
814
|
+
remainingAccounts.push({
|
|
815
|
+
pubkey: oracle,
|
|
816
|
+
isWritable: false,
|
|
817
|
+
isSigner: false,
|
|
818
|
+
});
|
|
819
|
+
}
|
|
820
|
+
|
|
797
821
|
return await this.program.instruction.cancelOrder(orderId, {
|
|
798
822
|
accounts: {
|
|
799
823
|
state: await this.getStatePublicKey(),
|
|
@@ -807,27 +831,40 @@ export class ClearingHouse {
|
|
|
807
831
|
orderState: await this.getOrderStatePublicKey(),
|
|
808
832
|
orderHistory: orderState.orderHistory,
|
|
809
833
|
},
|
|
834
|
+
remainingAccounts,
|
|
810
835
|
});
|
|
811
836
|
}
|
|
812
837
|
|
|
813
838
|
public async cancelOrderByUserId(
|
|
814
|
-
userOrderId: number
|
|
839
|
+
userOrderId: number,
|
|
840
|
+
oracle?: PublicKey
|
|
815
841
|
): Promise<TransactionSignature> {
|
|
816
842
|
return await this.txSender.send(
|
|
817
|
-
wrapInTx(await this.getCancelOrderByUserIdIx(userOrderId)),
|
|
843
|
+
wrapInTx(await this.getCancelOrderByUserIdIx(userOrderId, oracle)),
|
|
818
844
|
[],
|
|
819
845
|
this.opts
|
|
820
846
|
);
|
|
821
847
|
}
|
|
822
848
|
|
|
823
849
|
public async getCancelOrderByUserIdIx(
|
|
824
|
-
userOrderId: number
|
|
850
|
+
userOrderId: number,
|
|
851
|
+
oracle?: PublicKey
|
|
825
852
|
): Promise<TransactionInstruction> {
|
|
826
853
|
const userAccountPublicKey = await this.getUserAccountPublicKey();
|
|
827
854
|
const userAccount = await this.getUserAccount();
|
|
828
855
|
|
|
829
856
|
const state = this.getStateAccount();
|
|
830
857
|
const orderState = this.getOrderStateAccount();
|
|
858
|
+
|
|
859
|
+
const remainingAccounts = [];
|
|
860
|
+
if (oracle) {
|
|
861
|
+
remainingAccounts.push({
|
|
862
|
+
pubkey: oracle,
|
|
863
|
+
isWritable: false,
|
|
864
|
+
isSigner: false,
|
|
865
|
+
});
|
|
866
|
+
}
|
|
867
|
+
|
|
831
868
|
return await this.program.instruction.cancelOrderByUserId(userOrderId, {
|
|
832
869
|
accounts: {
|
|
833
870
|
state: await this.getStatePublicKey(),
|
|
@@ -841,6 +878,7 @@ export class ClearingHouse {
|
|
|
841
878
|
orderState: await this.getOrderStatePublicKey(),
|
|
842
879
|
orderHistory: orderState.orderHistory,
|
|
843
880
|
},
|
|
881
|
+
remainingAccounts,
|
|
844
882
|
});
|
|
845
883
|
}
|
|
846
884
|
|