@dodoex/api 3.0.1 → 3.0.2-solana.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.
Files changed (196) hide show
  1. package/dist/index.cjs +14 -1
  2. package/dist/index.js +14 -1
  3. package/dist/types/chainConfig/basicToken.d.ts +8 -11
  4. package/dist/types/chainConfig/chain.d.ts +10 -20
  5. package/dist/types/chainConfig/index.d.ts +2 -2
  6. package/dist/types/gql/gql.d.ts +5 -1
  7. package/dist/types/gql/graphql.d.ts +266 -22
  8. package/dist/types/index.d.ts +3 -9
  9. package/dist/types/services/TokenApi/index.d.ts +2 -42
  10. package/dist/types/services/ammv3/AMMV3Api.d.ts +2 -45
  11. package/dist/types/services/ammv3/index.d.ts +2 -2
  12. package/dist/types/services/ammv3/queries.d.ts +2 -4
  13. package/dist/types/services/pool/PoolApi.d.ts +3 -364
  14. package/dist/types/services/pool/index.d.ts +1 -5
  15. package/dist/types/services/pool/type.d.ts +13 -1
  16. package/dist/types/services/system/SystemApi.d.ts +3 -0
  17. package/dist/types/services/system/graphqlQuery.d.ts +3 -0
  18. package/package.json +3 -2
  19. package/dist/AaveLendingPoolABI-CdLq16uB.js +0 -1
  20. package/dist/AaveLendingPoolABI-G3D5zkkz.cjs +0 -1
  21. package/dist/AaveLendingPoolAddressesProvider-DrLP2k1o.cjs +0 -1
  22. package/dist/AaveLendingPoolAddressesProvider-EOSAznLK.js +0 -1
  23. package/dist/AavePriceOracleABI-C2UEpXR4.js +0 -1
  24. package/dist/AavePriceOracleABI-C4jkbxlQ.cjs +0 -1
  25. package/dist/AaveProtocolDataProviderABI-0JclmmLX.js +0 -1
  26. package/dist/AaveProtocolDataProviderABI-ChLpWblx.cjs +0 -1
  27. package/dist/BaseDrops-BrQZPqKk.js +0 -1
  28. package/dist/BaseDrops-b4x2vqWE.cjs +0 -1
  29. package/dist/D3MM_READ_ABI-B5536S-z.js +0 -1
  30. package/dist/D3MM_READ_ABI-DPl8m5T6.cjs +0 -1
  31. package/dist/D3Proxy-CKIzLOhI.js +0 -1
  32. package/dist/D3Proxy-ChV5DN6z.cjs +0 -1
  33. package/dist/DODO1155-BNeD65Or.cjs +0 -1
  34. package/dist/DODO1155-DDY5Jxhf.js +0 -1
  35. package/dist/DODO721-CSXhoGSt.cjs +0 -1
  36. package/dist/DODO721-Kl5REiwU.js +0 -1
  37. package/dist/DODOCirculationHelperABI-BnZp9-jW.cjs +0 -1
  38. package/dist/DODOCirculationHelperABI-gu1sCqZ2.js +0 -1
  39. package/dist/DODORouteProxy-51kl6QgI.js +0 -1
  40. package/dist/DODORouteProxy-BZ0Y3GCA.cjs +0 -1
  41. package/dist/DODOV1PmmHelperABI-DD2Zqxnx.cjs +0 -1
  42. package/dist/DODOV1PmmHelperABI-DQqthyaE.js +0 -1
  43. package/dist/DVM-BpNPFgPh.cjs +0 -1
  44. package/dist/DVM-DjtWbqiJ.js +0 -1
  45. package/dist/DropsERC721-7Bckjcar.js +0 -1
  46. package/dist/DropsERC721-BhKaFHvL.cjs +0 -1
  47. package/dist/FilterAdmin-cj8kYpNK.cjs +0 -1
  48. package/dist/FilterAdmin-jm_-DS1l.js +0 -1
  49. package/dist/FilterERC1155V1-CYRg0d1t.cjs +0 -1
  50. package/dist/FilterERC1155V1-VIUlIHdF.js +0 -1
  51. package/dist/FilterERC721V1-Bi0L9sSX.cjs +0 -1
  52. package/dist/FilterERC721V1-CWDEPGmH.js +0 -1
  53. package/dist/Fragment-B-F8I7LL.cjs +0 -1
  54. package/dist/Fragment-Bd_AXeVx.js +0 -1
  55. package/dist/FundingABI-CVCr1rVZ.cjs +0 -1
  56. package/dist/FundingABI-WqQDGVVa.js +0 -1
  57. package/dist/IdodoV2-DlW8pwaE.js +0 -1
  58. package/dist/IdodoV2-RfwR_GpI.cjs +0 -1
  59. package/dist/LockedTokenVaultABI-CfBj0wEX.js +0 -1
  60. package/dist/LockedTokenVaultABI-DRbLRj9L.cjs +0 -1
  61. package/dist/MarginTrading-CQ5odvHB.js +0 -1
  62. package/dist/MarginTrading-DTxWKyBB.cjs +0 -1
  63. package/dist/MarginTradingFactory-2RKqvCSO.js +0 -1
  64. package/dist/MarginTradingFactory-CXV_vwa8.cjs +0 -1
  65. package/dist/MerkleDistributorABI-C8Qfs-nh.cjs +0 -1
  66. package/dist/MerkleDistributorABI-Ctn26fnA.js +0 -1
  67. package/dist/NonfungiblePositionManager-C-qYqe32.cjs +0 -1
  68. package/dist/NonfungiblePositionManager-c8Yw_9-Q.js +0 -1
  69. package/dist/PancakePairABI-Cc9LuXnX.js +0 -1
  70. package/dist/PancakePairABI-DYhV587D.cjs +0 -1
  71. package/dist/UniswapV3Pool-CbMV0NzU.cjs +0 -1
  72. package/dist/UniswapV3Pool-Da11VKXE.js +0 -1
  73. package/dist/baseFilterV1-BPjWXMKw.js +0 -1
  74. package/dist/baseFilterV1-BuIlo0KL.cjs +0 -1
  75. package/dist/bsc-3D5wcqPq.js +0 -1
  76. package/dist/bsc-DPJpw0CZ.cjs +0 -1
  77. package/dist/classicalPoolABI-BECDfgEG.cjs +0 -1
  78. package/dist/classicalPoolABI-D5LxySAJ.js +0 -1
  79. package/dist/dodoABI-CLkEBJ8P.js +0 -1
  80. package/dist/dodoABI-gkjw8zb6.cjs +0 -1
  81. package/dist/dodoBuyoutModel-BtQv3C3q.js +0 -1
  82. package/dist/dodoBuyoutModel-iVgU8FQj.cjs +0 -1
  83. package/dist/dodoCP-CLHk9HB9.cjs +0 -1
  84. package/dist/dodoCP-N8KA8JwJ.js +0 -1
  85. package/dist/dodoCPABI-CdAN0KhU.js +0 -1
  86. package/dist/dodoCPABI-DtzutjJ_.cjs +0 -1
  87. package/dist/dodoCPABIV2-fyFD9xst.cjs +0 -1
  88. package/dist/dodoCPABIV2-yzF6FlEg.js +0 -1
  89. package/dist/dodoCPFactory-CBF19zgJ.cjs +0 -1
  90. package/dist/dodoCPFactory-CD0SxXT6.js +0 -1
  91. package/dist/dodoCpProxy-C0DPYWye.cjs +0 -1
  92. package/dist/dodoCpProxy-D2AI9-4r.js +0 -1
  93. package/dist/dodoCpProxyV2-CGZRqk2H.js +0 -1
  94. package/dist/dodoCpProxyV2-DpTvj7-M.cjs +0 -1
  95. package/dist/dodoCpProxyV202-BLhZ86Hq.cjs +0 -1
  96. package/dist/dodoCpProxyV202-CoZaEf_6.js +0 -1
  97. package/dist/dodoCustomMintableERC20-CPpNoX1v.js +0 -1
  98. package/dist/dodoCustomMintableERC20-_rvvHxmy.cjs +0 -1
  99. package/dist/dodoDPPAdmin-B-fmpTbV.js +0 -1
  100. package/dist/dodoDPPAdmin-Dn7blhFO.cjs +0 -1
  101. package/dist/dodoDPPFactory-DZUKGMVx.cjs +0 -1
  102. package/dist/dodoDPPFactory-DwAkVskt.js +0 -1
  103. package/dist/dodoDSP-B6KYm-Cn.js +0 -1
  104. package/dist/dodoDSP-DiQP3j-f.cjs +0 -1
  105. package/dist/dodoDSPFactory-Bd74S17p.cjs +0 -1
  106. package/dist/dodoDSPFactory-j1eg7Ez-.js +0 -1
  107. package/dist/dodoDVM-DDYx1JAy.js +0 -1
  108. package/dist/dodoDVM-cigh0zp3.cjs +0 -1
  109. package/dist/dodoDVMFactory-FpnJdZb2.js +0 -1
  110. package/dist/dodoDVMFactory-Jw7GN957.cjs +0 -1
  111. package/dist/dodoDppProxy-A7PPYsqp.js +0 -1
  112. package/dist/dodoDppProxy-evCBC-32.cjs +0 -1
  113. package/dist/dodoDropsProxy-aB8sftUR.cjs +0 -1
  114. package/dist/dodoDropsProxy-vHUWsRNO.js +0 -1
  115. package/dist/dodoDspProxy-Bp3cG2Me.cjs +0 -1
  116. package/dist/dodoDspProxy-CU7OAvJG.js +0 -1
  117. package/dist/dodoERC20V3Factory-Cz4XKDrU.js +0 -1
  118. package/dist/dodoERC20V3Factory-Dp6VtQdx.cjs +0 -1
  119. package/dist/dodoEthProxyABI-COvGooIx.cjs +0 -1
  120. package/dist/dodoEthProxyABI-CoX95QJI.js +0 -1
  121. package/dist/dodoFeeImpl-n8uxW-_A.cjs +0 -1
  122. package/dist/dodoFeeImpl-zR9Qv4Tq.js +0 -1
  123. package/dist/dodoFragment-4lxmE2XJ.js +0 -1
  124. package/dist/dodoFragment-QQKv5zUw.cjs +0 -1
  125. package/dist/dodoMineV3Proxy-DVScIYYs.cjs +0 -1
  126. package/dist/dodoMineV3Proxy-xOGM7Jnv.js +0 -1
  127. package/dist/dodoMineV3ProxyOld-BqsZxJRU.js +0 -1
  128. package/dist/dodoMineV3ProxyOld-C_F6KVsX.cjs +0 -1
  129. package/dist/dodoMiningABI-9J5C_6kN.js +0 -1
  130. package/dist/dodoMiningABI-Bz2I9IA2.cjs +0 -1
  131. package/dist/dodoMiningReaderABI-B2wU_50T.cjs +0 -1
  132. package/dist/dodoMiningReaderABI-DmUXA9Gv.js +0 -1
  133. package/dist/dodoNftERC1155-Bw6ID2NE.js +0 -1
  134. package/dist/dodoNftERC1155-DLIuD5w1.cjs +0 -1
  135. package/dist/dodoNftERC721-CI1l0ip9.js +0 -1
  136. package/dist/dodoNftERC721-CM9UVOIz.cjs +0 -1
  137. package/dist/dodoNftPoolProxy-D1h5SkLL.cjs +0 -1
  138. package/dist/dodoNftPoolProxy-DQkcZHUV.js +0 -1
  139. package/dist/dodoNftProxy-DM2zeXHX.cjs +0 -1
  140. package/dist/dodoNftProxy-Di-aoLYM.js +0 -1
  141. package/dist/dodoNftVault-4I3wB3W5.cjs +0 -1
  142. package/dist/dodoNftVault-B4NZaXcd.js +0 -1
  143. package/dist/dodoOracleABI-BxwZofBV.js +0 -1
  144. package/dist/dodoOracleABI-CZXzRpKf.cjs +0 -1
  145. package/dist/dodoPair-DZAKf_5j.cjs +0 -1
  146. package/dist/dodoPair-VN1aEVFz.js +0 -1
  147. package/dist/dodoPreminingABI-BO5Cazcq.cjs +0 -1
  148. package/dist/dodoPreminingABI-DU7ocR7L.js +0 -1
  149. package/dist/dodoProxyV2-9ED9HqK5.js +0 -1
  150. package/dist/dodoProxyV2-C4O1SzS4.cjs +0 -1
  151. package/dist/dodoStarterProxy-B1TdMOvw.js +0 -1
  152. package/dist/dodoStarterProxy-DgcH9iEq.cjs +0 -1
  153. package/dist/dodoTokenABI-6Mpqu75U.cjs +0 -1
  154. package/dist/dodoTokenABI-Dd2DVUbK.js +0 -1
  155. package/dist/dodoUpCPFactoryABI-C1W0Q4Ft.js +0 -1
  156. package/dist/dodoUpCPFactoryABI-XGsn8ED4.cjs +0 -1
  157. package/dist/dodoUpCpFactory-D8ifQyp-.js +0 -1
  158. package/dist/dodoUpCpFactory-XGsn8ED4.cjs +0 -1
  159. package/dist/dodoV1PairProxy-DpEjE8Ne.cjs +0 -1
  160. package/dist/dodoV1PairProxy-DyRTqyPe.js +0 -1
  161. package/dist/dodoZooABI-D44Zl74h.cjs +0 -1
  162. package/dist/dodoZooABI-D9Uc4iLK.js +0 -1
  163. package/dist/dppPoolABI-BdDjNXGV.cjs +0 -1
  164. package/dist/dppPoolABI-BvoeLJgK.js +0 -1
  165. package/dist/erc20ABI-G8oWOkZ8.cjs +0 -1
  166. package/dist/erc20ABI-v08X4jmE.js +0 -1
  167. package/dist/erc20Helper-CG659oLz.js +0 -1
  168. package/dist/erc20Helper-DU3PGwta.cjs +0 -1
  169. package/dist/eth-B9cviUl5.js +0 -1
  170. package/dist/eth-BTzl-wbR.cjs +0 -1
  171. package/dist/feeABI-DnQdJUpQ.js +0 -1
  172. package/dist/feeABI-n8uxW-_A.cjs +0 -1
  173. package/dist/multicallABI-D9E1EeQD.js +0 -1
  174. package/dist/multicallABI-Dhweb42q.cjs +0 -1
  175. package/dist/nftContract-d4b6ObxG.js +0 -1
  176. package/dist/nftContract-hvFiWn3Y.cjs +0 -1
  177. package/dist/nftFilterAdmin-Bq1uLy_8.cjs +0 -1
  178. package/dist/nftFilterAdmin-DMr_jrK_.js +0 -1
  179. package/dist/oneBitSettlement-DMzQ-0t_.js +0 -1
  180. package/dist/oneBitSettlement-DiJ0ov7p.cjs +0 -1
  181. package/dist/setApprovalForAll-BvnCORJI.js +0 -1
  182. package/dist/setApprovalForAll-C5PVWdKB.cjs +0 -1
  183. package/dist/spaceIdABI-B5tTrrz8.cjs +0 -1
  184. package/dist/spaceIdABI-BS4XGAT1.js +0 -1
  185. package/dist/spaceIdResolverABI-CrfOXUgo.cjs +0 -1
  186. package/dist/spaceIdResolverABI-sYDT8GfP.js +0 -1
  187. package/dist/types/services/TokenApi/utils.d.ts +0 -1
  188. package/dist/types/services/pool/pmm/pmmModel.d.ts +0 -25
  189. package/dist/v3MiningABI-C-S-QkHw.cjs +0 -1
  190. package/dist/v3MiningABI-ZjGBkolS.js +0 -1
  191. package/dist/vdodo-BV3kGDOM.cjs +0 -1
  192. package/dist/vdodo-ttc2RVOs.js +0 -1
  193. package/dist/vdodoTokenABI-BuOHA0B9.cjs +0 -1
  194. package/dist/vdodoTokenABI-PldrbOSo.js +0 -1
  195. package/dist/weth-CGG0Z6re.cjs +0 -1
  196. package/dist/weth-Dz5DGEIF.js +0 -1
package/dist/index.cjs CHANGED
@@ -1 +1,14 @@
1
- "use strict";var e=require("@dodoex/dodo-contract-request"),t=require("js-sha3"),r=require("bn.js"),n=require("hash.js"),i=require("bech32"),s=require("lodash"),o=require("bignumber.js"),a=require("cross-fetch"),c=require("qs"),l=require("@dodoex/contract-request");function u(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var d,h=u(a);exports.ChainId=void 0,(d=exports.ChainId||(exports.ChainId={}))[d.MAINNET=1]="MAINNET",d[d.GOERLI=5]="GOERLI",d[d.SEPOLIA=11155111]="SEPOLIA",d[d.BSC=56]="BSC",d[d.POLYGON=137]="POLYGON",d[d.ARBITRUM_ONE=42161]="ARBITRUM_ONE",d[d.AURORA=1313161554]="AURORA",d[d.OKCHAIN=66]="OKCHAIN",d[d.OPTIMISM=10]="OPTIMISM",d[d.AVALANCHE=43114]="AVALANCHE",d[d.CONFLUX=1030]="CONFLUX",d[d.BASE=8453]="BASE",d[d.LINEA=59144]="LINEA",d[d.SCROLL=534352]="SCROLL",d[d.MANTA=169]="MANTA",d[d.MANTLE=5e3]="MANTLE",d[d.DODO_CHAIN_TESTNET=53457]="DODO_CHAIN_TESTNET",d[d.TAIKO=167e3]="TAIKO",d[d.PLUME=98865]="PLUME",d[d.NEOX=47763]="NEOX";const f="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",p={symbol:"ETH",address:f,name:"Ether",decimals:18,showDecimals:4,wrappedTokenSymbol:"WETH"},m={[exports.ChainId.MAINNET]:Object.assign(Object.assign({},p),{wrappedTokenAddress:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"}),[exports.ChainId.GOERLI]:Object.assign(Object.assign({},p),{wrappedTokenAddress:"0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6"}),[exports.ChainId.SEPOLIA]:Object.assign(Object.assign({},p),{wrappedTokenAddress:"0x7B07164ecFaF0F0D85DFC062Bc205a4674c75Aa0"}),[exports.ChainId.OPTIMISM]:Object.assign(Object.assign({},p),{wrappedTokenAddress:"0x4200000000000000000000000000000000000006"}),[exports.ChainId.CONFLUX]:Object.assign(Object.assign({},p),{symbol:"CFX",name:"CFX",wrappedTokenSymbol:"WCFX",wrappedTokenAddress:"0x14b2d3bc65e74dae1030eafd8ac30c533c976a9b"}),[exports.ChainId.BSC]:Object.assign(Object.assign({},p),{symbol:"BNB",name:"BNB",wrappedTokenSymbol:"WBNB",wrappedTokenAddress:"0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c"}),[exports.ChainId.OKCHAIN]:Object.assign(Object.assign({},p),{symbol:"OKT",name:"OKT",wrappedTokenSymbol:"WOKT",wrappedTokenAddress:"0x8F8526dbfd6E38E3D8307702cA8469Bae6C56C15"}),[exports.ChainId.POLYGON]:Object.assign(Object.assign({},p),{symbol:"MATIC",name:"MATIC",showDecimals:6,wrappedTokenSymbol:"WMATIC",wrappedTokenAddress:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270"}),[exports.ChainId.ARBITRUM_ONE]:Object.assign(Object.assign({},p),{name:"Ethereum",showDecimals:6,wrappedTokenAddress:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"}),[exports.ChainId.AURORA]:Object.assign(Object.assign({},p),{name:"Ethereum",showDecimals:6,wrappedTokenAddress:"0xC9BdeEd33CD01541e1eeD10f90519d2C06Fe3feB"}),[exports.ChainId.AVALANCHE]:Object.assign(Object.assign({},p),{symbol:"AVAX",name:"Avalanche",showDecimals:6,wrappedTokenSymbol:"WAVAX",wrappedTokenAddress:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7"}),[exports.ChainId.BASE]:Object.assign(Object.assign({},p),{wrappedTokenSymbol:"WETH",wrappedTokenAddress:"0x4200000000000000000000000000000000000006"}),[exports.ChainId.LINEA]:Object.assign(Object.assign({},p),{wrappedTokenSymbol:"WETH",wrappedTokenAddress:"0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f"}),[exports.ChainId.SCROLL]:Object.assign(Object.assign({},p),{wrappedTokenSymbol:"WETH",wrappedTokenAddress:"0x5300000000000000000000000000000000000004"}),[exports.ChainId.MANTA]:Object.assign(Object.assign({},p),{wrappedTokenSymbol:"WETH",wrappedTokenAddress:"0x0Dc808adcE2099A9F62AA87D9670745AbA741746"}),[exports.ChainId.MANTLE]:Object.assign(Object.assign({},p),{wrappedTokenSymbol:"WMNT",wrappedTokenAddress:"0x78c1b0C915c4FAA5FffA6CAbf0219DA63d7f4cb8"}),[exports.ChainId.DODO_CHAIN_TESTNET]:Object.assign(Object.assign({},p),{symbol:"dodo",name:"Wrapped Berd",wrappedTokenSymbol:"WBERD",wrappedTokenAddress:"0x3a64Ec3606FF7310E8fAd6FcC008e39705fB496d"}),[exports.ChainId.TAIKO]:Object.assign(Object.assign({},p),{wrappedTokenAddress:"0xA51894664A773981C6C112C43ce576f315d5b1B6"}),[exports.ChainId.PLUME]:Object.assign(Object.assign({},p),{wrappedTokenAddress:"0x562723560131C47417dfcD6BB1A089E4D7C7943C"}),[exports.ChainId.NEOX]:Object.assign(Object.assign({},p),{symbol:"GAS",name:"GAS",showDecimals:6,wrappedTokenSymbol:"WGAS10",wrappedTokenAddress:"0xdE41591ED1f8ED1484aC2CD8ca0876428de60EfF"})},g={[exports.ChainId.MAINNET]:{MULTI_CALL:"0xeefba1e63905ef1d7acba5a8513c70307c1ce441",DODO_APPROVE:"0xCB859eA579b28e02B87A1FDE08d087ab9dbE5149",ERC20_HELPER:"0x4F99cba8aAEad26fc970dc6CC4ea435779Fa9016",ROUTE_V2_DATA_FETCH:"0x9337cA090c390667984869193e10c3D4f9a17da8",ROUTE_V1_DATA_FETCH:"0x6373ceB657C83C91088d328622573FB766064Ac4",CALLEE_HELPER:"0x45a7E2E9D780613E047f7e78a9d3902ff854B522",DODO_PROXY:"0xa356867fDCEa8e71AEaF87805808803806231FdC",DODO_DSP_PROXY:"0x4599ed18F34cFE06820E3684bF0aACB8D75c644d",DODO_DPP_PROXY:"0xfF7C8F518e6f1435957ed3d3E0692C94676dAE7a",DODO_V1_PAIR_PROXY:"0x8dD0Fea5FA2f7df535F87f312641Cc15d8B151BA",DODO_MINEV3_PROXY:"0x0d9685D4037580F68D9F77B08971f17E1000bBdc"},[exports.ChainId.GOERLI]:{MULTI_CALL:"0x696E25A5e2AEd1C55E6d6Cfa0532Bbda9020165d",DODO_APPROVE:"0xC9143e54021f4a6d33b9b89DBB9F458AaEdd56FB",ERC20_HELPER:"0x24549FC74B3076A962624A26370ed556c467F74C",ROUTE_V2_DATA_FETCH:"0x7E9c460d0A10bd0605B15F0d0388e307d34a62E6",ROUTE_V1_DATA_FETCH:"0xAC716E87b0853C0712674e8E3a8435a489F276b4",CALLEE_HELPER:"0x5B2fd46E6E3Ff1E479d651ec0b210882Aa9871dF",DODO_PROXY:"0xbce44767af0a53A108b3B7ba4F740E03D228Ec0A",DODO_DSP_PROXY:"0x8d9ccc26CbF3D49bbA76E9920C3E6ed29e06b5cc",DODO_DPP_PROXY:"0xc4A1a152812dE96b2B1861E433f42290CDD7f113",DODO_MINEV3_PROXY:"0x99d69565EdA438E3ebAA0627A407968ABD0f755b"},[exports.ChainId.SEPOLIA]:{MULTI_CALL:"0x0fcB5237A1997C4700Ffa2BB4522EA38d4F851Fc",DODO_APPROVE:"0x66c45FF040e86DC613F239123A5E21FFdC3A3fEC",ERC20_HELPER:"0x297da061D1dE0132D241Fafed224288B34d81005",ROUTE_V2_DATA_FETCH:"0x03e89fC55A5ad0531576E5a502c4CA52c8bf391B",ROUTE_V1_DATA_FETCH:"0x3dD629473A2eD7f3C6299FFD9F3e0C283d073f11",CALLEE_HELPER:"0xCD536b4DECFD2fa0443666B6becD145F8aDe2E48",DODO_PROXY:"0x6292e8f7647b3b9dDf5795b1Fb77D0187e30E0F9",DODO_DSP_PROXY:"0x987bFBE33c9cF18cAA665B792Db66339a9c16D32",DODO_DPP_PROXY:"0x5e1251f4873248a030e1c92FFEB133AF1513277f",DODO_MINEV3_PROXY:"0xBbD59b9316eE65526DbBdEc2A748Cc05A285d54C"},[exports.ChainId.BSC]:{MULTI_CALL:"0x1Ee38d535d541c55C9dae27B12edf090C608E6Fb",DODO_APPROVE:"0xa128Ba44B2738A558A1fdC06d6303d52D3Cef8c1",ERC20_HELPER:"0x5B9E4c3056227C316a3da3296031DdC7a8d6a867",ROUTE_V2_DATA_FETCH:"0x35b8F92AcFE368afb90d37555f6d075Fc569a6BA",ROUTE_V1_DATA_FETCH:"0x2BBD66fC4898242BDBD2583BBe1d76E8b8f71445",CALLEE_HELPER:"0x2673E5333620bb22BD1bFB3af9Fc7012008E3b4B",DODO_PROXY:"0x8F8Dd7DB1bDA5eD3da8C9daf3bfa471c12d58486",DODO_DSP_PROXY:"0x2442A8B5cdf1E659F3F949A7E454Caa554D4E65a",DODO_DPP_PROXY:"0x624FC8368fE11BE00D8B2F3fE0B9D0053BEc21b9",DODO_V1_PAIR_PROXY:"0x4Fc222194862081866FC636893DDeCB3E4341A10",DODO_MINEV3_PROXY:"0x8f3fB1f9148dC473453163bF31de1d830Eb5c590"},[exports.ChainId.POLYGON]:{MULTI_CALL:"0xc9eD9B18e447e600238fe50e944B9062B664DEa4",DODO_APPROVE:"0x6D310348d5c12009854DFCf72e0DF9027e8cb4f4",ERC20_HELPER:"0xfd24312Ec7871A6D1a31e454D5AbB16c6c25a9b3",ROUTE_V2_DATA_FETCH:"0x1870854754d1E76C58B0a56a153E12Ff868eE3C6",ROUTE_V1_DATA_FETCH:"0x18DFdE99F578A0735410797e949E8D3e2AFCB9D2",CALLEE_HELPER:"0x261F6cF4dF0e5c1432739cDAFD9299150FEd3dFc",DODO_PROXY:"0xa222e6a71D1A1Dd5F279805fbe38d5329C1d0e70",DODO_DSP_PROXY:"0xA3dfF6ae0F73f0970E31Da63B3736F7D3CEF683e",DODO_DPP_PROXY:"0xF6f1A1Ef2f5b56bb289993F75C12Eb41e4abC2f7",DODO_V1_PAIR_PROXY:"0x58E27C46c162F2a781d750BbE1119E1b2DfE82e0",DODO_MINEV3_PROXY:"0x47a65e74dd6b6B5E3243dBb01EDEd9D55ba234Ad"},[exports.ChainId.ARBITRUM_ONE]:{MULTI_CALL:"0xF718F2bd590E5621e53f7b89398e52f7Acced8ca",DODO_APPROVE:"0xA867241cDC8d3b0C07C85cC06F25a0cD3b5474d8",ERC20_HELPER:"0x7C062B9C584fA6eC2504270790D38240A2c5fE72",ROUTE_V2_DATA_FETCH:"0x0C420970b2e5efcBB6e833601772D6E707155eA6",ROUTE_V1_DATA_FETCH:"0x4EE6398898F7FC3e648b3f6bA458310ac29cD352",CALLEE_HELPER:"0xe3B40F8D8346d428EAB28d9Fd672b784d921cfBD",DODO_PROXY:"0x88CBf433471A0CD8240D2a12354362988b4593E5",DODO_DSP_PROXY:"0x36E5238B4479d1ba0bFE47550B0B8e4f4f500EAA",DODO_DPP_PROXY:"0xE8C9A78725D0451FA19878D5f8A3dC0D55FECF25",DODO_V1_PAIR_PROXY:"0x49186E32fEd50fd6B5604A2618c7B0b03Cd41414",DODO_MINEV3_PROXY:"0x7E820457780Ac99B9A042Cd5f875b274855A1eE9"},[exports.ChainId.AURORA]:{MULTI_CALL:"0x989DcAA95801C527C5B73AA65d3962dF9aCe1b0C",DODO_APPROVE:"0x335aC99bb3E51BDbF22025f092Ebc1Cf2c5cC619",ERC20_HELPER:"0xE8C9A78725D0451FA19878D5f8A3dC0D55FECF25",ROUTE_V2_DATA_FETCH:"0x49eAB58AAE044F31d3b136212058a00b282b2845",ROUTE_V1_DATA_FETCH:"0xbAb9F4ff4A19a0e8EEBC56b06750253228ffAc6E",CALLEE_HELPER:"0x738Ebf387A0CE0eb46b0eF8Fa5DEa2EaE6B1Df51",DODO_PROXY:"0xd9deC7c3C06e62a4c1BeEB07CadF568f496b14c2",DODO_DSP_PROXY:"0x53233ABD9108761258a4B6B7822abFD6716B129B",DODO_DPP_PROXY:"0x357c5E9cfA8B834EDcef7C7aAbD8F9Db09119d11",DODO_MINEV3_PROXY:"0x4775b1858f1e417C9609D455C3Ad8751ec01daC4"},[exports.ChainId.OKCHAIN]:{MULTI_CALL:"0x5e84190a270333aCe5B9202a3F4ceBf11b81bB01",DODO_APPROVE:"0x7737fd30535c69545deeEa54AB8Dd590ccaEBD3c",ERC20_HELPER:"0x4775b1858f1e417C9609D455C3Ad8751ec01daC4",ROUTE_V2_DATA_FETCH:"0x10Dd6d8A29D489BEDE472CC1b22dc695c144c5c7",ROUTE_V1_DATA_FETCH:"0xDfaf9584F5d229A9DBE5978523317820A8897C5A",CALLEE_HELPER:"0x3CD6D7F5fF977bf8069548eA1F9441b061162b42",DODO_PROXY:"0x6B4Fa0bc61Eddc928e0Df9c7f01e407BfcD3e5EF",DODO_DSP_PROXY:"0x5515363c0412AdD5c72d3E302fE1bD7dCBCF93Fe",DODO_DPP_PROXY:"0xa222e6a71D1A1Dd5F279805fbe38d5329C1d0e70",DODO_MINEV3_PROXY:"0x958f79e2998DFe417208b9A07D799265B0298e58"},[exports.ChainId.OPTIMISM]:{MULTI_CALL:"0xb98Ac2fEFc8b73aeAE33D02BB00c26E12afCa9Df",DODO_APPROVE:"0xa492d6eABcdc3E204676f15B950bBdD448080364",ERC20_HELPER:"0x42E456ea0dd7538ea103fBb1d0388D14C97bB5b2",ROUTE_V2_DATA_FETCH:"0xC48A8e689a644de96F80786ACb69E6F76D057F25",ROUTE_V1_DATA_FETCH:"0x6281E0628eb2B37fE9943279EA39725D5f0E0dBe",CALLEE_HELPER:"0x0BD7426f008737FeeD575ED8e2aA1bd4Fc49112D",DODO_PROXY:"0xfD9D2827AD469B72B69329dAA325ba7AfbDb3C98",DODO_DSP_PROXY:"0x61721e89a498dADa7aD579482BDC2aE60a9C5D54",DODO_DPP_PROXY:"0x51A70a33655FE1c5fae3286890DcE3bE332E85dD",DODO_MINEV3_PROXY:"0xaEdbD08D92ECccaA9A93b1A8D66D1d356e470c78"},[exports.ChainId.AVALANCHE]:{MULTI_CALL:"0x97f0153E7F5749640aDF3Ff9CFC518b79D6Fe53b",DODO_APPROVE:"0xCFea63e3DE31De53D68780Dd65675F169439e470",ERC20_HELPER:"0xC3528D128CC227fd60793007b5e3FdF7c2945282",ROUTE_V2_DATA_FETCH:"0x686984f0aa37585504f51DEbA0Eb45B0f0CB7e4a",ROUTE_V1_DATA_FETCH:"0x790B4A80Fb1094589A3c0eFC8740aA9b0C1733fB",CALLEE_HELPER:"0x4EfF1D851366b8cc51d553a87e2d12dA8Da46F2a",DODO_PROXY:"0x2cD18557E14aF72DAA8090BcAA95b231ffC9ea26",DODO_DSP_PROXY:"0xeCEaDe494FD5F913Fd937C5CAc4577236395Dc32",DODO_DPP_PROXY:"0xe44F14BFDe673B7339734a28152cCd6b821753C9",DODO_MINEV3_PROXY:"0x5D6e6A0BFB2176AFCc4FB809822D8e009216b245"},[exports.ChainId.CONFLUX]:{MULTI_CALL:"0x696e25a5e2aed1c55e6d6cfa0532bbda9020165d",DODO_APPROVE:"0x5BaF16d57620Cb361F622232F3cb4090e35F3da2",ERC20_HELPER:"0x24549FC74B3076A962624A26370ed556c467F74C",ROUTE_V2_DATA_FETCH:"0x7E9c460d0A10bd0605B15F0d0388e307d34a62E6",ROUTE_V1_DATA_FETCH:"0xAC716E87b0853C0712674e8E3a8435a489F276b4",CALLEE_HELPER:"0x5B2fd46E6E3Ff1E479d651ec0b210882Aa9871dF",DODO_PROXY:"0xbce44767af0a53A108b3B7ba4F740E03D228Ec0A",DODO_DSP_PROXY:"0x8d9ccc26cbf3d49bba76e9920c3e6ed29e06b5cc",DODO_DPP_PROXY:"0x99d69565EdA438E3ebAA0627A407968ABD0f755b",DODO_MINEV3_PROXY:"0x14F7B8Fb0c1447DdE7bcf92a8d9BB058c8A5FE64"},[exports.ChainId.BASE]:{MULTI_CALL:"0xf5Ec1a19e1570bDf0A3AaA6585274f27027270b1",DODO_APPROVE:"0x89872650fA1A391f58B4E144222bB02e44db7e3B",ERC20_HELPER:"0xB5c7BA1EAde74800cD6cf5F56b1c4562De373780",ROUTE_V2_DATA_FETCH:"0xa5fc92Ca57a21C87AA0477b1c8fE8B9Bbf69d6C2",ROUTE_V1_DATA_FETCH:"0x17644d3B366273faC75A07996E2F90A99A2946a7",CALLEE_HELPER:"0x44023441f2Bad375b6b5C6354B03c3E9AD01E269",DODO_PROXY:"0x4CAD0052524648A7Fa2cfE279997b00239295F33",DODO_DSP_PROXY:"0x49186E32fEd50fd6B5604A2618c7B0b03Cd41414",DODO_DPP_PROXY:"0x0B1467f71c082D8d410aF4376C685D9A6893cF36",DODO_MINEV3_PROXY:"0x2F66C5aAF006Bd9c51615D617589C16c0ed35fD3"},[exports.ChainId.LINEA]:{MULTI_CALL:"0xa7b9C3a116b20bEDDdBE4d90ff97157f67F0bD97",DODO_APPROVE:"0x6de4d882a84A98f4CCD5D33ea6b3C99A07BAbeB1",ERC20_HELPER:"0xbcd2FDC3B884Cf0dfD932f55Ec2Fe1fB7e8c62Da",ROUTE_V2_DATA_FETCH:"0xa5fc92Ca57a21C87AA0477b1c8fE8B9Bbf69d6C2",ROUTE_V1_DATA_FETCH:"0xa5fc92Ca57a21C87AA0477b1c8fE8B9Bbf69d6C2",CALLEE_HELPER:"0xB5c7BA1EAde74800cD6cf5F56b1c4562De373780",DODO_PROXY:"0x4CAD0052524648A7Fa2cfE279997b00239295F33",DODO_DSP_PROXY:"0x6D3bd005A8a75d6522C9cFE7d309BB1Cf9650e03",DODO_DPP_PROXY:"0xCDA4a6cc5997002B87f28D46852F9F0aA0f3c897",DODO_MINEV3_PROXY:"0xA6d0066328Edbcf3220cf8F61e8527e589DD9719"},[exports.ChainId.SCROLL]:{MULTI_CALL:"0xf5Ec1a19e1570bDf0A3AaA6585274f27027270b1",DODO_APPROVE:"0x20E77aD760eC9E922Fd2dA8847ABFbB2471B92CD",ERC20_HELPER:"0xB5c7BA1EAde74800cD6cf5F56b1c4562De373780",ROUTE_V2_DATA_FETCH:"0xf5048d8F9163AF17Db522Abe9FaF37735C911320",ROUTE_V1_DATA_FETCH:"0x17644d3B366273faC75A07996E2F90A99A2946a7",CALLEE_HELPER:"0x44023441f2Bad375b6b5C6354B03c3E9AD01E269",DODO_PROXY:"0xe49781e6186214d88aACFd9eBc8cE40E3CDc066D",DODO_DSP_PROXY:"0x7Dd8c909E1F48a68FfEF03492761AF17B1496EDc",DODO_DPP_PROXY:"0x99d69565EdA438E3ebAA0627A407968ABD0f755b",DODO_MINEV3_PROXY:"0x14F7B8Fb0c1447DdE7bcf92a8d9BB058c8A5FE64"},[exports.ChainId.MANTA]:{MULTI_CALL:"0xf5Ec1a19e1570bDf0A3AaA6585274f27027270b1",DODO_APPROVE:"0x0226fCE8c969604C3A0AD19c37d1FAFac73e13c2",ERC20_HELPER:"0xB5c7BA1EAde74800cD6cf5F56b1c4562De373780",ROUTE_V2_DATA_FETCH:"0x4CAD0052524648A7Fa2cfE279997b00239295F33",ROUTE_V1_DATA_FETCH:"0x17644d3B366273faC75A07996E2F90A99A2946a7",CALLEE_HELPER:"0x44023441f2Bad375b6b5C6354B03c3E9AD01E269",DODO_PROXY:"0x2F86652dAEF5f1728c54191C955F065Ec3C188c7",DODO_DSP_PROXY:"0x0B1467f71c082D8d410aF4376C685D9A6893cF36",DODO_DPP_PROXY:"0xCDA4a6cc5997002B87f28D46852F9F0aA0f3c897",DODO_MINEV3_PROXY:"0xA6d0066328Edbcf3220cf8F61e8527e589DD9719"},[exports.ChainId.MANTLE]:{MULTI_CALL:"0xf5Ec1a19e1570bDf0A3AaA6585274f27027270b1",DODO_APPROVE:"0xa71415675F68f29259ddD63215E5518d2735bf0a",ERC20_HELPER:"0xB5c7BA1EAde74800cD6cf5F56b1c4562De373780",ROUTE_V2_DATA_FETCH:"0xCDA4a6cc5997002B87f28D46852F9F0aA0f3c897",ROUTE_V1_DATA_FETCH:"0xa1609A1fa7DC16c025feA194c02b2822441b8c10",CALLEE_HELPER:"0x4aAe1d041C01078725dB016BA4D4F72455CaF931",DODO_PROXY:"0xe7979E2F3e77196Bb2AB206eaa67Ea278A3E33A2",DODO_DSP_PROXY:"0x2933c0374089D7D98BA0C71c5E02E1A0e09deBEE",DODO_DPP_PROXY:"0xa5fc92Ca57a21C87AA0477b1c8fE8B9Bbf69d6C2",DODO_MINEV3_PROXY:"0x6D3bd005A8a75d6522C9cFE7d309BB1Cf9650e03"},[exports.ChainId.DODO_CHAIN_TESTNET]:{MULTI_CALL:"0xD0CF7dfbF09CAfaB8AEf00e0Ce19a4638004a364",DODO_APPROVE:"0x82B26eb18382f7532015248078AB1f6030413396",ERC20_HELPER:"0xE6cecb7460c9E52aA483cb1f0E87d78D7085686F",ROUTE_V2_DATA_FETCH:"0xA3148a1765897EC0A9bCA57f855C0B4718060b78",ROUTE_V1_DATA_FETCH:"0x2e50e3e18c19C7d80B81888a961A13aEE49b962E",CALLEE_HELPER:"0x2Ba2696c63fA8b67b395de6D12F849b17C3515F9",DODO_PROXY:"0x464518e33F7Bd5E61a92b98b4332782915442580",DODO_DSP_PROXY:"0x886F677605512351e554AA53BA77eA493058b460",DODO_DPP_PROXY:"0xB4f2E70DE64F94116A6e93ff4dF2D020E91e7a63",DODO_MINEV3_PROXY:"0x391f8D754E4BaC453d059BA7D2137C4905bF48d4"},[exports.ChainId.TAIKO]:{MULTI_CALL:"0x388371233439cF57bB8C9f2e4835954841cfCb15",DODO_APPROVE:"0x2629E610dB4AC081c108cCDf8b19ED39D702df43",ERC20_HELPER:"0x0c76F95a2952DC171B26b152f2b30cA8968e79D5",ROUTE_V2_DATA_FETCH:"0xC7EaBEc77Be175432DC20c0056Cce4c2C78B84F3",ROUTE_V1_DATA_FETCH:"0x187210CE04F5B3179F0e483FCf292c34BA7568Dd",CALLEE_HELPER:"0x94B66F3156353a12A6004d098A16F2fCfF9E8348",DODO_PROXY:"0xfcd8EF54A4dA96dE6B2DDF67C6265C7405a3A9c6",DODO_DSP_PROXY:"0x928e9762B5223d5A2ac1F5b13E8A61907aCaa9Bd",DODO_DPP_PROXY:"0x38886EDE1Fc92886F9a11C37a1f5e75474858eaa",DODO_MINEV3_PROXY:"0x1dFd36964e21a2eb633991f0B95b4241c20e1db3"},[exports.ChainId.PLUME]:{MULTI_CALL:e.plume.MulticallWithValid,DODO_APPROVE:e.plume.DODOApprove,ERC20_HELPER:e.plume.ERC20Helper,ROUTE_V2_DATA_FETCH:e.plume.DODOV2RouteHelper,ROUTE_V1_DATA_FETCH:e.plume.DODOV1PmmHelper,CALLEE_HELPER:e.plume.DODOCalleeHelper,DODO_PROXY:e.plume.DODOV2Proxy02,DODO_DSP_PROXY:e.plume.DODODspProxyWithoutGSP,DODO_DPP_PROXY:e.plume.DODODppProxy,DODO_MINEV3_PROXY:e.plume.DODOMineV3Proxy},[exports.ChainId.NEOX]:{MULTI_CALL:e.neox.MulticallWithValid,DODO_APPROVE:e.neox.DODOApprove,ERC20_HELPER:e.neox.ERC20Helper,ROUTE_V2_DATA_FETCH:e.neox.DODOV2RouteHelper,ROUTE_V1_DATA_FETCH:e.neox.DODOV1PmmHelper,CALLEE_HELPER:e.neox.DODOCalleeHelper,DODO_PROXY:e.neox.DODOV2Proxy02,DODO_DSP_PROXY:e.neox.DODODspProxyWithoutGSP,DODO_DPP_PROXY:e.neox.DODODppProxy,DODO_MINEV3_PROXY:e.neox.DODOMineV3Proxy}},y={[exports.ChainId.MAINNET]:"ethereum",[exports.ChainId.GOERLI]:"goerli",[exports.ChainId.OPTIMISM]:"optimism",[exports.ChainId.CONFLUX]:"cfx",[exports.ChainId.BSC]:"bsc",[exports.ChainId.OKCHAIN]:"okex-chain",[exports.ChainId.POLYGON]:"polygon",[exports.ChainId.ARBITRUM_ONE]:"arbitrum",[exports.ChainId.AURORA]:"aurora",[exports.ChainId.AVALANCHE]:"avalanche",[exports.ChainId.BASE]:"base",[exports.ChainId.LINEA]:"linea",[exports.ChainId.SCROLL]:"scr",[exports.ChainId.MANTA]:"manta",[exports.ChainId.MANTLE]:"mantle",[exports.ChainId.SEPOLIA]:"sepolia",[exports.ChainId.DODO_CHAIN_TESTNET]:"dodochain-testnet",[exports.ChainId.TAIKO]:"taiko",[exports.ChainId.PLUME]:"plume",[exports.ChainId.NEOX]:"neox"};function A(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))}let v=!1,b=!1;const E={debug:1,default:2,info:2,warning:3,error:4,off:5};let w=E.default,P=null;const I=function(){try{const e=[];if(["NFD","NFC","NFKD","NFKC"].forEach((t=>{try{if("test"!=="test".normalize(t))throw new Error("bad normalize")}catch(r){e.push(t)}})),e.length)throw new Error("missing "+e.join(", "));if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769))throw new Error("broken implementation")}catch(e){return e.message}return null}();var T,B;!function(e){e.DEBUG="DEBUG",e.INFO="INFO",e.WARNING="WARNING",e.ERROR="ERROR",e.OFF="OFF"}(T||(T={})),function(e){e.UNKNOWN_ERROR="UNKNOWN_ERROR",e.NOT_IMPLEMENTED="NOT_IMPLEMENTED",e.UNSUPPORTED_OPERATION="UNSUPPORTED_OPERATION",e.NETWORK_ERROR="NETWORK_ERROR",e.SERVER_ERROR="SERVER_ERROR",e.TIMEOUT="TIMEOUT",e.BUFFER_OVERRUN="BUFFER_OVERRUN",e.NUMERIC_FAULT="NUMERIC_FAULT",e.MISSING_NEW="MISSING_NEW",e.INVALID_ARGUMENT="INVALID_ARGUMENT",e.MISSING_ARGUMENT="MISSING_ARGUMENT",e.UNEXPECTED_ARGUMENT="UNEXPECTED_ARGUMENT",e.CALL_EXCEPTION="CALL_EXCEPTION",e.INSUFFICIENT_FUNDS="INSUFFICIENT_FUNDS",e.NONCE_EXPIRED="NONCE_EXPIRED",e.REPLACEMENT_UNDERPRICED="REPLACEMENT_UNDERPRICED",e.UNPREDICTABLE_GAS_LIMIT="UNPREDICTABLE_GAS_LIMIT",e.TRANSACTION_REPLACED="TRANSACTION_REPLACED",e.ACTION_REJECTED="ACTION_REJECTED"}(B||(B={}));const _="0123456789abcdef";class O{constructor(e){Object.defineProperty(this,"version",{enumerable:!0,value:e,writable:!1})}_log(e,t){const r=e.toLowerCase();null==E[r]&&this.throwArgumentError("invalid log level name","logLevel",e),w>E[r]||console.log.apply(console,t)}debug(...e){this._log(O.levels.DEBUG,e)}info(...e){this._log(O.levels.INFO,e)}warn(...e){this._log(O.levels.WARNING,e)}makeError(e,t,r){if(b)return this.makeError("censored error",t,{});t||(t=O.errors.UNKNOWN_ERROR),r||(r={});const n=[];Object.keys(r).forEach((e=>{const t=r[e];try{if(t instanceof Uint8Array){let r="";for(let e=0;e<t.length;e++)r+=_[t[e]>>4],r+=_[15&t[e]];n.push(e+"=Uint8Array(0x"+r+")")}else n.push(e+"="+JSON.stringify(t))}catch(t){n.push(e+"="+JSON.stringify(r[e].toString()))}})),n.push(`code=${t}`),n.push(`version=${this.version}`);const i=e;let s="";switch(t){case B.NUMERIC_FAULT:{s="NUMERIC_FAULT";const t=e;switch(t){case"overflow":case"underflow":case"division-by-zero":s+="-"+t;break;case"negative-power":case"negative-width":s+="-unsupported";break;case"unbound-bitwise-result":s+="-unbound-result"}break}case B.CALL_EXCEPTION:case B.INSUFFICIENT_FUNDS:case B.MISSING_NEW:case B.NONCE_EXPIRED:case B.REPLACEMENT_UNDERPRICED:case B.TRANSACTION_REPLACED:case B.UNPREDICTABLE_GAS_LIMIT:s=t}s&&(e+=" [ See: https://links.ethers.org/v5-errors-"+s+" ]"),n.length&&(e+=" ("+n.join(", ")+")");const o=new Error(e);return o.reason=i,o.code=t,Object.keys(r).forEach((function(e){o[e]=r[e]})),o}throwError(e,t,r){throw this.makeError(e,t,r)}throwArgumentError(e,t,r){return this.throwError(e,O.errors.INVALID_ARGUMENT,{argument:t,value:r})}assert(e,t,r,n){e||this.throwError(t,r,n)}assertArgument(e,t,r,n){e||this.throwArgumentError(t,r,n)}checkNormalize(e){I&&this.throwError("platform missing String.prototype.normalize",O.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:I})}checkSafeUint53(e,t){"number"==typeof e&&(null==t&&(t="value not safe"),(e<0||e>=9007199254740991)&&this.throwError(t,O.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:e}),e%1&&this.throwError(t,O.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:e}))}checkArgumentCount(e,t,r){r=r?": "+r:"",e<t&&this.throwError("missing argument"+r,O.errors.MISSING_ARGUMENT,{count:e,expectedCount:t}),e>t&&this.throwError("too many arguments"+r,O.errors.UNEXPECTED_ARGUMENT,{count:e,expectedCount:t})}checkNew(e,t){e!==Object&&null!=e||this.throwError("missing new",O.errors.MISSING_NEW,{name:t.name})}checkAbstract(e,t){e===t?this.throwError("cannot instantiate abstract class "+JSON.stringify(t.name)+" directly; use a sub-class",O.errors.UNSUPPORTED_OPERATION,{name:e.name,operation:"new"}):e!==Object&&null!=e||this.throwError("missing new",O.errors.MISSING_NEW,{name:t.name})}static globalLogger(){return P||(P=new O("logger/5.7.0")),P}static setCensorship(e,t){if(!e&&t&&this.globalLogger().throwError("cannot permanently disable censorship",O.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"}),v){if(!e)return;this.globalLogger().throwError("error censorship permanent",O.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}b=!!e,v=!!t}static setLogLevel(e){const t=E[e.toLowerCase()];null!=t?w=t:O.globalLogger().warn("invalid log level - "+e)}static from(e){return new O(e)}}O.errors=B,O.levels=T;const D=new O("bytes/5.7.0");function C(e){return!!e.toHexString}function N(e){return e.slice||(e.slice=function(){const t=Array.prototype.slice.call(arguments);return N(new Uint8Array(Array.prototype.slice.apply(e,t)))}),e}function k(e){return q(e)&&!(e.length%2)||R(e)}function x(e){return"number"==typeof e&&e==e&&e%1==0}function R(e){if(null==e)return!1;if(e.constructor===Uint8Array)return!0;if("string"==typeof e)return!1;if(!x(e.length)||e.length<0)return!1;for(let t=0;t<e.length;t++){const r=e[t];if(!x(r)||r<0||r>=256)return!1}return!0}function S(e,t){if(t||(t={}),"number"==typeof e){D.checkSafeUint53(e,"invalid arrayify value");const t=[];for(;e;)t.unshift(255&e),e=parseInt(String(e/256));return 0===t.length&&t.push(0),N(new Uint8Array(t))}if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),C(e)&&(e=e.toHexString()),q(e)){let r=e.substring(2);r.length%2&&("left"===t.hexPad?r="0"+r:"right"===t.hexPad?r+="0":D.throwArgumentError("hex data is odd-length","value",e));const n=[];for(let e=0;e<r.length;e+=2)n.push(parseInt(r.substring(e,e+2),16));return N(new Uint8Array(n))}return R(e)?N(new Uint8Array(e)):D.throwArgumentError("invalid arrayify value","value",e)}function F(e){const t=e.map((e=>S(e))),r=t.reduce(((e,t)=>e+t.length),0),n=new Uint8Array(r);return t.reduce(((e,t)=>(n.set(t,e),e+t.length)),0),N(n)}function L(e){let t=S(e);if(0===t.length)return t;let r=0;for(;r<t.length&&0===t[r];)r++;return r&&(t=t.slice(r)),t}function q(e,t){return!("string"!=typeof e||!e.match(/^0x[0-9A-Fa-f]*$/))&&(!t||e.length===2+2*t)}const M="0123456789abcdef";function U(e,t){if(t||(t={}),"number"==typeof e){D.checkSafeUint53(e,"invalid hexlify value");let t="";for(;e;)t=M[15&e]+t,e=Math.floor(e/16);return t.length?(t.length%2&&(t="0"+t),"0x"+t):"0x00"}if("bigint"==typeof e)return(e=e.toString(16)).length%2?"0x0"+e:"0x"+e;if(t.allowMissingPrefix&&"string"==typeof e&&"0x"!==e.substring(0,2)&&(e="0x"+e),C(e))return e.toHexString();if(q(e))return e.length%2&&("left"===t.hexPad?e="0x0"+e.substring(2):"right"===t.hexPad?e+="0":D.throwArgumentError("hex data is odd-length","value",e)),e.toLowerCase();if(R(e)){let t="0x";for(let r=0;r<e.length;r++){let n=e[r];t+=M[(240&n)>>4]+M[15&n]}return t}return D.throwArgumentError("invalid hexlify value","value",e)}function V(e){if("string"!=typeof e)e=U(e);else if(!q(e)||e.length%2)return null;return(e.length-2)/2}function j(e,t,r){return"string"!=typeof e?e=U(e):(!q(e)||e.length%2)&&D.throwArgumentError("invalid hexData","value",e),t=2+2*t,null!=r?"0x"+e.substring(t,2+2*r):"0x"+e.substring(t)}function Q(e){let t="0x";return e.forEach((e=>{t+=U(e).substring(2)})),t}function H(e){const t=function(e){"string"!=typeof e&&(e=U(e));q(e)||D.throwArgumentError("invalid hex string","value",e);e=e.substring(2);let t=0;for(;t<e.length&&"0"===e[t];)t++;return"0x"+e.substring(t)}(U(e,{hexPad:"left"}));return"0x"===t?"0x0":t}function G(e,t){for("string"!=typeof e?e=U(e):q(e)||D.throwArgumentError("invalid hex string","value",e),e.length>2*t+2&&D.throwArgumentError("value out of range","value",arguments[1]);e.length<2*t+2;)e="0x0"+e.substring(2);return e}function Y(e){const t={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0,yParityAndS:"0x",compact:"0x"};if(k(e)){let r=S(e);64===r.length?(t.v=27+(r[32]>>7),r[32]&=127,t.r=U(r.slice(0,32)),t.s=U(r.slice(32,64))):65===r.length?(t.r=U(r.slice(0,32)),t.s=U(r.slice(32,64)),t.v=r[64]):D.throwArgumentError("invalid signature string","signature",e),t.v<27&&(0===t.v||1===t.v?t.v+=27:D.throwArgumentError("signature invalid v byte","signature",e)),t.recoveryParam=1-t.v%2,t.recoveryParam&&(r[32]|=128),t._vs=U(r.slice(32,64))}else{if(t.r=e.r,t.s=e.s,t.v=e.v,t.recoveryParam=e.recoveryParam,t._vs=e._vs,null!=t._vs){const r=function(e,t){(e=S(e)).length>t&&D.throwArgumentError("value out of range","value",arguments[0]);const r=new Uint8Array(t);return r.set(e,t-e.length),N(r)}(S(t._vs),32);t._vs=U(r);const n=r[0]>=128?1:0;null==t.recoveryParam?t.recoveryParam=n:t.recoveryParam!==n&&D.throwArgumentError("signature recoveryParam mismatch _vs","signature",e),r[0]&=127;const i=U(r);null==t.s?t.s=i:t.s!==i&&D.throwArgumentError("signature v mismatch _vs","signature",e)}if(null==t.recoveryParam)null==t.v?D.throwArgumentError("signature missing v and recoveryParam","signature",e):0===t.v||1===t.v?t.recoveryParam=t.v:t.recoveryParam=1-t.v%2;else if(null==t.v)t.v=27+t.recoveryParam;else{const r=0===t.v||1===t.v?t.v:1-t.v%2;t.recoveryParam!==r&&D.throwArgumentError("signature recoveryParam mismatch v","signature",e)}null!=t.r&&q(t.r)?t.r=G(t.r,32):D.throwArgumentError("signature missing or invalid r","signature",e),null!=t.s&&q(t.s)?t.s=G(t.s,32):D.throwArgumentError("signature missing or invalid s","signature",e);const r=S(t.s);r[0]>=128&&D.throwArgumentError("signature s out of range","signature",e),t.recoveryParam&&(r[0]|=128);const n=U(r);t._vs&&(q(t._vs)||D.throwArgumentError("signature invalid _vs","signature",e),t._vs=G(t._vs,32)),null==t._vs?t._vs=n:t._vs!==n&&D.throwArgumentError("signature _vs mismatch v and s","signature",e)}return t.yParityAndS=t._vs,t.compact=t.r+t.yParityAndS.substring(2),t}const $="bignumber/5.7.0";var K=r.BN;const z=new O($),X={},J=9007199254740991;let W=!1;class Z{constructor(e,t){e!==X&&z.throwError("cannot call constructor directly; use BigNumber.from",O.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"}),this._hex=t,this._isBigNumber=!0,Object.freeze(this)}fromTwos(e){return te(re(this).fromTwos(e))}toTwos(e){return te(re(this).toTwos(e))}abs(){return"-"===this._hex[0]?Z.from(this._hex.substring(1)):this}add(e){return te(re(this).add(re(e)))}sub(e){return te(re(this).sub(re(e)))}div(e){return Z.from(e).isZero()&&ne("division-by-zero","div"),te(re(this).div(re(e)))}mul(e){return te(re(this).mul(re(e)))}mod(e){const t=re(e);return t.isNeg()&&ne("division-by-zero","mod"),te(re(this).umod(t))}pow(e){const t=re(e);return t.isNeg()&&ne("negative-power","pow"),te(re(this).pow(t))}and(e){const t=re(e);return(this.isNegative()||t.isNeg())&&ne("unbound-bitwise-result","and"),te(re(this).and(t))}or(e){const t=re(e);return(this.isNegative()||t.isNeg())&&ne("unbound-bitwise-result","or"),te(re(this).or(t))}xor(e){const t=re(e);return(this.isNegative()||t.isNeg())&&ne("unbound-bitwise-result","xor"),te(re(this).xor(t))}mask(e){return(this.isNegative()||e<0)&&ne("negative-width","mask"),te(re(this).maskn(e))}shl(e){return(this.isNegative()||e<0)&&ne("negative-width","shl"),te(re(this).shln(e))}shr(e){return(this.isNegative()||e<0)&&ne("negative-width","shr"),te(re(this).shrn(e))}eq(e){return re(this).eq(re(e))}lt(e){return re(this).lt(re(e))}lte(e){return re(this).lte(re(e))}gt(e){return re(this).gt(re(e))}gte(e){return re(this).gte(re(e))}isNegative(){return"-"===this._hex[0]}isZero(){return re(this).isZero()}toNumber(){try{return re(this).toNumber()}catch(e){ne("overflow","toNumber",this.toString())}return null}toBigInt(){try{return BigInt(this.toString())}catch(e){}return z.throwError("this platform does not support BigInt",O.errors.UNSUPPORTED_OPERATION,{value:this.toString()})}toString(){return arguments.length>0&&(10===arguments[0]?W||(W=!0,z.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")):16===arguments[0]?z.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",O.errors.UNEXPECTED_ARGUMENT,{}):z.throwError("BigNumber.toString does not accept parameters",O.errors.UNEXPECTED_ARGUMENT,{})),re(this).toString(10)}toHexString(){return this._hex}toJSON(e){return{type:"BigNumber",hex:this.toHexString()}}static from(e){if(e instanceof Z)return e;if("string"==typeof e)return e.match(/^-?0x[0-9a-f]+$/i)?new Z(X,ee(e)):e.match(/^-?[0-9]+$/)?new Z(X,ee(new K(e))):z.throwArgumentError("invalid BigNumber string","value",e);if("number"==typeof e)return e%1&&ne("underflow","BigNumber.from",e),(e>=J||e<=-J)&&ne("overflow","BigNumber.from",e),Z.from(String(e));const t=e;if("bigint"==typeof t)return Z.from(t.toString());if(R(t))return Z.from(U(t));if(t)if(t.toHexString){const e=t.toHexString();if("string"==typeof e)return Z.from(e)}else{let e=t._hex;if(null==e&&"BigNumber"===t.type&&(e=t.hex),"string"==typeof e&&(q(e)||"-"===e[0]&&q(e.substring(1))))return Z.from(e)}return z.throwArgumentError("invalid BigNumber value","value",e)}static isBigNumber(e){return!(!e||!e._isBigNumber)}}function ee(e){if("string"!=typeof e)return ee(e.toString(16));if("-"===e[0])return"-"===(e=e.substring(1))[0]&&z.throwArgumentError("invalid hex","value",e),"0x00"===(e=ee(e))?e:"-"+e;if("0x"!==e.substring(0,2)&&(e="0x"+e),"0x"===e)return"0x00";for(e.length%2&&(e="0x0"+e.substring(2));e.length>4&&"0x00"===e.substring(0,4);)e="0x"+e.substring(4);return e}function te(e){return Z.from(ee(e))}function re(e){const t=Z.from(e).toHexString();return"-"===t[0]?new K("-"+t.substring(3),16):new K(t.substring(2),16)}function ne(e,t,r){const n={fault:e,operation:t};return null!=r&&(n.value=r),z.throwError(e,O.errors.NUMERIC_FAULT,n)}const ie=new O($),se={},oe=Z.from(0),ae=Z.from(-1);function ce(e,t,r,n){const i={fault:t,operation:r};return void 0!==n&&(i.value=n),ie.throwError(e,O.errors.NUMERIC_FAULT,i)}let le="0";for(;le.length<256;)le+=le;function ue(e){if("number"!=typeof e)try{e=Z.from(e).toNumber()}catch(e){}return"number"==typeof e&&e>=0&&e<=256&&!(e%1)?"1"+le.substring(0,e):ie.throwArgumentError("invalid decimal size","decimals",e)}function de(e,t){null==t&&(t=0);const r=ue(t),n=(e=Z.from(e)).lt(oe);n&&(e=e.mul(ae));let i=e.mod(r).toString();for(;i.length<r.length-1;)i="0"+i;i=i.match(/^([0-9]*[1-9]|0)(0*)/)[1];const s=e.div(r).toString();return e=1===r.length?s:s+"."+i,n&&(e="-"+e),e}function he(e,t){null==t&&(t=0);const r=ue(t);"string"==typeof e&&e.match(/^-?[0-9.]+$/)||ie.throwArgumentError("invalid decimal value","value",e);const n="-"===e.substring(0,1);n&&(e=e.substring(1)),"."===e&&ie.throwArgumentError("missing value","value",e);const i=e.split(".");i.length>2&&ie.throwArgumentError("too many decimal points","value",e);let s=i[0],o=i[1];for(s||(s="0"),o||(o="0");"0"===o[o.length-1];)o=o.substring(0,o.length-1);for(o.length>r.length-1&&ce("fractional component exceeds decimals","underflow","parseFixed"),""===o&&(o="0");o.length<r.length-1;)o+="0";const a=Z.from(s),c=Z.from(o);let l=a.mul(r).add(c);return n&&(l=l.mul(ae)),l}class fe{constructor(e,t,r,n){e!==se&&ie.throwError("cannot use FixedFormat constructor; use FixedFormat.from",O.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.signed=t,this.width=r,this.decimals=n,this.name=(t?"":"u")+"fixed"+String(r)+"x"+String(n),this._multiplier=ue(n),Object.freeze(this)}static from(e){if(e instanceof fe)return e;"number"==typeof e&&(e=`fixed128x${e}`);let t=!0,r=128,n=18;if("string"==typeof e)if("fixed"===e);else if("ufixed"===e)t=!1;else{const i=e.match(/^(u?)fixed([0-9]+)x([0-9]+)$/);i||ie.throwArgumentError("invalid fixed format","format",e),t="u"!==i[1],r=parseInt(i[2]),n=parseInt(i[3])}else if(e){const i=(t,r,n)=>null==e[t]?n:(typeof e[t]!==r&&ie.throwArgumentError("invalid fixed format ("+t+" not "+r+")","format."+t,e[t]),e[t]);t=i("signed","boolean",t),r=i("width","number",r),n=i("decimals","number",n)}return r%8&&ie.throwArgumentError("invalid fixed format width (not byte aligned)","format.width",r),n>80&&ie.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",n),new fe(se,t,r,n)}}class pe{constructor(e,t,r,n){e!==se&&ie.throwError("cannot use FixedNumber constructor; use FixedNumber.from",O.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"}),this.format=n,this._hex=t,this._value=r,this._isFixedNumber=!0,Object.freeze(this)}_checkFormat(e){this.format.name!==e.format.name&&ie.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",e)}addUnsafe(e){this._checkFormat(e);const t=he(this._value,this.format.decimals),r=he(e._value,e.format.decimals);return pe.fromValue(t.add(r),this.format.decimals,this.format)}subUnsafe(e){this._checkFormat(e);const t=he(this._value,this.format.decimals),r=he(e._value,e.format.decimals);return pe.fromValue(t.sub(r),this.format.decimals,this.format)}mulUnsafe(e){this._checkFormat(e);const t=he(this._value,this.format.decimals),r=he(e._value,e.format.decimals);return pe.fromValue(t.mul(r).div(this.format._multiplier),this.format.decimals,this.format)}divUnsafe(e){this._checkFormat(e);const t=he(this._value,this.format.decimals),r=he(e._value,e.format.decimals);return pe.fromValue(t.mul(this.format._multiplier).div(r),this.format.decimals,this.format)}floor(){const e=this.toString().split(".");1===e.length&&e.push("0");let t=pe.from(e[0],this.format);const r=!e[1].match(/^(0*)$/);return this.isNegative()&&r&&(t=t.subUnsafe(me.toFormat(t.format))),t}ceiling(){const e=this.toString().split(".");1===e.length&&e.push("0");let t=pe.from(e[0],this.format);const r=!e[1].match(/^(0*)$/);return!this.isNegative()&&r&&(t=t.addUnsafe(me.toFormat(t.format))),t}round(e){null==e&&(e=0);const t=this.toString().split(".");if(1===t.length&&t.push("0"),(e<0||e>80||e%1)&&ie.throwArgumentError("invalid decimal count","decimals",e),t[1].length<=e)return this;const r=pe.from("1"+le.substring(0,e),this.format),n=ge.toFormat(this.format);return this.mulUnsafe(r).addUnsafe(n).floor().divUnsafe(r)}isZero(){return"0.0"===this._value||"0"===this._value}isNegative(){return"-"===this._value[0]}toString(){return this._value}toHexString(e){if(null==e)return this._hex;e%8&&ie.throwArgumentError("invalid byte width","width",e);return G(Z.from(this._hex).fromTwos(this.format.width).toTwos(e).toHexString(),e/8)}toUnsafeFloat(){return parseFloat(this.toString())}toFormat(e){return pe.fromString(this._value,e)}static fromValue(e,t,r){return null!=r||null==t||function(e){return null!=e&&(Z.isBigNumber(e)||"number"==typeof e&&e%1==0||"string"==typeof e&&!!e.match(/^-?[0-9]+$/)||q(e)||"bigint"==typeof e||R(e))}(t)||(r=t,t=null),null==t&&(t=0),null==r&&(r="fixed"),pe.fromString(de(e,t),fe.from(r))}static fromString(e,t){null==t&&(t="fixed");const r=fe.from(t),n=he(e,r.decimals);!r.signed&&n.lt(oe)&&ce("unsigned value cannot be negative","overflow","value",e);let i=null;r.signed?i=n.toTwos(r.width).toHexString():(i=n.toHexString(),i=G(i,r.width/8));const s=de(n,r.decimals);return new pe(se,i,s,r)}static fromBytes(e,t){null==t&&(t="fixed");const r=fe.from(t);if(S(e).length>r.width/8)throw new Error("overflow");let n=Z.from(e);r.signed&&(n=n.fromTwos(r.width));const i=n.toTwos((r.signed?0:1)+r.width).toHexString(),s=de(n,r.decimals);return new pe(se,i,s,r)}static from(e,t){if("string"==typeof e)return pe.fromString(e,t);if(R(e))return pe.fromBytes(e,t);try{return pe.fromValue(e,0,t)}catch(e){if(e.code!==O.errors.INVALID_ARGUMENT)throw e}return ie.throwArgumentError("invalid FixedNumber value","value",e)}static isFixedNumber(e){return!(!e||!e._isFixedNumber)}}const me=pe.from(1),ge=pe.from("0.5");var ye=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const Ae=new O("properties/5.7.0");function ve(e,t,r){Object.defineProperty(e,t,{enumerable:!0,value:r,writable:!1})}function be(e,t){for(let r=0;r<32;r++){if(e[t])return e[t];if(!e.prototype||"object"!=typeof e.prototype)break;e=Object.getPrototypeOf(e.prototype).constructor}return null}function Ee(e){return ye(this,void 0,void 0,(function*(){const t=Object.keys(e).map((t=>{const r=e[t];return Promise.resolve(r).then((e=>({key:t,value:e})))}));return(yield Promise.all(t)).reduce(((e,t)=>(e[t.key]=t.value,e)),{})}))}function we(e){const t={};for(const r in e)t[r]=e[r];return t}const Pe={bigint:!0,boolean:!0,function:!0,number:!0,string:!0};function Ie(e){if(null==e||Pe[typeof e])return!0;if(Array.isArray(e)||"object"==typeof e){if(!Object.isFrozen(e))return!1;const t=Object.keys(e);for(let r=0;r<t.length;r++){let n=null;try{n=e[t[r]]}catch(e){continue}if(!Ie(n))return!1}return!0}return Ae.throwArgumentError("Cannot deepCopy "+typeof e,"object",e)}function Te(e){if(Ie(e))return e;if(Array.isArray(e))return Object.freeze(e.map((e=>Be(e))));if("object"==typeof e){const t={};for(const r in e){const n=e[r];void 0!==n&&ve(t,r,Be(n))}return t}return Ae.throwArgumentError("Cannot deepCopy "+typeof e,"object",e)}function Be(e){return Te(e)}class _e{constructor(e){for(const t in e)this[t]=Be(e[t])}}var Oe=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const De=new O("abstract-provider/5.7.0");class Ce extends _e{static isForkEvent(e){return!(!e||!e._isForkEvent)}}class Ne{constructor(){De.checkAbstract(new.target,Ne),ve(this,"_isProvider",!0)}getFeeData(){return Oe(this,void 0,void 0,(function*(){const{block:e,gasPrice:t}=yield Ee({block:this.getBlock("latest"),gasPrice:this.getGasPrice().catch((e=>null))});let r=null,n=null,i=null;return e&&e.baseFeePerGas&&(r=e.baseFeePerGas,i=Z.from("1500000000"),n=e.baseFeePerGas.mul(2).add(i)),{lastBaseFeePerGas:r,maxFeePerGas:n,maxPriorityFeePerGas:i,gasPrice:t}}))}addListener(e,t){return this.on(e,t)}removeListener(e,t){return this.off(e,t)}static isProvider(e){return!(!e||!e._isProvider)}}const ke=new O("networks/5.7.1");function xe(e){const t=function(t,r){null==r&&(r={});const n=[];if(t.InfuraProvider&&"-"!==r.infura)try{n.push(new t.InfuraProvider(e,r.infura))}catch(e){}if(t.EtherscanProvider&&"-"!==r.etherscan)try{n.push(new t.EtherscanProvider(e,r.etherscan))}catch(e){}if(t.AlchemyProvider&&"-"!==r.alchemy)try{n.push(new t.AlchemyProvider(e,r.alchemy))}catch(e){}if(t.PocketProvider&&"-"!==r.pocket){const i=["goerli","ropsten","rinkeby","sepolia"];try{const s=new t.PocketProvider(e,r.pocket);s.network&&-1===i.indexOf(s.network.name)&&n.push(s)}catch(e){}}if(t.CloudflareProvider&&"-"!==r.cloudflare)try{n.push(new t.CloudflareProvider(e))}catch(e){}if(t.AnkrProvider&&"-"!==r.ankr)try{const i=["ropsten"],s=new t.AnkrProvider(e,r.ankr);s.network&&-1===i.indexOf(s.network.name)&&n.push(s)}catch(e){}if(0===n.length)return null;if(t.FallbackProvider){let i=1;return null!=r.quorum?i=r.quorum:"homestead"===e&&(i=2),new t.FallbackProvider(n,i)}return n[0]};return t.renetwork=function(e){return xe(e)},t}function Re(e,t){const r=function(r,n){return r.JsonRpcProvider?new r.JsonRpcProvider(e,t):null};return r.renetwork=function(t){return Re(e,t)},r}const Se={chainId:1,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"homestead",_defaultProvider:xe("homestead")},Fe={chainId:3,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"ropsten",_defaultProvider:xe("ropsten")},Le={chainId:63,name:"classicMordor",_defaultProvider:Re("https://www.ethercluster.com/mordor","classicMordor")},qe={unspecified:{chainId:0,name:"unspecified"},homestead:Se,mainnet:Se,morden:{chainId:2,name:"morden"},ropsten:Fe,testnet:Fe,rinkeby:{chainId:4,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"rinkeby",_defaultProvider:xe("rinkeby")},kovan:{chainId:42,name:"kovan",_defaultProvider:xe("kovan")},goerli:{chainId:5,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"goerli",_defaultProvider:xe("goerli")},kintsugi:{chainId:1337702,name:"kintsugi"},sepolia:{chainId:11155111,name:"sepolia",_defaultProvider:xe("sepolia")},classic:{chainId:61,name:"classic",_defaultProvider:Re("https://www.ethercluster.com/etc","classic")},classicMorden:{chainId:62,name:"classicMorden"},classicMordor:Le,classicTestnet:Le,classicKotti:{chainId:6,name:"classicKotti",_defaultProvider:Re("https://www.ethercluster.com/kotti","classicKotti")},xdai:{chainId:100,name:"xdai"},matic:{chainId:137,name:"matic",_defaultProvider:xe("matic")},maticmum:{chainId:80001,name:"maticmum"},optimism:{chainId:10,name:"optimism",_defaultProvider:xe("optimism")},"optimism-kovan":{chainId:69,name:"optimism-kovan"},"optimism-goerli":{chainId:420,name:"optimism-goerli"},arbitrum:{chainId:42161,name:"arbitrum"},"arbitrum-rinkeby":{chainId:421611,name:"arbitrum-rinkeby"},"arbitrum-goerli":{chainId:421613,name:"arbitrum-goerli"},bnb:{chainId:56,name:"bnb"},bnbt:{chainId:97,name:"bnbt"}};function Me(e){e=atob(e);const t=[];for(let r=0;r<e.length;r++)t.push(e.charCodeAt(r));return S(t)}function Ue(e){e=S(e);let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}class Ve{constructor(e){ve(this,"alphabet",e),ve(this,"base",e.length),ve(this,"_alphabetMap",{}),ve(this,"_leader",e.charAt(0));for(let t=0;t<e.length;t++)this._alphabetMap[e.charAt(t)]=t}encode(e){let t=S(e);if(0===t.length)return"";let r=[0];for(let e=0;e<t.length;++e){let n=t[e];for(let e=0;e<r.length;++e)n+=r[e]<<8,r[e]=n%this.base,n=n/this.base|0;for(;n>0;)r.push(n%this.base),n=n/this.base|0}let n="";for(let e=0;0===t[e]&&e<t.length-1;++e)n+=this._leader;for(let e=r.length-1;e>=0;--e)n+=this.alphabet[r[e]];return n}decode(e){if("string"!=typeof e)throw new TypeError("Expected String");let t=[];if(0===e.length)return new Uint8Array(t);t.push(0);for(let r=0;r<e.length;r++){let n=this._alphabetMap[e[r]];if(void 0===n)throw new Error("Non-base"+this.base+" character");let i=n;for(let e=0;e<t.length;++e)i+=t[e]*this.base,t[e]=255&i,i>>=8;for(;i>0;)t.push(255&i),i>>=8}for(let r=0;e[r]===this._leader&&r<e.length-1;++r)t.push(0);return S(new Uint8Array(t.reverse()))}}new Ve("abcdefghijklmnopqrstuvwxyz234567");const je=new Ve("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),Qe=Z.from(-1),He=Z.from(0),Ge=Z.from(1),Ye=Z.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function $e(e){return"0x"+t.keccak_256(S(e))}const Ke=new O("strings/5.7.0");var ze,Xe;function Je(e,t,r,n,i){if(e===Xe.BAD_PREFIX||e===Xe.UNEXPECTED_CONTINUE){let e=0;for(let n=t+1;n<r.length&&r[n]>>6==2;n++)e++;return e}return e===Xe.OVERRUN?r.length-t-1:0}!function(e){e.current="",e.NFC="NFC",e.NFD="NFD",e.NFKC="NFKC",e.NFKD="NFKD"}(ze||(ze={})),function(e){e.UNEXPECTED_CONTINUE="unexpected continuation byte",e.BAD_PREFIX="bad codepoint prefix",e.OVERRUN="string overrun",e.MISSING_CONTINUE="missing continuation byte",e.OUT_OF_RANGE="out of UTF-8 range",e.UTF16_SURROGATE="UTF-16 surrogate",e.OVERLONG="overlong representation"}(Xe||(Xe={}));const We=Object.freeze({error:function(e,t,r,n,i){return Ke.throwArgumentError(`invalid codepoint at offset ${t}; ${e}`,"bytes",r)},ignore:Je,replace:function(e,t,r,n,i){return e===Xe.OVERLONG?(n.push(i),0):(n.push(65533),Je(e,t,r))}});function Ze(e,t){null==t&&(t=We.error),e=S(e);const r=[];let n=0;for(;n<e.length;){const i=e[n++];if(!(i>>7)){r.push(i);continue}let s=null,o=null;if(192==(224&i))s=1,o=127;else if(224==(240&i))s=2,o=2047;else{if(240!=(248&i)){n+=t(128==(192&i)?Xe.UNEXPECTED_CONTINUE:Xe.BAD_PREFIX,n-1,e,r);continue}s=3,o=65535}if(n-1+s>=e.length){n+=t(Xe.OVERRUN,n-1,e,r);continue}let a=i&(1<<8-s-1)-1;for(let i=0;i<s;i++){let i=e[n];if(128!=(192&i)){n+=t(Xe.MISSING_CONTINUE,n,e,r),a=null;break}a=a<<6|63&i,n++}null!==a&&(a>1114111?n+=t(Xe.OUT_OF_RANGE,n-1-s,e,r,a):a>=55296&&a<=57343?n+=t(Xe.UTF16_SURROGATE,n-1-s,e,r,a):a<=o?n+=t(Xe.OVERLONG,n-1-s,e,r,a):r.push(a))}return r}function et(e,t=ze.current){t!=ze.current&&(Ke.checkNormalize(),e=e.normalize(t));let r=[];for(let t=0;t<e.length;t++){const n=e.charCodeAt(t);if(n<128)r.push(n);else if(n<2048)r.push(n>>6|192),r.push(63&n|128);else if(55296==(64512&n)){t++;const i=e.charCodeAt(t);if(t>=e.length||56320!=(64512&i))throw new Error("invalid utf-8 string");const s=65536+((1023&n)<<10)+(1023&i);r.push(s>>18|240),r.push(s>>12&63|128),r.push(s>>6&63|128),r.push(63&s|128)}else r.push(n>>12|224),r.push(n>>6&63|128),r.push(63&n|128)}return S(r)}function tt(e,t){return Ze(e,t).map((e=>e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10&1023),56320+(1023&e))))).join("")}function rt(e){return $e(et(e))}const nt="hash/5.7.0";function it(e,t){null==t&&(t=1);const r=[],n=r.forEach,i=function(e,t){n.call(e,(function(e){t>0&&Array.isArray(e)?i(e,t-1):r.push(e)}))};return i(e,t),r}function st(e){return function(e){let t=0;return()=>e[t++]}(function(e){let t=0;function r(){return e[t++]<<8|e[t++]}let n=r(),i=1,s=[0,1];for(let e=1;e<n;e++)s.push(i+=r());let o=r(),a=t;t+=o;let c=0,l=0;function u(){return 0==c&&(l=l<<8|e[t++],c=8),l>>--c&1}const d=Math.pow(2,31),h=d>>>1,f=h>>1,p=d-1;let m=0;for(let e=0;e<31;e++)m=m<<1|u();let g=[],y=0,A=d;for(;;){let e=Math.floor(((m-y+1)*i-1)/A),t=0,r=n;for(;r-t>1;){let n=t+r>>>1;e<s[n]?r=n:t=n}if(0==t)break;g.push(t);let o=y+Math.floor(A*s[t]/i),a=y+Math.floor(A*s[t+1]/i)-1;for(;!((o^a)&h);)m=m<<1&p|u(),o=o<<1&p,a=a<<1&p|1;for(;o&~a&f;)m=m&h|m<<1&p>>>1|u(),o=o<<1^h,a=(a^h)<<1|h|1;y=o,A=1+a-o}let v=n-4;return g.map((t=>{switch(t-v){case 3:return v+65792+(e[a++]<<16|e[a++]<<8|e[a++]);case 2:return v+256+(e[a++]<<8|e[a++]);case 1:return v+e[a++];default:return t-1}}))}(e))}function ot(e){return 1&e?~e>>1:e>>1}function at(e,t){let r=Array(e);for(let n=0,i=-1;n<e;n++)r[n]=i+=1+t();return r}function ct(e,t){let r=Array(e);for(let n=0,i=0;n<e;n++)r[n]=i+=ot(t());return r}function lt(e,t){let r=at(e(),e),n=e(),i=at(n,e),s=function(e,t){let r=Array(e);for(let n=0;n<e;n++)r[n]=1+t();return r}(n,e);for(let e=0;e<n;e++)for(let t=0;t<s[e];t++)r.push(i[e]+t);return t?r.map((e=>t[e])):r}function ut(e,t,r){let n=Array(e).fill(void 0).map((()=>[]));for(let i=0;i<t;i++)ct(e,r).forEach(((e,t)=>n[t].push(e)));return n}function dt(e,t){let r=1+t(),n=t(),i=function(e){let t=[];for(;;){let r=e();if(0==r)break;t.push(r)}return t}(t);return it(ut(i.length,1+e,t).map(((e,t)=>{const s=e[0],o=e.slice(1);return Array(i[t]).fill(void 0).map(((e,t)=>{let i=t*n;return[s+t*r,o.map((e=>e+i))]}))})))}function ht(e,t){return ut(1+t(),1+e,t).map((e=>[e[0],e.slice(1)]))}const ft=st(Me("AEQF2AO2DEsA2wIrAGsBRABxAN8AZwCcAEwAqgA0AGwAUgByADcATAAVAFYAIQAyACEAKAAYAFgAGwAjABQAMAAmADIAFAAfABQAKwATACoADgAbAA8AHQAYABoAGQAxADgALAAoADwAEwA9ABMAGgARAA4ADwAWABMAFgAIAA8AHgQXBYMA5BHJAS8JtAYoAe4AExozi0UAH21tAaMnBT8CrnIyhrMDhRgDygIBUAEHcoFHUPe8AXBjAewCjgDQR8IICIcEcQLwATXCDgzvHwBmBoHNAqsBdBcUAykgDhAMShskMgo8AY8jqAQfAUAfHw8BDw87MioGlCIPBwZCa4ELatMAAMspJVgsDl8AIhckSg8XAHdvTwBcIQEiDT4OPhUqbyECAEoAS34Aej8Ybx83JgT/Xw8gHxZ/7w8RICxPHA9vBw+Pfw8PHwAPFv+fAsAvCc8vEr8ivwD/EQ8Bol8OEBa/A78hrwAPCU8vESNvvwWfHwNfAVoDHr+ZAAED34YaAdJPAK7PLwSEgDLHAGo1Pz8Pvx9fUwMrpb8O/58VTzAPIBoXIyQJNF8hpwIVAT8YGAUADDNBaX3RAMomJCg9EhUeA29MABsZBTMNJipjOhc19gcIDR8bBwQHEggCWi6DIgLuAQYA+BAFCha3A5XiAEsqM7UFFgFLhAMjFTMYE1Klnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vN8gF2AC2AK5EAWwApgYDKmAAroQ0NDQ0AT+OCg7wAAIHRAbpNgVcBV0APTA5BfbPFgMLzcYL/QqqA82eBALKCjQCjqYCht0/k2+OAsXQAoP3ASTKDgDw6ACKAUYCMpIKJpRaAE4A5womABzZvs0REEKiACIQAd5QdAECAj4Ywg/wGqY2AVgAYADYvAoCGAEubA0gvAY2ALAAbpbvqpyEAGAEpgQAJgAG7gAgAEACmghUFwCqAMpAINQIwC4DthRAAPcycKgApoIdABwBfCisABoATwBqASIAvhnSBP8aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmcCY1eCl5tIFZeUqGgyoNHABgAEQAaABNwWQAmABMATPMa3T34ADldyprmM1M2XociUQgLzvwAXT3xABgAEQAaABNwIGFAnADD8AAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5wLQpALEtQAKUSGkahR4GnJM+gsAwCgeFAiUAECQ0BQuL8AAIAAAADKeIheclvFqQAAETr4iAMxIARMgAMIoHhQIAn0E0pDQFC4HhznoAAAAIAI2C0/4lvFqQAAETgBJJwYCAy4ABgYAFAA8MBKYEH4eRhTkAjYeFcgACAYAeABsOqyQ5gRwDayqugEgaIIAtgoACgDmEABmBAWGme5OBJJA2m4cDeoAmITWAXwrMgOgAGwBCh6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28Jk9VzI3QkEoAoICoQKwAqcAQAAxBV4FXbS9BW47YkIXP1ciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXUu5eZwqoCqdeaAC0YTQHMnM9UQAPH6k+yAdy/BZIiQImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCO147WTteO1k7XjtZO147WTteO1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbB4CMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLpGGzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFgASACtgNGAJwEgLpoBgC8BGzAEowcggCEDC6kdjoAJAM0C5IKRoABZCgiAIzw3AYBLACkfng9ogigkgNmWAN6AEQCvrkEVqTGAwCsBRbAA+4iQkMCHR072jI2PTbUNsk2RjY5NvA23TZKNiU3EDcZN5I+RTxDRTBCJkK5VBYKFhZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwKU7oICoW1e7jAEzgPxA+YDwgCkBFDAwADABKzAAOxFLhitA1UFTDeyPkM+bj51QkRCuwTQWWQ8X+0AWBYzsACNA8xwzAGm7EZ/QisoCTAbLDs6fnLfb8H2GccsbgFw13M1HAVkBW/Jxsm9CNRO8E8FDD0FBQw9FkcClOYCoMFegpDfADgcMiA2AJQACB8AsigKAIzIEAJKeBIApY5yPZQIAKQiHb4fvj5BKSRPQrZCOz0oXyxgOywfKAnGbgMClQaCAkILXgdeCD9IIGUgQj5fPoY+dT52Ao5CM0dAX9BTVG9SDzFwWTQAbxBzJF/lOEIQQglCCkKJIAls5AcClQICoKPMODEFxhi6KSAbiyfIRrMjtCgdWCAkPlFBIitCsEJRzAbMAV/OEyQzDg0OAQQEJ36i328/Mk9AybDJsQlq3tDRApUKAkFzXf1d/j9uALYP6hCoFgCTGD8kPsFKQiobrm0+zj0KSD8kPnVCRBwMDyJRTHFgMTJa5rwXQiQ2YfI/JD7BMEJEHGINTw4TOFlIRzwJO0icMQpyPyQ+wzJCRBv6DVgnKB01NgUKj2bwYzMqCoBkznBgEF+zYDIocwRIX+NgHj4HICNfh2C4CwdwFWpTG/lgUhYGAwRfv2Ts8mAaXzVgml/XYIJfuWC4HI1gUF9pYJZgMR6ilQHMAOwLAlDRefC0in4AXAEJA6PjCwc0IamOANMMCAECRQDFNRTZBgd+CwQlRA+r6+gLBDEFBnwUBXgKATIArwAGRAAHA3cDdAN2A3kDdwN9A3oDdQN7A30DfAN4A3oDfQAYEAAlAtYASwMAUAFsAHcKAHcAmgB3AHUAdQB2AHVu8UgAygDAAHcAdQB1AHYAdQALCgB3AAsAmgB3AAsCOwB3AAtu8UgAygDAAHgKAJoAdwB3AHUAdQB2AHUAeAB1AHUAdgB1bvFIAMoAwAALCgCaAHcACwB3AAsCOwB3AAtu8UgAygDAAH4ACwGgALcBpwC6AahdAu0COwLtbvFIAMoAwAALCgCaAu0ACwLtAAsCOwLtAAtu8UgAygDAA24ACwNvAAu0VsQAAzsAABCkjUIpAAsAUIusOggWcgMeBxVsGwL67U/2HlzmWOEeOgALASvuAAseAfpKUpnpGgYJDCIZM6YyARUE9ThqAD5iXQgnAJYJPnOzw0ZAEZxEKsIAkA4DhAHnTAIDxxUDK0lxCQlPYgIvIQVYJQBVqE1GakUAKGYiDToSBA1EtAYAXQJYAIF8GgMHRyAAIAjOe9YncekRAA0KACUrjwE7Ayc6AAYWAqaiKG4McEcqANoN3+Mg9TwCBhIkuCny+JwUQ29L008JluRxu3K+oAdqiHOqFH0AG5SUIfUJ5SxCGfxdipRzqTmT4V5Zb+r1Uo4Vm+NqSSEl2mNvR2JhIa8SpYO6ntdwFXHCWTCK8f2+Hxo7uiG3drDycAuKIMP5bhi06ACnqArH1rz4Rqg//lm6SgJGEVbF9xJHISaR6HxqxSnkw6shDnelHKNEfGUXSJRJ1GcsmtJw25xrZMDK9gXSm1/YMkdX4/6NKYOdtk/NQ3/NnDASjTc3fPjIjW/5sVfVObX2oTDWkr1dF9f3kxBsD3/3aQO8hPfRz+e0uEiJqt1161griu7gz8hDDwtpy+F+BWtefnKHZPAxcZoWbnznhJpy0e842j36bcNzGnIEusgGX0a8ZxsnjcSsPDZ09yZ36fCQbriHeQ72JRMILNl6ePPf2HWoVwgWAm1fb3V2sAY0+B6rAXqSwPBgseVmoqsBTSrm91+XasMYYySI8eeRxH3ZvHkMz3BQ5aJ3iUVbYPNM3/7emRtjlsMgv/9VyTsyt/mK+8fgWeT6SoFaclXqn42dAIsvAarF5vNNWHzKSkKQ/8Hfk5ZWK7r9yliOsooyBjRhfkHP4Q2DkWXQi6FG/9r/IwbmkV5T7JSopHKn1pJwm9tb5Ot0oyN1Z2mPpKXHTxx2nlK08fKk1hEYA8WgVVWL5lgx0iTv+KdojJeU23ZDjmiubXOxVXJKKi2Wjuh2HLZOFLiSC7Tls5SMh4f+Pj6xUSrNjFqLGehRNB8lC0QSLNmkJJx/wSG3MnjE9T1CkPwJI0wH2lfzwETIiVqUxg0dfu5q39Gt+hwdcxkhhNvQ4TyrBceof3Mhs/IxFci1HmHr4FMZgXEEczPiGCx0HRwzAqDq2j9AVm1kwN0mRVLWLylgtoPNapF5cY4Y1wJh/e0BBwZj44YgZrDNqvD/9Hv7GFYdUQeDJuQ3EWI4HaKqavU1XjC/n41kT4L79kqGq0kLhdTZvgP3TA3fS0ozVz+5piZsoOtIvBUFoMKbNcmBL6YxxaUAusHB38XrS8dQMnQwJfUUkpRoGr5AUeWicvBTzyK9g77+yCkf5PAysL7r/JjcZgrbvRpMW9iyaxZvKO6ceZN2EwIxKwVFPuvFuiEPGCoagbMo+SpydLrXqBzNCDGFCrO/rkcwa2xhokQZ5CdZ0AsU3JfSqJ6n5I14YA+P/uAgfhPU84Tlw7cEFfp7AEE8ey4sP12PTt4Cods1GRgDOB5xvyiR5m+Bx8O5nBCNctU8BevfV5A08x6RHd5jcwPTMDSZJOedIZ1cGQ704lxbAzqZOP05ZxaOghzSdvFBHYqomATARyAADK4elP8Ly3IrUZKfWh23Xy20uBUmLS4Pfagu9+oyVa2iPgqRP3F2CTUsvJ7+RYnN8fFZbU/HVvxvcFFDKkiTqV5UBZ3Gz54JAKByi9hkKMZJvuGgcSYXFmw08UyoQyVdfTD1/dMkCHXcTGAKeROgArsvmRrQTLUOXioOHGK2QkjHuoYFgXciZoTJd6Fs5q1QX1G+p/e26hYsEf7QZD1nnIyl/SFkNtYYmmBhpBrxl9WbY0YpHWRuw2Ll/tj9mD8P4snVzJl4F9J+1arVeTb9E5r2ILH04qStjxQNwn3m4YNqxmaNbLAqW2TN6LidwuJRqS+NXbtqxoeDXpxeGWmxzSkWxjkyCkX4NQRme6q5SAcC+M7+9ETfA/EwrzQajKakCwYyeunP6ZFlxU2oMEn1Pz31zeStW74G406ZJFCl1wAXIoUKkWotYEpOuXB1uVNxJ63dpJEqfxBeptwIHNrPz8BllZoIcBoXwgfJ+8VAUnVPvRvexnw0Ma/WiGYuJO5y8QTvEYBigFmhUxY5RqzE8OcywN/8m4UYrlaniJO75XQ6KSo9+tWHlu+hMi0UVdiKQp7NelnoZUzNaIyBPVeOwK6GNp+FfHuPOoyhaWuNvTYFkvxscMQWDh+zeFCFkgwbXftiV23ywJ4+uwRqmg9k3KzwIQpzppt8DBBOMbrqwQM5Gb05sEwdKzMiAqOloaA/lr0KA+1pr0/+HiWoiIjHA/wir2nIuS3PeU/ji3O6ZwoxcR1SZ9FhtLC5S0FIzFhbBWcGVP/KpxOPSiUoAdWUpqKH++6Scz507iCcxYI6rdMBICPJZea7OcmeFw5mObJSiqpjg2UoWNIs+cFhyDSt6geV5qgi3FunmwwDoGSMgerFOZGX1m0dMCYo5XOruxO063dwENK9DbnVM9wYFREzh4vyU1WYYJ/LRRp6oxgjqP/X5a8/4Af6p6NWkQferzBmXme0zY/4nwMJm/wd1tIqSwGz+E3xPEAOoZlJit3XddD7/BT1pllzOx+8bmQtANQ/S6fZexc6qi3W+Q2xcmXTUhuS5mpHQRvcxZUN0S5+PL9lXWUAaRZhEH8hTdAcuNMMCuVNKTEGtSUKNi3O6KhSaTzck8csZ2vWRZ+d7mW8c4IKwXIYd25S/zIftPkwPzufjEvOHWVD1m+FjpDVUTV0DGDuHj6QnaEwLu/dEgdLQOg9E1Sro9XHJ8ykLAwtPu+pxqKDuFexqON1sKQm7rwbE1E68UCfA/erovrTCG+DBSNg0l4goDQvZN6uNlbyLpcZAwj2UclycvLpIZMgv4yRlpb3YuMftozorbcGVHt/VeDV3+Fdf1TP0iuaCsPi2G4XeGhsyF1ubVDxkoJhmniQ0/jSg/eYML9KLfnCFgISWkp91eauR3IQvED0nAPXK+6hPCYs+n3+hCZbiskmVMG2da+0EsZPonUeIY8EbfusQXjsK/eFDaosbPjEfQS0RKG7yj5GG69M7MeO1HmiUYocgygJHL6M1qzUDDwUSmr99V7Sdr2F3JjQAJY+F0yH33Iv3+C9M38eML7gTgmNu/r2bUMiPvpYbZ6v1/IaESirBHNa7mPKn4dEmYg7v/+HQgPN1G79jBQ1+soydfDC2r+h2Bl/KIc5KjMK7OH6nb1jLsNf0EHVe2KBiE51ox636uyG6Lho0t3J34L5QY/ilE3mikaF4HKXG1mG1rCevT1Vv6GavltxoQe/bMrpZvRggnBxSEPEeEzkEdOxTnPXHVjUYdw8JYvjB/o7Eegc3Ma+NUxLLnsK0kJlinPmUHzHGtrk5+CAbVzFOBqpyy3QVUnzTDfC/0XD94/okH+OB+i7g9lolhWIjSnfIb+Eq43ZXOWmwvjyV/qqD+t0e+7mTEM74qP/Ozt8nmC7mRpyu63OB4KnUzFc074SqoyPUAgM+/TJGFo6T44EHnQU4X4z6qannVqgw/U7zCpwcmXV1AubIrvOmkKHazJAR55ePjp5tLBsN8vAqs3NAHdcEHOR2xQ0lsNAFzSUuxFQCFYvXLZJdOj9p4fNq6p0HBGUik2YzaI4xySy91KzhQ0+q1hjxvImRwPRf76tChlRkhRCi74NXZ9qUNeIwP+s5p+3m5nwPdNOHgSLD79n7O9m1n1uDHiMntq4nkYwV5OZ1ENbXxFd4PgrlvavZsyUO4MqYlqqn1O8W/I1dEZq5dXhrbETLaZIbC2Kj/Aa/QM+fqUOHdf0tXAQ1huZ3cmWECWSXy/43j35+Mvq9xws7JKseriZ1pEWKc8qlzNrGPUGcVgOa9cPJYIJsGnJTAUsEcDOEVULO5x0rXBijc1lgXEzQQKhROf8zIV82w8eswc78YX11KYLWQRcgHNJElBxfXr72lS2RBSl07qTKorO2uUDZr3sFhYsvnhLZn0A94KRzJ/7DEGIAhW5ZWFpL8gEwu1aLA9MuWZzNwl8Oze9Y+bX+v9gywRVnoB5I/8kXTXU3141yRLYrIOOz6SOnyHNy4SieqzkBXharjfjqq1q6tklaEbA8Qfm2DaIPs7OTq/nvJBjKfO2H9bH2cCMh1+5gspfycu8f/cuuRmtDjyqZ7uCIMyjdV3a+p3fqmXsRx4C8lujezIFHnQiVTXLXuI1XrwN3+siYYj2HHTvESUx8DlOTXpak9qFRK+L3mgJ1WsD7F4cu1aJoFoYQnu+wGDMOjJM3kiBQWHCcvhJ/HRdxodOQp45YZaOTA22Nb4XKCVxqkbwMYFhzYQYIAnCW8FW14uf98jhUG2zrKhQQ0q0CEq0t5nXyvUyvR8DvD69LU+g3i+HFWQMQ8PqZuHD+sNKAV0+M6EJC0szq7rEr7B5bQ8BcNHzvDMc9eqB5ZCQdTf80Obn4uzjwpYU7SISdtV0QGa9D3Wrh2BDQtpBKxaNFV+/Cy2P/Sv+8s7Ud0Fd74X4+o/TNztWgETUapy+majNQ68Lq3ee0ZO48VEbTZYiH1Co4OlfWef82RWeyUXo7woM03PyapGfikTnQinoNq5z5veLpeMV3HCAMTaZmA1oGLAn7XS3XYsz+XK7VMQsc4XKrmDXOLU/pSXVNUq8dIqTba///3x6LiLS6xs1xuCAYSfcQ3+rQgmu7uvf3THKt5Ooo97TqcbRqxx7EASizaQCBQllG/rYxVapMLgtLbZS64w1MDBMXX+PQpBKNwqUKOf2DDRDUXQf9EhOS0Qj4nTmlA8dzSLz/G1d+Ud8MTy/6ghhdiLpeerGY/UlDOfiuqFsMUU5/UYlP+BAmgRLuNpvrUaLlVkrqDievNVEAwF+4CoM1MZTmjxjJMsKJq+u8Zd7tNCUFy6LiyYXRJQ4VyvEQFFaCGKsxIwQkk7EzZ6LTJq2hUuPhvAW+gQnSG6J+MszC+7QCRHcnqDdyNRJ6T9xyS87A6MDutbzKGvGktpbXqtzWtXb9HsfK2cBMomjN9a4y+TaJLnXxAeX/HWzmf4cR4vALt/P4w4qgKY04ml4ZdLOinFYS6cup3G/1ie4+t1eOnpBNlqGqs75ilzkT4+DsZQxNvaSKJ//6zIbbk/M7LOhFmRc/1R+kBtz7JFGdZm/COotIdvQoXpTqP/1uqEUmCb/QWoGLMwO5ANcHzxdY48IGP5+J+zKOTBFZ4Pid+GTM+Wq12MV/H86xEJptBa6T+p3kgpwLedManBHC2GgNrFpoN2xnrMz9WFWX/8/ygSBkavq2Uv7FdCsLEYLu9LLIvAU0bNRDtzYl+/vXmjpIvuJFYjmI0im6QEYqnIeMsNjXG4vIutIGHijeAG/9EDBozKV5cldkHbLxHh25vT+ZEzbhXlqvpzKJwcEgfNwLAKFeo0/pvEE10XDB+EXRTXtSzJozQKFFAJhMxYkVaCW+E9AL7tMeU8acxidHqzb6lX4691UsDpy/LLRmT+epgW56+5Cw8tB4kMUv6s9lh3eRKbyGs+H/4mQMaYzPTf2OOdokEn+zzgvoD3FqNKk8QqGAXVsqcGdXrT62fSPkR2vROFi68A6se86UxRUk4cajfPyCC4G5wDhD+zNq4jodQ4u4n/m37Lr36n4LIAAsVr02dFi9AiwA81MYs2rm4eDlDNmdMRvEKRHfBwW5DdMNp0jPFZMeARqF/wL4XBfd+EMLBfMzpH5GH6NaW+1vrvMdg+VxDzatk3MXgO3ro3P/DpcC6+Mo4MySJhKJhSR01SGGGp5hPWmrrUgrv3lDnP+HhcI3nt3YqBoVAVTBAQT5iuhTg8nvPtd8ZeYj6w1x6RqGUBrSku7+N1+BaasZvjTk64RoIDlL8brpEcJx3OmY7jLoZsswdtmhfC/G21llXhITOwmvRDDeTTPbyASOa16cF5/A1fZAidJpqju3wYAy9avPR1ya6eNp9K8XYrrtuxlqi+bDKwlfrYdR0RRiKRVTLOH85+ZY7XSmzRpfZBJjaTa81VDcJHpZnZnSQLASGYW9l51ZV/h7eVzTi3Hv6hUsgc/51AqJRTkpbFVLXXszoBL8nBX0u/0jBLT8nH+fJePbrwURT58OY+UieRjd1vs04w0VG5VN2U6MoGZkQzKN/ptz0Q366dxoTGmj7i1NQGHi9GgnquXFYdrCfZBmeb7s0T6yrdlZH5cZuwHFyIJ/kAtGsTg0xH5taAAq44BAk1CPk9KVVbqQzrCUiFdF/6gtlPQ8bHHc1G1W92MXGZ5HEHftyLYs8mbD/9xYRUWkHmlM0zC2ilJlnNgV4bfALpQghxOUoZL7VTqtCHIaQSXm+YUMnpkXybnV+A6xlm2CVy8fn0Xlm2XRa0+zzOa21JWWmixfiPMSCZ7qA4rS93VN3pkpF1s5TonQjisHf7iU9ZGvUPOAKZcR1pbeVf/Ul7OhepGCaId9wOtqo7pJ7yLcBZ0pFkOF28y4zEI/kcUNmutBHaQpBdNM8vjCS6HZRokkeo88TBAjGyG7SR+6vUgTcyK9Imalj0kuxz0wmK+byQU11AiJFk/ya5dNduRClcnU64yGu/ieWSeOos1t3ep+RPIWQ2pyTYVbZltTbsb7NiwSi3AV+8KLWk7LxCnfZUetEM8ThnsSoGH38/nyAwFguJp8FjvlHtcWZuU4hPva0rHfr0UhOOJ/F6vS62FW7KzkmRll2HEc7oUq4fyi5T70Vl7YVIfsPHUCdHesf9Lk7WNVWO75JDkYbMI8TOW8JKVtLY9d6UJRITO8oKo0xS+o99Yy04iniGHAaGj88kEWgwv0OrHdY/nr76DOGNS59hXCGXzTKUvDl9iKpLSWYN1lxIeyywdNpTkhay74w2jFT6NS8qkjo5CxA1yfSYwp6AJIZNKIeEK5PJAW7ORgWgwp0VgzYpqovMrWxbu+DGZ6Lhie1RAqpzm8VUzKJOH3mCzWuTOLsN3VT/dv2eeYe9UjbR8YTBsLz7q60VN1sU51k+um1f8JxD5pPhbhSC8rRaB454tmh6YUWrJI3+GWY0qeWioj/tbkYITOkJaeuGt4JrJvHA+l0Gu7kY7XOaa05alMnRWVCXqFgLIwSY4uF59Ue5SU4QKuc/HamDxbr0x6csCetXGoP7Qn1Bk/J9DsynO/UD6iZ1Hyrz+jit0hDCwi/E9OjgKTbB3ZQKQ/0ZOvevfNHG0NK4Aj3Cp7NpRk07RT1i/S0EL93Ag8GRgKI9CfpajKyK6+Jj/PI1KO5/85VAwz2AwzP8FTBb075IxCXv6T9RVvWT2tUaqxDS92zrGUbWzUYk9mSs82pECH+fkqsDt93VW++4YsR/dHCYcQSYTO/KaBMDj9LSD/J/+z20Kq8XvZUAIHtm9hRPP3ItbuAu2Hm5lkPs92pd7kCxgRs0xOVBnZ13ccdA0aunrwv9SdqElJRC3g+oCu+nXyCgmXUs9yMjTMAIHfxZV+aPKcZeUBWt057Xo85Ks1Ir5gzEHCWqZEhrLZMuF11ziGtFQUds/EESajhagzcKsxamcSZxGth4UII+adPhQkUnx2WyN+4YWR+r3f8MnkyGFuR4zjzxJS8WsQYR5PTyRaD9ixa6Mh741nBHbzfjXHskGDq179xaRNrCIB1z1xRfWfjqw2pHc1zk9xlPpL8sQWAIuETZZhbnmL54rceXVNRvUiKrrqIkeogsl0XXb17ylNb0f4GA9Wd44vffEG8FSZGHEL2fbaTGRcSiCeA8PmA/f6Hz8HCS76fXUHwgwkzSwlI71ekZ7Fapmlk/KC+Hs8hUcw3N2LN5LhkVYyizYFl/uPeVP5lsoJHhhfWvvSWruCUW1ZcJOeuTbrDgywJ/qG07gZJplnTvLcYdNaH0KMYOYMGX+rB4NGPFmQsNaIwlWrfCezxre8zXBrsMT+edVLbLqN1BqB76JH4BvZTqUIMfGwPGEn+EnmTV86fPBaYbFL3DFEhjB45CewkXEAtJxk4/Ms2pPXnaRqdky0HOYdcUcE2zcXq4vaIvW2/v0nHFJH2XXe22ueDmq/18XGtELSq85j9X8q0tcNSSKJIX8FTuJF/Pf8j5PhqG2u+osvsLxYrvvfeVJL+4tkcXcr9JV7v0ERmj/X6fM3NC4j6dS1+9Umr2oPavqiAydTZPLMNRGY23LO9zAVDly7jD+70G5TPPLdhRIl4WxcYjLnM+SNcJ26FOrkrISUtPObIz5Zb3AG612krnpy15RMW+1cQjlnWFI6538qky9axd2oJmHIHP08KyP0ubGO+TQNOYuv2uh17yCIvR8VcStw7o1g0NM60sk+8Tq7YfIBJrtp53GkvzXH7OA0p8/n/u1satf/VJhtR1l8Wa6Gmaug7haSpaCaYQax6ta0mkutlb+eAOSG1aobM81D9A4iS1RRlzBBoVX6tU1S6WE2N9ORY6DfeLRC4l9Rvr5h95XDWB2mR1d4WFudpsgVYwiTwT31ljskD8ZyDOlm5DkGh9N/UB/0AI5Xvb8ZBmai2hQ4BWMqFwYnzxwB26YHSOv9WgY3JXnvoN+2R4rqGVh/LLDMtpFP+SpMGJNWvbIl5SOodbCczW2RKleksPoUeGEzrjtKHVdtZA+kfqO+rVx/iclCqwoopepvJpSTDjT+b9GWylGRF8EDbGlw6eUzmJM95Ovoz+kwLX3c2fTjFeYEsE7vUZm3mqdGJuKh2w9/QGSaqRHs99aScGOdDqkFcACoqdbBoQqqjamhH6Q9ng39JCg3lrGJwd50Qk9ovnqBTr8MME7Ps2wiVfygUmPoUBJJfJWX5Nda0nuncbFkA==")),pt=new Set(lt(ft)),mt=new Set(lt(ft)),gt=function(e){let t=[];for(;;){let r=e();if(0==r)break;t.push(dt(r,e))}for(;;){let r=e()-1;if(r<0)break;t.push(ht(r,e))}return function(e){const t={};for(let r=0;r<e.length;r++){const n=e[r];t[n[0]]=n[1]}return t}(it(t))}(ft),yt=function(e){let t=lt(e).sort(((e,t)=>e-t));return function r(){let n=[];for(;;){let i=lt(e,t);if(0==i.length)break;n.push({set:new Set(i),node:r()})}n.sort(((e,t)=>t.set.size-e.set.size));let i=e(),s=i%3;i=i/3|0;let o=!!(1&i);return i>>=1,{branches:n,valid:s,fe0f:o,save:1==i,check:2==i}}()}(ft),At=45,vt=95;function bt(e){return function(e,t=ze.current){return Ze(et(e,t))}(e)}function Et(e){return e.filter((e=>65039!=e))}function wt(e){for(let t of e.split(".")){let e=bt(t);try{for(let t=e.lastIndexOf(vt)-1;t>=0;t--)if(e[t]!==vt)throw new Error("underscore only allowed at start");if(e.length>=4&&e.every((e=>e<128))&&e[2]===At&&e[3]===At)throw new Error("invalid label extension")}catch(e){throw new Error(`Invalid label "${t}": ${e.message}`)}}return e}function Pt(e){return wt(function(e,t){let r=bt(e).reverse(),n=[];for(;r.length;){let e=It(r);if(e){n.push(...t(e));continue}let i=r.pop();if(pt.has(i)){n.push(i);continue}if(mt.has(i))continue;let s=gt[i];if(!s)throw new Error(`Disallowed codepoint: 0x${i.toString(16).toUpperCase()}`);n.push(...s)}return wt((i=String.fromCodePoint(...n),i.normalize("NFC")));var i}(e,Et))}function It(e,t){var r;let n,i,s=yt,o=[],a=e.length;for(;a;){let t=e[--a];if(s=null===(r=s.branches.find((e=>e.set.has(t))))||void 0===r?void 0:r.node,!s)break;if(s.save)i=t;else if(s.check&&t===i)break;o.push(t),s.fe0f&&(o.push(65039),a>0&&65039==e[a-1]&&a--),s.valid&&(n=o.slice(),2==s.valid&&n.splice(1,1),e.length=a)}return n}const Tt=new O(nt),Bt=new Uint8Array(32);function _t(e){if(0===e.length)throw new Error("invalid ENS name; empty component");return e}function Ot(e){const t=et(Pt(e)),r=[];if(0===e.length)return r;let n=0;for(let e=0;e<t.length;e++){46===t[e]&&(r.push(_t(t.slice(n,e))),n=e+1)}if(n>=t.length)throw new Error("invalid ENS name; empty component");return r.push(_t(t.slice(n))),r}function Dt(e){"string"!=typeof e&&Tt.throwArgumentError("invalid ENS name; not a string","name",e);let t=Bt;const r=Ot(e);for(;r.length;)t=$e(F([t,$e(r.pop())]));return U(t)}Bt.fill(0);const Ct=new O("rlp/5.7.0");function Nt(e){const t=[];for(;e;)t.unshift(255&e),e>>=8;return t}function kt(e,t,r){let n=0;for(let i=0;i<r;i++)n=256*n+e[t+i];return n}function xt(e){if(Array.isArray(e)){let t=[];if(e.forEach((function(e){t=t.concat(xt(e))})),t.length<=55)return t.unshift(192+t.length),t;const r=Nt(t.length);return r.unshift(247+r.length),r.concat(t)}k(e)||Ct.throwArgumentError("RLP object must be BytesLike","object",e);const t=Array.prototype.slice.call(S(e));if(1===t.length&&t[0]<=127)return t;if(t.length<=55)return t.unshift(128+t.length),t;const r=Nt(t.length);return r.unshift(183+r.length),r.concat(t)}function Rt(e){return U(xt(e))}function St(e,t,r,n){const i=[];for(;r<t+1+n;){const s=Ft(e,r);i.push(s.result),(r+=s.consumed)>t+1+n&&Ct.throwError("child data too short",O.errors.BUFFER_OVERRUN,{})}return{consumed:1+n,result:i}}function Ft(e,t){if(0===e.length&&Ct.throwError("data too short",O.errors.BUFFER_OVERRUN,{}),e[t]>=248){const r=e[t]-247;t+1+r>e.length&&Ct.throwError("data short segment too short",O.errors.BUFFER_OVERRUN,{});const n=kt(e,t+1,r);return t+1+r+n>e.length&&Ct.throwError("data long segment too short",O.errors.BUFFER_OVERRUN,{}),St(e,t,t+1+r,r+n)}if(e[t]>=192){const r=e[t]-192;return t+1+r>e.length&&Ct.throwError("data array too short",O.errors.BUFFER_OVERRUN,{}),St(e,t,t+1,r)}if(e[t]>=184){const r=e[t]-183;t+1+r>e.length&&Ct.throwError("data array too short",O.errors.BUFFER_OVERRUN,{});const n=kt(e,t+1,r);t+1+r+n>e.length&&Ct.throwError("data array too short",O.errors.BUFFER_OVERRUN,{});return{consumed:1+r+n,result:U(e.slice(t+1+r,t+1+r+n))}}if(e[t]>=128){const r=e[t]-128;t+1+r>e.length&&Ct.throwError("data too short",O.errors.BUFFER_OVERRUN,{});return{consumed:1+r,result:U(e.slice(t+1,t+1+r))}}return{consumed:1,result:U(e[t])}}function Lt(e){const t=S(e),r=Ft(t,0);return r.consumed!==t.length&&Ct.throwArgumentError("invalid rlp data","data",e),r.result}const qt=new O("address/5.7.0");function Mt(e){q(e,20)||qt.throwArgumentError("invalid address","address",e);const t=(e=e.toLowerCase()).substring(2).split(""),r=new Uint8Array(40);for(let e=0;e<40;e++)r[e]=t[e].charCodeAt(0);const n=S($e(r));for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&(t[e]=t[e].toUpperCase()),(15&n[e>>1])>=8&&(t[e+1]=t[e+1].toUpperCase());return"0x"+t.join("")}const Ut={};for(let e=0;e<10;e++)Ut[String(e)]=String(e);for(let e=0;e<26;e++)Ut[String.fromCharCode(65+e)]=String(10+e);const Vt=Math.floor((jt=9007199254740991,Math.log10?Math.log10(jt):Math.log(jt)/Math.LN10));var jt;function Qt(e){let t=null;if("string"!=typeof e&&qt.throwArgumentError("invalid address","address",e),e.match(/^(0x)?[0-9a-fA-F]{40}$/))"0x"!==e.substring(0,2)&&(e="0x"+e),t=Mt(e),e.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&t!==e&&qt.throwArgumentError("bad address checksum","address",e);else if(e.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){for(e.substring(2,4)!==function(e){let t=(e=(e=e.toUpperCase()).substring(4)+e.substring(0,2)+"00").split("").map((e=>Ut[e])).join("");for(;t.length>=Vt;){let e=t.substring(0,Vt);t=parseInt(e,10)%97+t.substring(e.length)}let r=String(98-parseInt(t,10)%97);for(;r.length<2;)r="0"+r;return r}(e)&&qt.throwArgumentError("bad icap checksum","address",e),r=e.substring(4),t=new K(r,36).toString(16);t.length<40;)t="0"+t;t=Mt("0x"+t)}else qt.throwArgumentError("invalid address","address",e);var r;return t}function Ht(e){let t=null;try{t=Qt(e.from)}catch(t){qt.throwArgumentError("missing from address","transaction",e)}return Qt(j($e(Rt([t,L(S(Z.from(e.nonce).toHexString()))])),12))}var Gt=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const Yt=new O(nt),$t=new Uint8Array(32);$t.fill(0);const Kt=Z.from(-1),zt=Z.from(0),Xt=Z.from(1),Jt=Z.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");const Wt=G(Xt.toHexString(),32),Zt=G(zt.toHexString(),32),er={name:"string",version:"string",chainId:"uint256",verifyingContract:"address",salt:"bytes32"},tr=["name","version","chainId","verifyingContract","salt"];function rr(e){return function(t){return"string"!=typeof t&&Yt.throwArgumentError(`invalid domain value for ${JSON.stringify(e)}`,`domain.${e}`,t),t}}const nr={name:rr("name"),version:rr("version"),chainId:function(e){try{return Z.from(e).toString()}catch(e){}return Yt.throwArgumentError('invalid domain value for "chainId"',"domain.chainId",e)},verifyingContract:function(e){try{return Qt(e).toLowerCase()}catch(e){}return Yt.throwArgumentError('invalid domain value "verifyingContract"',"domain.verifyingContract",e)},salt:function(e){try{const t=S(e);if(32!==t.length)throw new Error("bad length");return U(t)}catch(e){}return Yt.throwArgumentError('invalid domain value "salt"',"domain.salt",e)}};function ir(e){{const t=e.match(/^(u?)int(\d*)$/);if(t){const r=""===t[1],n=parseInt(t[2]||"256");(n%8!=0||n>256||t[2]&&t[2]!==String(n))&&Yt.throwArgumentError("invalid numeric width","type",e);const i=Jt.mask(r?n-1:n),s=r?i.add(Xt).mul(Kt):zt;return function(t){const r=Z.from(t);return(r.lt(s)||r.gt(i))&&Yt.throwArgumentError(`value out-of-bounds for ${e}`,"value",t),G(r.toTwos(256).toHexString(),32)}}}{const t=e.match(/^bytes(\d+)$/);if(t){const r=parseInt(t[1]);return(0===r||r>32||t[1]!==String(r))&&Yt.throwArgumentError("invalid bytes width","type",e),function(t){return S(t).length!==r&&Yt.throwArgumentError(`invalid length for ${e}`,"value",t),function(e){const t=S(e),r=t.length%32;return r?Q([t,$t.slice(r)]):U(t)}(t)}}}switch(e){case"address":return function(e){return G(Qt(e),32)};case"bool":return function(e){return e?Wt:Zt};case"bytes":return function(e){return $e(e)};case"string":return function(e){return rt(e)}}return null}function sr(e,t){return`${e}(${t.map((({name:e,type:t})=>t+" "+e)).join(",")})`}class or{constructor(e){ve(this,"types",Object.freeze(Be(e))),ve(this,"_encoderCache",{}),ve(this,"_types",{});const t={},r={},n={};Object.keys(e).forEach((e=>{t[e]={},r[e]=[],n[e]={}}));for(const n in e){const i={};e[n].forEach((s=>{i[s.name]&&Yt.throwArgumentError(`duplicate variable name ${JSON.stringify(s.name)} in ${JSON.stringify(n)}`,"types",e),i[s.name]=!0;const o=s.type.match(/^([^\x5b]*)(\x5b|$)/)[1];o===n&&Yt.throwArgumentError(`circular type reference to ${JSON.stringify(o)}`,"types",e);ir(o)||(r[o]||Yt.throwArgumentError(`unknown type ${JSON.stringify(o)}`,"types",e),r[o].push(n),t[n][o]=!0)}))}const i=Object.keys(r).filter((e=>0===r[e].length));0===i.length?Yt.throwArgumentError("missing primary type","types",e):i.length>1&&Yt.throwArgumentError(`ambiguous primary types or unused types: ${i.map((e=>JSON.stringify(e))).join(", ")}`,"types",e),ve(this,"primaryType",i[0]),function i(s,o){o[s]&&Yt.throwArgumentError(`circular type reference to ${JSON.stringify(s)}`,"types",e),o[s]=!0,Object.keys(t[s]).forEach((e=>{r[e]&&(i(e,o),Object.keys(o).forEach((t=>{n[t][e]=!0})))})),delete o[s]}(this.primaryType,{});for(const t in n){const r=Object.keys(n[t]);r.sort(),this._types[t]=sr(t,e[t])+r.map((t=>sr(t,e[t]))).join("")}}getEncoder(e){let t=this._encoderCache[e];return t||(t=this._encoderCache[e]=this._getEncoder(e)),t}_getEncoder(e){{const t=ir(e);if(t)return t}const t=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(t){const e=t[1],r=this.getEncoder(e),n=parseInt(t[3]);return t=>{n>=0&&t.length!==n&&Yt.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",t);let i=t.map(r);return this._types[e]&&(i=i.map($e)),$e(Q(i))}}const r=this.types[e];if(r){const t=rt(this._types[e]);return e=>{const n=r.map((({name:t,type:r})=>{const n=this.getEncoder(r)(e[t]);return this._types[r]?$e(n):n}));return n.unshift(t),Q(n)}}return Yt.throwArgumentError(`unknown type: ${e}`,"type",e)}encodeType(e){const t=this._types[e];return t||Yt.throwArgumentError(`unknown type: ${JSON.stringify(e)}`,"name",e),t}encodeData(e,t){return this.getEncoder(e)(t)}hashStruct(e,t){return $e(this.encodeData(e,t))}encode(e){return this.encodeData(this.primaryType,e)}hash(e){return this.hashStruct(this.primaryType,e)}_visit(e,t,r){if(ir(e))return r(e,t);const n=e.match(/^(.*)(\x5b(\d*)\x5d)$/);if(n){const e=n[1],i=parseInt(n[3]);return i>=0&&t.length!==i&&Yt.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",t),t.map((t=>this._visit(e,t,r)))}const i=this.types[e];return i?i.reduce(((e,{name:n,type:i})=>(e[n]=this._visit(i,t[n],r),e)),{}):Yt.throwArgumentError(`unknown type: ${e}`,"type",e)}visit(e,t){return this._visit(this.primaryType,e,t)}static from(e){return new or(e)}static getPrimaryType(e){return or.from(e).primaryType}static hashStruct(e,t,r){return or.from(t).hashStruct(e,r)}static hashDomain(e){const t=[];for(const r in e){const n=er[r];n||Yt.throwArgumentError(`invalid typed-data domain key: ${JSON.stringify(r)}`,"domain",e),t.push({name:r,type:n})}return t.sort(((e,t)=>tr.indexOf(e.name)-tr.indexOf(t.name))),or.hashStruct("EIP712Domain",{EIP712Domain:t},e)}static encode(e,t,r){return Q(["0x1901",or.hashDomain(e),or.from(t).hash(r)])}static hash(e,t,r){return $e(or.encode(e,t,r))}static resolveNames(e,t,r,n){return Gt(this,void 0,void 0,(function*(){e=we(e);const i={};e.verifyingContract&&!q(e.verifyingContract,20)&&(i[e.verifyingContract]="0x");const s=or.from(t);s.visit(r,((e,t)=>("address"!==e||q(t,20)||(i[t]="0x"),t)));for(const e in i)i[e]=yield n(e);return e.verifyingContract&&i[e.verifyingContract]&&(e.verifyingContract=i[e.verifyingContract]),r=s.visit(r,((e,t)=>"address"===e&&i[t]?i[t]:t)),{domain:e,value:r}}))}static getPayload(e,t,r){or.hashDomain(e);const n={},i=[];tr.forEach((t=>{const r=e[t];null!=r&&(n[t]=nr[t](r),i.push({name:t,type:er[t]}))}));const s=or.from(t),o=we(t);return o.EIP712Domain?Yt.throwArgumentError("types must not contain EIP712Domain type","types.EIP712Domain",t):o.EIP712Domain=i,s.encode(r),{types:o,domain:n,primaryType:s.primaryType,message:s.visit(r,((e,t)=>{if(e.match(/^bytes(\d*)/))return U(S(t));if(e.match(/^u?int/))return Z.from(t).toString();switch(e){case"address":return t.toLowerCase();case"bool":return!!t;case"string":return"string"!=typeof t&&Yt.throwArgumentError("invalid string","value",t),t}return Yt.throwArgumentError("unsupported type","type",e)}))}}}function ar(e){return"0x"+n.sha256().update(S(e)).digest("hex")}var cr=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};function lr(e,t){return cr(this,void 0,void 0,(function*(){null==t&&(t={});const r={method:t.method||"GET",headers:t.headers||{},body:t.body||void 0};if(!0!==t.skipFetchSetup&&(r.mode="cors",r.cache="no-cache",r.credentials="same-origin",r.redirect="follow",r.referrer="client"),null!=t.fetchOptions){const e=t.fetchOptions;e.mode&&(r.mode=e.mode),e.cache&&(r.cache=e.cache),e.credentials&&(r.credentials=e.credentials),e.redirect&&(r.redirect=e.redirect),e.referrer&&(r.referrer=e.referrer)}const n=yield fetch(e,r),i=yield n.arrayBuffer(),s={};return n.headers.forEach?n.headers.forEach(((e,t)=>{s[t.toLowerCase()]=e})):n.headers.keys().forEach((e=>{s[e.toLowerCase()]=n.headers.get(e)})),{headers:s,statusCode:n.status,statusMessage:n.statusText,body:S(new Uint8Array(i))}}))}var ur=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const dr=new O("web/5.7.1");function hr(e){return new Promise((t=>{setTimeout(t,e)}))}function fr(e,t){if(null==e)return null;if("string"==typeof e)return e;if(k(e)){if(t&&("text"===t.split("/")[0]||"application/json"===t.split(";")[0].trim()))try{return tt(e)}catch(e){}return U(e)}return e}function pr(e,t,r){let n=null;if(null!=t){n=et(t);const r="string"==typeof e?{url:e}:we(e);if(r.headers){0!==Object.keys(r.headers).filter((e=>"content-type"===e.toLowerCase())).length||(r.headers=we(r.headers),r.headers["content-type"]="application/json")}else r.headers={"content-type":"application/json"};e=r}return function(e,t,r){const n="object"==typeof e&&null!=e.throttleLimit?e.throttleLimit:12;dr.assertArgument(n>0&&n%1==0,"invalid connection throttle limit","connection.throttleLimit",n);const i="object"==typeof e?e.throttleCallback:null,s="object"==typeof e&&"number"==typeof e.throttleSlotInterval?e.throttleSlotInterval:100;dr.assertArgument(s>0&&s%1==0,"invalid connection throttle slot interval","connection.throttleSlotInterval",s);const o="object"==typeof e&&!!e.errorPassThrough,a={};let c=null;const l={method:"GET"};let u=!1,d=12e4;if("string"==typeof e)c=e;else if("object"==typeof e){if(null!=e&&null!=e.url||dr.throwArgumentError("missing URL","connection.url",e),c=e.url,"number"==typeof e.timeout&&e.timeout>0&&(d=e.timeout),e.headers)for(const t in e.headers)a[t.toLowerCase()]={key:t,value:String(e.headers[t])},["if-none-match","if-modified-since"].indexOf(t.toLowerCase())>=0&&(u=!0);if(l.allowGzip=!!e.allowGzip,null!=e.user&&null!=e.password){"https:"!==c.substring(0,6)&&!0!==e.allowInsecureAuthentication&&dr.throwError("basic authentication requires a secure https url",O.errors.INVALID_ARGUMENT,{argument:"url",url:c,user:e.user,password:"[REDACTED]"});const t=e.user+":"+e.password;a.authorization={key:"Authorization",value:"Basic "+Ue(et(t))}}null!=e.skipFetchSetup&&(l.skipFetchSetup=!!e.skipFetchSetup),null!=e.fetchOptions&&(l.fetchOptions=we(e.fetchOptions))}const h=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i"),f=c?c.match(h):null;if(f)try{const e={statusCode:200,statusMessage:"OK",headers:{"content-type":f[1]||"text/plain"},body:f[2]?Me(f[3]):(p=f[3],et(p.replace(/%([0-9a-f][0-9a-f])/gi,((e,t)=>String.fromCharCode(parseInt(t,16))))))};let t=e.body;return r&&(t=r(e.body,e)),Promise.resolve(t)}catch(e){dr.throwError("processing response error",O.errors.SERVER_ERROR,{body:fr(f[1],f[2]),error:e,requestBody:null,requestMethod:"GET",url:c})}var p;t&&(l.method="POST",l.body=t,null==a["content-type"]&&(a["content-type"]={key:"Content-Type",value:"application/octet-stream"}),null==a["content-length"]&&(a["content-length"]={key:"Content-Length",value:String(t.length)}));const m={};Object.keys(a).forEach((e=>{const t=a[e];m[t.key]=t.value})),l.headers=m;const g=function(){let e=null;return{promise:new Promise((function(t,r){d&&(e=setTimeout((()=>{null!=e&&(e=null,r(dr.makeError("timeout",O.errors.TIMEOUT,{requestBody:fr(l.body,m["content-type"]),requestMethod:l.method,timeout:d,url:c})))}),d))})),cancel:function(){null!=e&&(clearTimeout(e),e=null)}}}(),y=function(){return ur(this,void 0,void 0,(function*(){for(let e=0;e<n;e++){let t=null;try{if(t=yield lr(c,l),e<n)if(301===t.statusCode||302===t.statusCode){const e=t.headers.location||"";if("GET"===l.method&&e.match(/^https:/)){c=t.headers.location;continue}}else if(429===t.statusCode){let r=!0;if(i&&(r=yield i(e,c)),r){let r=0;const n=t.headers["retry-after"];r="string"==typeof n&&n.match(/^[1-9][0-9]*$/)?1e3*parseInt(n):s*parseInt(String(Math.random()*Math.pow(2,e))),yield hr(r);continue}}}catch(e){t=e.response,null==t&&(g.cancel(),dr.throwError("missing response",O.errors.SERVER_ERROR,{requestBody:fr(l.body,m["content-type"]),requestMethod:l.method,serverError:e,url:c}))}let a=t.body;if(u&&304===t.statusCode?a=null:!o&&(t.statusCode<200||t.statusCode>=300)&&(g.cancel(),dr.throwError("bad response",O.errors.SERVER_ERROR,{status:t.statusCode,headers:t.headers,body:fr(a,t.headers?t.headers["content-type"]:null),requestBody:fr(l.body,m["content-type"]),requestMethod:l.method,url:c})),r)try{const e=yield r(a,t);return g.cancel(),e}catch(r){if(r.throttleRetry&&e<n){let t=!0;if(i&&(t=yield i(e,c)),t){const t=s*parseInt(String(Math.random()*Math.pow(2,e)));yield hr(t);continue}}g.cancel(),dr.throwError("processing response error",O.errors.SERVER_ERROR,{body:fr(a,t.headers?t.headers["content-type"]:null),error:r,requestBody:fr(l.body,m["content-type"]),requestMethod:l.method,url:c})}return g.cancel(),a}return dr.throwError("failed response",O.errors.SERVER_ERROR,{requestBody:fr(l.body,m["content-type"]),requestMethod:l.method,url:c})}))}();return Promise.race([g.promise,y])}(e,n,((e,t)=>{let n=null;if(null!=e)try{n=JSON.parse(tt(e))}catch(t){dr.throwError("invalid JSON",O.errors.SERVER_ERROR,{body:e,error:t})}return r&&(n=r(n,t)),n}))}function mr(e,t){return t||(t={}),null==(t=we(t)).floor&&(t.floor=0),null==t.ceiling&&(t.ceiling=1e4),null==t.interval&&(t.interval=250),new Promise((function(r,n){let i=null,s=!1;const o=()=>!s&&(s=!0,i&&clearTimeout(i),!0);t.timeout&&(i=setTimeout((()=>{o()&&n(new Error("timeout"))}),t.timeout));const a=t.retryLimit;let c=0;!function i(){return e().then((function(e){if(void 0!==e)o()&&r(e);else if(t.oncePoll)t.oncePoll.once("poll",i);else if(t.onceBlock)t.onceBlock.once("block",i);else if(!s){if(c++,c>a)return void(o()&&n(new Error("retry limit reached")));let e=t.interval*parseInt(String(Math.random()*Math.pow(2,c)));e<t.floor&&(e=t.floor),e>t.ceiling&&(e=t.ceiling),setTimeout(i,e)}return null}),(function(e){o()&&n(e)}))}()}))}const gr="providers/5.7.2";function yr(e,t,r){return r={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==t&&r.path)}},e(r,r.exports),r.exports}var Ar=vr;function vr(e,t){if(!e)throw new Error(t||"Assertion failed")}vr.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)};var br=yr((function(e,t){var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r<e.length;r++)t+=n(e[r].toString(16));return t}r.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"!=typeof e){for(var n=0;n<e.length;n++)r[n]=0|e[n];return r}if("hex"===t){(e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e);for(n=0;n<e.length;n+=2)r.push(parseInt(e[n]+e[n+1],16))}else for(n=0;n<e.length;n++){var i=e.charCodeAt(n),s=i>>8,o=255&i;s?r.push(s,o):r.push(o)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}})),Er=yr((function(e,t){var n=t;n.assert=Ar,n.toArray=br.toArray,n.zero2=br.zero2,n.toHex=br.toHex,n.encode=br.encode,n.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var i=1<<t+1,s=e.clone(),o=0;o<n.length;o++){var a,c=s.andln(i-1);s.isOdd()?(a=c>(i>>1)-1?(i>>1)-c:c,s.isubn(a)):a=0,n[o]=a,s.iushrn(1)}return n},n.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n,i=0,s=0;e.cmpn(-i)>0||t.cmpn(-s)>0;){var o,a,c=e.andln(3)+i&3,l=t.andln(3)+s&3;3===c&&(c=-1),3===l&&(l=-1),o=1&c?3!==(n=e.andln(7)+i&7)&&5!==n||2!==l?c:-c:0,r[0].push(o),a=1&l?3!==(n=t.andln(7)+s&7)&&5!==n||2!==c?l:-l:0,r[1].push(a),2*i===o+1&&(i=1-i),2*s===a+1&&(s=1-s),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"==typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new r(e,"hex","le")}})),wr=Er.getNAF,Pr=Er.getJSF,Ir=Er.assert;function Tr(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}var Br=Tr;function _r(e,t){this.curve=e,this.type=t,this.precomputed=null}Tr.prototype.point=function(){throw new Error("Not implemented")},Tr.prototype.validate=function(){throw new Error("Not implemented")},Tr.prototype._fixedNafMul=function(e,t){Ir(e.precomputed);var r=e._getDoubles(),n=wr(t,1,this._bitLength),i=(1<<r.step+1)-(r.step%2==0?2:1);i/=3;var s,o,a=[];for(s=0;s<n.length;s+=r.step){o=0;for(var c=s+r.step-1;c>=s;c--)o=(o<<1)+n[c];a.push(o)}for(var l=this.jpoint(null,null,null),u=this.jpoint(null,null,null),d=i;d>0;d--){for(s=0;s<a.length;s++)(o=a[s])===d?u=u.mixedAdd(r.points[s]):o===-d&&(u=u.mixedAdd(r.points[s].neg()));l=l.add(u)}return l.toP()},Tr.prototype._wnafMul=function(e,t){var r=4,n=e._getNAFPoints(r);r=n.wnd;for(var i=n.points,s=wr(t,r,this._bitLength),o=this.jpoint(null,null,null),a=s.length-1;a>=0;a--){for(var c=0;a>=0&&0===s[a];a--)c++;if(a>=0&&c++,o=o.dblp(c),a<0)break;var l=s[a];Ir(0!==l),o="affine"===e.type?l>0?o.mixedAdd(i[l-1>>1]):o.mixedAdd(i[-l-1>>1].neg()):l>0?o.add(i[l-1>>1]):o.add(i[-l-1>>1].neg())}return"affine"===e.type?o.toP():o},Tr.prototype._wnafMulAdd=function(e,t,r,n,i){var s,o,a,c=this._wnafT1,l=this._wnafT2,u=this._wnafT3,d=0;for(s=0;s<n;s++){var h=(a=t[s])._getNAFPoints(e);c[s]=h.wnd,l[s]=h.points}for(s=n-1;s>=1;s-=2){var f=s-1,p=s;if(1===c[f]&&1===c[p]){var m=[t[f],null,null,t[p]];0===t[f].y.cmp(t[p].y)?(m[1]=t[f].add(t[p]),m[2]=t[f].toJ().mixedAdd(t[p].neg())):0===t[f].y.cmp(t[p].y.redNeg())?(m[1]=t[f].toJ().mixedAdd(t[p]),m[2]=t[f].add(t[p].neg())):(m[1]=t[f].toJ().mixedAdd(t[p]),m[2]=t[f].toJ().mixedAdd(t[p].neg()));var g=[-3,-1,-5,-7,0,7,5,1,3],y=Pr(r[f],r[p]);for(d=Math.max(y[0].length,d),u[f]=new Array(d),u[p]=new Array(d),o=0;o<d;o++){var A=0|y[0][o],v=0|y[1][o];u[f][o]=g[3*(A+1)+(v+1)],u[p][o]=0,l[f]=m}}else u[f]=wr(r[f],c[f],this._bitLength),u[p]=wr(r[p],c[p],this._bitLength),d=Math.max(u[f].length,d),d=Math.max(u[p].length,d)}var b=this.jpoint(null,null,null),E=this._wnafT4;for(s=d;s>=0;s--){for(var w=0;s>=0;){var P=!0;for(o=0;o<n;o++)E[o]=0|u[o][s],0!==E[o]&&(P=!1);if(!P)break;w++,s--}if(s>=0&&w++,b=b.dblp(w),s<0)break;for(o=0;o<n;o++){var I=E[o];0!==I&&(I>0?a=l[o][I-1>>1]:I<0&&(a=l[o][-I-1>>1].neg()),b="affine"===a.type?b.mixedAdd(a):b.add(a))}}for(s=0;s<n;s++)l[s]=null;return i?b:b.toP()},Tr.BasePoint=_r,_r.prototype.eq=function(){throw new Error("Not implemented")},_r.prototype.validate=function(){return this.curve.validate(this)},Tr.prototype.decodePoint=function(e,t){e=Er.toArray(e,t);var r=this.p.byteLength();if((4===e[0]||6===e[0]||7===e[0])&&e.length-1==2*r)return 6===e[0]?Ir(e[e.length-1]%2==0):7===e[0]&&Ir(e[e.length-1]%2==1),this.point(e.slice(1,1+r),e.slice(1+r,1+2*r));if((2===e[0]||3===e[0])&&e.length-1===r)return this.pointFromX(e.slice(1,1+r),3===e[0]);throw new Error("Unknown point format")},_r.prototype.encodeCompressed=function(e){return this.encode(e,!0)},_r.prototype._encode=function(e){var t=this.curve.p.byteLength(),r=this.getX().toArray("be",t);return e?[this.getY().isEven()?2:3].concat(r):[4].concat(r,this.getY().toArray("be",t))},_r.prototype.encode=function(e,t){return Er.encode(this._encode(t),e)},_r.prototype.precompute=function(e){if(this.precomputed)return this;var t={doubles:null,naf:null,beta:null};return t.naf=this._getNAFPoints(8),t.doubles=this._getDoubles(4,e),t.beta=this._getBeta(),this.precomputed=t,this},_r.prototype._hasDoubles=function(e){if(!this.precomputed)return!1;var t=this.precomputed.doubles;return!!t&&t.points.length>=Math.ceil((e.bitLength()+1)/t.step)},_r.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i<t;i+=e){for(var s=0;s<e;s++)n=n.dbl();r.push(n)}return{step:e,points:r}},_r.prototype._getNAFPoints=function(e){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var t=[this],r=(1<<e)-1,n=1===r?null:this.dbl(),i=1;i<r;i++)t[i]=t[i-1].add(n);return{wnd:e,points:t}},_r.prototype._getBeta=function(){return null},_r.prototype.dblp=function(e){for(var t=this,r=0;r<e;r++)t=t.dbl();return t};var Or=yr((function(e){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}})),Dr=Er.assert;function Cr(e){Br.call(this,"short",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}Or(Cr,Br);var Nr=Cr;function kr(e,t,n,i){Br.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new r(t,16),this.y=new r(n,16),i&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function xr(e,t,n,i){Br.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===i?(this.x=this.curve.one,this.y=this.curve.one,this.z=new r(0)):(this.x=new r(t,16),this.y=new r(n,16),this.z=new r(i,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}Cr.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new r(e.beta,16).toRed(this.red);else{var i=this._getEndoRoots(this.p);t=(t=i[0].cmp(i[1])<0?i[0]:i[1]).toRed(this.red)}if(e.lambda)n=new r(e.lambda,16);else{var s=this._getEndoRoots(this.n);0===this.g.mul(s[0]).x.cmp(this.g.x.redMul(t))?n=s[0]:(n=s[1],Dr(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new r(e.a,16),b:new r(e.b,16)}})):this._getEndoBasis(n)}}},Cr.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:r.mont(e),n=new r(2).toRed(t).redInvm(),i=n.redNeg(),s=new r(3).toRed(t).redNeg().redSqrt().redMul(n);return[i.redAdd(s).fromRed(),i.redSub(s).fromRed()]},Cr.prototype._getEndoBasis=function(e){for(var t,n,i,s,o,a,c,l,u,d=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,f=this.n.clone(),p=new r(1),m=new r(0),g=new r(0),y=new r(1),A=0;0!==h.cmpn(0);){var v=f.div(h);l=f.sub(v.mul(h)),u=g.sub(v.mul(p));var b=y.sub(v.mul(m));if(!i&&l.cmp(d)<0)t=c.neg(),n=p,i=l.neg(),s=u;else if(i&&2==++A)break;c=l,f=h,h=l,g=p,p=u,y=m,m=b}o=l.neg(),a=u;var E=i.sqr().add(s.sqr());return o.sqr().add(a.sqr()).cmp(E)>=0&&(o=t,a=n),i.negative&&(i=i.neg(),s=s.neg()),o.negative&&(o=o.neg(),a=a.neg()),[{a:i,b:s},{a:o,b:a}]},Cr.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),s=r.b.neg().mul(e).divRound(this.n),o=i.mul(r.a),a=s.mul(n.a),c=i.mul(r.b),l=s.mul(n.b);return{k1:e.sub(o).sub(a),k2:c.add(l).neg()}},Cr.prototype.pointFromX=function(e,t){(e=new r(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),i=n.redSqrt();if(0!==i.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var s=i.fromRed().isOdd();return(t&&!s||!t&&s)&&(i=i.redNeg()),this.point(e,i)},Cr.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},Cr.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,s=0;s<e.length;s++){var o=this._endoSplit(t[s]),a=e[s],c=a._getBeta();o.k1.negative&&(o.k1.ineg(),a=a.neg(!0)),o.k2.negative&&(o.k2.ineg(),c=c.neg(!0)),n[2*s]=a,n[2*s+1]=c,i[2*s]=o.k1,i[2*s+1]=o.k2}for(var l=this._wnafMulAdd(1,n,i,2*s,r),u=0;u<2*s;u++)n[u]=null,i[u]=null;return l},Or(kr,Br.BasePoint),Cr.prototype.point=function(e,t,r){return new kr(this,e,t,r)},Cr.prototype.pointFromJSON=function(e,t){return kr.fromJSON(this,e,t)},kr.prototype._getBeta=function(){if(this.curve.endo){var e=this.precomputed;if(e&&e.beta)return e.beta;var t=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(e){var r=this.curve,n=function(e){return r.point(e.x.redMul(r.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(n)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(n)}}}return t}},kr.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},kr.fromJSON=function(e,t,r){"string"==typeof t&&(t=JSON.parse(t));var n=e.point(t[0],t[1],r);if(!t[2])return n;function i(t){return e.point(t[0],t[1],r)}var s=t[2];return n.precomputed={beta:null,doubles:s.doubles&&{step:s.doubles.step,points:[n].concat(s.doubles.points.map(i))},naf:s.naf&&{wnd:s.naf.wnd,points:[n].concat(s.naf.points.map(i))}},n},kr.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},kr.prototype.isInfinity=function(){return this.inf},kr.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},kr.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),s=i.redSqr().redISub(this.x.redAdd(this.x)),o=i.redMul(this.x.redSub(s)).redISub(this.y);return this.curve.point(s,o)},kr.prototype.getX=function(){return this.x.fromRed()},kr.prototype.getY=function(){return this.y.fromRed()},kr.prototype.mul=function(e){return e=new r(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},kr.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},kr.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},kr.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},kr.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},kr.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},Or(xr,Br.BasePoint),Cr.prototype.jpoint=function(e,t,r){return new xr(this,e,t,r)},xr.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},xr.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},xr.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),s=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(r.redMul(this.z)),a=n.redSub(i),c=s.redSub(o);if(0===a.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=a.redSqr(),u=l.redMul(a),d=n.redMul(l),h=c.redSqr().redIAdd(u).redISub(d).redISub(d),f=c.redMul(d.redISub(h)).redISub(s.redMul(u)),p=this.z.redMul(e.z).redMul(a);return this.curve.jpoint(h,f,p)},xr.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,s=e.y.redMul(t).redMul(this.z),o=r.redSub(n),a=i.redSub(s);if(0===o.cmpn(0))return 0!==a.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=o.redSqr(),l=c.redMul(o),u=r.redMul(c),d=a.redSqr().redIAdd(l).redISub(u).redISub(u),h=a.redMul(u.redISub(d)).redISub(i.redMul(l)),f=this.z.redMul(o);return this.curve.jpoint(d,h,f)},xr.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t<e;t++)r=r.dbl();return r}var n=this.curve.a,i=this.curve.tinv,s=this.x,o=this.y,a=this.z,c=a.redSqr().redSqr(),l=o.redAdd(o);for(t=0;t<e;t++){var u=s.redSqr(),d=l.redSqr(),h=d.redSqr(),f=u.redAdd(u).redIAdd(u).redIAdd(n.redMul(c)),p=s.redMul(d),m=f.redSqr().redISub(p.redAdd(p)),g=p.redISub(m),y=f.redMul(g);y=y.redIAdd(y).redISub(h);var A=l.redMul(a);t+1<e&&(c=c.redMul(h)),s=m,a=A,l=y}return this.curve.jpoint(s,l.redMul(i),a)},xr.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},xr.prototype._zeroDbl=function(){var e,t,r;if(this.zOne){var n=this.x.redSqr(),i=this.y.redSqr(),s=i.redSqr(),o=this.x.redAdd(i).redSqr().redISub(n).redISub(s);o=o.redIAdd(o);var a=n.redAdd(n).redIAdd(n),c=a.redSqr().redISub(o).redISub(o),l=s.redIAdd(s);l=(l=l.redIAdd(l)).redIAdd(l),e=c,t=a.redMul(o.redISub(c)).redISub(l),r=this.y.redAdd(this.y)}else{var u=this.x.redSqr(),d=this.y.redSqr(),h=d.redSqr(),f=this.x.redAdd(d).redSqr().redISub(u).redISub(h);f=f.redIAdd(f);var p=u.redAdd(u).redIAdd(u),m=p.redSqr(),g=h.redIAdd(h);g=(g=g.redIAdd(g)).redIAdd(g),e=m.redISub(f).redISub(f),t=p.redMul(f.redISub(e)).redISub(g),r=(r=this.y.redMul(this.z)).redIAdd(r)}return this.curve.jpoint(e,t,r)},xr.prototype._threeDbl=function(){var e,t,r;if(this.zOne){var n=this.x.redSqr(),i=this.y.redSqr(),s=i.redSqr(),o=this.x.redAdd(i).redSqr().redISub(n).redISub(s);o=o.redIAdd(o);var a=n.redAdd(n).redIAdd(n).redIAdd(this.curve.a),c=a.redSqr().redISub(o).redISub(o);e=c;var l=s.redIAdd(s);l=(l=l.redIAdd(l)).redIAdd(l),t=a.redMul(o.redISub(c)).redISub(l),r=this.y.redAdd(this.y)}else{var u=this.z.redSqr(),d=this.y.redSqr(),h=this.x.redMul(d),f=this.x.redSub(u).redMul(this.x.redAdd(u));f=f.redAdd(f).redIAdd(f);var p=h.redIAdd(h),m=(p=p.redIAdd(p)).redAdd(p);e=f.redSqr().redISub(m),r=this.y.redAdd(this.z).redSqr().redISub(d).redISub(u);var g=d.redSqr();g=(g=(g=g.redIAdd(g)).redIAdd(g)).redIAdd(g),t=f.redMul(p.redISub(e)).redISub(g)}return this.curve.jpoint(e,t,r)},xr.prototype._dbl=function(){var e=this.curve.a,t=this.x,r=this.y,n=this.z,i=n.redSqr().redSqr(),s=t.redSqr(),o=r.redSqr(),a=s.redAdd(s).redIAdd(s).redIAdd(e.redMul(i)),c=t.redAdd(t),l=(c=c.redIAdd(c)).redMul(o),u=a.redSqr().redISub(l.redAdd(l)),d=l.redISub(u),h=o.redSqr();h=(h=(h=h.redIAdd(h)).redIAdd(h)).redIAdd(h);var f=a.redMul(d).redISub(h),p=r.redAdd(r).redMul(n);return this.curve.jpoint(u,f,p)},xr.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr(),n=t.redSqr(),i=e.redAdd(e).redIAdd(e),s=i.redSqr(),o=this.x.redAdd(t).redSqr().redISub(e).redISub(n),a=(o=(o=(o=o.redIAdd(o)).redAdd(o).redIAdd(o)).redISub(s)).redSqr(),c=n.redIAdd(n);c=(c=(c=c.redIAdd(c)).redIAdd(c)).redIAdd(c);var l=i.redIAdd(o).redSqr().redISub(s).redISub(a).redISub(c),u=t.redMul(l);u=(u=u.redIAdd(u)).redIAdd(u);var d=this.x.redMul(a).redISub(u);d=(d=d.redIAdd(d)).redIAdd(d);var h=this.y.redMul(l.redMul(c.redISub(l)).redISub(o.redMul(a)));h=(h=(h=h.redIAdd(h)).redIAdd(h)).redIAdd(h);var f=this.z.redAdd(o).redSqr().redISub(r).redISub(a);return this.curve.jpoint(d,h,f)},xr.prototype.mul=function(e,t){return e=new r(e,t),this.curve._wnafMul(this,e)},xr.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),r=e.z.redSqr();if(0!==this.x.redMul(r).redISub(e.x.redMul(t)).cmpn(0))return!1;var n=t.redMul(this.z),i=r.redMul(e.z);return 0===this.y.redMul(i).redISub(e.y.redMul(n)).cmpn(0)},xr.prototype.eqXToP=function(e){var t=this.z.redSqr(),r=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(r))return!0;for(var n=e.clone(),i=this.curve.redN.redMul(t);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},xr.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},xr.prototype.isInfinity=function(){return 0===this.z.cmpn(0)};var Rr=yr((function(e,t){var r=t;r.base=Br,r.short=Nr,r.mont=null,r.edwards=null})),Sr=yr((function(e,t){var r,i=t,s=Er.assert;function o(e){"short"===e.type?this.curve=new Rr.short(e):"edwards"===e.type?this.curve=new Rr.edwards(e):this.curve=new Rr.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function a(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new o(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=o,a("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:n.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),a("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:n.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),a("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:n.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),a("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:n.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),a("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:n.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),a("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:n.sha256,gRed:!1,g:["9"]}),a("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:n.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=null.crash()}catch(e){r=void 0}a("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:n.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})}));function Fr(e){if(!(this instanceof Fr))return new Fr(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=br.toArray(e.entropy,e.entropyEnc||"hex"),r=br.toArray(e.nonce,e.nonceEnc||"hex"),n=br.toArray(e.pers,e.persEnc||"hex");Ar(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}var Lr=Fr;Fr.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i<this.V.length;i++)this.K[i]=0,this.V[i]=1;this._update(n),this._reseed=1,this.reseedInterval=281474976710656},Fr.prototype._hmac=function(){return new n.hmac(this.hash,this.K)},Fr.prototype._update=function(e){var t=this._hmac().update(this.V).update([0]);e&&(t=t.update(e)),this.K=t.digest(),this.V=this._hmac().update(this.V).digest(),e&&(this.K=this._hmac().update(this.V).update([1]).update(e).digest(),this.V=this._hmac().update(this.V).digest())},Fr.prototype.reseed=function(e,t,r,n){"string"!=typeof t&&(n=r,r=t,t=null),e=br.toArray(e,t),r=br.toArray(r,n),Ar(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},Fr.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=br.toArray(r,n||"hex"),this._update(r));for(var i=[];i.length<e;)this.V=this._hmac().update(this.V).digest(),i=i.concat(this.V);var s=i.slice(0,e);return this._update(r),this._reseed++,br.encode(s,t)};var qr=Er.assert;function Mr(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}var Ur=Mr;Mr.fromPublic=function(e,t,r){return t instanceof Mr?t:new Mr(e,{pub:t,pubEnc:r})},Mr.fromPrivate=function(e,t,r){return t instanceof Mr?t:new Mr(e,{priv:t,privEnc:r})},Mr.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},Mr.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},Mr.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},Mr.prototype._importPrivate=function(e,t){this.priv=new r(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},Mr.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?qr(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||qr(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},Mr.prototype.derive=function(e){return e.validate()||qr(e.validate(),"public point not validated"),e.mul(this.priv).getX()},Mr.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},Mr.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},Mr.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"};var Vr=Er.assert;function jr(e,t){if(e instanceof jr)return e;this._importDER(e,t)||(Vr(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}var Qr=jr;function Hr(){this.place=0}function Gr(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,s=0,o=t.place;s<n;s++,o++)i<<=8,i|=e[o],i>>>=0;return!(i<=127)&&(t.place=o,i)}function Yr(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t<r;)t++;return 0===t?e:e.slice(t)}function $r(e,t){if(t<128)e.push(t);else{var r=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}jr.prototype._importDER=function(e,t){e=Er.toArray(e,t);var n=new Hr;if(48!==e[n.place++])return!1;var i=Gr(e,n);if(!1===i)return!1;if(i+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var s=Gr(e,n);if(!1===s)return!1;var o=e.slice(n.place,s+n.place);if(n.place+=s,2!==e[n.place++])return!1;var a=Gr(e,n);if(!1===a)return!1;if(e.length!==a+n.place)return!1;var c=e.slice(n.place,a+n.place);if(0===o[0]){if(!(128&o[1]))return!1;o=o.slice(1)}if(0===c[0]){if(!(128&c[1]))return!1;c=c.slice(1)}return this.r=new r(o),this.s=new r(c),this.recoveryParam=null,!0},jr.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=Yr(t),r=Yr(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];$r(n,t.length),(n=n.concat(t)).push(2),$r(n,r.length);var i=n.concat(r),s=[48];return $r(s,i.length),s=s.concat(i),Er.encode(s,e)};var Kr=function(){throw new Error("unsupported")},zr=Er.assert;function Xr(e){if(!(this instanceof Xr))return new Xr(e);"string"==typeof e&&(zr(Object.prototype.hasOwnProperty.call(Sr,e),"Unknown curve "+e),e=Sr[e]),e instanceof Sr.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}var Jr=Xr;Xr.prototype.keyPair=function(e){return new Ur(this,e)},Xr.prototype.keyFromPrivate=function(e,t){return Ur.fromPrivate(this,e,t)},Xr.prototype.keyFromPublic=function(e,t){return Ur.fromPublic(this,e,t)},Xr.prototype.genKeyPair=function(e){e||(e={});for(var t=new Lr({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||Kr(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),i=this.n.sub(new r(2));;){var s=new r(t.generate(n));if(!(s.cmp(i)>0))return s.iaddn(1),this.keyFromPrivate(s)}},Xr.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},Xr.prototype.sign=function(e,t,n,i){"object"==typeof n&&(i=n,n=null),i||(i={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new r(e,16));for(var s=this.n.byteLength(),o=t.getPrivate().toArray("be",s),a=e.toArray("be",s),c=new Lr({hash:this.hash,entropy:o,nonce:a,pers:i.pers,persEnc:i.persEnc||"utf8"}),l=this.n.sub(new r(1)),u=0;;u++){var d=i.k?i.k(u):new r(c.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(l)>=0)){var h=this.g.mul(d);if(!h.isInfinity()){var f=h.getX(),p=f.umod(this.n);if(0!==p.cmpn(0)){var m=d.invm(this.n).mul(p.mul(t.getPrivate()).iadd(e));if(0!==(m=m.umod(this.n)).cmpn(0)){var g=(h.getY().isOdd()?1:0)|(0!==f.cmp(p)?2:0);return i.canonical&&m.cmp(this.nh)>0&&(m=this.n.sub(m),g^=1),new Qr({r:p,s:m,recoveryParam:g})}}}}}},Xr.prototype.verify=function(e,t,n,i){e=this._truncateToN(new r(e,16)),n=this.keyFromPublic(n,i);var s=(t=new Qr(t,"hex")).r,o=t.s;if(s.cmpn(1)<0||s.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var a,c=o.invm(this.n),l=c.mul(e).umod(this.n),u=c.mul(s).umod(this.n);return this.curve._maxwellTrick?!(a=this.g.jmulAdd(l,n.getPublic(),u)).isInfinity()&&a.eqXToP(s):!(a=this.g.mulAdd(l,n.getPublic(),u)).isInfinity()&&0===a.getX().umod(this.n).cmp(s)},Xr.prototype.recoverPubKey=function(e,t,n,i){zr((3&n)===n,"The recovery param is more than two bits"),t=new Qr(t,i);var s=this.n,o=new r(e),a=t.r,c=t.s,l=1&n,u=n>>1;if(a.cmp(this.curve.p.umod(this.curve.n))>=0&&u)throw new Error("Unable to find sencond key candinate");a=u?this.curve.pointFromX(a.add(this.curve.n),l):this.curve.pointFromX(a,l);var d=t.r.invm(s),h=s.sub(o).mul(d).umod(s),f=c.mul(d).umod(s);return this.g.mulAdd(h,a,f)},Xr.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new Qr(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var s;try{s=this.recoverPubKey(e,t,i)}catch(e){continue}if(s.eq(r))return i}throw new Error("Unable to find valid recovery factor")};var Wr=yr((function(e,t){var r=t;r.version="6.5.4",r.utils=Er,r.rand=function(){throw new Error("unsupported")},r.curve=Rr,r.curves=Sr,r.ec=Jr,r.eddsa=null})).ec;const Zr=new O("signing-key/5.7.0");let en=null;function tn(){return en||(en=new Wr("secp256k1")),en}class rn{constructor(e){ve(this,"curve","secp256k1"),ve(this,"privateKey",U(e)),32!==V(this.privateKey)&&Zr.throwArgumentError("invalid private key","privateKey","[[ REDACTED ]]");const t=tn().keyFromPrivate(S(this.privateKey));ve(this,"publicKey","0x"+t.getPublic(!1,"hex")),ve(this,"compressedPublicKey","0x"+t.getPublic(!0,"hex")),ve(this,"_isSigningKey",!0)}_addPoint(e){const t=tn().keyFromPublic(S(this.publicKey)),r=tn().keyFromPublic(S(e));return"0x"+t.pub.add(r.pub).encodeCompressed("hex")}signDigest(e){const t=tn().keyFromPrivate(S(this.privateKey)),r=S(e);32!==r.length&&Zr.throwArgumentError("bad digest length","digest",e);const n=t.sign(r,{canonical:!0});return Y({recoveryParam:n.recoveryParam,r:G("0x"+n.r.toString(16),32),s:G("0x"+n.s.toString(16),32)})}computeSharedSecret(e){const t=tn().keyFromPrivate(S(this.privateKey)),r=tn().keyFromPublic(S(nn(e)));return G("0x"+t.derive(r.getPublic()).toString(16),32)}static isSigningKey(e){return!(!e||!e._isSigningKey)}}function nn(e,t){const r=S(e);if(32===r.length){return new rn(r).publicKey}return 33===r.length?"0x"+tn().keyFromPublic(r).getPublic(!1,"hex"):65===r.length?U(r):Zr.throwArgumentError("invalid public or private key","key","[REDACTED]")}const sn=new O("transactions/5.7.0");var on;function an(e){return"0x"===e?null:Qt(e)}function cn(e){return"0x"===e?He:Z.from(e)}function ln(e,t){return function(e){return Qt(j($e(j(nn(e),1)),12))}(function(e,t){const r=Y(t),n={r:S(r.r),s:S(r.s)};return"0x"+tn().recoverPubKey(S(e),n,r.recoveryParam).encode("hex",!1)}(S(e),t))}function un(e,t){const r=L(Z.from(e).toHexString());return r.length>32&&sn.throwArgumentError("invalid length for "+t,"transaction:"+t,e),r}function dn(e,t){return{address:Qt(e),storageKeys:(t||[]).map(((t,r)=>(32!==V(t)&&sn.throwArgumentError("invalid access list storageKey",`accessList[${e}:${r}]`,t),t.toLowerCase())))}}function hn(e){if(Array.isArray(e))return e.map(((e,t)=>Array.isArray(e)?(e.length>2&&sn.throwArgumentError("access list expected to be [ address, storageKeys[] ]",`value[${t}]`,e),dn(e[0],e[1])):dn(e.address,e.storageKeys)));const t=Object.keys(e).map((t=>{const r=e[t].reduce(((e,t)=>(e[t]=!0,e)),{});return dn(t,Object.keys(r).sort())}));return t.sort(((e,t)=>e.address.localeCompare(t.address))),t}function fn(e){return hn(e).map((e=>[e.address,e.storageKeys]))}function pn(e,t){if(null!=e.gasPrice){const t=Z.from(e.gasPrice),r=Z.from(e.maxFeePerGas||0);t.eq(r)||sn.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:t,maxFeePerGas:r})}const r=[un(e.chainId||0,"chainId"),un(e.nonce||0,"nonce"),un(e.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),un(e.maxFeePerGas||0,"maxFeePerGas"),un(e.gasLimit||0,"gasLimit"),null!=e.to?Qt(e.to):"0x",un(e.value||0,"value"),e.data||"0x",fn(e.accessList||[])];if(t){const e=Y(t);r.push(un(e.recoveryParam,"recoveryParam")),r.push(L(e.r)),r.push(L(e.s))}return Q(["0x02",Rt(r)])}function mn(e,t){const r=[un(e.chainId||0,"chainId"),un(e.nonce||0,"nonce"),un(e.gasPrice||0,"gasPrice"),un(e.gasLimit||0,"gasLimit"),null!=e.to?Qt(e.to):"0x",un(e.value||0,"value"),e.data||"0x",fn(e.accessList||[])];if(t){const e=Y(t);r.push(un(e.recoveryParam,"recoveryParam")),r.push(L(e.r)),r.push(L(e.s))}return Q(["0x01",Rt(r)])}function gn(e,t,r){try{const r=cn(t[0]).toNumber();if(0!==r&&1!==r)throw new Error("bad recid");e.v=r}catch(e){sn.throwArgumentError("invalid v for transaction type: 1","v",t[0])}e.r=G(t[1],32),e.s=G(t[2],32);try{const t=$e(r(e));e.from=ln(t,{r:e.r,s:e.s,recoveryParam:e.v})}catch(e){}}function yn(e){const t=S(e);if(t[0]>127)return function(e){const t=Lt(e);9!==t.length&&6!==t.length&&sn.throwArgumentError("invalid raw transaction","rawTransaction",e);const r={nonce:cn(t[0]).toNumber(),gasPrice:cn(t[1]),gasLimit:cn(t[2]),to:an(t[3]),value:cn(t[4]),data:t[5],chainId:0};if(6===t.length)return r;try{r.v=Z.from(t[6]).toNumber()}catch(e){return r}if(r.r=G(t[7],32),r.s=G(t[8],32),Z.from(r.r).isZero()&&Z.from(r.s).isZero())r.chainId=r.v,r.v=0;else{r.chainId=Math.floor((r.v-35)/2),r.chainId<0&&(r.chainId=0);let n=r.v-27;const i=t.slice(0,6);0!==r.chainId&&(i.push(U(r.chainId)),i.push("0x"),i.push("0x"),n-=2*r.chainId+8);const s=$e(Rt(i));try{r.from=ln(s,{r:U(r.r),s:U(r.s),recoveryParam:n})}catch(e){}r.hash=$e(e)}return r.type=null,r}(t);switch(t[0]){case 1:return function(e){const t=Lt(e.slice(1));8!==t.length&&11!==t.length&&sn.throwArgumentError("invalid component count for transaction type: 1","payload",U(e));const r={type:1,chainId:cn(t[0]).toNumber(),nonce:cn(t[1]).toNumber(),gasPrice:cn(t[2]),gasLimit:cn(t[3]),to:an(t[4]),value:cn(t[5]),data:t[6],accessList:hn(t[7])};return 8===t.length||(r.hash=$e(e),gn(r,t.slice(8),mn)),r}(t);case 2:return function(e){const t=Lt(e.slice(1));9!==t.length&&12!==t.length&&sn.throwArgumentError("invalid component count for transaction type: 2","payload",U(e));const r=cn(t[2]),n=cn(t[3]),i={type:2,chainId:cn(t[0]).toNumber(),nonce:cn(t[1]).toNumber(),maxPriorityFeePerGas:r,maxFeePerGas:n,gasPrice:null,gasLimit:cn(t[4]),to:an(t[5]),value:cn(t[6]),data:t[7],accessList:hn(t[8])};return 9===t.length||(i.hash=$e(e),gn(i,t.slice(9),pn)),i}(t)}return sn.throwError(`unsupported transaction type: ${t[0]}`,O.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:t[0]})}!function(e){e[e.legacy=0]="legacy",e[e.eip2930=1]="eip2930",e[e.eip1559=2]="eip1559"}(on||(on={}));const An=new O(gr);class vn{constructor(){this.formats=this.getDefaultFormats()}getDefaultFormats(){const e={},t=this.address.bind(this),r=this.bigNumber.bind(this),n=this.blockTag.bind(this),i=this.data.bind(this),s=this.hash.bind(this),o=this.hex.bind(this),a=this.number.bind(this),c=this.type.bind(this);return e.transaction={hash:s,type:c,accessList:vn.allowNull(this.accessList.bind(this),null),blockHash:vn.allowNull(s,null),blockNumber:vn.allowNull(a,null),transactionIndex:vn.allowNull(a,null),confirmations:vn.allowNull(a,null),from:t,gasPrice:vn.allowNull(r),maxPriorityFeePerGas:vn.allowNull(r),maxFeePerGas:vn.allowNull(r),gasLimit:r,to:vn.allowNull(t,null),value:r,nonce:a,data:i,r:vn.allowNull(this.uint256),s:vn.allowNull(this.uint256),v:vn.allowNull(a),creates:vn.allowNull(t,null),raw:vn.allowNull(i)},e.transactionRequest={from:vn.allowNull(t),nonce:vn.allowNull(a),gasLimit:vn.allowNull(r),gasPrice:vn.allowNull(r),maxPriorityFeePerGas:vn.allowNull(r),maxFeePerGas:vn.allowNull(r),to:vn.allowNull(t),value:vn.allowNull(r),data:vn.allowNull((e=>this.data(e,!0))),type:vn.allowNull(a),accessList:vn.allowNull(this.accessList.bind(this),null)},e.receiptLog={transactionIndex:a,blockNumber:a,transactionHash:s,address:t,topics:vn.arrayOf(s),data:i,logIndex:a,blockHash:s},e.receipt={to:vn.allowNull(this.address,null),from:vn.allowNull(this.address,null),contractAddress:vn.allowNull(t,null),transactionIndex:a,root:vn.allowNull(o),gasUsed:r,logsBloom:vn.allowNull(i),blockHash:s,transactionHash:s,logs:vn.arrayOf(this.receiptLog.bind(this)),blockNumber:a,confirmations:vn.allowNull(a,null),cumulativeGasUsed:r,effectiveGasPrice:vn.allowNull(r),status:vn.allowNull(a),type:c},e.block={hash:vn.allowNull(s),parentHash:s,number:a,timestamp:a,nonce:vn.allowNull(o),difficulty:this.difficulty.bind(this),gasLimit:r,gasUsed:r,miner:vn.allowNull(t),extraData:i,transactions:vn.allowNull(vn.arrayOf(s)),baseFeePerGas:vn.allowNull(r)},e.blockWithTransactions=we(e.block),e.blockWithTransactions.transactions=vn.allowNull(vn.arrayOf(this.transactionResponse.bind(this))),e.filter={fromBlock:vn.allowNull(n,void 0),toBlock:vn.allowNull(n,void 0),blockHash:vn.allowNull(s,void 0),address:vn.allowNull(t,void 0),topics:vn.allowNull(this.topics.bind(this),void 0)},e.filterLog={blockNumber:vn.allowNull(a),blockHash:vn.allowNull(s),transactionIndex:a,removed:vn.allowNull(this.boolean.bind(this)),address:t,data:vn.allowFalsish(i,"0x"),topics:vn.arrayOf(s),transactionHash:s,logIndex:a},e}accessList(e){return hn(e||[])}number(e){return"0x"===e?0:Z.from(e).toNumber()}type(e){return"0x"===e||null==e?0:Z.from(e).toNumber()}bigNumber(e){return Z.from(e)}boolean(e){if("boolean"==typeof e)return e;if("string"==typeof e){if("true"===(e=e.toLowerCase()))return!0;if("false"===e)return!1}throw new Error("invalid boolean - "+e)}hex(e,t){return"string"==typeof e&&(t||"0x"===e.substring(0,2)||(e="0x"+e),q(e))?e.toLowerCase():An.throwArgumentError("invalid hash","value",e)}data(e,t){const r=this.hex(e,t);if(r.length%2!=0)throw new Error("invalid data; odd-length - "+e);return r}address(e){return Qt(e)}callAddress(e){if(!q(e,32))return null;const t=Qt(j(e,12));return"0x0000000000000000000000000000000000000000"===t?null:t}contractAddress(e){return Ht(e)}blockTag(e){if(null==e)return"latest";if("earliest"===e)return"0x0";switch(e){case"earliest":return"0x0";case"latest":case"pending":case"safe":case"finalized":return e}if("number"==typeof e||q(e))return H(e);throw new Error("invalid blockTag")}hash(e,t){const r=this.hex(e,t);return 32!==V(r)?An.throwArgumentError("invalid hash","value",e):r}difficulty(e){if(null==e)return null;const t=Z.from(e);try{return t.toNumber()}catch(e){}return null}uint256(e){if(!q(e))throw new Error("invalid uint256");return G(e,32)}_block(e,t){null!=e.author&&null==e.miner&&(e.miner=e.author);const r=null!=e._difficulty?e._difficulty:e.difficulty,n=vn.check(t,e);return n._difficulty=null==r?null:Z.from(r),n}block(e){return this._block(e,this.formats.block)}blockWithTransactions(e){return this._block(e,this.formats.blockWithTransactions)}transactionRequest(e){return vn.check(this.formats.transactionRequest,e)}transactionResponse(e){null!=e.gas&&null==e.gasLimit&&(e.gasLimit=e.gas),e.to&&Z.from(e.to).isZero()&&(e.to="0x0000000000000000000000000000000000000000"),null!=e.input&&null==e.data&&(e.data=e.input),null==e.to&&null==e.creates&&(e.creates=this.contractAddress(e)),1!==e.type&&2!==e.type||null!=e.accessList||(e.accessList=[]);const t=vn.check(this.formats.transaction,e);if(null!=e.chainId){let r=e.chainId;q(r)&&(r=Z.from(r).toNumber()),t.chainId=r}else{let r=e.networkId;null==r&&null==t.v&&(r=e.chainId),q(r)&&(r=Z.from(r).toNumber()),"number"!=typeof r&&null!=t.v&&(r=(t.v-35)/2,r<0&&(r=0),r=parseInt(r)),"number"!=typeof r&&(r=0),t.chainId=r}return t.blockHash&&"x"===t.blockHash.replace(/0/g,"")&&(t.blockHash=null),t}transaction(e){return yn(e)}receiptLog(e){return vn.check(this.formats.receiptLog,e)}receipt(e){const t=vn.check(this.formats.receipt,e);if(null!=t.root)if(t.root.length<=4){const e=Z.from(t.root).toNumber();0===e||1===e?(null!=t.status&&t.status!==e&&An.throwArgumentError("alt-root-status/status mismatch","value",{root:t.root,status:t.status}),t.status=e,delete t.root):An.throwArgumentError("invalid alt-root-status","value.root",t.root)}else 66!==t.root.length&&An.throwArgumentError("invalid root hash","value.root",t.root);return null!=t.status&&(t.byzantium=!0),t}topics(e){return Array.isArray(e)?e.map((e=>this.topics(e))):null!=e?this.hash(e,!0):null}filter(e){return vn.check(this.formats.filter,e)}filterLog(e){return vn.check(this.formats.filterLog,e)}static check(e,t){const r={};for(const n in e)try{const i=e[n](t[n]);void 0!==i&&(r[n]=i)}catch(e){throw e.checkKey=n,e.checkValue=t[n],e}return r}static allowNull(e,t){return function(r){return null==r?t:e(r)}}static allowFalsish(e,t){return function(r){return r?e(r):t}}static arrayOf(e){return function(t){if(!Array.isArray(t))throw new Error("not an array");const r=[];return t.forEach((function(t){r.push(e(t))})),r}}}var bn=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const En=new O(gr);function wn(e){return null==e?"null":(32!==V(e)&&En.throwArgumentError("invalid topic","topic",e),e.toLowerCase())}function Pn(e){for(e=e.slice();e.length>0&&null==e[e.length-1];)e.pop();return e.map((e=>{if(Array.isArray(e)){const t={};e.forEach((e=>{t[wn(e)]=!0}));const r=Object.keys(t);return r.sort(),r.join("|")}return wn(e)})).join("&")}function In(e){if("string"==typeof e){if(32===V(e=e.toLowerCase()))return"tx:"+e;if(-1===e.indexOf(":"))return e}else{if(Array.isArray(e))return"filter:*:"+Pn(e);if(Ce.isForkEvent(e))throw En.warn("not implemented"),new Error("not implemented");if(e&&"object"==typeof e)return"filter:"+(e.address||"*")+":"+Pn(e.topics||[])}throw new Error("invalid event - "+e)}function Tn(){return(new Date).getTime()}function Bn(e){return new Promise((t=>{setTimeout(t,e)}))}const _n=["block","network","pending","poll"];class On{constructor(e,t,r){ve(this,"tag",e),ve(this,"listener",t),ve(this,"once",r),this._lastBlockNumber=-2,this._inflight=!1}get event(){switch(this.type){case"tx":return this.hash;case"filter":return this.filter}return this.tag}get type(){return this.tag.split(":")[0]}get hash(){const e=this.tag.split(":");return"tx"!==e[0]?null:e[1]}get filter(){const e=this.tag.split(":");if("filter"!==e[0])return null;const t=e[1],r=""===(n=e[2])?[]:n.split(/&/g).map((e=>{if(""===e)return[];const t=e.split("|").map((e=>"null"===e?null:e));return 1===t.length?t[0]:t}));var n;const i={};return r.length>0&&(i.topics=r),t&&"*"!==t&&(i.address=t),i}pollable(){return this.tag.indexOf(":")>=0||_n.indexOf(this.tag)>=0}}const Dn={0:{symbol:"btc",p2pkh:0,p2sh:5,prefix:"bc"},2:{symbol:"ltc",p2pkh:48,p2sh:50,prefix:"ltc"},3:{symbol:"doge",p2pkh:30,p2sh:22},60:{symbol:"eth",ilk:"eth"},61:{symbol:"etc",ilk:"eth"},700:{symbol:"xdai",ilk:"eth"}};function Cn(e){return G(Z.from(e).toHexString(),32)}function Nn(e){return je.encode(F([e,j(ar(ar(e)),0,4)]))}const kn=new RegExp("^(ipfs)://(.*)$","i"),xn=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),kn,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];function Rn(e,t){try{return tt(Sn(e,t))}catch(e){}return null}function Sn(e,t){if("0x"===e)return null;const r=Z.from(j(e,t,t+32)).toNumber(),n=Z.from(j(e,r,r+32)).toNumber();return j(e,r+32,r+32+n)}function Fn(e){return e.match(/^ipfs:\/\/ipfs\//i)?e=e.substring(12):e.match(/^ipfs:\/\//i)?e=e.substring(7):En.throwArgumentError("unsupported IPFS format","link",e),`https://gateway.ipfs.io/ipfs/${e}`}function Ln(e){const t=S(e);if(t.length>32)throw new Error("internal; should not happen");const r=new Uint8Array(32);return r.set(t,32-t.length),r}function qn(e){if(e.length%32==0)return e;const t=new Uint8Array(32*Math.ceil(e.length/32));return t.set(e),t}function Mn(e){const t=[];let r=0;for(let n=0;n<e.length;n++)t.push(null),r+=32;for(let n=0;n<e.length;n++){const i=S(e[n]);t[n]=Ln(r),t.push(Ln(i.length)),t.push(qn(i)),r+=32+32*Math.ceil(i.length/32)}return Q(t)}class Un{constructor(e,t,r,n){ve(this,"provider",e),ve(this,"name",r),ve(this,"address",e.formatter.address(t)),ve(this,"_resolvedAddress",n)}supportsWildcard(){return this._supportsEip2544||(this._supportsEip2544=this.provider.call({to:this.address,data:"0x01ffc9a79061b92300000000000000000000000000000000000000000000000000000000"}).then((e=>Z.from(e).eq(1))).catch((e=>{if(e.code===O.errors.CALL_EXCEPTION)return!1;throw this._supportsEip2544=null,e}))),this._supportsEip2544}_fetch(e,t){return bn(this,void 0,void 0,(function*(){const r={to:this.address,ccipReadEnabled:!0,data:Q([e,Dt(this.name),t||"0x"])};let n=!1;var i;(yield this.supportsWildcard())&&(n=!0,r.data=Q(["0x9061b923",Mn([(i=this.name,U(F(Ot(i).map((e=>{if(e.length>63)throw new Error("invalid DNS encoded entry; length exceeds 63 bytes");const t=new Uint8Array(e.length+1);return t.set(e,1),t[0]=t.length-1,t}))))+"00"),r.data])]));try{let e=yield this.provider.call(r);return S(e).length%32==4&&En.throwError("resolver threw error",O.errors.CALL_EXCEPTION,{transaction:r,data:e}),n&&(e=Sn(e,0)),e}catch(e){if(e.code===O.errors.CALL_EXCEPTION)return null;throw e}}))}_fetchBytes(e,t){return bn(this,void 0,void 0,(function*(){const r=yield this._fetch(e,t);return null!=r?Sn(r,0):null}))}_getAddress(e,t){const r=Dn[String(e)];if(null==r&&En.throwError(`unsupported coin type: ${e}`,O.errors.UNSUPPORTED_OPERATION,{operation:`getAddress(${e})`}),"eth"===r.ilk)return this.provider.formatter.address(t);const n=S(t);if(null!=r.p2pkh){const e=t.match(/^0x76a9([0-9a-f][0-9a-f])([0-9a-f]*)88ac$/);if(e){const t=parseInt(e[1],16);if(e[2].length===2*t&&t>=1&&t<=75)return Nn(F([[r.p2pkh],"0x"+e[2]]))}}if(null!=r.p2sh){const e=t.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/);if(e){const t=parseInt(e[1],16);if(e[2].length===2*t&&t>=1&&t<=75)return Nn(F([[r.p2sh],"0x"+e[2]]))}}if(null!=r.prefix){const e=n[1];let t=n[0];if(0===t?20!==e&&32!==e&&(t=-1):t=-1,t>=0&&n.length===2+e&&e>=1&&e<=75){const e=i.toWords(n.slice(2));return e.unshift(t),i.encode(r.prefix,e)}}return null}getAddress(e){return bn(this,void 0,void 0,(function*(){if(null==e&&(e=60),60===e)try{const e=yield this._fetch("0x3b3b57de");return"0x"===e||"0x0000000000000000000000000000000000000000000000000000000000000000"===e?null:this.provider.formatter.callAddress(e)}catch(e){if(e.code===O.errors.CALL_EXCEPTION)return null;throw e}const t=yield this._fetchBytes("0xf1cb7e06",Cn(e));if(null==t||"0x"===t)return null;const r=this._getAddress(e,t);return null==r&&En.throwError("invalid or unsupported coin data",O.errors.UNSUPPORTED_OPERATION,{operation:`getAddress(${e})`,coinType:e,data:t}),r}))}getAvatar(){return bn(this,void 0,void 0,(function*(){const e=[{type:"name",content:this.name}];try{const t=yield this.getText("avatar");if(null==t)return null;for(let r=0;r<xn.length;r++){const n=t.match(xn[r]);if(null==n)continue;const i=n[1].toLowerCase();switch(i){case"https":return e.push({type:"url",content:t}),{linkage:e,url:t};case"data":return e.push({type:"data",content:t}),{linkage:e,url:t};case"ipfs":return e.push({type:"ipfs",content:t}),{linkage:e,url:Fn(t)};case"erc721":case"erc1155":{const r="erc721"===i?"0xc87b56dd":"0x0e89341c";e.push({type:i,content:t});const s=this._resolvedAddress||(yield this.getAddress()),o=(n[2]||"").split("/");if(2!==o.length)return null;const a=yield this.provider.formatter.address(o[0]),c=G(Z.from(o[1]).toHexString(),32);if("erc721"===i){const t=this.provider.formatter.callAddress(yield this.provider.call({to:a,data:Q(["0x6352211e",c])}));if(s!==t)return null;e.push({type:"owner",content:t})}else if("erc1155"===i){const t=Z.from(yield this.provider.call({to:a,data:Q(["0x00fdd58e",G(s,32),c])}));if(t.isZero())return null;e.push({type:"balance",content:t.toString()})}const l={to:this.provider.formatter.address(o[0]),data:Q([r,c])};let u=Rn(yield this.provider.call(l),0);if(null==u)return null;e.push({type:"metadata-url-base",content:u}),"erc1155"===i&&(u=u.replace("{id}",c.substring(2)),e.push({type:"metadata-url-expanded",content:u})),u.match(/^ipfs:/i)&&(u=Fn(u)),e.push({type:"metadata-url",content:u});const d=yield pr(u);if(!d)return null;e.push({type:"metadata",content:JSON.stringify(d)});let h=d.image;if("string"!=typeof h)return null;if(h.match(/^(https:\/\/|data:)/i));else{if(null==h.match(kn))return null;e.push({type:"url-ipfs",content:h}),h=Fn(h)}return e.push({type:"url",content:h}),{linkage:e,url:h}}}}}catch(e){}return null}))}getContentHash(){return bn(this,void 0,void 0,(function*(){const e=yield this._fetchBytes("0xbc1c58d1");if(null==e||"0x"===e)return null;const t=e.match(/^0xe3010170(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/);if(t){const e=parseInt(t[3],16);if(t[4].length===2*e)return"ipfs://"+je.encode("0x"+t[1])}const r=e.match(/^0xe5010172(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/);if(r){const e=parseInt(r[3],16);if(r[4].length===2*e)return"ipns://"+je.encode("0x"+r[1])}const n=e.match(/^0xe40101fa011b20([0-9a-f]*)$/);if(n&&64===n[1].length)return"bzz://"+n[1];const i=e.match(/^0x90b2c605([0-9a-f]*)$/);if(i&&68===i[1].length){const e={"=":"","+":"-","/":"_"};return"sia://"+Ue("0x"+i[1]).replace(/[=+\/]/g,(t=>e[t]))}return En.throwError("invalid or unsupported content hash data",O.errors.UNSUPPORTED_OPERATION,{operation:"getContentHash()",data:e})}))}getText(e){return bn(this,void 0,void 0,(function*(){let t=et(e);t=F([Cn(64),Cn(t.length),t]),t.length%32!=0&&(t=F([t,G("0x",32-e.length%32)]));const r=yield this._fetchBytes("0x59d1d43c",U(t));return null==r||"0x"===r?null:tt(r)}))}}let Vn=null,jn=1;class Qn extends Ne{constructor(e){if(super(),this._events=[],this._emitted={block:-2},this.disableCcipRead=!1,this.formatter=new.target.getFormatter(),ve(this,"anyNetwork","any"===e),this.anyNetwork&&(e=this.detectNetwork()),e instanceof Promise)this._networkPromise=e,e.catch((e=>{})),this._ready().catch((e=>{}));else{const t=be(new.target,"getNetwork")(e);t?(ve(this,"_network",t),this.emit("network",t,null)):En.throwArgumentError("invalid network","network",e)}this._maxInternalBlockNumber=-1024,this._lastBlockNumber=-2,this._maxFilterBlockRange=10,this._pollingInterval=4e3,this._fastQueryDate=0}_ready(){return bn(this,void 0,void 0,(function*(){if(null==this._network){let e=null;if(this._networkPromise)try{e=yield this._networkPromise}catch(e){}null==e&&(e=yield this.detectNetwork()),e||En.throwError("no network detected",O.errors.UNKNOWN_ERROR,{}),null==this._network&&(this.anyNetwork?this._network=e:ve(this,"_network",e),this.emit("network",e,null))}return this._network}))}get ready(){return mr((()=>this._ready().then((e=>e),(e=>{if(e.code!==O.errors.NETWORK_ERROR||"noNetwork"!==e.event)throw e}))))}static getFormatter(){return null==Vn&&(Vn=new vn),Vn}static getNetwork(e){return function(e){if(null==e)return null;if("number"==typeof e){for(const t in qe){const r=qe[t];if(r.chainId===e)return{name:r.name,chainId:r.chainId,ensAddress:r.ensAddress||null,_defaultProvider:r._defaultProvider||null}}return{chainId:e,name:"unknown"}}if("string"==typeof e){const t=qe[e];return null==t?null:{name:t.name,chainId:t.chainId,ensAddress:t.ensAddress,_defaultProvider:t._defaultProvider||null}}const t=qe[e.name];if(!t)return"number"!=typeof e.chainId&&ke.throwArgumentError("invalid network chainId","network",e),e;0!==e.chainId&&e.chainId!==t.chainId&&ke.throwArgumentError("network chainId mismatch","network",e);let r=e._defaultProvider||null;var n;return null==r&&t._defaultProvider&&(r=(n=t._defaultProvider)&&"function"==typeof n.renetwork?t._defaultProvider.renetwork(e):t._defaultProvider),{name:e.name,chainId:t.chainId,ensAddress:e.ensAddress||t.ensAddress||null,_defaultProvider:r}}(null==e?"homestead":e)}ccipReadFetch(e,t,r){return bn(this,void 0,void 0,(function*(){if(this.disableCcipRead||0===r.length)return null;const n=e.to.toLowerCase(),i=t.toLowerCase(),s=[];for(let e=0;e<r.length;e++){const t=r[e],o=t.replace("{sender}",n).replace("{data}",i),a=t.indexOf("{data}")>=0?null:JSON.stringify({data:i,sender:n}),c=yield pr({url:o,errorPassThrough:!0},a,((e,t)=>(e.status=t.statusCode,e)));if(c.data)return c.data;const l=c.message||"unknown error";if(c.status>=400&&c.status<500)return En.throwError(`response not found during CCIP fetch: ${l}`,O.errors.SERVER_ERROR,{url:t,errorMessage:l});s.push(l)}return En.throwError(`error encountered during CCIP fetch: ${s.map((e=>JSON.stringify(e))).join(", ")}`,O.errors.SERVER_ERROR,{urls:r,errorMessages:s})}))}_getInternalBlockNumber(e){return bn(this,void 0,void 0,(function*(){if(yield this._ready(),e>0)for(;this._internalBlockNumber;){const t=this._internalBlockNumber;try{const r=yield t;if(Tn()-r.respTime<=e)return r.blockNumber;break}catch(e){if(this._internalBlockNumber===t)break}}const t=Tn(),r=Ee({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then((e=>null),(e=>e))}).then((({blockNumber:e,networkError:n})=>{if(n)throw this._internalBlockNumber===r&&(this._internalBlockNumber=null),n;const i=Tn();return(e=Z.from(e).toNumber())<this._maxInternalBlockNumber&&(e=this._maxInternalBlockNumber),this._maxInternalBlockNumber=e,this._setFastBlockNumber(e),{blockNumber:e,reqTime:t,respTime:i}}));return this._internalBlockNumber=r,r.catch((e=>{this._internalBlockNumber===r&&(this._internalBlockNumber=null)})),(yield r).blockNumber}))}poll(){return bn(this,void 0,void 0,(function*(){const e=jn++,t=[];let r=null;try{r=yield this._getInternalBlockNumber(100+this.pollingInterval/2)}catch(e){return void this.emit("error",e)}if(this._setFastBlockNumber(r),this.emit("poll",e,r),r!==this._lastBlockNumber){if(-2===this._emitted.block&&(this._emitted.block=r-1),Math.abs(this._emitted.block-r)>1e3)En.warn(`network block skew detected; skipping block events (emitted=${this._emitted.block} blockNumber${r})`),this.emit("error",En.makeError("network block skew detected",O.errors.NETWORK_ERROR,{blockNumber:r,event:"blockSkew",previousBlockNumber:this._emitted.block})),this.emit("block",r);else for(let e=this._emitted.block+1;e<=r;e++)this.emit("block",e);this._emitted.block!==r&&(this._emitted.block=r,Object.keys(this._emitted).forEach((e=>{if("block"===e)return;const t=this._emitted[e];"pending"!==t&&r-t>12&&delete this._emitted[e]}))),-2===this._lastBlockNumber&&(this._lastBlockNumber=r-1),this._events.forEach((e=>{switch(e.type){case"tx":{const r=e.hash;let n=this.getTransactionReceipt(r).then((e=>e&&null!=e.blockNumber?(this._emitted["t:"+r]=e.blockNumber,this.emit(r,e),null):null)).catch((e=>{this.emit("error",e)}));t.push(n);break}case"filter":if(!e._inflight){e._inflight=!0,-2===e._lastBlockNumber&&(e._lastBlockNumber=r-1);const n=e.filter;n.fromBlock=e._lastBlockNumber+1,n.toBlock=r;const i=n.toBlock-this._maxFilterBlockRange;i>n.fromBlock&&(n.fromBlock=i),n.fromBlock<0&&(n.fromBlock=0);const s=this.getLogs(n).then((t=>{e._inflight=!1,0!==t.length&&t.forEach((t=>{t.blockNumber>e._lastBlockNumber&&(e._lastBlockNumber=t.blockNumber),this._emitted["b:"+t.blockHash]=t.blockNumber,this._emitted["t:"+t.transactionHash]=t.blockNumber,this.emit(n,t)}))})).catch((t=>{this.emit("error",t),e._inflight=!1}));t.push(s)}}})),this._lastBlockNumber=r,Promise.all(t).then((()=>{this.emit("didPoll",e)})).catch((e=>{this.emit("error",e)}))}else this.emit("didPoll",e)}))}resetEventsBlock(e){this._lastBlockNumber=e-1,this.polling&&this.poll()}get network(){return this._network}detectNetwork(){return bn(this,void 0,void 0,(function*(){return En.throwError("provider does not support network detection",O.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})}))}getNetwork(){return bn(this,void 0,void 0,(function*(){const e=yield this._ready(),t=yield this.detectNetwork();if(e.chainId!==t.chainId){if(this.anyNetwork)return this._network=t,this._lastBlockNumber=-2,this._fastBlockNumber=null,this._fastBlockNumberPromise=null,this._fastQueryDate=0,this._emitted.block=-2,this._maxInternalBlockNumber=-1024,this._internalBlockNumber=null,this.emit("network",t,e),yield Bn(0),this._network;const r=En.makeError("underlying network changed",O.errors.NETWORK_ERROR,{event:"changed",network:e,detectedNetwork:t});throw this.emit("error",r),r}return e}))}get blockNumber(){return this._getInternalBlockNumber(100+this.pollingInterval/2).then((e=>{this._setFastBlockNumber(e)}),(e=>{})),null!=this._fastBlockNumber?this._fastBlockNumber:-1}get polling(){return null!=this._poller}set polling(e){e&&!this._poller?(this._poller=setInterval((()=>{this.poll()}),this.pollingInterval),this._bootstrapPoll||(this._bootstrapPoll=setTimeout((()=>{this.poll(),this._bootstrapPoll=setTimeout((()=>{this._poller||this.poll(),this._bootstrapPoll=null}),this.pollingInterval)}),0))):!e&&this._poller&&(clearInterval(this._poller),this._poller=null)}get pollingInterval(){return this._pollingInterval}set pollingInterval(e){if("number"!=typeof e||e<=0||parseInt(String(e))!=e)throw new Error("invalid polling interval");this._pollingInterval=e,this._poller&&(clearInterval(this._poller),this._poller=setInterval((()=>{this.poll()}),this._pollingInterval))}_getFastBlockNumber(){const e=Tn();return e-this._fastQueryDate>2*this._pollingInterval&&(this._fastQueryDate=e,this._fastBlockNumberPromise=this.getBlockNumber().then((e=>((null==this._fastBlockNumber||e>this._fastBlockNumber)&&(this._fastBlockNumber=e),this._fastBlockNumber)))),this._fastBlockNumberPromise}_setFastBlockNumber(e){null!=this._fastBlockNumber&&e<this._fastBlockNumber||(this._fastQueryDate=Tn(),(null==this._fastBlockNumber||e>this._fastBlockNumber)&&(this._fastBlockNumber=e,this._fastBlockNumberPromise=Promise.resolve(e)))}waitForTransaction(e,t,r){return bn(this,void 0,void 0,(function*(){return this._waitForTransaction(e,null==t?1:t,r||0,null)}))}_waitForTransaction(e,t,r,n){return bn(this,void 0,void 0,(function*(){const i=yield this.getTransactionReceipt(e);return(i?i.confirmations:0)>=t?i:new Promise(((i,s)=>{const o=[];let a=!1;const c=function(){return!!a||(a=!0,o.forEach((e=>{e()})),!1)},l=e=>{e.confirmations<t||c()||i(e)};if(this.on(e,l),o.push((()=>{this.removeListener(e,l)})),n){let r=n.startBlock,i=null;const l=o=>bn(this,void 0,void 0,(function*(){a||(yield Bn(1e3),this.getTransactionCount(n.from).then((u=>bn(this,void 0,void 0,(function*(){if(!a){if(u<=n.nonce)r=o;else{{const t=yield this.getTransaction(e);if(t&&null!=t.blockNumber)return}for(null==i&&(i=r-3,i<n.startBlock&&(i=n.startBlock));i<=o;){if(a)return;const r=yield this.getBlockWithTransactions(i);for(let i=0;i<r.transactions.length;i++){const o=r.transactions[i];if(o.hash===e)return;if(o.from===n.from&&o.nonce===n.nonce){if(a)return;const r=yield this.waitForTransaction(o.hash,t);if(c())return;let i="replaced";return o.data===n.data&&o.to===n.to&&o.value.eq(n.value)?i="repriced":"0x"===o.data&&o.from===o.to&&o.value.isZero()&&(i="cancelled"),void s(En.makeError("transaction was replaced",O.errors.TRANSACTION_REPLACED,{cancelled:"replaced"===i||"cancelled"===i,reason:i,replacement:this._wrapTransaction(o),hash:e,receipt:r}))}}i++}}a||this.once("block",l)}}))),(e=>{a||this.once("block",l)})))}));if(a)return;this.once("block",l),o.push((()=>{this.removeListener("block",l)}))}if("number"==typeof r&&r>0){const e=setTimeout((()=>{c()||s(En.makeError("timeout exceeded",O.errors.TIMEOUT,{timeout:r}))}),r);e.unref&&e.unref(),o.push((()=>{clearTimeout(e)}))}}))}))}getBlockNumber(){return bn(this,void 0,void 0,(function*(){return this._getInternalBlockNumber(0)}))}getGasPrice(){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const e=yield this.perform("getGasPrice",{});try{return Z.from(e)}catch(t){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"getGasPrice",result:e,error:t})}}))}getBalance(e,t){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const r=yield Ee({address:this._getAddress(e),blockTag:this._getBlockTag(t)}),n=yield this.perform("getBalance",r);try{return Z.from(n)}catch(e){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"getBalance",params:r,result:n,error:e})}}))}getTransactionCount(e,t){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const r=yield Ee({address:this._getAddress(e),blockTag:this._getBlockTag(t)}),n=yield this.perform("getTransactionCount",r);try{return Z.from(n).toNumber()}catch(e){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"getTransactionCount",params:r,result:n,error:e})}}))}getCode(e,t){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const r=yield Ee({address:this._getAddress(e),blockTag:this._getBlockTag(t)}),n=yield this.perform("getCode",r);try{return U(n)}catch(e){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"getCode",params:r,result:n,error:e})}}))}getStorageAt(e,t,r){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const n=yield Ee({address:this._getAddress(e),blockTag:this._getBlockTag(r),position:Promise.resolve(t).then((e=>H(e)))}),i=yield this.perform("getStorageAt",n);try{return U(i)}catch(e){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"getStorageAt",params:n,result:i,error:e})}}))}_wrapTransaction(e,t,r){if(null!=t&&32!==V(t))throw new Error("invalid response - sendTransaction");const n=e;return null!=t&&e.hash!==t&&En.throwError("Transaction hash mismatch from Provider.sendTransaction.",O.errors.UNKNOWN_ERROR,{expectedHash:e.hash,returnedHash:t}),n.wait=(t,n)=>bn(this,void 0,void 0,(function*(){let i;null==t&&(t=1),null==n&&(n=0),0!==t&&null!=r&&(i={data:e.data,from:e.from,nonce:e.nonce,to:e.to,value:e.value,startBlock:r});const s=yield this._waitForTransaction(e.hash,t,n,i);return null==s&&0===t?null:(this._emitted["t:"+e.hash]=s.blockNumber,0===s.status&&En.throwError("transaction failed",O.errors.CALL_EXCEPTION,{transactionHash:e.hash,transaction:e,receipt:s}),s)})),n}sendTransaction(e){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const t=yield Promise.resolve(e).then((e=>U(e))),r=this.formatter.transaction(e);null==r.confirmations&&(r.confirmations=0);const n=yield this._getInternalBlockNumber(100+2*this.pollingInterval);try{const e=yield this.perform("sendTransaction",{signedTransaction:t});return this._wrapTransaction(r,e,n)}catch(e){throw e.transaction=r,e.transactionHash=r.hash,e}}))}_getTransactionRequest(e){return bn(this,void 0,void 0,(function*(){const t=yield e,r={};return["from","to"].forEach((e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((e=>e?this._getAddress(e):null)))})),["gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","value"].forEach((e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((e=>e?Z.from(e):null)))})),["type"].forEach((e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((e=>null!=e?e:null)))})),t.accessList&&(r.accessList=this.formatter.accessList(t.accessList)),["data"].forEach((e=>{null!=t[e]&&(r[e]=Promise.resolve(t[e]).then((e=>e?U(e):null)))})),this.formatter.transactionRequest(yield Ee(r))}))}_getFilter(e){return bn(this,void 0,void 0,(function*(){e=yield e;const t={};return null!=e.address&&(t.address=this._getAddress(e.address)),["blockHash","topics"].forEach((r=>{null!=e[r]&&(t[r]=e[r])})),["fromBlock","toBlock"].forEach((r=>{null!=e[r]&&(t[r]=this._getBlockTag(e[r]))})),this.formatter.filter(yield Ee(t))}))}_call(e,t,r){return bn(this,void 0,void 0,(function*(){r>=10&&En.throwError("CCIP read exceeded maximum redirections",O.errors.SERVER_ERROR,{redirects:r,transaction:e});const n=e.to,i=yield this.perform("call",{transaction:e,blockTag:t});if(r>=0&&"latest"===t&&null!=n&&"0x556f1830"===i.substring(0,10)&&V(i)%32==4)try{const s=j(i,4),o=j(s,0,32);Z.from(o).eq(n)||En.throwError("CCIP Read sender did not match",O.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:e,data:i});const a=[],c=Z.from(j(s,32,64)).toNumber(),l=Z.from(j(s,c,c+32)).toNumber(),u=j(s,c+32);for(let t=0;t<l;t++){const r=Rn(u,32*t);null==r&&En.throwError("CCIP Read contained corrupt URL string",O.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:e,data:i}),a.push(r)}const d=Sn(s,64);Z.from(j(s,100,128)).isZero()||En.throwError("CCIP Read callback selector included junk",O.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:e,data:i});const h=j(s,96,100),f=Sn(s,128),p=yield this.ccipReadFetch(e,d,a);null==p&&En.throwError("CCIP Read disabled or provided no URLs",O.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:e,data:i});const m={to:n,data:Q([h,Mn([p,f])])};return this._call(m,t,r+1)}catch(e){if(e.code===O.errors.SERVER_ERROR)throw e}try{return U(i)}catch(r){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"call",params:{transaction:e,blockTag:t},result:i,error:r})}}))}call(e,t){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const r=yield Ee({transaction:this._getTransactionRequest(e),blockTag:this._getBlockTag(t),ccipReadEnabled:Promise.resolve(e.ccipReadEnabled)});return this._call(r.transaction,r.blockTag,r.ccipReadEnabled?0:-1)}))}estimateGas(e){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const t=yield Ee({transaction:this._getTransactionRequest(e)}),r=yield this.perform("estimateGas",t);try{return Z.from(r)}catch(e){return En.throwError("bad result from backend",O.errors.SERVER_ERROR,{method:"estimateGas",params:t,result:r,error:e})}}))}_getAddress(e){return bn(this,void 0,void 0,(function*(){"string"!=typeof(e=yield e)&&En.throwArgumentError("invalid address or ENS name","name",e);const t=yield this.resolveName(e);return null==t&&En.throwError("ENS name not configured",O.errors.UNSUPPORTED_OPERATION,{operation:`resolveName(${JSON.stringify(e)})`}),t}))}_getBlock(e,t){return bn(this,void 0,void 0,(function*(){yield this.getNetwork(),e=yield e;let r=-128;const n={includeTransactions:!!t};if(q(e,32))n.blockHash=e;else try{n.blockTag=yield this._getBlockTag(e),q(n.blockTag)&&(r=parseInt(n.blockTag.substring(2),16))}catch(t){En.throwArgumentError("invalid block hash or block tag","blockHashOrBlockTag",e)}return mr((()=>bn(this,void 0,void 0,(function*(){const e=yield this.perform("getBlock",n);if(null==e)return null!=n.blockHash&&null==this._emitted["b:"+n.blockHash]||null!=n.blockTag&&r>this._emitted.block?null:void 0;if(t){let t=null;for(let r=0;r<e.transactions.length;r++){const n=e.transactions[r];if(null==n.blockNumber)n.confirmations=0;else if(null==n.confirmations){null==t&&(t=yield this._getInternalBlockNumber(100+2*this.pollingInterval));let e=t-n.blockNumber+1;e<=0&&(e=1),n.confirmations=e}}const r=this.formatter.blockWithTransactions(e);return r.transactions=r.transactions.map((e=>this._wrapTransaction(e))),r}return this.formatter.block(e)}))),{oncePoll:this})}))}getBlock(e){return this._getBlock(e,!1)}getBlockWithTransactions(e){return this._getBlock(e,!0)}getTransaction(e){return bn(this,void 0,void 0,(function*(){yield this.getNetwork(),e=yield e;const t={transactionHash:this.formatter.hash(e,!0)};return mr((()=>bn(this,void 0,void 0,(function*(){const r=yield this.perform("getTransaction",t);if(null==r)return null==this._emitted["t:"+e]?null:void 0;const n=this.formatter.transactionResponse(r);if(null==n.blockNumber)n.confirmations=0;else if(null==n.confirmations){let e=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-n.blockNumber+1;e<=0&&(e=1),n.confirmations=e}return this._wrapTransaction(n)}))),{oncePoll:this})}))}getTransactionReceipt(e){return bn(this,void 0,void 0,(function*(){yield this.getNetwork(),e=yield e;const t={transactionHash:this.formatter.hash(e,!0)};return mr((()=>bn(this,void 0,void 0,(function*(){const r=yield this.perform("getTransactionReceipt",t);if(null==r)return null==this._emitted["t:"+e]?null:void 0;if(null==r.blockHash)return;const n=this.formatter.receipt(r);if(null==n.blockNumber)n.confirmations=0;else if(null==n.confirmations){let e=(yield this._getInternalBlockNumber(100+2*this.pollingInterval))-n.blockNumber+1;e<=0&&(e=1),n.confirmations=e}return n}))),{oncePoll:this})}))}getLogs(e){return bn(this,void 0,void 0,(function*(){yield this.getNetwork();const t=yield Ee({filter:this._getFilter(e)}),r=yield this.perform("getLogs",t);return r.forEach((e=>{null==e.removed&&(e.removed=!1)})),vn.arrayOf(this.formatter.filterLog.bind(this.formatter))(r)}))}getEtherPrice(){return bn(this,void 0,void 0,(function*(){return yield this.getNetwork(),this.perform("getEtherPrice",{})}))}_getBlockTag(e){return bn(this,void 0,void 0,(function*(){if("number"==typeof(e=yield e)&&e<0){e%1&&En.throwArgumentError("invalid BlockTag","blockTag",e);let t=yield this._getInternalBlockNumber(100+2*this.pollingInterval);return t+=e,t<0&&(t=0),this.formatter.blockTag(t)}return this.formatter.blockTag(e)}))}getResolver(e){return bn(this,void 0,void 0,(function*(){let t=e;for(;;){if(""===t||"."===t)return null;if("eth"!==e&&"eth"===t)return null;const r=yield this._getResolver(t,"getResolver");if(null!=r){const n=new Un(this,r,e);return t===e||(yield n.supportsWildcard())?n:null}t=t.split(".").slice(1).join(".")}}))}_getResolver(e,t){return bn(this,void 0,void 0,(function*(){null==t&&(t="ENS");const r=yield this.getNetwork();r.ensAddress||En.throwError("network does not support ENS",O.errors.UNSUPPORTED_OPERATION,{operation:t,network:r.name});try{const t=yield this.call({to:r.ensAddress,data:"0x0178b8bf"+Dt(e).substring(2)});return this.formatter.callAddress(t)}catch(e){}return null}))}resolveName(e){return bn(this,void 0,void 0,(function*(){e=yield e;try{return Promise.resolve(this.formatter.address(e))}catch(t){if(q(e))throw t}"string"!=typeof e&&En.throwArgumentError("invalid ENS name","name",e);const t=yield this.getResolver(e);return t?yield t.getAddress():null}))}lookupAddress(e){return bn(this,void 0,void 0,(function*(){e=yield e;const t=(e=this.formatter.address(e)).substring(2).toLowerCase()+".addr.reverse",r=yield this._getResolver(t,"lookupAddress");if(null==r)return null;const n=Rn(yield this.call({to:r,data:"0x691f3431"+Dt(t).substring(2)}),0);return(yield this.resolveName(n))!=e?null:n}))}getAvatar(e){return bn(this,void 0,void 0,(function*(){let t=null;if(q(e)){const r=this.formatter.address(e).substring(2).toLowerCase()+".addr.reverse",n=yield this._getResolver(r,"getAvatar");if(!n)return null;t=new Un(this,n,r);try{const e=yield t.getAvatar();if(e)return e.url}catch(e){if(e.code!==O.errors.CALL_EXCEPTION)throw e}try{const e=Rn(yield this.call({to:n,data:"0x691f3431"+Dt(r).substring(2)}),0);t=yield this.getResolver(e)}catch(e){if(e.code!==O.errors.CALL_EXCEPTION)throw e;return null}}else if(t=yield this.getResolver(e),!t)return null;const r=yield t.getAvatar();return null==r?null:r.url}))}perform(e,t){return En.throwError(e+" not implemented",O.errors.NOT_IMPLEMENTED,{operation:e})}_startEvent(e){this.polling=this._events.filter((e=>e.pollable())).length>0}_stopEvent(e){this.polling=this._events.filter((e=>e.pollable())).length>0}_addEventListener(e,t,r){const n=new On(In(e),t,r);return this._events.push(n),this._startEvent(n),this}on(e,t){return this._addEventListener(e,t,!1)}once(e,t){return this._addEventListener(e,t,!0)}emit(e,...t){let r=!1,n=[],i=In(e);return this._events=this._events.filter((e=>e.tag!==i||(setTimeout((()=>{e.listener.apply(this,t)}),0),r=!0,!e.once||(n.push(e),!1)))),n.forEach((e=>{this._stopEvent(e)})),r}listenerCount(e){if(!e)return this._events.length;let t=In(e);return this._events.filter((e=>e.tag===t)).length}listeners(e){if(null==e)return this._events.map((e=>e.listener));let t=In(e);return this._events.filter((e=>e.tag===t)).map((e=>e.listener))}off(e,t){if(null==t)return this.removeAllListeners(e);const r=[];let n=!1,i=In(e);return this._events=this._events.filter((e=>e.tag!==i||e.listener!=t||(!!n||(n=!0,r.push(e),!1)))),r.forEach((e=>{this._stopEvent(e)})),this}removeAllListeners(e){let t=[];if(null==e)t=this._events,this._events=[];else{const r=In(e);this._events=this._events.filter((e=>e.tag!==r||(t.push(e),!1)))}return t.forEach((e=>{this._stopEvent(e)})),this}}var Hn=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const Gn=new O("abstract-signer/5.7.0"),Yn=["accessList","ccipReadEnabled","chainId","customData","data","from","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","nonce","to","type","value"],$n=[O.errors.INSUFFICIENT_FUNDS,O.errors.NONCE_EXPIRED,O.errors.REPLACEMENT_UNDERPRICED];class Kn{constructor(){Gn.checkAbstract(new.target,Kn),ve(this,"_isSigner",!0)}getBalance(e){return Hn(this,void 0,void 0,(function*(){return this._checkProvider("getBalance"),yield this.provider.getBalance(this.getAddress(),e)}))}getTransactionCount(e){return Hn(this,void 0,void 0,(function*(){return this._checkProvider("getTransactionCount"),yield this.provider.getTransactionCount(this.getAddress(),e)}))}estimateGas(e){return Hn(this,void 0,void 0,(function*(){this._checkProvider("estimateGas");const t=yield Ee(this.checkTransaction(e));return yield this.provider.estimateGas(t)}))}call(e,t){return Hn(this,void 0,void 0,(function*(){this._checkProvider("call");const r=yield Ee(this.checkTransaction(e));return yield this.provider.call(r,t)}))}sendTransaction(e){return Hn(this,void 0,void 0,(function*(){this._checkProvider("sendTransaction");const t=yield this.populateTransaction(e),r=yield this.signTransaction(t);return yield this.provider.sendTransaction(r)}))}getChainId(){return Hn(this,void 0,void 0,(function*(){this._checkProvider("getChainId");return(yield this.provider.getNetwork()).chainId}))}getGasPrice(){return Hn(this,void 0,void 0,(function*(){return this._checkProvider("getGasPrice"),yield this.provider.getGasPrice()}))}getFeeData(){return Hn(this,void 0,void 0,(function*(){return this._checkProvider("getFeeData"),yield this.provider.getFeeData()}))}resolveName(e){return Hn(this,void 0,void 0,(function*(){return this._checkProvider("resolveName"),yield this.provider.resolveName(e)}))}checkTransaction(e){for(const t in e)-1===Yn.indexOf(t)&&Gn.throwArgumentError("invalid transaction key: "+t,"transaction",e);const t=we(e);return null==t.from?t.from=this.getAddress():t.from=Promise.all([Promise.resolve(t.from),this.getAddress()]).then((t=>(t[0].toLowerCase()!==t[1].toLowerCase()&&Gn.throwArgumentError("from address mismatch","transaction",e),t[0]))),t}populateTransaction(e){return Hn(this,void 0,void 0,(function*(){const t=yield Ee(this.checkTransaction(e));null!=t.to&&(t.to=Promise.resolve(t.to).then((e=>Hn(this,void 0,void 0,(function*(){if(null==e)return null;const t=yield this.resolveName(e);return null==t&&Gn.throwArgumentError("provided ENS name resolves to null","tx.to",e),t})))),t.to.catch((e=>{})));const r=null!=t.maxFeePerGas||null!=t.maxPriorityFeePerGas;if(null==t.gasPrice||2!==t.type&&!r?0!==t.type&&1!==t.type||!r||Gn.throwArgumentError("pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas","transaction",e):Gn.throwArgumentError("eip-1559 transaction do not support gasPrice","transaction",e),2!==t.type&&null!=t.type||null==t.maxFeePerGas||null==t.maxPriorityFeePerGas)if(0===t.type||1===t.type)null==t.gasPrice&&(t.gasPrice=this.getGasPrice());else{const e=yield this.getFeeData();if(null==t.type)if(null!=e.maxFeePerGas&&null!=e.maxPriorityFeePerGas)if(t.type=2,null!=t.gasPrice){const e=t.gasPrice;delete t.gasPrice,t.maxFeePerGas=e,t.maxPriorityFeePerGas=e}else null==t.maxFeePerGas&&(t.maxFeePerGas=e.maxFeePerGas),null==t.maxPriorityFeePerGas&&(t.maxPriorityFeePerGas=e.maxPriorityFeePerGas);else null!=e.gasPrice?(r&&Gn.throwError("network does not support EIP-1559",O.errors.UNSUPPORTED_OPERATION,{operation:"populateTransaction"}),null==t.gasPrice&&(t.gasPrice=e.gasPrice),t.type=0):Gn.throwError("failed to get consistent fee data",O.errors.UNSUPPORTED_OPERATION,{operation:"signer.getFeeData"});else 2===t.type&&(null==t.maxFeePerGas&&(t.maxFeePerGas=e.maxFeePerGas),null==t.maxPriorityFeePerGas&&(t.maxPriorityFeePerGas=e.maxPriorityFeePerGas))}else t.type=2;return null==t.nonce&&(t.nonce=this.getTransactionCount("pending")),null==t.gasLimit&&(t.gasLimit=this.estimateGas(t).catch((e=>{if($n.indexOf(e.code)>=0)throw e;return Gn.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",O.errors.UNPREDICTABLE_GAS_LIMIT,{error:e,tx:t})}))),null==t.chainId?t.chainId=this.getChainId():t.chainId=Promise.all([Promise.resolve(t.chainId),this.getChainId()]).then((t=>(0!==t[1]&&t[0]!==t[1]&&Gn.throwArgumentError("chainId address mismatch","transaction",e),t[0]))),yield Ee(t)}))}_checkProvider(e){this.provider||Gn.throwError("missing provider",O.errors.UNSUPPORTED_OPERATION,{operation:e||"_checkProvider"})}static isSigner(e){return!(!e||!e._isSigner)}}class zn extends Kn{constructor(e,t){super(),ve(this,"address",e),ve(this,"provider",t||null)}getAddress(){return Promise.resolve(this.address)}_fail(e,t){return Promise.resolve().then((()=>{Gn.throwError(e,O.errors.UNSUPPORTED_OPERATION,{operation:t})}))}signMessage(e){return this._fail("VoidSigner cannot sign messages","signMessage")}signTransaction(e){return this._fail("VoidSigner cannot sign transactions","signTransaction")}_signTypedData(e,t,r){return this._fail("VoidSigner cannot sign typed data","signTypedData")}connect(e){return new zn(this.address,e)}}var Xn=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const Jn=new O(gr),Wn=["call","estimateGas"];function Zn(e,t){if(null==e)return null;if("string"==typeof e.message&&e.message.match("reverted")){const r=q(e.data)?e.data:null;if(!t||r)return{message:e.message,data:r}}if("object"==typeof e){for(const r in e){const n=Zn(e[r],t);if(n)return n}return null}if("string"==typeof e)try{return Zn(JSON.parse(e),t)}catch(e){}return null}function ei(e,t,r){const n=r.transaction||r.signedTransaction;if("call"===e){const e=Zn(t,!0);if(e)return e.data;Jn.throwError("missing revert data in call exception; Transaction reverted without a reason string",O.errors.CALL_EXCEPTION,{data:"0x",transaction:n,error:t})}if("estimateGas"===e){let r=Zn(t.body,!1);null==r&&(r=Zn(t,!1)),r&&Jn.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",O.errors.UNPREDICTABLE_GAS_LIMIT,{reason:r.message,method:e,transaction:n,error:t})}let i=t.message;throw t.code===O.errors.SERVER_ERROR&&t.error&&"string"==typeof t.error.message?i=t.error.message:"string"==typeof t.body?i=t.body:"string"==typeof t.responseText&&(i=t.responseText),i=(i||"").toLowerCase(),i.match(/insufficient funds|base fee exceeds gas limit|InsufficientFunds/i)&&Jn.throwError("insufficient funds for intrinsic transaction cost",O.errors.INSUFFICIENT_FUNDS,{error:t,method:e,transaction:n}),i.match(/nonce (is )?too low/i)&&Jn.throwError("nonce has already been used",O.errors.NONCE_EXPIRED,{error:t,method:e,transaction:n}),i.match(/replacement transaction underpriced|transaction gas price.*too low/i)&&Jn.throwError("replacement fee too low",O.errors.REPLACEMENT_UNDERPRICED,{error:t,method:e,transaction:n}),i.match(/only replay-protected/i)&&Jn.throwError("legacy pre-eip-155 transactions not supported",O.errors.UNSUPPORTED_OPERATION,{error:t,method:e,transaction:n}),Wn.indexOf(e)>=0&&i.match(/gas required exceeds allowance|always failing transaction|execution reverted|revert/)&&Jn.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",O.errors.UNPREDICTABLE_GAS_LIMIT,{error:t,method:e,transaction:n}),t}function ti(e){return new Promise((function(t){setTimeout(t,e)}))}function ri(e){if(e.error){const t=new Error(e.error.message);throw t.code=e.error.code,t.data=e.error.data,t}return e.result}function ni(e){return e?e.toLowerCase():e}const ii={};class si extends Kn{constructor(e,t,r){if(super(),e!==ii)throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner");ve(this,"provider",t),null==r&&(r=0),"string"==typeof r?(ve(this,"_address",this.provider.formatter.address(r)),ve(this,"_index",null)):"number"==typeof r?(ve(this,"_index",r),ve(this,"_address",null)):Jn.throwArgumentError("invalid address or index","addressOrIndex",r)}connect(e){return Jn.throwError("cannot alter JSON-RPC Signer connection",O.errors.UNSUPPORTED_OPERATION,{operation:"connect"})}connectUnchecked(){return new oi(ii,this.provider,this._address||this._index)}getAddress(){return this._address?Promise.resolve(this._address):this.provider.send("eth_accounts",[]).then((e=>(e.length<=this._index&&Jn.throwError("unknown account #"+this._index,O.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"}),this.provider.formatter.address(e[this._index]))))}sendUncheckedTransaction(e){e=we(e);const t=this.getAddress().then((e=>(e&&(e=e.toLowerCase()),e)));if(null==e.gasLimit){const r=we(e);r.from=t,e.gasLimit=this.provider.estimateGas(r)}return null!=e.to&&(e.to=Promise.resolve(e.to).then((e=>Xn(this,void 0,void 0,(function*(){if(null==e)return null;const t=yield this.provider.resolveName(e);return null==t&&Jn.throwArgumentError("provided ENS name resolves to null","tx.to",e),t}))))),Ee({tx:Ee(e),sender:t}).then((({tx:t,sender:r})=>{null!=t.from?t.from.toLowerCase()!==r&&Jn.throwArgumentError("from address mismatch","transaction",e):t.from=r;const n=this.provider.constructor.hexlifyTransaction(t,{from:!0});return this.provider.send("eth_sendTransaction",[n]).then((e=>e),(e=>("string"==typeof e.message&&e.message.match(/user denied/i)&&Jn.throwError("user rejected transaction",O.errors.ACTION_REJECTED,{action:"sendTransaction",transaction:t}),ei("sendTransaction",e,n))))}))}signTransaction(e){return Jn.throwError("signing transactions is unsupported",O.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})}sendTransaction(e){return Xn(this,void 0,void 0,(function*(){const t=yield this.provider._getInternalBlockNumber(100+2*this.provider.pollingInterval),r=yield this.sendUncheckedTransaction(e);try{return yield mr((()=>Xn(this,void 0,void 0,(function*(){const e=yield this.provider.getTransaction(r);if(null!==e)return this.provider._wrapTransaction(e,r,t)}))),{oncePoll:this.provider})}catch(e){throw e.transactionHash=r,e}}))}signMessage(e){return Xn(this,void 0,void 0,(function*(){const t="string"==typeof e?et(e):e,r=yield this.getAddress();try{return yield this.provider.send("personal_sign",[U(t),r.toLowerCase()])}catch(t){throw"string"==typeof t.message&&t.message.match(/user denied/i)&&Jn.throwError("user rejected signing",O.errors.ACTION_REJECTED,{action:"signMessage",from:r,messageData:e}),t}}))}_legacySignMessage(e){return Xn(this,void 0,void 0,(function*(){const t="string"==typeof e?et(e):e,r=yield this.getAddress();try{return yield this.provider.send("eth_sign",[r.toLowerCase(),U(t)])}catch(t){throw"string"==typeof t.message&&t.message.match(/user denied/i)&&Jn.throwError("user rejected signing",O.errors.ACTION_REJECTED,{action:"_legacySignMessage",from:r,messageData:e}),t}}))}_signTypedData(e,t,r){return Xn(this,void 0,void 0,(function*(){const n=yield or.resolveNames(e,t,r,(e=>this.provider.resolveName(e))),i=yield this.getAddress();try{return yield this.provider.send("eth_signTypedData_v4",[i.toLowerCase(),JSON.stringify(or.getPayload(n.domain,t,n.value))])}catch(e){throw"string"==typeof e.message&&e.message.match(/user denied/i)&&Jn.throwError("user rejected signing",O.errors.ACTION_REJECTED,{action:"_signTypedData",from:i,messageData:{domain:n.domain,types:t,value:n.value}}),e}}))}unlock(e){return Xn(this,void 0,void 0,(function*(){const t=this.provider,r=yield this.getAddress();return t.send("personal_unlockAccount",[r.toLowerCase(),e,null])}))}}class oi extends si{sendTransaction(e){return this.sendUncheckedTransaction(e).then((e=>({hash:e,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:t=>this.provider.waitForTransaction(e,t)})))}}const ai={chainId:!0,data:!0,gasLimit:!0,gasPrice:!0,nonce:!0,to:!0,value:!0,type:!0,accessList:!0,maxFeePerGas:!0,maxPriorityFeePerGas:!0};class ci extends Qn{constructor(e,t){let r=t;null==r&&(r=new Promise(((e,t)=>{setTimeout((()=>{this.detectNetwork().then((t=>{e(t)}),(e=>{t(e)}))}),0)}))),super(r),e||(e=be(this.constructor,"defaultUrl")()),ve(this,"connection","string"==typeof e?Object.freeze({url:e}):Object.freeze(we(e))),this._nextId=42}get _cache(){return null==this._eventLoopCache&&(this._eventLoopCache={}),this._eventLoopCache}static defaultUrl(){return"http://localhost:8545"}detectNetwork(){return this._cache.detectNetwork||(this._cache.detectNetwork=this._uncachedDetectNetwork(),setTimeout((()=>{this._cache.detectNetwork=null}),0)),this._cache.detectNetwork}_uncachedDetectNetwork(){return Xn(this,void 0,void 0,(function*(){yield ti(0);let e=null;try{e=yield this.send("eth_chainId",[])}catch(t){try{e=yield this.send("net_version",[])}catch(e){}}if(null!=e){const t=be(this.constructor,"getNetwork");try{return t(Z.from(e).toNumber())}catch(t){return Jn.throwError("could not detect network",O.errors.NETWORK_ERROR,{chainId:e,event:"invalidNetwork",serverError:t})}}return Jn.throwError("could not detect network",O.errors.NETWORK_ERROR,{event:"noNetwork"})}))}getSigner(e){return new si(ii,this,e)}getUncheckedSigner(e){return this.getSigner(e).connectUnchecked()}listAccounts(){return this.send("eth_accounts",[]).then((e=>e.map((e=>this.formatter.address(e)))))}send(e,t){const r={method:e,params:t,id:this._nextId++,jsonrpc:"2.0"};this.emit("debug",{action:"request",request:Be(r),provider:this});const n=["eth_chainId","eth_blockNumber"].indexOf(e)>=0;if(n&&this._cache[e])return this._cache[e];const i=pr(this.connection,JSON.stringify(r),ri).then((e=>(this.emit("debug",{action:"response",request:r,response:e,provider:this}),e)),(e=>{throw this.emit("debug",{action:"response",error:e,request:r,provider:this}),e}));return n&&(this._cache[e]=i,setTimeout((()=>{this._cache[e]=null}),0)),i}prepareRequest(e,t){switch(e){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[ni(t.address),t.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[ni(t.address),t.blockTag]];case"getCode":return["eth_getCode",[ni(t.address),t.blockTag]];case"getStorageAt":return["eth_getStorageAt",[ni(t.address),G(t.position,32),t.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[t.signedTransaction]];case"getBlock":return t.blockTag?["eth_getBlockByNumber",[t.blockTag,!!t.includeTransactions]]:t.blockHash?["eth_getBlockByHash",[t.blockHash,!!t.includeTransactions]]:null;case"getTransaction":return["eth_getTransactionByHash",[t.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[t.transactionHash]];case"call":return["eth_call",[be(this.constructor,"hexlifyTransaction")(t.transaction,{from:!0}),t.blockTag]];case"estimateGas":return["eth_estimateGas",[be(this.constructor,"hexlifyTransaction")(t.transaction,{from:!0})]];case"getLogs":return t.filter&&null!=t.filter.address&&(t.filter.address=ni(t.filter.address)),["eth_getLogs",[t.filter]]}return null}perform(e,t){return Xn(this,void 0,void 0,(function*(){if("call"===e||"estimateGas"===e){const e=t.transaction;if(e&&null!=e.type&&Z.from(e.type).isZero()&&null==e.maxFeePerGas&&null==e.maxPriorityFeePerGas){const r=yield this.getFeeData();null==r.maxFeePerGas&&null==r.maxPriorityFeePerGas&&((t=we(t)).transaction=we(e),delete t.transaction.type)}}const r=this.prepareRequest(e,t);null==r&&Jn.throwError(e+" not implemented",O.errors.NOT_IMPLEMENTED,{operation:e});try{return yield this.send(r[0],r[1])}catch(r){return ei(e,r,t)}}))}_startEvent(e){"pending"===e.tag&&this._startPending(),super._startEvent(e)}_startPending(){if(null!=this._pendingFilter)return;const e=this,t=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=t,t.then((function(r){return function n(){e.send("eth_getFilterChanges",[r]).then((function(r){if(e._pendingFilter!=t)return null;let n=Promise.resolve();return r.forEach((function(t){e._emitted["t:"+t.toLowerCase()]="pending",n=n.then((function(){return e.getTransaction(t).then((function(t){return e.emit("pending",t),null}))}))})),n.then((function(){return ti(1e3)}))})).then((function(){if(e._pendingFilter==t)return setTimeout((function(){n()}),0),null;e.send("eth_uninstallFilter",[r])})).catch((e=>{}))}(),r})).catch((e=>{}))}_stopEvent(e){"pending"===e.tag&&0===this.listenerCount("pending")&&(this._pendingFilter=null),super._stopEvent(e)}static hexlifyTransaction(e,t){const r=we(ai);if(t)for(const e in t)t[e]&&(r[e]=!0);var n,i;i=r,(n=e)&&"object"==typeof n||Ae.throwArgumentError("invalid object","object",n),Object.keys(n).forEach((e=>{i[e]||Ae.throwArgumentError("invalid object key - "+e,"transaction:"+e,n)}));const s={};return["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach((function(t){if(null==e[t])return;const r=H(Z.from(e[t]));"gasLimit"===t&&(t="gas"),s[t]=r})),["from","to","data"].forEach((function(t){null!=e[t]&&(s[t]=U(e[t]))})),e.accessList&&(s.accessList=hn(e.accessList)),s}}var li=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const ui=new O(gr);class di extends ci{detectNetwork(){const e=Object.create(null,{detectNetwork:{get:()=>super.detectNetwork}});return li(this,void 0,void 0,(function*(){let t=this.network;return null==t&&(t=yield e.detectNetwork.call(this),t||ui.throwError("no network detected",O.errors.UNKNOWN_ERROR,{}),null==this._network&&(ve(this,"_network",t),this.emit("network",t,null))),t}))}}const hi="abi/5.7.0",fi=new O(hi),pi={};let mi={calldata:!0,memory:!0,storage:!0},gi={calldata:!0,memory:!0};function yi(e,t){if("bytes"===e||"string"===e){if(mi[t])return!0}else if("address"===e){if("payable"===t)return!0}else if((e.indexOf("[")>=0||"tuple"===e)&&gi[t])return!0;return(mi[t]||"payable"===t)&&fi.throwArgumentError("invalid modifier","name",t),!1}function Ai(e,t){for(let r in t)ve(e,r,t[r])}const vi=Object.freeze({sighash:"sighash",minimal:"minimal",full:"full",json:"json"}),bi=new RegExp(/^(.*)\[([0-9]*)\]$/);class Ei{constructor(e,t){e!==pi&&fi.throwError("use fromString",O.errors.UNSUPPORTED_OPERATION,{operation:"new ParamType()"}),Ai(this,t);let r=this.type.match(bi);Ai(this,r?{arrayLength:parseInt(r[2]||"-1"),arrayChildren:Ei.fromObject({type:r[1],components:this.components}),baseType:"array"}:{arrayLength:null,arrayChildren:null,baseType:null!=this.components?"tuple":this.type}),this._isParamType=!0,Object.freeze(this)}format(e){if(e||(e=vi.sighash),vi[e]||fi.throwArgumentError("invalid format type","format",e),e===vi.json){let t={type:"tuple"===this.baseType?"tuple":this.type,name:this.name||void 0};return"boolean"==typeof this.indexed&&(t.indexed=this.indexed),this.components&&(t.components=this.components.map((t=>JSON.parse(t.format(e))))),JSON.stringify(t)}let t="";return"array"===this.baseType?(t+=this.arrayChildren.format(e),t+="["+(this.arrayLength<0?"":String(this.arrayLength))+"]"):"tuple"===this.baseType?(e!==vi.sighash&&(t+=this.type),t+="("+this.components.map((t=>t.format(e))).join(e===vi.full?", ":",")+")"):t+=this.type,e!==vi.sighash&&(!0===this.indexed&&(t+=" indexed"),e===vi.full&&this.name&&(t+=" "+this.name)),t}static from(e,t){return"string"==typeof e?Ei.fromString(e,t):Ei.fromObject(e)}static fromObject(e){return Ei.isParamType(e)?e:new Ei(pi,{name:e.name||null,type:ki(e.type),indexed:null==e.indexed?null:!!e.indexed,components:e.components?e.components.map(Ei.fromObject):null})}static fromString(e,t){return r=function(e,t){let r=e;function n(t){fi.throwArgumentError(`unexpected character at position ${t}`,"param",e)}function i(e){let r={type:"",name:"",parent:e,state:{allowType:!0}};return t&&(r.indexed=!1),r}e=e.replace(/\s/g," ");let s={type:"",name:"",state:{allowType:!0}},o=s;for(let r=0;r<e.length;r++){let s=e[r];switch(s){case"(":o.state.allowType&&""===o.type?o.type="tuple":o.state.allowParams||n(r),o.state.allowType=!1,o.type=ki(o.type),o.components=[i(o)],o=o.components[0];break;case")":delete o.state,"indexed"===o.name&&(t||n(r),o.indexed=!0,o.name=""),yi(o.type,o.name)&&(o.name=""),o.type=ki(o.type);let e=o;o=o.parent,o||n(r),delete e.parent,o.state.allowParams=!1,o.state.allowName=!0,o.state.allowArray=!0;break;case",":delete o.state,"indexed"===o.name&&(t||n(r),o.indexed=!0,o.name=""),yi(o.type,o.name)&&(o.name=""),o.type=ki(o.type);let a=i(o.parent);o.parent.components.push(a),delete o.parent,o=a;break;case" ":o.state.allowType&&""!==o.type&&(o.type=ki(o.type),delete o.state.allowType,o.state.allowName=!0,o.state.allowParams=!0),o.state.allowName&&""!==o.name&&("indexed"===o.name?(t||n(r),o.indexed&&n(r),o.indexed=!0,o.name=""):yi(o.type,o.name)?o.name="":o.state.allowName=!1);break;case"[":o.state.allowArray||n(r),o.type+=s,o.state.allowArray=!1,o.state.allowName=!1,o.state.readArray=!0;break;case"]":o.state.readArray||n(r),o.type+=s,o.state.readArray=!1,o.state.allowArray=!0,o.state.allowName=!0;break;default:o.state.allowType?(o.type+=s,o.state.allowParams=!0,o.state.allowArray=!0):o.state.allowName?(o.name+=s,delete o.state.allowArray):o.state.readArray?o.type+=s:n(r)}}return o.parent&&fi.throwArgumentError("unexpected eof","param",e),delete s.state,"indexed"===o.name?(t||n(r.length-7),o.indexed&&n(r.length-7),o.indexed=!0,o.name=""):yi(o.type,o.name)&&(o.name=""),s.type=ki(s.type),s}(e,!!t),Ei.fromObject({name:r.name,type:r.type,indexed:r.indexed,components:r.components});var r}static isParamType(e){return!(null==e||!e._isParamType)}}function wi(e,t){return function(e){e=e.trim();let t=[],r="",n=0;for(let i=0;i<e.length;i++){let s=e[i];","===s&&0===n?(t.push(r),r=""):(r+=s,"("===s?n++:")"===s&&(n--,-1===n&&fi.throwArgumentError("unbalanced parenthesis","value",e)))}r&&t.push(r);return t}(e).map((e=>Ei.fromString(e,t)))}class Pi{constructor(e,t){e!==pi&&fi.throwError("use a static from method",O.errors.UNSUPPORTED_OPERATION,{operation:"new Fragment()"}),Ai(this,t),this._isFragment=!0,Object.freeze(this)}static from(e){return Pi.isFragment(e)?e:"string"==typeof e?Pi.fromString(e):Pi.fromObject(e)}static fromObject(e){if(Pi.isFragment(e))return e;switch(e.type){case"function":return Di.fromObject(e);case"event":return Ii.fromObject(e);case"constructor":return Oi.fromObject(e);case"error":return Ni.fromObject(e);case"fallback":case"receive":return null}return fi.throwArgumentError("invalid fragment object","value",e)}static fromString(e){return"event"===(e=(e=(e=e.replace(/\s/g," ")).replace(/\(/g," (").replace(/\)/g,") ").replace(/\s+/g," ")).trim()).split(" ")[0]?Ii.fromString(e.substring(5).trim()):"function"===e.split(" ")[0]?Di.fromString(e.substring(8).trim()):"constructor"===e.split("(")[0].trim()?Oi.fromString(e.trim()):"error"===e.split(" ")[0]?Ni.fromString(e.substring(5).trim()):fi.throwArgumentError("unsupported fragment","value",e)}static isFragment(e){return!(!e||!e._isFragment)}}class Ii extends Pi{format(e){if(e||(e=vi.sighash),vi[e]||fi.throwArgumentError("invalid format type","format",e),e===vi.json)return JSON.stringify({type:"event",anonymous:this.anonymous,name:this.name,inputs:this.inputs.map((t=>JSON.parse(t.format(e))))});let t="";return e!==vi.sighash&&(t+="event "),t+=this.name+"("+this.inputs.map((t=>t.format(e))).join(e===vi.full?", ":",")+") ",e!==vi.sighash&&this.anonymous&&(t+="anonymous "),t.trim()}static from(e){return"string"==typeof e?Ii.fromString(e):Ii.fromObject(e)}static fromObject(e){if(Ii.isEventFragment(e))return e;"event"!==e.type&&fi.throwArgumentError("invalid event object","value",e);const t={name:Ri(e.name),anonymous:e.anonymous,inputs:e.inputs?e.inputs.map(Ei.fromObject):[],type:"event"};return new Ii(pi,t)}static fromString(e){let t=e.match(Si);t||fi.throwArgumentError("invalid event string","value",e);let r=!1;return t[3].split(" ").forEach((e=>{switch(e.trim()){case"anonymous":r=!0;break;case"":break;default:fi.warn("unknown modifier: "+e)}})),Ii.fromObject({name:t[1].trim(),anonymous:r,inputs:wi(t[2],!0),type:"event"})}static isEventFragment(e){return e&&e._isFragment&&"event"===e.type}}function Ti(e,t){t.gas=null;let r=e.split("@");return 1!==r.length?(r.length>2&&fi.throwArgumentError("invalid human-readable ABI signature","value",e),r[1].match(/^[0-9]+$/)||fi.throwArgumentError("invalid human-readable ABI signature gas","value",e),t.gas=Z.from(r[1]),r[0]):e}function Bi(e,t){t.constant=!1,t.payable=!1,t.stateMutability="nonpayable",e.split(" ").forEach((e=>{switch(e.trim()){case"constant":t.constant=!0;break;case"payable":t.payable=!0,t.stateMutability="payable";break;case"nonpayable":t.payable=!1,t.stateMutability="nonpayable";break;case"pure":t.constant=!0,t.stateMutability="pure";break;case"view":t.constant=!0,t.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+e)}}))}function _i(e){let t={constant:!1,payable:!0,stateMutability:"payable"};return null!=e.stateMutability?(t.stateMutability=e.stateMutability,t.constant="view"===t.stateMutability||"pure"===t.stateMutability,null!=e.constant&&!!e.constant!==t.constant&&fi.throwArgumentError("cannot have constant function with mutability "+t.stateMutability,"value",e),t.payable="payable"===t.stateMutability,null!=e.payable&&!!e.payable!==t.payable&&fi.throwArgumentError("cannot have payable function with mutability "+t.stateMutability,"value",e)):null!=e.payable?(t.payable=!!e.payable,null!=e.constant||t.payable||"constructor"===e.type||fi.throwArgumentError("unable to determine stateMutability","value",e),t.constant=!!e.constant,t.constant?t.stateMutability="view":t.stateMutability=t.payable?"payable":"nonpayable",t.payable&&t.constant&&fi.throwArgumentError("cannot have constant payable function","value",e)):null!=e.constant?(t.constant=!!e.constant,t.payable=!t.constant,t.stateMutability=t.constant?"view":"payable"):"constructor"!==e.type&&fi.throwArgumentError("unable to determine stateMutability","value",e),t}class Oi extends Pi{format(e){if(e||(e=vi.sighash),vi[e]||fi.throwArgumentError("invalid format type","format",e),e===vi.json)return JSON.stringify({type:"constructor",stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payable:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((t=>JSON.parse(t.format(e))))});e===vi.sighash&&fi.throwError("cannot format a constructor for sighash",O.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"});let t="constructor("+this.inputs.map((t=>t.format(e))).join(e===vi.full?", ":",")+") ";return this.stateMutability&&"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "),t.trim()}static from(e){return"string"==typeof e?Oi.fromString(e):Oi.fromObject(e)}static fromObject(e){if(Oi.isConstructorFragment(e))return e;"constructor"!==e.type&&fi.throwArgumentError("invalid constructor object","value",e);let t=_i(e);t.constant&&fi.throwArgumentError("constructor cannot be constant","value",e);const r={name:null,type:e.type,inputs:e.inputs?e.inputs.map(Ei.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?Z.from(e.gas):null};return new Oi(pi,r)}static fromString(e){let t={type:"constructor"},r=(e=Ti(e,t)).match(Si);return r&&"constructor"===r[1].trim()||fi.throwArgumentError("invalid constructor string","value",e),t.inputs=wi(r[2].trim(),!1),Bi(r[3].trim(),t),Oi.fromObject(t)}static isConstructorFragment(e){return e&&e._isFragment&&"constructor"===e.type}}class Di extends Oi{format(e){if(e||(e=vi.sighash),vi[e]||fi.throwArgumentError("invalid format type","format",e),e===vi.json)return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:"nonpayable"!==this.stateMutability?this.stateMutability:void 0,payable:this.payable,gas:this.gas?this.gas.toNumber():void 0,inputs:this.inputs.map((t=>JSON.parse(t.format(e)))),outputs:this.outputs.map((t=>JSON.parse(t.format(e))))});let t="";return e!==vi.sighash&&(t+="function "),t+=this.name+"("+this.inputs.map((t=>t.format(e))).join(e===vi.full?", ":",")+") ",e!==vi.sighash&&(this.stateMutability?"nonpayable"!==this.stateMutability&&(t+=this.stateMutability+" "):this.constant&&(t+="view "),this.outputs&&this.outputs.length&&(t+="returns ("+this.outputs.map((t=>t.format(e))).join(", ")+") "),null!=this.gas&&(t+="@"+this.gas.toString()+" ")),t.trim()}static from(e){return"string"==typeof e?Di.fromString(e):Di.fromObject(e)}static fromObject(e){if(Di.isFunctionFragment(e))return e;"function"!==e.type&&fi.throwArgumentError("invalid function object","value",e);let t=_i(e);const r={type:e.type,name:Ri(e.name),constant:t.constant,inputs:e.inputs?e.inputs.map(Ei.fromObject):[],outputs:e.outputs?e.outputs.map(Ei.fromObject):[],payable:t.payable,stateMutability:t.stateMutability,gas:e.gas?Z.from(e.gas):null};return new Di(pi,r)}static fromString(e){let t={type:"function"},r=(e=Ti(e,t)).split(" returns ");r.length>2&&fi.throwArgumentError("invalid function string","value",e);let n=r[0].match(Si);if(n||fi.throwArgumentError("invalid function signature","value",e),t.name=n[1].trim(),t.name&&Ri(t.name),t.inputs=wi(n[2],!1),Bi(n[3].trim(),t),r.length>1){let n=r[1].match(Si);""==n[1].trim()&&""==n[3].trim()||fi.throwArgumentError("unexpected tokens","value",e),t.outputs=wi(n[2],!1)}else t.outputs=[];return Di.fromObject(t)}static isFunctionFragment(e){return e&&e._isFragment&&"function"===e.type}}function Ci(e){const t=e.format();return"Error(string)"!==t&&"Panic(uint256)"!==t||fi.throwArgumentError(`cannot specify user defined ${t} error`,"fragment",e),e}class Ni extends Pi{format(e){if(e||(e=vi.sighash),vi[e]||fi.throwArgumentError("invalid format type","format",e),e===vi.json)return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map((t=>JSON.parse(t.format(e))))});let t="";return e!==vi.sighash&&(t+="error "),t+=this.name+"("+this.inputs.map((t=>t.format(e))).join(e===vi.full?", ":",")+") ",t.trim()}static from(e){return"string"==typeof e?Ni.fromString(e):Ni.fromObject(e)}static fromObject(e){if(Ni.isErrorFragment(e))return e;"error"!==e.type&&fi.throwArgumentError("invalid error object","value",e);const t={type:e.type,name:Ri(e.name),inputs:e.inputs?e.inputs.map(Ei.fromObject):[]};return Ci(new Ni(pi,t))}static fromString(e){let t={type:"error"},r=e.match(Si);return r||fi.throwArgumentError("invalid error signature","value",e),t.name=r[1].trim(),t.name&&Ri(t.name),t.inputs=wi(r[2],!1),Ci(Ni.fromObject(t))}static isErrorFragment(e){return e&&e._isFragment&&"error"===e.type}}function ki(e){return e.match(/^uint($|[^1-9])/)?e="uint256"+e.substring(4):e.match(/^int($|[^1-9])/)&&(e="int256"+e.substring(3)),e}const xi=new RegExp("^[a-zA-Z$_][a-zA-Z0-9$_]*$");function Ri(e){return e&&e.match(xi)||fi.throwArgumentError(`invalid identifier "${e}"`,"value",e),e}const Si=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$");const Fi=new O(hi);class Li{constructor(e,t,r,n){this.name=e,this.type=t,this.localName=r,this.dynamic=n}_throwError(e,t){Fi.throwArgumentError(e,this.localName,t)}}class qi{constructor(e){ve(this,"wordSize",e||32),this._data=[],this._dataLength=0,this._padding=new Uint8Array(e)}get data(){return Q(this._data)}get length(){return this._dataLength}_writeData(e){return this._data.push(e),this._dataLength+=e.length,e.length}appendWriter(e){return this._writeData(F(e._data))}writeBytes(e){let t=S(e);const r=t.length%this.wordSize;return r&&(t=F([t,this._padding.slice(r)])),this._writeData(t)}_getValue(e){let t=S(Z.from(e));return t.length>this.wordSize&&Fi.throwError("value out-of-bounds",O.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:t.length}),t.length%this.wordSize&&(t=F([this._padding.slice(t.length%this.wordSize),t])),t}writeValue(e){return this._writeData(this._getValue(e))}writeUpdatableValue(){const e=this._data.length;return this._data.push(this._padding),this._dataLength+=this.wordSize,t=>{this._data[e]=this._getValue(t)}}}class Mi{constructor(e,t,r,n){ve(this,"_data",S(e)),ve(this,"wordSize",t||32),ve(this,"_coerceFunc",r),ve(this,"allowLoose",n),this._offset=0}get data(){return U(this._data)}get consumed(){return this._offset}static coerce(e,t){let r=e.match("^u?int([0-9]+)$");return r&&parseInt(r[1])<=48&&(t=t.toNumber()),t}coerce(e,t){return this._coerceFunc?this._coerceFunc(e,t):Mi.coerce(e,t)}_peekBytes(e,t,r){let n=Math.ceil(t/this.wordSize)*this.wordSize;return this._offset+n>this._data.length&&(this.allowLoose&&r&&this._offset+t<=this._data.length?n=t:Fi.throwError("data out-of-bounds",O.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+n})),this._data.slice(this._offset,this._offset+n)}subReader(e){return new Mi(this._data.slice(this._offset+e),this.wordSize,this._coerceFunc,this.allowLoose)}readBytes(e,t){let r=this._peekBytes(0,e,!!t);return this._offset+=r.length,r.slice(0,e)}readValue(){return Z.from(this.readBytes(this.wordSize))}}class Ui extends Li{constructor(e){super("address","address",e,!1)}defaultValue(){return"0x0000000000000000000000000000000000000000"}encode(e,t){try{t=Qt(t)}catch(e){this._throwError(e.message,t)}return e.writeValue(t)}decode(e){return Qt(G(e.readValue().toHexString(),20))}}class Vi extends Li{constructor(e){super(e.name,e.type,void 0,e.dynamic),this.coder=e}defaultValue(){return this.coder.defaultValue()}encode(e,t){return this.coder.encode(e,t)}decode(e){return this.coder.decode(e)}}const ji=new O(hi);function Qi(e,t,r){let n=null;if(Array.isArray(r))n=r;else if(r&&"object"==typeof r){let e={};n=t.map((t=>{const n=t.localName;return n||ji.throwError("cannot encode object for signature with missing names",O.errors.INVALID_ARGUMENT,{argument:"values",coder:t,value:r}),e[n]&&ji.throwError("cannot encode object for signature with duplicate names",O.errors.INVALID_ARGUMENT,{argument:"values",coder:t,value:r}),e[n]=!0,r[n]}))}else ji.throwArgumentError("invalid tuple value","tuple",r);t.length!==n.length&&ji.throwArgumentError("types/value length mismatch","tuple",r);let i=new qi(e.wordSize),s=new qi(e.wordSize),o=[];t.forEach(((e,t)=>{let r=n[t];if(e.dynamic){let t=s.length;e.encode(s,r);let n=i.writeUpdatableValue();o.push((e=>{n(e+t)}))}else e.encode(i,r)})),o.forEach((e=>{e(i.length)}));let a=e.appendWriter(i);return a+=e.appendWriter(s),a}function Hi(e,t){let r=[],n=e.subReader(0);t.forEach((t=>{let i=null;if(t.dynamic){let r=e.readValue(),s=n.subReader(r.toNumber());try{i=t.decode(s)}catch(e){if(e.code===O.errors.BUFFER_OVERRUN)throw e;i=e,i.baseType=t.name,i.name=t.localName,i.type=t.type}}else try{i=t.decode(e)}catch(e){if(e.code===O.errors.BUFFER_OVERRUN)throw e;i=e,i.baseType=t.name,i.name=t.localName,i.type=t.type}null!=i&&r.push(i)}));const i=t.reduce(((e,t)=>{const r=t.localName;return r&&(e[r]||(e[r]=0),e[r]++),e}),{});t.forEach(((e,t)=>{let n=e.localName;if(!n||1!==i[n])return;if("length"===n&&(n="_length"),null!=r[n])return;const s=r[t];s instanceof Error?Object.defineProperty(r,n,{enumerable:!0,get:()=>{throw s}}):r[n]=s}));for(let e=0;e<r.length;e++){const t=r[e];t instanceof Error&&Object.defineProperty(r,e,{enumerable:!0,get:()=>{throw t}})}return Object.freeze(r)}class Gi extends Li{constructor(e,t,r){super("array",e.type+"["+(t>=0?t:"")+"]",r,-1===t||e.dynamic),this.coder=e,this.length=t}defaultValue(){const e=this.coder.defaultValue(),t=[];for(let r=0;r<this.length;r++)t.push(e);return t}encode(e,t){Array.isArray(t)||this._throwError("expected array value",t);let r=this.length;-1===r&&(r=t.length,e.writeValue(t.length)),ji.checkArgumentCount(t.length,r,"coder array"+(this.localName?" "+this.localName:""));let n=[];for(let e=0;e<t.length;e++)n.push(this.coder);return Qi(e,n,t)}decode(e){let t=this.length;-1===t&&(t=e.readValue().toNumber(),32*t>e._data.length&&ji.throwError("insufficient data length",O.errors.BUFFER_OVERRUN,{length:e._data.length,count:t}));let r=[];for(let e=0;e<t;e++)r.push(new Vi(this.coder));return e.coerce(this.name,Hi(e,r))}}class Yi extends Li{constructor(e){super("bool","bool",e,!1)}defaultValue(){return!1}encode(e,t){return e.writeValue(t?1:0)}decode(e){return e.coerce(this.type,!e.readValue().isZero())}}class $i extends Li{constructor(e,t){super(e,e,t,!0)}defaultValue(){return"0x"}encode(e,t){t=S(t);let r=e.writeValue(t.length);return r+=e.writeBytes(t),r}decode(e){return e.readBytes(e.readValue().toNumber(),!0)}}class Ki extends $i{constructor(e){super("bytes",e)}decode(e){return e.coerce(this.name,U(super.decode(e)))}}class zi extends Li{constructor(e,t){let r="bytes"+String(e);super(r,r,t,!1),this.size=e}defaultValue(){return"0x0000000000000000000000000000000000000000000000000000000000000000".substring(0,2+2*this.size)}encode(e,t){let r=S(t);return r.length!==this.size&&this._throwError("incorrect data length",t),e.writeBytes(r)}decode(e){return e.coerce(this.name,U(e.readBytes(this.size)))}}class Xi extends Li{constructor(e){super("null","",e,!1)}defaultValue(){return null}encode(e,t){return null!=t&&this._throwError("not null",t),e.writeBytes([])}decode(e){return e.readBytes(0),e.coerce(this.name,null)}}class Ji extends Li{constructor(e,t,r){const n=(t?"int":"uint")+8*e;super(n,n,r,!1),this.size=e,this.signed=t}defaultValue(){return 0}encode(e,t){let r=Z.from(t),n=Ye.mask(8*e.wordSize);if(this.signed){let e=n.mask(8*this.size-1);(r.gt(e)||r.lt(e.add(Ge).mul(Qe)))&&this._throwError("value out-of-bounds",t)}else(r.lt(He)||r.gt(n.mask(8*this.size)))&&this._throwError("value out-of-bounds",t);return r=r.toTwos(8*this.size).mask(8*this.size),this.signed&&(r=r.fromTwos(8*this.size).toTwos(8*e.wordSize)),e.writeValue(r)}decode(e){let t=e.readValue().mask(8*this.size);return this.signed&&(t=t.fromTwos(8*this.size)),e.coerce(this.name,t)}}class Wi extends $i{constructor(e){super("string",e)}defaultValue(){return""}encode(e,t){return super.encode(e,et(t))}decode(e){return tt(super.decode(e))}}class Zi extends Li{constructor(e,t){let r=!1;const n=[];e.forEach((e=>{e.dynamic&&(r=!0),n.push(e.type)}));super("tuple","tuple("+n.join(",")+")",t,r),this.coders=e}defaultValue(){const e=[];this.coders.forEach((t=>{e.push(t.defaultValue())}));const t=this.coders.reduce(((e,t)=>{const r=t.localName;return r&&(e[r]||(e[r]=0),e[r]++),e}),{});return this.coders.forEach(((r,n)=>{let i=r.localName;i&&1===t[i]&&("length"===i&&(i="_length"),null==e[i]&&(e[i]=e[n]))})),Object.freeze(e)}encode(e,t){return Qi(e,this.coders,t)}decode(e){return e.coerce(this.name,Hi(e,this.coders))}}const es=new O(hi),ts=new RegExp(/^bytes([0-9]*)$/),rs=new RegExp(/^(u?int)([0-9]*)$/);const ns=new class{constructor(e){ve(this,"coerceFunc",e||null)}_getCoder(e){switch(e.baseType){case"address":return new Ui(e.name);case"bool":return new Yi(e.name);case"string":return new Wi(e.name);case"bytes":return new Ki(e.name);case"array":return new Gi(this._getCoder(e.arrayChildren),e.arrayLength,e.name);case"tuple":return new Zi((e.components||[]).map((e=>this._getCoder(e))),e.name);case"":return new Xi(e.name)}let t=e.type.match(rs);if(t){let r=parseInt(t[2]||"256");return(0===r||r>256||r%8!=0)&&es.throwArgumentError("invalid "+t[1]+" bit length","param",e),new Ji(r/8,"int"===t[1],e.name)}if(t=e.type.match(ts),t){let r=parseInt(t[1]);return(0===r||r>32)&&es.throwArgumentError("invalid bytes length","param",e),new zi(r,e.name)}return es.throwArgumentError("invalid type","type",e.type)}_getWordSize(){return 32}_getReader(e,t){return new Mi(e,this._getWordSize(),this.coerceFunc,t)}_getWriter(){return new qi(this._getWordSize())}getDefaultValue(e){const t=e.map((e=>this._getCoder(Ei.from(e))));return new Zi(t,"_").defaultValue()}encode(e,t){e.length!==t.length&&es.throwError("types/values length mismatch",O.errors.INVALID_ARGUMENT,{count:{types:e.length,values:t.length},value:{types:e,values:t}});const r=e.map((e=>this._getCoder(Ei.from(e)))),n=new Zi(r,"_"),i=this._getWriter();return n.encode(i,t),i.data}decode(e,t,r){const n=e.map((e=>this._getCoder(Ei.from(e))));return new Zi(n,"_").decode(this._getReader(S(t),r))}},is=new O(hi);class ss extends _e{}class os extends _e{}class as extends _e{}class cs extends _e{static isIndexed(e){return!(!e||!e._isIndexed)}}const ls={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:!0},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"]}};function us(e,t){const r=new Error(`deferred error during ABI decoding triggered accessing ${e}`);return r.error=t,r}class ds{constructor(e){let t=[];t="string"==typeof e?JSON.parse(e):e,ve(this,"fragments",t.map((e=>Pi.from(e))).filter((e=>null!=e))),ve(this,"_abiCoder",be(new.target,"getAbiCoder")()),ve(this,"functions",{}),ve(this,"errors",{}),ve(this,"events",{}),ve(this,"structs",{}),this.fragments.forEach((e=>{let t=null;switch(e.type){case"constructor":return this.deploy?void is.warn("duplicate definition - constructor"):void ve(this,"deploy",e);case"function":t=this.functions;break;case"event":t=this.events;break;case"error":t=this.errors;break;default:return}let r=e.format();t[r]?is.warn("duplicate definition - "+r):t[r]=e})),this.deploy||ve(this,"deploy",Oi.from({payable:!1,type:"constructor"})),ve(this,"_isInterface",!0)}format(e){e||(e=vi.full),e===vi.sighash&&is.throwArgumentError("interface does not support formatting sighash","format",e);const t=this.fragments.map((t=>t.format(e)));return e===vi.json?JSON.stringify(t.map((e=>JSON.parse(e)))):t}static getAbiCoder(){return ns}static getAddress(e){return Qt(e)}static getSighash(e){return j(rt(e.format()),0,4)}static getEventTopic(e){return rt(e.format())}getFunction(e){if(q(e)){for(const t in this.functions)if(e===this.getSighash(t))return this.functions[t];is.throwArgumentError("no matching function","sighash",e)}if(-1===e.indexOf("(")){const t=e.trim(),r=Object.keys(this.functions).filter((e=>e.split("(")[0]===t));return 0===r.length?is.throwArgumentError("no matching function","name",t):r.length>1&&is.throwArgumentError("multiple matching functions","name",t),this.functions[r[0]]}const t=this.functions[Di.fromString(e).format()];return t||is.throwArgumentError("no matching function","signature",e),t}getEvent(e){if(q(e)){const t=e.toLowerCase();for(const e in this.events)if(t===this.getEventTopic(e))return this.events[e];is.throwArgumentError("no matching event","topichash",t)}if(-1===e.indexOf("(")){const t=e.trim(),r=Object.keys(this.events).filter((e=>e.split("(")[0]===t));return 0===r.length?is.throwArgumentError("no matching event","name",t):r.length>1&&is.throwArgumentError("multiple matching events","name",t),this.events[r[0]]}const t=this.events[Ii.fromString(e).format()];return t||is.throwArgumentError("no matching event","signature",e),t}getError(e){if(q(e)){const t=be(this.constructor,"getSighash");for(const r in this.errors){if(e===t(this.errors[r]))return this.errors[r]}is.throwArgumentError("no matching error","sighash",e)}if(-1===e.indexOf("(")){const t=e.trim(),r=Object.keys(this.errors).filter((e=>e.split("(")[0]===t));return 0===r.length?is.throwArgumentError("no matching error","name",t):r.length>1&&is.throwArgumentError("multiple matching errors","name",t),this.errors[r[0]]}const t=this.errors[Di.fromString(e).format()];return t||is.throwArgumentError("no matching error","signature",e),t}getSighash(e){if("string"==typeof e)try{e=this.getFunction(e)}catch(t){try{e=this.getError(e)}catch(e){throw t}}return be(this.constructor,"getSighash")(e)}getEventTopic(e){return"string"==typeof e&&(e=this.getEvent(e)),be(this.constructor,"getEventTopic")(e)}_decodeParams(e,t){return this._abiCoder.decode(e,t)}_encodeParams(e,t){return this._abiCoder.encode(e,t)}encodeDeploy(e){return this._encodeParams(this.deploy.inputs,e||[])}decodeErrorResult(e,t){"string"==typeof e&&(e=this.getError(e));const r=S(t);return U(r.slice(0,4))!==this.getSighash(e)&&is.throwArgumentError(`data signature does not match error ${e.name}.`,"data",U(r)),this._decodeParams(e.inputs,r.slice(4))}encodeErrorResult(e,t){return"string"==typeof e&&(e=this.getError(e)),U(F([this.getSighash(e),this._encodeParams(e.inputs,t||[])]))}decodeFunctionData(e,t){"string"==typeof e&&(e=this.getFunction(e));const r=S(t);return U(r.slice(0,4))!==this.getSighash(e)&&is.throwArgumentError(`data signature does not match function ${e.name}.`,"data",U(r)),this._decodeParams(e.inputs,r.slice(4))}encodeFunctionData(e,t){return"string"==typeof e&&(e=this.getFunction(e)),U(F([this.getSighash(e),this._encodeParams(e.inputs,t||[])]))}decodeFunctionResult(e,t){"string"==typeof e&&(e=this.getFunction(e));let r=S(t),n=null,i="",s=null,o=null,a=null;switch(r.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(e.outputs,r)}catch(e){}break;case 4:{const e=U(r.slice(0,4)),t=ls[e];if(t)s=this._abiCoder.decode(t.inputs,r.slice(4)),o=t.name,a=t.signature,t.reason&&(n=s[0]),"Error"===o?i=`; VM Exception while processing transaction: reverted with reason string ${JSON.stringify(s[0])}`:"Panic"===o&&(i=`; VM Exception while processing transaction: reverted with panic code ${s[0]}`);else try{const t=this.getError(e);s=this._abiCoder.decode(t.inputs,r.slice(4)),o=t.name,a=t.format()}catch(e){}break}}return is.throwError("call revert exception"+i,O.errors.CALL_EXCEPTION,{method:e.format(),data:U(t),errorArgs:s,errorName:o,errorSignature:a,reason:n})}encodeFunctionResult(e,t){return"string"==typeof e&&(e=this.getFunction(e)),U(this._abiCoder.encode(e.outputs,t||[]))}encodeFilterTopics(e,t){"string"==typeof e&&(e=this.getEvent(e)),t.length>e.inputs.length&&is.throwError("too many arguments for "+e.format(),O.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:t});let r=[];e.anonymous||r.push(this.getEventTopic(e));const n=(e,t)=>"string"===e.type?rt(t):"bytes"===e.type?$e(U(t)):("bool"===e.type&&"boolean"==typeof t&&(t=t?"0x01":"0x00"),e.type.match(/^u?int/)&&(t=Z.from(t).toHexString()),"address"===e.type&&this._abiCoder.encode(["address"],[t]),G(U(t),32));for(t.forEach(((t,i)=>{let s=e.inputs[i];s.indexed?null==t?r.push(null):"array"===s.baseType||"tuple"===s.baseType?is.throwArgumentError("filtering with tuples or arrays not supported","contract."+s.name,t):Array.isArray(t)?r.push(t.map((e=>n(s,e)))):r.push(n(s,t)):null!=t&&is.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+s.name,t)}));r.length&&null===r[r.length-1];)r.pop();return r}encodeEventLog(e,t){"string"==typeof e&&(e=this.getEvent(e));const r=[],n=[],i=[];return e.anonymous||r.push(this.getEventTopic(e)),t.length!==e.inputs.length&&is.throwArgumentError("event arguments/values mismatch","values",t),e.inputs.forEach(((e,s)=>{const o=t[s];if(e.indexed)if("string"===e.type)r.push(rt(o));else if("bytes"===e.type)r.push($e(o));else{if("tuple"===e.baseType||"array"===e.baseType)throw new Error("not implemented");r.push(this._abiCoder.encode([e.type],[o]))}else n.push(e),i.push(o)})),{data:this._abiCoder.encode(n,i),topics:r}}decodeEventLog(e,t,r){if("string"==typeof e&&(e=this.getEvent(e)),null!=r&&!e.anonymous){let t=this.getEventTopic(e);q(r[0],32)&&r[0].toLowerCase()===t||is.throwError("fragment/topic mismatch",O.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:t,value:r[0]}),r=r.slice(1)}let n=[],i=[],s=[];e.inputs.forEach(((e,t)=>{e.indexed?"string"===e.type||"bytes"===e.type||"tuple"===e.baseType||"array"===e.baseType?(n.push(Ei.fromObject({type:"bytes32",name:e.name})),s.push(!0)):(n.push(e),s.push(!1)):(i.push(e),s.push(!1))}));let o=null!=r?this._abiCoder.decode(n,F(r)):null,a=this._abiCoder.decode(i,t,!0),c=[],l=0,u=0;e.inputs.forEach(((e,t)=>{if(e.indexed)if(null==o)c[t]=new cs({_isIndexed:!0,hash:null});else if(s[t])c[t]=new cs({_isIndexed:!0,hash:o[u++]});else try{c[t]=o[u++]}catch(e){c[t]=e}else try{c[t]=a[l++]}catch(e){c[t]=e}if(e.name&&null==c[e.name]){const r=c[t];r instanceof Error?Object.defineProperty(c,e.name,{enumerable:!0,get:()=>{throw us(`property ${JSON.stringify(e.name)}`,r)}}):c[e.name]=r}}));for(let e=0;e<c.length;e++){const t=c[e];t instanceof Error&&Object.defineProperty(c,e,{enumerable:!0,get:()=>{throw us(`index ${e}`,t)}})}return Object.freeze(c)}parseTransaction(e){let t=this.getFunction(e.data.substring(0,10).toLowerCase());return t?new os({args:this._abiCoder.decode(t.inputs,"0x"+e.data.substring(10)),functionFragment:t,name:t.name,signature:t.format(),sighash:this.getSighash(t),value:Z.from(e.value||"0")}):null}parseLog(e){let t=this.getEvent(e.topics[0]);return!t||t.anonymous?null:new ss({eventFragment:t,name:t.name,signature:t.format(),topic:this.getEventTopic(t),args:this.decodeEventLog(t,e.data,e.topics)})}parseError(e){const t=U(e);let r=this.getError(t.substring(0,10).toLowerCase());return r?new as({args:this._abiCoder.decode(r.inputs,"0x"+t.substring(10)),errorFragment:r,name:r.name,signature:r.format(),sighash:this.getSighash(r)}):null}static isInterface(e){return!(!e||!e._isInterface)}}var hs=function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};const fs=new O("contracts/5.7.0");function ps(e,t){return hs(this,void 0,void 0,(function*(){const r=yield t;"string"!=typeof r&&fs.throwArgumentError("invalid address or ENS name","name",r);try{return Qt(r)}catch(e){}e||fs.throwError("a provider or signer is needed to resolve ENS names",O.errors.UNSUPPORTED_OPERATION,{operation:"resolveName"});const n=yield e.resolveName(r);return null==n&&fs.throwArgumentError("resolver or addr is not configured for ENS name","name",r),n}))}function ms(e,t,r){return hs(this,void 0,void 0,(function*(){return Array.isArray(r)?yield Promise.all(r.map(((r,n)=>ms(e,Array.isArray(t)?t[n]:t[r.name],r)))):"address"===r.type?yield ps(e,t):"tuple"===r.type?yield ms(e,t,r.components):"array"===r.baseType?Array.isArray(t)?yield Promise.all(t.map((t=>ms(e,t,r.arrayChildren)))):Promise.reject(fs.makeError("invalid value for array",O.errors.INVALID_ARGUMENT,{argument:"value",value:t})):t}))}function gs(e,t,r){return hs(this,void 0,void 0,(function*(){let n={};r.length===t.inputs.length+1&&"object"==typeof r[r.length-1]&&(n=we(r.pop())),fs.checkArgumentCount(r.length,t.inputs.length,"passed to contract"),e.signer?n.from?n.from=Ee({override:ps(e.signer,n.from),signer:e.signer.getAddress()}).then((e=>hs(this,void 0,void 0,(function*(){return Qt(e.signer)!==e.override&&fs.throwError("Contract with a Signer cannot override from",O.errors.UNSUPPORTED_OPERATION,{operation:"overrides.from"}),e.override})))):n.from=e.signer.getAddress():n.from&&(n.from=ps(e.provider,n.from));const i=yield Ee({args:ms(e.signer||e.provider,r,t.inputs),address:e.resolvedAddress,overrides:Ee(n)||{}}),s=e.interface.encodeFunctionData(t,i.args),o={data:s,to:i.address},a=i.overrides;if(null!=a.nonce&&(o.nonce=Z.from(a.nonce).toNumber()),null!=a.gasLimit&&(o.gasLimit=Z.from(a.gasLimit)),null!=a.gasPrice&&(o.gasPrice=Z.from(a.gasPrice)),null!=a.maxFeePerGas&&(o.maxFeePerGas=Z.from(a.maxFeePerGas)),null!=a.maxPriorityFeePerGas&&(o.maxPriorityFeePerGas=Z.from(a.maxPriorityFeePerGas)),null!=a.from&&(o.from=a.from),null!=a.type&&(o.type=a.type),null!=a.accessList&&(o.accessList=hn(a.accessList)),null==o.gasLimit&&null!=t.gas){let e=21e3;const r=S(s);for(let t=0;t<r.length;t++)e+=4,r[t]&&(e+=64);o.gasLimit=Z.from(t.gas).add(e)}if(a.value){const e=Z.from(a.value);e.isZero()||t.payable||fs.throwError("non-payable method cannot override value",O.errors.UNSUPPORTED_OPERATION,{operation:"overrides.value",value:n.value}),o.value=e}a.customData&&(o.customData=we(a.customData)),a.ccipReadEnabled&&(o.ccipReadEnabled=!!a.ccipReadEnabled),delete n.nonce,delete n.gasLimit,delete n.gasPrice,delete n.from,delete n.value,delete n.type,delete n.accessList,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.customData,delete n.ccipReadEnabled;const c=Object.keys(n).filter((e=>null!=n[e]));return c.length&&fs.throwError(`cannot override ${c.map((e=>JSON.stringify(e))).join(",")}`,O.errors.UNSUPPORTED_OPERATION,{operation:"overrides",overrides:c}),o}))}function ys(e,t,r){const n=e.signer||e.provider;return function(...i){return hs(this,void 0,void 0,(function*(){let s;if(i.length===t.inputs.length+1&&"object"==typeof i[i.length-1]){const e=we(i.pop());null!=e.blockTag&&(s=yield e.blockTag),delete e.blockTag,i.push(e)}null!=e.deployTransaction&&(yield e._deployed(s));const o=yield gs(e,t,i),a=yield n.call(o,s);try{let n=e.interface.decodeFunctionResult(t,a);return r&&1===t.outputs.length&&(n=n[0]),n}catch(t){throw t.code===O.errors.CALL_EXCEPTION&&(t.address=e.address,t.args=i,t.transaction=o),t}}))}}function As(e,t){return function(...r){return hs(this,void 0,void 0,(function*(){e.signer||fs.throwError("sending a transaction requires a signer",O.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction"}),null!=e.deployTransaction&&(yield e._deployed());const n=yield gs(e,t,r),i=yield e.signer.sendTransaction(n);return function(e,t){const r=t.wait.bind(t);t.wait=t=>r(t).then((t=>(t.events=t.logs.map((r=>{let n=Be(r),i=null;try{i=e.interface.parseLog(r)}catch(e){}return i&&(n.args=i.args,n.decode=(t,r)=>e.interface.decodeEventLog(i.eventFragment,t,r),n.event=i.name,n.eventSignature=i.signature),n.removeListener=()=>e.provider,n.getBlock=()=>e.provider.getBlock(t.blockHash),n.getTransaction=()=>e.provider.getTransaction(t.transactionHash),n.getTransactionReceipt=()=>Promise.resolve(t),n})),t)))}(e,i),i}))}}function vs(e,t,r){return t.constant?ys(e,t,r):As(e,t)}function bs(e){return!e.address||null!=e.topics&&0!==e.topics.length?(e.address||"*")+"@"+(e.topics?e.topics.map((e=>Array.isArray(e)?e.join("|"):e)).join(":"):""):"*"}class Es{constructor(e,t){ve(this,"tag",e),ve(this,"filter",t),this._listeners=[]}addListener(e,t){this._listeners.push({listener:e,once:t})}removeListener(e){let t=!1;this._listeners=this._listeners.filter((r=>!(!t&&r.listener===e)||(t=!0,!1)))}removeAllListeners(){this._listeners=[]}listeners(){return this._listeners.map((e=>e.listener))}listenerCount(){return this._listeners.length}run(e){const t=this.listenerCount();return this._listeners=this._listeners.filter((t=>{const r=e.slice();return setTimeout((()=>{t.listener.apply(this,r)}),0),!t.once})),t}prepareEvent(e){}getEmit(e){return[e]}}class ws extends Es{constructor(){super("error",null)}}class Ps extends Es{constructor(e,t,r,n){const i={address:e};let s=t.getEventTopic(r);n?(s!==n[0]&&fs.throwArgumentError("topic mismatch","topics",n),i.topics=n.slice()):i.topics=[s],super(bs(i),i),ve(this,"address",e),ve(this,"interface",t),ve(this,"fragment",r)}prepareEvent(e){super.prepareEvent(e),e.event=this.fragment.name,e.eventSignature=this.fragment.format(),e.decode=(e,t)=>this.interface.decodeEventLog(this.fragment,e,t);try{e.args=this.interface.decodeEventLog(this.fragment,e.data,e.topics)}catch(t){e.args=null,e.decodeError=t}}getEmit(e){const t=function(e){const t=[],r=function(e,n){if(Array.isArray(n))for(let i in n){const s=e.slice();s.push(i);try{r(s,n[i])}catch(e){t.push({path:s,error:e})}}};return r([],e),t}(e.args);if(t.length)throw t[0].error;const r=(e.args||[]).slice();return r.push(e),r}}class Is extends Es{constructor(e,t){super("*",{address:e}),ve(this,"address",e),ve(this,"interface",t)}prepareEvent(e){super.prepareEvent(e);try{const t=this.interface.parseLog(e);e.event=t.name,e.eventSignature=t.signature,e.decode=(e,r)=>this.interface.decodeEventLog(t.eventFragment,e,r),e.args=t.args}catch(e){}}}class Ts{constructor(e,t,r){ve(this,"interface",be(new.target,"getInterface")(t)),null==r?(ve(this,"provider",null),ve(this,"signer",null)):Kn.isSigner(r)?(ve(this,"provider",r.provider||null),ve(this,"signer",r)):Ne.isProvider(r)?(ve(this,"provider",r),ve(this,"signer",null)):fs.throwArgumentError("invalid signer or provider","signerOrProvider",r),ve(this,"callStatic",{}),ve(this,"estimateGas",{}),ve(this,"functions",{}),ve(this,"populateTransaction",{}),ve(this,"filters",{});{const e={};Object.keys(this.interface.events).forEach((t=>{const r=this.interface.events[t];ve(this.filters,t,((...e)=>({address:this.address,topics:this.interface.encodeFilterTopics(r,e)}))),e[r.name]||(e[r.name]=[]),e[r.name].push(t)})),Object.keys(e).forEach((t=>{const r=e[t];1===r.length?ve(this.filters,t,this.filters[r[0]]):fs.warn(`Duplicate definition of ${t} (${r.join(", ")})`)}))}if(ve(this,"_runningEvents",{}),ve(this,"_wrappedEmits",{}),null==e&&fs.throwArgumentError("invalid contract address or ENS name","addressOrName",e),ve(this,"address",e),this.provider)ve(this,"resolvedAddress",ps(this.provider,e));else try{ve(this,"resolvedAddress",Promise.resolve(Qt(e)))}catch(e){fs.throwError("provider is required to use ENS name as contract address",O.errors.UNSUPPORTED_OPERATION,{operation:"new Contract"})}this.resolvedAddress.catch((e=>{}));const n={},i={};Object.keys(this.interface.functions).forEach((e=>{const t=this.interface.functions[e];if(i[e])fs.warn(`Duplicate ABI entry for ${JSON.stringify(e)}`);else{i[e]=!0;{const r=t.name;n[`%${r}`]||(n[`%${r}`]=[]),n[`%${r}`].push(e)}null==this[e]&&ve(this,e,vs(this,t,!0)),null==this.functions[e]&&ve(this.functions,e,vs(this,t,!1)),null==this.callStatic[e]&&ve(this.callStatic,e,ys(this,t,!0)),null==this.populateTransaction[e]&&ve(this.populateTransaction,e,function(e,t){return function(...r){return gs(e,t,r)}}(this,t)),null==this.estimateGas[e]&&ve(this.estimateGas,e,function(e,t){const r=e.signer||e.provider;return function(...n){return hs(this,void 0,void 0,(function*(){r||fs.throwError("estimate require a provider or signer",O.errors.UNSUPPORTED_OPERATION,{operation:"estimateGas"});const i=yield gs(e,t,n);return yield r.estimateGas(i)}))}}(this,t))}})),Object.keys(n).forEach((e=>{const t=n[e];if(t.length>1)return;e=e.substring(1);const r=t[0];try{null==this[e]&&ve(this,e,this[r])}catch(e){}null==this.functions[e]&&ve(this.functions,e,this.functions[r]),null==this.callStatic[e]&&ve(this.callStatic,e,this.callStatic[r]),null==this.populateTransaction[e]&&ve(this.populateTransaction,e,this.populateTransaction[r]),null==this.estimateGas[e]&&ve(this.estimateGas,e,this.estimateGas[r])}))}static getContractAddress(e){return Ht(e)}static getInterface(e){return ds.isInterface(e)?e:new ds(e)}deployed(){return this._deployed()}_deployed(e){return this._deployedPromise||(this.deployTransaction?this._deployedPromise=this.deployTransaction.wait().then((()=>this)):this._deployedPromise=this.provider.getCode(this.address,e).then((e=>("0x"===e&&fs.throwError("contract not deployed",O.errors.UNSUPPORTED_OPERATION,{contractAddress:this.address,operation:"getDeployed"}),this)))),this._deployedPromise}fallback(e){this.signer||fs.throwError("sending a transactions require a signer",O.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction(fallback)"});const t=we(e||{});return["from","to"].forEach((function(e){null!=t[e]&&fs.throwError("cannot override "+e,O.errors.UNSUPPORTED_OPERATION,{operation:e})})),t.to=this.resolvedAddress,this.deployed().then((()=>this.signer.sendTransaction(t)))}connect(e){"string"==typeof e&&(e=new zn(e,this.provider));const t=new this.constructor(this.address,this.interface,e);return this.deployTransaction&&ve(t,"deployTransaction",this.deployTransaction),t}attach(e){return new this.constructor(e,this.interface,this.signer||this.provider)}static isIndexed(e){return cs.isIndexed(e)}_normalizeRunningEvent(e){return this._runningEvents[e.tag]?this._runningEvents[e.tag]:e}_getRunningEvent(e){if("string"==typeof e){if("error"===e)return this._normalizeRunningEvent(new ws);if("event"===e)return this._normalizeRunningEvent(new Es("event",null));if("*"===e)return this._normalizeRunningEvent(new Is(this.address,this.interface));const t=this.interface.getEvent(e);return this._normalizeRunningEvent(new Ps(this.address,this.interface,t))}if(e.topics&&e.topics.length>0){try{const t=e.topics[0];if("string"!=typeof t)throw new Error("invalid topic");const r=this.interface.getEvent(t);return this._normalizeRunningEvent(new Ps(this.address,this.interface,r,e.topics))}catch(e){}const t={address:this.address,topics:e.topics};return this._normalizeRunningEvent(new Es(bs(t),t))}return this._normalizeRunningEvent(new Is(this.address,this.interface))}_checkRunningEvents(e){if(0===e.listenerCount()){delete this._runningEvents[e.tag];const t=this._wrappedEmits[e.tag];t&&e.filter&&(this.provider.off(e.filter,t),delete this._wrappedEmits[e.tag])}}_wrapEvent(e,t,r){const n=Be(t);return n.removeListener=()=>{r&&(e.removeListener(r),this._checkRunningEvents(e))},n.getBlock=()=>this.provider.getBlock(t.blockHash),n.getTransaction=()=>this.provider.getTransaction(t.transactionHash),n.getTransactionReceipt=()=>this.provider.getTransactionReceipt(t.transactionHash),e.prepareEvent(n),n}_addEventListener(e,t,r){if(this.provider||fs.throwError("events require a provider or a signer with a provider",O.errors.UNSUPPORTED_OPERATION,{operation:"once"}),e.addListener(t,r),this._runningEvents[e.tag]=e,!this._wrappedEmits[e.tag]){const r=r=>{let n=this._wrapEvent(e,r,t);if(null==n.decodeError)try{const t=e.getEmit(n);this.emit(e.filter,...t)}catch(e){n.decodeError=e.error}null!=e.filter&&this.emit("event",n),null!=n.decodeError&&this.emit("error",n.decodeError,n)};this._wrappedEmits[e.tag]=r,null!=e.filter&&this.provider.on(e.filter,r)}}queryFilter(e,t,r){const n=this._getRunningEvent(e),i=we(n.filter);return"string"==typeof t&&q(t,32)?(null!=r&&fs.throwArgumentError("cannot specify toBlock with blockhash","toBlock",r),i.blockHash=t):(i.fromBlock=null!=t?t:0,i.toBlock=null!=r?r:"latest"),this.provider.getLogs(i).then((e=>e.map((e=>this._wrapEvent(n,e,null)))))}on(e,t){return this._addEventListener(this._getRunningEvent(e),t,!1),this}once(e,t){return this._addEventListener(this._getRunningEvent(e),t,!0),this}emit(e,...t){if(!this.provider)return!1;const r=this._getRunningEvent(e),n=r.run(t)>0;return this._checkRunningEvents(r),n}listenerCount(e){return this.provider?null==e?Object.keys(this._runningEvents).reduce(((e,t)=>e+this._runningEvents[t].listenerCount()),0):this._getRunningEvent(e).listenerCount():0}listeners(e){if(!this.provider)return[];if(null==e){const e=[];for(let t in this._runningEvents)this._runningEvents[t].listeners().forEach((t=>{e.push(t)}));return e}return this._getRunningEvent(e).listeners()}removeAllListeners(e){if(!this.provider)return this;if(null==e){for(const e in this._runningEvents){const t=this._runningEvents[e];t.removeAllListeners(),this._checkRunningEvents(t)}return this}const t=this._getRunningEvent(e);return t.removeAllListeners(),this._checkRunningEvents(t),this}off(e,t){if(!this.provider)return this;const r=this._getRunningEvent(e);return r.removeListener(t),this._checkRunningEvents(r),this}removeListener(e,t){return this.off(e,t)}}class Bs extends Ts{}function _s(e,t,...r){return A(this,void 0,void 0,(function*(){const n=[];for(const e of r)for(const t of e)t.callData&&n.push(t.callData);const i=yield function(e,t,r){return A(this,void 0,void 0,(function*(){const n=yield Os(e,t,r),i=new Map;for(const{req:e,resp:t}of n)i.set(e,t);return e.map((e=>({req:e,resp:i.get(e)})))}))}(n,e,t),s=new Map;for(const{req:e,resp:t}of i)s.set(e,null==t?void 0:t.result);return r.map((e=>e.filter((e=>!e.callData||s.get(e.callData))).map(((e,t)=>e.processor(e.callData?s.get(e.callData):null,t)))))}))}function Os(e,t,r){return A(this,void 0,void 0,(function*(){let n=[e];e.length>800&&(n=s.chunk(e,800));let i=[];const o=n.map((e=>A(this,void 0,void 0,(function*(){const n=e.map((e=>[e.to,e.data])),s={data:t.interface.encodeFunctionData("aggregate",[n]),to:r};let o;try{o=yield t.provider.call(s)}catch(n){const s=e.length;if(s>20){const n=Math.floor(s/2),[o,a]=yield Promise.all([Os(e.slice(0,n),t,r),Os(e.slice(n,s),t,r)]);i=[...i,...o,...a]}else{const e="[sendCallReqs] error";console.error(e,n)}}if(void 0===o)throw new Error("Unexpected batch result");const[a,c]=ns.decode(["uint256","bytes[]"],o);if(e.length!==c.length)throw new Error("Unexpected length mismatch");return c.map(((t,r)=>({resp:{result:t},req:e[r]})))}))));return(yield Promise.allSettled(o)).filter((e=>"fulfilled"===e.status)).forEach((({value:e})=>{i=[...i,...e]})),i}))}var Ds;function Cs(e){return A(this,void 0,void 0,(function*(){switch(e){case exports.ABIName.customERC20IsMintable:return[{inputs:[],name:"isMintable",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"}];case exports.ABIName.customMultiCallAggregate:return[{constant:!1,inputs:[{components:[{name:"target",type:"address"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate",outputs:[{name:"blockNumber",type:"uint256"},{name:"returnData",type:"bytes[]"}],payable:!1,stateMutability:"nonpayable",type:"function"}];default:return(yield function(e){switch(e){case"./ABIs/AaveLendingPoolABI.ts":return Promise.resolve().then((function(){return require("./AaveLendingPoolABI-G3D5zkkz.cjs")}));case"./ABIs/AaveLendingPoolAddressesProvider.ts":return Promise.resolve().then((function(){return require("./AaveLendingPoolAddressesProvider-DrLP2k1o.cjs")}));case"./ABIs/AavePriceOracleABI.ts":return Promise.resolve().then((function(){return require("./AavePriceOracleABI-C4jkbxlQ.cjs")}));case"./ABIs/AaveProtocolDataProviderABI.ts":return Promise.resolve().then((function(){return require("./AaveProtocolDataProviderABI-ChLpWblx.cjs")}));case"./ABIs/BaseDrops.ts":return Promise.resolve().then((function(){return require("./BaseDrops-b4x2vqWE.cjs")}));case"./ABIs/D3MM_READ_ABI.ts":return Promise.resolve().then((function(){return require("./D3MM_READ_ABI-DPl8m5T6.cjs")}));case"./ABIs/D3Proxy.ts":return Promise.resolve().then((function(){return require("./D3Proxy-ChV5DN6z.cjs")}));case"./ABIs/DODO1155.ts":return Promise.resolve().then((function(){return require("./DODO1155-BNeD65Or.cjs")}));case"./ABIs/DODO721.ts":return Promise.resolve().then((function(){return require("./DODO721-CSXhoGSt.cjs")}));case"./ABIs/DODOCirculationHelperABI.ts":return Promise.resolve().then((function(){return require("./DODOCirculationHelperABI-BnZp9-jW.cjs")}));case"./ABIs/DODORouteProxy.ts":return Promise.resolve().then((function(){return require("./DODORouteProxy-BZ0Y3GCA.cjs")}));case"./ABIs/DODOV1PmmHelperABI.ts":return Promise.resolve().then((function(){return require("./DODOV1PmmHelperABI-DD2Zqxnx.cjs")}));case"./ABIs/DVM.ts":return Promise.resolve().then((function(){return require("./DVM-BpNPFgPh.cjs")}));case"./ABIs/DropsERC721.ts":return Promise.resolve().then((function(){return require("./DropsERC721-BhKaFHvL.cjs")}));case"./ABIs/FilterAdmin.ts":return Promise.resolve().then((function(){return require("./FilterAdmin-cj8kYpNK.cjs")}));case"./ABIs/FilterERC1155V1.ts":return Promise.resolve().then((function(){return require("./FilterERC1155V1-CYRg0d1t.cjs")}));case"./ABIs/FilterERC721V1.ts":return Promise.resolve().then((function(){return require("./FilterERC721V1-Bi0L9sSX.cjs")}));case"./ABIs/Fragment.ts":return Promise.resolve().then((function(){return require("./Fragment-B-F8I7LL.cjs")}));case"./ABIs/FundingABI.ts":return Promise.resolve().then((function(){return require("./FundingABI-CVCr1rVZ.cjs")}));case"./ABIs/IdodoV2.ts":return Promise.resolve().then((function(){return require("./IdodoV2-RfwR_GpI.cjs")}));case"./ABIs/LockedTokenVaultABI.ts":return Promise.resolve().then((function(){return require("./LockedTokenVaultABI-DRbLRj9L.cjs")}));case"./ABIs/MarginTrading.ts":return Promise.resolve().then((function(){return require("./MarginTrading-DTxWKyBB.cjs")}));case"./ABIs/MarginTradingFactory.ts":return Promise.resolve().then((function(){return require("./MarginTradingFactory-CXV_vwa8.cjs")}));case"./ABIs/MerkleDistributorABI.ts":return Promise.resolve().then((function(){return require("./MerkleDistributorABI-C8Qfs-nh.cjs")}));case"./ABIs/NonfungiblePositionManager.ts":return Promise.resolve().then((function(){return require("./NonfungiblePositionManager-C-qYqe32.cjs")}));case"./ABIs/PancakePairABI.ts":return Promise.resolve().then((function(){return require("./PancakePairABI-DYhV587D.cjs")}));case"./ABIs/UniswapV3Pool.ts":return Promise.resolve().then((function(){return require("./UniswapV3Pool-CbMV0NzU.cjs")}));case"./ABIs/baseFilterV1.ts":return Promise.resolve().then((function(){return require("./baseFilterV1-BuIlo0KL.cjs")}));case"./ABIs/classicalPoolABI.ts":return Promise.resolve().then((function(){return require("./classicalPoolABI-BECDfgEG.cjs")}));case"./ABIs/dodoABI.ts":return Promise.resolve().then((function(){return require("./dodoABI-gkjw8zb6.cjs")}));case"./ABIs/dodoBuyoutModel.ts":return Promise.resolve().then((function(){return require("./dodoBuyoutModel-iVgU8FQj.cjs")}));case"./ABIs/dodoCP.ts":return Promise.resolve().then((function(){return require("./dodoCP-CLHk9HB9.cjs")}));case"./ABIs/dodoCPABI.ts":return Promise.resolve().then((function(){return require("./dodoCPABI-DtzutjJ_.cjs")}));case"./ABIs/dodoCPABIV2.ts":return Promise.resolve().then((function(){return require("./dodoCPABIV2-fyFD9xst.cjs")}));case"./ABIs/dodoCPFactory.ts":return Promise.resolve().then((function(){return require("./dodoCPFactory-CBF19zgJ.cjs")}));case"./ABIs/dodoCpProxy.ts":return Promise.resolve().then((function(){return require("./dodoCpProxy-C0DPYWye.cjs")}));case"./ABIs/dodoCpProxyV2.ts":return Promise.resolve().then((function(){return require("./dodoCpProxyV2-DpTvj7-M.cjs")}));case"./ABIs/dodoCpProxyV202.ts":return Promise.resolve().then((function(){return require("./dodoCpProxyV202-BLhZ86Hq.cjs")}));case"./ABIs/dodoCustomMintableERC20.ts":return Promise.resolve().then((function(){return require("./dodoCustomMintableERC20-_rvvHxmy.cjs")}));case"./ABIs/dodoDPPAdmin.ts":return Promise.resolve().then((function(){return require("./dodoDPPAdmin-Dn7blhFO.cjs")}));case"./ABIs/dodoDPPFactory.ts":return Promise.resolve().then((function(){return require("./dodoDPPFactory-DZUKGMVx.cjs")}));case"./ABIs/dodoDSP.ts":return Promise.resolve().then((function(){return require("./dodoDSP-DiQP3j-f.cjs")}));case"./ABIs/dodoDSPFactory.ts":return Promise.resolve().then((function(){return require("./dodoDSPFactory-Bd74S17p.cjs")}));case"./ABIs/dodoDVM.ts":return Promise.resolve().then((function(){return require("./dodoDVM-cigh0zp3.cjs")}));case"./ABIs/dodoDVMFactory.ts":return Promise.resolve().then((function(){return require("./dodoDVMFactory-Jw7GN957.cjs")}));case"./ABIs/dodoDppProxy.ts":return Promise.resolve().then((function(){return require("./dodoDppProxy-evCBC-32.cjs")}));case"./ABIs/dodoDropsProxy.ts":return Promise.resolve().then((function(){return require("./dodoDropsProxy-aB8sftUR.cjs")}));case"./ABIs/dodoDspProxy.ts":return Promise.resolve().then((function(){return require("./dodoDspProxy-Bp3cG2Me.cjs")}));case"./ABIs/dodoERC20V3Factory.ts":return Promise.resolve().then((function(){return require("./dodoERC20V3Factory-Dp6VtQdx.cjs")}));case"./ABIs/dodoEthProxyABI.ts":return Promise.resolve().then((function(){return require("./dodoEthProxyABI-COvGooIx.cjs")}));case"./ABIs/dodoFeeImpl.ts":return Promise.resolve().then((function(){return require("./dodoFeeImpl-n8uxW-_A.cjs")}));case"./ABIs/dodoFragment.ts":return Promise.resolve().then((function(){return require("./dodoFragment-QQKv5zUw.cjs")}));case"./ABIs/dodoMineV3Proxy.ts":return Promise.resolve().then((function(){return require("./dodoMineV3Proxy-DVScIYYs.cjs")}));case"./ABIs/dodoMineV3ProxyOld.ts":return Promise.resolve().then((function(){return require("./dodoMineV3ProxyOld-C_F6KVsX.cjs")}));case"./ABIs/dodoMiningABI.ts":return Promise.resolve().then((function(){return require("./dodoMiningABI-Bz2I9IA2.cjs")}));case"./ABIs/dodoMiningReaderABI.ts":return Promise.resolve().then((function(){return require("./dodoMiningReaderABI-B2wU_50T.cjs")}));case"./ABIs/dodoNftERC1155.ts":return Promise.resolve().then((function(){return require("./dodoNftERC1155-DLIuD5w1.cjs")}));case"./ABIs/dodoNftERC721.ts":return Promise.resolve().then((function(){return require("./dodoNftERC721-CM9UVOIz.cjs")}));case"./ABIs/dodoNftPoolProxy.ts":return Promise.resolve().then((function(){return require("./dodoNftPoolProxy-D1h5SkLL.cjs")}));case"./ABIs/dodoNftProxy.ts":return Promise.resolve().then((function(){return require("./dodoNftProxy-DM2zeXHX.cjs")}));case"./ABIs/dodoNftVault.ts":return Promise.resolve().then((function(){return require("./dodoNftVault-4I3wB3W5.cjs")}));case"./ABIs/dodoOracleABI.ts":return Promise.resolve().then((function(){return require("./dodoOracleABI-CZXzRpKf.cjs")}));case"./ABIs/dodoPair.ts":return Promise.resolve().then((function(){return require("./dodoPair-DZAKf_5j.cjs")}));case"./ABIs/dodoPreminingABI.ts":return Promise.resolve().then((function(){return require("./dodoPreminingABI-BO5Cazcq.cjs")}));case"./ABIs/dodoProxyV2.ts":return Promise.resolve().then((function(){return require("./dodoProxyV2-C4O1SzS4.cjs")}));case"./ABIs/dodoStarterProxy.ts":return Promise.resolve().then((function(){return require("./dodoStarterProxy-DgcH9iEq.cjs")}));case"./ABIs/dodoTokenABI.ts":return Promise.resolve().then((function(){return require("./dodoTokenABI-6Mpqu75U.cjs")}));case"./ABIs/dodoUpCPFactoryABI.ts":return Promise.resolve().then((function(){return require("./dodoUpCPFactoryABI-XGsn8ED4.cjs")}));case"./ABIs/dodoUpCpFactory.ts":return Promise.resolve().then((function(){return require("./dodoUpCpFactory-XGsn8ED4.cjs")}));case"./ABIs/dodoV1PairProxy.ts":return Promise.resolve().then((function(){return require("./dodoV1PairProxy-DpEjE8Ne.cjs")}));case"./ABIs/dodoZooABI.ts":return Promise.resolve().then((function(){return require("./dodoZooABI-D44Zl74h.cjs")}));case"./ABIs/dppPoolABI.ts":return Promise.resolve().then((function(){return require("./dppPoolABI-BdDjNXGV.cjs")}));case"./ABIs/erc20ABI.ts":return Promise.resolve().then((function(){return require("./erc20ABI-G8oWOkZ8.cjs")}));case"./ABIs/erc20Helper.ts":return Promise.resolve().then((function(){return require("./erc20Helper-DU3PGwta.cjs")}));case"./ABIs/feeABI.ts":return Promise.resolve().then((function(){return require("./feeABI-n8uxW-_A.cjs")}));case"./ABIs/multicallABI.ts":return Promise.resolve().then((function(){return require("./multicallABI-Dhweb42q.cjs")}));case"./ABIs/nftContract.ts":return Promise.resolve().then((function(){return require("./nftContract-hvFiWn3Y.cjs")}));case"./ABIs/nftFilterAdmin.ts":return Promise.resolve().then((function(){return require("./nftFilterAdmin-Bq1uLy_8.cjs")}));case"./ABIs/oneBitSettlement.ts":return Promise.resolve().then((function(){return require("./oneBitSettlement-DiJ0ov7p.cjs")}));case"./ABIs/setApprovalForAll.ts":return Promise.resolve().then((function(){return require("./setApprovalForAll-C5PVWdKB.cjs")}));case"./ABIs/spaceIdABI.ts":return Promise.resolve().then((function(){return require("./spaceIdABI-B5tTrrz8.cjs")}));case"./ABIs/spaceIdResolverABI.ts":return Promise.resolve().then((function(){return require("./spaceIdResolverABI-CrfOXUgo.cjs")}));case"./ABIs/v3MiningABI.ts":return Promise.resolve().then((function(){return require("./v3MiningABI-C-S-QkHw.cjs")}));case"./ABIs/vdodo.ts":return Promise.resolve().then((function(){return require("./vdodo-BV3kGDOM.cjs")}));case"./ABIs/vdodoTokenABI.ts":return Promise.resolve().then((function(){return require("./vdodoTokenABI-BuOHA0B9.cjs")}));case"./ABIs/weth.ts":return Promise.resolve().then((function(){return require("./weth-CGG0Z6re.cjs")}));default:return Promise.reject(new Error("Unknown variable dynamic import: "+e))}}(`./ABIs/${e}.ts`)).default}}))}exports.ABIName=void 0,(Ds=exports.ABIName||(exports.ABIName={})).customERC20IsMintable="customERC20IsMintable",Ds.customMultiCallAggregate="customMultiCallAggregate",Ds.erc20Helper="erc20Helper",Ds.erc20ABI="erc20ABI",Ds.erc20Mock="erc20Mock",Ds.dodoERC20V3Factory="dodoERC20V3Factory",Ds.dodoCustomMintableERC20="dodoCustomMintableERC20",Ds.multicallABI="multicallABI",Ds.dppPoolABI="dppPoolABI",Ds.dvmPoolABI="DVM",Ds.classicalPoolABI="classicalPoolABI",Ds.v3MiningABI="v3MiningABI",Ds.dodoMiningABI="dodoMiningABI",Ds.dodoCP="dodoCP",Ds.dodoCPABI="dodoCPABI",Ds.dodoCPABIV2="dodoCPABIV2",Ds.dodoCpProxyV2="dodoCpProxyV2",Ds.dodoCpProxyV202="dodoCpProxyV202",Ds.dodoFeeImpl="dodoFeeImpl",Ds.feeABI="feeABI",Ds.vdodo="vdodo",Ds.vdodoTokenABI="vdodoTokenABI",Ds.dodoPreminingABI="dodoPreminingABI",Ds.MerkleDistributorABI="MerkleDistributorABI",Ds.DODOCirculationHelperABI="DODOCirculationHelperABI",Ds.FundingABI="FundingABI",Ds.dodoStarterProxy="dodoStarterProxy",Ds.MarginTrading="MarginTrading",Ds.MarginTradingFactory="MarginTradingFactory",Ds.DODORouteProxy="DODORouteProxy",Ds.dodoProxyV2="dodoProxyV2",Ds.AaveLendingPoolABI="AaveLendingPoolABI",Ds.AaveProtocolDataProviderABI="AaveProtocolDataProviderABI",Ds.AaveLendingPoolAddressesProvider="AaveLendingPoolAddressesProvider",Ds.AavePriceOracleABI="AavePriceOracleABI",Ds.spaceIdABI="spaceIdABI",Ds.spaceIdResolverABI="spaceIdResolverABI",Ds.dodoABI="dodoABI",Ds.PancakePairABI="PancakePairABI",Ds.NonfungiblePositionManager="NonfungiblePositionManager",Ds.UniswapV3Pool="UniswapV3Pool",Ds.dodoDspProxy="dodoDspProxy",Ds.dodoDppProxy="dodoDppProxy",Ds.IdodoV2="IdodoV2",Ds.dodoDPPAdmin="dodoDPPAdmin",Ds.dodoDSP="dodoDSP",Ds.dodoDVM="dodoDVM",Ds.dodoDSPFactory="dodoDSPFactory",Ds.dodoDVMFactory="dodoDVMFactory",Ds.D3Proxy="D3Proxy",Ds.dodoNftERC721="dodoNftERC721",Ds.dodoNftERC1155="dodoNftERC1155",Ds.dodoDropsProxy="dodoDropsProxy",Ds.dodoNftVault="dodoNftVault",Ds.dodoNftProxy="dodoNftProxy",Ds.dodoFragment="dodoFragment",Ds.dodoBuyoutModel="dodoBuyoutModel",Ds.dodoNftPoolProxy="dodoNftPoolProxy",Ds.nftFilterAdmin="nftFilterAdmin",Ds.baseFilterV1="baseFilterV1",Ds.FilterERC721V1="FilterERC721V1",Ds.FilterERC1155V1="FilterERC1155V1",Ds.dodoV1PairProxy="dodoV1PairProxy",Ds.dodoPair="dodoPair",Ds.dodoMineV3Proxy="dodoMineV3Proxy",Ds.dodoMineV3ProxyOld="dodoMineV3ProxyOld",Ds.LockedTokenVaultABI="LockedTokenVaultABI",Ds.DODOV1PmmHelperABI="DODOV1PmmHelperABI",Ds.D3MM_READ_ABI="D3MM_READ_ABI";const Ns=(e,t,r)=>A(void 0,void 0,void 0,(function*(){const n=yield Cs(e);return new ds(n).encodeFunctionData(t,r)})),ks=(e,t,r)=>new ds(e).encodeFunctionData(t,r);class xs extends di{constructor(){super(...arguments),this._pendingBatchAggregator=null,this._pendingBatch=null,this._provider=null}setProvider(e){this._provider=e}send(e,t){const r=Object.create(null,{send:{get:()=>super.send}});return A(this,void 0,void 0,(function*(){if("eth_call"!==e||2!==t.length||"object"!=typeof t[0]||!t[0].to||!t[0].data||"string"!=typeof t[1])return this._provider?this._provider.send(e,t):r.send.call(this,e,t);const n={request:{method:e,params:t},resolve:null,reject:null},i=new Promise(((e,t)=>{n.resolve=e,n.reject=t}));this._pendingBatch||(this._pendingBatch=[]),this._pendingBatch.push(n);const s=()=>A(this,void 0,void 0,(function*(){const t=this._pendingBatch||[];let r;this._pendingBatch=null,this._pendingBatchAggregator=null;const i=yield this.detectNetwork();r="object"!=typeof i?parseInt(i,i.startsWith("0x")?16:10):i.chainId;const s=yield function(e,t){return A(this,void 0,void 0,(function*(){let r="";const n=t.map((e=>{const[t]=e;return r=e[1],[t.to,t.data]})),i=yield Ns(exports.ABIName.customMultiCallAggregate,"aggregate",[n]);return[{to:g[e].MULTI_CALL,data:i},r]}))}(r,t.map((e=>e.request.params))),o={method:e,params:s,id:this._nextId++,jsonrpc:"2.0"};this.emit("debug",{action:"requestBatch",request:Be(t.map((e=>e.request))),provider:this,id:o.id});const a=e=>{if(e.error||!e.result)t.forEach((t=>{try{const r=new Error(e.error.message);r.code=e.error.code,r.data=e.error.data,t.reject(r)}catch(r){t.reject(e.error)}})),this.emit("debug",{action:"responseBatch.error",request:o,response:e,provider:this,id:o.id});else{const[r,i]=ns.decode(["uint256","bytes[]"],e.result),s=r.toNumber();if(this._setFastBlockNumber(s),this.emit("blockNumberChanged",s),t.length!==i.length)return void n.reject("Unexpected length mismatch");t.forEach(((e,t)=>{const r=i[t];e.resolve(r)})),this.emit("debug",{action:"responseBatch",request:o,response:e,provider:this,decodeList:i,id:o.id})}},c=e=>{this.emit("debug",{action:"responseBatch.error",error:e,request:o,provider:this,id:o.id}),t.forEach((t=>{t.reject(e)}))};if(!this._provider)return pr(this.connection,JSON.stringify(o)).then(a,c);try{const e=yield this._provider.send(o.method,o.params);a({id:o.id,jsonrpc:o.jsonrpc,result:e})}catch(e){c(e)}}));return this._pendingBatchAggregator?this._pendingBatch.length>800&&(clearTimeout(this._pendingBatchAggregator),s()):this._pendingBatchAggregator=setTimeout(s,10),i}))}}const Rs="contract-query";class Ss{constructor(e){this.subContractRequestsList=[],this.debugQuery=null==e?void 0:e.debugQuery,this.debugProvider=null==e?void 0:e.debugProvider,this.rpc=null==e?void 0:e.rpc,this.getConfigProvider=null==e?void 0:e.getProvider,this.staticJsonRpcProviderMap=new Map,this.batchStaticJsonRpcProviderMap=new Map,this.batchContractMap=new Map}setRpc(e){this.rpc=e,this.subContractRequestsList.forEach((t=>{t.setRpc(e)}))}setGetConfigProvider(e){this.getConfigProvider=e,this.subContractRequestsList.forEach((t=>{t.setGetConfigProvider(e)})),this.batchContractMap=new Map,this.staticJsonRpcProviderMap=new Map,this.batchStaticJsonRpcProviderMap=new Map}getProvider(e){var t,r;const n=null===(t=this.getConfigProvider)||void 0===t?void 0:t.call(this,e);if(n)return n;const i=null===(r=this.rpc)||void 0===r?void 0:r[e];if(!i)throw new Error(`ChainId ${e} not found`);if(this.staticJsonRpcProviderMap.has(e))return this.staticJsonRpcProviderMap.get(e);const s=new di(i,e);return this.debugProvider&&s.on("debug",console.log),this.staticJsonRpcProviderMap.set(e,s),s}getBatchProvider(e){var t,r;const n=null===(t=this.getConfigProvider)||void 0===t?void 0:t.call(this,e),i=null===(r=this.rpc)||void 0===r?void 0:r[e];if(!i&&!n)throw new Error(`ChainId ${e} not found`);if(this.batchStaticJsonRpcProviderMap.has(e))return this.batchStaticJsonRpcProviderMap.get(e);const s=new xs(i,e);return s.setProvider(n||null),this.debugProvider&&s.on("debug",console.log),this.batchStaticJsonRpcProviderMap.set(e,s),s}createContractRequests(){const e=new Ss({rpc:this.rpc,getProvider:this.getConfigProvider,debugQuery:this.debugQuery,debugProvider:this.debugProvider});return this.subContractRequestsList.push(e),e}getContract(e,t,r){const n=this.getProvider(e);return new Bs(t,r,n)}getBatchContract(e,t,r){var n;const i=this.batchContractMap.get(e);if(i){if(i.has(t))return i.get(t)}else this.batchContractMap.set(e,new Map);const s=this.getBatchProvider(e),o=new Bs(t,r,s);return null===(n=this.batchContractMap.get(e))||void 0===n||n.set(t,o),o}getBatchContractByAbiName(e,t,r){return A(this,void 0,void 0,(function*(){const n=yield this.getContractInterface(r);return this.getBatchContract(e,t,n)}))}getContractInterface(e){return Cs(e)}callMultiQuery(e,t){return A(this,void 0,void 0,(function*(){const r=g[e],{MULTI_CALL:n}=r,i=yield this.getContractInterface(exports.ABIName.customMultiCallAggregate),s=this.getContract(e,n,i),o=[],a=new Map,c=new Map,l={};for(let r=0;r<t.length;r++){const{contractAddress:n,method:i,params:s,abiName:u,callback:d}=t[r];let h=c.get(u);if(!h){const t=yield this.getContractInterface(u);a.set(u,t),h=this.getContract(e,n,t),c.set(u,h)}const f={to:n,data:h.interface.encodeFunctionData(i,s)};o.push({callData:f,processor:e=>{const t=new ds(a.get(u)).decodeFunctionResult(i,e);d&&d(t);const n=d?d(t):void 0;return l[r]=n||t,l[r]}})}const[u]=yield _s(s,n,o);return u}))}callQuery(e,t){return A(this,void 0,void 0,(function*(){const r=yield this.getContractInterface(t.abiName),n=this.getContract(e,t.contractAddress,r),i=yield n.callStatic[t.method](...t.params),s=t.callback?t.callback(i):void 0;return s||i}))}batchCallQuery(e,t){return A(this,void 0,void 0,(function*(){this.debugQuery&&console.log({action:"batchCallQuery.request",chainId:e,query:t});const r=yield this.getBatchProvider(e),n=yield Ns(t.abiName,t.method,t.params),i=yield r.call({to:t.contractAddress,data:n}),s=yield((e,t,r)=>A(void 0,void 0,void 0,(function*(){const n=yield Cs(e);return new ds(n).decodeFunctionResult(t,r)})))(t.abiName,t.method,i),o=t.callback?t.callback(s):void 0;return this.debugQuery&&console.log({action:"batchCallQuery.response",chainId:e,query:t,response:s}),o||s}))}getBlockNumber(e){return A(this,void 0,void 0,(function*(){const t=this.getBatchProvider(e),r=yield t.getBlockNumber();return t.emit("blockNumberChanged",r),r}))}getETHBalance(e,t){return A(this,void 0,void 0,(function*(){const r=this.getProvider(e),n=yield r.getBalance(t);return new o(n.toString()).div(1e18)}))}}const Fs=JSON;function Ls(e,t){if(!Boolean(e))throw new Error(t)}function qs(e,t){if(!Boolean(e))throw new Error("Unexpected invariant triggered.")}const Ms=/\r\n|[\n\r]/g;function Us(e,t){let r=0,n=1;for(const i of e.body.matchAll(Ms)){if("number"==typeof i.index||qs(!1),i.index>=t)break;r=i.index+i[0].length,n+=1}return{line:n,column:t+1-r}}function Vs(e,t){const r=e.locationOffset.column-1,n="".padStart(r)+e.body,i=t.line-1,s=e.locationOffset.line-1,o=t.line+s,a=1===t.line?r:0,c=t.column+a,l=`${e.name}:${o}:${c}\n`,u=n.split(/\r\n|[\n\r]/g),d=u[i];if(d.length>120){const e=Math.floor(c/80),t=c%80,r=[];for(let e=0;e<d.length;e+=80)r.push(d.slice(e,e+80));return l+js([[`${o} |`,r[0]],...r.slice(1,e+1).map((e=>["|",e])),["|","^".padStart(t)],["|",r[e+1]]])}return l+js([[o-1+" |",u[i-1]],[`${o} |`,d],["|","^".padStart(c)],[`${o+1} |`,u[i+1]]])}function js(e){const t=e.filter((([e,t])=>void 0!==t)),r=Math.max(...t.map((([e])=>e.length)));return t.map((([e,t])=>e.padStart(r)+(t?" "+t:""))).join("\n")}class Qs extends Error{constructor(e,...t){var r,n,i;const{nodes:s,source:o,positions:a,path:c,originalError:l,extensions:u}=function(e){const t=e[0];return null==t||"kind"in t||"length"in t?{nodes:t,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:t}(t);super(e),this.name="GraphQLError",this.path=null!=c?c:void 0,this.originalError=null!=l?l:void 0,this.nodes=Hs(Array.isArray(s)?s:s?[s]:void 0);const d=Hs(null===(r=this.nodes)||void 0===r?void 0:r.map((e=>e.loc)).filter((e=>null!=e)));this.source=null!=o?o:null==d||null===(n=d[0])||void 0===n?void 0:n.source,this.positions=null!=a?a:null==d?void 0:d.map((e=>e.start)),this.locations=a&&o?a.map((e=>Us(o,e))):null==d?void 0:d.map((e=>Us(e.source,e.start)));const h="object"==typeof(f=null==l?void 0:l.extensions)&&null!==f?null==l?void 0:l.extensions:void 0;var f;this.extensions=null!==(i=null!=u?u:h)&&void 0!==i?i:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),null!=l&&l.stack?Object.defineProperty(this,"stack",{value:l.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,Qs):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let e=this.message;if(this.nodes)for(const r of this.nodes)r.loc&&(e+="\n\n"+Vs((t=r.loc).source,Us(t.source,t.start)));else if(this.source&&this.locations)for(const t of this.locations)e+="\n\n"+Vs(this.source,t);var t;return e}toJSON(){const e={message:this.message};return null!=this.locations&&(e.locations=this.locations),null!=this.path&&(e.path=this.path),null!=this.extensions&&Object.keys(this.extensions).length>0&&(e.extensions=this.extensions),e}}function Hs(e){return void 0===e||0===e.length?void 0:e}function Gs(e,t,r){return new Qs(`Syntax Error: ${r}`,{source:e,positions:[t]})}class Ys{constructor(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}}class $s{constructor(e,t,r,n,i,s){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=i,this.value=s,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}}const Ks={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},zs=new Set(Object.keys(Ks));function Xs(e){const t=null==e?void 0:e.kind;return"string"==typeof t&&zs.has(t)}var Js,Ws,Zs,eo;function to(e){return 9===e||32===e}function ro(e){return e>=48&&e<=57}function no(e){return e>=97&&e<=122||e>=65&&e<=90}function io(e){return no(e)||95===e}function so(e){return no(e)||ro(e)||95===e}function oo(e){var t;let r=Number.MAX_SAFE_INTEGER,n=null,i=-1;for(let t=0;t<e.length;++t){var s;const o=e[t],a=ao(o);a!==o.length&&(n=null!==(s=n)&&void 0!==s?s:t,i=t,0!==t&&a<r&&(r=a))}return e.map(((e,t)=>0===t?e:e.slice(r))).slice(null!==(t=n)&&void 0!==t?t:0,i+1)}function ao(e){let t=0;for(;t<e.length&&to(e.charCodeAt(t));)++t;return t}!function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"}(Js||(Js={})),function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"}(Ws||(Ws={})),function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"}(Zs||(Zs={})),function(e){e.SOF="<SOF>",e.EOF="<EOF>",e.BANG="!",e.DOLLAR="$",e.AMP="&",e.PAREN_L="(",e.PAREN_R=")",e.SPREAD="...",e.COLON=":",e.EQUALS="=",e.AT="@",e.BRACKET_L="[",e.BRACKET_R="]",e.BRACE_L="{",e.PIPE="|",e.BRACE_R="}",e.NAME="Name",e.INT="Int",e.FLOAT="Float",e.STRING="String",e.BLOCK_STRING="BlockString",e.COMMENT="Comment"}(eo||(eo={}));class co{constructor(e){const t=new $s(eo.SOF,0,0,0,0);this.source=e,this.lastToken=t,this.token=t,this.line=1,this.lineStart=0}get[Symbol.toStringTag](){return"Lexer"}advance(){this.lastToken=this.token;return this.token=this.lookahead()}lookahead(){let e=this.token;if(e.kind!==eo.EOF)do{if(e.next)e=e.next;else{const t=go(this,e.end);e.next=t,t.prev=e,e=t}}while(e.kind===eo.COMMENT);return e}}function lo(e){return e>=0&&e<=55295||e>=57344&&e<=1114111}function uo(e,t){return ho(e.charCodeAt(t))&&fo(e.charCodeAt(t+1))}function ho(e){return e>=55296&&e<=56319}function fo(e){return e>=56320&&e<=57343}function po(e,t){const r=e.source.body.codePointAt(t);if(void 0===r)return eo.EOF;if(r>=32&&r<=126){const e=String.fromCodePoint(r);return'"'===e?"'\"'":`"${e}"`}return"U+"+r.toString(16).toUpperCase().padStart(4,"0")}function mo(e,t,r,n,i){const s=e.line,o=1+r-e.lineStart;return new $s(t,r,n,s,o,i)}function go(e,t){const r=e.source.body,n=r.length;let i=t;for(;i<n;){const t=r.charCodeAt(i);switch(t){case 65279:case 9:case 32:case 44:++i;continue;case 10:++i,++e.line,e.lineStart=i;continue;case 13:10===r.charCodeAt(i+1)?i+=2:++i,++e.line,e.lineStart=i;continue;case 35:return yo(e,i);case 33:return mo(e,eo.BANG,i,i+1);case 36:return mo(e,eo.DOLLAR,i,i+1);case 38:return mo(e,eo.AMP,i,i+1);case 40:return mo(e,eo.PAREN_L,i,i+1);case 41:return mo(e,eo.PAREN_R,i,i+1);case 46:if(46===r.charCodeAt(i+1)&&46===r.charCodeAt(i+2))return mo(e,eo.SPREAD,i,i+3);break;case 58:return mo(e,eo.COLON,i,i+1);case 61:return mo(e,eo.EQUALS,i,i+1);case 64:return mo(e,eo.AT,i,i+1);case 91:return mo(e,eo.BRACKET_L,i,i+1);case 93:return mo(e,eo.BRACKET_R,i,i+1);case 123:return mo(e,eo.BRACE_L,i,i+1);case 124:return mo(e,eo.PIPE,i,i+1);case 125:return mo(e,eo.BRACE_R,i,i+1);case 34:return 34===r.charCodeAt(i+1)&&34===r.charCodeAt(i+2)?Bo(e,i):bo(e,i)}if(ro(t)||45===t)return Ao(e,i,t);if(io(t))return _o(e,i);throw Gs(e.source,i,39===t?"Unexpected single quote character ('), did you mean to use a double quote (\")?":lo(t)||uo(r,i)?`Unexpected character: ${po(e,i)}.`:`Invalid character: ${po(e,i)}.`)}return mo(e,eo.EOF,n,n)}function yo(e,t){const r=e.source.body,n=r.length;let i=t+1;for(;i<n;){const e=r.charCodeAt(i);if(10===e||13===e)break;if(lo(e))++i;else{if(!uo(r,i))break;i+=2}}return mo(e,eo.COMMENT,t,i,r.slice(t+1,i))}function Ao(e,t,r){const n=e.source.body;let i=t,s=r,o=!1;if(45===s&&(s=n.charCodeAt(++i)),48===s){if(s=n.charCodeAt(++i),ro(s))throw Gs(e.source,i,`Invalid number, unexpected digit after 0: ${po(e,i)}.`)}else i=vo(e,i,s),s=n.charCodeAt(i);if(46===s&&(o=!0,s=n.charCodeAt(++i),i=vo(e,i,s),s=n.charCodeAt(i)),69!==s&&101!==s||(o=!0,s=n.charCodeAt(++i),43!==s&&45!==s||(s=n.charCodeAt(++i)),i=vo(e,i,s),s=n.charCodeAt(i)),46===s||io(s))throw Gs(e.source,i,`Invalid number, expected digit but got: ${po(e,i)}.`);return mo(e,o?eo.FLOAT:eo.INT,t,i,n.slice(t,i))}function vo(e,t,r){if(!ro(r))throw Gs(e.source,t,`Invalid number, expected digit but got: ${po(e,t)}.`);const n=e.source.body;let i=t+1;for(;ro(n.charCodeAt(i));)++i;return i}function bo(e,t){const r=e.source.body,n=r.length;let i=t+1,s=i,o="";for(;i<n;){const n=r.charCodeAt(i);if(34===n)return o+=r.slice(s,i),mo(e,eo.STRING,t,i+1,o);if(92!==n){if(10===n||13===n)break;if(lo(n))++i;else{if(!uo(r,i))throw Gs(e.source,i,`Invalid character within String: ${po(e,i)}.`);i+=2}}else{o+=r.slice(s,i);const t=117===r.charCodeAt(i+1)?123===r.charCodeAt(i+2)?Eo(e,i):wo(e,i):To(e,i);o+=t.value,i+=t.size,s=i}}throw Gs(e.source,i,"Unterminated string.")}function Eo(e,t){const r=e.source.body;let n=0,i=3;for(;i<12;){const e=r.charCodeAt(t+i++);if(125===e){if(i<5||!lo(n))break;return{value:String.fromCodePoint(n),size:i}}if(n=n<<4|Io(e),n<0)break}throw Gs(e.source,t,`Invalid Unicode escape sequence: "${r.slice(t,t+i)}".`)}function wo(e,t){const r=e.source.body,n=Po(r,t+2);if(lo(n))return{value:String.fromCodePoint(n),size:6};if(ho(n)&&92===r.charCodeAt(t+6)&&117===r.charCodeAt(t+7)){const e=Po(r,t+8);if(fo(e))return{value:String.fromCodePoint(n,e),size:12}}throw Gs(e.source,t,`Invalid Unicode escape sequence: "${r.slice(t,t+6)}".`)}function Po(e,t){return Io(e.charCodeAt(t))<<12|Io(e.charCodeAt(t+1))<<8|Io(e.charCodeAt(t+2))<<4|Io(e.charCodeAt(t+3))}function Io(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function To(e,t){const r=e.source.body;switch(r.charCodeAt(t+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:"\n",size:2};case 114:return{value:"\r",size:2};case 116:return{value:"\t",size:2}}throw Gs(e.source,t,`Invalid character escape sequence: "${r.slice(t,t+2)}".`)}function Bo(e,t){const r=e.source.body,n=r.length;let i=e.lineStart,s=t+3,o=s,a="";const c=[];for(;s<n;){const n=r.charCodeAt(s);if(34===n&&34===r.charCodeAt(s+1)&&34===r.charCodeAt(s+2)){a+=r.slice(o,s),c.push(a);const n=mo(e,eo.BLOCK_STRING,t,s+3,oo(c).join("\n"));return e.line+=c.length-1,e.lineStart=i,n}if(92!==n||34!==r.charCodeAt(s+1)||34!==r.charCodeAt(s+2)||34!==r.charCodeAt(s+3))if(10!==n&&13!==n)if(lo(n))++s;else{if(!uo(r,s))throw Gs(e.source,s,`Invalid character within String: ${po(e,s)}.`);s+=2}else a+=r.slice(o,s),c.push(a),13===n&&10===r.charCodeAt(s+1)?s+=2:++s,a="",o=s,i=s;else a+=r.slice(o,s),o=s+1,s+=4}throw Gs(e.source,s,"Unterminated string.")}function _o(e,t){const r=e.source.body,n=r.length;let i=t+1;for(;i<n;){if(!so(r.charCodeAt(i)))break;++i}return mo(e,eo.NAME,t,i,r.slice(t,i))}const Oo=10,Do=2;function Co(e){return No(e,[])}function No(e,t){switch(typeof e){case"string":return JSON.stringify(e);case"function":return e.name?`[function ${e.name}]`:"[function]";case"object":return function(e,t){if(null===e)return"null";if(t.includes(e))return"[Circular]";const r=[...t,e];if(function(e){return"function"==typeof e.toJSON}(e)){const t=e.toJSON();if(t!==e)return"string"==typeof t?t:No(t,r)}else if(Array.isArray(e))return function(e,t){if(0===e.length)return"[]";if(t.length>Do)return"[Array]";const r=Math.min(Oo,e.length),n=e.length-r,i=[];for(let n=0;n<r;++n)i.push(No(e[n],t));1===n?i.push("... 1 more item"):n>1&&i.push(`... ${n} more items`);return"["+i.join(", ")+"]"}(e,r);return function(e,t){const r=Object.entries(e);if(0===r.length)return"{}";if(t.length>Do)return"["+function(e){const t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if("Object"===t&&"function"==typeof e.constructor){const t=e.constructor.name;if("string"==typeof t&&""!==t)return t}return t}(e)+"]";const n=r.map((([e,r])=>e+": "+No(r,t)));return"{ "+n.join(", ")+" }"}(e,r)}(e,t);default:return String(e)}}const ko=globalThis.process&&"production"===globalThis.process.env.NODE_ENV?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;if("object"==typeof e&&null!==e){var r;const n=t.prototype[Symbol.toStringTag];if(n===(Symbol.toStringTag in e?e[Symbol.toStringTag]:null===(r=e.constructor)||void 0===r?void 0:r.name)){const t=Co(e);throw new Error(`Cannot use ${n} "${t}" from another module or realm.\n\nEnsure that there is only one instance of "graphql" in the node_modules\ndirectory. If different versions of "graphql" are the dependencies of other\nrelied on modules, use "resolutions" to ensure only one version is installed.\n\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\n\nDuplicate "graphql" modules cannot be used at the same time since different\nversions may have different capabilities and behavior. The data from one\nversion used in the function from another could produce confusing and\nspurious results.`)}}return!1};class xo{constructor(e,t="GraphQL request",r={line:1,column:1}){"string"==typeof e||Ls(!1,`Body must be a string. Received: ${Co(e)}.`),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||Ls(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||Ls(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}}class Ro{constructor(e,t={}){const r=function(e){return ko(e,xo)}(e)?e:new xo(e);this._lexer=new co(r),this._options=t,this._tokenCounter=0}parseName(){const e=this.expectToken(eo.NAME);return this.node(e,{kind:Zs.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:Zs.DOCUMENT,definitions:this.many(eo.SOF,this.parseDefinition,eo.EOF)})}parseDefinition(){if(this.peek(eo.BRACE_L))return this.parseOperationDefinition();const e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(t.kind===eo.NAME){switch(t.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw Gs(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(t.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(t)}parseOperationDefinition(){const e=this._lexer.token;if(this.peek(eo.BRACE_L))return this.node(e,{kind:Zs.OPERATION_DEFINITION,operation:Js.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});const t=this.parseOperationType();let r;return this.peek(eo.NAME)&&(r=this.parseName()),this.node(e,{kind:Zs.OPERATION_DEFINITION,operation:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){const e=this.expectToken(eo.NAME);switch(e.value){case"query":return Js.QUERY;case"mutation":return Js.MUTATION;case"subscription":return Js.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(eo.PAREN_L,this.parseVariableDefinition,eo.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:Zs.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(eo.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(eo.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){const e=this._lexer.token;return this.expectToken(eo.DOLLAR),this.node(e,{kind:Zs.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:Zs.SELECTION_SET,selections:this.many(eo.BRACE_L,this.parseSelection,eo.BRACE_R)})}parseSelection(){return this.peek(eo.SPREAD)?this.parseFragment():this.parseField()}parseField(){const e=this._lexer.token,t=this.parseName();let r,n;return this.expectOptionalToken(eo.COLON)?(r=t,n=this.parseName()):n=t,this.node(e,{kind:Zs.FIELD,alias:r,name:n,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(eo.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){const t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(eo.PAREN_L,t,eo.PAREN_R)}parseArgument(e=!1){const t=this._lexer.token,r=this.parseName();return this.expectToken(eo.COLON),this.node(t,{kind:Zs.ARGUMENT,name:r,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){const e=this._lexer.token;this.expectToken(eo.SPREAD);const t=this.expectOptionalKeyword("on");return!t&&this.peek(eo.NAME)?this.node(e,{kind:Zs.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:Zs.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){const e=this._lexer.token;return this.expectKeyword("fragment"),!0===this._options.allowLegacyFragmentVariables?this.node(e,{kind:Zs.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:Zs.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if("on"===this._lexer.token.value)throw this.unexpected();return this.parseName()}parseValueLiteral(e){const t=this._lexer.token;switch(t.kind){case eo.BRACKET_L:return this.parseList(e);case eo.BRACE_L:return this.parseObject(e);case eo.INT:return this.advanceLexer(),this.node(t,{kind:Zs.INT,value:t.value});case eo.FLOAT:return this.advanceLexer(),this.node(t,{kind:Zs.FLOAT,value:t.value});case eo.STRING:case eo.BLOCK_STRING:return this.parseStringLiteral();case eo.NAME:switch(this.advanceLexer(),t.value){case"true":return this.node(t,{kind:Zs.BOOLEAN,value:!0});case"false":return this.node(t,{kind:Zs.BOOLEAN,value:!1});case"null":return this.node(t,{kind:Zs.NULL});default:return this.node(t,{kind:Zs.ENUM,value:t.value})}case eo.DOLLAR:if(e){if(this.expectToken(eo.DOLLAR),this._lexer.token.kind===eo.NAME){const e=this._lexer.token.value;throw Gs(this._lexer.source,t.start,`Unexpected variable "$${e}" in constant value.`)}throw this.unexpected(t)}return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){const e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:Zs.STRING,value:e.value,block:e.kind===eo.BLOCK_STRING})}parseList(e){return this.node(this._lexer.token,{kind:Zs.LIST,values:this.any(eo.BRACKET_L,(()=>this.parseValueLiteral(e)),eo.BRACKET_R)})}parseObject(e){return this.node(this._lexer.token,{kind:Zs.OBJECT,fields:this.any(eo.BRACE_L,(()=>this.parseObjectField(e)),eo.BRACE_R)})}parseObjectField(e){const t=this._lexer.token,r=this.parseName();return this.expectToken(eo.COLON),this.node(t,{kind:Zs.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e)})}parseDirectives(e){const t=[];for(;this.peek(eo.AT);)t.push(this.parseDirective(e));return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){const t=this._lexer.token;return this.expectToken(eo.AT),this.node(t,{kind:Zs.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){const e=this._lexer.token;let t;if(this.expectOptionalToken(eo.BRACKET_L)){const r=this.parseTypeReference();this.expectToken(eo.BRACKET_R),t=this.node(e,{kind:Zs.LIST_TYPE,type:r})}else t=this.parseNamedType();return this.expectOptionalToken(eo.BANG)?this.node(e,{kind:Zs.NON_NULL_TYPE,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:Zs.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(eo.STRING)||this.peek(eo.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");const r=this.parseConstDirectives(),n=this.many(eo.BRACE_L,this.parseOperationTypeDefinition,eo.BRACE_R);return this.node(e,{kind:Zs.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n})}parseOperationTypeDefinition(){const e=this._lexer.token,t=this.parseOperationType();this.expectToken(eo.COLON);const r=this.parseNamedType();return this.node(e,{kind:Zs.OPERATION_TYPE_DEFINITION,operation:t,type:r})}parseScalarTypeDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");const r=this.parseName(),n=this.parseConstDirectives();return this.node(e,{kind:Zs.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n})}parseObjectTypeDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");const r=this.parseName(),n=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),s=this.parseFieldsDefinition();return this.node(e,{kind:Zs.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:i,fields:s})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(eo.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(eo.BRACE_L,this.parseFieldDefinition,eo.BRACE_R)}parseFieldDefinition(){const e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(eo.COLON);const i=this.parseTypeReference(),s=this.parseConstDirectives();return this.node(e,{kind:Zs.FIELD_DEFINITION,description:t,name:r,arguments:n,type:i,directives:s})}parseArgumentDefs(){return this.optionalMany(eo.PAREN_L,this.parseInputValueDef,eo.PAREN_R)}parseInputValueDef(){const e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(eo.COLON);const n=this.parseTypeReference();let i;this.expectOptionalToken(eo.EQUALS)&&(i=this.parseConstValueLiteral());const s=this.parseConstDirectives();return this.node(e,{kind:Zs.INPUT_VALUE_DEFINITION,description:t,name:r,type:n,defaultValue:i,directives:s})}parseInterfaceTypeDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");const r=this.parseName(),n=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),s=this.parseFieldsDefinition();return this.node(e,{kind:Zs.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:i,fields:s})}parseUnionTypeDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");const r=this.parseName(),n=this.parseConstDirectives(),i=this.parseUnionMemberTypes();return this.node(e,{kind:Zs.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:i})}parseUnionMemberTypes(){return this.expectOptionalToken(eo.EQUALS)?this.delimitedMany(eo.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");const r=this.parseName(),n=this.parseConstDirectives(),i=this.parseEnumValuesDefinition();return this.node(e,{kind:Zs.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:i})}parseEnumValuesDefinition(){return this.optionalMany(eo.BRACE_L,this.parseEnumValueDefinition,eo.BRACE_R)}parseEnumValueDefinition(){const e=this._lexer.token,t=this.parseDescription(),r=this.parseEnumValueName(),n=this.parseConstDirectives();return this.node(e,{kind:Zs.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n})}parseEnumValueName(){if("true"===this._lexer.token.value||"false"===this._lexer.token.value||"null"===this._lexer.token.value)throw Gs(this._lexer.source,this._lexer.token.start,`${So(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");const r=this.parseName(),n=this.parseConstDirectives(),i=this.parseInputFieldsDefinition();return this.node(e,{kind:Zs.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:i})}parseInputFieldsDefinition(){return this.optionalMany(eo.BRACE_L,this.parseInputValueDef,eo.BRACE_R)}parseTypeSystemExtension(){const e=this._lexer.lookahead();if(e.kind===eo.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");const t=this.parseConstDirectives(),r=this.optionalMany(eo.BRACE_L,this.parseOperationTypeDefinition,eo.BRACE_R);if(0===t.length&&0===r.length)throw this.unexpected();return this.node(e,{kind:Zs.SCHEMA_EXTENSION,directives:t,operationTypes:r})}parseScalarTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");const t=this.parseName(),r=this.parseConstDirectives();if(0===r.length)throw this.unexpected();return this.node(e,{kind:Zs.SCALAR_TYPE_EXTENSION,name:t,directives:r})}parseObjectTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");const t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(0===r.length&&0===n.length&&0===i.length)throw this.unexpected();return this.node(e,{kind:Zs.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:i})}parseInterfaceTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");const t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(0===r.length&&0===n.length&&0===i.length)throw this.unexpected();return this.node(e,{kind:Zs.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:i})}parseUnionTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");const t=this.parseName(),r=this.parseConstDirectives(),n=this.parseUnionMemberTypes();if(0===r.length&&0===n.length)throw this.unexpected();return this.node(e,{kind:Zs.UNION_TYPE_EXTENSION,name:t,directives:r,types:n})}parseEnumTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");const t=this.parseName(),r=this.parseConstDirectives(),n=this.parseEnumValuesDefinition();if(0===r.length&&0===n.length)throw this.unexpected();return this.node(e,{kind:Zs.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n})}parseInputObjectTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");const t=this.parseName(),r=this.parseConstDirectives(),n=this.parseInputFieldsDefinition();if(0===r.length&&0===n.length)throw this.unexpected();return this.node(e,{kind:Zs.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n})}parseDirectiveDefinition(){const e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(eo.AT);const r=this.parseName(),n=this.parseArgumentDefs(),i=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");const s=this.parseDirectiveLocations();return this.node(e,{kind:Zs.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:i,locations:s})}parseDirectiveLocations(){return this.delimitedMany(eo.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){const e=this._lexer.token,t=this.parseName();if(Object.prototype.hasOwnProperty.call(Ws,t.value))return t;throw this.unexpected(e)}node(e,t){return!0!==this._options.noLocation&&(t.loc=new Ys(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){const t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw Gs(this._lexer.source,t.start,`Expected ${Fo(e)}, found ${So(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e&&(this.advanceLexer(),!0)}expectKeyword(e){const t=this._lexer.token;if(t.kind!==eo.NAME||t.value!==e)throw Gs(this._lexer.source,t.start,`Expected "${e}", found ${So(t)}.`);this.advanceLexer()}expectOptionalKeyword(e){const t=this._lexer.token;return t.kind===eo.NAME&&t.value===e&&(this.advanceLexer(),!0)}unexpected(e){const t=null!=e?e:this._lexer.token;return Gs(this._lexer.source,t.start,`Unexpected ${So(t)}.`)}any(e,t,r){this.expectToken(e);const n=[];for(;!this.expectOptionalToken(r);)n.push(t.call(this));return n}optionalMany(e,t,r){if(this.expectOptionalToken(e)){const e=[];do{e.push(t.call(this))}while(!this.expectOptionalToken(r));return e}return[]}many(e,t,r){this.expectToken(e);const n=[];do{n.push(t.call(this))}while(!this.expectOptionalToken(r));return n}delimitedMany(e,t){this.expectOptionalToken(e);const r=[];do{r.push(t.call(this))}while(this.expectOptionalToken(e));return r}advanceLexer(){const{maxTokens:e}=this._options,t=this._lexer.advance();if(void 0!==e&&t.kind!==eo.EOF&&(++this._tokenCounter,this._tokenCounter>e))throw Gs(this._lexer.source,t.start,`Document contains more that ${e} tokens. Parsing aborted.`)}}function So(e){const t=e.value;return Fo(e.kind)+(null!=t?` "${t}"`:"")}function Fo(e){return function(e){return e===eo.BANG||e===eo.DOLLAR||e===eo.AMP||e===eo.PAREN_L||e===eo.PAREN_R||e===eo.SPREAD||e===eo.COLON||e===eo.EQUALS||e===eo.AT||e===eo.BRACKET_L||e===eo.BRACKET_R||e===eo.BRACE_L||e===eo.PIPE||e===eo.BRACE_R}(e)?`"${e}"`:e}const Lo=/[\x00-\x1f\x22\x5c\x7f-\x9f]/g;function qo(e){return Mo[e.charCodeAt(0)]}const Mo=["\\u0000","\\u0001","\\u0002","\\u0003","\\u0004","\\u0005","\\u0006","\\u0007","\\b","\\t","\\n","\\u000B","\\f","\\r","\\u000E","\\u000F","\\u0010","\\u0011","\\u0012","\\u0013","\\u0014","\\u0015","\\u0016","\\u0017","\\u0018","\\u0019","\\u001A","\\u001B","\\u001C","\\u001D","\\u001E","\\u001F","","",'\\"',"","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","\\\\","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","\\u007F","\\u0080","\\u0081","\\u0082","\\u0083","\\u0084","\\u0085","\\u0086","\\u0087","\\u0088","\\u0089","\\u008A","\\u008B","\\u008C","\\u008D","\\u008E","\\u008F","\\u0090","\\u0091","\\u0092","\\u0093","\\u0094","\\u0095","\\u0096","\\u0097","\\u0098","\\u0099","\\u009A","\\u009B","\\u009C","\\u009D","\\u009E","\\u009F"],Uo=Object.freeze({});function Vo(e,t){const r=e[t];return"object"==typeof r?r:"function"==typeof r?{enter:r,leave:void 0}:{enter:e.enter,leave:e.leave}}function jo(e){return function(e,t,r=Ks){const n=new Map;for(const e of Object.values(Zs))n.set(e,Vo(t,e));let i,s,o,a=Array.isArray(e),c=[e],l=-1,u=[],d=e;const h=[],f=[];do{l++;const e=l===c.length,y=e&&0!==u.length;if(e){if(s=0===f.length?void 0:h[h.length-1],d=o,o=f.pop(),y)if(a){d=d.slice();let e=0;for(const[t,r]of u){const n=t-e;null===r?(d.splice(n,1),e++):d[n]=r}}else{d=Object.defineProperties({},Object.getOwnPropertyDescriptors(d));for(const[e,t]of u)d[e]=t}l=i.index,c=i.keys,u=i.edits,a=i.inArray,i=i.prev}else if(o){if(s=a?l:c[l],d=o[s],null==d)continue;h.push(s)}let A;if(!Array.isArray(d)){var p,m;Xs(d)||Ls(!1,`Invalid AST Node: ${Co(d)}.`);const r=e?null===(p=n.get(d.kind))||void 0===p?void 0:p.leave:null===(m=n.get(d.kind))||void 0===m?void 0:m.enter;if(A=null==r?void 0:r.call(t,d,s,o,h,f),A===Uo)break;if(!1===A){if(!e){h.pop();continue}}else if(void 0!==A&&(u.push([s,A]),!e)){if(!Xs(A)){h.pop();continue}d=A}}var g;void 0===A&&y&&u.push([s,d]),e?h.pop():(i={inArray:a,index:l,keys:c,edits:u,prev:i},a=Array.isArray(d),c=a?d:null!==(g=r[d.kind])&&void 0!==g?g:[],l=-1,u=[],o&&f.push(o),o=d)}while(void 0!==i);return 0!==u.length?u[u.length-1][1]:e}(e,Qo)}const Qo={Name:{leave:e=>e.value},Variable:{leave:e=>"$"+e.name},Document:{leave:e=>Ho(e.definitions,"\n\n")},OperationDefinition:{leave(e){const t=Yo("(",Ho(e.variableDefinitions,", "),")"),r=Ho([e.operation,Ho([e.name,t]),Ho(e.directives," ")]," ");return("query"===r?"":r+" ")+e.selectionSet}},VariableDefinition:{leave:({variable:e,type:t,defaultValue:r,directives:n})=>e+": "+t+Yo(" = ",r)+Yo(" ",Ho(n," "))},SelectionSet:{leave:({selections:e})=>Go(e)},Field:{leave({alias:e,name:t,arguments:r,directives:n,selectionSet:i}){const s=Yo("",e,": ")+t;let o=s+Yo("(",Ho(r,", "),")");return o.length>80&&(o=s+Yo("(\n",$o(Ho(r,"\n")),"\n)")),Ho([o,Ho(n," "),i]," ")}},Argument:{leave:({name:e,value:t})=>e+": "+t},FragmentSpread:{leave:({name:e,directives:t})=>"..."+e+Yo(" ",Ho(t," "))},InlineFragment:{leave:({typeCondition:e,directives:t,selectionSet:r})=>Ho(["...",Yo("on ",e),Ho(t," "),r]," ")},FragmentDefinition:{leave:({name:e,typeCondition:t,variableDefinitions:r,directives:n,selectionSet:i})=>`fragment ${e}${Yo("(",Ho(r,", "),")")} on ${t} ${Yo("",Ho(n," ")," ")}`+i},IntValue:{leave:({value:e})=>e},FloatValue:{leave:({value:e})=>e},StringValue:{leave:({value:e,block:t})=>t?function(e,t){const r=e.replace(/"""/g,'\\"""'),n=r.split(/\r\n|[\n\r]/g),i=1===n.length,s=n.length>1&&n.slice(1).every((e=>0===e.length||to(e.charCodeAt(0)))),o=r.endsWith('\\"""'),a=e.endsWith('"')&&!o,c=e.endsWith("\\"),l=a||c,u=!i||e.length>70||l||s||o;let d="";const h=i&&to(e.charCodeAt(0));return(u&&!h||s)&&(d+="\n"),d+=r,(u||l)&&(d+="\n"),'"""'+d+'"""'}(e):`"${e.replace(Lo,qo)}"`},BooleanValue:{leave:({value:e})=>e?"true":"false"},NullValue:{leave:()=>"null"},EnumValue:{leave:({value:e})=>e},ListValue:{leave:({values:e})=>"["+Ho(e,", ")+"]"},ObjectValue:{leave:({fields:e})=>"{"+Ho(e,", ")+"}"},ObjectField:{leave:({name:e,value:t})=>e+": "+t},Directive:{leave:({name:e,arguments:t})=>"@"+e+Yo("(",Ho(t,", "),")")},NamedType:{leave:({name:e})=>e},ListType:{leave:({type:e})=>"["+e+"]"},NonNullType:{leave:({type:e})=>e+"!"},SchemaDefinition:{leave:({description:e,directives:t,operationTypes:r})=>Yo("",e,"\n")+Ho(["schema",Ho(t," "),Go(r)]," ")},OperationTypeDefinition:{leave:({operation:e,type:t})=>e+": "+t},ScalarTypeDefinition:{leave:({description:e,name:t,directives:r})=>Yo("",e,"\n")+Ho(["scalar",t,Ho(r," ")]," ")},ObjectTypeDefinition:{leave:({description:e,name:t,interfaces:r,directives:n,fields:i})=>Yo("",e,"\n")+Ho(["type",t,Yo("implements ",Ho(r," & ")),Ho(n," "),Go(i)]," ")},FieldDefinition:{leave:({description:e,name:t,arguments:r,type:n,directives:i})=>Yo("",e,"\n")+t+(Ko(r)?Yo("(\n",$o(Ho(r,"\n")),"\n)"):Yo("(",Ho(r,", "),")"))+": "+n+Yo(" ",Ho(i," "))},InputValueDefinition:{leave:({description:e,name:t,type:r,defaultValue:n,directives:i})=>Yo("",e,"\n")+Ho([t+": "+r,Yo("= ",n),Ho(i," ")]," ")},InterfaceTypeDefinition:{leave:({description:e,name:t,interfaces:r,directives:n,fields:i})=>Yo("",e,"\n")+Ho(["interface",t,Yo("implements ",Ho(r," & ")),Ho(n," "),Go(i)]," ")},UnionTypeDefinition:{leave:({description:e,name:t,directives:r,types:n})=>Yo("",e,"\n")+Ho(["union",t,Ho(r," "),Yo("= ",Ho(n," | "))]," ")},EnumTypeDefinition:{leave:({description:e,name:t,directives:r,values:n})=>Yo("",e,"\n")+Ho(["enum",t,Ho(r," "),Go(n)]," ")},EnumValueDefinition:{leave:({description:e,name:t,directives:r})=>Yo("",e,"\n")+Ho([t,Ho(r," ")]," ")},InputObjectTypeDefinition:{leave:({description:e,name:t,directives:r,fields:n})=>Yo("",e,"\n")+Ho(["input",t,Ho(r," "),Go(n)]," ")},DirectiveDefinition:{leave:({description:e,name:t,arguments:r,repeatable:n,locations:i})=>Yo("",e,"\n")+"directive @"+t+(Ko(r)?Yo("(\n",$o(Ho(r,"\n")),"\n)"):Yo("(",Ho(r,", "),")"))+(n?" repeatable":"")+" on "+Ho(i," | ")},SchemaExtension:{leave:({directives:e,operationTypes:t})=>Ho(["extend schema",Ho(e," "),Go(t)]," ")},ScalarTypeExtension:{leave:({name:e,directives:t})=>Ho(["extend scalar",e,Ho(t," ")]," ")},ObjectTypeExtension:{leave:({name:e,interfaces:t,directives:r,fields:n})=>Ho(["extend type",e,Yo("implements ",Ho(t," & ")),Ho(r," "),Go(n)]," ")},InterfaceTypeExtension:{leave:({name:e,interfaces:t,directives:r,fields:n})=>Ho(["extend interface",e,Yo("implements ",Ho(t," & ")),Ho(r," "),Go(n)]," ")},UnionTypeExtension:{leave:({name:e,directives:t,types:r})=>Ho(["extend union",e,Ho(t," "),Yo("= ",Ho(r," | "))]," ")},EnumTypeExtension:{leave:({name:e,directives:t,values:r})=>Ho(["extend enum",e,Ho(t," "),Go(r)]," ")},InputObjectTypeExtension:{leave:({name:e,directives:t,fields:r})=>Ho(["extend input",e,Ho(t," "),Go(r)]," ")}};function Ho(e,t=""){var r;return null!==(r=null==e?void 0:e.filter((e=>e)).join(t))&&void 0!==r?r:""}function Go(e){return Yo("{\n",$o(Ho(e,"\n")),"\n}")}function Yo(e,t,r=""){return null!=t&&""!==t?e+t+r:""}function $o(e){return Yo(" ",e.replace(/\n/g,"\n "))}function Ko(e){var t;return null!==(t=null==e?void 0:e.some((e=>e.includes("\n"))))&&void 0!==t&&t}const zo=e=>{let t;const r=e.definitions.filter((e=>"OperationDefinition"===e.kind));return 1===r.length&&(t=r[0]?.name?.value),t},Xo=e=>{if("string"==typeof e){let r;try{const n=new Ro(e,t).parseDocument();r=zo(n)}catch(e){}return{query:e,operationName:r}}var t;const r=zo(e);return{query:jo(e),operationName:r}};class Jo extends Error{constructor(e,t){super(`${Jo.extractMessage(e)}: ${JSON.stringify({response:e,request:t})}`),Object.setPrototypeOf(this,Jo.prototype),this.response=e,this.request=t,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,Jo)}static extractMessage(e){return e.errors?.[0]?.message??`GraphQL Error (Code: ${e.status})`}}const Wo=e=>{let t={};return e&&("undefined"!=typeof Headers&&e instanceof Headers||h&&h.Headers&&e instanceof h.Headers?t=(e=>{const t={};return e.forEach(((e,r)=>{t[r]=e})),t})(e):Array.isArray(e)?e.forEach((([e,r])=>{e&&void 0!==r&&(t[e]=r)})):t=e),t},Zo=e=>e.replace(/([\s,]|#[^\n\r]+)+/g," ").trim(),ea=e=>async t=>{const{url:r,query:n,variables:i,operationName:s,fetch:o,fetchOptions:a,middleware:c}=t,l={...t.headers};let u,d="";"POST"===e?(u=na(n,i,s,a.jsonSerializer),"string"==typeof u&&(l["Content-Type"]="application/json")):d=(e=>{if(!Array.isArray(e.query)){const t=e,r=[`query=${encodeURIComponent(Zo(t.query))}`];return e.variables&&r.push(`variables=${encodeURIComponent(t.jsonSerializer.stringify(t.variables))}`),t.operationName&&r.push(`operationName=${encodeURIComponent(t.operationName)}`),r.join("&")}if(void 0!==e.variables&&!Array.isArray(e.variables))throw new Error("Cannot create query with given variable type, array expected");const t=e,r=e.query.reduce(((e,r,n)=>(e.push({query:Zo(r),variables:t.variables?t.jsonSerializer.stringify(t.variables[n]):void 0}),e)),[]);return`query=${encodeURIComponent(t.jsonSerializer.stringify(r))}`})({query:n,variables:i,operationName:s,jsonSerializer:a.jsonSerializer??Fs});const h={method:e,headers:l,body:u,...a};let f=r,p=h;if(c){const e=await Promise.resolve(c({...h,url:r,operationName:s,variables:i})),{url:t,...n}=e;f=t,p=n}return d&&(f=`${f}?${d}`),await o(f,p)};class ta{constructor(e,t={}){this.url=e,this.requestConfig=t,this.rawRequest=async(...e)=>{const[t,r,n]=e,i=((e,t,r)=>e.query?e:{query:e,variables:t,requestHeaders:r,signal:void 0})(t,r,n),{headers:s,fetch:o=a,method:c="POST",requestMiddleware:l,responseMiddleware:u,...d}=this.requestConfig,{url:h}=this;void 0!==i.signal&&(d.signal=i.signal);const{operationName:f}=Xo(i.query);return ra({url:h,query:i.query,variables:i.variables,headers:{...Wo(sa(s)),...Wo(i.requestHeaders)},operationName:f,fetch:o,method:c,fetchOptions:d,middleware:l}).then((e=>(u&&u(e),e))).catch((e=>{throw u&&u(e),e}))}}async request(e,...t){const[r,n]=t,i=((e,t,r)=>e.document?e:{document:e,variables:t,requestHeaders:r,signal:void 0})(e,r,n),{headers:s,fetch:o=a,method:c="POST",requestMiddleware:l,responseMiddleware:u,...d}=this.requestConfig,{url:h}=this;void 0!==i.signal&&(d.signal=i.signal);const{query:f,operationName:p}=Xo(i.document);return ra({url:h,query:f,variables:i.variables,headers:{...Wo(sa(s)),...Wo(i.requestHeaders)},operationName:p,fetch:o,method:c,fetchOptions:d,middleware:l}).then((e=>(u&&u(e),e.data))).catch((e=>{throw u&&u(e),e}))}batchRequests(e,t){const r=((e,t)=>e.documents?e:{documents:e,requestHeaders:t,signal:void 0})(e,t),{headers:n,...i}=this.requestConfig;void 0!==r.signal&&(i.signal=r.signal);const s=r.documents.map((({document:e})=>Xo(e).query)),o=r.documents.map((({variables:e})=>e));return ra({url:this.url,query:s,variables:o,headers:{...Wo(sa(n)),...Wo(r.requestHeaders)},operationName:void 0,fetch:this.requestConfig.fetch??a,method:this.requestConfig.method||"POST",fetchOptions:i,middleware:this.requestConfig.requestMiddleware}).then((e=>(this.requestConfig.responseMiddleware&&this.requestConfig.responseMiddleware(e),e.data))).catch((e=>{throw this.requestConfig.responseMiddleware&&this.requestConfig.responseMiddleware(e),e}))}setHeaders(e){return this.requestConfig.headers=e,this}setHeader(e,t){const{headers:r}=this.requestConfig;return r?r[e]=t:this.requestConfig.headers={[e]:t},this}setEndpoint(e){return this.url=e,this}}const ra=async e=>{const{query:t,variables:r,fetchOptions:n}=e,i=ea((e.method??"post").toUpperCase());const s=Array.isArray(e.query),o=await i(e),a=await ia(o,n.jsonSerializer??Fs),c=Array.isArray(a)?!a.some((({data:e})=>!e)):Boolean(a.data),l=Array.isArray(a)||!a.errors||Array.isArray(a.errors)&&!a.errors.length||"all"===n.errorPolicy||"ignore"===n.errorPolicy;if(o.ok&&l&&c){const{errors:e,...t}=(Array.isArray(a),a),r="ignore"===n.errorPolicy?t:a;return{...s?{data:r}:r,headers:o.headers,status:o.status}}throw new Jo({..."string"==typeof a?{error:a}:a,status:o.status,headers:o.headers},{query:t,variables:r})},na=(e,t,r,n)=>{const i=n??Fs;if(!Array.isArray(e))return i.stringify({query:e,variables:t,operationName:r});if(void 0!==t&&!Array.isArray(t))throw new Error("Cannot create request body with given variable type, array expected");const s=e.reduce(((e,r,n)=>(e.push({query:r,variables:t?t[n]:void 0}),e)),[]);return i.stringify(s)},ia=async(e,t)=>{let r;return e.headers.forEach(((e,t)=>{"content-type"===t.toLowerCase()&&(r=e)})),r&&(r.toLowerCase().startsWith("application/json")||r.toLowerCase().startsWith("application/graphql+json")||r.toLowerCase().startsWith("application/graphql-response+json"))?t.parse(await e.text()):e.text()},sa=e=>"function"==typeof e?e():e,oa={url:"https://api.dodoex.io/frontend-graphql"};const aa={host:"https://api.dodoex.io",fetch:a};class ca{constructor(e){const t=Object.assign(Object.assign({},aa),e);this.host=t.host,this._getFetch=()=>t.fetch}getUrl(e,t){let r=`${this.host}/${e}`;return t&&(r=`${r}?${c.stringify(t)}`),r}responseProcessor(e){return A(this,void 0,void 0,(function*(){if(e.ok){const t=yield e.json();return{response:e,result:t}}throw new Error(`Response ${JSON.stringify(e)} failed`)}))}getJson(e,t,r){return A(this,void 0,void 0,(function*(){const n=this.getUrl(e,t),i=this._getFetch(),o=yield i(n,s.merge({method:"GET",headers:{Accept:"application/json","Content-Type":"application/json"}},r));return this.responseProcessor(o)}))}postJson(e,t,r,n){return A(this,void 0,void 0,(function*(){const i=this.getUrl(e,r),o=this._getFetch(),a=yield o(i,s.merge({method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:t?JSON.stringify(t):void 0},n));return this.responseProcessor(a)}))}}const la={getIsV3Mining:e=>["DSP","GSP","LPTOKEN","V3CLASSICAL"].includes(e),singleSideLp:e=>["CLASSICAL","V3CLASSICAL","DPP"].includes(e),canOperateLiquidity(e,t,r,n){const i=null!=t?t:r;return!!(e&&i&&n)&&("DPP"!==e||i.toLocaleLowerCase()===n.toLocaleLowerCase())}};class ua extends String{constructor(e,t){super(e),this.value=e,this.__meta__=t}toString(){return this.value}}const da={"\n query FetchErc20SwapCrossChainList($where: Erc20listV2Filter) {\n erc20_swapCrossChainList(where: $where) {\n name\n address\n symbol\n decimals\n slippage\n chainId\n logoImg\n tokenlists {\n name\n status\n }\n domains {\n name\n }\n funcLabels {\n key\n }\n attributeLabels {\n key\n }\n }\n }\n ":new ua("\n query FetchErc20SwapCrossChainList($where: Erc20listV2Filter) {\n erc20_swapCrossChainList(where: $where) {\n name\n address\n symbol\n decimals\n slippage\n chainId\n logoImg\n tokenlists {\n name\n status\n }\n domains {\n name\n }\n funcLabels {\n key\n }\n attributeLabels {\n key\n }\n }\n}\n "),"\n query FetchErc20ForecastSlippage($where: Erc20_extenderc20ExtendV2Filter) {\n erc20_extend_erc20ExtendV2(where: $where) {\n forecastSlippageList {\n forecastSlippage\n forecastValue\n confidenceRatio\n confidenceIntervalUpper\n confidenceIntervalLower\n }\n }\n }\n ":new ua("\n query FetchErc20ForecastSlippage($where: Erc20_extenderc20ExtendV2Filter) {\n erc20_extend_erc20ExtendV2(where: $where) {\n forecastSlippageList {\n forecastSlippage\n forecastValue\n confidenceRatio\n confidenceIntervalUpper\n confidenceIntervalLower\n }\n }\n}\n "),"\n query Ticks($where: Tick_filter, $skip: Int, $first: Int) {\n ticks(where: $where, skip: $skip, first: $first) {\n id\n poolAddress\n tickIdx\n liquidityNet\n price0\n price1\n }\n }\n":new ua("\n query Ticks($where: Tick_filter, $skip: Int, $first: Int) {\n ticks(where: $where, skip: $skip, first: $first) {\n id\n poolAddress\n tickIdx\n liquidityNet\n price0\n price1\n }\n}\n "),"\n query FetchMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n baseApy\n baseLpToken {\n decimals\n address: id\n symbol\n }\n baseToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n address: id\n symbol\n }\n quoteToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ":new ua("\n query FetchMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n baseApy\n baseLpToken {\n decimals\n address: id\n symbol\n }\n baseToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n address: id\n symbol\n }\n quoteToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n startTime\n endTime\n }\n totalCount\n chains\n }\n}\n "),"\n query MiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ":new ua("\n query MiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n startTime\n endTime\n }\n totalCount\n chains\n }\n}\n "),"\n query MyCreatedMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n participantsNum\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ":new ua("\n query MyCreatedMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n participantsNum\n startTime\n endTime\n }\n totalCount\n chains\n }\n}\n "),"\n query FetchPoolList(\n $first: Int\n $where: Pair_filter\n $orderBy: Pair_orderBy\n ) {\n pairs(\n first: $first\n where: $where\n orderBy: $orderBy\n orderDirection: desc\n ) {\n id\n type\n creator\n owner\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n lastTradePrice\n feeBase\n feeQuote\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n }\n }\n ":new ua("\n query FetchPoolList($first: Int, $where: Pair_filter, $orderBy: Pair_orderBy) {\n pairs(first: $first, where: $where, orderBy: $orderBy, orderDirection: desc) {\n id\n type\n creator\n owner\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n lastTradePrice\n feeBase\n feeQuote\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n }\n}\n "),"\n query FetchLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n currentPage\n pageSize\n totalCount\n lqList {\n id\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n ":new ua("\n query FetchLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n currentPage\n pageSize\n totalCount\n lqList {\n id\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n}\n "),"\n query FetchMyLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n lqList {\n id\n liquidityPositions {\n id\n liquidityTokenBalance\n liquidityTokenInMining\n poolShare\n liquidityUSD\n tokenId\n outOfRange\n priceRange {\n token0LowerPrice\n token0UpperPrice\n token1LowerPrice\n token1UpperPrice\n }\n tickLower {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n tickUpper {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n }\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n ":new ua("\n query FetchMyLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n lqList {\n id\n liquidityPositions {\n id\n liquidityTokenBalance\n liquidityTokenInMining\n poolShare\n liquidityUSD\n tokenId\n outOfRange\n priceRange {\n token0LowerPrice\n token0UpperPrice\n token1LowerPrice\n token1UpperPrice\n }\n tickLower {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n tickUpper {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n }\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n}\n "),"\n query FetchDashboardPairList($where: Dashboardtype_list_filter) {\n dashboard_pairs_list(where: $where) {\n list {\n chainId\n pairAddress\n poolType\n baseReserve\n quoteReserve\n totalFee\n baseAddress\n quoteAddress\n baseSymbol\n quoteSymbol\n tvl\n baseTvl\n quoteTvl\n baseTvlRate\n quoteTvlRate\n }\n }\n }\n ":new ua("\n query FetchDashboardPairList($where: Dashboardtype_list_filter) {\n dashboard_pairs_list(where: $where) {\n list {\n chainId\n pairAddress\n poolType\n baseReserve\n quoteReserve\n totalFee\n baseAddress\n quoteAddress\n baseSymbol\n quoteSymbol\n tvl\n baseTvl\n quoteTvl\n baseTvlRate\n quoteTvlRate\n }\n }\n}\n "),"\n query FetchPool(\n $id: ID!\n $where: Pair_filter\n $liquidityWhere: Liquiditylist_filter\n ) {\n pair(id: $id, where: $where) {\n id\n type\n creator\n owner\n traderCount\n volumeBaseToken\n volumeQuoteToken\n volumeUSD\n feeBase\n feeQuote\n mtFeeRate\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n baseLpToken {\n id\n symbol\n name\n }\n quoteLpToken {\n id\n symbol\n name\n }\n }\n liquidity_list(where: $liquidityWhere) {\n lqList {\n pair {\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n }\n }\n }\n }\n ":new ua("\n query FetchPool($id: ID!, $where: Pair_filter, $liquidityWhere: Liquiditylist_filter) {\n pair(id: $id, where: $where) {\n id\n type\n creator\n owner\n traderCount\n volumeBaseToken\n volumeQuoteToken\n volumeUSD\n feeBase\n feeQuote\n mtFeeRate\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n baseLpToken {\n id\n symbol\n name\n }\n quoteLpToken {\n id\n symbol\n name\n }\n }\n liquidity_list(where: $liquidityWhere) {\n lqList {\n pair {\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n }\n }\n }\n}\n "),"\n query FetchPoolDayData($where: Dashboardday_filter) {\n dashboard_pairs_day_data(where: $where) {\n timestamp\n date\n volumeUsd\n feeUsd\n mtFeeUsd\n tvlUsd\n addresses\n }\n }\n ":new ua("\n query FetchPoolDayData($where: Dashboardday_filter) {\n dashboard_pairs_day_data(where: $where) {\n timestamp\n date\n volumeUsd\n feeUsd\n mtFeeUsd\n tvlUsd\n addresses\n }\n}\n "),"\n query FetchPoolDashboard($where: Dashboardpair_detail_filter) {\n dashboard_pairs_detail(where: $where) {\n fee\n volume\n totalFee\n totalMtFee\n totalVolume\n tvl\n turnover\n liquidity\n baseReserve\n quoteReserve\n baseVolume\n quoteVolume\n basePrice\n quotePrice\n price\n baseFee\n quoteFee\n baseMtFee\n quoteMtFee\n pair\n poolType\n baseVolumeCumulative\n quoteVolumeCumulative\n baseAddress\n baseSymbol\n quoteAddress\n quoteSymbol\n network\n pairAddress\n txes\n txesNear24h\n txUsers\n txUserNear24h\n mtFeeNear24h\n feeNear24h\n }\n }\n ":new ua("\n query FetchPoolDashboard($where: Dashboardpair_detail_filter) {\n dashboard_pairs_detail(where: $where) {\n fee\n volume\n totalFee\n totalMtFee\n totalVolume\n tvl\n turnover\n liquidity\n baseReserve\n quoteReserve\n baseVolume\n quoteVolume\n basePrice\n quotePrice\n price\n baseFee\n quoteFee\n baseMtFee\n quoteMtFee\n pair\n poolType\n baseVolumeCumulative\n quoteVolumeCumulative\n baseAddress\n baseSymbol\n quoteAddress\n quoteSymbol\n network\n pairAddress\n txes\n txesNear24h\n txUsers\n txUserNear24h\n mtFeeNear24h\n feeNear24h\n }\n}\n "),"\n query FetchPoolSwapList(\n $first: Int\n $skip: Int\n $where: Swap_filter\n $orderBy: Swap_orderBy\n $orderDirection: OrderDirection\n ) {\n swaps(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n timestamp\n from\n baseVolume\n quoteVolume\n feeBase\n feeQuote\n fromToken {\n id\n symbol\n name\n decimals\n }\n toToken {\n id\n symbol\n name\n decimals\n }\n amountIn\n amountOut\n }\n }\n ":new ua("\n query FetchPoolSwapList($first: Int, $skip: Int, $where: Swap_filter, $orderBy: Swap_orderBy, $orderDirection: OrderDirection) {\n swaps(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n timestamp\n from\n baseVolume\n quoteVolume\n feeBase\n feeQuote\n fromToken {\n id\n symbol\n name\n decimals\n }\n toToken {\n id\n symbol\n name\n decimals\n }\n amountIn\n amountOut\n }\n}\n "),"\n query FetchLiquidityPositions(\n $id: ID!\n $first: Int\n $skip: Int\n $where: LiquidityPosition_filter\n $miningWhere: LiquidityPosition_filter\n $orderBy: LiquidityPosition_orderBy\n $orderDirection: OrderDirection\n ) {\n balance: liquidityPositions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenBalance\n }\n mining: liquidityPositions(\n first: $first\n skip: $skip\n where: $miningWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenInMining\n }\n pair(id: $id) {\n lastTradePrice\n baseLpToken {\n id\n decimals\n }\n quoteLpToken {\n id\n decimals\n }\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n }\n }\n ":new ua("\n query FetchLiquidityPositions($id: ID!, $first: Int, $skip: Int, $where: LiquidityPosition_filter, $miningWhere: LiquidityPosition_filter, $orderBy: LiquidityPosition_orderBy, $orderDirection: OrderDirection) {\n balance: liquidityPositions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenBalance\n }\n mining: liquidityPositions(\n first: $first\n skip: $skip\n where: $miningWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenInMining\n }\n pair(id: $id) {\n lastTradePrice\n baseLpToken {\n id\n decimals\n }\n quoteLpToken {\n id\n decimals\n }\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n }\n}\n "),"\n query FetchPoolPairList(\n $first: Int\n $baseWhere: Pair_filter\n $quoteWhere: Pair_filter\n $orderBy: Pair_orderBy\n $orderDirection: OrderDirection\n ) {\n basePairs: pairs(\n first: $first\n where: $baseWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n quotePairs: pairs(\n first: $first\n where: $quoteWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n }\n ":new ua("\n query FetchPoolPairList($first: Int, $baseWhere: Pair_filter, $quoteWhere: Pair_filter, $orderBy: Pair_orderBy, $orderDirection: OrderDirection) {\n basePairs: pairs(\n first: $first\n where: $baseWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n quotePairs: pairs(\n first: $first\n where: $quoteWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n}\n "),"\n query FetchUserSwapOrderHistories($where: User_swapswapFilter) {\n user_swap_orderHistories(where: $where) {\n count\n page\n list {\n chainId\n createdAt\n fromAmount\n fromTokenDecimals\n fromTokenPrice\n fromTokenSymbol\n fromTokenAddress\n fromTokenLogoImg\n hash\n status\n toAmount\n toTokenDecimals\n toTokenPrice\n toTokenSymbol\n toTokenAddress\n toTokenLogoImg\n minAmount\n nonce\n extra\n user\n }\n }\n }\n ":new ua("\n query FetchUserSwapOrderHistories($where: User_swapswapFilter) {\n user_swap_orderHistories(where: $where) {\n count\n page\n list {\n chainId\n createdAt\n fromAmount\n fromTokenDecimals\n fromTokenPrice\n fromTokenSymbol\n fromTokenAddress\n fromTokenLogoImg\n hash\n status\n toAmount\n toTokenDecimals\n toTokenPrice\n toTokenSymbol\n toTokenAddress\n toTokenLogoImg\n minAmount\n nonce\n extra\n user\n }\n }\n}\n "),"\n query FetchNoticeCenterTransactionList(\n $where: Notice_centertransactionListFilter\n ) {\n notice_center_transactionList(where: $where) {\n list {\n chainId\n createTime\n extend\n from\n id\n key\n type\n }\n count\n limit\n page\n }\n }\n ":new ua("\n query FetchNoticeCenterTransactionList($where: Notice_centertransactionListFilter) {\n notice_center_transactionList(where: $where) {\n list {\n chainId\n createTime\n extend\n from\n id\n key\n type\n }\n count\n limit\n page\n }\n}\n "),"\n query FetchLiquidityLpPartnerRewards(\n $where: LiquidityLpPartnerRewardsInput\n ) {\n liquidity_getLpPartnerRewards(where: $where) {\n partnerInfos {\n partner\n logo\n introduction\n link\n theme\n sort\n platform\n extra\n }\n partnerRewards {\n chainId\n pool\n partner\n reward\n type\n }\n }\n }\n ":new ua("\n query FetchLiquidityLpPartnerRewards($where: LiquidityLpPartnerRewardsInput) {\n liquidity_getLpPartnerRewards(where: $where) {\n partnerInfos {\n partner\n logo\n introduction\n link\n theme\n sort\n platform\n extra\n }\n partnerRewards {\n chainId\n pool\n partner\n reward\n type\n }\n }\n}\n ")};function ha(e){var t;return null!==(t=da[e])&&void 0!==t?t:{}}const fa=ha("\n query Ticks($where: Tick_filter, $skip: Int, $first: Int) {\n ticks(where: $where, skip: $skip, first: $first) {\n id\n poolAddress\n tickIdx\n liquidityNet\n price0\n price1\n }\n }\n");class pa{constructor(e){if(e.contractRequests)this.contractRequests=e.contractRequests;else{if(!e.contractRequests)throw new Error("AMMV3Api does not initialize the contractRequests");this.contractRequests=new Ss(e.contractRequestsConfig)}}getPositions(e,t,r){return{queryKey:[Rs,"ammv3","getPositions",...arguments],enabled:!!e&&!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;return yield this.contractRequests.callMultiQuery(e,r.map((e=>({abiName:exports.ABIName.NonfungiblePositionManager,contractAddress:t,method:"positions",params:e}))))}))}}getOwner(e,t,r){return{queryKey:[Rs,"ammv3","getOwner",...arguments],enabled:!!e&&!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;return yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.NonfungiblePositionManager,contractAddress:t,method:"ownerOf",params:[r]})}))}}getBalanceOf(e,t,r){return{queryKey:[Rs,"ammv3","getBalanceOf",...arguments],enabled:!!e&&!!t&&!!r,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t||!r)return null;const n=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.NonfungiblePositionManager,contractAddress:t,method:"balanceOf",params:[r]});return new o(n.toString())}))}}getTokenOfOwnerByIndex(e,t,r){return{queryKey:[Rs,"ammv3","getTokenOfOwnerByIndex",...arguments],enabled:!!e&&!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;return yield this.contractRequests.callMultiQuery(e,r.map((e=>({abiName:exports.ABIName.NonfungiblePositionManager,contractAddress:t,method:"tokenOfOwnerByIndex",params:e.map((e=>e.toString()))}))))}))}}getV3PoolSlot0(e,t){return{queryKey:[Rs,"ammv3","getSlot0",...arguments],enabled:!!e||!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;return yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.UniswapV3Pool,contractAddress:t,method:"slot0",params:[]})}))}}getV3PoolLiquidity(e,t){return{queryKey:[Rs,"ammv3","getV3PoolLiquidity",...arguments],enabled:!!e||!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;return yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.UniswapV3Pool,contractAddress:t,method:"liquidity",params:[]})}))}}getCollect(e,t,r,n){return{queryKey:[Rs,"ammv3","getCollect",...arguments],enabled:!!e||!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&n))return null;const i=Z.from(2).pow(128).sub(1);return yield this.contractRequests.callQuery(e,{abiName:exports.ABIName.NonfungiblePositionManager,contractAddress:t,method:"collect",params:[{tokenId:r,recipient:n,amount0Max:i,amount1Max:i},{from:n}]})}))}}}pa.graphql={AllV3TicksDocument:fa},pa.utils=la,pa.encode={};const ma=(e,t)=>new o.BigNumber(Z.isBigNumber(e)?e.toString():e).div(10**t),ga={fetchPoolList:ha("\n query FetchPoolList(\n $first: Int\n $where: Pair_filter\n $orderBy: Pair_orderBy\n ) {\n pairs(\n first: $first\n where: $where\n orderBy: $orderBy\n orderDirection: desc\n ) {\n id\n type\n creator\n owner\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n lastTradePrice\n feeBase\n feeQuote\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n }\n }\n "),fetchLiquidityList:ha("\n query FetchLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n currentPage\n pageSize\n totalCount\n lqList {\n id\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n "),fetchMyLiquidityList:ha("\n query FetchMyLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n lqList {\n id\n liquidityPositions {\n id\n liquidityTokenBalance\n liquidityTokenInMining\n poolShare\n liquidityUSD\n tokenId\n outOfRange\n priceRange {\n token0LowerPrice\n token0UpperPrice\n token1LowerPrice\n token1UpperPrice\n }\n tickLower {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n tickUpper {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n }\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n "),fetchDashboardPairList:ha("\n query FetchDashboardPairList($where: Dashboardtype_list_filter) {\n dashboard_pairs_list(where: $where) {\n list {\n chainId\n pairAddress\n poolType\n baseReserve\n quoteReserve\n totalFee\n baseAddress\n quoteAddress\n baseSymbol\n quoteSymbol\n tvl\n baseTvl\n quoteTvl\n baseTvlRate\n quoteTvlRate\n }\n }\n }\n "),fetchPool:ha("\n query FetchPool(\n $id: ID!\n $where: Pair_filter\n $liquidityWhere: Liquiditylist_filter\n ) {\n pair(id: $id, where: $where) {\n id\n type\n creator\n owner\n traderCount\n volumeBaseToken\n volumeQuoteToken\n volumeUSD\n feeBase\n feeQuote\n mtFeeRate\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n baseLpToken {\n id\n symbol\n name\n }\n quoteLpToken {\n id\n symbol\n name\n }\n }\n liquidity_list(where: $liquidityWhere) {\n lqList {\n pair {\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n }\n }\n }\n }\n "),fetchPoolDayData:ha("\n query FetchPoolDayData($where: Dashboardday_filter) {\n dashboard_pairs_day_data(where: $where) {\n timestamp\n date\n volumeUsd\n feeUsd\n mtFeeUsd\n tvlUsd\n addresses\n }\n }\n "),fetchPoolDashboard:ha("\n query FetchPoolDashboard($where: Dashboardpair_detail_filter) {\n dashboard_pairs_detail(where: $where) {\n fee\n volume\n totalFee\n totalMtFee\n totalVolume\n tvl\n turnover\n liquidity\n baseReserve\n quoteReserve\n baseVolume\n quoteVolume\n basePrice\n quotePrice\n price\n baseFee\n quoteFee\n baseMtFee\n quoteMtFee\n pair\n poolType\n baseVolumeCumulative\n quoteVolumeCumulative\n baseAddress\n baseSymbol\n quoteAddress\n quoteSymbol\n network\n pairAddress\n txes\n txesNear24h\n txUsers\n txUserNear24h\n mtFeeNear24h\n feeNear24h\n }\n }\n "),fetchPoolSwapList:ha("\n query FetchPoolSwapList(\n $first: Int\n $skip: Int\n $where: Swap_filter\n $orderBy: Swap_orderBy\n $orderDirection: OrderDirection\n ) {\n swaps(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n timestamp\n from\n baseVolume\n quoteVolume\n feeBase\n feeQuote\n fromToken {\n id\n symbol\n name\n decimals\n }\n toToken {\n id\n symbol\n name\n decimals\n }\n amountIn\n amountOut\n }\n }\n "),fetchLiquidityPositions:ha("\n query FetchLiquidityPositions(\n $id: ID!\n $first: Int\n $skip: Int\n $where: LiquidityPosition_filter\n $miningWhere: LiquidityPosition_filter\n $orderBy: LiquidityPosition_orderBy\n $orderDirection: OrderDirection\n ) {\n balance: liquidityPositions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenBalance\n }\n mining: liquidityPositions(\n first: $first\n skip: $skip\n where: $miningWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenInMining\n }\n pair(id: $id) {\n lastTradePrice\n baseLpToken {\n id\n decimals\n }\n quoteLpToken {\n id\n decimals\n }\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n }\n }\n "),fetchPoolPairList:ha("\n query FetchPoolPairList(\n $first: Int\n $baseWhere: Pair_filter\n $quoteWhere: Pair_filter\n $orderBy: Pair_orderBy\n $orderDirection: OrderDirection\n ) {\n basePairs: pairs(\n first: $first\n where: $baseWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n quotePairs: pairs(\n first: $first\n where: $quoteWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n }\n ")};class ya{QuerySellBase(e,t){try{let r;if(0===t.RStatus)r=this.ROneSellBase(e,t);else if(1===t.RStatus){const n=t.B0.minus(t.B),i=t.Q.minus(t.Q0);e.lt(n)?(r=this.RAboveSellBase(e,t),r.gt(i)&&(r=i)):r=e.eq(n)?i:i.plus(this.ROneSellBase(e.minus(n),t))}else r=this.RBelowSellBase(e,t);const n=r.multipliedBy(t.mtFeeRate),i=r.multipliedBy(t.lpFeeRate);return r.minus(n).minus(i)}catch(e){return new o(0)}}QuerySellQuote(e,t){try{let r;if(0===t.RStatus)r=this.ROneSellQuote(e,t);else if(1===t.RStatus)r=this.RAboveSellQuote(e,t);else{const n=t.B.minus(t.B0),i=t.Q0.minus(t.Q);e.lt(i)?(r=this.RBelowSellQuote(e,t),r.gt(n)&&(r=n)):r=e.eq(i)?n:n.plus(this.ROneSellQuote(e.minus(i),t))}const n=r.multipliedBy(t.mtFeeRate),i=r.multipliedBy(t.lpFeeRate);return r.minus(n).minus(i)}catch(e){return new o(0)}}GetMidPrice(e){if(2==e.RStatus){let t=e.Q0.multipliedBy(e.Q0).div(e.Q).div(e.Q);return t=new o(1).minus(e.k).plus(e.k.multipliedBy(t)),e.OraclePrice.div(t)}if(1==e.RStatus){let t=e.B0.multipliedBy(e.B0).div(e.B).div(e.B);return t=new o(1).minus(e.k).plus(e.k.multipliedBy(t)),e.OraclePrice.multipliedBy(t)}return e.OraclePrice}ROneSellBase(e,t){return va(t.Q0,t.Q0,e,t.OraclePrice,t.k)}ROneSellQuote(e,t){return va(t.B0,t.B0,e,new o(1).div(t.OraclePrice),t.k)}RAboveSellBase(e,t){return Aa(t.B0,t.B.plus(e),t.B,t.OraclePrice,t.k)}RAboveSellQuote(e,t){return va(t.B0,t.B,e,new o(1).div(t.OraclePrice),t.k)}RBelowSellQuote(e,t){return Aa(t.Q0,t.Q.plus(e),t.Q,new o(1).div(t.OraclePrice),t.k)}RBelowSellBase(e,t){return va(t.Q0,t.Q,e,t.OraclePrice,t.k)}}const Aa=(e,t,r,n,i)=>{if(e.lte(0))throw new Error("TARGET_IS_ZERO");const s=n.multipliedBy(t.minus(r));if(i.eq(0))return s;const a=e.multipliedBy(e).div(t).div(r).multipliedBy(i);return s.multipliedBy(new o(1).minus(i).plus(a))},va=(e,t,r,n,i)=>{if(e.lte(0))throw new Error("TARGET_IS_ZERO");if(r.eq(0))return r;if(i.eq(0))return r.multipliedBy(n).gt(t)?t:r.multipliedBy(n);if(i.eq(1)){const i=n.multipliedBy(r).multipliedBy(t).div(e.multipliedBy(e));return t.multipliedBy(i).div(i.plus(1))}const s=i.multipliedBy(e).div(t).multipliedBy(e).plus(n.multipliedBy(r));let a,c=new o(1).minus(i).multipliedBy(t);c.gte(s)?(c=c.minus(s),a=!1):(c=s.minus(c),a=!0);let l=new o(4).multipliedBy(new o(1).minus(i)).multipliedBy(i).multipliedBy(e).multipliedBy(e);l=c.multipliedBy(c).plus(l).sqrt();const u=new o(2).multipliedBy(new o(1).minus(i));let d;return d=a?l.minus(c):c.plus(l),t.minus(d.div(u))};class ba{constructor(e){this.B=e.B,this.Q=e.Q,this.B0=e.B0,this.Q0=e.Q0,this.RStatus=e.R,this.OraclePrice=e.i,this.k=e.K,this.mtFeeRate=e.mtFeeRate,this.lpFeeRate=e.lpFeeRate}}function Ea(e,t){let r=new o(e.toString());return t&&(r=r.div(new o(10**t))),r.dp(t)}const wa={DVM:exports.ABIName.dvmPoolABI,DSP:exports.ABIName.dvmPoolABI,GSP:exports.ABIName.dvmPoolABI,LPTOKEN:exports.ABIName.dvmPoolABI,CLASSICAL:exports.ABIName.classicalPoolABI,V3CLASSICAL:exports.ABIName.classicalPoolABI,DPP:exports.ABIName.dppPoolABI};function Pa({poolAddress:e,type:t,typeMethodObject:r,params:n=[]}){const i=r[t];if(!i)return null;const s=wa[t];return s?{abiName:s,contractAddress:e,method:i,params:n}:null}class Ia{constructor(e){if(e.contractRequests)this.contractRequests=e.contractRequests;else{if(!e.contractRequests)throw new Error("PoolApi does not initialize the contractRequests");this.contractRequests=new Ss(e.contractRequestsConfig)}}getTotalBaseLpQuery(t,r,n,i){return{queryKey:[Rs,"pool","getTotalBaseLpQuery",...arguments],enabled:!!t&&!!r&&!!n&&void 0!==i,queryFn:()=>A(this,void 0,void 0,(function*(){if(!t||!r||!n||void 0===i)return null;if("AMMV2"===n){const n=yield e.fetchUniswapV2PairTotalSupply(t,r);return new o(l.formatUnits(n,i))}const s=Pa({poolAddress:r,type:n,typeMethodObject:{DVM:"totalSupply",DSP:"totalSupply",GSP:"totalSupply",LPTOKEN:"totalSupply",CLASSICAL:"getTotalBaseCapital",V3CLASSICAL:"getTotalBaseCapital",DPP:null}});if(!s)return null;const a=yield this.contractRequests.batchCallQuery(t,s);return ma(a,i)}))}}getTotalQuoteLpQuery(e,t,r,n){return{queryKey:[Rs,"pool","getTotalQuoteLp",...arguments],enabled:!!e&&!!t&&!!r&&void 0!==n,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t||!r||void 0===n)return null;const i=Pa({poolAddress:t,type:r,typeMethodObject:{DVM:null,DSP:null,GSP:null,LPTOKEN:null,CLASSICAL:"getTotalQuoteCapital",V3CLASSICAL:"getTotalQuoteCapital",DPP:null}});if(!i)return null;const s=yield this.contractRequests.batchCallQuery(e,i);return ma(s,n)}))}}getUserBaseLpQuery(t,r,n,i,s){return{queryKey:[Rs,"pool","getUserBaseLp",...arguments],enabled:!!(t&&r&&n&&void 0!==i&&s),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(t&&r&&n&&void 0!==i&&s))return null;if("AMMV2"===n){const n=yield e.fetchUniswapV2PairBalanceOf(t,r,s);return new o(l.formatUnits(n,i))}const a=Pa({poolAddress:r,type:n,typeMethodObject:{DVM:"balanceOf",DSP:"balanceOf",GSP:"balanceOf",LPTOKEN:"balanceOf",CLASSICAL:"getBaseCapitalBalanceOf",V3CLASSICAL:"getBaseCapitalBalanceOf",DPP:null},params:[s]});if(!a)return null;const c=yield this.contractRequests.batchCallQuery(t,a);return ma(c,i)}))}}getUserQuoteLpQuery(e,t,r,n,i){return{queryKey:[Rs,"pool","getUserQuoteLp",...arguments],enabled:!!(e&&t&&r&&void 0!==n&&i),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&void 0!==n&&i))return null;const s=Pa({poolAddress:t,type:r,typeMethodObject:{DVM:null,DSP:null,GSP:null,LPTOKEN:null,CLASSICAL:"getQuoteCapitalBalanceOf",V3CLASSICAL:"getQuoteCapitalBalanceOf",DPP:null},params:[i]});if(!s)return null;const o=yield this.contractRequests.batchCallQuery(e,s);return ma(o,n)}))}}getReserveLpQuery(t,r,n,i,s){return"CLASSICAL"===n?this.getPMMStateQuery(t,r,n,i,s):{queryKey:[Rs,"pool","getReserveLp",...arguments],enabled:!!t&&!!r&&!!n&&void 0!==i&&void 0!==s,queryFn:()=>A(this,void 0,void 0,(function*(){if(!(t&&r&&n&&void 0!==i&&void 0!==s))return null;if("AMMV2"===n){const n=yield e.fetchUniswapV2PairGetReserves(t,r);return{baseReserve:ma(n._reserve0.toString(),i),quoteReserve:ma(n._reserve1.toString(),s)}}const o=Pa({poolAddress:r,type:n,typeMethodObject:{DVM:"getVaultReserve",DSP:"getVaultReserve",GSP:"getVaultReserve",LPTOKEN:"getVaultReserve",CLASSICAL:null,V3CLASSICAL:null,DPP:"getVaultReserve"},params:[]});if(!o)return null;const a=yield this.contractRequests.batchCallQuery(t,o);return{baseReserve:ma(a.baseReserve,i),quoteReserve:ma(a.quoteReserve,s)}}))}}getClassicalTargetQuery(e,t,r,n,i){return{queryKey:[Rs,"pool","getClassicalTargetQuery",...arguments],enabled:!!e&&!!t&&!!r&&void 0!==n&&void 0!==i,queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&void 0!==n&&void 0!==i&&["CLASSICAL","V3CLASSICAL"].includes(r)))return null;const s=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.classicalPoolABI,contractAddress:t,method:"getExpectedTarget",params:[]});return{baseTarget:ma(s.baseTarget,n),quoteTarget:ma(s.quoteTarget,i)}}))}}getTotalBaseMiningLpQuery(e,t,r,n,i){const s=!!r&&Ia.utils.getIsV3Mining(r);return{queryKey:[Rs,"pool","getTotalBaseMiningLp",...arguments],enabled:!!e&&!!t&&!!r&&void 0!==i&&(s||!!n),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&void 0!==i&&(s||n)))return null;let o;const a={DVM:"balanceOf",DSP:"totalSupply",GSP:"totalSupply",LPTOKEN:"totalSupply",CLASSICAL:"balanceOf",V3CLASSICAL:"totalSupply",DPP:null}[r];if(!a)return null;if(s)o={abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:a,params:[]};else{if(!n)return null;o={abiName:exports.ABIName.dodoMiningABI,contractAddress:n,method:a,params:[t]}}if(!o)return null;const c=yield this.contractRequests.batchCallQuery(e,o);return ma(c,i)}))}}getTotalQuoteMiningLpQuery(e,t,r,n,i){const s=!!r&&Ia.utils.getIsV3Mining(r);return{queryKey:[Rs,"pool","getTotalQuoteMiningLp",...arguments],enabled:!!e&&!!t&&!!r&&void 0!==i&&(s||!!n),queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t||!r||void 0===i)return null;let o;const a={DVM:null,DSP:null,GSP:null,LPTOKEN:null,CLASSICAL:"balanceOf",V3CLASSICAL:"totalSupply",DPP:null}[r];if(!a)return null;if(s)o={abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:a,params:[]};else{if(!n)return null;o={abiName:exports.ABIName.dodoMiningABI,contractAddress:n,method:a,params:[t]}}if(!o)return null;const c=yield this.contractRequests.batchCallQuery(e,o);return ma(c,i)}))}}getUserBaseMiningLpQuery(e,t,r,n,i,s){const o=!!r&&Ia.utils.getIsV3Mining(r);return{queryKey:[Rs,"pool","getUserBaseMiningLp",...arguments],enabled:!!e&&!!s&&!!t&&!!r&&void 0!==i&&(o||!!n),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&s&&t&&r&&void 0!==i))return null;let o;const a={DVM:"getUserLpBalance",DSP:"balanceOf",GSP:"balanceOf",LPTOKEN:"balanceOf",CLASSICAL:"getUserLpBalance",V3CLASSICAL:"balanceOf",DPP:null}[r];if(!a)return null;if(Ia.utils.getIsV3Mining(r))o={abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:a,params:[s]};else{if(!n)return null;o={abiName:exports.ABIName.dodoMiningABI,contractAddress:t,method:a,params:[n,s]}}if(!o)return null;const c=yield this.contractRequests.batchCallQuery(e,o);return ma(c,i)}))}}getUserQuoteMiningLpQuery(e,t,r,n,i,s){const o=!!r&&Ia.utils.getIsV3Mining(r);return{queryKey:[Rs,"pool","getUserQuoteMiningLp",...arguments],enabled:!!e&&!!s&&!!t&&!!r&&void 0!==i&&(o||!!n),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&s&&t&&r&&void 0!==i))return null;let o;const a={DVM:null,DSP:null,GSP:null,LPTOKEN:null,CLASSICAL:"getUserLpBalance",V3CLASSICAL:"balanceOf",DPP:null}[r];if(!a)return null;if(Ia.utils.getIsV3Mining(r))o={abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:a,params:[s]};else{if(!n)return null;o={abiName:exports.ABIName.dodoMiningABI,contractAddress:t,method:a,params:[n,s]}}if(!o)return null;const c=yield this.contractRequests.batchCallQuery(e,o);return ma(c,i)}))}}getLPFeeRateQuery(e,t,r){return{queryKey:[Rs,"pool","getLpFeeRateQuery",...arguments],enabled:!!e&&!!t&&!!r,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t||!r)return null;const n=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.dvmPoolABI,contractAddress:t,method:"_LP_FEE_RATE_",params:[]});return new o(n.toString()).div(10**18)}))}}getFeeRateQuery(t,r,n,i){return{queryKey:[Rs,"pool","getFeeRateQuery",...arguments],enabled:!!t&&!!r&&!!n,queryFn:()=>A(this,void 0,void 0,(function*(){var s;if(!t||!r||!n)return null;let a=new o(0),c=new o(0);if("CLASSICAL"===n){const{ROUTE_V1_DATA_FETCH:e}=g[t],n=yield this.contractRequests.batchCallQuery(t,{abiName:exports.ABIName.DODOV1PmmHelperABI,contractAddress:e,method:"getPairDetail",params:[r]}),i=null===(s=null==n?void 0:n.res)||void 0===s?void 0:s[0];a=new o(i.lpFeeRate.toString()).div(10**18),c=new o(i.mtFeeRate.toString()).div(10**18)}else if("AMMV2"===n)if(e.getUniswapV2Router02ContractAddressByChainId(t)&&e.getUniswapV2FactoryContractAddressByChainId(t)){const n=yield e.fetchUniswapV2PairFeeRate(t,r),i=ma(n.toString(),4);a=i.times(.8),c=i.times(.2)}else a=new o(.003),c=new o(0);else{const e=yield this.contractRequests.batchCallQuery(t,{abiName:exports.ABIName.dvmPoolABI,contractAddress:r,method:"getUserFeeRate",params:[null!=i?i:r]});a=new o(e.lpFeeRate.toString()).div(10**18),c=new o(e.mtFeeRate.toString()).div(10**18)}return{lpFeeRate:a,mtFeeRate:c}}))}}getPMMStateQuery(e,t,r,n,i){return{queryKey:[Rs,"pool","getPMMStateQuery",...arguments],enabled:!!e&&!!t&&!!r&&void 0!==n&&void 0!==i,queryFn:()=>A(this,void 0,void 0,(function*(){var s;if(!e||!t||!r||void 0===n||void 0===i)return null;if("AMMV2"===r||"AMMV3"===r)return null;let a=null;if("CLASSICAL"===r){const{ROUTE_V1_DATA_FETCH:r}=g[e],n=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.DODOV1PmmHelperABI,contractAddress:r,method:"getPairDetail",params:[t]});a=null===(s=null==n?void 0:n.res)||void 0===s?void 0:s[0]}else{if(!["DVM","DPP","LPTOKEN","DSP","GSP"].includes(r))throw new Error(`type: ${r} not supported`);a=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.dvmPoolABI,contractAddress:t,method:"getPMMStateForCall",params:[]})}if(!Array.isArray(a)||!a.length)throw new Error("queryResult is not valid.");const c=function(e,t,r){const n=Ea(e.i,18-t+r),i=Ea(e.K,18),s=Ea(e.B,t),o=Ea(e.Q,r),a=Ea(e.B0,t),c=Ea(e.B0,r),l=parseInt(e.R.toString());let u,d;return e.lpFeeRate&&(u=Ea(e.lpFeeRate,18)),e.mtFeeRate&&(d=Ea(e.mtFeeRate,18)),{q:o,b:s,k:i,i:n,b0:a,q0:c,R:l,lpFeeRate:u,mtFeeRate:d}}(a,n,i);let l;if(c.q.isEqualTo(0)&&2===c.R||c.b.isEqualTo(0)&&(1===c.R||0===c.R));else{const e=new ya,t=new ba({Q:c.q,B:c.b,K:c.k,i:c.i,B0:c.b0,Q0:c.q0,R:c.R,mtFeeRate:new o(0),lpFeeRate:new o(0)});l=e.GetMidPrice(t),l.isNaN()&&(l=void 0)}return{midPrice:l,pmmParamsBG:c,baseReserve:c.b,quoteReserve:c.q}}))}}getDPPOwnerProxyAddressQuery(e,t){return{queryKey:[...arguments],enabled:!!e&&!!t,queryFn:()=>e&&t?this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.IdodoV2,contractAddress:t,method:"_OWNER_",params:[]}):null}}getWithdrawBasePenaltyQuery(e,t,r,n){return{queryKey:[...arguments],enabled:!!(e&&t&&r&&n),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&n))return null;const i=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.dodoPair,contractAddress:t,method:"getWithdrawBasePenalty",params:[r]});return ma(i,n)}))}}}Ia.graphql=ga,Ia.utils=la,Ia.encode={createDSPPoolABI(e,t,r,n,i,s,a,c,l){return A(this,arguments,void 0,(function*(e,t,r,n,i,s,a,c,l,u=!1){const{DODO_DSP_PROXY:d}=g[e];return{to:d,data:yield Ns(exports.ABIName.dodoDspProxy,"createDODOStablePair",[t.address,r.address,n,i,new o(s).div(1e4).multipliedBy(10**18).toString(),he(new o(a).toString(),18-t.decimals+r.decimals).toString(),he(new o(c).toString(),18).toString(),u,l])}}))},createGSPPoolABI(e,t,r,n,i,s,a,c,l,u){return A(this,void 0,void 0,(function*(){const{DODO_DSP_PROXY:d}=g[e];return{to:d,data:yield Ns(exports.ABIName.dodoDspProxy,"createDODOGasSavingPair",[t,r.address,n.address,i,s,new o(a).div(1e4).multipliedBy(10**18).toString(),he(new o(c).toString(),18-r.decimals+n.decimals).toString(),he(new o(l).toString(),18).toString(),"1000",u])}}))},createDVMPoolABI(e,t,r,n,i,s,a,c,l){return A(this,arguments,void 0,(function*(e,t,r,n,i,s,a,c,l,u=!1){const{DODO_PROXY:d}=g[e];return{to:d,data:yield Ns(exports.ABIName.dodoProxyV2,"createDODOVendingMachine",[t.address,r.address,n,i,new o(s).div(1e4).multipliedBy(10**18).toString(),he(new o(a).toString(),18-t.decimals+r.decimals).toString(),he(new o(c).toString(),18).toString(),u,l])}}))},createDPPPoolABI(e,t,r,n,i,s,a,c,l){return A(this,arguments,void 0,(function*(e,t,r,n,i,s,a,c,l,u=!1){const{DODO_DPP_PROXY:d}=g[e];return{to:d,data:yield Ns(exports.ABIName.dodoDppProxy,"createDODOPrivatePool",[t.address,r.address,n,i,new o(s).div(1e4).multipliedBy(10**18).toString(),he(new o(a).toString(),18-t.decimals+r.decimals).toString(),he(new o(c).toString(),18).toString(),u,l])}}))},removeDPPPoolABI(e,t,r,n,i,s,a,c,l,u){return A(this,void 0,void 0,(function*(){const d=new o(t).div(1e4).multipliedBy(10**18).toString(),h=he(new o(r).toString(),18-l+u).toString(),f=he(new o(n).toString(),18).toString(),p=yield Ns(exports.ABIName.dodoDPPAdmin,"reset",["0x0000000000000000000000000000000000000000",d,h,f,i,s,a,c]);return{to:e,data:p}}))},resetDPPPoolABI(e,t,r,n,i,s,a,c,l,u,d,h,f,p,m){return A(this,void 0,void 0,(function*(){const{DODO_DPP_PROXY:y}=g[e],A=new o(r).div(1e4).multipliedBy(10**18).toString(),v=he(new o(n).toString(),18-f+p).toString(),b=he(new o(i).toString(),18).toString();return{to:y,data:yield Ns(exports.ABIName.dodoDppProxy,"resetDODOPrivatePool",[t,[A,v,b],[s,a,c,l],h,u,d,m])}}))},addDSPLiquidityABI(e,t,r,n,i,s,o,a){return A(this,void 0,void 0,(function*(){if(!i||"0"===i)throw new Error("Invalid baseMinAmount");const{DODO_DSP_PROXY:c}=g[e];return{to:c,data:yield Ns(exports.ABIName.dodoDspProxy,"addDSPLiquidity",[t,r,n,i,s,o,a])}}))},addDVMLiquidityABI(e,t,r,n,i,s,o,a){return A(this,void 0,void 0,(function*(){if(!i||"0"===i)throw new Error("Invalid baseMinAmount");const{DODO_PROXY:c}=g[e];return{to:c,data:yield Ns(exports.ABIName.dodoProxyV2,"addDVMLiquidity",[t,r,n,i,s,o,a])}}))},removeDSPLiquidityABI(e,t,r,n,i,s,o,a){return A(this,void 0,void 0,(function*(){if(28!=e&&69!=e){const{CALLEE_HELPER:t}=g[e];o&&(r=t)}const c=yield Ns(exports.ABIName.dodoDSP,"sellShares",[n,r,i,s,o?"0x00":"0x",a]);return{to:t,data:c}}))},removeDVMLiquidityABI(e,t,r,n,i,s,o,a){return A(this,void 0,void 0,(function*(){if(28!=e&&69!=e){const{CALLEE_HELPER:t}=g[e];o&&(r=t)}const c=yield Ns(exports.ABIName.dodoDVM,"sellShares",[n,r,i,s,o?"0x00":"0x",a]);return{to:t,data:c}}))},addClassicalLiquidityABI(e,t,r,n,i,s,o,a){return A(this,void 0,void 0,(function*(){const{DODO_PROXY:c}=g[e];return{to:c,data:yield Ns(exports.ABIName.dodoProxyV2,"addLiquidityToV1",[t,r,n,i,s,o,a])}}))},removeClassicalBaseABI(e,t,r,n){return A(this,void 0,void 0,(function*(){const{DODO_V1_PAIR_PROXY:i}=g[e];let s="",o="";return i?(o=i,s=yield Ns(exports.ABIName.dodoV1PairProxy,"withdrawBase",[t,r,n])):(o=t,s=yield Ns(exports.ABIName.dodoPair,"withdrawBase",[r])),{to:o,data:s}}))},removeMaxClassicalBaseABI(e,t,r){return A(this,void 0,void 0,(function*(){const{DODO_V1_PAIR_PROXY:n}=g[e];let i="",s="";return n?(s=n,i=yield Ns(exports.ABIName.dodoV1PairProxy,"withdrawAllBase",[t,r])):(s=t,i=yield Ns(exports.ABIName.dodoPair,"withdrawAllBase",[])),{to:s,data:i}}))},removeClassicalQuoteABI(e,t,r,n){return A(this,void 0,void 0,(function*(){const{DODO_V1_PAIR_PROXY:i}=g[e];let s="",o="";return i?(o=i,s=yield Ns(exports.ABIName.dodoV1PairProxy,"withdrawQuote",[t,r,n])):(o=t,s=yield Ns(exports.ABIName.dodoPair,"withdrawQuote",[r])),{to:o,data:s}}))},removeMaxClassicalQuoteABI(e,t,r){return A(this,void 0,void 0,(function*(){const{DODO_V1_PAIR_PROXY:n}=g[e];let i="",s="";return n?(s=n,i=yield Ns(exports.ABIName.dodoV1PairProxy,"withdrawAllQuote",[t,r])):(s=t,i=yield Ns(exports.ABIName.dodoPair,"withdrawAllQuote",[])),{to:s,data:i}}))}};const Ta=(e,t,r,n,i)=>{const s=n.multipliedBy(t.minus(r)),a=e.multipliedBy(e).div(t).div(r).multipliedBy(i);return s.multipliedBy(new o.BigNumber(1).minus(i).plus(a))},Ba=(e,t,r,n,i)=>{let s=new o.BigNumber(1).minus(i).multipliedBy(t);s=s.minus(i.multipliedBy(e).multipliedBy(e).div(t)),s=s.plus(r.multipliedBy(n));let a=new o.BigNumber(4).multipliedBy(new o.BigNumber(1).minus(i)).multipliedBy(i).multipliedBy(e).multipliedBy(e);a=s.multipliedBy(s).plus(a).sqrt();const c=new o.BigNumber(2).multipliedBy(new o.BigNumber(1).minus(i));return s.plus(a).div(c)},_a=(e,t,r)=>{let n=new o.BigNumber(4).multipliedBy(t).multipliedBy(r).div(e);n=new o.BigNumber(1).plus(n).sqrt();const i=n.minus(new o.BigNumber(1)).div(t.multipliedBy(new o.BigNumber(2)));return e.multipliedBy(new o.BigNumber(1).plus(i))};o.BigNumber.config({EXPONENTIAL_AT:1e3,DECIMAL_PLACES:80});class Oa{getMidPrice(){if(0===this.RStatus)return this.i;const e=this.getExpectedTarget();if(1===this.RStatus){let t=e.base.div(this.B);return t=t.multipliedBy(t).multipliedBy(this.k).minus(this.k).plus(new o.BigNumber(1)),this.i.multipliedBy(t)}if(2===this.RStatus){let t=e.quote.div(this.Q);return t=t.multipliedBy(t).multipliedBy(this.k).minus(this.k).plus(new o.BigNumber(1)),this.i.div(t)}return this.i}getQuoteByMidPrice(e){if(1!==this.RStatus)throw new Error("No support is needed at the moment");const t=e.div(this.k.times(this.i)).plus(1).minus(new o.BigNumber(1).div(this.k)).times(this.B).times(this.B).sqrt();return this.i.times(this.k.div(this.B).times(t).times(t).plus(new o.BigNumber(1).minus(this.k.times(2)).times(t)).minus(new o.BigNumber(1).minus(this.k).times(this.B)))}getExpectedTarget(){let e,t;return e=this.B0,t=this.Q0,0===this.RStatus&&(e=this.B0,t=this.Q0),1===this.RStatus&&(t=this.Q0,e=_a(this.B,this.k,this.Q.minus(this.Q0).div(this.i))),2===this.RStatus&&(e=this.B0,t=_a(this.Q,this.k,this.B.minus(this.B0).multipliedBy(this.i))),{base:e,quote:t}}queryBuyBase(e){const t=e.multipliedBy(this.mtFeeRate),r=e.multipliedBy(this.lpFeeRate);e=e.plus(t).plus(r);const n=this.getExpectedTarget();let i=new o.BigNumber(0);if(0===this.RStatus)i=this.ROneBuyBase(e,n.base);else if(1===this.RStatus)i=this.RAboveBuyBase(e,n.base);else{const t=this.B.minus(n.base),r=n.quote.minus(this.Q);i=e.isLessThanOrEqualTo(t)?this.RBelowBuyBase(e,n.quote):r.plus(this.ROneBuyBase(e.minus(t),n.base))}return i}querySellBase(e){let t;const r=this.getExpectedTarget();if(0===this.RStatus)t=this.ROneSellBase(e,r.quote);else if(2===this.RStatus)t=this.RBelowSellBase(e,r.quote);else{const n=r.base.minus(this.B),i=this.Q.minus(r.quote);t=e.isLessThanOrEqualTo(n)?this.RAboveSellBase(e,r.base):i.plus(this.ROneSellBase(e.minus(n),r.quote))}const n=t.multipliedBy(this.mtFeeRate),i=t.multipliedBy(this.lpFeeRate);return t.minus(n).minus(i)}queryBuyQuote(e){const t=e.multipliedBy(this.mtFeeRate),r=e.multipliedBy(this.lpFeeRate);e=e.plus(t).plus(r);const n=this.getExpectedTarget();if(0===this.RStatus)return this.ROneBuyQuote(e,n.quote);if(2===this.RStatus)return this.RBelowBuyQuote(e,n.quote);const i=n.base.minus(this.B),s=this.Q.minus(n.quote);return e.isLessThanOrEqualTo(s)?this.RAboveBuyQuote(e,n.base):i.plus(this.ROneBuyQuote(e.minus(s),n.quote))}querySellQuote(e){let t;const r=this.getExpectedTarget();if(0===this.RStatus)t=this.ROneSellQuote(e,r.base);else if(1===this.RStatus)t=this.RAboveSellQuote(e,r.base);else{const n=this.B.minus(r.base),i=r.quote.minus(this.Q);t=e.isLessThanOrEqualTo(i)?this.RBelowSellQuote(e,r.quote):n.plus(this.ROneSellQuote(e.minus(i),r.base))}const n=t.multipliedBy(this.mtFeeRate),i=t.multipliedBy(this.lpFeeRate);return t.minus(n).minus(i)}getPriceDepth(e){const t=this.getExpectedTarget();let r,n;if(e.gt(this.i)){const i=e.div(this.i);r=t.base.div(i.minus(1).plus(this.k).div(this.k).sqrt()),n=this.ROneBuyBase(t.base.minus(r),t.base).plus(t.quote)}else{const i=this.i.div(e);n=t.quote.div(i.minus(1).plus(this.k).div(this.k).sqrt()),r=this.ROneBuyQuote(t.quote.minus(n),t.quote).plus(t.base)}return{baseAmount:this.B.minus(r).abs(),quoteAmount:this.Q.minus(n).abs(),isBuy:this.B.gt(r)}}getWithdrawBasePenalty(e){if(1===this.RStatus){const t=_a(this.B,this.k,this.Q.minus(this.Q0).div(this.i)),r=_a(this.B.minus(e),this.k,this.Q.minus(this.Q0).div(this.i));return t.minus(r).minus(e)}return new o.BigNumber(0)}getWithdrawQuotePenalty(e){if(2===this.RStatus){const t=_a(this.Q,this.k,this.B.minus(this.B0).multipliedBy(this.i)),r=_a(this.Q.minus(e),this.k,this.B.minus(this.B0).multipliedBy(this.i));return t.minus(r).minus(e)}return new o.BigNumber(0)}ROneBuyBase(e,t){return e.isGreaterThanOrEqualTo(t),Ta(t,t,t.minus(e),this.i,this.k)}ROneBuyQuote(e,t){return e.isGreaterThanOrEqualTo(t),Ta(t,t,t.minus(e),new o.BigNumber(1).div(this.i),this.k)}ROneSellBase(e,t){const r=Ba(t,t,this.i,e.negated(),this.k);return t.minus(r)}ROneSellQuote(e,t){const r=Ba(t,t,new o.BigNumber(1).div(this.i),e.negated(),this.k);return t.minus(r)}RAboveBuyBase(e,t){if(e.isGreaterThanOrEqualTo(this.B))throw new Error("RAbove Buy Base Amount Exceed Limitation");return Ta(t,this.B,this.B.minus(e),this.i,this.k)}RAboveSellBase(e,t){if(e.plus(this.B).isGreaterThan(t))throw new Error("RAbove Sell Base Amount Exceed Limitation");return Ta(t,this.B.plus(e),this.B,this.i,this.k)}RAboveBuyQuote(e,t){return Ba(t,this.B,new o.BigNumber(1).div(this.i),e,this.k).minus(this.B)}RAboveSellQuote(e,t){const r=Ba(t,this.B,new o.BigNumber(1).div(this.i),e.negated(),this.k);return this.B.minus(r)}RBelowBuyQuote(e,t){if(e.isGreaterThanOrEqualTo(this.Q))throw new Error("RBelow Buy Quote Amount Exceed Limitation");return Ta(t,this.Q,this.Q.minus(e),new o.BigNumber(1).div(this.i),this.k)}RBelowSellQuote(e,t){if(e.plus(this.Q).isGreaterThan(t))throw new Error("RBelow Sell Quote Amount Exceed Limitation");return Ta(t,this.Q.plus(e),this.Q,new o.BigNumber(1).div(this.i),this.k)}RBelowBuyBase(e,t){return Ba(t,this.Q,this.i,e,this.k).minus(this.Q)}RBelowSellBase(e,t){const r=Ba(t,this.Q,this.i,e.negated(),this.k);return this.Q.minus(r)}}function Da(e){return e&&/^#[a-f\d]{3,6}\s*[0-9]{1,3}%/i.test(e)?(r=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})\s*([0-9]{1,3})*%?$/i.exec(e),(t=r?{r:parseInt(r[1],16),g:parseInt(r[2],16),b:parseInt(r[3],16),a:r[4]?Number(r[4])/100:1}:void 0)?`rgba(${t.r}, ${t.g}, ${t.b}, ${t.a})`:t):e;var t,r}var Ca;!function(e){e.All="all"}(Ca||(Ca={}));const Na={fetchMiningList:ha("\n query FetchMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n baseApy\n baseLpToken {\n decimals\n address: id\n symbol\n }\n baseToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n address: id\n symbol\n }\n quoteToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n "),fetchMiningListV1:ha("\n query MiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n "),fetchMyCreatedMiningList:ha("\n query MyCreatedMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n participantsNum\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ")};var ka;exports.MiningStatusE=void 0,(ka=exports.MiningStatusE||(exports.MiningStatusE={}))[ka.upcoming=0]="upcoming",ka[ka.active=1]="active",ka[ka.ended=2]="ended";const xa={getMiningStatusByTimestamp:({startTime:e,endTime:t,rewardTokenInfoList:r})=>{let n,i;for(const s of r){const r=s.startTime||e,a=s.endTime||t;r&&(n=n?o.min(r,n):o.isBigNumber(r)?r:new o(r)),a&&(i=i?o.max(a,i):o.isBigNumber(a)?a:new o(a))}const s=new o(Math.floor(Date.now()/1e3));let a=exports.MiningStatusE.ended;return n&&s.lt(n)&&(a=exports.MiningStatusE.upcoming),n&&i&&s.gte(n)&&s.lte(i)&&(a=exports.MiningStatusE.active),{status:a,firstStartTime:n,lastEndTime:i,currentTime:s}}},Ra=[{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"withdraw",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"claimAllRewards",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"stakeToken",type:"address"},{internalType:"bool",name:"isLpToken",type:"bool"},{internalType:"uint256",name:"platform",type:"uint256"},{internalType:"address[]",name:"rewardTokens",type:"address[]"},{internalType:"uint256[]",name:"rewardPerBlock",type:"uint256[]"},{internalType:"uint256[]",name:"startBlock",type:"uint256[]"},{internalType:"uint256[]",name:"endBlock",type:"uint256[]"}],name:"createDODOMineV3",outputs:[{internalType:"address",name:"newMineV3",type:"address"}],stateMutability:"nonpayable",type:"function"}],Sa=[{inputs:[{internalType:"address",name:"stakeToken",type:"address"},{internalType:"bool",name:"isLpToken",type:"bool"},{internalType:"address[]",name:"rewardTokens",type:"address[]"},{internalType:"uint256[]",name:"rewardPerBlock",type:"uint256[]"},{internalType:"uint256[]",name:"startBlock",type:"uint256[]"},{internalType:"uint256[]",name:"endBlock",type:"uint256[]"}],name:"createDODOMineV3",outputs:[{internalType:"address",name:"newMineV3",type:"address"}],stateMutability:"nonpayable",type:"function"}];class Fa{constructor(e){if(e.contractRequests)this.contractRequests=e.contractRequests;else{if(!e.contractRequests)throw new Error("MiningApi does not initialize the contractRequests");this.contractRequests=new Ss(e.contractRequestsConfig)}}getPendingRewardQuery(e,t,r,n,i,s){return{queryKey:[Rs,"mining","getPendingRewardQuery",...arguments],enabled:!!(e&&t&&r&&n&&void 0!==i),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&n&&void 0!==i))return null;let o;if("3"===s)o=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:"getPendingRewardByToken",params:[r,n]});else o=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.dodoMiningABI,contractAddress:t,method:"getPendingReward",params:[n,r]});return ma(o,i)}))}}getLpStakedBalance(e,t,r,n,i,s){return{queryKey:[Rs,"mining","getLpStakedBalance",...arguments],enabled:!(!e||!t||!r||void 0===i||"3"!==s&&!n),queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&void 0!==i)||"3"!==s&&!n)return null;let o;if("3"===s)o=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:"balanceOf",params:[r]});else o=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.dodoMiningABI,contractAddress:t,method:"getUserLpBalance",params:[r,n]});return ma(o,i)}))}}getRewardTokenInfos(e,t,r,n){return{queryKey:[Rs,"mining","getRewardTokenInfos",...arguments],enabled:null!=e&&null!=t&&null!=r&&!n,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;const n=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.v3MiningABI,contractAddress:t,method:"rewardTokenInfos",params:[r]});if(!n)return null;const{rewardVault:i,rewardPerBlock:s,workThroughReward:o,lastFlagBlock:a,startBlock:c,endBlock:l}=n;return{rewardVault:i,rewardPerBlock:ma(s,0),workThroughReward:o?ma(o,0):void 0,lastFlagBlock:a?ma(a,0):void 0,startBlock:ma(c,0),endBlock:ma(l,0)}}))}}}Fa.utils=xa,Fa.graphql=Na,Fa.encode={depositMining(e,t,r){return A(this,void 0,void 0,(function*(){const n=ks(Ra,"deposit",[he(t.dp(r,o.ROUND_FLOOR).toString(),r).toString()]);return{to:e,data:n}}))},withdrawMining(e,t,r){return A(this,void 0,void 0,(function*(){const n=ks(Ra,"withdraw",[he(t.dp(r,o.ROUND_FLOOR).toString(),r).toString()]);return{to:e,data:n}}))},claimAllMining(e){return A(this,void 0,void 0,(function*(){const t=ks(Ra,"claimAllRewards",[]);return{to:e,data:t}}))},createDODOMineV3(e,t,r,n,i,s,o,a){return A(this,void 0,void 0,(function*(){const{DODO_MINEV3_PROXY:c}=g[e];if(!c)return null;let l;return l=[1,10,288,66,128,137,1285,42161,1313161554,43114].includes(e)?ks(Sa,"createDODOMineV3",[t,r,i,s,o,a]):ks(Ra,"createDODOMineV3",[t,r,n,i,s,o,a]),{to:c,data:l}}))}};const La={fetchErc20SwapCrossList:ha("\n query FetchErc20SwapCrossChainList($where: Erc20listV2Filter) {\n erc20_swapCrossChainList(where: $where) {\n name\n address\n symbol\n decimals\n slippage\n chainId\n logoImg\n tokenlists {\n name\n status\n }\n domains {\n name\n }\n funcLabels {\n key\n }\n attributeLabels {\n key\n }\n }\n }\n "),fetchErc20ForecastSlippage:ha("\n query FetchErc20ForecastSlippage($where: Erc20_extenderc20ExtendV2Filter) {\n erc20_extend_erc20ExtendV2(where: $where) {\n forecastSlippageList {\n forecastSlippage\n forecastValue\n confidenceRatio\n confidenceIntervalUpper\n confidenceIntervalLower\n }\n }\n }\n ")},qa=new o(2).pow(256).minus(1);function Ma(e){return e?e.replaceAll("\0",""):e}class Ua{constructor(e){if(e.contractRequests)this.contractRequests=e.contractRequests;else{if(!e.contractRequests)throw new Error("TokenApi does not initialize the contractRequests");this.contractRequests=new Ss(e.contractRequestsConfig)}this.restApiRequest=(null==e?void 0:e.restApiRequest)||new ca}getTokenDecimals(e,t){return{queryKey:["token","getTokenDecimals",null!=e?e:"",null==t?void 0:t.toLocaleLowerCase()],enabled:!!e&&!!t,queryFn:()=>A(this,void 0,void 0,(function*(){if(!e||!t)return null;return yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.erc20ABI,contractAddress:t,method:"decimals",params:[]})}))}}getFiatPriceBatch(e,t){return this.restApiRequest.postJson("/frontend-v2-price-api/current/batch",{networks:e.map((e=>y[e.chainId])),addresses:e.map((e=>e.address)),symbols:e.map((e=>e.symbol)),isCache:!0},void 0,{headers:{"pass-key":t}})}getFetchTokenQuery(e,t,r,n){let i=n,s="";if(void 0!==e){const t=g[e];i||(i=t.DODO_APPROVE),s=t.ERC20_HELPER}return{queryKey:[Rs,"token","getFetchTokenQuery",null!=e?e:"",null==r?void 0:r.toLocaleLowerCase(),null==i?void 0:i.toLocaleLowerCase(),null==t?void 0:t.toLocaleLowerCase()],enabled:!!e&&!!t&&!!r,queryFn:()=>A(this,void 0,void 0,(function*(){if(!(e&&t&&r&&i))return null;const a=yield(e=>A(void 0,void 0,void 0,(function*(){let t=[];if(!t.length)switch(e){case exports.ChainId.MAINNET:t=(yield Promise.resolve().then((function(){return require("./eth-BTzl-wbR.cjs")}))).default;break;case exports.ChainId.BSC:t=(yield Promise.resolve().then((function(){return require("./bsc-DPJpw0CZ.cjs")}))).default}return t})))(e);if(a.includes(t))return null;const c=m[e];if(Ua.utils.isSameAddress(t,c.address)){const t=yield this.contractRequests.getETHBalance(e,r);return{symbol:c.symbol,address:c.address,name:c.name,decimals:c.decimals,balance:t,allowance:qa,account:r,spender:n,chainId:e}}const l=yield this.contractRequests.batchCallQuery(e,{abiName:exports.ABIName.erc20Helper,contractAddress:s,method:"isERC20",params:[t,r,i]}),{name:u,isOk:d}=l;if(d&&u){const r=parseInt(l.decimals,10),i=new o(10).pow(r),s=new o(l.allownance.toString()).div(i),a=new o(l.balance.toString()).div(i);return{address:t,decimals:r,symbol:Ma(l.symbol),name:Ma(u),balance:a,spender:n,allowance:s,chainId:e}}return null}))}}}Ua.graphql=La,Ua.utils={isSameAddress:(e,t)=>{const r=e.length,n=t.length;if(0===r||0===n)return!1;if(r===n)return e.toLowerCase()===t.toLowerCase();const i=e.substring(2,r).toLowerCase(),s=t.substring(2,r).toLowerCase();return i.length>s.length?i.endsWith(s):s.endsWith(i)}},Ua.encode={approveABI:(e,t)=>Ns(exports.ABIName.erc20ABI,"approve",[e,t.toFixed()]),transferEncodeABI(e,t){return A(this,void 0,void 0,(function*(){return yield Ns(exports.ABIName.erc20ABI,"transfer",[e,t])}))}};const Va={fetchUserSwapOrderHistories:ha("\n query FetchUserSwapOrderHistories($where: User_swapswapFilter) {\n user_swap_orderHistories(where: $where) {\n count\n page\n list {\n chainId\n createdAt\n fromAmount\n fromTokenDecimals\n fromTokenPrice\n fromTokenSymbol\n fromTokenAddress\n fromTokenLogoImg\n hash\n status\n toAmount\n toTokenDecimals\n toTokenPrice\n toTokenSymbol\n toTokenAddress\n toTokenLogoImg\n minAmount\n nonce\n extra\n user\n }\n }\n }\n ")};class ja{constructor(){}}ja.graphql=Va;const Qa={fetchNoticeCenterTransactionList:ha("\n query FetchNoticeCenterTransactionList(\n $where: Notice_centertransactionListFilter\n ) {\n notice_center_transactionList(where: $where) {\n list {\n chainId\n createTime\n extend\n from\n id\n key\n type\n }\n count\n limit\n page\n }\n }\n "),fetchLiquidityLpPartnerRewards:ha("\n query FetchLiquidityLpPartnerRewards(\n $where: LiquidityLpPartnerRewardsInput\n ) {\n liquidity_getLpPartnerRewards(where: $where) {\n partnerInfos {\n partner\n logo\n introduction\n link\n theme\n sort\n platform\n extra\n }\n partnerRewards {\n chainId\n pool\n partner\n reward\n type\n }\n }\n }\n ")};class Ha{constructor(){}}Ha.graphql=Qa,Object.defineProperty(exports,"setContractRequests",{enumerable:!0,get:function(){return e.setContractRequests}}),exports.AMMV3Api=pa,exports.CONTRACT_QUERY_KEY=Rs,exports.ContractRequests=Ss,exports.GraphQLRequests=class{constructor(e){const t=Object.assign(Object.assign({},oa),e);this.url=t.url,this.getHeaders=t.getHeaders;const r=new ta(this.url,{fetch:t.fetch,requestMiddleware:e=>{const t=new URL(e.url);return e.operationName&&t.searchParams.append("opname",e.operationName),Object.assign(Object.assign({},e),{url:t.toString()})}});this.client=r,this.setHeaders()}setHeaders(){return A(this,void 0,void 0,(function*(){var e;const t=yield null===(e=this.getHeaders)||void 0===e?void 0:e.call(this);t&&this.client.setHeaders(t)}))}getData(e,t){return A(this,void 0,void 0,(function*(){yield this.setHeaders();return this.client.request(e,t)}))}getQuery(e,...[t]){return{queryKey:["graphql","getQuery",e,t],queryFn:()=>A(this,void 0,void 0,(function*(){return yield this.getData(e.toString(),t)}))}}getInfiniteQuery(e,t,...[r]){return{queryKey:["graphql","getInfiniteQuery",t,e,r],queryFn:n=>A(this,[n],void 0,(function*({pageParam:n}){return yield this.getData(e.toString(),Object.assign(Object.assign({},r),{where:Object.assign(Object.assign({},null==r?void 0:r.where),{[t]:n})}))}))}}},exports.MiningApi=Fa,exports.PMMHelper=ya,exports.PMMModel=Oa,exports.PMMState=ba,exports.PoolApi=Ia,exports.RestApiRequests=ca,exports.SwapApi=ja,exports.SwapWidgetApi=class{constructor(e){this.restApiRequest=(null==e?void 0:e.restApiRequest)||new ca}getWidgetTokenListConfig(e,t){return this.restApiRequest.getJson("/config-center/user/tokenlist/v2",{project:e,apikey:t})}convertConfigToSwapWidgetProps(e){var t,r,n,i,s,o,a,c;const l=[];let u,d=!0,h=!0;if(e.chains.forEach((e=>{e.fromTokens&&(d=!1),e.toTokens&&(h=!1)})),e.chains.forEach((({chainId:e,fromTokens:t,toTokens:r,tokens:n})=>{if(null==n?void 0:n.length){const i=Number(e);[{isAllChain:d,selectTokens:t,side:"from"},{isAllChain:h,selectTokens:r,side:"to"}].forEach((({isAllChain:e,selectTokens:t,side:r})=>{(e||t)&&((null==t?void 0:t.length)?n.forEach((e=>{var n;t.some((t=>t.toLocaleLowerCase()===e.address.toLocaleLowerCase()))&&l.push(Object.assign(Object.assign({logoURI:e.logoImg},e),{chainId:null!==(n=e.chainId)&&void 0!==n?n:i,side:r}))})):n.forEach((e=>{var t;l.push(Object.assign(Object.assign({logoURI:e.logoImg},e),{chainId:null!==(t=e.chainId)&&void 0!==t?t:i,side:r}))})))}))}})),(null==e?void 0:e.style)&&Object.keys(e.style).length){const r=null===(t=null==e?void 0:e.basis)||void 0===t?void 0:t.fontSizeModify;u={palette:{mode:"light",primary:{main:Da(e.style.primary)},secondary:{main:Da(e.style.secondary),contrastText:Da(e.style.secondaryContrast)},error:{main:Da(e.style.error),contrastText:Da(e.style.errorContrast)},warning:{main:Da(e.style.warning)},success:{main:Da(e.style.success)},background:{paper:Da(e.style.background1),paperContrast:Da(e.style.background2),backdrop:Da(e.style.mask),input:Da(e.style.input),tag:Da(e.style.card)},text:{primary:Da(e.style.text1),secondary:Da(e.style.text2),disabled:Da(e.style.textDisable),placeholder:Da(e.style.textPlaceholder)},border:{main:Da(e.style.borderSolid),light:Da(e.style.borderDash),disabled:Da(e.style.borderSolid)}},typography:r?{fontSize:16+r,ht:{fontSize:36+r},h2:{fontSize:32+r},h3:{fontSize:28+r},caption:{fontSize:20+r},h5:{fontSize:18+r},body1:{fontSize:16+r},body2:{fontSize:14+r},h6:{fontSize:12+r},button:{fontSize:16+r}}:void 0}}const f=e.rebateAddress,p=e.rebateRatio,m=e.swapSlippage,g=e.crossChainSlippage,y=null===(r=e.basis)||void 0===r?void 0:r.width,A=null===(n=e.basis)||void 0===n?void 0:n.height,v=null===(i=e.basis)||void 0===i?void 0:i.locale,b=null===(o=null===(s=e.basis)||void 0===s?void 0:s.crossChainSupport)||void 0===o||o,E=null===(a=e.basis)||void 0===a?void 0:a.rpcMap,w=null===(c=e.basis)||void 0===c?void 0:c.noPowerBy;return{tokenList:l,theme:u,rebateAddress:f,rebateRatio:p,swapSlippage:m,bridgeSlippage:g,width:y,height:A,locale:v,crossChain:b,jsonRpcUrlMap:E,noPowerBy:w}}getConfigSwapWidgetProps(e,t){return A(this,void 0,void 0,(function*(){var r;const{result:n}=yield this.getWidgetTokenListConfig(e,t),i=n.data;if(!i)throw new Error(null!==(r=n.msg)&&void 0!==r?r:"Error");return{swapWidgetProps:this.convertConfigToSwapWidgetProps(i),configTokenList:i}}))}},exports.SystemApi=Ha,exports.TokenApi=Ua,exports.basicTokenMap=m,exports.contractConfig=g,exports.etherTokenAddress=f,exports.getPmmModel=function({q:e,b:t,k:r,i:n,q0:i,b0:s,R:a}){const c=new Oa;return c.B0=new o(s),c.Q0=new o(i),c.B=new o(t),c.Q=new o(e),c.i=new o(n),c.k=new o(r),c.RStatus=a,c.mtFeeRate=new o(0),c.lpFeeRate=new o(0),c},exports.platformIdMap=y,exports.solveQuadraticFunctionForTarget=(e,t,r,n)=>{if(e.eq(0))return new o(0);if(n.eq(0))return e.plus(r.multipliedBy(t));const i=n.multipliedBy(4).multipliedBy(r).multipliedBy(t).div(e).plus(1).sqrt().minus(1).div(n.multipliedBy(2)).plus(1);return e.multipliedBy(i)};
1
+ "use strict";var e=require("buffer"),n=require("bn.js"),t=require("bs58"),r=require("borsh"),i=require("@solana/buffer-layout"),o=require("bigint-buffer");require("util");var s=require("http");require("https"),require("jayson/lib/client/browser");var a=require("stream"),c=require("url"),u=require("whatwg-url");require("zlib"),require("rpc-websockets");var l=require("cross-fetch"),d=require("lodash"),h=require("qs");function p(e){var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var f=p(i),m=p(l);function y(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function g(e,...n){if(!((t=e)instanceof Uint8Array||ArrayBuffer.isView(t)&&"Uint8Array"===t.constructor.name))throw new Error("Uint8Array expected");var t;if(n.length>0&&!n.includes(e.length))throw new Error("Uint8Array expected of length "+n+", got length="+e.length)}function b(e,n=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(n&&e.finished)throw new Error("Hash#digest() has already been called")}const w="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,v=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),T=(e,n)=>e<<32-n|e>>>n;
2
+ /*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function E(e){if("string"!=typeof e)throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))}function k(e){return"string"==typeof e&&(e=E(e)),g(e),e}function x(...e){let n=0;for(let t=0;t<e.length;t++){const r=e[t];g(r),n+=r.length}const t=new Uint8Array(n);for(let n=0,r=0;n<e.length;n++){const i=e[n];t.set(i,r),r+=i.length}return t}class I{clone(){return this._cloneInto()}}function A(e){const n=n=>e().update(k(n)).digest(),t=e();return n.outputLen=t.outputLen,n.blockLen=t.blockLen,n.create=()=>e(),n}function S(e=32){if(w&&"function"==typeof w.getRandomValues)return w.getRandomValues(new Uint8Array(e));if(w&&"function"==typeof w.randomBytes)return w.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}const B=(e,n,t)=>e&n^e&t^n&t;class O extends I{constructor(e,n,t,r){super(),this.blockLen=e,this.outputLen=n,this.padOffset=t,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=v(this.buffer)}update(e){b(this);const{view:n,buffer:t,blockLen:r}=this,i=(e=k(e)).length;for(let o=0;o<i;){const s=Math.min(r-this.pos,i-o);if(s!==r)t.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===r&&(this.process(n,0),this.pos=0);else{const n=v(e);for(;r<=i-o;o+=r)this.process(n,o)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){b(this),function(e,n){g(e);const t=n.outputLen;if(e.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}(e,this),this.finished=!0;const{buffer:n,view:t,blockLen:r,isLE:i}=this;let{pos:o}=this;n[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>r-o&&(this.process(t,0),o=0);for(let e=o;e<r;e++)n[e]=0;!function(e,n,t,r){if("function"==typeof e.setBigUint64)return e.setBigUint64(n,t,r);const i=BigInt(32),o=BigInt(4294967295),s=Number(t>>i&o),a=Number(t&o),c=r?4:0,u=r?0:4;e.setUint32(n+c,s,r),e.setUint32(n+u,a,r)}(t,r-8,BigInt(8*this.length),i),this.process(t,0);const s=v(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=a/4,u=this.get();if(c>u.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;e<c;e++)s.setUint32(4*e,u[e],i)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const t=e.slice(0,n);return this.destroy(),t}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:t,length:r,finished:i,destroyed:o,pos:s}=this;return e.length=r,e.pos=s,e.finished=i,e.destroyed=o,r%n&&e.buffer.set(t),e}}const _=BigInt(2**32-1),N=BigInt(32);function L(e,n=!1){return n?{h:Number(e&_),l:Number(e>>N&_)}:{h:0|Number(e>>N&_),l:0|Number(e&_)}}const q={fromBig:L,split:function(e,n=!1){let t=new Uint32Array(e.length),r=new Uint32Array(e.length);for(let i=0;i<e.length;i++){const{h:o,l:s}=L(e[i],n);[t[i],r[i]]=[o,s]}return[t,r]},toBig:(e,n)=>BigInt(e>>>0)<<N|BigInt(n>>>0),shrSH:(e,n,t)=>e>>>t,shrSL:(e,n,t)=>e<<32-t|n>>>t,rotrSH:(e,n,t)=>e>>>t|n<<32-t,rotrSL:(e,n,t)=>e<<32-t|n>>>t,rotrBH:(e,n,t)=>e<<64-t|n>>>t-32,rotrBL:(e,n,t)=>e>>>t-32|n<<64-t,rotr32H:(e,n)=>n,rotr32L:(e,n)=>e,rotlSH:(e,n,t)=>e<<t|n>>>32-t,rotlSL:(e,n,t)=>n<<t|e>>>32-t,rotlBH:(e,n,t)=>n<<t-32|e>>>64-t,rotlBL:(e,n,t)=>e<<t-32|n>>>64-t,add:function(e,n,t,r){const i=(n>>>0)+(r>>>0);return{h:e+t+(i/2**32|0)|0,l:0|i}},add3L:(e,n,t)=>(e>>>0)+(n>>>0)+(t>>>0),add3H:(e,n,t,r)=>n+t+r+(e/2**32|0)|0,add4L:(e,n,t,r)=>(e>>>0)+(n>>>0)+(t>>>0)+(r>>>0),add4H:(e,n,t,r,i)=>n+t+r+i+(e/2**32|0)|0,add5H:(e,n,t,r,i,o)=>n+t+r+i+o+(e/2**32|0)|0,add5L:(e,n,t,r,i)=>(e>>>0)+(n>>>0)+(t>>>0)+(r>>>0)+(i>>>0)},[D,P]=(()=>q.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e=>BigInt(e)))))(),R=new Uint32Array(80),C=new Uint32Array(80);class $ extends O{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:n,Bh:t,Bl:r,Ch:i,Cl:o,Dh:s,Dl:a,Eh:c,El:u,Fh:l,Fl:d,Gh:h,Gl:p,Hh:f,Hl:m}=this;return[e,n,t,r,i,o,s,a,c,u,l,d,h,p,f,m]}set(e,n,t,r,i,o,s,a,c,u,l,d,h,p,f,m){this.Ah=0|e,this.Al=0|n,this.Bh=0|t,this.Bl=0|r,this.Ch=0|i,this.Cl=0|o,this.Dh=0|s,this.Dl=0|a,this.Eh=0|c,this.El=0|u,this.Fh=0|l,this.Fl=0|d,this.Gh=0|h,this.Gl=0|p,this.Hh=0|f,this.Hl=0|m}process(e,n){for(let t=0;t<16;t++,n+=4)R[t]=e.getUint32(n),C[t]=e.getUint32(n+=4);for(let e=16;e<80;e++){const n=0|R[e-15],t=0|C[e-15],r=q.rotrSH(n,t,1)^q.rotrSH(n,t,8)^q.shrSH(n,t,7),i=q.rotrSL(n,t,1)^q.rotrSL(n,t,8)^q.shrSL(n,t,7),o=0|R[e-2],s=0|C[e-2],a=q.rotrSH(o,s,19)^q.rotrBH(o,s,61)^q.shrSH(o,s,6),c=q.rotrSL(o,s,19)^q.rotrBL(o,s,61)^q.shrSL(o,s,6),u=q.add4L(i,c,C[e-7],C[e-16]),l=q.add4H(u,r,a,R[e-7],R[e-16]);R[e]=0|l,C[e]=0|u}let{Ah:t,Al:r,Bh:i,Bl:o,Ch:s,Cl:a,Dh:c,Dl:u,Eh:l,El:d,Fh:h,Fl:p,Gh:f,Gl:m,Hh:y,Hl:g}=this;for(let e=0;e<80;e++){const n=q.rotrSH(l,d,14)^q.rotrSH(l,d,18)^q.rotrBH(l,d,41),b=q.rotrSL(l,d,14)^q.rotrSL(l,d,18)^q.rotrBL(l,d,41),w=l&h^~l&f,v=d&p^~d&m,T=q.add5L(g,b,v,P[e],C[e]),E=q.add5H(T,y,n,w,D[e],R[e]),k=0|T,x=q.rotrSH(t,r,28)^q.rotrBH(t,r,34)^q.rotrBH(t,r,39),I=q.rotrSL(t,r,28)^q.rotrBL(t,r,34)^q.rotrBL(t,r,39),A=t&i^t&s^i&s,S=r&o^r&a^o&a;y=0|f,g=0|m,f=0|h,m=0|p,h=0|l,p=0|d,({h:l,l:d}=q.add(0|c,0|u,0|E,0|k)),c=0|s,u=0|a,s=0|i,a=0|o,i=0|t,o=0|r;const B=q.add3L(k,I,S);t=q.add3H(B,E,x,A),r=0|B}({h:t,l:r}=q.add(0|this.Ah,0|this.Al,0|t,0|r)),({h:i,l:o}=q.add(0|this.Bh,0|this.Bl,0|i,0|o)),({h:s,l:a}=q.add(0|this.Ch,0|this.Cl,0|s,0|a)),({h:c,l:u}=q.add(0|this.Dh,0|this.Dl,0|c,0|u)),({h:l,l:d}=q.add(0|this.Eh,0|this.El,0|l,0|d)),({h:h,l:p}=q.add(0|this.Fh,0|this.Fl,0|h,0|p)),({h:f,l:m}=q.add(0|this.Gh,0|this.Gl,0|f,0|m)),({h:y,l:g}=q.add(0|this.Hh,0|this.Hl,0|y,0|g)),this.set(t,r,i,o,s,a,c,u,l,d,h,p,f,m,y,g)}roundClean(){R.fill(0),C.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}const F=A((()=>new $)),U=BigInt(0),M=BigInt(1),V=BigInt(2);
3
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function j(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}const H=Array.from({length:256},((e,n)=>n.toString(16).padStart(2,"0")));function z(e){if(!j(e))throw new Error("Uint8Array expected");let n="";for(let t=0;t<e.length;t++)n+=H[e[t]];return n}function G(e){const n=e.toString(16);return 1&n.length?`0${n}`:n}function K(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);return BigInt(""===e?"0":`0x${e}`)}const W={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function Y(e){return e>=W._0&&e<=W._9?e-W._0:e>=W._A&&e<=W._F?e-(W._A-10):e>=W._a&&e<=W._f?e-(W._a-10):void 0}function Q(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);const n=e.length,t=n/2;if(n%2)throw new Error("padded hex string expected, got unpadded hex of length "+n);const r=new Uint8Array(t);for(let n=0,i=0;n<t;n++,i+=2){const t=Y(e.charCodeAt(i)),o=Y(e.charCodeAt(i+1));if(void 0===t||void 0===o){const n=e[i]+e[i+1];throw new Error('hex string expected, got non-hex character "'+n+'" at index '+i)}r[n]=16*t+o}return r}function Z(e){return K(z(e))}function J(e){if(!j(e))throw new Error("Uint8Array expected");return K(z(Uint8Array.from(e).reverse()))}function X(e,n){return Q(e.toString(16).padStart(2*n,"0"))}function ee(e,n){return X(e,n).reverse()}function ne(e,n,t){let r;if("string"==typeof n)try{r=Q(n)}catch(t){throw new Error(`${e} must be valid hex string, got "${n}". Cause: ${t}`)}else{if(!j(n))throw new Error(`${e} must be hex string or Uint8Array`);r=Uint8Array.from(n)}const i=r.length;if("number"==typeof t&&i!==t)throw new Error(`${e} expected ${t} bytes, got ${i}`);return r}function te(...e){let n=0;for(let t=0;t<e.length;t++){const r=e[t];if(!j(r))throw new Error("Uint8Array expected");n+=r.length}let t=new Uint8Array(n),r=0;for(let n=0;n<e.length;n++){const i=e[n];t.set(i,r),r+=i.length}return t}const re=e=>(V<<BigInt(e-1))-M,ie=e=>new Uint8Array(e),oe=e=>Uint8Array.from(e);function se(e,n,t){if("number"!=typeof e||e<2)throw new Error("hashLen must be a number");if("number"!=typeof n||n<2)throw new Error("qByteLen must be a number");if("function"!=typeof t)throw new Error("hmacFn must be a function");let r=ie(e),i=ie(e),o=0;const s=()=>{r.fill(1),i.fill(0),o=0},a=(...e)=>t(i,r,...e),c=(e=ie())=>{i=a(oe([0]),e),r=a(),0!==e.length&&(i=a(oe([1]),e),r=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const t=[];for(;e<n;){r=a();const n=r.slice();t.push(n),e+=r.length}return te(...t)};return(e,n)=>{let t;for(s(),c(e);!(t=n(u()));)c();return s(),t}}const ae={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||j(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,n)=>n.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function ce(e,n,t={}){const r=(n,t,r)=>{const i=ae[t];if("function"!=typeof i)throw new Error(`Invalid validator "${t}", expected function`);const o=e[n];if(!(r&&void 0===o||i(o,e)))throw new Error(`Invalid param ${String(n)}=${o} (${typeof o}), expected ${t}`)};for(const[e,t]of Object.entries(n))r(e,t,!1);for(const[e,n]of Object.entries(t))r(e,n,!0);return e}var ue=Object.freeze({__proto__:null,bitGet:function(e,n){return e>>BigInt(n)&M},bitLen:function(e){let n;for(n=0;e>U;e>>=M,n+=1);return n},bitMask:re,bitSet:(e,n,t)=>e|(t?M:U)<<BigInt(n),bytesToHex:z,bytesToNumberBE:Z,bytesToNumberLE:J,concatBytes:te,createHmacDrbg:se,ensureBytes:ne,equalBytes:function(e,n){if(e.length!==n.length)return!1;let t=0;for(let r=0;r<e.length;r++)t|=e[r]^n[r];return 0===t},hexToBytes:Q,hexToNumber:K,isBytes:j,numberToBytesBE:X,numberToBytesLE:ee,numberToHexUnpadded:G,numberToVarBytesBE:function(e){return Q(G(e))},utf8ToBytes:function(e){if("string"!=typeof e)throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))},validateObject:ce});
4
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const le=BigInt(0),de=BigInt(1),he=BigInt(2),pe=BigInt(3),fe=BigInt(4),me=BigInt(5),ye=BigInt(8);function ge(e,n){const t=e%n;return t>=le?t:n+t}function be(e,n,t){if(t<=le||n<le)throw new Error("Expected power/modulo > 0");if(t===de)return le;let r=de;for(;n>le;)n&de&&(r=r*e%t),e=e*e%t,n>>=de;return r}function we(e,n,t){let r=e;for(;n-- >le;)r*=r,r%=t;return r}function ve(e,n){if(e===le||n<=le)throw new Error(`invert: expected positive integers, got n=${e} mod=${n}`);let t=ge(e,n),r=n,i=le,o=de;for(;t!==le;){const e=r%t,n=i-o*(r/t);r=t,t=e,i=o,o=n}if(r!==de)throw new Error("invert: does not exist");return ge(i,n)}function Te(e){if(e%fe===pe){const n=(e+de)/fe;return function(e,t){const r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw new Error("Cannot find square root");return r}}if(e%ye===me){const n=(e-me)/ye;return function(e,t){const r=e.mul(t,he),i=e.pow(r,n),o=e.mul(t,i),s=e.mul(e.mul(o,he),i),a=e.mul(o,e.sub(s,e.ONE));if(!e.eql(e.sqr(a),t))throw new Error("Cannot find square root");return a}}return function(e){const n=(e-de)/he;let t,r,i;for(t=e-de,r=0;t%he===le;t/=he,r++);for(i=he;i<e&&be(i,n,e)!==e-de;i++);if(1===r){const n=(e+de)/fe;return function(e,t){const r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw new Error("Cannot find square root");return r}}const o=(t+de)/he;return function(e,s){if(e.pow(s,n)===e.neg(e.ONE))throw new Error("Cannot find square root");let a=r,c=e.pow(e.mul(e.ONE,i),t),u=e.pow(s,o),l=e.pow(s,t);for(;!e.eql(l,e.ONE);){if(e.eql(l,e.ZERO))return e.ZERO;let n=1;for(let t=e.sqr(l);n<a&&!e.eql(t,e.ONE);n++)t=e.sqr(t);const t=e.pow(c,de<<BigInt(a-n-1));c=e.sqr(t),u=e.mul(u,t),l=e.mul(l,c),a=n}return u}}(e)}BigInt(9),BigInt(16);const Ee=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ke(e,n){const t=void 0!==n?n:e.toString(2).length;return{nBitLength:t,nByteLength:Math.ceil(t/8)}}function xe(e,n,t=!1,r={}){if(e<=le)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:i,nByteLength:o}=ke(e,n);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=Te(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:re(i),ZERO:le,ONE:de,create:n=>ge(n,e),isValid:n=>{if("bigint"!=typeof n)throw new Error("Invalid field element: expected bigint, got "+typeof n);return le<=n&&n<e},is0:e=>e===le,isOdd:e=>(e&de)===de,neg:n=>ge(-n,e),eql:(e,n)=>e===n,sqr:n=>ge(n*n,e),add:(n,t)=>ge(n+t,e),sub:(n,t)=>ge(n-t,e),mul:(n,t)=>ge(n*t,e),pow:(e,n)=>function(e,n,t){if(t<le)throw new Error("Expected power > 0");if(t===le)return e.ONE;if(t===de)return n;let r=e.ONE,i=n;for(;t>le;)t&de&&(r=e.mul(r,i)),i=e.sqr(i),t>>=de;return r}(a,e,n),div:(n,t)=>ge(n*ve(t,e),e),sqrN:e=>e*e,addN:(e,n)=>e+n,subN:(e,n)=>e-n,mulN:(e,n)=>e*n,inv:n=>ve(n,e),sqrt:r.sqrt||(e=>s(a,e)),invertBatch:e=>function(e,n){const t=new Array(n.length),r=n.reduce(((n,r,i)=>e.is0(r)?n:(t[i]=n,e.mul(n,r))),e.ONE),i=e.inv(r);return n.reduceRight(((n,r,i)=>e.is0(r)?n:(t[i]=e.mul(n,t[i]),e.mul(n,r))),i),t}(a,e),cmov:(e,n,t)=>t?n:e,toBytes:e=>t?ee(e,o):X(e,o),fromBytes:e=>{if(e.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${e.length}`);return t?J(e):Z(e)}});return Object.freeze(a)}function Ie(e){if("bigint"!=typeof e)throw new Error("field order must be bigint");const n=e.toString(2).length;return Math.ceil(n/8)}function Ae(e){const n=Ie(e);return n+Math.ceil(n/2)}
5
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
6
+ const Se=BigInt(0),Be=BigInt(1);function Oe(e,n){const t=(e,n)=>{const t=n.negate();return e?t:n},r=e=>({windows:Math.ceil(n/e)+1,windowSize:2**(e-1)});return{constTimeNegate:t,unsafeLadder(n,t){let r=e.ZERO,i=n;for(;t>Se;)t&Be&&(r=r.add(i)),i=i.double(),t>>=Be;return r},precomputeWindow(e,n){const{windows:t,windowSize:i}=r(n),o=[];let s=e,a=s;for(let e=0;e<t;e++){a=s,o.push(a);for(let e=1;e<i;e++)a=a.add(s),o.push(a);s=a.double()}return o},wNAF(n,i,o){const{windows:s,windowSize:a}=r(n);let c=e.ZERO,u=e.BASE;const l=BigInt(2**n-1),d=2**n,h=BigInt(n);for(let e=0;e<s;e++){const n=e*a;let r=Number(o&l);o>>=h,r>a&&(r-=d,o+=Be);const s=n,p=n+Math.abs(r)-1,f=e%2!=0,m=r<0;0===r?u=u.add(t(f,i[s])):c=c.add(t(m,i[p]))}return{p:c,f:u}},wNAFCached(e,n,t,r){const i=e._WINDOW_SIZE||1;let o=n.get(e);return o||(o=this.precomputeWindow(e,i),1!==i&&n.set(e,r(o))),this.wNAF(i,o,t)}}}function _e(e){return ce(e.Fp,Ee.reduce(((e,n)=>(e[n]="function",e)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"})),ce(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ke(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}
7
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ne=BigInt(0),Le=BigInt(1),qe=BigInt(2),De=BigInt(8),Pe={zip215:!0};function Re(e){const n=function(e){const n=_e(e);return ce(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...n})}(e),{Fp:t,n:r,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=n,u=qe<<BigInt(8*a)-Le,l=t.create,d=n.uvRatio||((e,n)=>{try{return{isValid:!0,value:t.sqrt(e*t.inv(n))}}catch(e){return{isValid:!1,value:Ne}}}),h=n.adjustScalarBytes||(e=>e),p=n.domain||((e,n,t)=>{if(n.length||t)throw new Error("Contexts/pre-hash are not supported");return e}),f=e=>"bigint"==typeof e&&Ne<e,m=(e,n)=>f(e)&&f(n)&&e<n,y=e=>e===Ne||m(e,u);function g(e,n){if(m(e,n))return e;throw new Error(`Expected valid scalar < ${n}, got ${typeof e} ${e}`)}function b(e){return e===Ne?e:g(e,r)}const w=new Map;function v(e){if(!(e instanceof T))throw new Error("ExtendedPoint expected")}class T{constructor(e,n,t,r){if(this.ex=e,this.ey=n,this.ez=t,this.et=r,!y(e))throw new Error("x required");if(!y(n))throw new Error("y required");if(!y(t))throw new Error("z required");if(!y(r))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(e){if(e instanceof T)throw new Error("extended point not allowed");const{x:n,y:t}=e||{};if(!y(n)||!y(t))throw new Error("invalid affine point");return new T(n,t,Le,l(n*t))}static normalizeZ(e){const n=t.invertBatch(e.map((e=>e.ez)));return e.map(((e,t)=>e.toAffine(n[t]))).map(T.fromAffine)}_setWindowSize(e){this._WINDOW_SIZE=e,w.delete(this)}assertValidity(){const{a:e,d:t}=n;if(this.is0())throw new Error("bad point: ZERO");const{ex:r,ey:i,ez:o,et:s}=this,a=l(r*r),c=l(i*i),u=l(o*o),d=l(u*u),h=l(a*e);if(l(u*l(h+c))!==l(d+l(t*l(a*c))))throw new Error("bad point: equation left != right (1)");if(l(r*i)!==l(o*s))throw new Error("bad point: equation left != right (2)")}equals(e){v(e);const{ex:n,ey:t,ez:r}=this,{ex:i,ey:o,ez:s}=e,a=l(n*s),c=l(i*r),u=l(t*s),d=l(o*r);return a===c&&u===d}is0(){return this.equals(T.ZERO)}negate(){return new T(l(-this.ex),this.ey,this.ez,l(-this.et))}double(){const{a:e}=n,{ex:t,ey:r,ez:i}=this,o=l(t*t),s=l(r*r),a=l(qe*l(i*i)),c=l(e*o),u=t+r,d=l(l(u*u)-o-s),h=c+s,p=h-a,f=c-s,m=l(d*p),y=l(h*f),g=l(d*f),b=l(p*h);return new T(m,y,b,g)}add(e){v(e);const{a:t,d:r}=n,{ex:i,ey:o,ez:s,et:a}=this,{ex:c,ey:u,ez:d,et:h}=e;if(t===BigInt(-1)){const e=l((o-i)*(u+c)),n=l((o+i)*(u-c)),t=l(n-e);if(t===Ne)return this.double();const r=l(s*qe*h),p=l(a*qe*d),f=p+r,m=n+e,y=p-r,g=l(f*t),b=l(m*y),w=l(f*y),v=l(t*m);return new T(g,b,v,w)}const p=l(i*c),f=l(o*u),m=l(a*r*h),y=l(s*d),g=l((i+o)*(c+u)-p-f),b=y-m,w=y+m,E=l(f-t*p),k=l(g*b),x=l(w*E),I=l(g*E),A=l(b*w);return new T(k,x,A,I)}subtract(e){return this.add(e.negate())}wNAF(e){return x.wNAFCached(this,w,e,T.normalizeZ)}multiply(e){const{p:n,f:t}=this.wNAF(g(e,r));return T.normalizeZ([n,t])[0]}multiplyUnsafe(e){let n=b(e);return n===Ne?k:this.equals(k)||n===Le?this:this.equals(E)?this.wNAF(n).p:x.unsafeLadder(this,n)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return x.unsafeLadder(this,r).is0()}toAffine(e){const{ex:n,ey:r,ez:i}=this,o=this.is0();null==e&&(e=o?De:t.inv(i));const s=l(n*e),a=l(r*e),c=l(i*e);if(o)return{x:Ne,y:Le};if(c!==Le)throw new Error("invZ was invalid");return{x:s,y:a}}clearCofactor(){const{h:e}=n;return e===Le?this:this.multiplyUnsafe(e)}static fromHex(e,r=!1){const{d:i,a:o}=n,s=t.BYTES,a=(e=ne("pointHex",e,s)).slice(),c=e[s-1];a[s-1]=-129&c;const h=J(a);h===Ne||g(h,r?u:t.ORDER);const p=l(h*h),f=l(p-Le),m=l(i*p-o);let{isValid:y,value:b}=d(f,m);if(!y)throw new Error("Point.fromHex: invalid y coordinate");const w=(b&Le)===Le,v=!!(128&c);if(!r&&b===Ne&&v)throw new Error("Point.fromHex: x=0 and x_0=1");return v!==w&&(b=l(-b)),T.fromAffine({x:b,y:h})}static fromPrivateKey(e){return S(e).point}toRawBytes(){const{x:e,y:n}=this.toAffine(),r=ee(n,t.BYTES);return r[r.length-1]|=e&Le?128:0,r}toHex(){return z(this.toRawBytes())}}T.BASE=new T(n.Gx,n.Gy,Le,l(n.Gx*n.Gy)),T.ZERO=new T(Ne,Le,Le,Ne);const{BASE:E,ZERO:k}=T,x=Oe(T,8*a);function I(e){return ge(e,r)}function A(e){return I(J(e))}function S(e){const n=a;e=ne("private key",e,n);const t=ne("hashed private key",o(e),2*n),r=h(t.slice(0,n)),i=t.slice(n,2*n),s=A(r),c=E.multiply(s),u=c.toRawBytes();return{head:r,prefix:i,scalar:s,point:c,pointBytes:u}}function B(e=new Uint8Array,...n){const t=te(...n);return A(o(p(t,ne("context",e),!!i)))}const O=Pe;E._setWindowSize(8);return{CURVE:n,getPublicKey:function(e){return S(e).pointBytes},sign:function(e,n,r={}){e=ne("message",e),i&&(e=i(e));const{prefix:o,scalar:s,pointBytes:c}=S(n),u=B(r.context,o,e),l=E.multiply(u).toRawBytes(),d=I(u+B(r.context,l,c,e)*s);return b(d),ne("result",te(l,ee(d,t.BYTES)),2*a)},verify:function(e,n,r,o=O){const{context:s,zip215:a}=o,c=t.BYTES;e=ne("signature",e,2*c),n=ne("message",n),i&&(n=i(n));const u=J(e.slice(c,2*c));let l,d,h;try{l=T.fromHex(r,a),d=T.fromHex(e.slice(0,c),a),h=E.multiplyUnsafe(u)}catch(e){return!1}if(!a&&l.isSmallOrder())return!1;const p=B(s,d.toRawBytes(),l.toRawBytes(),n);return d.add(l.multiplyUnsafe(p)).subtract(h).clearCofactor().equals(T.ZERO)},ExtendedPoint:T,utils:{getExtendedPublicKey:S,randomPrivateKey:()=>s(t.BYTES),precompute:(e=8,n=T.BASE)=>(n._setWindowSize(e),n.multiply(BigInt(3)),n)}}}
8
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ce=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),$e=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);const Fe=BigInt(1),Ue=BigInt(2),Me=BigInt(5),Ve=BigInt(10),je=BigInt(20),He=BigInt(40),ze=BigInt(80);const Ge=xe(Ce,void 0,!0),Ke={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Ge,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:F,randomBytes:S,adjustScalarBytes:function(e){return e[0]&=248,e[31]&=127,e[31]|=64,e},uvRatio:function(e,n){const t=Ce,r=ge(n*n*n,t),i=function(e){const n=Ce,t=e*e%n*e%n,r=we(t,Ue,n)*t%n,i=we(r,Fe,n)*e%n,o=we(i,Me,n)*i%n,s=we(o,Ve,n)*o%n,a=we(s,je,n)*s%n,c=we(a,He,n)*a%n,u=we(c,ze,n)*c%n,l=we(u,ze,n)*c%n,d=we(l,Ve,n)*o%n;return{pow_p_5_8:we(d,Ue,n)*e%n,b2:t}}(e*ge(r*r*n,t)).pow_p_5_8;let o=ge(e*r*i,t);const s=ge(n*o*o,t),a=o,c=ge(o*$e,t),u=s===e,l=s===ge(-e,t),d=s===ge(-e*$e,t);return u&&(o=a),(l||d)&&(o=c),(ge(o,t)&de)===de&&(o=ge(-o,t)),{isValid:u||l,value:o}}},We=Re(Ke);const Ye=(Ge.ORDER+BigInt(3))/BigInt(8);Ge.pow(Ue,Ye),Ge.sqrt(Ge.neg(Ge.ONE)),Ge.ORDER,BigInt(5),BigInt(8),BigInt(486662),function(e,n){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const t=e.sqrt(n);e.isOdd(t)&&e.neg(t)}(Ge,Ge.neg(BigInt(486664))),BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");const Qe=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Ze=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Je=new Uint32Array(64);class Xe extends O{constructor(){super(64,32,8,!1),this.A=0|Ze[0],this.B=0|Ze[1],this.C=0|Ze[2],this.D=0|Ze[3],this.E=0|Ze[4],this.F=0|Ze[5],this.G=0|Ze[6],this.H=0|Ze[7]}get(){const{A:e,B:n,C:t,D:r,E:i,F:o,G:s,H:a}=this;return[e,n,t,r,i,o,s,a]}set(e,n,t,r,i,o,s,a){this.A=0|e,this.B=0|n,this.C=0|t,this.D=0|r,this.E=0|i,this.F=0|o,this.G=0|s,this.H=0|a}process(e,n){for(let t=0;t<16;t++,n+=4)Je[t]=e.getUint32(n,!1);for(let e=16;e<64;e++){const n=Je[e-15],t=Je[e-2],r=T(n,7)^T(n,18)^n>>>3,i=T(t,17)^T(t,19)^t>>>10;Je[e]=i+Je[e-7]+r+Je[e-16]|0}let{A:t,B:r,C:i,D:o,E:s,F:a,G:c,H:u}=this;for(let e=0;e<64;e++){const n=u+(T(s,6)^T(s,11)^T(s,25))+((l=s)&a^~l&c)+Qe[e]+Je[e]|0,d=(T(t,2)^T(t,13)^T(t,22))+B(t,r,i)|0;u=c,c=a,a=s,s=o+n|0,o=i,i=r,r=t,t=n+d|0}var l;t=t+this.A|0,r=r+this.B|0,i=i+this.C|0,o=o+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,u=u+this.H|0,this.set(t,r,i,o,s,a,c,u)}roundClean(){Je.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const en=A((()=>new Xe));class nn extends TypeError{constructor(e,n){let t;const{message:r,explanation:i,...o}=e,{path:s}=e,a=0===s.length?r:`At path: ${s.join(".")} -- ${r}`;super(i??a),null!=i&&(this.cause=a),Object.assign(this,o),this.name=this.constructor.name,this.failures=()=>t??(t=[e,...n()])}}function tn(e){return"object"==typeof e&&null!=e}function rn(e){return tn(e)&&!Array.isArray(e)}function on(e){return"symbol"==typeof e?e.toString():"string"==typeof e?JSON.stringify(e):`${e}`}function sn(e,n,t,r){if(!0===e)return;!1===e?e={}:"string"==typeof e&&(e={message:e});const{path:i,branch:o}=n,{type:s}=t,{refinement:a,message:c=`Expected a value of type \`${s}\`${a?` with refinement \`${a}\``:""}, but received: \`${on(r)}\``}=e;return{value:r,type:s,refinement:a,key:i[i.length-1],path:i,branch:o,...e,message:c}}function*an(e,n,t,r){var i;tn(i=e)&&"function"==typeof i[Symbol.iterator]||(e=[e]);for(const i of e){const e=sn(i,n,t,r);e&&(yield e)}}function*cn(e,n,t={}){const{path:r=[],branch:i=[e],coerce:o=!1,mask:s=!1}=t,a={path:r,branch:i,mask:s};o&&(e=n.coercer(e,a));let c="valid";for(const r of n.validator(e,a))r.explanation=t.message,c="not_valid",yield[r,void 0];for(let[u,l,d]of n.entries(e,a)){const n=cn(l,d,{path:void 0===u?r:[...r,u],branch:void 0===u?i:[...i,l],coerce:o,mask:s,message:t.message});for(const t of n)t[0]?(c=null!=t[0].refinement?"not_refined":"not_valid",yield[t[0],void 0]):o&&(l=t[1],void 0===u?e=l:e instanceof Map?e.set(u,l):e instanceof Set?e.add(l):tn(e)&&(void 0!==l||u in e)&&(e[u]=l))}if("not_valid"!==c)for(const r of n.refiner(e,a))r.explanation=t.message,c="not_refined",yield[r,void 0];"valid"===c&&(yield[void 0,e])}let un=class{constructor(e){const{type:n,schema:t,validator:r,refiner:i,coercer:o=(e=>e),entries:s=function*(){}}=e;this.type=n,this.schema=t,this.entries=s,this.coercer=o,this.validator=r?(e,n)=>an(r(e,n),n,this,e):()=>[],this.refiner=i?(e,n)=>an(i(e,n),n,this,e):()=>[]}assert(e,n){return function(e,n,t){const r=hn(e,n,{message:t});if(r[0])throw r[0]}(e,this,n)}create(e,n){return ln(e,this,n)}is(e){return dn(e,this)}mask(e,n){return function(e,n,t){const r=hn(e,n,{coerce:!0,mask:!0,message:t});if(r[0])throw r[0];return r[1]}(e,this,n)}validate(e,n={}){return hn(e,this,n)}};function ln(e,n,t){const r=hn(e,n,{coerce:!0,message:t});if(r[0])throw r[0];return r[1]}function dn(e,n){return!hn(e,n)[0]}function hn(e,n,t={}){const r=cn(e,n,t),i=function(e){const{done:n,value:t}=e.next();return n?void 0:t}(r);if(i[0]){return[new nn(i[0],(function*(){for(const e of r)e[0]&&(yield e[0])})),void 0]}return[void 0,i[1]]}function pn(e,n){return new un({type:e,schema:null,validator:n})}function fn(e){return new un({type:"array",schema:e,*entries(n){if(e&&Array.isArray(n))for(const[t,r]of n.entries())yield[t,r,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||`Expected an array value, but received: ${on(e)}`})}function mn(){return pn("boolean",(e=>"boolean"==typeof e))}function yn(e){return pn("instance",(n=>n instanceof e||`Expected a \`${e.name}\` instance, but received: ${on(n)}`))}function gn(e){const n=on(e),t=typeof e;return new un({type:"literal",schema:"string"===t||"number"===t||"boolean"===t?e:null,validator:t=>t===e||`Expected the literal \`${n}\`, but received: ${on(t)}`})}function bn(e){return new un({...e,validator:(n,t)=>null===n||e.validator(n,t),refiner:(n,t)=>null===n||e.refiner(n,t)})}function wn(){return pn("number",(e=>"number"==typeof e&&!isNaN(e)||`Expected a number, but received: ${on(e)}`))}function vn(e){return new un({...e,validator:(n,t)=>void 0===n||e.validator(n,t),refiner:(n,t)=>void 0===n||e.refiner(n,t)})}function Tn(e,n){return new un({type:"record",schema:null,*entries(t){if(tn(t))for(const r in t){const i=t[r];yield[r,r,e],yield[r,i,n]}},validator:e=>rn(e)||`Expected an object, but received: ${on(e)}`,coercer:e=>rn(e)?{...e}:e})}function En(){return pn("string",(e=>"string"==typeof e||`Expected a string, but received: ${on(e)}`))}function kn(e){const n=pn("never",(()=>!1));return new un({type:"tuple",schema:null,*entries(t){if(Array.isArray(t)){const r=Math.max(e.length,t.length);for(let i=0;i<r;i++)yield[i,t[i],e[i]||n]}},validator:e=>Array.isArray(e)||`Expected an array, but received: ${on(e)}`,coercer:e=>Array.isArray(e)?e.slice():e})}function xn(e){const n=Object.keys(e);return new un({type:"type",schema:e,*entries(t){if(tn(t))for(const r of n)yield[r,t[r],e[r]]},validator:e=>rn(e)||`Expected an object, but received: ${on(e)}`,coercer:e=>rn(e)?{...e}:e})}function In(e){const n=e.map((e=>e.type)).join(" | ");return new un({type:"union",schema:null,coercer(n,t){for(const r of e){const[e,i]=r.validate(n,{coerce:!0,mask:t.mask});if(!e)return i}return n},validator(t,r){const i=[];for(const n of e){const[...e]=cn(t,n,r),[o]=e;if(!o[0])return[];for(const[n]of e)n&&i.push(n)}return[`Expected the value to satisfy a union of \`${n}\`, but received: ${on(t)}`,...i]}})}function An(){return pn("unknown",(()=>!0))}function Sn(e,n,t){return new un({...e,coercer:(r,i)=>dn(r,n)?e.coercer(t(r,i),i):e.coercer(r,i)})}const Bn=a.Readable,On=Symbol("buffer"),_n=Symbol("type");class Nn{constructor(){this[_n]="";const e=arguments[0],n=arguments[1],t=[];let r=0;if(e){const n=e,i=Number(n.length);for(let e=0;e<i;e++){const i=n[e];let o;o=i instanceof Buffer?i:ArrayBuffer.isView(i)?Buffer.from(i.buffer,i.byteOffset,i.byteLength):i instanceof ArrayBuffer?Buffer.from(i):i instanceof Nn?i[On]:Buffer.from("string"==typeof i?i:String(i)),r+=o.length,t.push(o)}}this[On]=Buffer.concat(t);let i=n&&void 0!==n.type&&String(n.type).toLowerCase();i&&!/[^\u0020-\u007E]/.test(i)&&(this[_n]=i)}get size(){return this[On].length}get type(){return this[_n]}text(){return Promise.resolve(this[On].toString())}arrayBuffer(){const e=this[On],n=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return Promise.resolve(n)}stream(){const e=new Bn;return e._read=function(){},e.push(this[On]),e.push(null),e}toString(){return"[object Blob]"}slice(){const e=this.size,n=arguments[0],t=arguments[1];let r,i;r=void 0===n?0:n<0?Math.max(e+n,0):Math.min(n,e),i=void 0===t?e:t<0?Math.max(e+t,0):Math.min(t,e);const o=Math.max(i-r,0),s=this[On].slice(r,r+o),a=new Nn([],{type:arguments[2]});return a[On]=s,a}}function Ln(e,n,t){Error.call(this,e),this.message=e,this.type=n,t&&(this.code=this.errno=t.code),Error.captureStackTrace(this,this.constructor)}let qn;Object.defineProperties(Nn.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}}),Object.defineProperty(Nn.prototype,Symbol.toStringTag,{value:"Blob",writable:!1,enumerable:!1,configurable:!0}),Ln.prototype=Object.create(Error.prototype),Ln.prototype.constructor=Ln,Ln.prototype.name="FetchError";try{qn=require("encoding").convert}catch(e){}const Dn=Symbol("Body internals"),Pn=a.PassThrough;function Rn(e){var n=this,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.size;let i=void 0===r?0:r;var o=t.timeout;let s=void 0===o?0:o;null==e?e=null:$n(e)?e=Buffer.from(e.toString()):Fn(e)||Buffer.isBuffer(e)||("[object ArrayBuffer]"===Object.prototype.toString.call(e)?e=Buffer.from(e):ArrayBuffer.isView(e)?e=Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof a||(e=Buffer.from(String(e)))),this[Dn]={body:e,disturbed:!1,error:null},this.size=i,this.timeout=s,e instanceof a&&e.on("error",(function(e){const t="AbortError"===e.name?e:new Ln(`Invalid response body while trying to fetch ${n.url}: ${e.message}`,"system",e);n[Dn].error=t}))}function Cn(){var e=this;if(this[Dn].disturbed)return Rn.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[Dn].disturbed=!0,this[Dn].error)return Rn.Promise.reject(this[Dn].error);let n=this.body;if(null===n)return Rn.Promise.resolve(Buffer.alloc(0));if(Fn(n)&&(n=n.stream()),Buffer.isBuffer(n))return Rn.Promise.resolve(n);if(!(n instanceof a))return Rn.Promise.resolve(Buffer.alloc(0));let t=[],r=0,i=!1;return new Rn.Promise((function(o,s){let a;e.timeout&&(a=setTimeout((function(){i=!0,s(new Ln(`Response timeout while trying to fetch ${e.url} (over ${e.timeout}ms)`,"body-timeout"))}),e.timeout)),n.on("error",(function(n){"AbortError"===n.name?(i=!0,s(n)):s(new Ln(`Invalid response body while trying to fetch ${e.url}: ${n.message}`,"system",n))})),n.on("data",(function(n){if(!i&&null!==n){if(e.size&&r+n.length>e.size)return i=!0,void s(new Ln(`content size at ${e.url} over limit: ${e.size}`,"max-size"));r+=n.length,t.push(n)}})),n.on("end",(function(){if(!i){clearTimeout(a);try{o(Buffer.concat(t,r))}catch(n){s(new Ln(`Could not create Buffer from response body for ${e.url}: ${n.message}`,"system",n))}}}))}))}function $n(e){return"object"==typeof e&&"function"==typeof e.append&&"function"==typeof e.delete&&"function"==typeof e.get&&"function"==typeof e.getAll&&"function"==typeof e.has&&"function"==typeof e.set&&("URLSearchParams"===e.constructor.name||"[object URLSearchParams]"===Object.prototype.toString.call(e)||"function"==typeof e.sort)}function Fn(e){return"object"==typeof e&&"function"==typeof e.arrayBuffer&&"string"==typeof e.type&&"function"==typeof e.stream&&"function"==typeof e.constructor&&"string"==typeof e.constructor.name&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function Un(e){let n,t,r=e.body;if(e.bodyUsed)throw new Error("cannot clone body after it is used");return r instanceof a&&"function"!=typeof r.getBoundary&&(n=new Pn,t=new Pn,r.pipe(n),r.pipe(t),e[Dn].body=n,r=t),r}function Mn(e){return null===e?null:"string"==typeof e?"text/plain;charset=UTF-8":$n(e)?"application/x-www-form-urlencoded;charset=UTF-8":Fn(e)?e.type||null:Buffer.isBuffer(e)||"[object ArrayBuffer]"===Object.prototype.toString.call(e)||ArrayBuffer.isView(e)?null:"function"==typeof e.getBoundary?`multipart/form-data;boundary=${e.getBoundary()}`:e instanceof a?null:"text/plain;charset=UTF-8"}Rn.prototype={get body(){return this[Dn].body},get bodyUsed(){return this[Dn].disturbed},arrayBuffer(){return Cn.call(this).then((function(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}))},blob(){let e=this.headers&&this.headers.get("content-type")||"";return Cn.call(this).then((function(n){return Object.assign(new Nn([],{type:e.toLowerCase()}),{[On]:n})}))},json(){var e=this;return Cn.call(this).then((function(n){try{return JSON.parse(n.toString())}catch(n){return Rn.Promise.reject(new Ln(`invalid json response body at ${e.url} reason: ${n.message}`,"invalid-json"))}}))},text(){return Cn.call(this).then((function(e){return e.toString()}))},buffer(){return Cn.call(this)},textConverted(){var e=this;return Cn.call(this).then((function(n){return function(e,n){if("function"!=typeof qn)throw new Error("The package `encoding` must be installed to use the textConverted() function");const t=n.get("content-type");let r,i,o="utf-8";t&&(r=/charset=([^;]*)/i.exec(t));i=e.slice(0,1024).toString(),!r&&i&&(r=/<meta.+?charset=(['"])(.+?)\1/i.exec(i));!r&&i&&(r=/<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(i),r||(r=/<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(i),r&&r.pop()),r&&(r=/charset=(.*)/i.exec(r.pop())));!r&&i&&(r=/<\?xml.+?encoding=(['"])(.+?)\1/i.exec(i));r&&(o=r.pop(),"gb2312"!==o&&"gbk"!==o||(o="gb18030"));return qn(e,"UTF-8",o).toString()}(n,e.headers)}))}},Object.defineProperties(Rn.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}}),Rn.mixIn=function(e){for(const n of Object.getOwnPropertyNames(Rn.prototype))if(!(n in e)){const t=Object.getOwnPropertyDescriptor(Rn.prototype,n);Object.defineProperty(e,n,t)}},Rn.Promise=global.Promise;const Vn=/[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/,jn=/[^\t\x20-\x7e\x80-\xff]/;function Hn(e){if(e=`${e}`,Vn.test(e)||""===e)throw new TypeError(`${e} is not a legal HTTP header name`)}function zn(e){if(e=`${e}`,jn.test(e))throw new TypeError(`${e} is not a legal HTTP header value`)}function Gn(e,n){n=n.toLowerCase();for(const t in e)if(t.toLowerCase()===n)return t}const Kn=Symbol("map");let Wn=class e{constructor(){let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;if(this[Kn]=Object.create(null),n instanceof e){const e=n.raw(),t=Object.keys(e);for(const n of t)for(const t of e[n])this.append(n,t)}else if(null==n);else{if("object"!=typeof n)throw new TypeError("Provided initializer must be an object");{const e=n[Symbol.iterator];if(null!=e){if("function"!=typeof e)throw new TypeError("Header pairs must be iterable");const t=[];for(const e of n){if("object"!=typeof e||"function"!=typeof e[Symbol.iterator])throw new TypeError("Each header pair must be iterable");t.push(Array.from(e))}for(const e of t){if(2!==e.length)throw new TypeError("Each header pair must be a name/value tuple");this.append(e[0],e[1])}}else for(const e of Object.keys(n)){const t=n[e];this.append(e,t)}}}}get(e){Hn(e=`${e}`);const n=Gn(this[Kn],e);return void 0===n?null:this[Kn][n].join(", ")}forEach(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,t=Yn(this),r=0;for(;r<t.length;){var i=t[r];const o=i[0],s=i[1];e.call(n,s,o,this),t=Yn(this),r++}}set(e,n){n=`${n}`,Hn(e=`${e}`),zn(n);const t=Gn(this[Kn],e);this[Kn][void 0!==t?t:e]=[n]}append(e,n){n=`${n}`,Hn(e=`${e}`),zn(n);const t=Gn(this[Kn],e);void 0!==t?this[Kn][t].push(n):this[Kn][e]=[n]}has(e){return Hn(e=`${e}`),void 0!==Gn(this[Kn],e)}delete(e){Hn(e=`${e}`);const n=Gn(this[Kn],e);void 0!==n&&delete this[Kn][n]}raw(){return this[Kn]}keys(){return Zn(this,"key")}values(){return Zn(this,"value")}[Symbol.iterator](){return Zn(this,"key+value")}};function Yn(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"key+value";return Object.keys(e[Kn]).sort().map("key"===n?function(e){return e.toLowerCase()}:"value"===n?function(n){return e[Kn][n].join(", ")}:function(n){return[n.toLowerCase(),e[Kn][n].join(", ")]})}Wn.prototype.entries=Wn.prototype[Symbol.iterator],Object.defineProperty(Wn.prototype,Symbol.toStringTag,{value:"Headers",writable:!1,enumerable:!1,configurable:!0}),Object.defineProperties(Wn.prototype,{get:{enumerable:!0},forEach:{enumerable:!0},set:{enumerable:!0},append:{enumerable:!0},has:{enumerable:!0},delete:{enumerable:!0},keys:{enumerable:!0},values:{enumerable:!0},entries:{enumerable:!0}});const Qn=Symbol("internal");function Zn(e,n){const t=Object.create(Jn);return t[Qn]={target:e,kind:n,index:0},t}const Jn=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==Jn)throw new TypeError("Value of `this` is not a HeadersIterator");var e=this[Qn];const n=e.target,t=e.kind,r=e.index,i=Yn(n,t);return r>=i.length?{value:void 0,done:!0}:(this[Qn].index=r+1,{value:i[r],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(Jn,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});const Xn=Symbol("Response internals"),et=s.STATUS_CODES;class nt{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Rn.call(this,e,n);const t=n.status||200,r=new Wn(n.headers);if(null!=e&&!r.has("Content-Type")){const n=Mn(e);n&&r.append("Content-Type",n)}this[Xn]={url:n.url,status:t,statusText:n.statusText||et[t],headers:r,counter:n.counter}}get url(){return this[Xn].url||""}get status(){return this[Xn].status}get ok(){return this[Xn].status>=200&&this[Xn].status<300}get redirected(){return this[Xn].counter>0}get statusText(){return this[Xn].statusText}get headers(){return this[Xn].headers}clone(){return new nt(Un(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}}Rn.mixIn(nt.prototype),Object.defineProperties(nt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}}),Object.defineProperty(nt.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});const tt=Symbol("Request internals"),rt=c.URL||u.URL,it=c.parse,ot=c.format;function st(e){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(e)&&(e=new rt(e).toString()),it(e)}function at(e){return"object"==typeof e&&"object"==typeof e[tt]}a.Readable.prototype;class ct{constructor(e){let n,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};at(e)?n=st(e.url):(n=e&&e.href?st(e.href):st(`${e}`),e={});let r=t.method||e.method||"GET";if(r=r.toUpperCase(),(null!=t.body||at(e)&&null!==e.body)&&("GET"===r||"HEAD"===r))throw new TypeError("Request with GET/HEAD method cannot have body");let i=null!=t.body?t.body:at(e)&&null!==e.body?Un(e):null;Rn.call(this,i,{timeout:t.timeout||e.timeout||0,size:t.size||e.size||0});const o=new Wn(t.headers||e.headers||{});if(null!=i&&!o.has("Content-Type")){const e=Mn(i);e&&o.append("Content-Type",e)}let s=at(e)?e.signal:null;if("signal"in t&&(s=t.signal),null!=s&&!function(e){const n=e&&"object"==typeof e&&Object.getPrototypeOf(e);return!(!n||"AbortSignal"!==n.constructor.name)}(s))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[tt]={method:r,redirect:t.redirect||e.redirect||"follow",headers:o,parsedURL:n,signal:s},this.follow=void 0!==t.follow?t.follow:void 0!==e.follow?e.follow:20,this.compress=void 0!==t.compress?t.compress:void 0===e.compress||e.compress,this.counter=t.counter||e.counter||0,this.agent=t.agent||e.agent}get method(){return this[tt].method}get url(){return ot(this[tt].parsedURL)}get headers(){return this[tt].headers}get redirect(){return this[tt].redirect}get signal(){return this[tt].signal}clone(){return new ct(this)}}function ut(e){Error.call(this,e),this.type="aborted",this.message=e,Error.captureStackTrace(this,this.constructor)}Rn.mixIn(ct.prototype),Object.defineProperty(ct.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0}),Object.defineProperties(ct.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}}),ut.prototype=Object.create(Error.prototype),ut.prototype.constructor=ut,ut.prototype.name="AbortError",c.URL||u.URL,a.PassThrough;const{bytesToNumberBE:lt,hexToBytes:dt}=ue,ht={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(e){const{Err:n}=ht;if(e.length<2||2!==e[0])throw new n("Invalid signature integer tag");const t=e[1],r=e.subarray(2,t+2);if(!t||r.length!==t)throw new n("Invalid signature integer: wrong length");if(128&r[0])throw new n("Invalid signature integer: negative");if(0===r[0]&&!(128&r[1]))throw new n("Invalid signature integer: unnecessary leading zero");return{d:lt(r),l:e.subarray(t+2)}},toSig(e){const{Err:n}=ht,t="string"==typeof e?dt(e):e;if(!j(t))throw new Error("ui8a expected");let r=t.length;if(r<2||48!=t[0])throw new n("Invalid signature tag");if(t[1]!==r-2)throw new n("Invalid signature: incorrect length");const{d:i,l:o}=ht._parseInt(t.subarray(2)),{d:s,l:a}=ht._parseInt(o);if(a.length)throw new n("Invalid signature: left bytes after parsing");return{r:i,s:s}},hexFromSig(e){const n=e=>8&Number.parseInt(e[0],16)?"00"+e:e,t=e=>{const n=e.toString(16);return 1&n.length?`0${n}`:n},r=n(t(e.s)),i=n(t(e.r)),o=r.length/2,s=i.length/2,a=t(o),c=t(s);return`30${t(s+o+4)}02${c}${i}02${a}${r}`}},pt=BigInt(0),ft=BigInt(1);BigInt(2);const mt=BigInt(3);function yt(e){const n=
9
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
10
+ function(e){const n=_e(e);ce(n,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:t,Fp:r,a:i}=n;if(t){if(!r.eql(i,r.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if("object"!=typeof t||"bigint"!=typeof t.beta||"function"!=typeof t.splitScalar)throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...n})}(e),{Fp:t}=n,r=n.toBytes||((e,n,r)=>{const i=n.toAffine();return te(Uint8Array.from([4]),t.toBytes(i.x),t.toBytes(i.y))}),i=n.fromBytes||(e=>{const n=e.subarray(1);return{x:t.fromBytes(n.subarray(0,t.BYTES)),y:t.fromBytes(n.subarray(t.BYTES,2*t.BYTES))}});function o(e){const{a:r,b:i}=n,o=t.sqr(e),s=t.mul(o,e);return t.add(t.add(s,t.mul(e,r)),i)}if(!t.eql(t.sqr(n.Gy),o(n.Gx)))throw new Error("bad generator point: equation left != right");function s(e){return"bigint"==typeof e&&pt<e&&e<n.n}function a(e){if(!s(e))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(e){const{allowedPrivateKeyLengths:t,nByteLength:r,wrapPrivateKey:i,n:o}=n;if(t&&"bigint"!=typeof e){if(j(e)&&(e=z(e)),"string"!=typeof e||!t.includes(e.length))throw new Error("Invalid key");e=e.padStart(2*r,"0")}let s;try{s="bigint"==typeof e?e:Z(ne("private key",e,r))}catch(n){throw new Error(`private key must be ${r} bytes, hex or bigint, not ${typeof e}`)}return i&&(s=ge(s,o)),a(s),s}const u=new Map;function l(e){if(!(e instanceof d))throw new Error("ProjectivePoint expected")}class d{constructor(e,n,r){if(this.px=e,this.py=n,this.pz=r,null==e||!t.isValid(e))throw new Error("x required");if(null==n||!t.isValid(n))throw new Error("y required");if(null==r||!t.isValid(r))throw new Error("z required")}static fromAffine(e){const{x:n,y:r}=e||{};if(!e||!t.isValid(n)||!t.isValid(r))throw new Error("invalid affine point");if(e instanceof d)throw new Error("projective point not allowed");const i=e=>t.eql(e,t.ZERO);return i(n)&&i(r)?d.ZERO:new d(n,r,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const n=t.invertBatch(e.map((e=>e.pz)));return e.map(((e,t)=>e.toAffine(n[t]))).map(d.fromAffine)}static fromHex(e){const n=d.fromAffine(i(ne("pointHex",e)));return n.assertValidity(),n}static fromPrivateKey(e){return d.BASE.multiply(c(e))}_setWindowSize(e){this._WINDOW_SIZE=e,u.delete(this)}assertValidity(){if(this.is0()){if(n.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:e,y:r}=this.toAffine();if(!t.isValid(e)||!t.isValid(r))throw new Error("bad point: x or y not FE");const i=t.sqr(r),s=o(e);if(!t.eql(i,s))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:e}=this.toAffine();if(t.isOdd)return!t.isOdd(e);throw new Error("Field doesn't support isOdd")}equals(e){l(e);const{px:n,py:r,pz:i}=this,{px:o,py:s,pz:a}=e,c=t.eql(t.mul(n,a),t.mul(o,i)),u=t.eql(t.mul(r,a),t.mul(s,i));return c&&u}negate(){return new d(this.px,t.neg(this.py),this.pz)}double(){const{a:e,b:r}=n,i=t.mul(r,mt),{px:o,py:s,pz:a}=this;let c=t.ZERO,u=t.ZERO,l=t.ZERO,h=t.mul(o,o),p=t.mul(s,s),f=t.mul(a,a),m=t.mul(o,s);return m=t.add(m,m),l=t.mul(o,a),l=t.add(l,l),c=t.mul(e,l),u=t.mul(i,f),u=t.add(c,u),c=t.sub(p,u),u=t.add(p,u),u=t.mul(c,u),c=t.mul(m,c),l=t.mul(i,l),f=t.mul(e,f),m=t.sub(h,f),m=t.mul(e,m),m=t.add(m,l),l=t.add(h,h),h=t.add(l,h),h=t.add(h,f),h=t.mul(h,m),u=t.add(u,h),f=t.mul(s,a),f=t.add(f,f),h=t.mul(f,m),c=t.sub(c,h),l=t.mul(f,p),l=t.add(l,l),l=t.add(l,l),new d(c,u,l)}add(e){l(e);const{px:r,py:i,pz:o}=this,{px:s,py:a,pz:c}=e;let u=t.ZERO,h=t.ZERO,p=t.ZERO;const f=n.a,m=t.mul(n.b,mt);let y=t.mul(r,s),g=t.mul(i,a),b=t.mul(o,c),w=t.add(r,i),v=t.add(s,a);w=t.mul(w,v),v=t.add(y,g),w=t.sub(w,v),v=t.add(r,o);let T=t.add(s,c);return v=t.mul(v,T),T=t.add(y,b),v=t.sub(v,T),T=t.add(i,o),u=t.add(a,c),T=t.mul(T,u),u=t.add(g,b),T=t.sub(T,u),p=t.mul(f,v),u=t.mul(m,b),p=t.add(u,p),u=t.sub(g,p),p=t.add(g,p),h=t.mul(u,p),g=t.add(y,y),g=t.add(g,y),b=t.mul(f,b),v=t.mul(m,v),g=t.add(g,b),b=t.sub(y,b),b=t.mul(f,b),v=t.add(v,b),y=t.mul(g,v),h=t.add(h,y),y=t.mul(T,v),u=t.mul(w,u),u=t.sub(u,y),y=t.mul(w,g),p=t.mul(T,p),p=t.add(p,y),new d(u,h,p)}subtract(e){return this.add(e.negate())}is0(){return this.equals(d.ZERO)}wNAF(e){return p.wNAFCached(this,u,e,(e=>{const n=t.invertBatch(e.map((e=>e.pz)));return e.map(((e,t)=>e.toAffine(n[t]))).map(d.fromAffine)}))}multiplyUnsafe(e){const r=d.ZERO;if(e===pt)return r;if(a(e),e===ft)return this;const{endo:i}=n;if(!i)return p.unsafeLadder(this,e);let{k1neg:o,k1:s,k2neg:c,k2:u}=i.splitScalar(e),l=r,h=r,f=this;for(;s>pt||u>pt;)s&ft&&(l=l.add(f)),u&ft&&(h=h.add(f)),f=f.double(),s>>=ft,u>>=ft;return o&&(l=l.negate()),c&&(h=h.negate()),h=new d(t.mul(h.px,i.beta),h.py,h.pz),l.add(h)}multiply(e){a(e);let r,i,o=e;const{endo:s}=n;if(s){const{k1neg:e,k1:n,k2neg:a,k2:c}=s.splitScalar(o);let{p:u,f:l}=this.wNAF(n),{p:h,f:f}=this.wNAF(c);u=p.constTimeNegate(e,u),h=p.constTimeNegate(a,h),h=new d(t.mul(h.px,s.beta),h.py,h.pz),r=u.add(h),i=l.add(f)}else{const{p:e,f:n}=this.wNAF(o);r=e,i=n}return d.normalizeZ([r,i])[0]}multiplyAndAddUnsafe(e,n,t){const r=d.BASE,i=(e,n)=>n!==pt&&n!==ft&&e.equals(r)?e.multiply(n):e.multiplyUnsafe(n),o=i(this,n).add(i(e,t));return o.is0()?void 0:o}toAffine(e){const{px:n,py:r,pz:i}=this,o=this.is0();null==e&&(e=o?t.ONE:t.inv(i));const s=t.mul(n,e),a=t.mul(r,e),c=t.mul(i,e);if(o)return{x:t.ZERO,y:t.ZERO};if(!t.eql(c,t.ONE))throw new Error("invZ was invalid");return{x:s,y:a}}isTorsionFree(){const{h:e,isTorsionFree:t}=n;if(e===ft)return!0;if(t)return t(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:t}=n;return e===ft?this:t?t(d,this):this.multiplyUnsafe(n.h)}toRawBytes(e=!0){return this.assertValidity(),r(d,this,e)}toHex(e=!0){return z(this.toRawBytes(e))}}d.BASE=new d(n.Gx,n.Gy,t.ONE),d.ZERO=new d(t.ZERO,t.ONE,t.ZERO);const h=n.nBitLength,p=Oe(d,n.endo?Math.ceil(h/2):h);return{CURVE:n,ProjectivePoint:d,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function gt(e){const n=function(e){const n=_e(e);return ce(n,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...n})}(e),{Fp:t,n:r}=n,i=t.BYTES+1,o=2*t.BYTES+1;function s(e){return ge(e,r)}function a(e){return ve(e,r)}const{ProjectivePoint:c,normPrivateKeyToScalar:u,weierstrassEquation:l,isWithinCurveOrder:d}=yt({...n,toBytes(e,n,r){const i=n.toAffine(),o=t.toBytes(i.x),s=te;return r?s(Uint8Array.from([n.hasEvenY()?2:3]),o):s(Uint8Array.from([4]),o,t.toBytes(i.y))},fromBytes(e){const n=e.length,r=e[0],s=e.subarray(1);if(n!==i||2!==r&&3!==r){if(n===o&&4===r){return{x:t.fromBytes(s.subarray(0,t.BYTES)),y:t.fromBytes(s.subarray(t.BYTES,2*t.BYTES))}}throw new Error(`Point of length ${n} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}{const e=Z(s);if(!(pt<(a=e)&&a<t.ORDER))throw new Error("Point is not on curve");const n=l(e);let i=t.sqrt(n);return!(1&~r)!==((i&ft)===ft)&&(i=t.neg(i)),{x:e,y:i}}var a}}),h=e=>z(X(e,n.nByteLength));function p(e){return e>r>>ft}const f=(e,n,t)=>Z(e.slice(n,t));class m{constructor(e,n,t){this.r=e,this.s=n,this.recovery=t,this.assertValidity()}static fromCompact(e){const t=n.nByteLength;return e=ne("compactSignature",e,2*t),new m(f(e,0,t),f(e,t,2*t))}static fromDER(e){const{r:n,s:t}=ht.toSig(ne("DER",e));return new m(n,t)}assertValidity(){if(!d(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!d(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(e){return new m(this.r,this.s,e)}recoverPublicKey(e){const{r:r,s:i,recovery:o}=this,u=w(ne("msgHash",e));if(null==o||![0,1,2,3].includes(o))throw new Error("recovery id invalid");const l=2===o||3===o?r+n.n:r;if(l>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");const d=1&o?"03":"02",p=c.fromHex(d+h(l)),f=a(l),m=s(-u*f),y=s(i*f),g=c.BASE.multiplyAndAddUnsafe(p,m,y);if(!g)throw new Error("point at infinify");return g.assertValidity(),g}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,s(-this.s),this.recovery):this}toDERRawBytes(){return Q(this.toDERHex())}toDERHex(){return ht.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Q(this.toCompactHex())}toCompactHex(){return h(this.r)+h(this.s)}}const y={isValidPrivateKey(e){try{return u(e),!0}catch(e){return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{const e=Ae(n.n);return function(e,n,t=!1){const r=e.length,i=Ie(n),o=Ae(n);if(r<16||r<o||r>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${r}`);const s=ge(t?Z(e):J(e),n-de)+de;return t?ee(s,i):X(s,i)}(n.randomBytes(e),n.n)},precompute:(e=8,n=c.BASE)=>(n._setWindowSize(e),n.multiply(BigInt(3)),n)};function g(e){const n=j(e),t="string"==typeof e,r=(n||t)&&e.length;return n?r===i||r===o:t?r===2*i||r===2*o:e instanceof c}const b=n.bits2int||function(e){const t=Z(e),r=8*e.length-n.nBitLength;return r>0?t>>BigInt(r):t},w=n.bits2int_modN||function(e){return s(b(e))},v=re(n.nBitLength);function T(e){if("bigint"!=typeof e)throw new Error("bigint expected");if(!(pt<=e&&e<v))throw new Error(`bigint expected < 2^${n.nBitLength}`);return X(e,n.nByteLength)}function E(e,r,i=k){if(["recovered","canonical"].some((e=>e in i)))throw new Error("sign() legacy options not supported");const{hash:o,randomBytes:l}=n;let{lowS:h,prehash:f,extraEntropy:y}=i;null==h&&(h=!0),e=ne("msgHash",e),f&&(e=ne("prehashed msgHash",o(e)));const g=w(e),v=u(r),E=[T(v),T(g)];if(null!=y){const e=!0===y?l(t.BYTES):y;E.push(ne("extraEntropy",e))}const x=te(...E),I=g;return{seed:x,k2sig:function(e){const n=b(e);if(!d(n))return;const t=a(n),r=c.BASE.multiply(n).toAffine(),i=s(r.x);if(i===pt)return;const o=s(t*s(I+i*v));if(o===pt)return;let u=(r.x===i?0:2)|Number(r.y&ft),l=o;return h&&p(o)&&(l=function(e){return p(e)?s(-e):e}(o),u^=1),new m(i,l,u)}}}const k={lowS:n.lowS,prehash:!1},x={lowS:n.lowS,prehash:!1};return c.BASE._setWindowSize(8),{CURVE:n,getPublicKey:function(e,n=!0){return c.fromPrivateKey(e).toRawBytes(n)},getSharedSecret:function(e,n,t=!0){if(g(e))throw new Error("first arg must be private key");if(!g(n))throw new Error("second arg must be public key");return c.fromHex(n).multiply(u(e)).toRawBytes(t)},sign:function(e,t,r=k){const{seed:i,k2sig:o}=E(e,t,r),s=n;return se(s.hash.outputLen,s.nByteLength,s.hmac)(i,o)},verify:function(e,t,r,i=x){const o=e;if(t=ne("msgHash",t),r=ne("publicKey",r),"strict"in i)throw new Error("options.strict was renamed to lowS");const{lowS:u,prehash:l}=i;let d,h;try{if("string"==typeof o||j(o))try{d=m.fromDER(o)}catch(e){if(!(e instanceof ht.Err))throw e;d=m.fromCompact(o)}else{if("object"!=typeof o||"bigint"!=typeof o.r||"bigint"!=typeof o.s)throw new Error("PARSE");{const{r:e,s:n}=o;d=new m(e,n)}}h=c.fromHex(r)}catch(e){if("PARSE"===e.message)throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(u&&d.hasHighS())return!1;l&&(t=n.hash(t));const{r:p,s:f}=d,y=w(t),g=a(f),b=s(y*g),v=s(p*g),T=c.BASE.multiplyAndAddUnsafe(h,b,v)?.toAffine();return!!T&&s(T.x)===p},ProjectivePoint:c,Signature:m,utils:y}}BigInt(4);class bt extends I{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,function(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");y(e.outputLen),y(e.blockLen)}(e);const t=k(n);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const r=this.blockLen,i=new Uint8Array(r);i.set(t.length>r?e.create().update(t).digest():t);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),i.fill(0)}update(e){return b(this),this.iHash.update(e),this}digestInto(e){b(this),g(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:t,finished:r,destroyed:i,blockLen:o,outputLen:s}=this;return e.finished=r,e.destroyed=i,e.blockLen=o,e.outputLen=s,e.oHash=n._cloneInto(e.oHash),e.iHash=t._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const wt=(e,n,t)=>new bt(e,n).update(t).digest();
11
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
12
+ function vt(e){return{hash:e,hmac:(n,...t)=>wt(e,n,x(...t)),randomBytes:S}}wt.create=(e,n)=>new bt(e,n);
13
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
14
+ const Tt=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Et=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),kt=BigInt(1),xt=BigInt(2),It=(e,n)=>(e+n/xt)/n;const At=xe(Tt,void 0,void 0,{sqrt:function(e){const n=Tt,t=BigInt(3),r=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=e*e*e%n,l=u*u*e%n,d=we(l,t,n)*l%n,h=we(d,t,n)*l%n,p=we(h,xt,n)*u%n,f=we(p,i,n)*p%n,m=we(f,o,n)*f%n,y=we(m,a,n)*m%n,g=we(y,c,n)*y%n,b=we(g,a,n)*m%n,w=we(b,t,n)*l%n,v=we(w,s,n)*f%n,T=we(v,r,n)*u%n,E=we(T,xt,n);if(!At.eql(At.sqr(E),e))throw new Error("Cannot find square root");return E}}),St=function(e,n){const t=n=>gt({...e,...vt(n)});return Object.freeze({...t(n),create:t})}({a:BigInt(0),b:BigInt(7),Fp:At,n:Et,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const n=Et,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-kt*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=t,s=BigInt("0x100000000000000000000000000000000"),a=It(o*e,n),c=It(-r*e,n);let u=ge(e-a*t-c*i,n),l=ge(-a*r-c*o,n);const d=u>s,h=l>s;if(d&&(u=n-u),h&&(l=n-l),u>s||l>s)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:u,k2neg:h,k2:l}}}},en);function Bt(e){try{return We.ExtendedPoint.fromHex(e),!0}catch{return!1}}BigInt(0),St.ProjectivePoint;class Ot{constructor(e){Object.assign(this,e)}encode(){return e.Buffer.from(r.serialize(_t,this))}static decode(e){return r.deserialize(_t,this,e)}static decodeUnchecked(e){return r.deserializeUnchecked(_t,this,e)}}const _t=new Map;var Nt;let Lt=1;class qt extends Ot{constructor(e){if(super({}),this._bn=void 0,function(e){return void 0!==e._bn}(e))this._bn=e._bn;else{if("string"==typeof e){const r=t.decode(e);if(32!=r.length)throw new Error("Invalid public key input");this._bn=new n(r)}else this._bn=new n(e);if(this._bn.byteLength()>32)throw new Error("Invalid public key input")}}static unique(){const e=new qt(Lt);return Lt+=1,new qt(e.toBuffer())}equals(e){return this._bn.eq(e._bn)}toBase58(){return t.encode(this.toBytes())}toJSON(){return this.toBase58()}toBytes(){const e=this.toBuffer();return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}toBuffer(){const n=this._bn.toArrayLike(e.Buffer);if(32===n.length)return n;const t=e.Buffer.alloc(32);return n.copy(t,32-n.length),t}get[Symbol.toStringTag](){return`PublicKey(${this.toString()})`}toString(){return this.toBase58()}static async createWithSeed(n,t,r){const i=e.Buffer.concat([n.toBuffer(),e.Buffer.from(t),r.toBuffer()]),o=en(i);return new qt(o)}static createProgramAddressSync(n,t){let r=e.Buffer.alloc(0);n.forEach((function(n){if(n.length>32)throw new TypeError("Max seed length exceeded");var t;r=e.Buffer.concat([r,(t=n,e.Buffer.isBuffer(t)?t:t instanceof Uint8Array?e.Buffer.from(t.buffer,t.byteOffset,t.byteLength):e.Buffer.from(t))])})),r=e.Buffer.concat([r,t.toBuffer(),e.Buffer.from("ProgramDerivedAddress")]);const i=en(r);if(Bt(i))throw new Error("Invalid seeds, address must fall off the curve");return new qt(i)}static async createProgramAddress(e,n){return this.createProgramAddressSync(e,n)}static findProgramAddressSync(n,t){let r,i=255;for(;0!=i;){try{const o=n.concat(e.Buffer.from([i]));r=this.createProgramAddressSync(o,t)}catch(e){if(e instanceof TypeError)throw e;i--;continue}return[r,i]}throw new Error("Unable to find a viable program address nonce")}static async findProgramAddress(e,n){return this.findProgramAddressSync(e,n)}static isOnCurve(e){return Bt(new qt(e).toBytes())}}Nt=qt,qt.default=new Nt("11111111111111111111111111111111"),_t.set(qt,{kind:"struct",fields:[["_bn","u256"]]}),new qt("BPFLoader1111111111111111111111111111111111");const Dt=(e="publicKey")=>f.blob(32,e),Pt=(n="string")=>{const t=f.struct([f.u32("length"),f.u32("lengthPadding"),f.blob(f.offset(f.u32(),-8),"chars")],n),r=t.decode.bind(t),i=t.encode.bind(t),o=t;return o.decode=(e,n)=>r(e,n).chars.toString(),o.encode=(n,t,r)=>{const o={chars:e.Buffer.from(n,"utf8")};return i(o,t,r)},o.alloc=n=>f.u32().span+f.u32().span+e.Buffer.from(n,"utf8").length,o};e.Buffer.alloc(64).fill(0),new qt("SysvarC1ock11111111111111111111111111111111"),new qt("SysvarEpochSchedu1e111111111111111111111111"),new qt("Sysvar1nstructions1111111111111111111111111"),new qt("SysvarRecentB1ockHashes11111111111111111111"),new qt("SysvarRent111111111111111111111111111111111"),new qt("SysvarRewards111111111111111111111111111111"),new qt("SysvarS1otHashes111111111111111111111111111"),new qt("SysvarS1otHistory11111111111111111111111111"),new qt("SysvarStakeHistory1111111111111111111111111");const Rt=f.nu64("lamportsPerSignature");f.struct([f.u32("version"),f.u32("state"),Dt("authorizedPubkey"),Dt("nonce"),f.struct([Rt],"feeCalculator")]).span;const Ct=($t=8,n=>{const t=i.blob($t,n),{encode:r,decode:s}=(e=>({decode:e.decode.bind(e),encode:e.encode.bind(e)}))(t),a=t;return a.decode=(n,t)=>{const r=s(n,t);return o.toBigIntLE(e.Buffer.from(r))},a.encode=(e,n,t)=>{const i=o.toBufferLE(e,$t);return r(i,n,t)},a});var $t;Object.freeze({Create:{index:0,layout:f.struct([f.u32("instruction"),f.ns64("lamports"),f.ns64("space"),Dt("programId")])},Assign:{index:1,layout:f.struct([f.u32("instruction"),Dt("programId")])},Transfer:{index:2,layout:f.struct([f.u32("instruction"),Ct("lamports")])},CreateWithSeed:{index:3,layout:f.struct([f.u32("instruction"),Dt("base"),Pt("seed"),f.ns64("lamports"),f.ns64("space"),Dt("programId")])},AdvanceNonceAccount:{index:4,layout:f.struct([f.u32("instruction")])},WithdrawNonceAccount:{index:5,layout:f.struct([f.u32("instruction"),f.ns64("lamports")])},InitializeNonceAccount:{index:6,layout:f.struct([f.u32("instruction"),Dt("authorized")])},AuthorizeNonceAccount:{index:7,layout:f.struct([f.u32("instruction"),Dt("authorized")])},Allocate:{index:8,layout:f.struct([f.u32("instruction"),f.ns64("space")])},AllocateWithSeed:{index:9,layout:f.struct([f.u32("instruction"),Dt("base"),Pt("seed"),f.ns64("space"),Dt("programId")])},AssignWithSeed:{index:10,layout:f.struct([f.u32("instruction"),Dt("base"),Pt("seed"),Dt("programId")])},TransferWithSeed:{index:11,layout:f.struct([f.u32("instruction"),Ct("lamports"),Pt("seed"),Dt("programId")])},UpgradeNonceAccount:{index:12,layout:f.struct([f.u32("instruction")])}}),new qt("11111111111111111111111111111111"),new qt("BPFLoader2111111111111111111111111111111111"),f.struct([f.u32("typeIndex"),Ct("deactivationSlot"),f.nu64("lastExtendedSlot"),f.u8("lastExtendedStartIndex"),f.u8(),f.seq(Dt(),f.offset(f.u8(),-1),"authority")]);const Ft=Sn(yn(qt),En(),(e=>new qt(e))),Ut=kn([En(),gn("base64")]),Mt=Sn(yn(e.Buffer),Ut,(n=>e.Buffer.from(n[0],"base64")));function Vt(e){return In([xn({jsonrpc:gn("2.0"),id:En(),result:e}),xn({jsonrpc:gn("2.0"),id:En(),error:xn({code:An(),message:En(),data:vn(pn("any",(()=>!0)))})})])}const jt=Vt(An());function Ht(e){return Sn(Vt(e),jt,(n=>"error"in n?n:{...n,result:ln(n.result,e)}))}function zt(e){return Ht(xn({context:xn({slot:wn()}),value:e}))}function Gt(e){return xn({context:xn({slot:wn()}),value:e})}const Kt=xn({foundation:wn(),foundationTerm:wn(),initial:wn(),taper:wn(),terminal:wn()});Ht(fn(bn(xn({epoch:wn(),effectiveSlot:wn(),amount:wn(),postBalance:wn(),commission:vn(bn(wn()))}))));const Wt=fn(xn({slot:wn(),prioritizationFee:wn()})),Yt=xn({total:wn(),validator:wn(),foundation:wn(),epoch:wn()}),Qt=xn({epoch:wn(),slotIndex:wn(),slotsInEpoch:wn(),absoluteSlot:wn(),blockHeight:vn(wn()),transactionCount:vn(wn())}),Zt=xn({slotsPerEpoch:wn(),leaderScheduleSlotOffset:wn(),warmup:mn(),firstNormalEpoch:wn(),firstNormalSlot:wn()}),Jt=Tn(En(),fn(wn())),Xt=bn(In([xn({}),En()])),er=xn({err:Xt}),nr=gn("receivedSignature");xn({"solana-core":En(),"feature-set":vn(wn())});const tr=xn({program:En(),programId:Ft,parsed:An()}),rr=xn({programId:Ft,accounts:fn(Ft),data:En()});zt(xn({err:bn(In([xn({}),En()])),logs:bn(fn(En())),accounts:vn(bn(fn(bn(xn({executable:mn(),owner:En(),lamports:wn(),data:fn(En()),rentEpoch:vn(wn())}))))),unitsConsumed:vn(wn()),returnData:vn(bn(xn({programId:En(),data:kn([En(),gn("base64")])}))),innerInstructions:vn(bn(fn(xn({index:wn(),instructions:fn(In([tr,rr]))}))))})),zt(xn({byIdentity:Tn(En(),fn(wn())),range:xn({firstSlot:wn(),lastSlot:wn()})})),Ht(Kt),Ht(Yt),Ht(Wt),Ht(Qt),Ht(Zt),Ht(Jt),Ht(wn()),zt(xn({total:wn(),circulating:wn(),nonCirculating:wn(),nonCirculatingAccounts:fn(Ft)}));const ir=xn({amount:En(),uiAmount:bn(wn()),decimals:wn(),uiAmountString:vn(En())});zt(fn(xn({address:Ft,amount:En(),uiAmount:bn(wn()),decimals:wn(),uiAmountString:vn(En())}))),zt(fn(xn({pubkey:Ft,account:xn({executable:mn(),owner:Ft,lamports:wn(),data:Mt,rentEpoch:wn()})})));const or=xn({program:En(),parsed:An(),space:wn()});zt(fn(xn({pubkey:Ft,account:xn({executable:mn(),owner:Ft,lamports:wn(),data:or,rentEpoch:wn()})}))),zt(fn(xn({lamports:wn(),address:Ft})));const sr=xn({executable:mn(),owner:Ft,lamports:wn(),data:Mt,rentEpoch:wn()});xn({pubkey:Ft,account:sr});const ar=Sn(In([yn(e.Buffer),or]),In([Ut,or]),(e=>Array.isArray(e)?ln(e,Mt):e)),cr=xn({executable:mn(),owner:Ft,lamports:wn(),data:ar,rentEpoch:wn()});xn({pubkey:Ft,account:cr}),xn({state:In([gn("active"),gn("inactive"),gn("activating"),gn("deactivating")]),active:wn(),inactive:wn()}),Ht(fn(xn({signature:En(),slot:wn(),err:Xt,memo:bn(En()),blockTime:vn(bn(wn()))}))),Ht(fn(xn({signature:En(),slot:wn(),err:Xt,memo:bn(En()),blockTime:vn(bn(wn()))}))),xn({subscription:wn(),result:Gt(sr)});const ur=xn({pubkey:Ft,account:sr});xn({subscription:wn(),result:Gt(ur)});const lr=xn({parent:wn(),slot:wn(),root:wn()});xn({subscription:wn(),result:lr});const dr=In([xn({type:In([gn("firstShredReceived"),gn("completed"),gn("optimisticConfirmation"),gn("root")]),slot:wn(),timestamp:wn()}),xn({type:gn("createdBank"),parent:wn(),slot:wn(),timestamp:wn()}),xn({type:gn("frozen"),slot:wn(),timestamp:wn(),stats:xn({numTransactionEntries:wn(),numSuccessfulTransactions:wn(),numFailedTransactions:wn(),maxTransactionsPerEntry:wn()})}),xn({type:gn("dead"),slot:wn(),timestamp:wn(),err:En()})]);xn({subscription:wn(),result:dr}),xn({subscription:wn(),result:Gt(In([er,nr]))}),xn({subscription:wn(),result:wn()}),xn({pubkey:En(),gossip:bn(En()),tpu:bn(En()),rpc:bn(En()),version:bn(En())});const hr=xn({votePubkey:En(),nodePubkey:En(),activatedStake:wn(),epochVoteAccount:mn(),epochCredits:fn(kn([wn(),wn(),wn()])),commission:wn(),lastVote:wn(),rootSlot:bn(wn())});Ht(xn({current:fn(hr),delinquent:fn(hr)}));const pr=In([gn("processed"),gn("confirmed"),gn("finalized")]),fr=xn({slot:wn(),confirmations:bn(wn()),err:Xt,confirmationStatus:vn(pr)});zt(fn(bn(fr))),Ht(wn());const mr=xn({accountKey:Ft,writableIndexes:fn(wn()),readonlyIndexes:fn(wn())}),yr=xn({signatures:fn(En()),message:xn({accountKeys:fn(En()),header:xn({numRequiredSignatures:wn(),numReadonlySignedAccounts:wn(),numReadonlyUnsignedAccounts:wn()}),instructions:fn(xn({accounts:fn(wn()),data:En(),programIdIndex:wn()})),recentBlockhash:En(),addressTableLookups:vn(fn(mr))})}),gr=xn({pubkey:Ft,signer:mn(),writable:mn(),source:vn(In([gn("transaction"),gn("lookupTable")]))}),br=xn({accountKeys:fn(gr),signatures:fn(En())}),wr=xn({parsed:An(),program:En(),programId:Ft}),vr=xn({accounts:fn(Ft),data:En(),programId:Ft}),Tr=Sn(In([vr,wr]),In([xn({parsed:An(),program:En(),programId:En()}),xn({accounts:fn(En()),data:En(),programId:En()})]),(e=>ln(e,"accounts"in e?vr:wr))),Er=xn({signatures:fn(En()),message:xn({accountKeys:fn(gr),instructions:fn(Tr),recentBlockhash:En(),addressTableLookups:vn(bn(fn(mr)))})}),kr=xn({accountIndex:wn(),mint:En(),owner:vn(En()),programId:vn(En()),uiTokenAmount:ir}),xr=xn({writable:fn(Ft),readonly:fn(Ft)}),Ir=xn({err:Xt,fee:wn(),innerInstructions:vn(bn(fn(xn({index:wn(),instructions:fn(xn({accounts:fn(wn()),data:En(),programIdIndex:wn()}))})))),preBalances:fn(wn()),postBalances:fn(wn()),logMessages:vn(bn(fn(En()))),preTokenBalances:vn(bn(fn(kr))),postTokenBalances:vn(bn(fn(kr))),loadedAddresses:vn(xr),computeUnitsConsumed:vn(wn())}),Ar=xn({err:Xt,fee:wn(),innerInstructions:vn(bn(fn(xn({index:wn(),instructions:fn(Tr)})))),preBalances:fn(wn()),postBalances:fn(wn()),logMessages:vn(bn(fn(En()))),preTokenBalances:vn(bn(fn(kr))),postTokenBalances:vn(bn(fn(kr))),loadedAddresses:vn(xr),computeUnitsConsumed:vn(wn())}),Sr=In([gn(0),gn("legacy")]),Br=xn({pubkey:En(),lamports:wn(),postBalance:bn(wn()),rewardType:bn(En()),commission:vn(bn(wn()))});Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),transactions:fn(xn({transaction:yr,meta:bn(Ir),version:vn(Sr)})),rewards:vn(fn(Br)),blockTime:bn(wn()),blockHeight:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),rewards:vn(fn(Br)),blockTime:bn(wn()),blockHeight:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),transactions:fn(xn({transaction:br,meta:bn(Ir),version:vn(Sr)})),rewards:vn(fn(Br)),blockTime:bn(wn()),blockHeight:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),transactions:fn(xn({transaction:Er,meta:bn(Ar),version:vn(Sr)})),rewards:vn(fn(Br)),blockTime:bn(wn()),blockHeight:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),transactions:fn(xn({transaction:br,meta:bn(Ar),version:vn(Sr)})),rewards:vn(fn(Br)),blockTime:bn(wn()),blockHeight:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),rewards:vn(fn(Br)),blockTime:bn(wn()),blockHeight:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),transactions:fn(xn({transaction:yr,meta:bn(Ir)})),rewards:vn(fn(Br)),blockTime:bn(wn())}))),Ht(bn(xn({blockhash:En(),previousBlockhash:En(),parentSlot:wn(),signatures:fn(En()),blockTime:bn(wn())}))),Ht(bn(xn({slot:wn(),meta:bn(Ir),blockTime:vn(bn(wn())),transaction:yr,version:vn(Sr)}))),Ht(bn(xn({slot:wn(),transaction:Er,meta:bn(Ar),blockTime:vn(bn(wn())),version:vn(Sr)}))),zt(xn({blockhash:En(),lastValidBlockHeight:wn()})),zt(mn());Ht(fn(xn({slot:wn(),numTransactions:wn(),numSlots:wn(),samplePeriodSecs:wn()}))),zt(bn(xn({feeCalculator:xn({lamportsPerSignature:wn()})}))),Ht(En()),Ht(En());const Or=xn({err:Xt,logs:fn(En()),signature:En()});var _r;xn({result:Gt(Or),subscription:wn()}),Object.freeze({CreateLookupTable:{index:0,layout:f.struct([f.u32("instruction"),Ct("recentSlot"),f.u8("bumpSeed")])},FreezeLookupTable:{index:1,layout:f.struct([f.u32("instruction")])},ExtendLookupTable:{index:2,layout:f.struct([f.u32("instruction"),Ct(),f.seq(Dt(),f.offset(f.u32(),-8),"addresses")])},DeactivateLookupTable:{index:3,layout:f.struct([f.u32("instruction")])},CloseLookupTable:{index:4,layout:f.struct([f.u32("instruction")])}}),new qt("AddressLookupTab1e1111111111111111111111111"),Object.freeze({RequestUnits:{index:0,layout:f.struct([f.u8("instruction"),f.u32("units"),f.u32("additionalFee")])},RequestHeapFrame:{index:1,layout:f.struct([f.u8("instruction"),f.u32("bytes")])},SetComputeUnitLimit:{index:2,layout:f.struct([f.u8("instruction"),f.u32("units")])},SetComputeUnitPrice:{index:3,layout:f.struct([f.u8("instruction"),Ct("microLamports")])}}),new qt("ComputeBudget111111111111111111111111111111"),f.struct([f.u8("numSignatures"),f.u8("padding"),f.u16("signatureOffset"),f.u16("signatureInstructionIndex"),f.u16("publicKeyOffset"),f.u16("publicKeyInstructionIndex"),f.u16("messageDataOffset"),f.u16("messageDataSize"),f.u16("messageInstructionIndex")]),new qt("Ed25519SigVerify111111111111111111111111111"),St.utils.isValidPrivateKey,St.getPublicKey,f.struct([f.u8("numSignatures"),f.u16("signatureOffset"),f.u8("signatureInstructionIndex"),f.u16("ethAddressOffset"),f.u8("ethAddressInstructionIndex"),f.u16("messageDataOffset"),f.u16("messageDataSize"),f.u8("messageInstructionIndex"),f.blob(20,"ethAddress"),f.blob(64,"signature"),f.u8("recoveryId")]),new qt("KeccakSecp256k11111111111111111111111111111"),new qt("StakeConfig11111111111111111111111111111111");class Nr{constructor(e,n,t){this.unixTimestamp=void 0,this.epoch=void 0,this.custodian=void 0,this.unixTimestamp=e,this.epoch=n,this.custodian=t}}_r=Nr,Nr.default=new _r(0,0,qt.default),Object.freeze({Initialize:{index:0,layout:f.struct([f.u32("instruction"),((e="authorized")=>f.struct([Dt("staker"),Dt("withdrawer")],e))(),((e="lockup")=>f.struct([f.ns64("unixTimestamp"),f.ns64("epoch"),Dt("custodian")],e))()])},Authorize:{index:1,layout:f.struct([f.u32("instruction"),Dt("newAuthorized"),f.u32("stakeAuthorizationType")])},Delegate:{index:2,layout:f.struct([f.u32("instruction")])},Split:{index:3,layout:f.struct([f.u32("instruction"),f.ns64("lamports")])},Withdraw:{index:4,layout:f.struct([f.u32("instruction"),f.ns64("lamports")])},Deactivate:{index:5,layout:f.struct([f.u32("instruction")])},Merge:{index:7,layout:f.struct([f.u32("instruction")])},AuthorizeWithSeed:{index:8,layout:f.struct([f.u32("instruction"),Dt("newAuthorized"),f.u32("stakeAuthorizationType"),Pt("authoritySeed"),Dt("authorityOwner")])}}),new qt("Stake11111111111111111111111111111111111111"),Object.freeze({InitializeAccount:{index:0,layout:f.struct([f.u32("instruction"),((e="voteInit")=>f.struct([Dt("nodePubkey"),Dt("authorizedVoter"),Dt("authorizedWithdrawer"),f.u8("commission")],e))()])},Authorize:{index:1,layout:f.struct([f.u32("instruction"),Dt("newAuthorized"),f.u32("voteAuthorizationType")])},Withdraw:{index:3,layout:f.struct([f.u32("instruction"),f.ns64("lamports")])},UpdateValidatorIdentity:{index:4,layout:f.struct([f.u32("instruction")])},AuthorizeWithSeed:{index:10,layout:f.struct([f.u32("instruction"),((e="voteAuthorizeWithSeedArgs")=>f.struct([f.u32("voteAuthorizationType"),Dt("currentAuthorityDerivedKeyOwnerPubkey"),Pt("currentAuthorityDerivedKeySeed"),Dt("newAuthorized")],e))()])}}),new qt("Vote111111111111111111111111111111111111111"),new qt("Va1idator1nfo111111111111111111111111111111"),xn({name:En(),website:vn(En()),details:vn(En()),iconUrl:vn(En()),keybaseUsername:vn(En())}),new qt("Vote111111111111111111111111111111111111111"),f.struct([Dt("nodePubkey"),Dt("authorizedWithdrawer"),f.u8("commission"),f.nu64(),f.seq(f.struct([f.nu64("slot"),f.u32("confirmationCount")]),f.offset(f.u32(),-8),"votes"),f.u8("rootSlotValid"),f.nu64("rootSlot"),f.nu64(),f.seq(f.struct([f.nu64("epoch"),Dt("authorizedVoter")]),f.offset(f.u32(),-8),"authorizedVoters"),f.struct([f.seq(f.struct([Dt("authorizedPubkey"),f.nu64("epochOfLastAuthorizedSwitch"),f.nu64("targetEpoch")]),32,"buf"),f.nu64("idx"),f.u8("isEmpty")],"priorVoters"),f.nu64(),f.seq(f.struct([f.nu64("epoch"),f.nu64("credits"),f.nu64("prevCredits")]),f.offset(f.u32(),-8),"epochCredits"),f.struct([f.nu64("slot"),f.nu64("timestamp")],"lastTimestamp")]),new qt("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),new qt("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"),new qt("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");const Lr=new qt("So11111111111111111111111111111111111111112");var qr,Dr;new qt("9pan9bMn5HatX4EJdBwg9VgCa7Uz5HL8N1m5D3NdXejP"),exports.ChainId=void 0,(qr=exports.ChainId||(exports.ChainId={}))[qr.SOON_TESTNET=903]="SOON_TESTNET",qr[qr.SOON=9031]="SOON",exports.chainIdShortNameEnum=void 0,(Dr=exports.chainIdShortNameEnum||(exports.chainIdShortNameEnum={})).SOON_TESTNET="soon-testnet",Dr.SOON="soon";const Pr={[exports.ChainId.SOON_TESTNET]:exports.chainIdShortNameEnum.SOON_TESTNET,[exports.ChainId.SOON]:exports.chainIdShortNameEnum.SOON},Rr=qt.default.toBase58(),Cr=Lr.toBase58(),$r={[exports.ChainId.SOON_TESTNET]:{address:Rr,name:"SOL",decimals:9,symbol:"SOL",wrappedTokenSymbol:"WSOL",wrappedTokenAddress:Cr},[exports.ChainId.SOON]:{address:Rr,name:"Wrapped SOL",decimals:9,symbol:"SOL",wrappedTokenSymbol:"WSOL",wrappedTokenAddress:Cr}},Fr={[exports.ChainId.SOON_TESTNET]:{MULTI_CALL:"",DODO_APPROVE:"",ERC20_HELPER:"",ROUTE_V2_DATA_FETCH:"",ROUTE_V1_DATA_FETCH:"",CALLEE_HELPER:"",DODO_PROXY:"",DODO_DSP_PROXY:"",DODO_DPP_PROXY:"",DODO_MINEV3_PROXY:""},[exports.ChainId.SOON]:{MULTI_CALL:"",DODO_APPROVE:"",ERC20_HELPER:"",ROUTE_V2_DATA_FETCH:"",ROUTE_V1_DATA_FETCH:"",CALLEE_HELPER:"",DODO_PROXY:"",DODO_DSP_PROXY:"",DODO_DPP_PROXY:"",DODO_MINEV3_PROXY:""}},Ur={[exports.ChainId.SOON_TESTNET]:"soon-testnet",[exports.ChainId.SOON]:"soon"};function Mr(e,n,t,r){return new(t||(t=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(e){o(e)}}function a(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var n;e.done?i(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(s,a)}c((r=r.apply(e,n||[])).next())}))}const Vr=JSON;function jr(e,n){if(!Boolean(e))throw new Error(n)}function Hr(e,n){if(!Boolean(e))throw new Error("Unexpected invariant triggered.")}const zr=/\r\n|[\n\r]/g;function Gr(e,n){let t=0,r=1;for(const i of e.body.matchAll(zr)){if("number"==typeof i.index||Hr(!1),i.index>=n)break;t=i.index+i[0].length,r+=1}return{line:r,column:n+1-t}}function Kr(e,n){const t=e.locationOffset.column-1,r="".padStart(t)+e.body,i=n.line-1,o=e.locationOffset.line-1,s=n.line+o,a=1===n.line?t:0,c=n.column+a,u=`${e.name}:${s}:${c}\n`,l=r.split(/\r\n|[\n\r]/g),d=l[i];if(d.length>120){const e=Math.floor(c/80),n=c%80,t=[];for(let e=0;e<d.length;e+=80)t.push(d.slice(e,e+80));return u+Wr([[`${s} |`,t[0]],...t.slice(1,e+1).map((e=>["|",e])),["|","^".padStart(n)],["|",t[e+1]]])}return u+Wr([[s-1+" |",l[i-1]],[`${s} |`,d],["|","^".padStart(c)],[`${s+1} |`,l[i+1]]])}function Wr(e){const n=e.filter((([e,n])=>void 0!==n)),t=Math.max(...n.map((([e])=>e.length)));return n.map((([e,n])=>e.padStart(t)+(n?" "+n:""))).join("\n")}class Yr extends Error{constructor(e,...n){var t,r,i;const{nodes:o,source:s,positions:a,path:c,originalError:u,extensions:l}=function(e){const n=e[0];return null==n||"kind"in n||"length"in n?{nodes:n,source:e[1],positions:e[2],path:e[3],originalError:e[4],extensions:e[5]}:n}(n);super(e),this.name="GraphQLError",this.path=null!=c?c:void 0,this.originalError=null!=u?u:void 0,this.nodes=Qr(Array.isArray(o)?o:o?[o]:void 0);const d=Qr(null===(t=this.nodes)||void 0===t?void 0:t.map((e=>e.loc)).filter((e=>null!=e)));this.source=null!=s?s:null==d||null===(r=d[0])||void 0===r?void 0:r.source,this.positions=null!=a?a:null==d?void 0:d.map((e=>e.start)),this.locations=a&&s?a.map((e=>Gr(s,e))):null==d?void 0:d.map((e=>Gr(e.source,e.start)));const h="object"==typeof(p=null==u?void 0:u.extensions)&&null!==p?null==u?void 0:u.extensions:void 0;var p;this.extensions=null!==(i=null!=l?l:h)&&void 0!==i?i:Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),null!=u&&u.stack?Object.defineProperty(this,"stack",{value:u.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,Yr):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return"GraphQLError"}toString(){let e=this.message;if(this.nodes)for(const t of this.nodes)t.loc&&(e+="\n\n"+Kr((n=t.loc).source,Gr(n.source,n.start)));else if(this.source&&this.locations)for(const n of this.locations)e+="\n\n"+Kr(this.source,n);var n;return e}toJSON(){const e={message:this.message};return null!=this.locations&&(e.locations=this.locations),null!=this.path&&(e.path=this.path),null!=this.extensions&&Object.keys(this.extensions).length>0&&(e.extensions=this.extensions),e}}function Qr(e){return void 0===e||0===e.length?void 0:e}function Zr(e,n,t){return new Yr(`Syntax Error: ${t}`,{source:e,positions:[n]})}class Jr{constructor(e,n,t){this.start=e.start,this.end=n.end,this.startToken=e,this.endToken=n,this.source=t}get[Symbol.toStringTag](){return"Location"}toJSON(){return{start:this.start,end:this.end}}}class Xr{constructor(e,n,t,r,i,o){this.kind=e,this.start=n,this.end=t,this.line=r,this.column=i,this.value=o,this.prev=null,this.next=null}get[Symbol.toStringTag](){return"Token"}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}}const ei={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["description","directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","interfaces","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","interfaces","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},ni=new Set(Object.keys(ei));function ti(e){const n=null==e?void 0:e.kind;return"string"==typeof n&&ni.has(n)}var ri,ii,oi,si;function ai(e){return 9===e||32===e}function ci(e){return e>=48&&e<=57}function ui(e){return e>=97&&e<=122||e>=65&&e<=90}function li(e){return ui(e)||95===e}function di(e){return ui(e)||ci(e)||95===e}function hi(e){var n;let t=Number.MAX_SAFE_INTEGER,r=null,i=-1;for(let n=0;n<e.length;++n){var o;const s=e[n],a=pi(s);a!==s.length&&(r=null!==(o=r)&&void 0!==o?o:n,i=n,0!==n&&a<t&&(t=a))}return e.map(((e,n)=>0===n?e:e.slice(t))).slice(null!==(n=r)&&void 0!==n?n:0,i+1)}function pi(e){let n=0;for(;n<e.length&&ai(e.charCodeAt(n));)++n;return n}!function(e){e.QUERY="query",e.MUTATION="mutation",e.SUBSCRIPTION="subscription"}(ri||(ri={})),function(e){e.QUERY="QUERY",e.MUTATION="MUTATION",e.SUBSCRIPTION="SUBSCRIPTION",e.FIELD="FIELD",e.FRAGMENT_DEFINITION="FRAGMENT_DEFINITION",e.FRAGMENT_SPREAD="FRAGMENT_SPREAD",e.INLINE_FRAGMENT="INLINE_FRAGMENT",e.VARIABLE_DEFINITION="VARIABLE_DEFINITION",e.SCHEMA="SCHEMA",e.SCALAR="SCALAR",e.OBJECT="OBJECT",e.FIELD_DEFINITION="FIELD_DEFINITION",e.ARGUMENT_DEFINITION="ARGUMENT_DEFINITION",e.INTERFACE="INTERFACE",e.UNION="UNION",e.ENUM="ENUM",e.ENUM_VALUE="ENUM_VALUE",e.INPUT_OBJECT="INPUT_OBJECT",e.INPUT_FIELD_DEFINITION="INPUT_FIELD_DEFINITION"}(ii||(ii={})),function(e){e.NAME="Name",e.DOCUMENT="Document",e.OPERATION_DEFINITION="OperationDefinition",e.VARIABLE_DEFINITION="VariableDefinition",e.SELECTION_SET="SelectionSet",e.FIELD="Field",e.ARGUMENT="Argument",e.FRAGMENT_SPREAD="FragmentSpread",e.INLINE_FRAGMENT="InlineFragment",e.FRAGMENT_DEFINITION="FragmentDefinition",e.VARIABLE="Variable",e.INT="IntValue",e.FLOAT="FloatValue",e.STRING="StringValue",e.BOOLEAN="BooleanValue",e.NULL="NullValue",e.ENUM="EnumValue",e.LIST="ListValue",e.OBJECT="ObjectValue",e.OBJECT_FIELD="ObjectField",e.DIRECTIVE="Directive",e.NAMED_TYPE="NamedType",e.LIST_TYPE="ListType",e.NON_NULL_TYPE="NonNullType",e.SCHEMA_DEFINITION="SchemaDefinition",e.OPERATION_TYPE_DEFINITION="OperationTypeDefinition",e.SCALAR_TYPE_DEFINITION="ScalarTypeDefinition",e.OBJECT_TYPE_DEFINITION="ObjectTypeDefinition",e.FIELD_DEFINITION="FieldDefinition",e.INPUT_VALUE_DEFINITION="InputValueDefinition",e.INTERFACE_TYPE_DEFINITION="InterfaceTypeDefinition",e.UNION_TYPE_DEFINITION="UnionTypeDefinition",e.ENUM_TYPE_DEFINITION="EnumTypeDefinition",e.ENUM_VALUE_DEFINITION="EnumValueDefinition",e.INPUT_OBJECT_TYPE_DEFINITION="InputObjectTypeDefinition",e.DIRECTIVE_DEFINITION="DirectiveDefinition",e.SCHEMA_EXTENSION="SchemaExtension",e.SCALAR_TYPE_EXTENSION="ScalarTypeExtension",e.OBJECT_TYPE_EXTENSION="ObjectTypeExtension",e.INTERFACE_TYPE_EXTENSION="InterfaceTypeExtension",e.UNION_TYPE_EXTENSION="UnionTypeExtension",e.ENUM_TYPE_EXTENSION="EnumTypeExtension",e.INPUT_OBJECT_TYPE_EXTENSION="InputObjectTypeExtension"}(oi||(oi={})),function(e){e.SOF="<SOF>",e.EOF="<EOF>",e.BANG="!",e.DOLLAR="$",e.AMP="&",e.PAREN_L="(",e.PAREN_R=")",e.SPREAD="...",e.COLON=":",e.EQUALS="=",e.AT="@",e.BRACKET_L="[",e.BRACKET_R="]",e.BRACE_L="{",e.PIPE="|",e.BRACE_R="}",e.NAME="Name",e.INT="Int",e.FLOAT="Float",e.STRING="String",e.BLOCK_STRING="BlockString",e.COMMENT="Comment"}(si||(si={}));class fi{constructor(e){const n=new Xr(si.SOF,0,0,0,0);this.source=e,this.lastToken=n,this.token=n,this.line=1,this.lineStart=0}get[Symbol.toStringTag](){return"Lexer"}advance(){this.lastToken=this.token;return this.token=this.lookahead()}lookahead(){let e=this.token;if(e.kind!==si.EOF)do{if(e.next)e=e.next;else{const n=Ti(this,e.end);e.next=n,n.prev=e,e=n}}while(e.kind===si.COMMENT);return e}}function mi(e){return e>=0&&e<=55295||e>=57344&&e<=1114111}function yi(e,n){return gi(e.charCodeAt(n))&&bi(e.charCodeAt(n+1))}function gi(e){return e>=55296&&e<=56319}function bi(e){return e>=56320&&e<=57343}function wi(e,n){const t=e.source.body.codePointAt(n);if(void 0===t)return si.EOF;if(t>=32&&t<=126){const e=String.fromCodePoint(t);return'"'===e?"'\"'":`"${e}"`}return"U+"+t.toString(16).toUpperCase().padStart(4,"0")}function vi(e,n,t,r,i){const o=e.line,s=1+t-e.lineStart;return new Xr(n,t,r,o,s,i)}function Ti(e,n){const t=e.source.body,r=t.length;let i=n;for(;i<r;){const n=t.charCodeAt(i);switch(n){case 65279:case 9:case 32:case 44:++i;continue;case 10:++i,++e.line,e.lineStart=i;continue;case 13:10===t.charCodeAt(i+1)?i+=2:++i,++e.line,e.lineStart=i;continue;case 35:return Ei(e,i);case 33:return vi(e,si.BANG,i,i+1);case 36:return vi(e,si.DOLLAR,i,i+1);case 38:return vi(e,si.AMP,i,i+1);case 40:return vi(e,si.PAREN_L,i,i+1);case 41:return vi(e,si.PAREN_R,i,i+1);case 46:if(46===t.charCodeAt(i+1)&&46===t.charCodeAt(i+2))return vi(e,si.SPREAD,i,i+3);break;case 58:return vi(e,si.COLON,i,i+1);case 61:return vi(e,si.EQUALS,i,i+1);case 64:return vi(e,si.AT,i,i+1);case 91:return vi(e,si.BRACKET_L,i,i+1);case 93:return vi(e,si.BRACKET_R,i,i+1);case 123:return vi(e,si.BRACE_L,i,i+1);case 124:return vi(e,si.PIPE,i,i+1);case 125:return vi(e,si.BRACE_R,i,i+1);case 34:return 34===t.charCodeAt(i+1)&&34===t.charCodeAt(i+2)?Ni(e,i):Ii(e,i)}if(ci(n)||45===n)return ki(e,i,n);if(li(n))return Li(e,i);throw Zr(e.source,i,39===n?"Unexpected single quote character ('), did you mean to use a double quote (\")?":mi(n)||yi(t,i)?`Unexpected character: ${wi(e,i)}.`:`Invalid character: ${wi(e,i)}.`)}return vi(e,si.EOF,r,r)}function Ei(e,n){const t=e.source.body,r=t.length;let i=n+1;for(;i<r;){const e=t.charCodeAt(i);if(10===e||13===e)break;if(mi(e))++i;else{if(!yi(t,i))break;i+=2}}return vi(e,si.COMMENT,n,i,t.slice(n+1,i))}function ki(e,n,t){const r=e.source.body;let i=n,o=t,s=!1;if(45===o&&(o=r.charCodeAt(++i)),48===o){if(o=r.charCodeAt(++i),ci(o))throw Zr(e.source,i,`Invalid number, unexpected digit after 0: ${wi(e,i)}.`)}else i=xi(e,i,o),o=r.charCodeAt(i);if(46===o&&(s=!0,o=r.charCodeAt(++i),i=xi(e,i,o),o=r.charCodeAt(i)),69!==o&&101!==o||(s=!0,o=r.charCodeAt(++i),43!==o&&45!==o||(o=r.charCodeAt(++i)),i=xi(e,i,o),o=r.charCodeAt(i)),46===o||li(o))throw Zr(e.source,i,`Invalid number, expected digit but got: ${wi(e,i)}.`);return vi(e,s?si.FLOAT:si.INT,n,i,r.slice(n,i))}function xi(e,n,t){if(!ci(t))throw Zr(e.source,n,`Invalid number, expected digit but got: ${wi(e,n)}.`);const r=e.source.body;let i=n+1;for(;ci(r.charCodeAt(i));)++i;return i}function Ii(e,n){const t=e.source.body,r=t.length;let i=n+1,o=i,s="";for(;i<r;){const r=t.charCodeAt(i);if(34===r)return s+=t.slice(o,i),vi(e,si.STRING,n,i+1,s);if(92!==r){if(10===r||13===r)break;if(mi(r))++i;else{if(!yi(t,i))throw Zr(e.source,i,`Invalid character within String: ${wi(e,i)}.`);i+=2}}else{s+=t.slice(o,i);const n=117===t.charCodeAt(i+1)?123===t.charCodeAt(i+2)?Ai(e,i):Si(e,i):_i(e,i);s+=n.value,i+=n.size,o=i}}throw Zr(e.source,i,"Unterminated string.")}function Ai(e,n){const t=e.source.body;let r=0,i=3;for(;i<12;){const e=t.charCodeAt(n+i++);if(125===e){if(i<5||!mi(r))break;return{value:String.fromCodePoint(r),size:i}}if(r=r<<4|Oi(e),r<0)break}throw Zr(e.source,n,`Invalid Unicode escape sequence: "${t.slice(n,n+i)}".`)}function Si(e,n){const t=e.source.body,r=Bi(t,n+2);if(mi(r))return{value:String.fromCodePoint(r),size:6};if(gi(r)&&92===t.charCodeAt(n+6)&&117===t.charCodeAt(n+7)){const e=Bi(t,n+8);if(bi(e))return{value:String.fromCodePoint(r,e),size:12}}throw Zr(e.source,n,`Invalid Unicode escape sequence: "${t.slice(n,n+6)}".`)}function Bi(e,n){return Oi(e.charCodeAt(n))<<12|Oi(e.charCodeAt(n+1))<<8|Oi(e.charCodeAt(n+2))<<4|Oi(e.charCodeAt(n+3))}function Oi(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function _i(e,n){const t=e.source.body;switch(t.charCodeAt(n+1)){case 34:return{value:'"',size:2};case 92:return{value:"\\",size:2};case 47:return{value:"/",size:2};case 98:return{value:"\b",size:2};case 102:return{value:"\f",size:2};case 110:return{value:"\n",size:2};case 114:return{value:"\r",size:2};case 116:return{value:"\t",size:2}}throw Zr(e.source,n,`Invalid character escape sequence: "${t.slice(n,n+2)}".`)}function Ni(e,n){const t=e.source.body,r=t.length;let i=e.lineStart,o=n+3,s=o,a="";const c=[];for(;o<r;){const r=t.charCodeAt(o);if(34===r&&34===t.charCodeAt(o+1)&&34===t.charCodeAt(o+2)){a+=t.slice(s,o),c.push(a);const r=vi(e,si.BLOCK_STRING,n,o+3,hi(c).join("\n"));return e.line+=c.length-1,e.lineStart=i,r}if(92!==r||34!==t.charCodeAt(o+1)||34!==t.charCodeAt(o+2)||34!==t.charCodeAt(o+3))if(10!==r&&13!==r)if(mi(r))++o;else{if(!yi(t,o))throw Zr(e.source,o,`Invalid character within String: ${wi(e,o)}.`);o+=2}else a+=t.slice(s,o),c.push(a),13===r&&10===t.charCodeAt(o+1)?o+=2:++o,a="",s=o,i=o;else a+=t.slice(s,o),s=o+1,o+=4}throw Zr(e.source,o,"Unterminated string.")}function Li(e,n){const t=e.source.body,r=t.length;let i=n+1;for(;i<r;){if(!di(t.charCodeAt(i)))break;++i}return vi(e,si.NAME,n,i,t.slice(n,i))}const qi=10,Di=2;function Pi(e){return Ri(e,[])}function Ri(e,n){switch(typeof e){case"string":return JSON.stringify(e);case"function":return e.name?`[function ${e.name}]`:"[function]";case"object":return function(e,n){if(null===e)return"null";if(n.includes(e))return"[Circular]";const t=[...n,e];if(function(e){return"function"==typeof e.toJSON}(e)){const n=e.toJSON();if(n!==e)return"string"==typeof n?n:Ri(n,t)}else if(Array.isArray(e))return function(e,n){if(0===e.length)return"[]";if(n.length>Di)return"[Array]";const t=Math.min(qi,e.length),r=e.length-t,i=[];for(let r=0;r<t;++r)i.push(Ri(e[r],n));1===r?i.push("... 1 more item"):r>1&&i.push(`... ${r} more items`);return"["+i.join(", ")+"]"}(e,t);return function(e,n){const t=Object.entries(e);if(0===t.length)return"{}";if(n.length>Di)return"["+function(e){const n=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if("Object"===n&&"function"==typeof e.constructor){const n=e.constructor.name;if("string"==typeof n&&""!==n)return n}return n}(e)+"]";const r=t.map((([e,t])=>e+": "+Ri(t,n)));return"{ "+r.join(", ")+" }"}(e,t)}(e,n);default:return String(e)}}const Ci=globalThis.process&&"production"===globalThis.process.env.NODE_ENV?function(e,n){return e instanceof n}:function(e,n){if(e instanceof n)return!0;if("object"==typeof e&&null!==e){var t;const r=n.prototype[Symbol.toStringTag];if(r===(Symbol.toStringTag in e?e[Symbol.toStringTag]:null===(t=e.constructor)||void 0===t?void 0:t.name)){const n=Pi(e);throw new Error(`Cannot use ${r} "${n}" from another module or realm.\n\nEnsure that there is only one instance of "graphql" in the node_modules\ndirectory. If different versions of "graphql" are the dependencies of other\nrelied on modules, use "resolutions" to ensure only one version is installed.\n\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\n\nDuplicate "graphql" modules cannot be used at the same time since different\nversions may have different capabilities and behavior. The data from one\nversion used in the function from another could produce confusing and\nspurious results.`)}}return!1};class $i{constructor(e,n="GraphQL request",t={line:1,column:1}){"string"==typeof e||jr(!1,`Body must be a string. Received: ${Pi(e)}.`),this.body=e,this.name=n,this.locationOffset=t,this.locationOffset.line>0||jr(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||jr(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}}class Fi{constructor(e,n={}){const t=function(e){return Ci(e,$i)}(e)?e:new $i(e);this._lexer=new fi(t),this._options=n,this._tokenCounter=0}parseName(){const e=this.expectToken(si.NAME);return this.node(e,{kind:oi.NAME,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:oi.DOCUMENT,definitions:this.many(si.SOF,this.parseDefinition,si.EOF)})}parseDefinition(){if(this.peek(si.BRACE_L))return this.parseOperationDefinition();const e=this.peekDescription(),n=e?this._lexer.lookahead():this._lexer.token;if(n.kind===si.NAME){switch(n.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}if(e)throw Zr(this._lexer.source,this._lexer.token.start,"Unexpected description, descriptions are supported only on type definitions.");switch(n.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"extend":return this.parseTypeSystemExtension()}}throw this.unexpected(n)}parseOperationDefinition(){const e=this._lexer.token;if(this.peek(si.BRACE_L))return this.node(e,{kind:oi.OPERATION_DEFINITION,operation:ri.QUERY,name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet()});const n=this.parseOperationType();let t;return this.peek(si.NAME)&&(t=this.parseName()),this.node(e,{kind:oi.OPERATION_DEFINITION,operation:n,name:t,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){const e=this.expectToken(si.NAME);switch(e.value){case"query":return ri.QUERY;case"mutation":return ri.MUTATION;case"subscription":return ri.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(si.PAREN_L,this.parseVariableDefinition,si.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:oi.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(si.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(si.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){const e=this._lexer.token;return this.expectToken(si.DOLLAR),this.node(e,{kind:oi.VARIABLE,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:oi.SELECTION_SET,selections:this.many(si.BRACE_L,this.parseSelection,si.BRACE_R)})}parseSelection(){return this.peek(si.SPREAD)?this.parseFragment():this.parseField()}parseField(){const e=this._lexer.token,n=this.parseName();let t,r;return this.expectOptionalToken(si.COLON)?(t=n,r=this.parseName()):r=n,this.node(e,{kind:oi.FIELD,alias:t,name:r,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(si.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){const n=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(si.PAREN_L,n,si.PAREN_R)}parseArgument(e=!1){const n=this._lexer.token,t=this.parseName();return this.expectToken(si.COLON),this.node(n,{kind:oi.ARGUMENT,name:t,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragment(){const e=this._lexer.token;this.expectToken(si.SPREAD);const n=this.expectOptionalKeyword("on");return!n&&this.peek(si.NAME)?this.node(e,{kind:oi.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1)}):this.node(e,{kind:oi.INLINE_FRAGMENT,typeCondition:n?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){const e=this._lexer.token;return this.expectKeyword("fragment"),!0===this._options.allowLegacyFragmentVariables?this.node(e,{kind:oi.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:oi.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if("on"===this._lexer.token.value)throw this.unexpected();return this.parseName()}parseValueLiteral(e){const n=this._lexer.token;switch(n.kind){case si.BRACKET_L:return this.parseList(e);case si.BRACE_L:return this.parseObject(e);case si.INT:return this.advanceLexer(),this.node(n,{kind:oi.INT,value:n.value});case si.FLOAT:return this.advanceLexer(),this.node(n,{kind:oi.FLOAT,value:n.value});case si.STRING:case si.BLOCK_STRING:return this.parseStringLiteral();case si.NAME:switch(this.advanceLexer(),n.value){case"true":return this.node(n,{kind:oi.BOOLEAN,value:!0});case"false":return this.node(n,{kind:oi.BOOLEAN,value:!1});case"null":return this.node(n,{kind:oi.NULL});default:return this.node(n,{kind:oi.ENUM,value:n.value})}case si.DOLLAR:if(e){if(this.expectToken(si.DOLLAR),this._lexer.token.kind===si.NAME){const e=this._lexer.token.value;throw Zr(this._lexer.source,n.start,`Unexpected variable "$${e}" in constant value.`)}throw this.unexpected(n)}return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){const e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:oi.STRING,value:e.value,block:e.kind===si.BLOCK_STRING})}parseList(e){return this.node(this._lexer.token,{kind:oi.LIST,values:this.any(si.BRACKET_L,(()=>this.parseValueLiteral(e)),si.BRACKET_R)})}parseObject(e){return this.node(this._lexer.token,{kind:oi.OBJECT,fields:this.any(si.BRACE_L,(()=>this.parseObjectField(e)),si.BRACE_R)})}parseObjectField(e){const n=this._lexer.token,t=this.parseName();return this.expectToken(si.COLON),this.node(n,{kind:oi.OBJECT_FIELD,name:t,value:this.parseValueLiteral(e)})}parseDirectives(e){const n=[];for(;this.peek(si.AT);)n.push(this.parseDirective(e));return n}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){const n=this._lexer.token;return this.expectToken(si.AT),this.node(n,{kind:oi.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){const e=this._lexer.token;let n;if(this.expectOptionalToken(si.BRACKET_L)){const t=this.parseTypeReference();this.expectToken(si.BRACKET_R),n=this.node(e,{kind:oi.LIST_TYPE,type:t})}else n=this.parseNamedType();return this.expectOptionalToken(si.BANG)?this.node(e,{kind:oi.NON_NULL_TYPE,type:n}):n}parseNamedType(){return this.node(this._lexer.token,{kind:oi.NAMED_TYPE,name:this.parseName()})}peekDescription(){return this.peek(si.STRING)||this.peek(si.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("schema");const t=this.parseConstDirectives(),r=this.many(si.BRACE_L,this.parseOperationTypeDefinition,si.BRACE_R);return this.node(e,{kind:oi.SCHEMA_DEFINITION,description:n,directives:t,operationTypes:r})}parseOperationTypeDefinition(){const e=this._lexer.token,n=this.parseOperationType();this.expectToken(si.COLON);const t=this.parseNamedType();return this.node(e,{kind:oi.OPERATION_TYPE_DEFINITION,operation:n,type:t})}parseScalarTypeDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("scalar");const t=this.parseName(),r=this.parseConstDirectives();return this.node(e,{kind:oi.SCALAR_TYPE_DEFINITION,description:n,name:t,directives:r})}parseObjectTypeDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("type");const t=this.parseName(),r=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:oi.OBJECT_TYPE_DEFINITION,description:n,name:t,interfaces:r,directives:i,fields:o})}parseImplementsInterfaces(){return this.expectOptionalKeyword("implements")?this.delimitedMany(si.AMP,this.parseNamedType):[]}parseFieldsDefinition(){return this.optionalMany(si.BRACE_L,this.parseFieldDefinition,si.BRACE_R)}parseFieldDefinition(){const e=this._lexer.token,n=this.parseDescription(),t=this.parseName(),r=this.parseArgumentDefs();this.expectToken(si.COLON);const i=this.parseTypeReference(),o=this.parseConstDirectives();return this.node(e,{kind:oi.FIELD_DEFINITION,description:n,name:t,arguments:r,type:i,directives:o})}parseArgumentDefs(){return this.optionalMany(si.PAREN_L,this.parseInputValueDef,si.PAREN_R)}parseInputValueDef(){const e=this._lexer.token,n=this.parseDescription(),t=this.parseName();this.expectToken(si.COLON);const r=this.parseTypeReference();let i;this.expectOptionalToken(si.EQUALS)&&(i=this.parseConstValueLiteral());const o=this.parseConstDirectives();return this.node(e,{kind:oi.INPUT_VALUE_DEFINITION,description:n,name:t,type:r,defaultValue:i,directives:o})}parseInterfaceTypeDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("interface");const t=this.parseName(),r=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),o=this.parseFieldsDefinition();return this.node(e,{kind:oi.INTERFACE_TYPE_DEFINITION,description:n,name:t,interfaces:r,directives:i,fields:o})}parseUnionTypeDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("union");const t=this.parseName(),r=this.parseConstDirectives(),i=this.parseUnionMemberTypes();return this.node(e,{kind:oi.UNION_TYPE_DEFINITION,description:n,name:t,directives:r,types:i})}parseUnionMemberTypes(){return this.expectOptionalToken(si.EQUALS)?this.delimitedMany(si.PIPE,this.parseNamedType):[]}parseEnumTypeDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("enum");const t=this.parseName(),r=this.parseConstDirectives(),i=this.parseEnumValuesDefinition();return this.node(e,{kind:oi.ENUM_TYPE_DEFINITION,description:n,name:t,directives:r,values:i})}parseEnumValuesDefinition(){return this.optionalMany(si.BRACE_L,this.parseEnumValueDefinition,si.BRACE_R)}parseEnumValueDefinition(){const e=this._lexer.token,n=this.parseDescription(),t=this.parseEnumValueName(),r=this.parseConstDirectives();return this.node(e,{kind:oi.ENUM_VALUE_DEFINITION,description:n,name:t,directives:r})}parseEnumValueName(){if("true"===this._lexer.token.value||"false"===this._lexer.token.value||"null"===this._lexer.token.value)throw Zr(this._lexer.source,this._lexer.token.start,`${Ui(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("input");const t=this.parseName(),r=this.parseConstDirectives(),i=this.parseInputFieldsDefinition();return this.node(e,{kind:oi.INPUT_OBJECT_TYPE_DEFINITION,description:n,name:t,directives:r,fields:i})}parseInputFieldsDefinition(){return this.optionalMany(si.BRACE_L,this.parseInputValueDef,si.BRACE_R)}parseTypeSystemExtension(){const e=this._lexer.lookahead();if(e.kind===si.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)}parseSchemaExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");const n=this.parseConstDirectives(),t=this.optionalMany(si.BRACE_L,this.parseOperationTypeDefinition,si.BRACE_R);if(0===n.length&&0===t.length)throw this.unexpected();return this.node(e,{kind:oi.SCHEMA_EXTENSION,directives:n,operationTypes:t})}parseScalarTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");const n=this.parseName(),t=this.parseConstDirectives();if(0===t.length)throw this.unexpected();return this.node(e,{kind:oi.SCALAR_TYPE_EXTENSION,name:n,directives:t})}parseObjectTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");const n=this.parseName(),t=this.parseImplementsInterfaces(),r=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(0===t.length&&0===r.length&&0===i.length)throw this.unexpected();return this.node(e,{kind:oi.OBJECT_TYPE_EXTENSION,name:n,interfaces:t,directives:r,fields:i})}parseInterfaceTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");const n=this.parseName(),t=this.parseImplementsInterfaces(),r=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(0===t.length&&0===r.length&&0===i.length)throw this.unexpected();return this.node(e,{kind:oi.INTERFACE_TYPE_EXTENSION,name:n,interfaces:t,directives:r,fields:i})}parseUnionTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");const n=this.parseName(),t=this.parseConstDirectives(),r=this.parseUnionMemberTypes();if(0===t.length&&0===r.length)throw this.unexpected();return this.node(e,{kind:oi.UNION_TYPE_EXTENSION,name:n,directives:t,types:r})}parseEnumTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");const n=this.parseName(),t=this.parseConstDirectives(),r=this.parseEnumValuesDefinition();if(0===t.length&&0===r.length)throw this.unexpected();return this.node(e,{kind:oi.ENUM_TYPE_EXTENSION,name:n,directives:t,values:r})}parseInputObjectTypeExtension(){const e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");const n=this.parseName(),t=this.parseConstDirectives(),r=this.parseInputFieldsDefinition();if(0===t.length&&0===r.length)throw this.unexpected();return this.node(e,{kind:oi.INPUT_OBJECT_TYPE_EXTENSION,name:n,directives:t,fields:r})}parseDirectiveDefinition(){const e=this._lexer.token,n=this.parseDescription();this.expectKeyword("directive"),this.expectToken(si.AT);const t=this.parseName(),r=this.parseArgumentDefs(),i=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");const o=this.parseDirectiveLocations();return this.node(e,{kind:oi.DIRECTIVE_DEFINITION,description:n,name:t,arguments:r,repeatable:i,locations:o})}parseDirectiveLocations(){return this.delimitedMany(si.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){const e=this._lexer.token,n=this.parseName();if(Object.prototype.hasOwnProperty.call(ii,n.value))return n;throw this.unexpected(e)}node(e,n){return!0!==this._options.noLocation&&(n.loc=new Jr(e,this._lexer.lastToken,this._lexer.source)),n}peek(e){return this._lexer.token.kind===e}expectToken(e){const n=this._lexer.token;if(n.kind===e)return this.advanceLexer(),n;throw Zr(this._lexer.source,n.start,`Expected ${Mi(e)}, found ${Ui(n)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e&&(this.advanceLexer(),!0)}expectKeyword(e){const n=this._lexer.token;if(n.kind!==si.NAME||n.value!==e)throw Zr(this._lexer.source,n.start,`Expected "${e}", found ${Ui(n)}.`);this.advanceLexer()}expectOptionalKeyword(e){const n=this._lexer.token;return n.kind===si.NAME&&n.value===e&&(this.advanceLexer(),!0)}unexpected(e){const n=null!=e?e:this._lexer.token;return Zr(this._lexer.source,n.start,`Unexpected ${Ui(n)}.`)}any(e,n,t){this.expectToken(e);const r=[];for(;!this.expectOptionalToken(t);)r.push(n.call(this));return r}optionalMany(e,n,t){if(this.expectOptionalToken(e)){const e=[];do{e.push(n.call(this))}while(!this.expectOptionalToken(t));return e}return[]}many(e,n,t){this.expectToken(e);const r=[];do{r.push(n.call(this))}while(!this.expectOptionalToken(t));return r}delimitedMany(e,n){this.expectOptionalToken(e);const t=[];do{t.push(n.call(this))}while(this.expectOptionalToken(e));return t}advanceLexer(){const{maxTokens:e}=this._options,n=this._lexer.advance();if(void 0!==e&&n.kind!==si.EOF&&(++this._tokenCounter,this._tokenCounter>e))throw Zr(this._lexer.source,n.start,`Document contains more that ${e} tokens. Parsing aborted.`)}}function Ui(e){const n=e.value;return Mi(e.kind)+(null!=n?` "${n}"`:"")}function Mi(e){return function(e){return e===si.BANG||e===si.DOLLAR||e===si.AMP||e===si.PAREN_L||e===si.PAREN_R||e===si.SPREAD||e===si.COLON||e===si.EQUALS||e===si.AT||e===si.BRACKET_L||e===si.BRACKET_R||e===si.BRACE_L||e===si.PIPE||e===si.BRACE_R}(e)?`"${e}"`:e}const Vi=/[\x00-\x1f\x22\x5c\x7f-\x9f]/g;function ji(e){return Hi[e.charCodeAt(0)]}const Hi=["\\u0000","\\u0001","\\u0002","\\u0003","\\u0004","\\u0005","\\u0006","\\u0007","\\b","\\t","\\n","\\u000B","\\f","\\r","\\u000E","\\u000F","\\u0010","\\u0011","\\u0012","\\u0013","\\u0014","\\u0015","\\u0016","\\u0017","\\u0018","\\u0019","\\u001A","\\u001B","\\u001C","\\u001D","\\u001E","\\u001F","","",'\\"',"","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","\\\\","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","\\u007F","\\u0080","\\u0081","\\u0082","\\u0083","\\u0084","\\u0085","\\u0086","\\u0087","\\u0088","\\u0089","\\u008A","\\u008B","\\u008C","\\u008D","\\u008E","\\u008F","\\u0090","\\u0091","\\u0092","\\u0093","\\u0094","\\u0095","\\u0096","\\u0097","\\u0098","\\u0099","\\u009A","\\u009B","\\u009C","\\u009D","\\u009E","\\u009F"],zi=Object.freeze({});function Gi(e,n){const t=e[n];return"object"==typeof t?t:"function"==typeof t?{enter:t,leave:void 0}:{enter:e.enter,leave:e.leave}}function Ki(e){return function(e,n,t=ei){const r=new Map;for(const e of Object.values(oi))r.set(e,Gi(n,e));let i,o,s,a=Array.isArray(e),c=[e],u=-1,l=[],d=e;const h=[],p=[];do{u++;const e=u===c.length,g=e&&0!==l.length;if(e){if(o=0===p.length?void 0:h[h.length-1],d=s,s=p.pop(),g)if(a){d=d.slice();let e=0;for(const[n,t]of l){const r=n-e;null===t?(d.splice(r,1),e++):d[r]=t}}else{d=Object.defineProperties({},Object.getOwnPropertyDescriptors(d));for(const[e,n]of l)d[e]=n}u=i.index,c=i.keys,l=i.edits,a=i.inArray,i=i.prev}else if(s){if(o=a?u:c[u],d=s[o],null==d)continue;h.push(o)}let b;if(!Array.isArray(d)){var f,m;ti(d)||jr(!1,`Invalid AST Node: ${Pi(d)}.`);const t=e?null===(f=r.get(d.kind))||void 0===f?void 0:f.leave:null===(m=r.get(d.kind))||void 0===m?void 0:m.enter;if(b=null==t?void 0:t.call(n,d,o,s,h,p),b===zi)break;if(!1===b){if(!e){h.pop();continue}}else if(void 0!==b&&(l.push([o,b]),!e)){if(!ti(b)){h.pop();continue}d=b}}var y;void 0===b&&g&&l.push([o,d]),e?h.pop():(i={inArray:a,index:u,keys:c,edits:l,prev:i},a=Array.isArray(d),c=a?d:null!==(y=t[d.kind])&&void 0!==y?y:[],u=-1,l=[],s&&p.push(s),s=d)}while(void 0!==i);return 0!==l.length?l[l.length-1][1]:e}(e,Wi)}const Wi={Name:{leave:e=>e.value},Variable:{leave:e=>"$"+e.name},Document:{leave:e=>Yi(e.definitions,"\n\n")},OperationDefinition:{leave(e){const n=Zi("(",Yi(e.variableDefinitions,", "),")"),t=Yi([e.operation,Yi([e.name,n]),Yi(e.directives," ")]," ");return("query"===t?"":t+" ")+e.selectionSet}},VariableDefinition:{leave:({variable:e,type:n,defaultValue:t,directives:r})=>e+": "+n+Zi(" = ",t)+Zi(" ",Yi(r," "))},SelectionSet:{leave:({selections:e})=>Qi(e)},Field:{leave({alias:e,name:n,arguments:t,directives:r,selectionSet:i}){const o=Zi("",e,": ")+n;let s=o+Zi("(",Yi(t,", "),")");return s.length>80&&(s=o+Zi("(\n",Ji(Yi(t,"\n")),"\n)")),Yi([s,Yi(r," "),i]," ")}},Argument:{leave:({name:e,value:n})=>e+": "+n},FragmentSpread:{leave:({name:e,directives:n})=>"..."+e+Zi(" ",Yi(n," "))},InlineFragment:{leave:({typeCondition:e,directives:n,selectionSet:t})=>Yi(["...",Zi("on ",e),Yi(n," "),t]," ")},FragmentDefinition:{leave:({name:e,typeCondition:n,variableDefinitions:t,directives:r,selectionSet:i})=>`fragment ${e}${Zi("(",Yi(t,", "),")")} on ${n} ${Zi("",Yi(r," ")," ")}`+i},IntValue:{leave:({value:e})=>e},FloatValue:{leave:({value:e})=>e},StringValue:{leave:({value:e,block:n})=>n?function(e,n){const t=e.replace(/"""/g,'\\"""'),r=t.split(/\r\n|[\n\r]/g),i=1===r.length,o=r.length>1&&r.slice(1).every((e=>0===e.length||ai(e.charCodeAt(0)))),s=t.endsWith('\\"""'),a=e.endsWith('"')&&!s,c=e.endsWith("\\"),u=a||c,l=!i||e.length>70||u||o||s;let d="";const h=i&&ai(e.charCodeAt(0));return(l&&!h||o)&&(d+="\n"),d+=t,(l||u)&&(d+="\n"),'"""'+d+'"""'}(e):`"${e.replace(Vi,ji)}"`},BooleanValue:{leave:({value:e})=>e?"true":"false"},NullValue:{leave:()=>"null"},EnumValue:{leave:({value:e})=>e},ListValue:{leave:({values:e})=>"["+Yi(e,", ")+"]"},ObjectValue:{leave:({fields:e})=>"{"+Yi(e,", ")+"}"},ObjectField:{leave:({name:e,value:n})=>e+": "+n},Directive:{leave:({name:e,arguments:n})=>"@"+e+Zi("(",Yi(n,", "),")")},NamedType:{leave:({name:e})=>e},ListType:{leave:({type:e})=>"["+e+"]"},NonNullType:{leave:({type:e})=>e+"!"},SchemaDefinition:{leave:({description:e,directives:n,operationTypes:t})=>Zi("",e,"\n")+Yi(["schema",Yi(n," "),Qi(t)]," ")},OperationTypeDefinition:{leave:({operation:e,type:n})=>e+": "+n},ScalarTypeDefinition:{leave:({description:e,name:n,directives:t})=>Zi("",e,"\n")+Yi(["scalar",n,Yi(t," ")]," ")},ObjectTypeDefinition:{leave:({description:e,name:n,interfaces:t,directives:r,fields:i})=>Zi("",e,"\n")+Yi(["type",n,Zi("implements ",Yi(t," & ")),Yi(r," "),Qi(i)]," ")},FieldDefinition:{leave:({description:e,name:n,arguments:t,type:r,directives:i})=>Zi("",e,"\n")+n+(Xi(t)?Zi("(\n",Ji(Yi(t,"\n")),"\n)"):Zi("(",Yi(t,", "),")"))+": "+r+Zi(" ",Yi(i," "))},InputValueDefinition:{leave:({description:e,name:n,type:t,defaultValue:r,directives:i})=>Zi("",e,"\n")+Yi([n+": "+t,Zi("= ",r),Yi(i," ")]," ")},InterfaceTypeDefinition:{leave:({description:e,name:n,interfaces:t,directives:r,fields:i})=>Zi("",e,"\n")+Yi(["interface",n,Zi("implements ",Yi(t," & ")),Yi(r," "),Qi(i)]," ")},UnionTypeDefinition:{leave:({description:e,name:n,directives:t,types:r})=>Zi("",e,"\n")+Yi(["union",n,Yi(t," "),Zi("= ",Yi(r," | "))]," ")},EnumTypeDefinition:{leave:({description:e,name:n,directives:t,values:r})=>Zi("",e,"\n")+Yi(["enum",n,Yi(t," "),Qi(r)]," ")},EnumValueDefinition:{leave:({description:e,name:n,directives:t})=>Zi("",e,"\n")+Yi([n,Yi(t," ")]," ")},InputObjectTypeDefinition:{leave:({description:e,name:n,directives:t,fields:r})=>Zi("",e,"\n")+Yi(["input",n,Yi(t," "),Qi(r)]," ")},DirectiveDefinition:{leave:({description:e,name:n,arguments:t,repeatable:r,locations:i})=>Zi("",e,"\n")+"directive @"+n+(Xi(t)?Zi("(\n",Ji(Yi(t,"\n")),"\n)"):Zi("(",Yi(t,", "),")"))+(r?" repeatable":"")+" on "+Yi(i," | ")},SchemaExtension:{leave:({directives:e,operationTypes:n})=>Yi(["extend schema",Yi(e," "),Qi(n)]," ")},ScalarTypeExtension:{leave:({name:e,directives:n})=>Yi(["extend scalar",e,Yi(n," ")]," ")},ObjectTypeExtension:{leave:({name:e,interfaces:n,directives:t,fields:r})=>Yi(["extend type",e,Zi("implements ",Yi(n," & ")),Yi(t," "),Qi(r)]," ")},InterfaceTypeExtension:{leave:({name:e,interfaces:n,directives:t,fields:r})=>Yi(["extend interface",e,Zi("implements ",Yi(n," & ")),Yi(t," "),Qi(r)]," ")},UnionTypeExtension:{leave:({name:e,directives:n,types:t})=>Yi(["extend union",e,Yi(n," "),Zi("= ",Yi(t," | "))]," ")},EnumTypeExtension:{leave:({name:e,directives:n,values:t})=>Yi(["extend enum",e,Yi(n," "),Qi(t)]," ")},InputObjectTypeExtension:{leave:({name:e,directives:n,fields:t})=>Yi(["extend input",e,Yi(n," "),Qi(t)]," ")}};function Yi(e,n=""){var t;return null!==(t=null==e?void 0:e.filter((e=>e)).join(n))&&void 0!==t?t:""}function Qi(e){return Zi("{\n",Ji(Yi(e,"\n")),"\n}")}function Zi(e,n,t=""){return null!=n&&""!==n?e+n+t:""}function Ji(e){return Zi(" ",e.replace(/\n/g,"\n "))}function Xi(e){var n;return null!==(n=null==e?void 0:e.some((e=>e.includes("\n"))))&&void 0!==n&&n}const eo=e=>{let n;const t=e.definitions.filter((e=>"OperationDefinition"===e.kind));return 1===t.length&&(n=t[0]?.name?.value),n},no=e=>{if("string"==typeof e){let t;try{const r=new Fi(e,n).parseDocument();t=eo(r)}catch(e){}return{query:e,operationName:t}}var n;const t=eo(e);return{query:Ki(e),operationName:t}};class to extends Error{constructor(e,n){super(`${to.extractMessage(e)}: ${JSON.stringify({response:e,request:n})}`),Object.setPrototypeOf(this,to.prototype),this.response=e,this.request=n,"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,to)}static extractMessage(e){return e.errors?.[0]?.message??`GraphQL Error (Code: ${e.status})`}}const ro=e=>{let n={};return e&&("undefined"!=typeof Headers&&e instanceof Headers||m&&m.Headers&&e instanceof m.Headers?n=(e=>{const n={};return e.forEach(((e,t)=>{n[t]=e})),n})(e):Array.isArray(e)?e.forEach((([e,t])=>{e&&void 0!==t&&(n[e]=t)})):n=e),n},io=e=>e.replace(/([\s,]|#[^\n\r]+)+/g," ").trim(),oo=e=>async n=>{const{url:t,query:r,variables:i,operationName:o,fetch:s,fetchOptions:a,middleware:c}=n,u={...n.headers};let l,d="";"POST"===e?(l=co(r,i,o,a.jsonSerializer),"string"==typeof l&&(u["Content-Type"]="application/json")):d=(e=>{if(!Array.isArray(e.query)){const n=e,t=[`query=${encodeURIComponent(io(n.query))}`];return e.variables&&t.push(`variables=${encodeURIComponent(n.jsonSerializer.stringify(n.variables))}`),n.operationName&&t.push(`operationName=${encodeURIComponent(n.operationName)}`),t.join("&")}if(void 0!==e.variables&&!Array.isArray(e.variables))throw new Error("Cannot create query with given variable type, array expected");const n=e,t=e.query.reduce(((e,t,r)=>(e.push({query:io(t),variables:n.variables?n.jsonSerializer.stringify(n.variables[r]):void 0}),e)),[]);return`query=${encodeURIComponent(n.jsonSerializer.stringify(t))}`})({query:r,variables:i,operationName:o,jsonSerializer:a.jsonSerializer??Vr});const h={method:e,headers:u,body:l,...a};let p=t,f=h;if(c){const e=await Promise.resolve(c({...h,url:t,operationName:o,variables:i})),{url:n,...r}=e;p=n,f=r}return d&&(p=`${p}?${d}`),await s(p,f)};class so{constructor(e,n={}){this.url=e,this.requestConfig=n,this.rawRequest=async(...e)=>{const[n,t,r]=e,i=((e,n,t)=>e.query?e:{query:e,variables:n,requestHeaders:t,signal:void 0})(n,t,r),{headers:o,fetch:s=l,method:a="POST",requestMiddleware:c,responseMiddleware:u,...d}=this.requestConfig,{url:h}=this;void 0!==i.signal&&(d.signal=i.signal);const{operationName:p}=no(i.query);return ao({url:h,query:i.query,variables:i.variables,headers:{...ro(lo(o)),...ro(i.requestHeaders)},operationName:p,fetch:s,method:a,fetchOptions:d,middleware:c}).then((e=>(u&&u(e),e))).catch((e=>{throw u&&u(e),e}))}}async request(e,...n){const[t,r]=n,i=((e,n,t)=>e.document?e:{document:e,variables:n,requestHeaders:t,signal:void 0})(e,t,r),{headers:o,fetch:s=l,method:a="POST",requestMiddleware:c,responseMiddleware:u,...d}=this.requestConfig,{url:h}=this;void 0!==i.signal&&(d.signal=i.signal);const{query:p,operationName:f}=no(i.document);return ao({url:h,query:p,variables:i.variables,headers:{...ro(lo(o)),...ro(i.requestHeaders)},operationName:f,fetch:s,method:a,fetchOptions:d,middleware:c}).then((e=>(u&&u(e),e.data))).catch((e=>{throw u&&u(e),e}))}batchRequests(e,n){const t=((e,n)=>e.documents?e:{documents:e,requestHeaders:n,signal:void 0})(e,n),{headers:r,...i}=this.requestConfig;void 0!==t.signal&&(i.signal=t.signal);const o=t.documents.map((({document:e})=>no(e).query)),s=t.documents.map((({variables:e})=>e));return ao({url:this.url,query:o,variables:s,headers:{...ro(lo(r)),...ro(t.requestHeaders)},operationName:void 0,fetch:this.requestConfig.fetch??l,method:this.requestConfig.method||"POST",fetchOptions:i,middleware:this.requestConfig.requestMiddleware}).then((e=>(this.requestConfig.responseMiddleware&&this.requestConfig.responseMiddleware(e),e.data))).catch((e=>{throw this.requestConfig.responseMiddleware&&this.requestConfig.responseMiddleware(e),e}))}setHeaders(e){return this.requestConfig.headers=e,this}setHeader(e,n){const{headers:t}=this.requestConfig;return t?t[e]=n:this.requestConfig.headers={[e]:n},this}setEndpoint(e){return this.url=e,this}}const ao=async e=>{const{query:n,variables:t,fetchOptions:r}=e,i=oo((e.method??"post").toUpperCase());const o=Array.isArray(e.query),s=await i(e),a=await uo(s,r.jsonSerializer??Vr),c=Array.isArray(a)?!a.some((({data:e})=>!e)):Boolean(a.data),u=Array.isArray(a)||!a.errors||Array.isArray(a.errors)&&!a.errors.length||"all"===r.errorPolicy||"ignore"===r.errorPolicy;if(s.ok&&u&&c){const{errors:e,...n}=(Array.isArray(a),a),t="ignore"===r.errorPolicy?n:a;return{...o?{data:t}:t,headers:s.headers,status:s.status}}throw new to({..."string"==typeof a?{error:a}:a,status:s.status,headers:s.headers},{query:n,variables:t})},co=(e,n,t,r)=>{const i=r??Vr;if(!Array.isArray(e))return i.stringify({query:e,variables:n,operationName:t});if(void 0!==n&&!Array.isArray(n))throw new Error("Cannot create request body with given variable type, array expected");const o=e.reduce(((e,t,r)=>(e.push({query:t,variables:n?n[r]:void 0}),e)),[]);return i.stringify(o)},uo=async(e,n)=>{let t;return e.headers.forEach(((e,n)=>{"content-type"===n.toLowerCase()&&(t=e)})),t&&(t.toLowerCase().startsWith("application/json")||t.toLowerCase().startsWith("application/graphql+json")||t.toLowerCase().startsWith("application/graphql-response+json"))?n.parse(await e.text()):e.text()},lo=e=>"function"==typeof e?e():e,ho={url:"https://api.dodoex.io/frontend-graphql"};const po={host:"https://api.dodoex.io",fetch:l};class fo{constructor(e){const n=Object.assign(Object.assign({},po),e);this.host=n.host,this._getFetch=()=>n.fetch}getUrl(e,n){let t=`${this.host}/${e}`;return n&&(t=`${t}?${h.stringify(n)}`),t}responseProcessor(e){return Mr(this,void 0,void 0,(function*(){if(e.ok){const n=yield e.json();return{response:e,result:n}}throw new Error(`Response ${JSON.stringify(e)} failed`)}))}getJson(e,n,t){return Mr(this,void 0,void 0,(function*(){const r=this.getUrl(e,n),i=this._getFetch(),o=yield i(r,d.merge({method:"GET",headers:{Accept:"application/json","Content-Type":"application/json"}},t));return this.responseProcessor(o)}))}postJson(e,n,t,r){return Mr(this,void 0,void 0,(function*(){const i=this.getUrl(e,t),o=this._getFetch(),s=yield o(i,d.merge({method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:n?JSON.stringify(n):void 0},r));return this.responseProcessor(s)}))}}const mo={getIsV3Mining:e=>["DSP","GSP","LPTOKEN","V3CLASSICAL"].includes(e),singleSideLp:e=>["CLASSICAL","V3CLASSICAL","DPP"].includes(e),canOperateLiquidity:(e,n,t,r)=>!!(e&&(null!=n?n:t)&&r)};class yo extends String{constructor(e,n){super(e),this.value=e,this.__meta__=n}toString(){return this.value}}const go={"\n query FetchErc20SwapCrossChainList($where: Erc20listV2Filter) {\n erc20_swapCrossChainList(where: $where) {\n name\n address\n symbol\n decimals\n slippage\n chainId\n logoImg\n tokenlists {\n name\n status\n }\n domains {\n name\n }\n funcLabels {\n key\n }\n attributeLabels {\n key\n }\n }\n }\n ":new yo("\n query FetchErc20SwapCrossChainList($where: Erc20listV2Filter) {\n erc20_swapCrossChainList(where: $where) {\n name\n address\n symbol\n decimals\n slippage\n chainId\n logoImg\n tokenlists {\n name\n status\n }\n domains {\n name\n }\n funcLabels {\n key\n }\n attributeLabels {\n key\n }\n }\n}\n "),"\n query FetchErc20ForecastSlippage($where: Erc20_extenderc20ExtendV2Filter) {\n erc20_extend_erc20ExtendV2(where: $where) {\n forecastSlippageList {\n forecastSlippage\n forecastValue\n confidenceRatio\n confidenceIntervalUpper\n confidenceIntervalLower\n }\n }\n }\n ":new yo("\n query FetchErc20ForecastSlippage($where: Erc20_extenderc20ExtendV2Filter) {\n erc20_extend_erc20ExtendV2(where: $where) {\n forecastSlippageList {\n forecastSlippage\n forecastValue\n confidenceRatio\n confidenceIntervalUpper\n confidenceIntervalLower\n }\n }\n}\n "),"\n query Amm_getTicksData($where: AmmgetTicksDataInput) {\n amm_getTicksData(where: $where) {\n chain\n poolAddress\n pairType\n ticks {\n id\n poolAddress\n tickIdx\n price0\n price1\n liquidityGross\n liquidityNet\n protocolPosition\n tickArrayLower\n tickArrayUpper\n }\n }\n }\n":new yo("\n query Amm_getTicksData($where: AmmgetTicksDataInput) {\n amm_getTicksData(where: $where) {\n chain\n poolAddress\n pairType\n ticks {\n id\n poolAddress\n tickIdx\n price0\n price1\n liquidityGross\n liquidityNet\n protocolPosition\n tickArrayLower\n tickArrayUpper\n }\n }\n}\n "),"\n query FetchMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n baseApy\n baseLpToken {\n decimals\n address: id\n symbol\n }\n baseToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n address: id\n symbol\n }\n quoteToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ":new yo("\n query FetchMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n baseApy\n baseLpToken {\n decimals\n address: id\n symbol\n }\n baseToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n address: id\n symbol\n }\n quoteToken {\n decimals\n address: id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n address: id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n startTime\n endTime\n }\n totalCount\n chains\n }\n}\n "),"\n query MiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ":new yo("\n query MiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n miningTotalDollar\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n startTime\n endTime\n }\n totalCount\n chains\n }\n}\n "),"\n query MyCreatedMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n participantsNum\n startTime\n endTime\n }\n totalCount\n chains\n }\n }\n ":new yo("\n query MyCreatedMiningList($where: Miningmining_list_filter) {\n mining_list(where: $where) {\n list {\n chainId\n type\n version\n address\n isGSP\n isNewERCMineV3\n baseApy\n baseLpToken {\n decimals\n id\n symbol\n }\n baseToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n endBlock\n miningContractAddress\n baseLpTokenMining\n quoteLpTokenMining\n quoteApy\n quoteLpToken {\n decimals\n id\n symbol\n }\n quoteToken {\n decimals\n id\n price\n symbol\n logoImg\n }\n rewardTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n rewardQuoteTokenInfos {\n apy\n decimals\n id\n price\n logoImg\n rewardNumIndex\n rewardPerBlock\n startBlock\n endBlock\n startTime\n endTime\n symbol\n }\n startBlock\n title\n platform\n blockNumber\n participantsNum\n startTime\n endTime\n }\n totalCount\n chains\n }\n}\n "),"\n query FetchPoolList(\n $first: Int\n $where: Pair_filter\n $orderBy: Pair_orderBy\n ) {\n pairs(\n first: $first\n where: $where\n orderBy: $orderBy\n orderDirection: desc\n ) {\n id\n type\n creator\n owner\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n lastTradePrice\n feeBase\n feeQuote\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n }\n }\n ":new yo("\n query FetchPoolList($first: Int, $where: Pair_filter, $orderBy: Pair_orderBy) {\n pairs(first: $first, where: $where, orderBy: $orderBy, orderDirection: desc) {\n id\n type\n creator\n owner\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n lastTradePrice\n feeBase\n feeQuote\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n }\n}\n "),"\n query FetchLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n currentPage\n pageSize\n totalCount\n lqList {\n id\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n ":new yo("\n query FetchLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n currentPage\n pageSize\n totalCount\n lqList {\n id\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n}\n "),"\n query FetchMyLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n lqList {\n id\n liquidityPositions {\n id\n liquidityTokenBalance\n liquidityTokenInMining\n poolShare\n liquidityUSD\n tokenId\n outOfRange\n priceRange {\n token0LowerPrice\n token0UpperPrice\n token1LowerPrice\n token1UpperPrice\n }\n tickLower {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n tickUpper {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n }\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n ":new yo("\n query FetchMyLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n lqList {\n id\n liquidityPositions {\n id\n liquidityTokenBalance\n liquidityTokenInMining\n poolShare\n liquidityUSD\n tokenId\n outOfRange\n priceRange {\n token0LowerPrice\n token0UpperPrice\n token1LowerPrice\n token1UpperPrice\n }\n tickLower {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n tickUpper {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n }\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n}\n "),"\n query FetchDashboardPairList($where: Dashboardtype_list_filter) {\n dashboard_pairs_list(where: $where) {\n list {\n chainId\n pairAddress\n poolType\n baseReserve\n quoteReserve\n totalFee\n baseAddress\n quoteAddress\n baseSymbol\n quoteSymbol\n tvl\n baseTvl\n quoteTvl\n baseTvlRate\n quoteTvlRate\n }\n }\n }\n ":new yo("\n query FetchDashboardPairList($where: Dashboardtype_list_filter) {\n dashboard_pairs_list(where: $where) {\n list {\n chainId\n pairAddress\n poolType\n baseReserve\n quoteReserve\n totalFee\n baseAddress\n quoteAddress\n baseSymbol\n quoteSymbol\n tvl\n baseTvl\n quoteTvl\n baseTvlRate\n quoteTvlRate\n }\n }\n}\n "),"\n query FetchPool(\n $id: ID!\n $where: Pair_filter\n $liquidityWhere: Liquiditylist_filter\n ) {\n pair(id: $id, where: $where) {\n id\n type\n creator\n owner\n traderCount\n volumeBaseToken\n volumeQuoteToken\n volumeUSD\n feeBase\n feeQuote\n mtFeeRate\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n baseLpToken {\n id\n symbol\n name\n }\n quoteLpToken {\n id\n symbol\n name\n }\n }\n liquidity_list(where: $liquidityWhere) {\n lqList {\n pair {\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n }\n }\n }\n }\n ":new yo("\n query FetchPool($id: ID!, $where: Pair_filter, $liquidityWhere: Liquiditylist_filter) {\n pair(id: $id, where: $where) {\n id\n type\n creator\n owner\n traderCount\n volumeBaseToken\n volumeQuoteToken\n volumeUSD\n feeBase\n feeQuote\n mtFeeRate\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n baseLpToken {\n id\n symbol\n name\n }\n quoteLpToken {\n id\n symbol\n name\n }\n }\n liquidity_list(where: $liquidityWhere) {\n lqList {\n pair {\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n }\n }\n }\n}\n "),"\n query FetchPoolDayData($where: Dashboardday_filter) {\n dashboard_pairs_day_data(where: $where) {\n timestamp\n date\n volumeUsd\n feeUsd\n mtFeeUsd\n tvlUsd\n addresses\n }\n }\n ":new yo("\n query FetchPoolDayData($where: Dashboardday_filter) {\n dashboard_pairs_day_data(where: $where) {\n timestamp\n date\n volumeUsd\n feeUsd\n mtFeeUsd\n tvlUsd\n addresses\n }\n}\n "),"\n query FetchPoolDashboard($where: Dashboardpair_detail_filter) {\n dashboard_pairs_detail(where: $where) {\n fee\n volume\n totalFee\n totalMtFee\n totalVolume\n tvl\n turnover\n liquidity\n baseReserve\n quoteReserve\n baseVolume\n quoteVolume\n basePrice\n quotePrice\n price\n baseFee\n quoteFee\n baseMtFee\n quoteMtFee\n pair\n poolType\n baseVolumeCumulative\n quoteVolumeCumulative\n baseAddress\n baseSymbol\n quoteAddress\n quoteSymbol\n network\n pairAddress\n txes\n txesNear24h\n txUsers\n txUserNear24h\n mtFeeNear24h\n feeNear24h\n }\n }\n ":new yo("\n query FetchPoolDashboard($where: Dashboardpair_detail_filter) {\n dashboard_pairs_detail(where: $where) {\n fee\n volume\n totalFee\n totalMtFee\n totalVolume\n tvl\n turnover\n liquidity\n baseReserve\n quoteReserve\n baseVolume\n quoteVolume\n basePrice\n quotePrice\n price\n baseFee\n quoteFee\n baseMtFee\n quoteMtFee\n pair\n poolType\n baseVolumeCumulative\n quoteVolumeCumulative\n baseAddress\n baseSymbol\n quoteAddress\n quoteSymbol\n network\n pairAddress\n txes\n txesNear24h\n txUsers\n txUserNear24h\n mtFeeNear24h\n feeNear24h\n }\n}\n "),"\n query FetchPoolSwapList(\n $first: Int\n $skip: Int\n $where: Swap_filter\n $orderBy: Swap_orderBy\n $orderDirection: OrderDirection\n ) {\n swaps(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n timestamp\n from\n baseVolume\n quoteVolume\n feeBase\n feeQuote\n fromToken {\n id\n symbol\n name\n decimals\n }\n toToken {\n id\n symbol\n name\n decimals\n }\n amountIn\n amountOut\n }\n }\n ":new yo("\n query FetchPoolSwapList($first: Int, $skip: Int, $where: Swap_filter, $orderBy: Swap_orderBy, $orderDirection: OrderDirection) {\n swaps(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n timestamp\n from\n baseVolume\n quoteVolume\n feeBase\n feeQuote\n fromToken {\n id\n symbol\n name\n decimals\n }\n toToken {\n id\n symbol\n name\n decimals\n }\n amountIn\n amountOut\n }\n}\n "),"\n query FetchLiquidityPositions(\n $id: ID!\n $first: Int\n $skip: Int\n $where: LiquidityPosition_filter\n $miningWhere: LiquidityPosition_filter\n $orderBy: LiquidityPosition_orderBy\n $orderDirection: OrderDirection\n ) {\n balance: liquidityPositions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenBalance\n }\n mining: liquidityPositions(\n first: $first\n skip: $skip\n where: $miningWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenInMining\n }\n pair(id: $id) {\n lastTradePrice\n baseLpToken {\n id\n decimals\n }\n quoteLpToken {\n id\n decimals\n }\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n }\n }\n ":new yo("\n query FetchLiquidityPositions($id: ID!, $first: Int, $skip: Int, $where: LiquidityPosition_filter, $miningWhere: LiquidityPosition_filter, $orderBy: LiquidityPosition_orderBy, $orderDirection: OrderDirection) {\n balance: liquidityPositions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenBalance\n }\n mining: liquidityPositions(\n first: $first\n skip: $skip\n where: $miningWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenInMining\n }\n pair(id: $id) {\n lastTradePrice\n baseLpToken {\n id\n decimals\n }\n quoteLpToken {\n id\n decimals\n }\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n }\n}\n "),"\n query FetchPoolPairList(\n $first: Int\n $baseWhere: Pair_filter\n $quoteWhere: Pair_filter\n $orderBy: Pair_orderBy\n $orderDirection: OrderDirection\n ) {\n basePairs: pairs(\n first: $first\n where: $baseWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n quotePairs: pairs(\n first: $first\n where: $quoteWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n }\n ":new yo("\n query FetchPoolPairList($first: Int, $baseWhere: Pair_filter, $quoteWhere: Pair_filter, $orderBy: Pair_orderBy, $orderDirection: OrderDirection) {\n basePairs: pairs(\n first: $first\n where: $baseWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n quotePairs: pairs(\n first: $first\n where: $quoteWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n}\n "),"\n query FetchUserSwapOrderHistories($where: User_swapswapFilter) {\n user_swap_orderHistories(where: $where) {\n count\n page\n list {\n chainId\n createdAt\n fromAmount\n fromTokenDecimals\n fromTokenPrice\n fromTokenSymbol\n fromTokenAddress\n fromTokenLogoImg\n hash\n status\n toAmount\n toTokenDecimals\n toTokenPrice\n toTokenSymbol\n toTokenAddress\n toTokenLogoImg\n minAmount\n nonce\n extra\n user\n }\n }\n }\n ":new yo("\n query FetchUserSwapOrderHistories($where: User_swapswapFilter) {\n user_swap_orderHistories(where: $where) {\n count\n page\n list {\n chainId\n createdAt\n fromAmount\n fromTokenDecimals\n fromTokenPrice\n fromTokenSymbol\n fromTokenAddress\n fromTokenLogoImg\n hash\n status\n toAmount\n toTokenDecimals\n toTokenPrice\n toTokenSymbol\n toTokenAddress\n toTokenLogoImg\n minAmount\n nonce\n extra\n user\n }\n }\n}\n "),"\n query FetchNoticeCenterTransactionList(\n $where: Notice_centertransactionListFilter\n ) {\n notice_center_transactionList(where: $where) {\n list {\n chainId\n createTime\n extend\n from\n id\n key\n type\n }\n count\n limit\n page\n }\n }\n ":new yo("\n query FetchNoticeCenterTransactionList($where: Notice_centertransactionListFilter) {\n notice_center_transactionList(where: $where) {\n list {\n chainId\n createTime\n extend\n from\n id\n key\n type\n }\n count\n limit\n page\n }\n}\n "),"\n query FetchLiquidityLpPartnerRewards(\n $where: LiquidityLpPartnerRewardsInput\n ) {\n liquidity_getLpPartnerRewards(where: $where) {\n partnerInfos {\n partner\n logo\n introduction\n link\n theme\n sort\n platform\n extra\n }\n partnerRewards {\n chainId\n pool\n partner\n reward\n type\n }\n }\n }\n ":new yo("\n query FetchLiquidityLpPartnerRewards($where: LiquidityLpPartnerRewardsInput) {\n liquidity_getLpPartnerRewards(where: $where) {\n partnerInfos {\n partner\n logo\n introduction\n link\n theme\n sort\n platform\n extra\n }\n partnerRewards {\n chainId\n pool\n partner\n reward\n type\n }\n }\n}\n "),"\n query FetchUserprofileReward($where: UserprofileReward_filter) {\n userprofile_reward(where: $where) {\n name_key\n token_address\n contract_address\n token_symbol\n locking\n version\n merkle {\n index\n amout\n proof\n }\n }\n }\n ":new yo("\n query FetchUserprofileReward($where: UserprofileReward_filter) {\n userprofile_reward(where: $where) {\n name_key\n token_address\n contract_address\n token_symbol\n locking\n version\n merkle {\n index\n amout\n proof\n }\n }\n}\n ")};function bo(e){var n;return null!==(n=go[e])&&void 0!==n?n:{}}const wo=bo("\n query Amm_getTicksData($where: AmmgetTicksDataInput) {\n amm_getTicksData(where: $where) {\n chain\n poolAddress\n pairType\n ticks {\n id\n poolAddress\n tickIdx\n price0\n price1\n liquidityGross\n liquidityNet\n protocolPosition\n tickArrayLower\n tickArrayUpper\n }\n }\n }\n");class vo{}vo.graphql={AllV3TicksDocument:wo},vo.utils=mo,vo.encode={};const To={fetchPoolList:bo("\n query FetchPoolList(\n $first: Int\n $where: Pair_filter\n $orderBy: Pair_orderBy\n ) {\n pairs(\n first: $first\n where: $where\n orderBy: $orderBy\n orderDirection: desc\n ) {\n id\n type\n creator\n owner\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n lastTradePrice\n feeBase\n feeQuote\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n }\n }\n "),fetchLiquidityList:bo("\n query FetchLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n currentPage\n pageSize\n totalCount\n lqList {\n id\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n "),fetchMyLiquidityList:bo("\n query FetchMyLiquidityList($where: Liquiditylist_filter) {\n liquidity_list(where: $where) {\n lqList {\n id\n liquidityPositions {\n id\n liquidityTokenBalance\n liquidityTokenInMining\n poolShare\n liquidityUSD\n tokenId\n outOfRange\n priceRange {\n token0LowerPrice\n token0UpperPrice\n token1LowerPrice\n token1UpperPrice\n }\n tickLower {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n tickUpper {\n id\n tickIdx\n liquidityGross\n liquidityNet\n price0\n price1\n }\n }\n pair {\n id\n chainId\n type\n lpFeeRate\n mtFeeRate\n creator\n baseLpToken {\n id\n }\n quoteLpToken {\n id\n }\n baseToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n quoteToken {\n id\n symbol\n name\n decimals\n logoImg\n }\n tvl\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n volume24H\n }\n }\n }\n }\n "),fetchDashboardPairList:bo("\n query FetchDashboardPairList($where: Dashboardtype_list_filter) {\n dashboard_pairs_list(where: $where) {\n list {\n chainId\n pairAddress\n poolType\n baseReserve\n quoteReserve\n totalFee\n baseAddress\n quoteAddress\n baseSymbol\n quoteSymbol\n tvl\n baseTvl\n quoteTvl\n baseTvlRate\n quoteTvlRate\n }\n }\n }\n "),fetchPool:bo("\n query FetchPool(\n $id: ID!\n $where: Pair_filter\n $liquidityWhere: Liquiditylist_filter\n ) {\n pair(id: $id, where: $where) {\n id\n type\n creator\n owner\n traderCount\n volumeBaseToken\n volumeQuoteToken\n volumeUSD\n feeBase\n feeQuote\n mtFeeRate\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n baseLpToken {\n id\n symbol\n name\n }\n quoteLpToken {\n id\n symbol\n name\n }\n }\n liquidity_list(where: $liquidityWhere) {\n lqList {\n pair {\n apy {\n miningBaseApy\n miningQuoteApy\n transactionBaseApy\n transactionQuoteApy\n }\n miningAddress\n }\n }\n }\n }\n "),fetchPoolDayData:bo("\n query FetchPoolDayData($where: Dashboardday_filter) {\n dashboard_pairs_day_data(where: $where) {\n timestamp\n date\n volumeUsd\n feeUsd\n mtFeeUsd\n tvlUsd\n addresses\n }\n }\n "),fetchPoolDashboard:bo("\n query FetchPoolDashboard($where: Dashboardpair_detail_filter) {\n dashboard_pairs_detail(where: $where) {\n fee\n volume\n totalFee\n totalMtFee\n totalVolume\n tvl\n turnover\n liquidity\n baseReserve\n quoteReserve\n baseVolume\n quoteVolume\n basePrice\n quotePrice\n price\n baseFee\n quoteFee\n baseMtFee\n quoteMtFee\n pair\n poolType\n baseVolumeCumulative\n quoteVolumeCumulative\n baseAddress\n baseSymbol\n quoteAddress\n quoteSymbol\n network\n pairAddress\n txes\n txesNear24h\n txUsers\n txUserNear24h\n mtFeeNear24h\n feeNear24h\n }\n }\n "),fetchPoolSwapList:bo("\n query FetchPoolSwapList(\n $first: Int\n $skip: Int\n $where: Swap_filter\n $orderBy: Swap_orderBy\n $orderDirection: OrderDirection\n ) {\n swaps(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n timestamp\n from\n baseVolume\n quoteVolume\n feeBase\n feeQuote\n fromToken {\n id\n symbol\n name\n decimals\n }\n toToken {\n id\n symbol\n name\n decimals\n }\n amountIn\n amountOut\n }\n }\n "),fetchLiquidityPositions:bo("\n query FetchLiquidityPositions(\n $id: ID!\n $first: Int\n $skip: Int\n $where: LiquidityPosition_filter\n $miningWhere: LiquidityPosition_filter\n $orderBy: LiquidityPosition_orderBy\n $orderDirection: OrderDirection\n ) {\n balance: liquidityPositions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenBalance\n }\n mining: liquidityPositions(\n first: $first\n skip: $skip\n where: $miningWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n liquidityTokenInMining\n }\n pair(id: $id) {\n lastTradePrice\n baseLpToken {\n id\n decimals\n }\n quoteLpToken {\n id\n decimals\n }\n baseToken {\n id\n symbol\n name\n decimals\n }\n quoteToken {\n id\n symbol\n name\n decimals\n }\n }\n }\n "),fetchPoolPairList:bo("\n query FetchPoolPairList(\n $first: Int\n $baseWhere: Pair_filter\n $quoteWhere: Pair_filter\n $orderBy: Pair_orderBy\n $orderDirection: OrderDirection\n ) {\n basePairs: pairs(\n first: $first\n where: $baseWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n quotePairs: pairs(\n first: $first\n where: $quoteWhere\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n id\n type\n creator\n lpFeeRate\n i\n k\n baseReserve\n quoteReserve\n createdAtTimestamp\n lastTradePrice\n volumeUSD\n baseToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n quoteToken {\n id\n symbol\n name\n decimals\n usdPrice\n }\n }\n }\n ")};class Eo{}Eo.graphql=To,Eo.utils=mo;function ko(e){return e&&/^#[a-f\d]{3,6}\s*[0-9]{1,3}%/i.test(e)?(t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})\s*([0-9]{1,3})*%?$/i.exec(e),(n=t?{r:parseInt(t[1],16),g:parseInt(t[2],16),b:parseInt(t[3],16),a:t[4]?Number(t[4])/100:1}:void 0)?`rgba(${n.r}, ${n.g}, ${n.b}, ${n.a})`:n):e;var n,t}var xo;!function(e){e.All="all"}(xo||(xo={}));const Io={fetchErc20SwapCrossList:bo("\n query FetchErc20SwapCrossChainList($where: Erc20listV2Filter) {\n erc20_swapCrossChainList(where: $where) {\n name\n address\n symbol\n decimals\n slippage\n chainId\n logoImg\n tokenlists {\n name\n status\n }\n domains {\n name\n }\n funcLabels {\n key\n }\n attributeLabels {\n key\n }\n }\n }\n "),fetchErc20ForecastSlippage:bo("\n query FetchErc20ForecastSlippage($where: Erc20_extenderc20ExtendV2Filter) {\n erc20_extend_erc20ExtendV2(where: $where) {\n forecastSlippageList {\n forecastSlippage\n forecastValue\n confidenceRatio\n confidenceIntervalUpper\n confidenceIntervalLower\n }\n }\n }\n ")};class Ao{constructor(e){this.restApiRequest=(null==e?void 0:e.restApiRequest)||new fo}getFiatPriceBatch(e,n){return this.restApiRequest.postJson("/frontend-v2-price-api/current/batch",{networks:e.map((e=>Ur[e.chainId])),addresses:e.map((e=>e.address)),symbols:e.map((e=>e.symbol)),isCache:!0},void 0,{headers:{"pass-key":n}})}}Ao.graphql=Io,Ao.utils={},Ao.encode={};const So={fetchNoticeCenterTransactionList:bo("\n query FetchNoticeCenterTransactionList(\n $where: Notice_centertransactionListFilter\n ) {\n notice_center_transactionList(where: $where) {\n list {\n chainId\n createTime\n extend\n from\n id\n key\n type\n }\n count\n limit\n page\n }\n }\n "),fetchLiquidityLpPartnerRewards:bo("\n query FetchLiquidityLpPartnerRewards(\n $where: LiquidityLpPartnerRewardsInput\n ) {\n liquidity_getLpPartnerRewards(where: $where) {\n partnerInfos {\n partner\n logo\n introduction\n link\n theme\n sort\n platform\n extra\n }\n partnerRewards {\n chainId\n pool\n partner\n reward\n type\n }\n }\n }\n "),fetchUserprofileReward:bo("\n query FetchUserprofileReward($where: UserprofileReward_filter) {\n userprofile_reward(where: $where) {\n name_key\n token_address\n contract_address\n token_symbol\n locking\n version\n merkle {\n index\n amout\n proof\n }\n }\n }\n ")};class Bo{constructor(){}}Bo.graphql=So,exports.AMMV3Api=vo,exports.CLMM="SVM_AMMV3",exports.CPMM="SVM_AMMV2",exports.GraphQLRequests=class{constructor(e){const n=Object.assign(Object.assign({},ho),e);this.url=n.url,this.getHeaders=n.getHeaders;const t=new so(this.url,{fetch:n.fetch,requestMiddleware:e=>{const n=new URL(e.url);return e.operationName&&n.searchParams.append("opname",e.operationName),Object.assign(Object.assign({},e),{url:n.toString()})}});this.client=t,this.setHeaders()}setHeaders(){return Mr(this,void 0,void 0,(function*(){var e;const n=yield null===(e=this.getHeaders)||void 0===e?void 0:e.call(this);n&&this.client.setHeaders(n)}))}getData(e,n){return Mr(this,void 0,void 0,(function*(){yield this.setHeaders();return this.client.request(e,n)}))}getQuery(e,...[n]){return{queryKey:["graphql","getQuery",e,n],queryFn:()=>Mr(this,void 0,void 0,(function*(){return yield this.getData(e.toString(),n)}))}}getInfiniteQuery(e,n,...[t]){return{queryKey:["graphql","getInfiniteQuery",n,e,t],queryFn:r=>Mr(this,[r],void 0,(function*({pageParam:r}){return yield this.getData(e.toString(),Object.assign(Object.assign({},t),{where:Object.assign(Object.assign({},null==t?void 0:t.where),{[n]:r})}))}))}}},exports.PoolApi=Eo,exports.RestApiRequests=fo,exports.SOL_MINT_ADDRESS=Rr,exports.SwapWidgetApi=class{constructor(e){this.restApiRequest=(null==e?void 0:e.restApiRequest)||new fo}getWidgetTokenListConfig(e,n){return this.restApiRequest.getJson("/config-center/user/tokenlist/v2",{project:e,apikey:n})}convertConfigToSwapWidgetProps(e){var n,t,r,i,o,s,a,c;const u=[];let l,d=!0,h=!0;if(e.chains.forEach((e=>{e.fromTokens&&(d=!1),e.toTokens&&(h=!1)})),e.chains.forEach((({chainId:e,fromTokens:n,toTokens:t,tokens:r})=>{if(null==r?void 0:r.length){const i=Number(e);[{isAllChain:d,selectTokens:n,side:"from"},{isAllChain:h,selectTokens:t,side:"to"}].forEach((({isAllChain:e,selectTokens:n,side:t})=>{(e||n)&&((null==n?void 0:n.length)?r.forEach((e=>{var r;n.some((n=>n.toLocaleLowerCase()===e.address.toLocaleLowerCase()))&&u.push(Object.assign(Object.assign({logoURI:e.logoImg},e),{chainId:null!==(r=e.chainId)&&void 0!==r?r:i,side:t}))})):r.forEach((e=>{var n;u.push(Object.assign(Object.assign({logoURI:e.logoImg},e),{chainId:null!==(n=e.chainId)&&void 0!==n?n:i,side:t}))})))}))}})),(null==e?void 0:e.style)&&Object.keys(e.style).length){const t=null===(n=null==e?void 0:e.basis)||void 0===n?void 0:n.fontSizeModify;l={palette:{mode:"light",primary:{main:ko(e.style.primary)},secondary:{main:ko(e.style.secondary),contrastText:ko(e.style.secondaryContrast)},error:{main:ko(e.style.error),contrastText:ko(e.style.errorContrast)},warning:{main:ko(e.style.warning)},success:{main:ko(e.style.success)},background:{paper:ko(e.style.background1),paperContrast:ko(e.style.background2),backdrop:ko(e.style.mask),input:ko(e.style.input),tag:ko(e.style.card)},text:{primary:ko(e.style.text1),secondary:ko(e.style.text2),disabled:ko(e.style.textDisable),placeholder:ko(e.style.textPlaceholder)},border:{main:ko(e.style.borderSolid),light:ko(e.style.borderDash),disabled:ko(e.style.borderSolid)}},typography:t?{fontSize:16+t,ht:{fontSize:36+t},h2:{fontSize:32+t},h3:{fontSize:28+t},caption:{fontSize:20+t},h5:{fontSize:18+t},body1:{fontSize:16+t},body2:{fontSize:14+t},h6:{fontSize:12+t},button:{fontSize:16+t}}:void 0}}const p=e.rebateAddress,f=e.rebateRatio,m=e.swapSlippage,y=e.crossChainSlippage,g=null===(t=e.basis)||void 0===t?void 0:t.width,b=null===(r=e.basis)||void 0===r?void 0:r.height,w=null===(i=e.basis)||void 0===i?void 0:i.locale,v=null===(s=null===(o=e.basis)||void 0===o?void 0:o.crossChainSupport)||void 0===s||s,T=null===(a=e.basis)||void 0===a?void 0:a.rpcMap,E=null===(c=e.basis)||void 0===c?void 0:c.noPowerBy;return{tokenList:u,theme:l,rebateAddress:p,rebateRatio:f,swapSlippage:m,bridgeSlippage:y,width:g,height:b,locale:w,crossChain:v,jsonRpcUrlMap:T,noPowerBy:E}}getConfigSwapWidgetProps(e,n){return Mr(this,void 0,void 0,(function*(){var t;const{result:r}=yield this.getWidgetTokenListConfig(e,n),i=r.data;if(!i)throw new Error(null!==(t=r.msg)&&void 0!==t?t:"Error");return{swapWidgetProps:this.convertConfigToSwapWidgetProps(i),configTokenList:i}}))}},exports.SystemApi=Bo,exports.TokenApi=Ao,exports.WSOL_MINT_ADDRESS=Cr,exports.basicTokenMap=$r,exports.chainIdToShortName=Pr,exports.contractConfig=Fr,exports.platformIdMap=Ur;