@centrifuge/sdk 0.55.2 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/Centrifuge.d.ts +6910 -22
- package/dist/Centrifuge.d.ts.map +1 -1
- package/dist/Centrifuge.js +139 -160
- package/dist/Centrifuge.js.map +1 -1
- package/dist/Centrifuge.test.js +24 -26
- package/dist/Centrifuge.test.js.map +1 -1
- package/dist/abi/Accounting.abi.d.ts +1 -1
- package/dist/abi/Accounting.abi.d.ts.map +1 -1
- package/dist/abi/Accounting.abi.js +23 -24
- package/dist/abi/Accounting.abi.js.map +1 -1
- package/dist/abi/AsyncRequestManager.abi.d.ts +1 -1
- package/dist/abi/AsyncRequestManager.abi.js +18 -18
- package/dist/abi/AsyncRequestManager.abi.js.map +1 -1
- package/dist/abi/AsyncVault.abi.d.ts +1 -1
- package/dist/abi/AsyncVault.abi.d.ts.map +1 -1
- package/dist/abi/AsyncVault.abi.js +1 -2
- package/dist/abi/AsyncVault.abi.js.map +1 -1
- package/dist/abi/BalanceSheet.abi.d.ts +1 -1
- package/dist/abi/BalanceSheet.abi.d.ts.map +1 -1
- package/dist/abi/BalanceSheet.abi.js +21 -20
- package/dist/abi/BalanceSheet.abi.js.map +1 -1
- package/dist/abi/BatchRequestManager.abi.d.ts +3 -0
- package/dist/abi/BatchRequestManager.abi.d.ts.map +1 -0
- package/dist/abi/BatchRequestManager.abi.js +74 -0
- package/dist/abi/BatchRequestManager.abi.js.map +1 -0
- package/dist/abi/GasService.abi.d.ts +1 -1
- package/dist/abi/GasService.abi.d.ts.map +1 -1
- package/dist/abi/GasService.abi.js +10 -6
- package/dist/abi/GasService.abi.js.map +1 -1
- package/dist/abi/Gateway.abi.d.ts +1 -1
- package/dist/abi/Gateway.abi.d.ts.map +1 -1
- package/dist/abi/Gateway.abi.js +33 -27
- package/dist/abi/Gateway.abi.js.map +1 -1
- package/dist/abi/Holdings.abi.d.ts +1 -1
- package/dist/abi/Holdings.abi.d.ts.map +1 -1
- package/dist/abi/Holdings.abi.js +10 -5
- package/dist/abi/Holdings.abi.js.map +1 -1
- package/dist/abi/Hub.abi.d.ts +1 -1
- package/dist/abi/Hub.abi.d.ts.map +1 -1
- package/dist/abi/Hub.abi.js +40 -38
- package/dist/abi/Hub.abi.js.map +1 -1
- package/dist/abi/HubRegistry.abi.d.ts +1 -1
- package/dist/abi/HubRegistry.abi.d.ts.map +1 -1
- package/dist/abi/HubRegistry.abi.js +22 -19
- package/dist/abi/HubRegistry.abi.js.map +1 -1
- package/dist/abi/MerkleProofManager.abi.d.ts.map +1 -1
- package/dist/abi/MerkleProofManager.abi.js +2 -4
- package/dist/abi/MerkleProofManager.abi.js.map +1 -1
- package/dist/abi/MessageDispatcher.abi.d.ts.map +1 -1
- package/dist/abi/MessageDispatcher.abi.js +44 -38
- package/dist/abi/MessageDispatcher.abi.js.map +1 -1
- package/dist/abi/MultiAdapter.abi.d.ts +1 -1
- package/dist/abi/MultiAdapter.abi.d.ts.map +1 -1
- package/dist/abi/MultiAdapter.abi.js +14 -28
- package/dist/abi/MultiAdapter.abi.js.map +1 -1
- package/dist/abi/NAVManager.abi.d.ts +3 -0
- package/dist/abi/NAVManager.abi.d.ts.map +1 -0
- package/dist/abi/NAVManager.abi.js +41 -0
- package/dist/abi/NAVManager.abi.js.map +1 -0
- package/dist/abi/OnOffRampManager.abi.d.ts +1 -1
- package/dist/abi/OnOffRampManager.abi.d.ts.map +1 -1
- package/dist/abi/OnOffRampManager.abi.js +18 -20
- package/dist/abi/OnOffRampManager.abi.js.map +1 -1
- package/dist/abi/PoolEscrow.abi.d.ts +1 -1
- package/dist/abi/PoolEscrow.abi.d.ts.map +1 -1
- package/dist/abi/PoolEscrow.abi.js +1 -2
- package/dist/abi/PoolEscrow.abi.js.map +1 -1
- package/dist/abi/QueueManager.abi.d.ts +3 -0
- package/dist/abi/QueueManager.abi.d.ts.map +1 -0
- package/dist/abi/QueueManager.abi.js +21 -0
- package/dist/abi/QueueManager.abi.js.map +1 -0
- package/dist/abi/ShareClassManager.abi.d.ts +1 -1
- package/dist/abi/ShareClassManager.abi.d.ts.map +1 -1
- package/dist/abi/ShareClassManager.abi.js +11 -62
- package/dist/abi/ShareClassManager.abi.js.map +1 -1
- package/dist/abi/Spoke.abi.d.ts +1 -1
- package/dist/abi/Spoke.abi.d.ts.map +1 -1
- package/dist/abi/Spoke.abi.js +25 -21
- package/dist/abi/Spoke.abi.js.map +1 -1
- package/dist/abi/SyncManager.abi.d.ts +3 -0
- package/dist/abi/SyncManager.abi.d.ts.map +1 -0
- package/dist/abi/{SyncRequestManager.abi.js → SyncManager.abi.js} +10 -26
- package/dist/abi/SyncManager.abi.js.map +1 -0
- package/dist/abi/Valuation.abi.d.ts +1 -1
- package/dist/abi/Valuation.abi.d.ts.map +1 -1
- package/dist/abi/Valuation.abi.js +4 -1
- package/dist/abi/Valuation.abi.js.map +1 -1
- package/dist/abi/VaultRegistry.abi.d.ts +3 -0
- package/dist/abi/VaultRegistry.abi.d.ts.map +1 -0
- package/dist/abi/VaultRegistry.abi.js +35 -0
- package/dist/abi/VaultRegistry.abi.js.map +1 -0
- package/dist/abi/VaultRouter.abi.d.ts +1 -1
- package/dist/abi/VaultRouter.abi.d.ts.map +1 -1
- package/dist/abi/VaultRouter.abi.js +3 -0
- package/dist/abi/VaultRouter.abi.js.map +1 -1
- package/dist/abi/index.d.ts +1805 -1802
- package/dist/abi/index.d.ts.map +1 -1
- package/dist/abi/index.js +9 -5
- package/dist/abi/index.js.map +1 -1
- package/dist/entities/BalanceSheet.d.ts +8 -8
- package/dist/entities/BalanceSheet.d.ts.map +1 -1
- package/dist/entities/BalanceSheet.js +23 -21
- package/dist/entities/BalanceSheet.js.map +1 -1
- package/dist/entities/BalanceSheet.test.js +9 -4
- package/dist/entities/BalanceSheet.test.js.map +1 -1
- package/dist/entities/Investor.d.ts +11 -9
- package/dist/entities/Investor.d.ts.map +1 -1
- package/dist/entities/Investor.js +28 -35
- package/dist/entities/Investor.js.map +1 -1
- package/dist/entities/Investor.test.js +1 -1
- package/dist/entities/Investor.test.js.map +1 -1
- package/dist/entities/MerkleProofManager.d.ts +1 -2
- package/dist/entities/MerkleProofManager.d.ts.map +1 -1
- package/dist/entities/MerkleProofManager.js +24 -25
- package/dist/entities/MerkleProofManager.js.map +1 -1
- package/dist/entities/MerkleProofManager.test.js +10 -10
- package/dist/entities/MerkleProofManager.test.js.map +1 -1
- package/dist/entities/OnOffRampManager.d.ts.map +1 -1
- package/dist/entities/OnOffRampManager.js +35 -39
- package/dist/entities/OnOffRampManager.js.map +1 -1
- package/dist/entities/OnOffRampManager.test.js +14 -10
- package/dist/entities/OnOffRampManager.test.js.map +1 -1
- package/dist/entities/Pool.d.ts +33 -11
- package/dist/entities/Pool.d.ts.map +1 -1
- package/dist/entities/Pool.js +132 -65
- package/dist/entities/Pool.js.map +1 -1
- package/dist/entities/Pool.test.js +35 -12
- package/dist/entities/Pool.test.js.map +1 -1
- package/dist/entities/PoolNetwork.d.ts +26 -5
- package/dist/entities/PoolNetwork.d.ts.map +1 -1
- package/dist/entities/PoolNetwork.js +154 -115
- package/dist/entities/PoolNetwork.js.map +1 -1
- package/dist/entities/PoolNetwork.test.js +40 -34
- package/dist/entities/PoolNetwork.test.js.map +1 -1
- package/dist/entities/Reports/PoolSharePricesReport.d.ts.map +1 -1
- package/dist/entities/Reports/PoolSharePricesReport.js +3 -2
- package/dist/entities/Reports/PoolSharePricesReport.js.map +1 -1
- package/dist/entities/Reports/PoolSharePricesReport.test.js +1 -1
- package/dist/entities/Reports/PoolSharePricesReport.test.js.map +1 -1
- package/dist/entities/ShareClass.d.ts +59 -49
- package/dist/entities/ShareClass.d.ts.map +1 -1
- package/dist/entities/ShareClass.js +384 -304
- package/dist/entities/ShareClass.js.map +1 -1
- package/dist/entities/ShareClass.test.js +36 -32
- package/dist/entities/ShareClass.test.js.map +1 -1
- package/dist/entities/Vault.d.ts +1 -1
- package/dist/entities/Vault.d.ts.map +1 -1
- package/dist/entities/Vault.js +68 -55
- package/dist/entities/Vault.js.map +1 -1
- package/dist/entities/Vault.test.js +10 -10
- package/dist/entities/Vault.test.js.map +1 -1
- package/dist/tests/mocks/mockPoolMetadata.js +2 -2
- package/dist/tests/mocks/mockPoolMetadata.js.map +1 -1
- package/dist/types/index.d.ts +17 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/transaction.d.ts +24 -32
- package/dist/types/transaction.d.ts.map +1 -1
- package/dist/types/transaction.js +26 -32
- package/dist/types/transaction.js.map +1 -1
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +16 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/permit.d.ts +1 -1
- package/dist/utils/permit.d.ts.map +1 -1
- package/dist/utils/permit.js +11 -7
- package/dist/utils/permit.js.map +1 -1
- package/dist/utils/rx.d.ts +2 -1
- package/dist/utils/rx.d.ts.map +1 -1
- package/dist/utils/rx.js +2 -2
- package/dist/utils/rx.js.map +1 -1
- package/dist/utils/transaction.d.ts +2 -1
- package/dist/utils/transaction.d.ts.map +1 -1
- package/dist/utils/transaction.js +4 -3
- package/dist/utils/transaction.js.map +1 -1
- package/dist/utils/types.d.ts +10 -5
- package/dist/utils/types.d.ts.map +1 -1
- package/dist/utils/types.js.map +1 -1
- package/package.json +1 -1
- package/dist/abi/SyncRequestManager.abi.d.ts +0 -3
- package/dist/abi/SyncRequestManager.abi.d.ts.map +0 -1
- package/dist/abi/SyncRequestManager.abi.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareClass.test.js","sourceRoot":"","sources":["../../src/entities/ShareClass.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAG5C,MAAM,OAAO,GAAG,QAAQ,CAAA;AACxB,MAAM,MAAM,GAAG,CAAC,CAAA;AAChB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACrC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACtC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACzC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;AAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAExC,MAAM,WAAW,GAAG,4CAA4C,CAAA;AAChE,MAAM,aAAa,GAAG,4CAA4C,CAAA;AAElE,MAAM,QAAQ,GAAG,4CAA4C,CAAA;AAE7D,MAAM,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;AAErD,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,IAAI,UAAsB,CAAA;IAC1B,IAAI,WAAuB,CAAA;IAC3B,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;QAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACtD,UAAU,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QAEvD,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACxD,WAAW,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;QAC1C,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACvD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACrD,MAAM,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC9C,MAAM,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAChD,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,CAAA;QAC5C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACvD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACrD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QACzC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAA;QAC5C,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QACvD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACjC,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;QACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAEzD,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAE9F,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;YAC7E,OAAO,EAAE,UAAU;YACnB,GAAG,EAAE,GAAG,CAAC,UAAU;YACnB,YAAY,EAAE,QAAQ;YACtB,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;SACzB,CAAC,CAAA;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QACnF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE;YACjF,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG;YACzB,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG;YACvB,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG;SACxB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAEpD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACpD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QACnD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5C,wDAAwD;QACxD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;IAClE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAA;QAChC,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAE/D,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAE7C,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;QACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAEzD,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACxC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC;YACtD,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;SACzF,CAAC,CAAA;QAEF,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC3C,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;IAClG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,SAAS,GAAG,aAAa,EAAE,CAAA;QACjC,MAAM,SAAS,GAAG,aAAa,EAAE,CAAA;QAEjC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtC,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC;YACrC,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC;SACtC,CAAC,CAAA;QAEF,MAAM,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClD,MAAM,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAElD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;QACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAEzD,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzC,UAAU,CAAC,aAAa,CAAC;gBACvB,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE;gBACvD,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE;aACxD,CAAC;YACF,OAAO,CAAC,GAAG,CAAC;gBACV,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACzF,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;aAC1F,CAAC;SACH,CAAC,CAAA;QAEF,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACjC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE;YAC3D,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE;SAC5D,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;QAC5B,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;QAC1C,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QACvD,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAC9C,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACxD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QAC5D,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACxD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEtD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;YAChC,MAAM,EAAE,CAAC,CAAC,MAAM,YAAY,OAAO;YACnC,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ,YAAY,OAAO;YACvC,0BAA0B,EAAE,CAAC,CAAC,iBAAiB,YAAY,OAAO;YAClE,0BAA0B,EAAE,CAAC,CAAC,iBAAiB,YAAY,OAAO;YAClE,qBAAqB,EAAE,CAAC,CAAC,YAAY,YAAY,OAAO;YACxD,qBAAqB,EAAE,CAAC,CAAC,YAAY,YAAY,OAAO;YACxD,aAAa,EAAE,OAAO,CAAC,CAAC,aAAa,KAAK,SAAS;SACpD,CAAC,CAAC,CAAA;QAEH,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;YAChC,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,IAAI;YACd,0BAA0B,EAAE,IAAI;YAChC,0BAA0B,EAAE,IAAI;YAChC,qBAAqB,EAAE,IAAI;YAC3B,qBAAqB,EAAE,IAAI;YAC3B,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC,CAAA;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,kBAAkB,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAA;QAChE,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAClE,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAC1D,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACnE,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QACvE,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACnE,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEjE,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;YAChC,MAAM,EAAE,CAAC,CAAC,MAAM,YAAY,OAAO;YACnC,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ,YAAY,OAAO;YACvC,0BAA0B,EAAE,CAAC,CAAC,iBAAiB,YAAY,OAAO;YAClE,0BAA0B,EAAE,CAAC,CAAC,iBAAiB,YAAY,OAAO;YAClE,qBAAqB,EAAE,CAAC,CAAC,YAAY,YAAY,OAAO;YACxD,qBAAqB,EAAE,CAAC,CAAC,YAAY,YAAY,OAAO;YACxD,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC,CAAA;QAEH,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxD,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;YAChC,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,IAAI;YACd,0BAA0B,EAAE,IAAI;YAChC,0BAA0B,EAAE,IAAI;YAChC,qBAAqB,EAAE,IAAI;YAC3B,qBAAqB,EAAE,IAAI;YAC3B,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC,CAAA;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAA;QAEhC,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;QACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAEzD,MAAM,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;QAE5D,MAAM,CAAC,KAAK,EAAE,kBAAkB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpD,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1C,cAAc,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;SACxD,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAEpD,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;YAC1B,OAAO,MAAM,MAAM,CAAC,YAAY,CAAC;gBAC/B,OAAO,EAAE,kBAAkB;gBAC3B,GAAG,EAAE,GAAG,CAAC,kBAAkB;gBAC3B,YAAY,EAAE,UAAU;gBACxB,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;aACxB,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAExC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACjE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAEtD,MAAM,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEvC,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACrE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAExD,MAAM,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAA;QACxD,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAClD,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QAC7D,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACpD,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACnE,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAClE,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC1E,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAE5E,QAAQ;QACR,8HAA8H;IAChI,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,wBAAwB,EAAE,CAAC,CAAA;QACtF,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,wBAAwB,EAAE,CAAC,CAAA;QAEtF,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QACtD,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAEtD,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAChE,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAExD,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAChE,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAExD,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAA;QACxD,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAE,CAAA;QAC3F,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAClD,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAA;QAExD,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACrF;gBACE,OAAO;gBACP,QAAQ,EAAE,4CAA4C;gBACtD,gBAAgB,EAAE,CAAC;gBACnB,eAAe,EAAE,CAAC;gBAClB,cAAc,EAAE,qBAAqB;gBACrC,aAAa,EAAE,qBAAqB;aACrC;YACD;gBACE,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAE,4CAA4C;gBACtD,gBAAgB,EAAE,CAAC;gBACnB,eAAe,EAAE,CAAC;gBAClB,cAAc,EAAE,EAAE;gBAClB,aAAa,EAAE,qBAAqB;aACrC;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAClD,IAAI,KAAY,CAAA;QAEhB,MAAM,CAAC,KAAK,IAAI,EAAE;YAChB,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAC7D,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QAC3D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,IAAI,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YACvD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA;YAC9D,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAE5E,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc;wBAChD,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACvC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAA;YAC5F,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACxD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA;YAC9D,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAE5E,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,6BAA6B,CAAC;gBACxD;oBACE,OAAO;oBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc;oBAChD,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;iBACvC;aACF,CAAC,CAAA;YAEF,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YAC5D,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA;YAC9D,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAE5E,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc;wBAChD,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACvC;oBACD;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc;wBAChD,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACvC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,8DAA8D,CAAC,CAAA;YAClG,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YAC5E,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA;YAC9D,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAE5E,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACvE,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACvC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAA;YACrF,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,IAAI,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YAC7D,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;wBACrC,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACvC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAA;YACrF,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAChF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACvC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;YACtD,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAClD,IAAI,KAAY,CAAA;QAChB,IAAI,aAA4E,CAAA;QAEhF,MAAM,CAAC,KAAK,IAAI,EAAE;YAChB,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YACrD,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YACjD,MAAM,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAEtD,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAElC,IAAI,UAAU,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YAEjD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;YAElE,gCAAgC;YAChC,MAAM,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAG/C;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC;gBAC5D,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aACzD,CAAC,CAAA;YAEF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,QAAQ,CAAA;YAClD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAGxD;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtE,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAC9G;aACF,CAAC,CAAA;YAEF,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAA;YAE3F,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,IAAI,cAAc,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA;YAC5D,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAEtE,mBAAmB;YACnB,MAAM,KAAK,CAAC,UAAU,CAAC,6BAA6B,CAAC;gBACnD;oBACE,OAAO;oBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc;oBAChD,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;iBACvC;aACF,CAAC,CACD;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC;gBAChD,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAChH;aACF,CAAC,CAAA;YAEF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,QAAQ,CAAA;YAClD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAGxD;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,KAAK,CAAC,KAAK,EAAE;gBACb,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aACpG,CAAC,CAAA;YAEF,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAC7C;YAAA,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClD,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC;gBAC/B,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CACtG;gBACD,cAAc,CACZ,KAAK,CAAC,UAAU;qBACb,cAAc,EAAE;qBAChB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAC1F;aACF,CAAC,CAAA;YAEF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;QACxE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,UAAU,CAAC,6BAA6B,CAAC;oBACnD;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,aAAa;wBAC/C,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACxC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,yDAAyD,CAAC,CAAA;YAC7F,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,6BAA6B,CAAC;gBACxD;oBACE,OAAO;oBACP,kBAAkB,EAAE,aAAa,CAAC,aAAa;oBAC/C,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;iBACxC;aACF,CAAC,CAAA;YAEF,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,aAAa;wBAC/C,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACxC;oBACD;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,aAAa;wBAC/C,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACxC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,8DAA8D,CAAC,CAAA;YAClG,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACtE,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACxC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAA;YACnF,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC9D,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,6BAA6B,CAAC;oBAC7C;wBACE,OAAO;wBACP,kBAAkB,EAAE,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;wBACrC,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;qBACxC;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAA;YACnF,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAE/D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,IAAI,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YACrD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YACvD,MAAM,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAA;YAEhC,MAAM,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,CAAA;YAE/D,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAElC,IAAI,UAAU,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YAEjD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;YAElE,gCAAgC;YAChC,MAAM,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAG/C;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC;gBAC5D,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aACzD,CAAC,CAAA;YAEF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,QAAQ,CAAA;YAClD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAGxD;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtE,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAC9G;aACF,CAAC,CAAA;YAEF,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAA;YAE3F,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,IAAI,cAAc,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA;YAC5D,IAAI,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAE1E,MAAM,KAAK,CAAC,UAAU,CAAC,6BAA6B,CAAC;gBACnD;oBACE,OAAO;oBACP,kBAAkB,EAAE,aAAa,CAAC,cAAc;oBAChD,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;iBACvC;aACF,CAAC,CAGD;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC;gBAC1C,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAChH;aACF,CAAC,CAAA;YAEF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,QAAQ,CAAA;YAClD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAGxD;YAAA,CAAC,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClC,KAAK,CAAC,KAAK,EAAE;gBACb,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aACpG,CAAC,CAAA;YAEF,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAC7C;YAAA,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClD,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC;gBAC/B,cAAc,CACZ,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CACtG;gBACD,cAAc,CACZ,KAAK,CAAC,UAAU;qBACb,cAAc,EAAE;qBAChB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAC1F;aACF,CAAC,CAAA;YAEF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAE,CAAA;YAEtE,MAAM,KAAK,CAAC,UAAU,CAAC,6BAA6B,CAAC;gBACnD;oBACE,OAAO;oBACP,kBAAkB,EAAE,aAAa,CAAC,aAAa;oBAC/C,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;iBACxC;aACF,CAAC,CAAA;YAEF,kBAAkB;YAClB,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjC,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC;gBACzC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aAClG,CAAC,CAAA;YAEF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,IAAI,UAAsB,CAAA;QAC1B,IAAI,IAAU,CAAA;QAEd,MAAM,CAAC,GAAG,EAAE;YACV,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;YAC9B,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YAChD,UAAU,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAErC,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YAEtD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAEhD,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;YAE5E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;gBACtE,OAAO,EAAE,eAAe,CAAC,KAAK;gBAC9B,GAAG,EAAE,GAAG,CAAC,KAAK;gBACd,YAAY,EAAE,mBAAmB;gBACjC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;aAC9C,CAAC,CAAA;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,8BAA8B;IAC9B,EAAE,CAAC,IAAI,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QACpF,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;QAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACtD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QAE7D,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAA;QAE3E,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;QAChC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAE1C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAE,CAAA;QACvB,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QACzC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACxC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACxC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAC1C,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QAC/C,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;QAEjD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACrD,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACvD,MAAM,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7E,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAA;YAE9D,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YAE3C,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAE,CAAA;gBAExC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC9B,UAAU;oBACV,OAAO;oBACP,SAAS;oBACT,gBAAgB;oBAChB,YAAY;oBACZ,cAAc;oBACd,UAAU;oBACV,YAAY;oBACZ,eAAe;oBACf,WAAW;oBACX,WAAW;oBACX,OAAO;iBACR,CAAC,CAAA;gBAEF,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC7C,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACvE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC1C,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBACpD,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC3D,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBACzD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBACxD,MAAM,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAEvD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;gBACrE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBACjD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC/C,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;YACrD,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAA;YAE9D,iBAAiB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACvC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAA;YAC5C,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAA;YAE9D,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YAE3C,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAE,CAAA;gBAExC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC9B,UAAU;oBACV,OAAO;oBACP,SAAS;oBACT,gBAAgB;oBAChB,YAAY;oBACZ,cAAc;oBACd,WAAW;oBACX,YAAY;oBACZ,eAAe;oBACf,WAAW;oBACX,WAAW;oBACX,OAAO;iBACR,CAAC,CAAA;gBAEF,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC7C,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACvE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC1C,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBACpD,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC3D,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;gBACzD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;gBACxD,MAAM,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBACvD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;gBACrE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBACjD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;gBAC/C,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;YACrD,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAA;YAE9D,iBAAiB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACvC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAA;gBAC3C,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAA;YAC3C,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,KAAK,UAAU,IAAI,CAAC,KAAa,EAAE,OAAe;IAChD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,aAAa,CAAA;IACvD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;IAEzD,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC,EAAE,GAAG;QACrD,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;YAC3C,OAAO,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;gBACpC,OAAO,EAAE,KAAY;gBACrB,GAAG,EAAE,QAAQ,CAAC,CAAC,iCAAiC,CAAC,CAAC;gBAClD,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,CAAC,OAAc,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC;aACvD,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC"}
|
|
1
|
+
{"version":3,"file":"ShareClass.test.js","sourceRoot":"","sources":["../../src/entities/ShareClass.test.ts"],"names":[],"mappings":"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"}
|
package/dist/entities/Vault.d.ts
CHANGED
|
@@ -14,11 +14,11 @@ export declare class Vault extends Entity {
|
|
|
14
14
|
shareClass: ShareClass;
|
|
15
15
|
assetId: AssetId;
|
|
16
16
|
pool: Pool;
|
|
17
|
-
chainId: number;
|
|
18
17
|
/**
|
|
19
18
|
* The contract address of the vault.
|
|
20
19
|
*/
|
|
21
20
|
address: HexString;
|
|
21
|
+
get centrifugeId(): number;
|
|
22
22
|
/**
|
|
23
23
|
* Get the details of the vault.
|
|
24
24
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Vault.d.ts","sourceRoot":"","sources":["../../src/entities/Vault.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"Vault.d.ts","sourceRoot":"","sources":["../../src/entities/Vault.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAK5C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAY5C;;;GAGG;AACH,qBAAa,KAAM,SAAQ,MAAM;IActB,OAAO,EAAE,WAAW;IACpB,UAAU,EAAE,UAAU;IAGtB,OAAO,EAAE,OAAO;IAjBzB,IAAI,EAAE,IAAI,CAAA;IAMV;;OAEG;IACH,OAAO,EAAE,SAAS,CAAA;IAgBlB,IAAI,YAAY,WAEf;IAED;;OAEG;IACH,OAAO;;;;;;;;;;;;IA+BP;;OAEG;IACH,QAAQ;IA4BR;;;OAGG;IACH,UAAU,CAAC,QAAQ,EAAE,SAAS;;;;;;;;;;;;;;;;;;;;;;IAwJ9B;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,OAAO;IAyD3B;;;;OAIG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO;IA6E5B;;OAEG;IACH,oBAAoB;IAuBpB;;;OAGG;IACH,WAAW,CAAC,YAAY,EAAE,OAAO;IAkDjC;;OAEG;IACH,mBAAmB;IAuBnB;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS;IA0DlD;;;OAGG;IACH,gBAAgB,CAAC,UAAU,EAAE,OAAO;CA2OrC"}
|
package/dist/entities/Vault.js
CHANGED
|
@@ -3,11 +3,11 @@ import { encodeFunctionData, encodePacked, getContract } from 'viem';
|
|
|
3
3
|
import { ABI } from '../abi/index.js';
|
|
4
4
|
import { MessageType } from '../types/transaction.js';
|
|
5
5
|
import { Balance } from '../utils/BigInt.js';
|
|
6
|
+
import { addressToBytes32 } from '../utils/index.js';
|
|
6
7
|
import { signPermit } from '../utils/permit.js';
|
|
7
8
|
import { repeatOnEvents } from '../utils/rx.js';
|
|
8
9
|
import { doSignMessage, doTransaction, wrapTransaction } from '../utils/transaction.js';
|
|
9
10
|
import { Entity } from './Entity.js';
|
|
10
|
-
import { addressToBytes32 } from '../utils/index.js';
|
|
11
11
|
// const ASYNC_OPERATOR_INTERFACE_ID = '0xe3bc4e65'
|
|
12
12
|
// const ASYNC_DEPOSIT_INTERFACE_ID = '0xce3bbe50'
|
|
13
13
|
// const ASYNC_REDEEM_INTERFACE_ID = '0x620ee8e4'
|
|
@@ -25,7 +25,6 @@ export class Vault extends Entity {
|
|
|
25
25
|
shareClass;
|
|
26
26
|
assetId;
|
|
27
27
|
pool;
|
|
28
|
-
chainId;
|
|
29
28
|
/**
|
|
30
29
|
* The contract address of the investment currency.
|
|
31
30
|
* @internal
|
|
@@ -37,15 +36,17 @@ export class Vault extends Entity {
|
|
|
37
36
|
address;
|
|
38
37
|
/** @internal */
|
|
39
38
|
constructor(_root, network, shareClass, asset, address, assetId) {
|
|
40
|
-
super(_root, ['vault', network.
|
|
39
|
+
super(_root, ['vault', network.centrifugeId, shareClass.id.toString(), asset.toLowerCase()]);
|
|
41
40
|
this.network = network;
|
|
42
41
|
this.shareClass = shareClass;
|
|
43
42
|
this.assetId = assetId;
|
|
44
|
-
this.chainId = network.chainId;
|
|
45
43
|
this.pool = network.pool;
|
|
46
44
|
this._asset = asset.toLowerCase();
|
|
47
45
|
this.address = address.toLowerCase();
|
|
48
46
|
}
|
|
47
|
+
get centrifugeId() {
|
|
48
|
+
return this.network.centrifugeId;
|
|
49
|
+
}
|
|
49
50
|
/**
|
|
50
51
|
* Get the details of the vault.
|
|
51
52
|
*/
|
|
@@ -78,19 +79,19 @@ export class Vault extends Entity {
|
|
|
78
79
|
* @returns Whether the vault is linked and can be used for investments.
|
|
79
80
|
*/
|
|
80
81
|
isLinked() {
|
|
81
|
-
return this._query(['linked'], () => this._root._protocolAddresses(this.
|
|
82
|
-
const details = await
|
|
83
|
-
address:
|
|
84
|
-
abi: ABI.
|
|
82
|
+
return this._query(['linked'], () => combineLatest([this._root._protocolAddresses(this.centrifugeId), this._root.getClient(this.centrifugeId)]).pipe(switchMap(([{ vaultRegistry }, client]) => defer(async () => {
|
|
83
|
+
const details = await client.readContract({
|
|
84
|
+
address: vaultRegistry,
|
|
85
|
+
abi: ABI.VaultRegistry,
|
|
85
86
|
functionName: 'vaultDetails',
|
|
86
87
|
args: [this.address],
|
|
87
88
|
});
|
|
88
89
|
return details.isLinked;
|
|
89
90
|
}).pipe(repeatOnEvents(this._root, {
|
|
90
|
-
address:
|
|
91
|
+
address: vaultRegistry,
|
|
91
92
|
eventName: ['LinkVault', 'UnlinkVault'],
|
|
92
93
|
filter: (events) => events.some((event) => event.args.vault.toLowerCase() === this.address),
|
|
93
|
-
}, this.
|
|
94
|
+
}, this.centrifugeId)))));
|
|
94
95
|
}
|
|
95
96
|
/**
|
|
96
97
|
* Get the details of the investment of an investor in the vault and any pending investments or redemptions.
|
|
@@ -101,17 +102,17 @@ export class Vault extends Entity {
|
|
|
101
102
|
return this._query(['investment', investorAddress], () => combineLatest([
|
|
102
103
|
this._investmentCurrency(),
|
|
103
104
|
this._shareCurrency(),
|
|
104
|
-
this._root._protocolAddresses(this.
|
|
105
|
+
this._root._protocolAddresses(this.centrifugeId),
|
|
105
106
|
this._restrictionManager(),
|
|
106
107
|
this._isSyncDeposit(),
|
|
107
108
|
this.pool._escrow(),
|
|
108
109
|
this._isOperator(investorAddress),
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
this._root.balance(
|
|
110
|
+
this._root.getClient(this.centrifugeId),
|
|
111
|
+
]).pipe(switchMap(([asset, share, addresses, restrictionManagerAddress, isSyncDeposit, escrowAddress, isOperatorEnabled, client,]) => combineLatest([
|
|
112
|
+
this._root.balance(asset.address, investorAddress, this.centrifugeId),
|
|
113
|
+
this._root.balance(share.address, investorAddress, this.centrifugeId),
|
|
112
114
|
this._allowance(investorAddress),
|
|
113
115
|
defer(async () => {
|
|
114
|
-
const client = this._root.getClient(this.chainId);
|
|
115
116
|
const vault = getContract({ address: this.address, abi: ABI.AsyncVault, client });
|
|
116
117
|
const investmentManager = getContract({
|
|
117
118
|
address: addresses.asyncRequestManager,
|
|
@@ -189,7 +190,7 @@ export class Vault extends Entity {
|
|
|
189
190
|
event.args.token?.toLowerCase() === share.address) ||
|
|
190
191
|
// PoolEscrow events
|
|
191
192
|
(event.args.scId === this.shareClass.id.raw && event.args.asset.toLowerCase() === this._asset)),
|
|
192
|
-
}, this.
|
|
193
|
+
}, this.centrifugeId)),
|
|
193
194
|
])), map(([currencyBalance, shareBalance, allowance, investment]) => ({
|
|
194
195
|
...investment,
|
|
195
196
|
shareBalance: shareBalance.balance,
|
|
@@ -207,7 +208,7 @@ export class Vault extends Entity {
|
|
|
207
208
|
return this._transact(async function* (ctx) {
|
|
208
209
|
const [investment, { vaultRouter }, isSyncDeposit, signingAddressCode] = await Promise.all([
|
|
209
210
|
self.investment(ctx.signingAddress),
|
|
210
|
-
self._root._protocolAddresses(self.
|
|
211
|
+
self._root._protocolAddresses(self.centrifugeId),
|
|
211
212
|
self._isSyncDeposit(),
|
|
212
213
|
ctx.publicClient.getCode({ address: ctx.signingAddress }),
|
|
213
214
|
]);
|
|
@@ -251,7 +252,7 @@ export class Vault extends Entity {
|
|
|
251
252
|
functionName: 'deposit',
|
|
252
253
|
args: [self.address, amount.toBigInt(), ctx.signingAddress, ctx.signingAddress],
|
|
253
254
|
}));
|
|
254
|
-
}, this.
|
|
255
|
+
}, this.centrifugeId);
|
|
255
256
|
}
|
|
256
257
|
/**
|
|
257
258
|
* Place an asynchronous deposit request (ERC-7540 style) in the vault. If an order exists, it will increase the amount.
|
|
@@ -262,9 +263,9 @@ export class Vault extends Entity {
|
|
|
262
263
|
const self = this;
|
|
263
264
|
return this._transact(async function* (ctx) {
|
|
264
265
|
const [estimate, investment, { vaultRouter }, isSyncDeposit, signingAddressCode] = await Promise.all([
|
|
265
|
-
self._root._estimate(self.
|
|
266
|
+
self._root._estimate(self.centrifugeId, self.pool.id.centrifugeId, MessageType.Request),
|
|
266
267
|
self.investment(ctx.signingAddress),
|
|
267
|
-
self._root._protocolAddresses(self.
|
|
268
|
+
self._root._protocolAddresses(self.centrifugeId),
|
|
268
269
|
self._isSyncDeposit(),
|
|
269
270
|
ctx.publicClient.getCode({ address: ctx.signingAddress }),
|
|
270
271
|
]);
|
|
@@ -326,7 +327,7 @@ export class Vault extends Entity {
|
|
|
326
327
|
args: [[permitData, enableData, requestData].filter(Boolean)],
|
|
327
328
|
value: estimate, // only one message is sent as a result of the multicall
|
|
328
329
|
}));
|
|
329
|
-
}, this.
|
|
330
|
+
}, this.centrifugeId);
|
|
330
331
|
}
|
|
331
332
|
/**
|
|
332
333
|
* Cancel an open deposit request.
|
|
@@ -335,9 +336,9 @@ export class Vault extends Entity {
|
|
|
335
336
|
const self = this;
|
|
336
337
|
return this._transact(async function* (ctx) {
|
|
337
338
|
const [estimate, investment, { vaultRouter }] = await Promise.all([
|
|
338
|
-
self._root._estimate(self.
|
|
339
|
+
self._root._estimate(self.centrifugeId, self.pool.id.centrifugeId, MessageType.Request),
|
|
339
340
|
self.investment(ctx.signingAddress),
|
|
340
|
-
self._root._protocolAddresses(self.
|
|
341
|
+
self._root._protocolAddresses(self.centrifugeId),
|
|
341
342
|
]);
|
|
342
343
|
if (investment.pendingDepositAssets.isZero())
|
|
343
344
|
throw new Error('No order to cancel');
|
|
@@ -348,7 +349,7 @@ export class Vault extends Entity {
|
|
|
348
349
|
args: [self.address],
|
|
349
350
|
value: estimate,
|
|
350
351
|
}));
|
|
351
|
-
}, this.
|
|
352
|
+
}, this.centrifugeId);
|
|
352
353
|
}
|
|
353
354
|
/**
|
|
354
355
|
* Place an asynchronous redeem request (ERC-7540 style) in the vault. If an order exists, it will increase the amount.
|
|
@@ -358,9 +359,9 @@ export class Vault extends Entity {
|
|
|
358
359
|
const self = this;
|
|
359
360
|
return this._transact(async function* (ctx) {
|
|
360
361
|
const [estimate, investment, { vaultRouter }, isOperator] = await Promise.all([
|
|
361
|
-
self._root._estimate(self.
|
|
362
|
+
self._root._estimate(self.centrifugeId, self.pool.id.centrifugeId, MessageType.Request),
|
|
362
363
|
self.investment(ctx.signingAddress),
|
|
363
|
-
self._root._protocolAddresses(self.
|
|
364
|
+
self._root._protocolAddresses(self.centrifugeId),
|
|
364
365
|
self._isOperator(ctx.signingAddress),
|
|
365
366
|
]);
|
|
366
367
|
if (!investment.isAllowedToRedeem)
|
|
@@ -398,7 +399,7 @@ export class Vault extends Entity {
|
|
|
398
399
|
args: [[enableData, redeemData]],
|
|
399
400
|
value: estimate,
|
|
400
401
|
}));
|
|
401
|
-
}, this.
|
|
402
|
+
}, this.centrifugeId);
|
|
402
403
|
}
|
|
403
404
|
/**
|
|
404
405
|
* Cancel an open redemption request.
|
|
@@ -407,9 +408,9 @@ export class Vault extends Entity {
|
|
|
407
408
|
const self = this;
|
|
408
409
|
return this._transact(async function* (ctx) {
|
|
409
410
|
const [estimate, investment, { vaultRouter }] = await Promise.all([
|
|
410
|
-
self._root._estimate(self.
|
|
411
|
+
self._root._estimate(self.centrifugeId, self.pool.id.centrifugeId, MessageType.Request),
|
|
411
412
|
self.investment(ctx.signingAddress),
|
|
412
|
-
self._root._protocolAddresses(self.
|
|
413
|
+
self._root._protocolAddresses(self.centrifugeId),
|
|
413
414
|
]);
|
|
414
415
|
if (investment.pendingRedeemShares.isZero())
|
|
415
416
|
throw new Error('No order to cancel');
|
|
@@ -420,7 +421,7 @@ export class Vault extends Entity {
|
|
|
420
421
|
args: [self.address],
|
|
421
422
|
value: estimate,
|
|
422
423
|
}));
|
|
423
|
-
}, this.
|
|
424
|
+
}, this.centrifugeId);
|
|
424
425
|
}
|
|
425
426
|
/**
|
|
426
427
|
* Claim any outstanding fund shares after an investment has gone through, or funds after an redemption has gone through.
|
|
@@ -433,7 +434,7 @@ export class Vault extends Entity {
|
|
|
433
434
|
return this._transact(async function* (ctx) {
|
|
434
435
|
const [investment, { vaultRouter }, isOperator] = await Promise.all([
|
|
435
436
|
self.investment(ctx.signingAddress),
|
|
436
|
-
self._root._protocolAddresses(self.
|
|
437
|
+
self._root._protocolAddresses(self.centrifugeId),
|
|
437
438
|
self._isOperator(ctx.signingAddress),
|
|
438
439
|
]);
|
|
439
440
|
const receiverAddress = receiver || ctx.signingAddress;
|
|
@@ -481,7 +482,7 @@ export class Vault extends Entity {
|
|
|
481
482
|
functionName,
|
|
482
483
|
args: [self.address, receiverAddress, controllerAddress],
|
|
483
484
|
}));
|
|
484
|
-
}, this.
|
|
485
|
+
}, this.centrifugeId);
|
|
485
486
|
}
|
|
486
487
|
/**
|
|
487
488
|
* Update the maximum deposit reserve for this vault.
|
|
@@ -490,9 +491,8 @@ export class Vault extends Entity {
|
|
|
490
491
|
updateMaxReserve(maxReserve) {
|
|
491
492
|
const self = this;
|
|
492
493
|
return this._transact(async function* (ctx) {
|
|
493
|
-
const [
|
|
494
|
-
self._root.
|
|
495
|
-
self._root._protocolAddresses(self.chainId),
|
|
494
|
+
const [{ hub, syncManager }, asset] = await Promise.all([
|
|
495
|
+
self._root._protocolAddresses(self.pool.centrifugeId),
|
|
496
496
|
self._investmentCurrency(),
|
|
497
497
|
]);
|
|
498
498
|
if (asset.decimals !== maxReserve.decimals) {
|
|
@@ -506,14 +506,15 @@ export class Vault extends Entity {
|
|
|
506
506
|
args: [
|
|
507
507
|
self.pool.id.raw,
|
|
508
508
|
self.shareClass.id.raw,
|
|
509
|
-
|
|
509
|
+
self.centrifugeId,
|
|
510
510
|
addressToBytes32(syncManager),
|
|
511
511
|
encodePacked(['uint8', 'uint128', 'uint128'], [/* UpdateContractType.SyncDepositMaxReserve */ 2, self.assetId.raw, maxReserve.toBigInt()]),
|
|
512
512
|
0n,
|
|
513
|
+
ctx.signingAddress,
|
|
513
514
|
],
|
|
514
515
|
}),
|
|
515
516
|
});
|
|
516
|
-
}, this.
|
|
517
|
+
}, this.pool.centrifugeId);
|
|
517
518
|
}
|
|
518
519
|
/**
|
|
519
520
|
* Find if the vault router is enabled to manage the investor funds in the vault,
|
|
@@ -522,34 +523,38 @@ export class Vault extends Entity {
|
|
|
522
523
|
* @internal
|
|
523
524
|
*/
|
|
524
525
|
_isOperator(investorAddress) {
|
|
525
|
-
|
|
526
|
-
|
|
526
|
+
const investor = investorAddress.toLowerCase();
|
|
527
|
+
return this._query(['isOperator', investor], () => combineLatest([this._root._protocolAddresses(this.centrifugeId), this._root.getClient(this.centrifugeId)]).pipe(switchMap(([{ vaultRouter }, client]) => defer(() => client
|
|
527
528
|
.readContract({
|
|
528
529
|
address: this.address,
|
|
529
530
|
abi: ABI.AsyncVault,
|
|
530
531
|
functionName: 'isOperator',
|
|
531
|
-
args: [
|
|
532
|
+
args: [investor, vaultRouter],
|
|
532
533
|
})
|
|
533
|
-
.then((val) => val))
|
|
534
|
+
.then((val) => val)).pipe(repeatOnEvents(this._root, {
|
|
535
|
+
address: this.address,
|
|
536
|
+
eventName: ['OperatorSet'],
|
|
537
|
+
filter: (events) => events.some((event) => event.args.controller.toLowerCase() === investor &&
|
|
538
|
+
event.args.operator.toLowerCase() === vaultRouter.toLowerCase()),
|
|
539
|
+
}, this.centrifugeId)))));
|
|
534
540
|
}
|
|
535
541
|
/** @internal */
|
|
536
542
|
_isSyncDeposit() {
|
|
537
|
-
return this._query(['isSyncDeposit'], () => defer(() =>
|
|
538
|
-
.getClient(this.chainId)
|
|
543
|
+
return this._query(['isSyncDeposit'], () => this._root.getClient(this.centrifugeId).pipe(switchMap((client) => defer(() => client
|
|
539
544
|
.readContract({
|
|
540
545
|
address: this.address,
|
|
541
546
|
abi: ABI.AsyncVault,
|
|
542
547
|
functionName: 'supportsInterface',
|
|
543
548
|
args: ['0xce3bbe50'], // ASYNC_DEPOSIT_INTERFACE_ID
|
|
544
549
|
})
|
|
545
|
-
.then((val) => !val)));
|
|
550
|
+
.then((val) => !val)))));
|
|
546
551
|
}
|
|
547
552
|
/**
|
|
548
553
|
* Get the contract address of the restriction mananger.
|
|
549
554
|
* @internal
|
|
550
555
|
*/
|
|
551
556
|
_restrictionManager() {
|
|
552
|
-
return this._query(['restrictionManager'], () => this.network._share(this.shareClass.id).pipe(switchMap((share) =>
|
|
557
|
+
return this._query(['restrictionManager'], () => combineLatest([this.network._share(this.shareClass.id), this._root.getClient(this.centrifugeId)]).pipe(switchMap(([share, client]) => client.readContract({
|
|
553
558
|
address: share,
|
|
554
559
|
abi: ABI.Currency,
|
|
555
560
|
functionName: 'hook',
|
|
@@ -560,7 +565,7 @@ export class Vault extends Entity {
|
|
|
560
565
|
* @internal
|
|
561
566
|
*/
|
|
562
567
|
_investmentCurrency() {
|
|
563
|
-
return this._root.currency(this._asset, this.
|
|
568
|
+
return this._root.currency(this._asset, this.centrifugeId);
|
|
564
569
|
}
|
|
565
570
|
/**
|
|
566
571
|
* Get the details of the share token.
|
|
@@ -578,10 +583,10 @@ export class Vault extends Entity {
|
|
|
578
583
|
_allowance(owner) {
|
|
579
584
|
return this._query(['allowance', owner.toLowerCase()], () => combineLatest([
|
|
580
585
|
this._investmentCurrency(),
|
|
581
|
-
this._root._protocolAddresses(this.
|
|
586
|
+
this._root._protocolAddresses(this.centrifugeId),
|
|
582
587
|
this._isSyncDeposit(),
|
|
583
588
|
]).pipe(switchMap(([asset, { vaultRouter }, isSyncDeposit]) => this._root
|
|
584
|
-
._allowance(owner, isSyncDeposit ? vaultRouter : this.address, this.
|
|
589
|
+
._allowance(owner, isSyncDeposit ? vaultRouter : this.address, this.centrifugeId, asset.address)
|
|
585
590
|
.pipe(map((allowance) => new Balance(allowance, asset.decimals))))));
|
|
586
591
|
}
|
|
587
592
|
/**
|
|
@@ -589,10 +594,14 @@ export class Vault extends Entity {
|
|
|
589
594
|
* @internal
|
|
590
595
|
*/
|
|
591
596
|
_maxReserve() {
|
|
592
|
-
return this._query(['maxReserve'], () => combineLatest([
|
|
593
|
-
|
|
597
|
+
return this._query(['maxReserve'], () => combineLatest([
|
|
598
|
+
this._root.getClient(this.centrifugeId),
|
|
599
|
+
this._root._protocolAddresses(this.centrifugeId),
|
|
600
|
+
this._investmentCurrency(),
|
|
601
|
+
]).pipe(switchMap(([client, { syncManager }, asset]) => defer(async () => {
|
|
602
|
+
const maxReserve = await client.readContract({
|
|
594
603
|
address: syncManager,
|
|
595
|
-
abi: ABI.
|
|
604
|
+
abi: ABI.SyncManager,
|
|
596
605
|
functionName: 'maxReserve',
|
|
597
606
|
args: [this.pool.id.raw, this.shareClass.id.raw, this._asset, 0n],
|
|
598
607
|
});
|
|
@@ -603,15 +612,19 @@ export class Vault extends Entity {
|
|
|
603
612
|
filter: (events) => events.some((event) => event.args.poolId === this.pool.id.raw &&
|
|
604
613
|
event.args.scId === this.shareClass.id.raw &&
|
|
605
614
|
event.args.asset?.toLowerCase() === this._asset),
|
|
606
|
-
}, this.
|
|
615
|
+
}, this.centrifugeId)))));
|
|
607
616
|
}
|
|
608
617
|
/**
|
|
609
618
|
* Get the available balance for this vault from the BalanceSheet.
|
|
610
619
|
* @internal
|
|
611
620
|
*/
|
|
612
621
|
_availableBalance() {
|
|
613
|
-
return this._query(['availableBalance'], () => combineLatest([
|
|
614
|
-
|
|
622
|
+
return this._query(['availableBalance'], () => combineLatest([
|
|
623
|
+
this._root.getClient(this.centrifugeId),
|
|
624
|
+
this._root._protocolAddresses(this.centrifugeId),
|
|
625
|
+
this._investmentCurrency(),
|
|
626
|
+
]).pipe(switchMap(([client, { balanceSheet }, asset]) => defer(async () => {
|
|
627
|
+
const availableBalance = await client.readContract({
|
|
615
628
|
address: balanceSheet,
|
|
616
629
|
abi: ABI.BalanceSheet,
|
|
617
630
|
functionName: 'availableBalanceOf',
|
|
@@ -624,7 +637,7 @@ export class Vault extends Entity {
|
|
|
624
637
|
filter: (events) => events.some((event) => event.args.poolId === this.pool.id.raw &&
|
|
625
638
|
event.args.scId === this.shareClass.id.raw &&
|
|
626
639
|
event.args.asset?.toLowerCase() === this._asset),
|
|
627
|
-
}, this.
|
|
640
|
+
}, this.centrifugeId)))));
|
|
628
641
|
}
|
|
629
642
|
}
|
|
630
643
|
//# sourceMappingURL=Vault.js.map
|