@myx-trade/sdk 1.0.15 → 1.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-HPGSPCWX.js → chunk-GXRYSS6I.js} +2 -2
- package/dist/{chunk-VIET7HKL.mjs → chunk-OOR4LO2X.mjs} +2 -2
- package/dist/{index-B1YgYP3x.d.mts → index-CBksoBga.d.mts} +5 -4
- package/dist/{index-B1YgYP3x.d.ts → index-CBksoBga.d.ts} +5 -4
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.mjs +1 -1
- package/dist/lp.d.mts +1 -1
- package/dist/lp.d.ts +1 -1
- package/dist/lp.js +1 -1
- package/dist/lp.mjs +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var viem=require('viem'),Mn=require('wretch'),ethersDecodeError=require('ethers-decode-error'),lodashEs=require('lodash-es');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Mn__default=/*#__PURE__*/_interopDefault(Mn);var pn=Object.defineProperty;var Je=t=>{throw TypeError(t)};var le=(t,e)=>{for(var n in e)pn(t,n,{get:e[n],enumerable:true});};var Ye=(t,e,n)=>e.has(t)||Je("Cannot "+n);var $e=(t,e,n)=>(Ye(t,e,"read from private field"),n?n.call(t):e.get(t)),je=(t,e,n)=>e.has(t)?Je("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),Xe=(t,e,n,a)=>(Ye(t,e,"write to private field"),e.set(t,n),n);var Ht={};le(Ht,{claimBasePoolRebate:()=>Ft,claimBasePoolRebates:()=>kt,deposit:()=>Lt,getLpPrice:()=>Vt,getRewards:()=>Qt,previewUserWithdrawData:()=>Nt,withdraw:()=>Wt,withdrawableLpAmount:()=>zt});var Ke=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"DifferentMarket",inputs:[{type:"bytes32",name:"fromPoolId"},{type:"bytes32",name:"toPoolId"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientQuoteIn",inputs:[{type:"uint256",name:"orderId"},{type:"uint256",name:"quoteIn"},{type:"uint256",name:"exchangeDelta"}]},{type:"error",name:"InvalidAmount",inputs:[{type:"uint256",name:"amount"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidLiquidityAmount",inputs:[]},{type:"error",name:"InvalidTpsl",inputs:[{type:"uint256",name:"orderId"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"NotReachedPrice",inputs:[{type:"uint256",name:"orderId"},{type:"uint256",name:"price"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"SamePoolMigration",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"SlippageExceeded",inputs:[{type:"uint256",name:"expected"},{type:"uint256",name:"actual"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"addTpsl",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"poolType"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"cancelTpsl",constant:false,payable:false,inputs:[{type:"uint256",name:"orderId"}],outputs:[]},{type:"function",name:"claimBasePoolRebate",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimBasePoolRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimBasePoolRebates",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimBasePoolRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebate",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebates",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"currentOrderId",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"depositBase",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"depositBase",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"depositQuote",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"depositQuote",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"executeTpsl",constant:false,payable:false,inputs:[{type:"uint256",name:"orderId"},{type:"uint256",name:"quoteInIfNecessary"},{type:"uint256",name:"minOut"}],outputs:[{type:"uint256",name:"baseOut"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"executeTpsl",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"uint256",name:"orderId"},{type:"uint256",name:"quoteInIfNecessary"},{type:"uint256",name:"minOut"}],outputs:[{type:"uint256",name:"baseOut"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getTpslData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"orderId"}],outputs:[{type:"tuple",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint8",name:"poolType"},{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]},{type:"function",name:"getUserTpslOrderIds",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"}],outputs:[{type:"uint256[]"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"migrateLiquidity",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"fromPoolId"},{type:"bytes32",name:"toPoolId"},{type:"uint256",name:"amount"},{type:"uint256",name:"minLpOut"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdrawBase",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]},{type:"function",name:"withdrawBase",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]},{type:"function",name:"withdrawQuote",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]},{type:"function",name:"withdrawQuote",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]}];var Ze=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"BoostFeeClaimFailed",inputs:[]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ExceedMaxExchangeableAmount",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientReturnAmount",inputs:[{type:"uint256",name:"expected"},{type:"uint256",name:"received"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolBoostReserveInsufficient",inputs:[]},{type:"error",name:"PoolOracleFeeCharged",inputs:[]},{type:"error",name:"PoolOracleFeeNotCharged",inputs:[]},{type:"error",name:"PoolOracleFeeNotExisted",inputs:[]},{type:"error",name:"PoolOracleFeeNotSoldOut",inputs:[]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"OracleFeeExchanged",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"quoteAmount",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"address",name:"recipient",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"chargeBoostFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"proposer"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"chargeOracleFeeFromPoolVault",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"poolVault"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"chargeOracleFeeFromPrimer",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"primer"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"claimBoostFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[]},{type:"function",name:"confirmBoostFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"bool",name:"isAllow"}],outputs:[]},{type:"function",name:"exchangeBaseFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"},{type:"bytes",name:"data"}],outputs:[{type:"uint256",name:"baseOut"}]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExchangeableBaseFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"quoteIn"},{type:"uint256",name:"baseOut"}]},{type:"function",name:"getPoolBoostFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"address",name:"proposer"},{type:"uint256",name:"amount"},{type:"bool",name:"isClaimable"}]}]},{type:"function",name:"getPoolOracleFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"address",name:"primer"},{type:"uint8",name:"state"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isBaseFeeSoldOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bool"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"refreshOracleFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdrawOracleFee",constant:false,payable:false,inputs:[{type:"address",name:"token"},{type:"address",name:"to"},{type:"uint256",name:"amount"}],outputs:[]}];var yn=(o=>(o[o.LINEA_SEPOLIA=59141]="LINEA_SEPOLIA",o[o.LINEA_MAINNET=59144]="LINEA_MAINNET",o[o.ARB_TESTNET=421614]="ARB_TESTNET",o[o.ARB_MAINNET=42161]="ARB_MAINNET",o[o.BSC_TESTNET=97]="BSC_TESTNET",o[o.BSC_MAINNET=56]="BSC_MAINNET",o))(yn||{});var ln=[421614,59141,97,42161,59144,56];function et(t){return !!t&&ln.includes(t)}var S=10;var Aa={42161:130n,421614:130n,59144:130n,59141:130n,56:150n,97:150n};var tt={chainInfo:{explorer:"https://sepolia.lineascan.build/",explorerOfTX:"https://sepolia.lineascan.build/tx/",publicJsonRPCUrl:["https://rpc.sepolia.linea.build","https://linea-sepolia.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161"],label:"Linea Sepolia",logoUrl:"",faucetUrl:"",chainSymbol:"Linea",gasPriceRatio:1.3,gasLimitRatio:1.2,gasAmountRatio:2,gasFeeReservedForCollateral:(.525+1)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var nt={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://sepolia-rollup.arbitrum.io/rpc"],label:" Arbitrum Sepolia",chainSymbol:"Arb Sepolia",explorer:"https://sepolia.arbiscan.io/",explorerOfTX:"https://sepolia.arbiscan.io/tx/",faucetUrl:"https://bwarelabs.com/faucets/arbitrum-sepolia",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(.055+1)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var at={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://bsc-testnet-dataseed.bnbchain.org"],label:"BNB Chain Testnet",chainSymbol:"BNB Chain Testnet",explorer:"https://testnet.bscscan.com/",explorerOfTX:"https://testnet.bscscan.com/tx/",faucetUrl:"https://docs.bnbchain.org/bnb-smart-chain/developers/faucet/",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(5e-4+1)*S,nativeCurrency:{name:"BNB",symbol:"BNB",decimals:18}}};var st={chainInfo:{label:"Linea Mainnet",explorer:"https://lineascan.build/",logoUrl:"",explorerOfTX:"https://lineascan.build/tx/",publicJsonRPCUrl:["https://rpc.linea.build/","https://linea.blockpi.network/v1/rpc/public","https://1rpc.io/linea","https://rpc.linea.build"],chainSymbol:"Linea",gasPriceRatio:1.3,gasLimitRatio:1.2,gasAmountRatio:2,gasFeeReservedForCollateral:(.525+.35)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var ot={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://arb1.arbitrum.io/rpc"],label:" Arbitrum One",chainSymbol:"Arbitrum One",explorer:"https://arbiscan.io/",explorerOfTX:"https://arbiscan.io/tx/",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(.055+.175)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var rt={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://bsc-dataseed.bnbchain.org"],label:"BNB Chain",chainSymbol:"BNB Chain",explorer:"https://bscscan.com/",explorerOfTX:"https://bscscan.com/tx/",faucetUrl:"https://docs.bnbchain.org/bnb-smart-chain/developers/faucet/",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(5e-4+1)*S,nativeCurrency:{name:"BNB",symbol:"BNB",decimals:18}}};var b={59141:tt.chainInfo,421614:nt.chainInfo,97:at.chainInfo,59144:st.chainInfo,42161:ot.chainInfo,56:rt.chainInfo};function de(t){let e=b[t];if(!e)throw new Error(`Could not find information with chain id ${t}`);return e}var ce={};function fn(t){if(!ce[t]){let e=de(t),n=[...e.privateJsonRPCUrl?[e.privateJsonRPCUrl]:[],...Array.isArray(e.publicJsonRPCUrl)?[...e.publicJsonRPCUrl]:[]].filter(Boolean);if(n.length===0)throw new Error(`${t} has no jsonRPCUrl configured`);ce[t]={id:t,name:e.label||`Chain ${t}`,nativeCurrency:e.nativeCurrency,rpcUrls:{default:{http:n}}};}return ce[t]}var fe={};function c(t){if(!fe[t]){let e=de(t),n=[...e.privateJsonRPCUrl?[e.privateJsonRPCUrl]:[],...Array.isArray(e.publicJsonRPCUrl)?[...e.publicJsonRPCUrl]:[]].filter(Boolean);if(n.length===0)throw new Error(`${t} has no jsonRPCUrl configured`);let a=n.length===1?viem.http(n[0]):viem.fallback(n.map(s=>viem.http(s)));fe[t]=viem.createPublicClient({chain:fn(t),transport:a});}return fe[t]}var pt=null;function bn(t){pt=t;}async function O(t){let e=pt;if(!e?.hasSigner())throw new Error("No signer: call auth({ signer }) or auth({ walletClient })");return e.getViemWalletClient(t)}var be=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"BaseFeeNotSoldOut",inputs:[]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidBaseToken",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"LPNotFullyMinted",inputs:[]},{type:"error",name:"MarketNotExist",inputs:[{type:"bytes32",name:"marketId"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolDebtNotCleared",inputs:[]},{type:"error",name:"PoolExists",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotExist",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PositionNotEmpty",inputs:[]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"error",name:"UnexpectedPoolState",inputs:[]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"benchPool",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"referencePrice"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"uint80",name:"roundId"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"string",name:"remark"}]}],outputs:[]},{type:"function",name:"boostPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"checkPoolExists",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bool"}]},{type:"function",name:"deployPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"marketId"},{type:"address",name:"baseToken"}]}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getMarketPool",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"address",name:"asset"}],outputs:[{type:"tuple",components:[{type:"bytes32",name:"marketId"},{type:"bytes32",name:"poolId"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"state"},{type:"bool",name:"compoundEnabled"},{type:"address",name:"basePoolToken"},{type:"address",name:"quotePoolToken"},{type:"address",name:"poolVault"},{type:"address",name:"tradingVault"}]}]},{type:"function",name:"getPairToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"}]},{type:"function",name:"getPool",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"bytes32",name:"marketId"},{type:"bytes32",name:"poolId"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"state"},{type:"bool",name:"compoundEnabled"},{type:"address",name:"basePoolToken"},{type:"address",name:"quotePoolToken"},{type:"address",name:"poolVault"},{type:"address",name:"tradingVault"}]}]},{type:"function",name:"getPoolMarket",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bytes32",name:"marketId"},{type:"tuple",components:[{type:"address",name:"quoteToken"},{type:"uint32",name:"baseReserveRatio"},{type:"uint32",name:"quoteReserveRatio"},{type:"uint64",name:"oracleFeeUsd"},{type:"uint64",name:"boostFeeUsd"},{type:"uint64",name:"boostRefundFeeUsd"},{type:"uint128",name:"poolPrimeThreshold"},{type:"uint128",name:"executionFee"},{type:"uint128",name:"maxExecutionFee"},{type:"uint128",name:"forwardFee"},{type:"uint128",name:"maxForwardFee"}]}]},{type:"function",name:"getPoolMarketExecutionFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"executionFee"}]},{type:"function",name:"getPoolMarketForwardFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"forwardFee"}]},{type:"function",name:"getPoolMarketId",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bytes32",name:"marketId"}]},{type:"function",name:"getPoolRiskTier",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint8"}]},{type:"function",name:"getPoolVault",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"address"}]},{type:"function",name:"getPools",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32[]",name:"pools"}]},{type:"function",name:"getTradingVault",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"address"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isPoolAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"addr"}],outputs:[{type:"bool"}]},{type:"function",name:"perBenchPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"string",name:"remark"}]}],outputs:[]},{type:"function",name:"primePool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"referencePrice"}]}],outputs:[]},{type:"function",name:"primePoolFromBoost",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"reprimePool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"trenchPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"bytes32",name:"oracleFeedId"},{type:"uint32",name:"oracleDecimals"},{type:"uint8",name:"oracleType"},{type:"uint8",name:"riskTier"}]}],outputs:[]},{type:"function",name:"unboostPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"updatePoolCompoundEnabled",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"bool",name:"enabled"}]}],outputs:[]},{type:"function",name:"updatePoolRiskTiers",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"riskTier"}]}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var _=[{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"},{internalType:"uint8",name:"decimals_",type:"uint8"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"InvalidShortString",type:"error"},{inputs:[{internalType:"string",name:"str",type:"string"}],name:"StringTooLong",type:"error"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"owner",type:"address"},{indexed:true,internalType:"address",name:"spender",type:"address"},{indexed:false,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:false,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"previousOwner",type:"address"},{indexed:true,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"from",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"subtractedValue",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}];var ge=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientOutputAmount",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolNotActive",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotExist",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeCastOverflowedUintToInt",inputs:[{type:"uint256",name:"value"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"QuotePoolProfitDistributed",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"amount",indexed:false},{type:"uint256",name:"genesisAmount",indexed:false},{type:"uint256",name:"price",indexed:false},{type:"uint256",name:"exchangeRate",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"EXCHANGE_RATE_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"POOL_TOKEN_DECIMALS",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"REBATE_INDEX_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"claimUserRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"rebateOut"}]},{type:"function",name:"claimUserRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256[]",name:"rebateOut"}]},{type:"function",name:"deposit",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"}]},{type:"function",name:"distribute",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amount"},{type:"uint256",name:"genesisAmount"},{type:"uint256",name:"price"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getPoolData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"genesisRebateIndex"}]}]},{type:"function",name:"getPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getUserData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"index"},{type:"uint256",name:"accrued"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"pendingUserRebates",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewLpAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"quoteAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewQuoteAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewUserWithdrawData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"quoteAmountOut"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"updatePool",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"oraclePrice"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdraw",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"},{type:"uint256",name:"rebateOut"}]},{type:"function",name:"withdrawableLpAmount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]}];var Ie=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ExceedMaxProfit",inputs:[]},{type:"error",name:"ExceedMinOutputAmount",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientOutputAmount",inputs:[]},{type:"error",name:"InsufficientReturnAmount",inputs:[{type:"uint256",name:"expected"},{type:"uint256",name:"received"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolNotActive",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotCompoundable",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotExist",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeCastOverflowedUintToInt",inputs:[{type:"uint256",name:"value"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"BasePoolProfitDistributed",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false},{type:"uint256",name:"price",indexed:false},{type:"uint256",name:"exchangeRate",indexed:false},{type:"uint256",name:"rebateIndex",indexed:false},{type:"uint256",name:"genesisRebateIndex",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"PoolProfitExchanged",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"baseIn",indexed:false},{type:"uint256",name:"quoteOut",indexed:false},{type:"uint256",name:"price",indexed:false},{type:"address",name:"recipient",indexed:false}]},{type:"event",anonymous:false,name:"PoolRebateIndexUpdated",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"unexchangedProfits",indexed:false},{type:"uint256",name:"oldIndex",indexed:false},{type:"uint256",name:"newIndex",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"EXCHANGE_RATE_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"POOL_TOKEN_DECIMALS",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"REBATE_INDEX_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"claimUserRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"rebateOut"}]},{type:"function",name:"claimUserRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256[]",name:"rebateOut"}]},{type:"function",name:"deposit",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"}]},{type:"function",name:"distribute",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"},{type:"uint256",name:"genesisAmount"},{type:"uint256",name:"price"}],outputs:[]},{type:"function",name:"exchangeProfit",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseIn"},{type:"uint256",name:"minQuoteOut"},{type:"address",name:"recipient"},{type:"bytes",name:"data"}],outputs:[{type:"uint256",name:"quoteOut"}]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExchangeableProfit",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"baseIn"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getPoolData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"rebateIndex"},{type:"uint256",name:"genesisRebateIndex"},{type:"uint256",name:"exchangeableProfits"}]}]},{type:"function",name:"getPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getUserData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"index"},{type:"uint256",name:"genesisIndex"},{type:"uint256",name:"accrued"},{type:"uint256",name:"genesisAccrued"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"pendingUserRebates",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"rebates"},{type:"uint256",name:"genesisRebates"}]},{type:"function",name:"previewBaseAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewExchangeableProfit",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"baseIn"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"previewLpAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewUserWithdrawData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"baseAmountOut"},{type:"uint256",name:"rebateAmount"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"updatePool",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"oraclePrice"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdraw",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"},{type:"uint256",name:"rebateOut"}]},{type:"function",name:"withdrawableLpAmount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]}];var Ae=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ECDSAInvalidSignature",inputs:[]},{type:"error",name:"ECDSAInvalidSignatureLength",inputs:[{type:"uint256",name:"length"}]},{type:"error",name:"ECDSAInvalidSignatureS",inputs:[{type:"bytes32",name:"s"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ExpiredFeeData",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[]},{type:"error",name:"InvalidFeeDataEpoch",inputs:[]},{type:"error",name:"InvalidFeeRate",inputs:[]},{type:"error",name:"InvalidFeeTier",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"NoRebateToClaim",inputs:[]},{type:"error",name:"NotBrokerSigner",inputs:[{type:"address",name:"signer"}]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"OwnableInvalidOwner",inputs:[{type:"address",name:"owner"}]},{type:"error",name:"OwnableUnauthorizedAccount",inputs:[{type:"address",name:"account"}]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"error",name:"UnsupportedAssetClass",inputs:[{type:"uint8",name:"assetClass"}]},{type:"error",name:"UnsupportedFeeTier",inputs:[{type:"uint8",name:"tier"}]},{type:"event",anonymous:false,name:"BrokerFeesWithdrawn",inputs:[{type:"address",name:"broker",indexed:true},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false},{type:"address",name:"recipient",indexed:false}]},{type:"event",anonymous:false,name:"BrokerStatusUpdated",inputs:[{type:"address",name:"broker",indexed:false},{type:"bool",name:"isActive",indexed:false}]},{type:"event",anonymous:false,name:"EIP712DomainChanged",inputs:[]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"OwnershipTransferStarted",inputs:[{type:"address",name:"previousOwner",indexed:true},{type:"address",name:"newOwner",indexed:true}]},{type:"event",anonymous:false,name:"OwnershipTransferred",inputs:[{type:"address",name:"previousOwner",indexed:true},{type:"address",name:"newOwner",indexed:true}]},{type:"event",anonymous:false,name:"RebateClaimed",inputs:[{type:"address",name:"user",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"SignerUpdated",inputs:[{type:"address",name:"signer",indexed:false},{type:"bool",name:"isSigner",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"FEE_TYPEHASH",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"acceptOwnership",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"activeFeeTiers",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"}],outputs:[{type:"uint256[]"}]},{type:"function",name:"activeSpecialFeeTierList",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"}],outputs:[{type:"uint256[]"}]},{type:"function",name:"addressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"batchSetSpecialFeeTiers",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]}],outputs:[]},{type:"function",name:"batchUpdateFeeTiers",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"tuple",name:"addOnFeeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}]}],outputs:[]},{type:"function",name:"claimRebate",constant:false,payable:false,inputs:[{type:"address",name:"token"}],outputs:[]},{type:"function",name:"claimRebates",constant:false,payable:false,inputs:[{type:"address[]",name:"tokens"}],outputs:[]},{type:"function",name:"currentFeeDataEpoch",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"domainSeparatorV4",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"eip712Domain",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes1",name:"fields"},{type:"string",name:"name"},{type:"string",name:"version"},{type:"uint256",name:"chainId"},{type:"address",name:"verifyingContract"},{type:"bytes32",name:"salt"},{type:"uint256[]",name:"extensions"}]},{type:"function",name:"getAddOnFeeTier",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"}],outputs:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]},{type:"function",name:"getBaseFeeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"}],outputs:[{type:"tuple",name:"baseFeeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}]},{type:"function",name:"getSpecialFeeTier",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"}],outputs:[{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]},{type:"function",name:"getUserFeeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"},{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"}],outputs:[{type:"uint32",name:"takerFeeRate"},{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"baseTakerFeeRate"},{type:"uint32",name:"baseMakerFeeRate"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"_addressManager"},{type:"address",name:"owner"},{type:"string",name:"_brokerName"},{type:"address[]",name:"brokerSigners"},{type:"uint8[]",name:"assetClasses"},{type:"tuple[]",name:"baseFeeRates",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}],outputs:[]},{type:"function",name:"isActive",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bool"}]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"name",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"onBrokerFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"address",name:"token"},{type:"uint256",name:"feeAmount"}],outputs:[{type:"uint256",name:"totalReferralRebate"},{type:"uint256",name:"referrerRebate"},{type:"address",name:"referrer"}]},{type:"function",name:"owner",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"pendingOwner",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"renounceOwnership",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"resetAllUserFeeData",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"setSigner",constant:false,payable:false,inputs:[{type:"address",name:"signer"},{type:"bool",name:"isSigner"}],outputs:[]},{type:"function",name:"setSpecialFeeTier",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]}],outputs:[]},{type:"function",name:"setUserFeeData",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"address",name:"user"},{type:"uint64",name:"nonce"},{type:"uint64",name:"deadline"},{type:"uint64",name:"feeDataEpoch"},{type:"tuple",name:"feeData",components:[{type:"uint8",name:"tier"},{type:"address",name:"referrer"},{type:"uint32",name:"totalReferralRebatePct"},{type:"uint32",name:"referrerRebatePct"}]},{type:"bytes",name:"signature"}]}],outputs:[]},{type:"function",name:"setUserSpecialFeeTier",constant:false,payable:false,inputs:[{type:"address",name:"user"},{type:"uint8",name:"feeTier"}],outputs:[]},{type:"function",name:"supportedAssetClasses",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256[]"}]},{type:"function",name:"syncAssetClass",constant:false,payable:false,inputs:[{type:"uint8",name:"assetClass"}],outputs:[]},{type:"function",name:"transferOwnership",constant:false,payable:false,inputs:[{type:"address",name:"newOwner"}],outputs:[]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateBaseFeeRates",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"bool",name:"isEnable"},{type:"tuple",name:"baseFeeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}]}],outputs:[]},{type:"function",name:"updateBrokerStatus",constant:false,payable:false,inputs:[{type:"bool",name:"active"}],outputs:[]},{type:"function",name:"updateFeeTier",constant:false,payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"tuple",name:"feeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}],outputs:[]},{type:"function",name:"updateUserFeeData",constant:false,payable:false,inputs:[{type:"address",name:"user"},{type:"tuple",name:"feeData",components:[{type:"uint8",name:"tier"},{type:"address",name:"referrer"},{type:"uint32",name:"totalReferralRebatePct"},{type:"uint32",name:"referrerRebatePct"}]}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"userFeeData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"userFeeDataEpoch"},{type:"address",name:"user"}],outputs:[{type:"uint8",name:"tier"},{type:"address",name:"referrer"},{type:"uint32",name:"totalReferralRebatePct"},{type:"uint32",name:"referrerRebatePct"}]},{type:"function",name:"userNonces",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"}],outputs:[{type:"uint64",name:"nonce"}]},{type:"function",name:"userRebates",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"},{type:"address",name:"token"}],outputs:[{type:"uint256",name:"rebateAmount"}]},{type:"function",name:"withdrawBrokerFees",constant:false,payable:false,inputs:[{type:"address",name:"token"},{type:"uint256",name:"amount"},{type:"address",name:"recipient"}],outputs:[]}];var Ce=[{type:"constructor",payable:false,inputs:[]},{type:"error",name:"ERC20InsufficientAllowance",inputs:[{type:"address",name:"spender"},{type:"uint256",name:"allowance"},{type:"uint256",name:"needed"}]},{type:"error",name:"ERC20InsufficientBalance",inputs:[{type:"address",name:"sender"},{type:"uint256",name:"balance"},{type:"uint256",name:"needed"}]},{type:"error",name:"ERC20InvalidApprover",inputs:[{type:"address",name:"approver"}]},{type:"error",name:"ERC20InvalidReceiver",inputs:[{type:"address",name:"receiver"}]},{type:"error",name:"ERC20InvalidSender",inputs:[{type:"address",name:"sender"}]},{type:"error",name:"ERC20InvalidSpender",inputs:[{type:"address",name:"spender"}]},{type:"error",name:"InsufficientBalance",inputs:[{type:"address",name:"account"},{type:"uint256",name:"balance"},{type:"uint256",name:"needed"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"event",anonymous:false,name:"Approval",inputs:[{type:"address",name:"owner",indexed:true},{type:"address",name:"spender",indexed:true},{type:"uint256",name:"value",indexed:false}]},{type:"event",anonymous:false,name:"GenesisShareBurned",inputs:[{type:"address",name:"account",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"GenesisShareMinted",inputs:[{type:"address",name:"account",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Transfer",inputs:[{type:"address",name:"from",indexed:true},{type:"address",name:"to",indexed:true},{type:"uint256",name:"value",indexed:false}]},{type:"function",name:"addressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"allowance",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"owner"},{type:"address",name:"spender"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",constant:false,payable:false,inputs:[{type:"address",name:"spender"},{type:"uint256",name:"value"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"uint256"}]},{type:"function",name:"burnFrom",constant:false,payable:false,inputs:[{type:"address",name:"from"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"decimals",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"_addressManager"},{type:"bytes32",name:"_poolId"},{type:"address",name:"_underlyingToken"},{type:"string",name:"name"},{type:"string",name:"symbol"}],outputs:[]},{type:"function",name:"mint",constant:false,payable:false,inputs:[{type:"address",name:"to"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"name",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"poolId",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"symbol",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalGenesisShare",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"totalSupply",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",constant:false,payable:false,inputs:[{type:"address",name:"to"},{type:"uint256",name:"value"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",constant:false,payable:false,inputs:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"}],outputs:[{type:"bool"}]},{type:"function",name:"underlyingToken",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"userGenesisShare",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"uint256"}]}];var Re=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"InvalidQuoteTokenAddress",inputs:[]},{type:"error",name:"InvalidRatioParams",inputs:[]},{type:"error",name:"MarketAlreadyExisted",inputs:[]},{type:"error",name:"MarketNotExisted",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"ExecutionFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldExecutionFee",indexed:false},{type:"uint256",name:"newExecutionFee",indexed:false}]},{type:"event",anonymous:false,name:"ForwardFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldForwardFee",indexed:false},{type:"uint256",name:"newForwardFee",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"MaxExecutionFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldMaxExecutionFee",indexed:false},{type:"uint256",name:"newMaxExecutionFee",indexed:false}]},{type:"event",anonymous:false,name:"MaxForwardFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldMaxForwardFee",indexed:false},{type:"uint256",name:"newMaxForwardFee",indexed:false}]},{type:"event",anonymous:false,name:"OracleFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint64",name:"newOracleFeeUsd",indexed:false}]},{type:"event",anonymous:false,name:"PoolPrimeThresholdUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint128",name:"newPoolPrimeThreshold",indexed:false}]},{type:"event",anonymous:false,name:"ReserveRatioUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint32",name:"newBaseReserveRatio",indexed:false},{type:"uint32",name:"newQuoteReserveRatio",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"createMarket",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"uint64",name:"chainId"},{type:"address",name:"quoteToken"},{type:"uint32",name:"baseReserveRatio"},{type:"uint32",name:"quoteReserveRatio"},{type:"uint64",name:"oracleFeeUsd"},{type:"uint64",name:"boostFeeUsd"},{type:"uint64",name:"boostRefundFeeUsd"},{type:"uint128",name:"poolPrimeThreshold"},{type:"uint128",name:"executionFee"},{type:"uint128",name:"maxExecutionFee"},{type:"uint128",name:"forwardFee"},{type:"uint128",name:"maxForwardFee"}]},{type:"tuple",name:"quoteParams",components:[{type:"address",name:"priceContract"},{type:"bool",name:"applyExchangeRate"},{type:"uint16",name:"minDeviationRatio"}]}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getBoostFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getBoostRefundFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExecutionFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExecutionFeeByToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"quoteToken"}],outputs:[{type:"uint256"}]},{type:"function",name:"getForwardFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getForwardFeeByToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"quoteToken"}],outputs:[{type:"uint256"}]},{type:"function",name:"getMarket",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"tuple",components:[{type:"address",name:"quoteToken"},{type:"uint32",name:"baseReserveRatio"},{type:"uint32",name:"quoteReserveRatio"},{type:"uint64",name:"oracleFeeUsd"},{type:"uint64",name:"boostFeeUsd"},{type:"uint64",name:"boostRefundFeeUsd"},{type:"uint128",name:"poolPrimeThreshold"},{type:"uint128",name:"executionFee"},{type:"uint128",name:"maxExecutionFee"},{type:"uint128",name:"forwardFee"},{type:"uint128",name:"maxForwardFee"}]}]},{type:"function",name:"getMarketIds",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32[]"}]},{type:"function",name:"getOracleFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"marketExists",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"bool"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"updateExecutionFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_executionFee"}],outputs:[]},{type:"function",name:"updateForwardFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_forwardFee"}],outputs:[]},{type:"function",name:"updateMarketQuoteConfiguration",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"tuple",name:"quoteParams",components:[{type:"address",name:"priceContract"},{type:"bool",name:"applyExchangeRate"},{type:"uint16",name:"minDeviationRatio"}]}],outputs:[]},{type:"function",name:"updateMaxExecutionFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_maxExecutionFee"}],outputs:[]},{type:"function",name:"updateMaxForwardFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_maxForwardFee"}],outputs:[]},{type:"function",name:"updateOracleFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint64",name:"_oracleFeeUsd"}],outputs:[]},{type:"function",name:"updatePoolPrimeThreshold",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_poolPrimeThreshold"}],outputs:[]},{type:"function",name:"updateReserveRatio",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint32",name:"_baseReserveRatio"},{type:"uint32",name:"_quoteReserveRatio"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var Pe=[{type:"error",name:"PositionNotHealthy",inputs:[{type:"bytes32",name:"positionId"},{type:"uint256",name:"marginRatio"}]},{type:"error",name:"SafeCastOverflowedUintToInt",inputs:[{type:"uint256",name:"value"}]},{type:"function",name:"ADDRESS_MANAGER",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getAccountInfo",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"}],outputs:[{type:"tuple",name:"accountInfo",components:[{type:"uint256",name:"freeMargin"},{type:"uint256",name:"walletBalance"},{type:"uint256",name:"freeBaseAmount"},{type:"uint256",name:"baseProfit"},{type:"uint256",name:"quoteProfit"},{type:"uint256",name:"reservedAmount"},{type:"uint64",name:"releaseTime"}]}]},{type:"function",name:"getAvailableLiquiditySize",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint256",name:"executePrice"}],outputs:[{type:"uint256"}]},{type:"function",name:"getBrokerFeeTiers",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"brokerAddress"},{type:"uint8[]",name:"assetClasses"},{type:"uint8[]",name:"riskTiers"},{type:"bool",name:"isMYXBroker"}],outputs:[{type:"tuple[]",name:"brokerFees",components:[{type:"uint8",name:"asset"},{type:"tuple[]",name:"riskTieredBrokerFees",components:[{type:"uint8",name:"riskTier"},{type:"tuple[]",name:"addOnFeeTiers",components:[{type:"uint8",name:"tier"},{type:"uint32",name:"takerFeeRate"},{type:"int32",name:"makerFeeRate"}]},{type:"tuple[]",name:"baseFeeRate",components:[{type:"uint8",name:"assetClass"},{type:"uint32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]},{type:"tuple[]",name:"specialFeeTiers",components:[{type:"uint8",name:"tier"},{type:"uint32",name:"takerFeeRate"},{type:"int32",name:"makerFeeRate"}]}]}]}]},{type:"function",name:"getExchangeables",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"uint256[]",name:"marketPrices"}],outputs:[{type:"tuple[]",name:"exchangeables",components:[{type:"uint256",name:"maxBaseIn"},{type:"uint256",name:"maxQuoteIn"},{type:"uint256",name:"maxBaseOut"},{type:"uint256",name:"maxQuoteOut"}]}]},{type:"function",name:"getLiquidationPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"positionId"},{type:"uint256",name:"marketPrice"}],outputs:[{type:"uint256"}]},{type:"function",name:"getPoolInfo",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"marketPrice"}],outputs:[{type:"tuple",components:[{type:"tuple",name:"basePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"quotePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"reserveInfo",components:[{type:"uint256",name:"baseTotalAmount"},{type:"uint256",name:"baseReservedAmount"},{type:"uint256",name:"quoteTotalAmount"},{type:"uint256",name:"quoteReservedAmount"}]},{type:"tuple",name:"fundingInfo",components:[{type:"int256",name:"nextFundingRate"},{type:"int256",name:"lastFundingFeeTracker"},{type:"uint256",name:"nextEpochTime"}]},{type:"tuple",name:"oi",components:[{type:"int256",name:"tracker"},{type:"uint256",name:"longSize"},{type:"uint256",name:"shortSize"},{type:"uint256",name:"poolEntryPrice"}]},{type:"tuple",name:"liquidityInfo",components:[{type:"uint256",name:"windowCaps"},{type:"int256",name:"openInterest"}]}]}]},{type:"function",name:"getPoolInfos",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"uint256[]",name:"marketPrices"}],outputs:[{type:"tuple[]",components:[{type:"tuple",name:"basePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"quotePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"reserveInfo",components:[{type:"uint256",name:"baseTotalAmount"},{type:"uint256",name:"baseReservedAmount"},{type:"uint256",name:"quoteTotalAmount"},{type:"uint256",name:"quoteReservedAmount"}]},{type:"tuple",name:"fundingInfo",components:[{type:"int256",name:"nextFundingRate"},{type:"int256",name:"lastFundingFeeTracker"},{type:"uint256",name:"nextEpochTime"}]},{type:"tuple",name:"oi",components:[{type:"int256",name:"tracker"},{type:"uint256",name:"longSize"},{type:"uint256",name:"shortSize"},{type:"uint256",name:"poolEntryPrice"}]},{type:"tuple",name:"liquidityInfo",components:[{type:"uint256",name:"windowCaps"},{type:"int256",name:"openInterest"}]}]}]},{type:"function",name:"getPoolTokenPrices",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"uint256[]",name:"marketPrices"}],outputs:[{type:"tuple[]",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"basePoolTokenPrice"},{type:"uint256",name:"quotePoolTokenPrice"}]}]},{type:"function",name:"getPositionFees",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"positionId"},{type:"address",name:"broker"},{type:"uint256",name:"price"}],outputs:[{type:"int256",name:"netCollateral"},{type:"uint256",name:"collateralAmount"},{type:"int256",name:"tradingFee"},{type:"int256",name:"fundingFee"},{type:"int256",name:"unrealizedPnl"}]},{type:"function",name:"getRiskParameters",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"maxRiskTier"}],outputs:[{type:"tuple[]",name:"params",components:[{type:"tuple",name:"tradeLimitParams",components:[{type:"uint64",name:"minTradeUsd"},{type:"uint16",name:"maxPriceDeviation"}]},{type:"tuple",name:"riskLockParams",components:[{type:"uint64",name:"windowCapUsd"},{type:"uint64",name:"liquidityWindowSize"},{type:"uint64",name:"profitWindowSize"},{type:"uint16",name:"priceRangePct"},{type:"uint32",name:"baseSlippage"}]},{type:"tuple",name:"poolConfigParams",components:[{type:"uint16",name:"leverage"},{type:"uint16",name:"maintainMarginRate"},{type:"uint16",name:"baseTokenCollateralRatio"},{type:"uint16",name:"exchangeIncentiveRate"},{type:"uint16",name:"genesisRebateRatio"},{type:"uint8",name:"assetClass"}]},{type:"tuple",name:"fundingRateParams",components:[{type:"int32",name:"maxRate"},{type:"uint32",name:"equilibriumRange"},{type:"int32",name:"lowGrowthRate"},{type:"int32",name:"highGrowthRate"},{type:"uint32",name:"epochDuration"}]}]}]},{type:"function",name:"getSumProfitLock",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address[]",name:"respondents"}],outputs:[{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"},{type:"tuple[]",name:"infos",components:[{type:"address",name:"account"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}]}]},{type:"function",name:"getUserPositionInfos",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"},{type:"bytes32[]",name:"poolIds"}],outputs:[{type:"tuple[]",name:"positions",components:[{type:"bytes32",name:"positionId"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"size"},{type:"uint256",name:"entryPrice"},{type:"int256",name:"fundingRateIndex"},{type:"uint256",name:"earlyClosePrice"},{type:"uint8",name:"direction"},{type:"uint8",name:"riskTier"},{type:"uint64",name:"lastUpdateTime"},{type:"uint256",name:"collateralAmount"}]}]}];var xe=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ERC2771ForwarderExpiredRequest",inputs:[{type:"uint48",name:"deadline"}]},{type:"error",name:"ERC2771ForwarderInvalidSigner",inputs:[{type:"address",name:"signer"},{type:"address",name:"from"}]},{type:"error",name:"ERC2771ForwarderMismatchedValue",inputs:[{type:"uint256",name:"requestedValue"},{type:"uint256",name:"msgValue"}]},{type:"error",name:"ERC2771UntrustfulTarget",inputs:[{type:"address",name:"target"},{type:"address",name:"forwarder"}]},{type:"error",name:"ExceedsMaximumRelayFee",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InconsistentParamsLength",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"balance"},{type:"uint256",name:"needed"}]},{type:"error",name:"InsufficientFeeAllowance",inputs:[{type:"address",name:"user"},{type:"uint256",name:"allowance"},{type:"uint256",name:"required"}]},{type:"error",name:"InsufficientFeeBalance",inputs:[{type:"address",name:"user"},{type:"uint256",name:"balance"},{type:"uint256",name:"required"}]},{type:"error",name:"InvalidAccountNonce",inputs:[{type:"address",name:"account"},{type:"uint256",name:"currentNonce"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"MismatchExecuteFee",inputs:[{type:"uint256",name:"balanceBefore"},{type:"uint256",name:"balanceAfter"},{type:"uint256",name:"expected"}]},{type:"error",name:"MismatchedSender",inputs:[{type:"address",name:"sender"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotAllowedTarget",inputs:[{type:"address",name:"target"}]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"OnlyRelayer",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"RelayerRegistered",inputs:[{type:"address",name:"relayer"}]},{type:"error",name:"RemoveRelayerFailed",inputs:[]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"AddAllowedTarget",inputs:[{type:"address",name:"target",indexed:false}]},{type:"event",anonymous:false,name:"ChargeForwardFee",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"feeToken",indexed:false},{type:"uint256",name:"relayFee",indexed:false}]},{type:"event",anonymous:false,name:"EIP712DomainChanged",inputs:[]},{type:"event",anonymous:false,name:"ERC20PermitFailed",inputs:[{type:"address",name:"token",indexed:false},{type:"string",name:"reason",indexed:false}]},{type:"event",anonymous:false,name:"ERC20PermitLowLevelFailed",inputs:[{type:"bytes",name:"data",indexed:false}]},{type:"event",anonymous:false,name:"ExecutedForwardRequest",inputs:[{type:"address",name:"signer",indexed:true},{type:"uint256",name:"nonce",indexed:false},{type:"bool",name:"success",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"RemoveAllowedTarget",inputs:[{type:"address",name:"target",indexed:false}]},{type:"event",anonymous:false,name:"SetUserRelayer",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"relayer",indexed:false},{type:"bool",name:"enable",indexed:false}]},{type:"event",anonymous:false,name:"UpdateAcquiescentFeeToken",inputs:[{type:"address",name:"sender",indexed:false},{type:"address",name:"oldRelayGas",indexed:false},{type:"address",name:"newRelayGas",indexed:false}]},{type:"event",anonymous:false,name:"UpdateEquilibriumGas",inputs:[{type:"address",name:"sender",indexed:false},{type:"uint256",name:"oldRelayGas",indexed:false},{type:"uint256",name:"newRelayGas",indexed:false}]},{type:"event",anonymous:false,name:"UpdateMaxRelayFee",inputs:[{type:"address",name:"sender",indexed:false},{type:"uint256",name:"oldMaxRelayFee",indexed:false},{type:"uint256",name:"newMaxRelayFee",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"addAllowedTarget",constant:false,payable:false,inputs:[{type:"address",name:"target"}],outputs:[]},{type:"function",name:"batchExecuteForwarder",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"forwardFeeToken"},{type:"tuple[]",name:"bundleParams",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]}],outputs:[]},{type:"function",name:"eip712Domain",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes1",name:"fields"},{type:"string",name:"name"},{type:"string",name:"version"},{type:"uint256",name:"chainId"},{type:"address",name:"verifyingContract"},{type:"bytes32",name:"salt"},{type:"uint256[]",name:"extensions"}]},{type:"function",name:"equilibriumGas",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"execute",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]},{type:"address"}],outputs:[]},{type:"function",name:"executeBatch",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]},{type:"address"},{type:"address"}],outputs:[]},{type:"function",name:"executeForwarder",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"forwardFeeToken"},{type:"tuple",name:"params",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]}],outputs:[]},{type:"function",name:"exitForwardMode",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getAllowedTargets",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address[]"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getDesignatedToken",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getEquilibriumGas",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getUserRelayers",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"address[]"}]},{type:"function",name:"inForwardMode",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bool"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"},{type:"uint256",name:"_equilibriumGas"}],outputs:[]},{type:"function",name:"isAllowedTargets",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"contractAddr"}],outputs:[{type:"bool"}]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"isUserRelayerEnabled",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"address",name:"relayer"}],outputs:[{type:"bool"}]},{type:"function",name:"nonces",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"owner"}],outputs:[{type:"uint256"}]},{type:"function",name:"originAccount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"relayer"}],outputs:[{type:"address",name:"account"}]},{type:"function",name:"permitAndApproveForwarder",constant:false,payable:false,inputs:[{type:"address",name:"relayer"},{type:"bool",name:"enable"},{type:"tuple[]",name:"permitParams",components:[{type:"address",name:"token"},{type:"address",name:"owner"},{type:"address",name:"spender"},{type:"uint256",name:"value"},{type:"uint256",name:"deadline"},{type:"uint8",name:"v"},{type:"bytes32",name:"r"},{type:"bytes32",name:"s"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"removeAllowedTarget",constant:false,payable:false,inputs:[{type:"address",name:"target"}],outputs:[]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateEquilibriumGas",constant:false,payable:false,inputs:[{type:"uint256",name:"_equilibriumGas"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"verify",constant:true,stateMutability:"view",payable:false,inputs:[{type:"tuple",name:"request",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]}],outputs:[{type:"bool"}]}];var Ee=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"AlreadyClaimed",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"user"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidAmount",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"user"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"MerkleTreeVerificationFailed",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"user"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReimbursementValidity",inputs:[{type:"uint256",name:"caseId"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"TreeAlreadySet",inputs:[]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementClaimExpired",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"user",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementClaimed",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"user",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementInfoSet",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"bytes32",name:"merkleRoot",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"totalBaseAmount",indexed:false},{type:"uint256",name:"totalQuoteAmount",indexed:false},{type:"uint256",name:"claimedBaseAmount",indexed:false},{type:"uint256",name:"claimedQuoteAmount",indexed:false},{type:"uint256",name:"expireTime",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"claimExpiredCases",constant:false,payable:false,inputs:[{type:"uint256[]",name:"caseIds"},{type:"address",name:"receiver"}],outputs:[]},{type:"function",name:"claimReimbursement",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"},{type:"bytes32[]",name:"merkleProof"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getReimbursementInfo",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[{type:"tuple",components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"setReimbursementInfo",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"tuple",name:"reimbursementInfo",components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]},{type:"bytes32[]",name:"zeroMerkleProof"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var we=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"BondNotReleased",inputs:[]},{type:"error",name:"BondZeroAmount",inputs:[]},{type:"error",name:"CaseAppealNotFinished",inputs:[]},{type:"error",name:"CaseDeadlineNotReached",inputs:[]},{type:"error",name:"CaseDeadlineReached",inputs:[]},{type:"error",name:"CaseNotAccepted",inputs:[]},{type:"error",name:"CaseNotExist",inputs:[{type:"uint256",name:"caseId"}]},{type:"error",name:"CaseRespondentAppealed",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"respondent"}]},{type:"error",name:"DisputeNotAllowed",inputs:[]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"InvalidPoolToken",inputs:[]},{type:"error",name:"InvalidProfitAmount",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotCaseRespondent",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"respondent"}]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"OnlyRelayer",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"RiskCloseNotCompleted",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"error",name:"UnexpectedCaseState",inputs:[]},{type:"error",name:"UnexpectedCaseType",inputs:[]},{type:"event",anonymous:false,name:"AppealCanceled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"appealCaseId",indexed:false},{type:"address",name:"complainant",indexed:false},{type:"bool",name:"isMalicious",indexed:false}]},{type:"event",anonymous:false,name:"AppealFiled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"appealCaseId",indexed:false},{type:"address",name:"respondent",indexed:false},{type:"address",name:"appealToken",indexed:false},{type:"uint256",name:"appealBond",indexed:false},{type:"uint64",name:"appealDeadline",indexed:false}]},{type:"event",anonymous:false,name:"AppealResolved",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"appealCaseId",indexed:false},{type:"uint8",name:"resolution",indexed:false},{type:"address",name:"complainant",indexed:false}]},{type:"event",anonymous:false,name:"BondClaimed",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"user",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"CaseAppealsResolved",inputs:[{type:"uint256",name:"caseId",indexed:false}]},{type:"event",anonymous:false,name:"CaseRiskClosed",inputs:[{type:"uint256",name:"caseId",indexed:false}]},{type:"event",anonymous:false,name:"DisputeCanceled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"complainant",indexed:false},{type:"bool",name:"isMalicious",indexed:false}]},{type:"event",anonymous:false,name:"DisputeConfigurationUpdated",inputs:[{type:"tuple",name:"newDisputeConfigration",indexed:false,components:[{type:"address",name:"appealToken"},{type:"uint64",name:"disputeBondUsd"},{type:"uint64",name:"appealBondUsd"},{type:"uint64",name:"disputeThresholdUsd"},{type:"uint64",name:"caseDuration"},{type:"uint64",name:"voteDuration"},{type:"uint64",name:"resolveDuration"}]}]},{type:"event",anonymous:false,name:"DisputeFiled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"bytes32",name:"poolId",indexed:false},{type:"address",name:"complainant",indexed:false},{type:"address",name:"poolToken",indexed:false},{type:"uint256",name:"disputeBond",indexed:false},{type:"uint64",name:"caseDeadline",indexed:false}]},{type:"event",anonymous:false,name:"DisputeResolved",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint8",name:"resolution",indexed:false},{type:"uint64",name:"appealDeadline",indexed:false}]},{type:"event",anonymous:false,name:"ForfeitBondsClaimed",inputs:[{type:"address",name:"receiver",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementProcessed",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"tuple",name:"reimbursementInfo",indexed:false,components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]}]},{type:"event",anonymous:false,name:"ReimbursementVoteOpened",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"bytes32",name:"merkleRoot",indexed:false},{type:"uint256",name:"totalBaseAmount",indexed:false},{type:"uint256",name:"totalQuoteAmount",indexed:false},{type:"uint64",name:"voteDeadline",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementVoteRejected",inputs:[{type:"uint256",name:"caseId",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementVoteSubmitted",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"validator",indexed:false},{type:"uint8",name:"voteOption",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"event",anonymous:false,name:"Voted",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"voter",indexed:false},{type:"uint8",name:"voteOption",indexed:false}]},{type:"event",anonymous:false,name:"VotingOpened",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"evidenceId",indexed:false},{type:"uint64",name:"voteDeadline",indexed:false},{type:"address[]",name:"respondents",indexed:false}]},{type:"event",anonymous:false,name:"WormholeConfigurationUpdated",inputs:[{type:"tuple",name:"newWormholeConfiguration",indexed:false,components:[{type:"address",name:"wormhole"},{type:"address",name:"validatorView"},{type:"uint32",name:"maxAge"},{type:"bytes4",name:"selector"}]}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"appeal",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[]},{type:"function",name:"canRiskControlClose",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[{type:"bool"}]},{type:"function",name:"cancelAppeal",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"uint256",name:"appealCaseId"},{type:"bool",name:"isMalicious"}],outputs:[]},{type:"function",name:"cancelDispute",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bool",name:"isMalicious"}],outputs:[]},{type:"function",name:"caseIdSequencer",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"checkRiskControlCloseCompleted",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[]},{type:"function",name:"claimBond",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[]},{type:"function",name:"claimForfeitBonds",constant:false,payable:false,inputs:[{type:"address",name:"receiver"}],outputs:[]},{type:"function",name:"fileDispute",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32",name:"poolId"},{type:"address",name:"poolToken"}],outputs:[]},{type:"function",name:"fileDisputeFromStaker",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getDisputeConfiguration",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"tuple",components:[{type:"address",name:"appealToken"},{type:"uint64",name:"disputeBondUsd"},{type:"uint64",name:"appealBondUsd"},{type:"uint64",name:"disputeThresholdUsd"},{type:"uint64",name:"caseDuration"},{type:"uint64",name:"voteDuration"},{type:"uint64",name:"resolveDuration"}]},{type:"uint32"},{type:"uint32"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isCaseRespondents",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"account"}],outputs:[{type:"bool"}]},{type:"function",name:"openReimbursementVote",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes32",name:"merkleRoot"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"}],outputs:[]},{type:"function",name:"openVoting",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"uint256",name:"evidenceId"},{type:"address[]",name:"respondents"}],outputs:[]},{type:"function",name:"processReimbursement",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]},{type:"tuple",name:"reimbursementInfo",components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]},{type:"bytes32[]",name:"zeroMerkleProof"}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"resolveCaseAppeals",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]}],outputs:[]},{type:"function",name:"resolveDispute",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]}],outputs:[]},{type:"function",name:"updateDisputeConfiguration",constant:false,payable:false,inputs:[{type:"tuple",name:"disputeConfiguration",components:[{type:"address",name:"appealToken"},{type:"uint64",name:"disputeBondUsd"},{type:"uint64",name:"appealBondUsd"},{type:"uint64",name:"disputeThresholdUsd"},{type:"uint64",name:"caseDuration"},{type:"uint64",name:"voteDuration"},{type:"uint64",name:"resolveDuration"}]},{type:"uint32",name:"voteCountRate"},{type:"uint32",name:"effectiveVoteRate"}],outputs:[]},{type:"function",name:"updateWormholeConfiguration",constant:false,payable:false,inputs:[{type:"tuple",name:"wormholeConfiguration",components:[{type:"address",name:"wormhole"},{type:"address",name:"validatorView"},{type:"uint32",name:"maxAge"},{type:"bytes4",name:"selector"}]}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"vote",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"validator"},{type:"uint8",name:"voteOption"},{type:"uint256",name:"deadline"},{type:"uint8",name:"v"},{type:"bytes32",name:"r"},{type:"bytes32",name:"s"}],outputs:[]},{type:"function",name:"voteReimbursement",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"validator"},{type:"uint8",name:"voteOption"},{type:"uint256",name:"deadline"},{type:"uint8",name:"v"},{type:"bytes32",name:"r"},{type:"bytes32",name:"s"}],outputs:[]}];var ut=[{type:"error",name:"AccountInsufficientFreeAmount",inputs:[]},{type:"error",name:"AccountInsufficientReservedAmount",inputs:[]},{type:"error",name:"AccountInsufficientTradableAmount",inputs:[{type:"uint256",name:"accountTradableAmount"},{type:"uint256",name:"requiredTradableAmount"}]},{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"DepositToAccount",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"ExecuteCompensation",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"PayWithPrincipal",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"receiver",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"PayWithProfitFirst",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"receiver",indexed:false},{type:"bytes32",name:"poolId",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"usedFreeAmount",indexed:false},{type:"uint256",name:"usedRestrictedAmount",indexed:false}]},{type:"event",anonymous:false,name:"ReleaseForOrder",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"orderId",indexed:false},{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"ReleaseProfit",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"ReserveForOrder",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"orderId",indexed:false},{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"SettleToAccount",inputs:[{type:"address",name:"account",indexed:false},{type:"bytes32",name:"positionId",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"freeBase",indexed:false},{type:"uint256",name:"profitBase",indexed:false},{type:"uint256",name:"freeAmount",indexed:false},{type:"uint256",name:"profitAmount",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"event",anonymous:false,name:"WithdrawFromAccount",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"deposit",constant:false,payable:false,inputs:[{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"executeCompensation",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"reimbursement"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getPoolWithdrawableBaseToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"baseAmount"}]},{type:"function",name:"getTradableAmount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"bytes32",name:"poolId"}],outputs:[{type:"bool"},{type:"uint256"},{type:"uint256"},{type:"uint256"}]},{type:"function",name:"getUserAsset",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"address",name:"token"}],outputs:[{type:"uint256",name:"amount"}]},{type:"function",name:"getUserAssets",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"payWithPrincipal",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"},{type:"address",name:"receiver"}],outputs:[]},{type:"function",name:"payWithProfitFirst",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"orderId"},{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[{type:"uint256",name:"usedFreeAmount"},{type:"uint256",name:"usedRestrictedAmount"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"releaseForCancelOrder",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"orderId"},{type:"address",name:"account"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"releaseFromProfitUnlock",constant:false,payable:false,inputs:[{type:"address",name:"account"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"reserveForOrder",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"orderId"},{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"settlementDeposit",constant:false,payable:false,inputs:[{type:"bytes32",name:"positionId"},{type:"address",name:"account"},{type:"tuple",name:"pool",components:[{type:"bytes32",name:"marketId"},{type:"bytes32",name:"poolId"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"state"},{type:"address",name:"basePoolToken"},{type:"address",name:"quotePoolToken"},{type:"uint16",name:"maxPriceDeviation"},{type:"bool",name:"compoundEnabled"},{type:"uint64",name:"windowCapUsd"},{type:"address",name:"poolVault"},{type:"address",name:"tradingVault"}]},{type:"uint256",name:"freeBaseAmount"},{type:"uint256",name:"freeQuoteAmount"},{type:"uint256",name:"receivedBaseAmount"},{type:"uint256",name:"receivedQuoteAmount"}],outputs:[]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateAndWithdraw",constant:false,payable:false,inputs:[{type:"address",name:"receiver"},{type:"bytes32",name:"poolId"},{type:"bool",name:"isQuoteToken"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var mt={USDC:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",POOL_MANAGER:"0x3E4e97c1Ff6A97847E5EB8246b8bAA15da1539dD",Account:"0x4F50B5e84A4d29e3Aa7cC0d3707cC0A338ffE5ea",POSITION_MANAGER:"0x23d022365d9a675DEA8Fa188D29B05C327263295",ORDER_MANAGER:"0x600B71aA71b6d624d4b3ABE0F8Ed75C50F031856",PYTH:"0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF",ERC20:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",LIQUIDITY_ROUTER:"0xF47De41B5F8a5d5db5Ec45950C747c5b61E64bCe",BASE_POOL:"0x652525FB7563d9468e5F4EE7D422E7dF2f3Ef599",QUOTE_POOL:"0xaF7c009239e6AdD4721B8A049Bd78105d341C337",ORACLE:"0x61f9CD3AE93737DDaa9a03c17BdB7051145e663e",EIP7702Delegation:"0x0c426bfA0D1084dE18f65EF7b9A9aC41D037Ba1c",MARKET_MANAGER:"0xBB404056d1c469a6AC5E523d15d4B10cFA61D1f1",DATA_PROVIDER:"0x2c8d06898aCc9fD24e3E3C7Ff7290A772ca5625d",ORACLE_RESERVE:"0x7bf8FCC50Feed7311AF3411aDE6fb1351c8AAAde",FORWARDER:"0x8Af3b6B7C8FAD218630D1d54ACb1656124291198",TRADING_ROUTER:"0xb24440F796cfA5d23c8089A377435e177e4d3F47",REIMBURSEMENT:"0x1C0c2eBF6bbCFFAF22A97d78ccfD5C52792d5958",DISPUTE_COURT:"0x250d8a6e2d770bf910Aa08671Dd3B13e0D96ee2e"};var yt={USDC:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",POOL_MANAGER:"0x05314a21Fc97B74f168730153b2B63A870D25dE5",Account:"0xAC0ca67fd6C7Ff9c80DE58420B840115b6d51c6e",POSITION_MANAGER:"0x1a8cC8391Ee19c3817de64a52904D0557f519bA5",ORDER_MANAGER:"0x3138f425f11f14fE33a180e9Bbf0661C8dc6d8AD",PYTH:"0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF",ERC20:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",LIQUIDITY_ROUTER:"0xfb790ECE13Cd9e296b4a06ABF38D10431360c236",BASE_POOL:"0x1F767BEa83EDe5E0C18904f439C579f52c2c0F1b",QUOTE_POOL:"0x50ad7da312c58c6689bEF028954a366cb5b8ee13",ORACLE:"0x3e437094C5687Ed6eDb1883b0bd445Efa9103a55",EIP7702Delegation:"0xc68fdf81ca68B26fdB296645F42a734c12E63751",MARKET_MANAGER:"0x71b57CcB7539aB761fd5C5767362A207a295e337",DATA_PROVIDER:"0xd4FdE3cc72D29b71507823cA43Dd6fD520644E92",ORACLE_RESERVE:"0x4fC26Cf34e5d486BFF211315bf17D77d34130971",FORWARDER:"0x58fb1a663b08871A755734231C387E1d10ac2B10",TRADING_ROUTER:"0x89ba8EDBD63f577cAA1095F25Df0A44A226f28bc",REIMBURSEMENT:"0xDbCe02B080C68671EF6EcEc1a01A789441A3a564",DISPUTE_COURT:"0x47648D171925a69b3A334898AaaE6e7cc41B1735"};var lt={USDC:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",POOL_MANAGER:"0x9207FBDDF4B3adACB92Cc04C99F2E47573826a1B",Account:"0xc10a7fbd80244B22CAd00F9dD12f265BF7664914",POSITION_MANAGER:"0x9dfb3816dC262308528A2AE82e1b3f69d6783CE5",ORDER_MANAGER:"0x4d77415DF43cE6b8dECC1d1DBBd628CD1827a3B4",PYTH:"0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",ERC20:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",LIQUIDITY_ROUTER:"0x57eC4Fe20a94327Bcb0Dc66C14F1E2f5f893371E",BASE_POOL:"0x690B9BB7199031Fbcbb28a717E02a1787A479573",QUOTE_POOL:"0x1c625bfE9445C488B1165eD909014bAcEa6F4797",ORACLE:"0x63074276D824194802be6Af7357228CF0BD09F9b",EIP7702Delegation:"0x5164F4AB3907C2d500d9E2D634DA1fae133d624d",MARKET_MANAGER:"0x410230345104c6779e2655510b0C08D60395f046",DATA_PROVIDER:"0x0b9321ec5ecc1D02385744891f61922B1195Bd80",ORACLE_RESERVE:"0x2e71f3dF1D0c42728982fCFba0C9785d8AF32e9D",FORWARDER:"0xBa9785A42eCB2765a627aB48dd4FCB78658980e9",TRADING_ROUTER:"0x04B3627a89Be49674AA77dcB907ee233f9b87a61",REIMBURSEMENT:"0x6973960FcE7A248dF210F00Bb291743AbAc7EB4f",DISPUTE_COURT:"0xe759EaD8aeba0e10bE9078b6331addCD5041d754"};var dt={POOL_MANAGER:"0xcf51a6895864c6D8E507fC31EF16b9011287c5f4",Account:"0x35054EfE58Bbdae792aeCaD7bC2e4939c169560f",POSITION_MANAGER:"0x689A0C7E46785584FF7636700ceF5d5e7c141F8D",ORDER_MANAGER:"0xa0B5E5AE9D3E214096C90DDeC04D39B27ED9B272",PYTH:"0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",ERC20:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",LIQUIDITY_ROUTER:"0x0AE31989318565620c03d35889a0B2536b8fba5C",BASE_POOL:"0xc9e3826c42183207B418116A16827C1605132c51",QUOTE_POOL:"0x9A9934D3b22103dE822d94A22A3177d728FE0e5a",ORACLE:"0x0dD8293765358cF7f2646D0B91bA59804E197FC6",EIP7702Delegation:"0x4686F8a0d44b056037b2A51c4342EE7FA8e0A48F",MARKET_MANAGER:"0xe99dAB65c5546D7C87850Bbc40C6a7BEd7328Efa",DATA_PROVIDER:"0x5b6Be9839552a49302d552aB3C223b60Adb8BF1D",ORACLE_RESERVE:"0xB3D5a67223905FE73a0749e7A03525838063C54C",USDC:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",FORWARDER:"0x6C40462A4d45BA4119af59Fb9e41b8eaC9293962",TRADING_ROUTER:"0x0000000000000000000000000000000000000000",REIMBURSEMENT:"0x0000000000000000000000000000000000000000",DISPUTE_COURT:"0x0000000000000000000000000000000000000000"};var ct={USDC:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",POOL_MANAGER:"0x4F917ef137b573D9790b87e3cF6dfb698cF00c9c",Account:"0xE58CC82F96c86f8F809A98BE14D9DC929d503e25",POSITION_MANAGER:"0x7A5000A1DDE26520BfC893c676a288F98F8a029c",ORDER_MANAGER:"0x343d7563eFb904375Fea81BcC4A3eCdDc0CDa8C9",PYTH:"0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",ERC20:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",LIQUIDITY_ROUTER:"0xe9F2E58562aD1D50AfB1eD92EAa6D367A6D0e552",BASE_POOL:"0x39506f97D1c1A91EAfD59368697E20dC1fE5eEDB",QUOTE_POOL:"0x80DAa474e7e2C9c86708e434B80636b92fb4e9EE",ORACLE:"0xB980765F0D5D3B482601F1a62Ec898619DA9c0C5",EIP7702Delegation:"0x9d43e7847f74E141E1A2B4C413D5F89520995551",MARKET_MANAGER:"0x624d1D5258b34d5C3F4f9CdCB7582F677643cdDC",DATA_PROVIDER:"0xb3c6b1448F04B3Eb9A5D83D6c32B0a10F3E7281B",ORACLE_RESERVE:"0x949e8a0284eA5509B47619e7667C3aA43B7c0336",FORWARDER:"0x73F9F9205E2F7E0Fb886afC3D2a53399C85383a5",TRADING_ROUTER:"0x0000000000000000000000000000000000000000",REIMBURSEMENT:"0x0000000000000000000000000000000000000000",DISPUTE_COURT:"0x0000000000000000000000000000000000000000"};var ft={USDC:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",POOL_MANAGER:"0x9E84a999e15CCdb2F64a5AF10939c25769dF6b07",Account:"0x42A1BC012CeC51Ebf3bbf79142bf2a912396FB0e",POSITION_MANAGER:"0x011a25Fe39b2f9033E49d1587CF24780242e40dA",ORDER_MANAGER:"0xfc30D3C858B72a9EDfE6679Fc3355039D276f811",PYTH:"0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",ERC20:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",LIQUIDITY_ROUTER:"0x0F4C6f18Fb136DD1eBd6Da3C5d86a86597CF79a3",BASE_POOL:"0x51B62554a76197d5DF2D5dC4D57FF54d40775938",QUOTE_POOL:"0x783Ed065a12e1C1D33c2a8d6408385C1843D3084",ORACLE:"0xaF26d69BC0A6f1DEf8AeB00B6DAD28398ba67a53",EIP7702Delegation:"0xc8558cD3905F273ff45B1dd6D10894445bFa622f",MARKET_MANAGER:"0x3b809daB550f9DD0DbE82567f6EA6137C174532c",DATA_PROVIDER:"0x4B5888025570934cC9D31807feBAAEDaC823Cb8e",ORACLE_RESERVE:"0x3011dA5822c1ECA7fcda64716779769D0089945D",FORWARDER:"0x2943a063ae2A772f4314FaA28E00De827A491Dd3",TRADING_ROUTER:"0xaA16801F36e49cDD4f87938032487C7E6cfbb389",REIMBURSEMENT:"0xBF72B69bA547D0bB7D1255B43Ff5D7f2615326dF",DISPUTE_COURT:"0xeD8B129a5919c45c7391AA73632eA691A471C672"};var oe=Mn__default.default(),Dn=(t,e)=>e?(e=JSON.parse(JSON.stringify(e)),t.includes("?")?t+"&"+new URLSearchParams(e).toString():t+"?"+new URLSearchParams(e).toString()):t,G={get:(t,e,n={})=>{let a=Dn(t,e);return oe.url(a).options(n).get().json()},post:(t,e,n={})=>oe.url(t).options(n).post(e).json(),put:(t,e,n={})=>oe.url(t).options(n).put(e).json(),delete:(t,e={})=>oe.url(t).options(e).delete().json()};var On=(p=>(p[p.SUCCESS=9200]="SUCCESS",p[p.SUCCESS_ORIGIN=0]="SUCCESS_ORIGIN",p[p.IDENTITY_VERIFICATION_FAILED=9401]="IDENTITY_VERIFICATION_FAILED",p[p.PERMISSION_DENIED=9403]="PERMISSION_DENIED",p[p.NOT_EXIST=9404]="NOT_EXIST",p[p.REQUEST_LIMIT=9429]="REQUEST_LIMIT",p[p.SERVICE_ERROR=9500]="SERVICE_ERROR",p[p.MISS_REQUESTED_PARAMETER=9900]="MISS_REQUESTED_PARAMETER",p[p.INVALID_PARAMETER=9901]="INVALID_PARAMETER",p.NETWORK_ERROR="ERR_NETWORK",p))(On||{}),Fn=(r=>(r[r.Cook=0]="Cook",r[r.Primed=1]="Primed",r[r.Trench=2]="Trench",r[r.PreBench=3]="PreBench",r[r.Bench=4]="Bench",r))(Fn||{}),bt=(n=>(n[n.Chainlink=1]="Chainlink",n[n.Pyth=2]="Pyth",n))(bt||{}),kn=(i=>(i[i.Minute1=1]="Minute1",i[i.Minute5=5]="Minute5",i[i.Minute15=15]="Minute15",i[i.Minute30=30]="Minute30",i[i.Hour1=60]="Hour1",i[i.Hour4=240]="Hour4",i[i.Day1=1440]="Day1",i[i.Week1=10080]="Week1",i[i.Month1=40320]="Month1",i))(kn||{}),_n=(a=>(a[a.Contract=1]="Contract",a[a.Cook=2]="Cook",a[a.Earn=3]="Earn",a))(_n||{}),Sn=(s=>(s[s.All=0]="All",s[s.Contract=1]="Contract",s[s.Cook=2]="Cook",s[s.Earn=3]="Earn",s))(Sn||{}),Nn=(n=>(n[n.BlueChips=1]="BlueChips",n[n.Alpha=2]="Alpha",n))(Nn||{}),Bn=(a=>(a[a.BlueChips=1]="BlueChips",a[a.Alpha=2]="Alpha",a[a.Favorite=3]="Favorite",a))(Bn||{});var Un=(s=>(s[s.Market=0]="Market",s[s.Limit=1]="Limit",s[s.Stop=2]="Stop",s[s.Conditional=3]="Conditional",s))(Un||{}),Ln=(n=>(n[n.Increase=0]="Increase",n[n.Decrease=1]="Decrease",n))(Ln||{}),qn=(m=>(m[m.Increase=0]="Increase",m[m.Decrease=1]="Decrease",m[m.AddMargin=2]="AddMargin",m[m.RemoveMargin=3]="RemoveMargin",m[m.CancelOrder=4]="CancelOrder",m[m.ADL=5]="ADL",m[m.Liquidation=6]="Liquidation",m[m.MarketClose=7]="MarketClose",m[m.EarlyClose=8]="EarlyClose",m[m.AddTPSL=9]="AddTPSL",m[m.SecurityDeposit=10]="SecurityDeposit",m[m.TransferToWallet=11]="TransferToWallet",m[m.MarginAccountDeposit=12]="MarginAccountDeposit",m[m.ReferralReward=13]="ReferralReward",m[m.ReferralRewardClaim=14]="ReferralRewardClaim",m))(qn||{}),Gn=(a=>(a[a.Unknown=0]="Unknown",a[a.GTE=1]="GTE",a[a.LTE=2]="LTE",a))(Gn||{}),zn=(n=>(n[n.Long=0]="Long",n[n.Short=1]="Short",n))(zn||{}),Wn=(s=>(s[s.Cancelled=1]="Cancelled",s[s.Expired=2]="Expired",s[s.Successful=9]="Successful",s[s.PartialFilled=8]="PartialFilled",s))(Wn||{}),Qn=(i=>(i[i.Market=1]="Market",i[i.Limit=2]="Limit",i[i.TP=3]="TP",i[i.SL=4]="SL",i[i.ADL=5]="ADL",i[i.ADLTrigger=6]="ADLTrigger",i[i.Liquidation=7]="Liquidation",i[i.EarlyClose=8]="EarlyClose",i[i.MarketClose=9]="MarketClose",i))(Qn||{}),Vn=(p=>(p[p.Open=0]="Open",p[p.PartialClose=1]="PartialClose",p[p.FullClose=2]="FullClose",p[p.Liquidation=3]="Liquidation",p[p.EarlyClose=4]="EarlyClose",p[p.MarketClose=5]="MarketClose",p[p.ADL=6]="ADL",p[p.TP=7]="TP",p[p.SL=8]="SL",p[p.Increase=9]="Increase",p))(Vn||{}),Hn=(a=>(a[a.MarginAccount=1]="MarginAccount",a[a.WalletAccount=2]="WalletAccount",a[a.ReferralReward=3]="ReferralReward",a))(Hn||{});var Jn=(s=>(s[s.EXECUTING=1]="EXECUTING",s[s.BROADCAST_FAILED=2]="BROADCAST_FAILED",s[s.TIMEOUT_CANCEL=3]="TIMEOUT_CANCEL",s[s.EXECUTED=9]="EXECUTED",s))(Jn||{});var fs=async()=>G.get(`${W()}/openapi/gateway/scan/market/list`);var W=()=>{let{isTestnet:t,isBetaMode:e}=N?.getConfigManager()?.getConfig()||{};return e?"https://api-beta.myx.finance":t?"https://api-test.myx.cash":"https://api.myx.finance"},Q=async(t,e=[])=>e.length?G.get(`${W()}/openapi/gateway/quote/price/oracles`,{chainId:t,poolIds:e.join(",")}):Promise.reject(new Error("Invalid pool id")),gt=async(t,e)=>await G.get(`${W()}/openapi/gateway/scan/market/info?chainId=${t}&poolId=${e}`),It=async(t,e,n)=>await G.get(`${W()}/openapi/gateway/scan/market/pool-order/open?chainId=${n}`,void 0,{headers:{myx_openapi_access_token:t,myx_openapi_account:e}}),As=async({chainId:t,poolIds:e},n)=>G.get(`${W()}/openapi/gateway/quote/candle/tickers`,{chainId:t,poolIds:e.join(",")}),Cs=async({...t})=>G.get(`${W()}/openapi/gateway/scan/market/base-details`,t),Rs=async({...t})=>G.get(`${W()}/openapi/gateway/scan/market/detail`,t),At=async()=>G.get(`${W()}/openapi/gateway/scan/market`);var te,Te=class Te{constructor(){this.version="1.0.15";je(this,te);}setConfigManager(e){Xe(this,te,e);}getConfigManager(){return $e(this,te)}setProvider(e){this.provider=e;}getProvider(){return this.provider}static getInstance(){return this._instance||(this._instance=new Te),this._instance}async getMarkets(){try{let n=(await At())?.data||[];return this.Markets=n,n}catch(e){throw e}}};te=new WeakMap;var ee=Te,Ct=ee.getInstance(),N=Ct,Ms=async t=>{let e=Ct.getConfigManager();if(!e?.hasSigner())throw new Error("No signer: call auth({ signer }) or auth({ walletClient })");return e.getViemWalletClient(t)};var Rt={USDC:"0x55d398326f99059fF775485246999027B3197955",POOL_MANAGER:"0x765F9f1b3cD39073bE9194c0Bb70b532bcEb3af4",Account:"0xC50eC7C363C479876614FcA7D68fF305Ad44AdbA",POSITION_MANAGER:"0x90dbFb618b45e4B05cEb488b08D7613E30B5199f",ORDER_MANAGER:"0xe187Bd99AaaD09dc14F557b3072805537Db7D79B",PYTH:"0x4D7E825f80bDf85e913E0DD2A2D54927e9dE1594",ERC20:"0x55d398326f99059fF775485246999027B3197955",LIQUIDITY_ROUTER:"0x2505986d5a2ac400797d5C16C38827db27b8548E",BASE_POOL:"0x92592c809a644A0C4Bb88eF9131b658551Ff2F29",QUOTE_POOL:"0x30CE3d74711ff4d2a3732d1f9FC975fD55140909",ORACLE:"0x8E249E13538B76AaA1babd5eA2f0D8635E9860F0",EIP7702Delegation:"0x5636238726665B43ce31679643364e27Af804579",MARKET_MANAGER:"0xE116d4BB03B9edF489B167b688BD4c81ef297E25",DATA_PROVIDER:"0xe5783fA834164D8C1C6B84BdF385296dB50849f8",ORACLE_RESERVE:"0x78653b37ca1626D3B8Ab2efb72B57C8a531F8aFA",FORWARDER:"0x22540CE0BD46c0Ae8F5fea5805AFAFE301e71Ed1",TRADING_ROUTER:"0x01D21a419D481f34cc62b0C9c592F19348FE137c",REIMBURSEMENT:"0xe049a36d506659818177577376A1854648958d58",DISPUTE_COURT:"0xd4eA4D870F049207aEFCCE841413C725611D47Ab"};var v=t=>{let{isBetaMode:e}=N?.getConfigManager()?.getConfig()||{};switch(t){case 421614:return e?yt:mt;case 59141:return e?dt:lt;case 97:return e?ft:ct;case 56:return Rt;default:return {}}};var Pt=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"DesignatedTokenMismatch",inputs:[{type:"address",name:"collectToken"},{type:"address",name:"designatedToken"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotActiveBroker",inputs:[{type:"address",name:"broker"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotForwardAllowedTarget",inputs:[{type:"address",name:"from"}]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotOrderOwner",inputs:[]},{type:"error",name:"NotPositionOwner",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"CollectExecutionFee",inputs:[{type:"uint8",name:"source",indexed:false},{type:"bytes32",name:"positionId",indexed:false},{type:"address",name:"account",indexed:false},{type:"uint256",name:"executionFee",indexed:false},{type:"address",name:"token",indexed:false}]},{type:"event",anonymous:false,name:"CollectForwardFee",inputs:[{type:"uint8",name:"source",indexed:false},{type:"bytes32",name:"positionId",indexed:false},{type:"address",name:"account",indexed:false},{type:"uint256",name:"forwardFee",indexed:false},{type:"address",name:"token",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"cancelOrder",constant:false,payable:false,inputs:[{type:"uint256",name:"orderId"}],outputs:[]},{type:"function",name:"cancelOrders",constant:false,payable:false,inputs:[{type:"uint256[]",name:"orderIds"}],outputs:[]},{type:"function",name:"collectExecutionFee",constant:false,payable:false,inputs:[{type:"uint8",name:"source"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"collectForwardFeeIfNecessary",constant:false,payable:false,inputs:[{type:"uint8",name:"source"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"depositToAccount",constant:false,payable:false,inputs:[{type:"address",name:"recipient"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"placeOrderWithPosition",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"bytes32",name:"positionId"},{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"tuple",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"placeOrderWithSalt",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"uint64",name:"userPositionSalt"},{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"tuple",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"placeOrdersWithPosition",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"bytes32[]",name:"positionIds"},{type:"tuple[]",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"placeOrdersWithSalt",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"uint64[]",name:"userPositionSalts"},{type:"tuple[]",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateOrder",constant:false,payable:false,inputs:[{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"tuple",name:"params",components:[{type:"uint256",name:"orderId"},{type:"address",name:"broker"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"tuple",name:"tpsl",components:[{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}]}],outputs:[]},{type:"function",name:"updatePriceAndAdjustCollateral",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"bytes32",name:"positionId"},{type:"int256",name:"adjustAmount"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var po=(t,e)=>{let n=c(t);return viem.getContract({address:e,abi:_,client:n})},uo=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.TRADING_ROUTER,abi:Pt,client:n})},xt=async(t,e)=>{let n=await O(t);return viem.getContract({address:e,abi:_,client:n})},h=async t=>{let e=await O(t),[n]=await e.getAddresses();return n??void 0},M=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.LIQUIDITY_ROUTER,abi:Ke,client:n})},Et=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.ORACLE_RESERVE,abi:Ze,client:n})},L=(t,e=1)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.POOL_MANAGER,abi:be,client:a})):O(t).then(s=>viem.getContract({address:n.POOL_MANAGER,abi:be,client:s}))};var V=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.QUOTE_POOL,abi:ge,client:a})):O(t).then(s=>viem.getContract({address:n.QUOTE_POOL,abi:ge,client:s}))},z=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.BASE_POOL,abi:Ie,client:a})):O(t).then(s=>viem.getContract({address:n.BASE_POOL,abi:Ie,client:s}))},mo=async(t,e)=>{let n=await O(t);return viem.getContract({address:e,abi:Ae,client:n})};var yo=(t,e)=>{let n=c(t);return viem.getContract({address:e,abi:Ae,client:n})};var wt=(t,e,n=0)=>{let a=n===0?c(t):null;return a?Promise.resolve(viem.getContract({address:e,abi:Ce,client:a})):O(t).then(s=>viem.getContract({address:e,abi:Ce,client:s}))},re=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.MARKET_MANAGER,abi:Re,client:a})):O(t).then(s=>viem.getContract({address:n.MARKET_MANAGER,abi:Re,client:s}))},Tt=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.DATA_PROVIDER,abi:Pe,client:a})):O(t).then(s=>viem.getContract({address:n.DATA_PROVIDER,abi:Pe,client:s}))},lo=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.Account,abi:ut,client:n})},co=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.FORWARDER,abi:xe,client:a})):O(t).then(s=>viem.getContract({address:n.FORWARDER,abi:xe,client:s}))},fo=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.REIMBURSEMENT,abi:Ee,client:a})):O(t).then(s=>viem.getContract({address:n.REIMBURSEMENT,abi:Ee,client:s}))},bo=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.DISPUTE_COURT,abi:we,client:a})):O(t).then(s=>viem.getContract({address:n.DISPUTE_COURT,abi:we,client:s}))};var $=null;function $n(t){$=t;}function ve(){return $??{}}function he(){}function jn(...t){($?.log??$?.info??he)(...t);}function Xn(...t){($?.warn??he)(...t);}function d(...t){($?.error??he)(...t);}var vt=class{constructor(e){this.options={...e,logLevel:e?.logLevel??"info"};}get out(){return this.options.sink??ve()}debug(e,...n){this.options.logLevel!=="none"&&this.options.logLevel==="debug"&&(this.out.log??this.out.info)?.(`[MYX-SDK-DEBUG] ${e}`,...n);}info(e,...n){this.options.logLevel!=="none"&&(this.options.logLevel==="debug"||this.options.logLevel==="info")&&(this.out.log??this.out.info)?.(`[MYX-SDK-INFO] ${e}`,...n);}error(e,...n){this.options.logLevel!=="none"&&(this.options.logLevel==="debug"||this.options.logLevel==="info"||this.options.logLevel==="error")&&this.out.error?.(`[MYX-SDK-ERROR] ${e}`,...n);}warn(e,...n){this.options.logLevel!=="none"&&this.out.warn?.(`[MYX-SDK-WARN] ${e}`,...n);}};ethersDecodeError.ErrorDecoder.create();var E={1:"Invalid Chain",2:"Invalid Token Address",4001:"User Rejected",3:"Insufficient Balance",4:"Insufficient Amount Of Approved",4002:"Invalid Base Token Address",4003:"Invalid Slippage",4004:"Invalid Amount",4005:"Invalid Pool State",4006:"Invalid Params",4007:"Invalid Amount Withdrawable LP Amount"};function Zn(t){let e=t;for(;e;){if(e.name==="UserRejectedRequestError")return true;e=e.cause;}return false}async function l(t){let e=t?.shortMessage||t?.details||t?.message;return typeof t=="string"?{error:t}:Zn(t)?{error:E[4001]}:{error:{code:t?.code||t?.name||"Unknow Error",message:e}}}var ht=async(t,e,n)=>{try{return await c(t).readContract({address:n,abi:_,functionName:"balanceOf",args:[e]})}catch(a){throw d(a),a}};var Mt=async(t,e,n,a,s)=>{try{return await c(t).readContract({address:n,abi:_,functionName:"allowance",args:[e,a]})>=s}catch(r){throw r}};var F=30,H=18;var C=(t,e)=>BigInt(t)*viem.parseUnits(e.toString(),8)/BigInt(10**8),R=async t=>{try{let e=b[t],a=await c(t).getGasPrice();if(a==null)throw new Error("Network Error");return {gasPrice:C(a,e.gasPriceRatio)}}catch(e){throw e}},Y=(t,e=.01)=>{let n=viem.parseUnits("1",8)-viem.parseUnits(e.toString(),8);return t*n/BigInt(10**8)};var Dt=async(t,e,n,a,s)=>{try{let r=b[t],o=await xt(t,n);if(!o.write)throw new Error("Wallet client required for write");let u=await o.estimateGas.approve([a,s]),y=C(u,r.gasLimitRatio),{gasPrice:i}=await R(t),p=await o.write.approve([a,s],{gasLimit:y,gasPrice:i});await c(t).waitForTransactionReceipt({hash:p});}catch(r){throw r}};var I=async t=>{if("chainId"in t&&!et(t.chainId))throw new Error(E[1]);if("slippage"in t&&!(Number(t?.slippage)<=1&&Number(t?.slippage)>0))throw new Error(E[4003]);if("amount"in t&&(Number(t.amount)===Number.NaN||Number(t.amount)<0))throw new Error(E[4004]);let{tokenAddress:e,contractAddress:n,chainId:a,amount:s,decimals:r,account:o}=t;if(s&&a&&Number(r)>=0&&o){let u=viem.parseUnits(s.toString(),Number(r));if(e){let y=await ht(a,o,e);if(!y||y<u)throw new Error(E[3])}n&&e&&(await Mt(a,o,e,n,u)||await Dt(a,o,e,n,viem.maxUint256));}};var Ot=async(t,e)=>await Promise.all(e.map(async a=>{let{publishTime:s,vaa:r,oracleType:o,nativeFee:u,price:y,poolId:i}=a,p=lodashEs.isNil(u)?1n:BigInt(u);return {poolId:i,price:y,value:p,publishTime:s,oracleType:o??2,vaa:r}})),j=async(t,e)=>{if(!e||!e.length)return;let n=await Q(t,e);return await Ot(t,n.data)},k=async(t,e)=>{if(!e)return;let a=(await Q(t,[e]))?.data?.[0];if(!a)throw new Error(`Unable to get price for ${e}`);return (await Ot(t,[a]))?.[0]};var Ft=async t=>{try{let{chainId:e,poolId:n}=t,a=b[e],s=await h(e);await I({account:s,chainId:e});let r=await j(e,[n]);if(!r)return;let o=r.map(P=>P.value),u=r.map(P=>({poolId:n,oracleType:P.oracleType,publishTime:P.publishTime,oracleUpdateData:P?.vaa??"0"})),y={prices:u,values:o,poolId:n,recipient:s},i=await M(e),p=await i.estimateGas.claimBasePoolRebate([u,n,s],{value:o[0]}),g=C(p,a.gasLimitRatio),{gasPrice:A}=await R(e);return await i.write.claimBasePoolRebate([u,n,s],{gasLimit:g,gasPrice:A,value:o[0]})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},kt=async t=>{try{let{chainId:e,poolIds:n}=t;if(n.length===0)return;let a=b[e],s=await h(e);await I({account:s,chainId:e});let r=await j(e,n);if(!r)return;let o=r.map(w=>({poolId:w.poolId,oracleType:w.oracleType,publishTime:w.publishTime,oracleUpdateData:w?.vaa??"0"})),y=r.map(w=>w.value).reduce((w,T)=>T+w,0n),i={prices:o,poolIds:n,value:y,recipient:s},p=await M(e),g=await p.estimateGas.claimBasePoolRebates([o,n,s],{value:y}),A=C(g,a.gasLimitRatio),{gasPrice:f}=await R(e),P=await p.write.claimBasePoolRebates([o,n,s],{gasLimit:A,gasPrice:f,value:y});return await c(e).waitForTransactionReceipt({hash:P})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var De=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{let s=b[t];return await(await z(t)).read.previewLpAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}},St=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{let s=b[t];return await(await z(t)).read.previewBaseAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}},Nt=async({chainId:t,account:e,poolId:n,amount:a=0})=>{try{if(!t||!e||!n)return;if(!a)return {baseAmountOut:0n,rebateAmount:0n};let s=b[t],r=18;await I({decimals:r,account:e,chainId:t,amount:Number(a)});let o=viem.parseUnits(a.toString(),r),y=(await Q(t,[n])).data?.[0]?.price||"0",i=viem.parseUnits(y,30),g=await(await z(t)).read.previewUserWithdrawData([n,o,e,i]),[A,f]=g;return {baseAmountOut:A,rebateAmount:f}}catch(s){throw typeof s=="string"?s:await l(s)}};var D=async(t,e)=>{try{return !t||!e?void 0:(await gt(t,e)).data}catch(n){throw typeof n=="string"?n:await l(n)}};function Bt(t){return t.includes(".")?t.split(".")[1].length:0}var X=(t=.01,e=[],n=18,a)=>{if(e.length===0)return [];if(e.filter(r=>r.amount&&r.triggerPrice&&r.triggerType).length===0)throw new Error(E[4006]);return e.map(r=>{let o=viem.parseUnits(r.amount.toString(),n),u=viem.parseUnits(r.triggerPrice.toString(),30),y=Bt(r.triggerPrice.toString()),i=viem.parseUnits(r.triggerPrice.toString(),y),p=Y(o*i*BigInt(10**a)/BigInt(10**(y+n)),t);return {amount:o,triggerPrice:u,triggerType:BigInt(r.triggerType),minQuoteOut:p}})};var Lt=async t=>{try{let{poolId:e,chainId:n,amount:a,slippage:s=.01,tpsl:r=[]}=t;await I(t);let o=await D(n,e);if(!o)throw new Error(E[4006]);let u=o?.baseDecimals,y=o?.quoteDecimals,i=o?.baseToken,p=b[n],g=await h(n),f=v(n).BASE_POOL;await I({tokenAddress:i,contractAddress:f,decimals:u,account:g,chainId:n,amount:a});let P=!(Number(o?.state)===0||Number(o?.state)===1),m=[],w=viem.parseUnits(a.toString(),u),T=0n,B;if(P){let U=await k(n,e);if(!U)return;let rn=viem.parseUnits(U.price,30);m.push({poolId:e,oracleType:U.oracleType,publishTime:BigInt(U.publishTime),oracleUpdateData:U.vaa}),B=await De({chainId:n,poolId:e,amountIn:w,price:rn}),T=U.value;}else B=await De({chainId:n,poolId:e,amountIn:w});let K=r.map(U=>({amount:a,triggerPrice:U.triggerPrice,triggerType:U.triggerType})),ae=X(s,K,u,y),Z={poolId:e,amountIn:w,minAmountOut:Y(B,s),recipient:g,tpslParams:ae},se=await M(n),ue=await se.estimateGas.depositBase([m,Z],{value:T}),me=C(ue,p.gasLimitRatio),{gasPrice:ye}=await R(n),He=await se.write.depositBase([m,Z],{gasLimit:me,gasPrice:ye,value:T});return await c(n).waitForTransactionReceipt({hash:He})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var ne=async({chainId:t,baseToken:e,marketId:n})=>{try{if(!e)throw new Error(E[2]);let a=v(t),s=await L(t,0),r=[n,e],o=await s.read.getMarketPool(r);return o.poolId==="0x0000000000000000000000000000000000000000000000000000000000000000"||!o.poolId?void 0:o.poolId}catch(a){throw d(a),typeof a=="string"?a:await l(a)}},Fe=async t=>{try{return await(await L(t)).read.getPools()||[]}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},ke=async(t,e,n=0n)=>{try{let s=await(await Tt(t)).read.getPoolInfo([e,n]);return {quotePool:{poolToken:s.quotePool.poolToken,exchangeRate:s.quotePool.exchangeRate,poolTokenPrice:s.quotePool.poolTokenPrice,poolTokenSupply:s.quotePool.poolTokenSupply,totalDebt:s.quotePool.totalDebt,baseCollateral:s.quotePool.baseCollateral},basePool:{poolToken:s.basePool.poolToken,exchangeRate:s.basePool.exchangeRate,poolTokenPrice:s.basePool.poolTokenPrice,poolTokenSupply:s.basePool.poolTokenSupply,totalDebt:s.basePool.totalDebt,baseCollateral:s.basePool.baseCollateral},reserveInfo:{baseTotalAmount:s.reserveInfo.baseTotalAmount,baseReservedAmount:s.reserveInfo.baseReservedAmount,quoteTotalAmount:s.reserveInfo.quoteTotalAmount,quoteReservedAmount:s.reserveInfo.quoteReservedAmount},fundingInfo:{nextFundingRate:s.fundingInfo.nextFundingRate,lastFundingFeeTracker:s.fundingInfo.lastFundingFeeTracker,nextEpochTime:s.fundingInfo.nextEpochTime},ioTracker:{tracker:s.oi.tracker,longSize:s.oi.longSize,shortSize:s.oi.shortSize,poolEntryPrice:s.oi.poolEntryPrice},liquidityInfo:{windowCaps:s.liquidityInfo.windowCaps,openInterest:s.liquidityInfo.openInterest}}}catch(a){throw d(a),typeof a=="string"?a:await l(a)}};var _e=async({chainId:t,baseToken:e,marketId:n})=>{try{if(!e)throw new Error(E[2]);let a=b[t],s=await L(t),r={marketId:n,baseToken:e},o=await s.estimateGas.deployPool([r]),u=C(o,a.gasLimitRatio),{gasPrice:y}=await R(t),i=await s.write.deployPool([r],{gasLimit:u,gasPrice:y});if(await c(t).waitForTransactionReceipt({hash:i}))return await ne({chainId:t,baseToken:e,marketId:n})}catch(a){throw typeof a=="string"?a:await l(a)}};var Se=async(t,e,n)=>{try{return await(await wt(t,e)).read.userGenesisShare([n])}catch(a){throw d(a),typeof a=="string"?a:await l(a)}};var Ne=async t=>{try{let{chainId:e,poolId:n,poolType:a,slippage:s=.01,tpsl:r=[]}=t;await I(t);let o=await D(e,n);if(!o)throw new Error(E[4006]);let u=18,y=o.quoteDecimals,i=X(s,r,u,y),p=b[e],g=await M(e),A={poolId:n,poolType:BigInt(a),tpslParams:i},f=await g.estimateGas.addTpsl([A]),P=C(f,p.gasLimitRatio),{gasPrice:m}=await R(e),w=await g.write.addTpsl([A],{gasLimit:P,gasPrice:m});return await c(e).waitForTransactionReceipt({hash:w})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Be=async t=>{try{let{chainId:e,orderId:n}=t;await I(t);let a=b[e],s=await M(e),r=await s.estimateGas.cancelTpsl([n]),o=C(r,a.gasLimitRatio),{gasPrice:u}=await R(e),y=await s.write.cancelTpsl([n],{gasLimit:o,gasPrice:u});return await c(e).waitForTransactionReceipt({hash:y})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};async function sa(t){try{return (await fetch(t,{method:"HEAD"})).ok}catch{return false}}var wi=async(t,e,n)=>{try{let a=c(t),s=e,[r,o,u,y]=await Promise.all([a.readContract({address:s,abi:_,functionName:"name"}),a.readContract({address:s,abi:_,functionName:"symbol"}),a.readContract({address:s,abi:_,functionName:"decimals"}),a.readContract({address:s,abi:_,functionName:"totalSupply"})]),i=viem.getAddress(s),p=`https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/${t}/assets/${i}/logo.png`,A=await sa(p)?p:"",f;if(n){let P=await a.readContract({address:s,abi:_,functionName:"balanceOf",args:[n]});f=Number(viem.formatUnits(P,Number(u)));}return {address:e,name:r,symbol:o,decimals:Number(u),icon:A,totalSupply:Number(viem.formatUnits(y,Number(u))),...n?{balance:f}:{}}}catch(a){throw d(a),a}};var Ue=async(t,e,n)=>{try{await I({chainId:t});let a=await D(t,e);if(!a)throw new Error(E[4006]);let s=await h(t),o=((N?.Markets?.length?N?.Markets:await N.getMarkets())||[])?.find(m=>m.chainId===t&&m.marketId===n);if(!o)throw new Error("Invalid Market");let u=viem.parseUnits(o.oracleFeeUsd.toString(),a.quoteDecimals);if(!u)throw new Error("Invalid Market");await I({tokenAddress:a.quoteToken,contractAddress:v(t).ORACLE_RESERVE,decimals:a.quoteDecimals,account:s,chainId:t,amount:Number(viem.formatUnits(u,a.quoteDecimals))});let y=b[t],i=await L(t),p=await i.estimateGas.reprimePool([{poolId:e}]),g=C(p,y.gasLimitRatio),{gasPrice:A}=await R(t),f=await i.write.reprimePool([{poolId:e}],{gasLimit:g,gasPrice:A});return await c(t).waitForTransactionReceipt({hash:f})}catch(a){throw d(a),typeof a=="string"?a:await l(a)}};var Le=async(t,e)=>{try{let n=await ee.getInstance().getConfigManager()?.getAccessToken();if(!n)throw new Error("Failed to obtain accessToken");return (await It(n,e,t)).data||[]}catch(n){throw d(n),n}};var qe=async t=>{try{let{chainId:e,poolId:n}=t;await I({chainId:e});let a=await D(e,n);if(!a)throw new Error(E[4006]);let s=await h(e),o=((N?.Markets?.length?N?.Markets:await N.getMarkets())||[])?.find(m=>m.chainId===e&&m.marketId===a.marketId);if(!o)throw new Error("Invalid Market");let u=viem.parseUnits(o.boostFeeUsd.toString(),a.quoteDecimals);if(!u)throw new Error("Invalid Market");await I({tokenAddress:a.quoteToken,contractAddress:v(e).ORACLE_RESERVE,decimals:a.quoteDecimals,account:s,chainId:e,amount:Number(viem.formatUnits(u,a.quoteDecimals))});let y=b[e],i=await L(e),p=await i.estimateGas.boostPool([{poolId:n}]),g=C(p,y.gasLimitRatio),{gasPrice:A}=await R(e),f=await i.write.boostPool([{poolId:n}],{gasLimit:g,gasPrice:A});return await c(e).waitForTransactionReceipt({hash:f})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Ge=async t=>{try{let{chainId:e,poolId:n}=t;await I({chainId:e});let a=b[e],s=await L(e),r=await s.estimateGas.unboostPool([{poolId:n}]),o=C(r,a.gasLimitRatio),{gasPrice:u}=await R(e),y=await s.write.unboostPool([{poolId:n}],{gasLimit:o,gasPrice:u});return await c(e).waitForTransactionReceipt({hash:y})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var ze=async t=>{try{let{chainId:e,poolId:n}=t;await I({chainId:e});let a=b[e],s=await Et(e),r=await s.estimateGas.claimBoostFee([n]),o=C(r,a.gasLimitRatio),{gasPrice:u}=await R(e),y=await s.write.claimBoostFee([n],{gasLimit:o,gasPrice:u});return await c(e).waitForTransactionReceipt({hash:y})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var We=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{return await(await V(t)).read.previewLpAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}},Gt=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{return await(await V(t)).read.previewQuoteAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}};var pe=async({amountIn:t,chainId:e,poolId:n,state:a,slippage:s,poolType:r,account:o})=>{let u=!(a===0||a===1),y=[],i=0n,p,g=r===0?St:Gt;if(u)try{let f=await k(e,n);if(f){let P=viem.parseUnits(f.price,30);y.push({poolId:n,oracleType:f.oracleType,publishTime:BigInt(f.publishTime),oracleUpdateData:f.vaa}),p=await g({chainId:e,poolId:n,amountIn:t,price:P}),i=f.value;}}catch(f){console.error(f),p=await g({chainId:e,poolId:n,amountIn:t});}else p=await g({chainId:e,poolId:n,amountIn:t});let A={poolId:n,amountIn:t,minAmountOut:Y(p,s),recipient:o};return {price:y,data:A,value:i}};var zt=async t=>{try{let{chainId:e,poolId:n,price:a}=t,s=a,r=await z(e);if(typeof a>"u"||a===null)try{let u=await k(e,n);s=viem.parseUnits(u?.price||"0",30);}catch{s=viem.parseUnits("0",30);}return await r.read.withdrawableLpAmount([n,s||0n])}catch(e){throw typeof e=="string"?e:await l(e)}},Wt=async t=>{try{let{chainId:e,poolId:n,amount:a,slippage:s=.01}=t,r=await D(e,n),o=r?.basePoolToken,u=b[e],y=await h(e),i=18;await I({tokenAddress:o,decimals:i,account:y,chainId:e,amount:a});let p=viem.parseUnits(a.toString(),i),{price:g,data:A,value:f}=await pe({poolId:n,chainId:e,account:y,amountIn:p,slippage:s,poolType:0,state:r?.state}),P=await M(e),m=await P.estimateGas.withdrawBase([g,A],{value:f}),w=C(m,u.gasLimitRatio),{gasPrice:T}=await R(e),B=await P.write.withdrawBase([g,A],{gasLimit:w,gasPrice:T,value:f});return await c(e).waitForTransactionReceipt({hash:B})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Qt=async t=>{try{let{chainId:e,account:n,poolId:a}=t;if(!e||!n||!a)return;let s=b[e],r=0n,u=(await Q(e,[a])).data?.[0]?.price||"0",y=viem.parseUnits(u,30),p=await(await z(e)).read.pendingUserRebates([a,n,y]),[g,A]=p;return {rebates:g,genesisRebates:A}}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Vt=async(t,e)=>{if(e)try{let n=await z(t),a=0n,s=await k(t,e);return s?.price&&(a=viem.parseUnits(s.price,30)),await n.read.getPoolTokenPrice([e,a])}catch(n){throw typeof n=="string"?n:await l(n)}};var nn={};le(nn,{claimQuotePoolRebate:()=>Zt,claimQuotePoolRebates:()=>en,deposit:()=>Yt,getLpPrice:()=>tn,getRewards:()=>Kt,transfer:()=>Xt,withdraw:()=>jt,withdrawableLpAmount:()=>$t});var Yt=async t=>{try{let{poolId:e,chainId:n,amount:a,slippage:s=.01,tpsl:r=[]}=t;await I(t);let o=await D(n,e);if(!o)throw new Error(E[4006]);let u=b[n],y=await h(n),p=v(n).QUOTE_POOL,g=o.quoteToken,A=o?.quoteDecimals;await I({tokenAddress:g,contractAddress:p,decimals:A,account:y,chainId:n,amount:a});let f=viem.parseUnits(a.toString(),A),P=!(Number(o?.state)===0||Number(o?.state)===1),m=[],w=0n,T;if(P){let q=await k(n,e);if(!q)return;let U=viem.parseUnits(q.price,30);m.push({poolId:e,oracleType:q.oracleType,publishTime:BigInt(q.publishTime),oracleUpdateData:q.vaa}),T=await We({chainId:n,poolId:e,amountIn:f,price:U}),w=q.value;}else T=await We({chainId:n,poolId:e,amountIn:f});let B=r.map(q=>({amount:a,triggerPrice:q.triggerPrice,triggerType:q.triggerType})),K=X(s,B,A,A),ae={poolId:e,amountIn:f,minAmountOut:Y(T,s),recipient:y,tpslParams:K},Z=await M(n),se=await Z.estimateGas.depositQuote([m,ae],{value:w}),ue=C(se,u.gasLimitRatio),{gasPrice:me}=await R(n),ye=await Z.write.depositQuote([m,ae],{gasLimit:ue,gasPrice:me,value:w});return await c(n).waitForTransactionReceipt({hash:ye})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var $t=async t=>{try{let{chainId:e,poolId:n,price:a}=t,s=a,r=await V(e);if(typeof a>"u"||a===null)try{let u=await k(e,n);s=viem.parseUnits(u?.price||"0",30);}catch{s=viem.parseUnits("0",30);}return await r.read.withdrawableLpAmount([n,s||0n])}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},jt=async t=>{try{let{chainId:e,poolId:n,amount:a,slippage:s=.01}=t,r=await D(e,n),o=r?.quotePoolToken,u=b[e],y=await h(e),i=18;await I({tokenAddress:o,decimals:i,account:y,chainId:e,amount:a});let p=viem.parseUnits(a.toString(),i),{price:g,data:A,value:f}=await pe({poolId:n,chainId:e,account:y,amountIn:p,slippage:s,poolType:1,state:r?.state}),P=await M(e),m=await P.estimateGas.withdrawQuote([g,A],{value:f}),w=C(m,u.gasLimitRatio),{gasPrice:T}=await R(e),B=await P.write.withdrawQuote([g,A],{gasLimit:w,gasPrice:T,value:f});return await c(e).waitForTransactionReceipt({hash:B})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Xt=async(t,e,n,a)=>{try{let s=await D(t,e),r=await D(t,n);if(!r||!s)return null;if([3,4].includes(r.state))throw new Error(E[4005]);let o=await h(t),u=b[t],y=18;await I({chainId:t,amount:a,account:o,decimals:y,tokenAddress:s.quotePoolToken});let i={fromPoolId:e,toPoolId:n,minLpOut:0n,amount:viem.parseUnits(a.toString(),y)},p=await M(t),g=await p.estimateGas.migrateLiquidity([i]),A=C(g,u.gasLimitRatio),{gasPrice:f}=await R(t),P=await p.write.migrateLiquidity([i],{gasLimit:A,gasPrice:f});return await c(t).waitForTransactionReceipt({hash:P})}catch(s){throw typeof s=="string"?s:await l(s)}};var Kt=async t=>{try{let{chainId:e,account:n,poolId:a}=t;if(!e||!n||!a)return;let r=(await Q(e,[a])).data?.[0]?.price||"0",o=viem.parseUnits(r,30);return await(await V(e)).read.pendingUserRebates([a,n,o])}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Zt=async t=>{try{let{chainId:e,poolId:n}=t,a=b[e],s=await h(e),r=18;await I({account:s,chainId:e});let o=await j(e,[n]);if(!o)return;let u=o.map(m=>m.value),y=o.map(m=>({poolId:m.poolId,oracleUpdateData:m?.vaa??"0",publishTime:m.publishTime,oracleType:m.oracleType})),i={prices:y,values:u,poolId:n,recipient:s},p=await M(e),g=await p.estimateGas.claimQuotePoolRebate([y,n,s],{value:u[0]}),A=C(g,a.gasLimitRatio),{gasPrice:f}=await R(e);return await p.write.claimQuotePoolRebate([y,n,s],{gasLimit:A,gasPrice:f,value:u[0]})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},en=async t=>{try{let{chainId:e,poolIds:n}=t;if(n.length===0)return;let a=b[e],s=await h(e),r=18;await I({account:s,chainId:e});let o=await j(e,n);if(!o)return;let u=o.map(T=>({poolId:T.poolId,oracleType:T.oracleType,publishTime:T.publishTime,oracleUpdateData:T?.vaa??"0"})),i=o.map(T=>T.value).reduce((T,B)=>B+T,0n),p={prices:u,value:i,poolIds:n,recipient:s},g=await M(e),A=await g.estimateGas.claimQuotePoolRebates([u,n,s],{value:i}),f=C(A,a.gasLimitRatio),{gasPrice:P}=await R(e),m=await g.write.claimQuotePoolRebates([u,n,s],{gasLimit:f,gasPrice:P,value:i});return await c(e).waitForTransactionReceipt({hash:m})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var tn=async(t,e)=>{if(e)try{let n=await V(t),a=0n,s=await k(t,e);return s?.price&&(a=viem.parseUnits(s.price,30)),await n.read.getPoolTokenPrice([e,a])}catch(n){throw d(n),typeof n=="string"?n:await l(n)}};var on={};le(on,{getMarket:()=>an,getOracleFee:()=>sn});var an=async(t,e)=>{try{if(await I({chainId:t}),!e)return;let a=await(await re(t)).read.getMarket([e]),{quoteToken:s,baseReserveRatio:r,quoteReserveRatio:o,oracleFeeUsd:u,boostFeeUsd:y,boostRefundFeeUsd:i,poolPrimeThreshold:p,executionFee:g,maxExecutionFee:A,forwardFee:f,maxForwardFee:P}=a;return a}catch(n){throw d(n),typeof n=="string"?n:await l(n)}};var sn=async(t,e)=>{try{return await I({chainId:t}),e?await(await re(t)).read.getOracleFee([e]):void 0}catch(n){throw d(n),typeof n=="string"?n:await l(n)}};var Qm={createPool:_e,getMarketPoolId:ne,getMarketPools:Fe,getPoolInfo:ke,getUserGenesisShare:Se,addTpSl:Ne,cancelTpSl:Be,reprime:Ue,getPoolDetail:D,getOpenOrders:Le,boostPool:qe,unBoostPool:Ge,claimBoostFee:ze};
|
|
2
|
-
Object.defineProperty(exports,"ta",{enumerable:true,get:function(){return viem.formatUnits}});Object.defineProperty(exports,"ua",{enumerable:true,get:function(){return viem.parseUnits}});exports.$=
|
|
1
|
+
'use strict';var viem=require('viem'),Dn=require('wretch'),ethersDecodeError=require('ethers-decode-error'),lodashEs=require('lodash-es');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Dn__default=/*#__PURE__*/_interopDefault(Dn);var un=Object.defineProperty;var Ye=t=>{throw TypeError(t)};var de=(t,e)=>{for(var n in e)un(t,n,{get:e[n],enumerable:true});};var $e=(t,e,n)=>e.has(t)||Ye("Cannot "+n);var je=(t,e,n)=>($e(t,e,"read from private field"),n?n.call(t):e.get(t)),Xe=(t,e,n)=>e.has(t)?Ye("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),Ke=(t,e,n,a)=>($e(t,e,"write to private field"),e.set(t,n),n);var Jt={};de(Jt,{claimBasePoolRebate:()=>_t,claimBasePoolRebates:()=>kt,deposit:()=>qt,getLpPrice:()=>Ht,getRewards:()=>Vt,previewUserWithdrawData:()=>Bt,withdraw:()=>Qt,withdrawableLpAmount:()=>Wt});var Ze=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"DifferentMarket",inputs:[{type:"bytes32",name:"fromPoolId"},{type:"bytes32",name:"toPoolId"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientQuoteIn",inputs:[{type:"uint256",name:"orderId"},{type:"uint256",name:"quoteIn"},{type:"uint256",name:"exchangeDelta"}]},{type:"error",name:"InvalidAmount",inputs:[{type:"uint256",name:"amount"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidLiquidityAmount",inputs:[]},{type:"error",name:"InvalidTpsl",inputs:[{type:"uint256",name:"orderId"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"NotReachedPrice",inputs:[{type:"uint256",name:"orderId"},{type:"uint256",name:"price"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"SamePoolMigration",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"SlippageExceeded",inputs:[{type:"uint256",name:"expected"},{type:"uint256",name:"actual"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"addTpsl",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"poolType"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"cancelTpsl",constant:false,payable:false,inputs:[{type:"uint256",name:"orderId"}],outputs:[]},{type:"function",name:"claimBasePoolRebate",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimBasePoolRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimBasePoolRebates",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimBasePoolRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebate",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebates",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"claimQuotePoolRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"recipient"}],outputs:[]},{type:"function",name:"currentOrderId",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"depositBase",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"depositBase",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"depositQuote",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"depositQuote",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"},{type:"tuple[]",name:"tpslParams",components:[{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]}],outputs:[]},{type:"function",name:"executeTpsl",constant:false,payable:false,inputs:[{type:"uint256",name:"orderId"},{type:"uint256",name:"quoteInIfNecessary"},{type:"uint256",name:"minOut"}],outputs:[{type:"uint256",name:"baseOut"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"executeTpsl",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"uint256",name:"orderId"},{type:"uint256",name:"quoteInIfNecessary"},{type:"uint256",name:"minOut"}],outputs:[{type:"uint256",name:"baseOut"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getTpslData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"orderId"}],outputs:[{type:"tuple",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint8",name:"poolType"},{type:"uint256",name:"amount"},{type:"uint256",name:"triggerPrice"},{type:"uint8",name:"triggerType"},{type:"uint256",name:"minQuoteOut"}]}]},{type:"function",name:"getUserTpslOrderIds",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"}],outputs:[{type:"uint256[]"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"migrateLiquidity",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"fromPoolId"},{type:"bytes32",name:"toPoolId"},{type:"uint256",name:"amount"},{type:"uint256",name:"minLpOut"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdrawBase",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]},{type:"function",name:"withdrawBase",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]},{type:"function",name:"withdrawQuote",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]},{type:"function",name:"withdrawQuote",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"recipient"}]}],outputs:[]}];var et=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"BoostFeeClaimFailed",inputs:[]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ExceedMaxExchangeableAmount",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientReturnAmount",inputs:[{type:"uint256",name:"expected"},{type:"uint256",name:"received"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolBoostReserveInsufficient",inputs:[]},{type:"error",name:"PoolOracleFeeCharged",inputs:[]},{type:"error",name:"PoolOracleFeeNotCharged",inputs:[]},{type:"error",name:"PoolOracleFeeNotExisted",inputs:[]},{type:"error",name:"PoolOracleFeeNotSoldOut",inputs:[]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"OracleFeeExchanged",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"quoteAmount",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"address",name:"recipient",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"chargeBoostFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"proposer"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"chargeOracleFeeFromPoolVault",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"poolVault"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"chargeOracleFeeFromPrimer",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"primer"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"claimBoostFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[]},{type:"function",name:"confirmBoostFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"bool",name:"isAllow"}],outputs:[]},{type:"function",name:"exchangeBaseFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"recipient"},{type:"bytes",name:"data"}],outputs:[{type:"uint256",name:"baseOut"}]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExchangeableBaseFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"quoteIn"},{type:"uint256",name:"baseOut"}]},{type:"function",name:"getPoolBoostFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"address",name:"proposer"},{type:"uint256",name:"amount"},{type:"bool",name:"isClaimable"}]}]},{type:"function",name:"getPoolOracleFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"address",name:"primer"},{type:"uint8",name:"state"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isBaseFeeSoldOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bool"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"refreshOracleFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdrawOracleFee",constant:false,payable:false,inputs:[{type:"address",name:"token"},{type:"address",name:"to"},{type:"uint256",name:"amount"}],outputs:[]}];var ln=(o=>(o[o.LINEA_SEPOLIA=59141]="LINEA_SEPOLIA",o[o.LINEA_MAINNET=59144]="LINEA_MAINNET",o[o.ARB_TESTNET=421614]="ARB_TESTNET",o[o.ARB_MAINNET=42161]="ARB_MAINNET",o[o.BSC_TESTNET=97]="BSC_TESTNET",o[o.BSC_MAINNET=56]="BSC_MAINNET",o))(ln||{});var dn=[421614,59141,97,42161,59144,56];function tt(t){return !!t&&dn.includes(t)}var S=10;var Ca={42161:130n,421614:130n,59144:130n,59141:130n,56:150n,97:150n};var nt={chainInfo:{explorer:"https://sepolia.lineascan.build/",explorerOfTX:"https://sepolia.lineascan.build/tx/",publicJsonRPCUrl:["https://rpc.sepolia.linea.build","https://linea-sepolia.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161"],label:"Linea Sepolia",logoUrl:"",faucetUrl:"",chainSymbol:"Linea",gasPriceRatio:1.3,gasLimitRatio:1.2,gasAmountRatio:2,gasFeeReservedForCollateral:(.525+1)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var at={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://sepolia-rollup.arbitrum.io/rpc"],label:" Arbitrum Sepolia",chainSymbol:"Arb Sepolia",explorer:"https://sepolia.arbiscan.io/",explorerOfTX:"https://sepolia.arbiscan.io/tx/",faucetUrl:"https://bwarelabs.com/faucets/arbitrum-sepolia",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(.055+1)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var st={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://bsc-testnet-dataseed.bnbchain.org"],label:"BNB Chain Testnet",chainSymbol:"BNB Chain Testnet",explorer:"https://testnet.bscscan.com/",explorerOfTX:"https://testnet.bscscan.com/tx/",faucetUrl:"https://docs.bnbchain.org/bnb-smart-chain/developers/faucet/",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(5e-4+1)*S,nativeCurrency:{name:"BNB",symbol:"BNB",decimals:18}}};var ot={chainInfo:{label:"Linea Mainnet",explorer:"https://lineascan.build/",logoUrl:"",explorerOfTX:"https://lineascan.build/tx/",publicJsonRPCUrl:["https://rpc.linea.build/","https://linea.blockpi.network/v1/rpc/public","https://1rpc.io/linea","https://rpc.linea.build"],chainSymbol:"Linea",gasPriceRatio:1.3,gasLimitRatio:1.2,gasAmountRatio:2,gasFeeReservedForCollateral:(.525+.35)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var rt={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://arb1.arbitrum.io/rpc"],label:" Arbitrum One",chainSymbol:"Arbitrum One",explorer:"https://arbiscan.io/",explorerOfTX:"https://arbiscan.io/tx/",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(.055+.175)*S,nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18}}};var it={chainInfo:{privateJsonRPCUrl:"",publicJsonRPCUrl:["https://bsc-dataseed.bnbchain.org"],label:"BNB Chain",chainSymbol:"BNB Chain",explorer:"https://bscscan.com/",explorerOfTX:"https://bscscan.com/tx/",faucetUrl:"https://docs.bnbchain.org/bnb-smart-chain/developers/faucet/",logoUrl:"",gasPriceRatio:1.5,gasLimitRatio:1.3,gasAmountRatio:2,gasFeeReservedForCollateral:(5e-4+1)*S,nativeCurrency:{name:"BNB",symbol:"BNB",decimals:18}}};var b={59141:nt.chainInfo,421614:at.chainInfo,97:st.chainInfo,59144:ot.chainInfo,42161:rt.chainInfo,56:it.chainInfo};function ce(t){let e=b[t];if(!e)throw new Error(`Could not find information with chain id ${t}`);return e}var fe={};function bn(t){if(!fe[t]){let e=ce(t),n=[...e.privateJsonRPCUrl?[e.privateJsonRPCUrl]:[],...Array.isArray(e.publicJsonRPCUrl)?[...e.publicJsonRPCUrl]:[]].filter(Boolean);if(n.length===0)throw new Error(`${t} has no jsonRPCUrl configured`);fe[t]={id:t,name:e.label||`Chain ${t}`,nativeCurrency:e.nativeCurrency,rpcUrls:{default:{http:n}}};}return fe[t]}var be={};function c(t){if(!be[t]){let e=ce(t),n=[...e.privateJsonRPCUrl?[e.privateJsonRPCUrl]:[],...Array.isArray(e.publicJsonRPCUrl)?[...e.publicJsonRPCUrl]:[]].filter(Boolean);if(n.length===0)throw new Error(`${t} has no jsonRPCUrl configured`);let a=n.length===1?viem.http(n[0]):viem.fallback(n.map(s=>viem.http(s)));be[t]=viem.createPublicClient({chain:bn(t),transport:a});}return be[t]}var ut=null;function gn(t){ut=t;}async function O(t){let e=ut;if(!e?.hasSigner())throw new Error("No signer: call auth({ signer }) or auth({ walletClient })");return e.getViemWalletClient(t)}var ge=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"BaseFeeNotSoldOut",inputs:[]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidBaseToken",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"LPNotFullyMinted",inputs:[]},{type:"error",name:"MarketNotExist",inputs:[{type:"bytes32",name:"marketId"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolDebtNotCleared",inputs:[]},{type:"error",name:"PoolExists",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotExist",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PositionNotEmpty",inputs:[]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"error",name:"UnexpectedPoolState",inputs:[]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"benchPool",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"referencePrice"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"uint80",name:"roundId"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"string",name:"remark"}]}],outputs:[]},{type:"function",name:"boostPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"checkPoolExists",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bool"}]},{type:"function",name:"deployPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"marketId"},{type:"address",name:"baseToken"}]}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getMarketPool",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"address",name:"asset"}],outputs:[{type:"tuple",components:[{type:"bytes32",name:"marketId"},{type:"bytes32",name:"poolId"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"state"},{type:"bool",name:"compoundEnabled"},{type:"address",name:"basePoolToken"},{type:"address",name:"quotePoolToken"},{type:"address",name:"poolVault"},{type:"address",name:"tradingVault"}]}]},{type:"function",name:"getPairToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"}]},{type:"function",name:"getPool",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"bytes32",name:"marketId"},{type:"bytes32",name:"poolId"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"state"},{type:"bool",name:"compoundEnabled"},{type:"address",name:"basePoolToken"},{type:"address",name:"quotePoolToken"},{type:"address",name:"poolVault"},{type:"address",name:"tradingVault"}]}]},{type:"function",name:"getPoolMarket",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bytes32",name:"marketId"},{type:"tuple",components:[{type:"address",name:"quoteToken"},{type:"uint32",name:"baseReserveRatio"},{type:"uint32",name:"quoteReserveRatio"},{type:"uint64",name:"oracleFeeUsd"},{type:"uint64",name:"boostFeeUsd"},{type:"uint64",name:"boostRefundFeeUsd"},{type:"uint128",name:"poolPrimeThreshold"},{type:"uint128",name:"executionFee"},{type:"uint128",name:"maxExecutionFee"},{type:"uint128",name:"forwardFee"},{type:"uint128",name:"maxForwardFee"}]}]},{type:"function",name:"getPoolMarketExecutionFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"executionFee"}]},{type:"function",name:"getPoolMarketForwardFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"forwardFee"}]},{type:"function",name:"getPoolMarketId",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"bytes32",name:"marketId"}]},{type:"function",name:"getPoolRiskTier",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint8"}]},{type:"function",name:"getPoolVault",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"address"}]},{type:"function",name:"getPools",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32[]",name:"pools"}]},{type:"function",name:"getTradingVault",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"address"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isPoolAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"addr"}],outputs:[{type:"bool"}]},{type:"function",name:"perBenchPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"string",name:"remark"}]}],outputs:[]},{type:"function",name:"primePool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"referencePrice"}]}],outputs:[]},{type:"function",name:"primePoolFromBoost",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"reprimePool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"trenchPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"bytes32",name:"oracleFeedId"},{type:"uint32",name:"oracleDecimals"},{type:"uint8",name:"oracleType"},{type:"uint8",name:"riskTier"}]}],outputs:[]},{type:"function",name:"unboostPool",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"bytes32",name:"poolId"}]}],outputs:[]},{type:"function",name:"updatePoolCompoundEnabled",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"bool",name:"enabled"}]}],outputs:[]},{type:"function",name:"updatePoolRiskTiers",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"riskTier"}]}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var k=[{inputs:[{internalType:"string",name:"name_",type:"string"},{internalType:"string",name:"symbol_",type:"string"},{internalType:"uint8",name:"decimals_",type:"uint8"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"InvalidShortString",type:"error"},{inputs:[{internalType:"string",name:"str",type:"string"}],name:"StringTooLong",type:"error"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"owner",type:"address"},{indexed:true,internalType:"address",name:"spender",type:"address"},{indexed:false,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:false,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"previousOwner",type:"address"},{indexed:true,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"from",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"burn",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"subtractedValue",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"mint",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}];var Ie=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientOutputAmount",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolNotActive",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotExist",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeCastOverflowedUintToInt",inputs:[{type:"uint256",name:"value"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"QuotePoolProfitDistributed",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"amount",indexed:false},{type:"uint256",name:"genesisAmount",indexed:false},{type:"uint256",name:"price",indexed:false},{type:"uint256",name:"exchangeRate",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"EXCHANGE_RATE_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"POOL_TOKEN_DECIMALS",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"REBATE_INDEX_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"claimUserRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"rebateOut"}]},{type:"function",name:"claimUserRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256[]",name:"rebateOut"}]},{type:"function",name:"deposit",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"}]},{type:"function",name:"distribute",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amount"},{type:"uint256",name:"genesisAmount"},{type:"uint256",name:"price"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getPoolData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"genesisRebateIndex"}]}]},{type:"function",name:"getPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getUserData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"index"},{type:"uint256",name:"accrued"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"pendingUserRebates",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewLpAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"quoteAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewQuoteAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewUserWithdrawData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"quoteAmountOut"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"updatePool",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"oraclePrice"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdraw",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"},{type:"uint256",name:"rebateOut"}]},{type:"function",name:"withdrawableLpAmount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]}];var Ae=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ExceedMaxProfit",inputs:[]},{type:"error",name:"ExceedMinOutputAmount",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientOutputAmount",inputs:[]},{type:"error",name:"InsufficientReturnAmount",inputs:[{type:"uint256",name:"expected"},{type:"uint256",name:"received"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"PoolNotActive",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotCompoundable",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"PoolNotExist",inputs:[{type:"bytes32",name:"poolId"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeCastOverflowedUintToInt",inputs:[{type:"uint256",name:"value"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"BasePoolProfitDistributed",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false},{type:"uint256",name:"price",indexed:false},{type:"uint256",name:"exchangeRate",indexed:false},{type:"uint256",name:"rebateIndex",indexed:false},{type:"uint256",name:"genesisRebateIndex",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"PoolProfitExchanged",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"baseIn",indexed:false},{type:"uint256",name:"quoteOut",indexed:false},{type:"uint256",name:"price",indexed:false},{type:"address",name:"recipient",indexed:false}]},{type:"event",anonymous:false,name:"PoolRebateIndexUpdated",inputs:[{type:"bytes32",name:"poolId",indexed:true},{type:"uint256",name:"unexchangedProfits",indexed:false},{type:"uint256",name:"oldIndex",indexed:false},{type:"uint256",name:"newIndex",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"EXCHANGE_RATE_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"POOL_TOKEN_DECIMALS",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"REBATE_INDEX_PRECISION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"claimUserRebate",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"rebateOut"}]},{type:"function",name:"claimUserRebates",constant:false,payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256[]",name:"rebateOut"}]},{type:"function",name:"deposit",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"}]},{type:"function",name:"distribute",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"},{type:"uint256",name:"genesisAmount"},{type:"uint256",name:"price"}],outputs:[]},{type:"function",name:"exchangeProfit",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseIn"},{type:"uint256",name:"minQuoteOut"},{type:"address",name:"recipient"},{type:"bytes",name:"data"}],outputs:[{type:"uint256",name:"quoteOut"}]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExchangeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExchangeableProfit",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"baseIn"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getPoolData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"rebateIndex"},{type:"uint256",name:"genesisRebateIndex"},{type:"uint256",name:"exchangeableProfits"}]}]},{type:"function",name:"getPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"getUserData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"index"},{type:"uint256",name:"genesisIndex"},{type:"uint256",name:"accrued"},{type:"uint256",name:"genesisAccrued"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"pendingUserRebates",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"rebates"},{type:"uint256",name:"genesisRebates"}]},{type:"function",name:"previewBaseAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewExchangeableProfit",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"baseIn"},{type:"uint256",name:"quoteOut"}]},{type:"function",name:"previewLpAmountOut",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseAmountIn"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewPoolTokenPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256"}]},{type:"function",name:"previewUserWithdrawData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"lpAmountIn"},{type:"address",name:"user"},{type:"uint256",name:"price"}],outputs:[{type:"uint256",name:"baseAmountOut"},{type:"uint256",name:"rebateAmount"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"updatePool",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"oraclePrice"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"withdraw",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"amountIn"},{type:"uint256",name:"minAmountOut"},{type:"address",name:"user"},{type:"address",name:"recipient"}],outputs:[{type:"uint256",name:"amountOut"},{type:"uint256",name:"rebateOut"}]},{type:"function",name:"withdrawableLpAmount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"price"}],outputs:[{type:"uint256"}]}];var Ce=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ECDSAInvalidSignature",inputs:[]},{type:"error",name:"ECDSAInvalidSignatureLength",inputs:[{type:"uint256",name:"length"}]},{type:"error",name:"ECDSAInvalidSignatureS",inputs:[{type:"bytes32",name:"s"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ExpiredFeeData",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[]},{type:"error",name:"InvalidFeeDataEpoch",inputs:[]},{type:"error",name:"InvalidFeeRate",inputs:[]},{type:"error",name:"InvalidFeeTier",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"NoRebateToClaim",inputs:[]},{type:"error",name:"NotBrokerSigner",inputs:[{type:"address",name:"signer"}]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"OwnableInvalidOwner",inputs:[{type:"address",name:"owner"}]},{type:"error",name:"OwnableUnauthorizedAccount",inputs:[{type:"address",name:"account"}]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"error",name:"UnsupportedAssetClass",inputs:[{type:"uint8",name:"assetClass"}]},{type:"error",name:"UnsupportedFeeTier",inputs:[{type:"uint8",name:"tier"}]},{type:"event",anonymous:false,name:"BrokerFeesWithdrawn",inputs:[{type:"address",name:"broker",indexed:true},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false},{type:"address",name:"recipient",indexed:false}]},{type:"event",anonymous:false,name:"BrokerStatusUpdated",inputs:[{type:"address",name:"broker",indexed:false},{type:"bool",name:"isActive",indexed:false}]},{type:"event",anonymous:false,name:"EIP712DomainChanged",inputs:[]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"OwnershipTransferStarted",inputs:[{type:"address",name:"previousOwner",indexed:true},{type:"address",name:"newOwner",indexed:true}]},{type:"event",anonymous:false,name:"OwnershipTransferred",inputs:[{type:"address",name:"previousOwner",indexed:true},{type:"address",name:"newOwner",indexed:true}]},{type:"event",anonymous:false,name:"RebateClaimed",inputs:[{type:"address",name:"user",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"SignerUpdated",inputs:[{type:"address",name:"signer",indexed:false},{type:"bool",name:"isSigner",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"FEE_TYPEHASH",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"acceptOwnership",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"activeFeeTiers",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"}],outputs:[{type:"uint256[]"}]},{type:"function",name:"activeSpecialFeeTierList",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"}],outputs:[{type:"uint256[]"}]},{type:"function",name:"addressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"batchSetSpecialFeeTiers",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]}],outputs:[]},{type:"function",name:"batchUpdateFeeTiers",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"tuple",name:"addOnFeeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}]}],outputs:[]},{type:"function",name:"claimRebate",constant:false,payable:false,inputs:[{type:"address",name:"token"}],outputs:[]},{type:"function",name:"claimRebates",constant:false,payable:false,inputs:[{type:"address[]",name:"tokens"}],outputs:[]},{type:"function",name:"currentFeeDataEpoch",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"domainSeparatorV4",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"eip712Domain",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes1",name:"fields"},{type:"string",name:"name"},{type:"string",name:"version"},{type:"uint256",name:"chainId"},{type:"address",name:"verifyingContract"},{type:"bytes32",name:"salt"},{type:"uint256[]",name:"extensions"}]},{type:"function",name:"getAddOnFeeTier",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"}],outputs:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]},{type:"function",name:"getBaseFeeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"}],outputs:[{type:"tuple",name:"baseFeeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}]},{type:"function",name:"getSpecialFeeTier",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"}],outputs:[{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]},{type:"function",name:"getUserFeeRate",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"},{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"}],outputs:[{type:"uint32",name:"takerFeeRate"},{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"baseTakerFeeRate"},{type:"uint32",name:"baseMakerFeeRate"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"_addressManager"},{type:"address",name:"owner"},{type:"string",name:"_brokerName"},{type:"address[]",name:"brokerSigners"},{type:"uint8[]",name:"assetClasses"},{type:"tuple[]",name:"baseFeeRates",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}],outputs:[]},{type:"function",name:"isActive",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bool"}]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"name",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"onBrokerFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"},{type:"address",name:"token"},{type:"uint256",name:"feeAmount"}],outputs:[{type:"uint256",name:"totalReferralRebate"},{type:"uint256",name:"referrerRebate"},{type:"address",name:"referrer"}]},{type:"function",name:"owner",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"pendingOwner",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"renounceOwnership",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"resetAllUserFeeData",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"setSigner",constant:false,payable:false,inputs:[{type:"address",name:"signer"},{type:"bool",name:"isSigner"}],outputs:[]},{type:"function",name:"setSpecialFeeTier",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"int32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]}],outputs:[]},{type:"function",name:"setUserFeeData",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"address",name:"user"},{type:"uint64",name:"nonce"},{type:"uint64",name:"deadline"},{type:"uint64",name:"feeDataEpoch"},{type:"tuple",name:"feeData",components:[{type:"uint8",name:"tier"},{type:"address",name:"referrer"},{type:"uint32",name:"totalReferralRebatePct"},{type:"uint32",name:"referrerRebatePct"}]},{type:"bytes",name:"signature"}]}],outputs:[]},{type:"function",name:"setUserSpecialFeeTier",constant:false,payable:false,inputs:[{type:"address",name:"user"},{type:"uint8",name:"feeTier"}],outputs:[]},{type:"function",name:"supportedAssetClasses",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256[]"}]},{type:"function",name:"syncAssetClass",constant:false,payable:false,inputs:[{type:"uint8",name:"assetClass"}],outputs:[]},{type:"function",name:"transferOwnership",constant:false,payable:false,inputs:[{type:"address",name:"newOwner"}],outputs:[]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateBaseFeeRates",constant:false,payable:false,inputs:[{type:"tuple[]",name:"params",components:[{type:"uint8",name:"assetClass"},{type:"bool",name:"isEnable"},{type:"tuple",name:"baseFeeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}]}],outputs:[]},{type:"function",name:"updateBrokerStatus",constant:false,payable:false,inputs:[{type:"bool",name:"active"}],outputs:[]},{type:"function",name:"updateFeeTier",constant:false,payable:false,inputs:[{type:"uint8",name:"assetClass"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"feeTier"},{type:"tuple",name:"feeRate",components:[{type:"uint32",name:"takerFeeRate"},{type:"uint32",name:"makerFeeRate"}]}],outputs:[]},{type:"function",name:"updateUserFeeData",constant:false,payable:false,inputs:[{type:"address",name:"user"},{type:"tuple",name:"feeData",components:[{type:"uint8",name:"tier"},{type:"address",name:"referrer"},{type:"uint32",name:"totalReferralRebatePct"},{type:"uint32",name:"referrerRebatePct"}]}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"userFeeData",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"userFeeDataEpoch"},{type:"address",name:"user"}],outputs:[{type:"uint8",name:"tier"},{type:"address",name:"referrer"},{type:"uint32",name:"totalReferralRebatePct"},{type:"uint32",name:"referrerRebatePct"}]},{type:"function",name:"userNonces",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"}],outputs:[{type:"uint64",name:"nonce"}]},{type:"function",name:"userRebates",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"},{type:"address",name:"token"}],outputs:[{type:"uint256",name:"rebateAmount"}]},{type:"function",name:"withdrawBrokerFees",constant:false,payable:false,inputs:[{type:"address",name:"token"},{type:"uint256",name:"amount"},{type:"address",name:"recipient"}],outputs:[]}];var Re=[{type:"constructor",payable:false,inputs:[]},{type:"error",name:"ERC20InsufficientAllowance",inputs:[{type:"address",name:"spender"},{type:"uint256",name:"allowance"},{type:"uint256",name:"needed"}]},{type:"error",name:"ERC20InsufficientBalance",inputs:[{type:"address",name:"sender"},{type:"uint256",name:"balance"},{type:"uint256",name:"needed"}]},{type:"error",name:"ERC20InvalidApprover",inputs:[{type:"address",name:"approver"}]},{type:"error",name:"ERC20InvalidReceiver",inputs:[{type:"address",name:"receiver"}]},{type:"error",name:"ERC20InvalidSender",inputs:[{type:"address",name:"sender"}]},{type:"error",name:"ERC20InvalidSpender",inputs:[{type:"address",name:"spender"}]},{type:"error",name:"InsufficientBalance",inputs:[{type:"address",name:"account"},{type:"uint256",name:"balance"},{type:"uint256",name:"needed"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"event",anonymous:false,name:"Approval",inputs:[{type:"address",name:"owner",indexed:true},{type:"address",name:"spender",indexed:true},{type:"uint256",name:"value",indexed:false}]},{type:"event",anonymous:false,name:"GenesisShareBurned",inputs:[{type:"address",name:"account",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"GenesisShareMinted",inputs:[{type:"address",name:"account",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Transfer",inputs:[{type:"address",name:"from",indexed:true},{type:"address",name:"to",indexed:true},{type:"uint256",name:"value",indexed:false}]},{type:"function",name:"addressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"allowance",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"owner"},{type:"address",name:"spender"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",constant:false,payable:false,inputs:[{type:"address",name:"spender"},{type:"uint256",name:"value"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"uint256"}]},{type:"function",name:"burnFrom",constant:false,payable:false,inputs:[{type:"address",name:"from"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"decimals",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"_addressManager"},{type:"bytes32",name:"_poolId"},{type:"address",name:"_underlyingToken"},{type:"string",name:"name"},{type:"string",name:"symbol"}],outputs:[]},{type:"function",name:"mint",constant:false,payable:false,inputs:[{type:"address",name:"to"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"name",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"poolId",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"symbol",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalGenesisShare",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"totalSupply",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",constant:false,payable:false,inputs:[{type:"address",name:"to"},{type:"uint256",name:"value"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",constant:false,payable:false,inputs:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"}],outputs:[{type:"bool"}]},{type:"function",name:"underlyingToken",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"userGenesisShare",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"uint256"}]}];var Pe=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"InvalidQuoteTokenAddress",inputs:[]},{type:"error",name:"InvalidRatioParams",inputs:[]},{type:"error",name:"MarketAlreadyExisted",inputs:[]},{type:"error",name:"MarketNotExisted",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"ExecutionFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldExecutionFee",indexed:false},{type:"uint256",name:"newExecutionFee",indexed:false}]},{type:"event",anonymous:false,name:"ForwardFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldForwardFee",indexed:false},{type:"uint256",name:"newForwardFee",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"MaxExecutionFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldMaxExecutionFee",indexed:false},{type:"uint256",name:"newMaxExecutionFee",indexed:false}]},{type:"event",anonymous:false,name:"MaxForwardFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint256",name:"oldMaxForwardFee",indexed:false},{type:"uint256",name:"newMaxForwardFee",indexed:false}]},{type:"event",anonymous:false,name:"OracleFeeUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint64",name:"newOracleFeeUsd",indexed:false}]},{type:"event",anonymous:false,name:"PoolPrimeThresholdUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint128",name:"newPoolPrimeThreshold",indexed:false}]},{type:"event",anonymous:false,name:"ReserveRatioUpdated",inputs:[{type:"bytes32",name:"marketId",indexed:false},{type:"uint32",name:"newBaseReserveRatio",indexed:false},{type:"uint32",name:"newQuoteReserveRatio",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"createMarket",constant:false,payable:false,inputs:[{type:"tuple",name:"params",components:[{type:"uint64",name:"chainId"},{type:"address",name:"quoteToken"},{type:"uint32",name:"baseReserveRatio"},{type:"uint32",name:"quoteReserveRatio"},{type:"uint64",name:"oracleFeeUsd"},{type:"uint64",name:"boostFeeUsd"},{type:"uint64",name:"boostRefundFeeUsd"},{type:"uint128",name:"poolPrimeThreshold"},{type:"uint128",name:"executionFee"},{type:"uint128",name:"maxExecutionFee"},{type:"uint128",name:"forwardFee"},{type:"uint128",name:"maxForwardFee"}]},{type:"tuple",name:"quoteParams",components:[{type:"address",name:"priceContract"},{type:"bool",name:"applyExchangeRate"},{type:"uint16",name:"minDeviationRatio"}]}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getBoostFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getBoostRefundFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getExecutionFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getExecutionFeeByToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"quoteToken"}],outputs:[{type:"uint256"}]},{type:"function",name:"getForwardFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"getForwardFeeByToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"quoteToken"}],outputs:[{type:"uint256"}]},{type:"function",name:"getMarket",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"tuple",components:[{type:"address",name:"quoteToken"},{type:"uint32",name:"baseReserveRatio"},{type:"uint32",name:"quoteReserveRatio"},{type:"uint64",name:"oracleFeeUsd"},{type:"uint64",name:"boostFeeUsd"},{type:"uint64",name:"boostRefundFeeUsd"},{type:"uint128",name:"poolPrimeThreshold"},{type:"uint128",name:"executionFee"},{type:"uint128",name:"maxExecutionFee"},{type:"uint128",name:"forwardFee"},{type:"uint128",name:"maxForwardFee"}]}]},{type:"function",name:"getMarketIds",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32[]"}]},{type:"function",name:"getOracleFee",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"uint256"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"marketExists",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"marketId"}],outputs:[{type:"bool"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"updateExecutionFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_executionFee"}],outputs:[]},{type:"function",name:"updateForwardFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_forwardFee"}],outputs:[]},{type:"function",name:"updateMarketQuoteConfiguration",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"tuple",name:"quoteParams",components:[{type:"address",name:"priceContract"},{type:"bool",name:"applyExchangeRate"},{type:"uint16",name:"minDeviationRatio"}]}],outputs:[]},{type:"function",name:"updateMaxExecutionFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_maxExecutionFee"}],outputs:[]},{type:"function",name:"updateMaxForwardFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_maxForwardFee"}],outputs:[]},{type:"function",name:"updateOracleFee",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint64",name:"_oracleFeeUsd"}],outputs:[]},{type:"function",name:"updatePoolPrimeThreshold",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint128",name:"_poolPrimeThreshold"}],outputs:[]},{type:"function",name:"updateReserveRatio",constant:false,payable:false,inputs:[{type:"bytes32",name:"marketId"},{type:"uint32",name:"_baseReserveRatio"},{type:"uint32",name:"_quoteReserveRatio"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var xe=[{type:"error",name:"PositionNotHealthy",inputs:[{type:"bytes32",name:"positionId"},{type:"uint256",name:"marginRatio"}]},{type:"error",name:"SafeCastOverflowedUintToInt",inputs:[{type:"uint256",name:"value"}]},{type:"function",name:"ADDRESS_MANAGER",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getAccountInfo",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"user"}],outputs:[{type:"tuple",name:"accountInfo",components:[{type:"uint256",name:"freeMargin"},{type:"uint256",name:"walletBalance"},{type:"uint256",name:"freeBaseAmount"},{type:"uint256",name:"baseProfit"},{type:"uint256",name:"quoteProfit"},{type:"uint256",name:"reservedAmount"},{type:"uint64",name:"releaseTime"}]}]},{type:"function",name:"getAvailableLiquiditySize",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint256",name:"executePrice"}],outputs:[{type:"uint256"}]},{type:"function",name:"getBrokerFeeTiers",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"brokerAddress"},{type:"uint8[]",name:"assetClasses"},{type:"uint8[]",name:"riskTiers"},{type:"bool",name:"isMYXBroker"}],outputs:[{type:"tuple[]",name:"brokerFees",components:[{type:"uint8",name:"asset"},{type:"tuple[]",name:"riskTieredBrokerFees",components:[{type:"uint8",name:"riskTier"},{type:"tuple[]",name:"addOnFeeTiers",components:[{type:"uint8",name:"tier"},{type:"uint32",name:"takerFeeRate"},{type:"int32",name:"makerFeeRate"}]},{type:"tuple[]",name:"baseFeeRate",components:[{type:"uint8",name:"assetClass"},{type:"uint32",name:"makerFeeRate"},{type:"uint32",name:"takerFeeRate"}]},{type:"tuple[]",name:"specialFeeTiers",components:[{type:"uint8",name:"tier"},{type:"uint32",name:"takerFeeRate"},{type:"int32",name:"makerFeeRate"}]}]}]}]},{type:"function",name:"getExchangeables",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"uint256[]",name:"marketPrices"}],outputs:[{type:"tuple[]",name:"exchangeables",components:[{type:"uint256",name:"maxBaseIn"},{type:"uint256",name:"maxQuoteIn"},{type:"uint256",name:"maxBaseOut"},{type:"uint256",name:"maxQuoteOut"}]}]},{type:"function",name:"getLiquidationPrice",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"positionId"},{type:"uint256",name:"marketPrice"}],outputs:[{type:"uint256"}]},{type:"function",name:"getPoolInfo",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"marketPrice"}],outputs:[{type:"tuple",components:[{type:"tuple",name:"basePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"quotePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"reserveInfo",components:[{type:"uint256",name:"baseTotalAmount"},{type:"uint256",name:"baseReservedAmount"},{type:"uint256",name:"quoteTotalAmount"},{type:"uint256",name:"quoteReservedAmount"}]},{type:"tuple",name:"fundingInfo",components:[{type:"int256",name:"nextFundingRate"},{type:"int256",name:"lastFundingFeeTracker"},{type:"uint256",name:"nextEpochTime"}]},{type:"tuple",name:"oi",components:[{type:"int256",name:"tracker"},{type:"uint256",name:"longSize"},{type:"uint256",name:"shortSize"},{type:"uint256",name:"poolEntryPrice"}]},{type:"tuple",name:"liquidityInfo",components:[{type:"uint256",name:"windowCaps"},{type:"int256",name:"openInterest"}]}]}]},{type:"function",name:"getPoolInfos",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"uint256[]",name:"marketPrices"}],outputs:[{type:"tuple[]",components:[{type:"tuple",name:"basePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"quotePool",components:[{type:"address",name:"poolToken"},{type:"uint256",name:"exchangeRate"},{type:"uint256",name:"poolTokenPrice"},{type:"uint256",name:"poolTokenSupply"},{type:"uint256",name:"totalDebt"},{type:"uint256",name:"baseCollateral"}]},{type:"tuple",name:"reserveInfo",components:[{type:"uint256",name:"baseTotalAmount"},{type:"uint256",name:"baseReservedAmount"},{type:"uint256",name:"quoteTotalAmount"},{type:"uint256",name:"quoteReservedAmount"}]},{type:"tuple",name:"fundingInfo",components:[{type:"int256",name:"nextFundingRate"},{type:"int256",name:"lastFundingFeeTracker"},{type:"uint256",name:"nextEpochTime"}]},{type:"tuple",name:"oi",components:[{type:"int256",name:"tracker"},{type:"uint256",name:"longSize"},{type:"uint256",name:"shortSize"},{type:"uint256",name:"poolEntryPrice"}]},{type:"tuple",name:"liquidityInfo",components:[{type:"uint256",name:"windowCaps"},{type:"int256",name:"openInterest"}]}]}]},{type:"function",name:"getPoolTokenPrices",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32[]",name:"poolIds"},{type:"uint256[]",name:"marketPrices"}],outputs:[{type:"tuple[]",components:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"basePoolTokenPrice"},{type:"uint256",name:"quotePoolTokenPrice"}]}]},{type:"function",name:"getPositionFees",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"positionId"},{type:"address",name:"broker"},{type:"uint256",name:"price"}],outputs:[{type:"int256",name:"netCollateral"},{type:"uint256",name:"collateralAmount"},{type:"int256",name:"tradingFee"},{type:"int256",name:"fundingFee"},{type:"int256",name:"unrealizedPnl"}]},{type:"function",name:"getRiskParameters",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint8",name:"maxRiskTier"}],outputs:[{type:"tuple[]",name:"params",components:[{type:"tuple",name:"tradeLimitParams",components:[{type:"uint64",name:"minTradeUsd"},{type:"uint16",name:"maxPriceDeviation"}]},{type:"tuple",name:"riskLockParams",components:[{type:"uint64",name:"windowCapUsd"},{type:"uint64",name:"liquidityWindowSize"},{type:"uint64",name:"profitWindowSize"},{type:"uint16",name:"priceRangePct"},{type:"uint32",name:"baseSlippage"}]},{type:"tuple",name:"poolConfigParams",components:[{type:"uint16",name:"leverage"},{type:"uint16",name:"maintainMarginRate"},{type:"uint16",name:"baseTokenCollateralRatio"},{type:"uint16",name:"exchangeIncentiveRate"},{type:"uint16",name:"genesisRebateRatio"},{type:"uint8",name:"assetClass"}]},{type:"tuple",name:"fundingRateParams",components:[{type:"int32",name:"maxRate"},{type:"uint32",name:"equilibriumRange"},{type:"int32",name:"lowGrowthRate"},{type:"int32",name:"highGrowthRate"},{type:"uint32",name:"epochDuration"}]}]}]},{type:"function",name:"getSumProfitLock",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address[]",name:"respondents"}],outputs:[{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"},{type:"tuple[]",name:"infos",components:[{type:"address",name:"account"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}]}]},{type:"function",name:"getUserPositionInfos",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"user"},{type:"bytes32[]",name:"poolIds"}],outputs:[{type:"tuple[]",name:"positions",components:[{type:"bytes32",name:"positionId"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"size"},{type:"uint256",name:"entryPrice"},{type:"int256",name:"fundingRateIndex"},{type:"uint256",name:"earlyClosePrice"},{type:"uint8",name:"direction"},{type:"uint8",name:"riskTier"},{type:"uint64",name:"lastUpdateTime"},{type:"uint256",name:"collateralAmount"}]}]}];var Ee=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"ERC2771ForwarderExpiredRequest",inputs:[{type:"uint48",name:"deadline"}]},{type:"error",name:"ERC2771ForwarderInvalidSigner",inputs:[{type:"address",name:"signer"},{type:"address",name:"from"}]},{type:"error",name:"ERC2771ForwarderMismatchedValue",inputs:[{type:"uint256",name:"requestedValue"},{type:"uint256",name:"msgValue"}]},{type:"error",name:"ERC2771UntrustfulTarget",inputs:[{type:"address",name:"target"},{type:"address",name:"forwarder"}]},{type:"error",name:"ExceedsMaximumRelayFee",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InconsistentParamsLength",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"balance"},{type:"uint256",name:"needed"}]},{type:"error",name:"InsufficientFeeAllowance",inputs:[{type:"address",name:"user"},{type:"uint256",name:"allowance"},{type:"uint256",name:"required"}]},{type:"error",name:"InsufficientFeeBalance",inputs:[{type:"address",name:"user"},{type:"uint256",name:"balance"},{type:"uint256",name:"required"}]},{type:"error",name:"InvalidAccountNonce",inputs:[{type:"address",name:"account"},{type:"uint256",name:"currentNonce"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"MismatchExecuteFee",inputs:[{type:"uint256",name:"balanceBefore"},{type:"uint256",name:"balanceAfter"},{type:"uint256",name:"expected"}]},{type:"error",name:"MismatchedSender",inputs:[{type:"address",name:"sender"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotAllowedTarget",inputs:[{type:"address",name:"target"}]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"OnlyRelayer",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"RelayerRegistered",inputs:[{type:"address",name:"relayer"}]},{type:"error",name:"RemoveRelayerFailed",inputs:[]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"AddAllowedTarget",inputs:[{type:"address",name:"target",indexed:false}]},{type:"event",anonymous:false,name:"ChargeForwardFee",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"feeToken",indexed:false},{type:"uint256",name:"relayFee",indexed:false}]},{type:"event",anonymous:false,name:"EIP712DomainChanged",inputs:[]},{type:"event",anonymous:false,name:"ERC20PermitFailed",inputs:[{type:"address",name:"token",indexed:false},{type:"string",name:"reason",indexed:false}]},{type:"event",anonymous:false,name:"ERC20PermitLowLevelFailed",inputs:[{type:"bytes",name:"data",indexed:false}]},{type:"event",anonymous:false,name:"ExecutedForwardRequest",inputs:[{type:"address",name:"signer",indexed:true},{type:"uint256",name:"nonce",indexed:false},{type:"bool",name:"success",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"RemoveAllowedTarget",inputs:[{type:"address",name:"target",indexed:false}]},{type:"event",anonymous:false,name:"SetUserRelayer",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"relayer",indexed:false},{type:"bool",name:"enable",indexed:false}]},{type:"event",anonymous:false,name:"UpdateAcquiescentFeeToken",inputs:[{type:"address",name:"sender",indexed:false},{type:"address",name:"oldRelayGas",indexed:false},{type:"address",name:"newRelayGas",indexed:false}]},{type:"event",anonymous:false,name:"UpdateEquilibriumGas",inputs:[{type:"address",name:"sender",indexed:false},{type:"uint256",name:"oldRelayGas",indexed:false},{type:"uint256",name:"newRelayGas",indexed:false}]},{type:"event",anonymous:false,name:"UpdateMaxRelayFee",inputs:[{type:"address",name:"sender",indexed:false},{type:"uint256",name:"oldMaxRelayFee",indexed:false},{type:"uint256",name:"newMaxRelayFee",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"addAllowedTarget",constant:false,payable:false,inputs:[{type:"address",name:"target"}],outputs:[]},{type:"function",name:"batchExecuteForwarder",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"forwardFeeToken"},{type:"tuple[]",name:"bundleParams",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]}],outputs:[]},{type:"function",name:"eip712Domain",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes1",name:"fields"},{type:"string",name:"name"},{type:"string",name:"version"},{type:"uint256",name:"chainId"},{type:"address",name:"verifyingContract"},{type:"bytes32",name:"salt"},{type:"uint256[]",name:"extensions"}]},{type:"function",name:"equilibriumGas",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"execute",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]},{type:"address"}],outputs:[]},{type:"function",name:"executeBatch",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]},{type:"address"},{type:"address"}],outputs:[]},{type:"function",name:"executeForwarder",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"forwardFeeToken"},{type:"tuple",name:"params",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]}],outputs:[]},{type:"function",name:"exitForwardMode",constant:false,payable:false,inputs:[],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getAllowedTargets",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address[]"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getDesignatedToken",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getEquilibriumGas",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getUserRelayers",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"address[]"}]},{type:"function",name:"inForwardMode",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bool"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"},{type:"uint256",name:"_equilibriumGas"}],outputs:[]},{type:"function",name:"isAllowedTargets",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"contractAddr"}],outputs:[{type:"bool"}]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"isUserRelayerEnabled",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"address",name:"relayer"}],outputs:[{type:"bool"}]},{type:"function",name:"nonces",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"owner"}],outputs:[{type:"uint256"}]},{type:"function",name:"originAccount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"relayer"}],outputs:[{type:"address",name:"account"}]},{type:"function",name:"permitAndApproveForwarder",constant:false,payable:false,inputs:[{type:"address",name:"relayer"},{type:"bool",name:"enable"},{type:"tuple[]",name:"permitParams",components:[{type:"address",name:"token"},{type:"address",name:"owner"},{type:"address",name:"spender"},{type:"uint256",name:"value"},{type:"uint256",name:"deadline"},{type:"uint8",name:"v"},{type:"bytes32",name:"r"},{type:"bytes32",name:"s"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"removeAllowedTarget",constant:false,payable:false,inputs:[{type:"address",name:"target"}],outputs:[]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateEquilibriumGas",constant:false,payable:false,inputs:[{type:"uint256",name:"_equilibriumGas"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"verify",constant:true,stateMutability:"view",payable:false,inputs:[{type:"tuple",name:"request",components:[{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"value"},{type:"uint256",name:"gas"},{type:"uint48",name:"deadline"},{type:"bytes",name:"data"},{type:"bytes",name:"signature"}]}],outputs:[{type:"bool"}]}];var we=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"AlreadyClaimed",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"user"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidAmount",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"user"}]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"MerkleTreeVerificationFailed",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"user"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReimbursementValidity",inputs:[{type:"uint256",name:"caseId"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"TreeAlreadySet",inputs:[]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementClaimExpired",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"user",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementClaimed",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"user",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementInfoSet",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"bytes32",name:"merkleRoot",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"totalBaseAmount",indexed:false},{type:"uint256",name:"totalQuoteAmount",indexed:false},{type:"uint256",name:"claimedBaseAmount",indexed:false},{type:"uint256",name:"claimedQuoteAmount",indexed:false},{type:"uint256",name:"expireTime",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"claimExpiredCases",constant:false,payable:false,inputs:[{type:"uint256[]",name:"caseIds"},{type:"address",name:"receiver"}],outputs:[]},{type:"function",name:"claimReimbursement",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"},{type:"bytes32[]",name:"merkleProof"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getReimbursementInfo",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[{type:"tuple",components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"setReimbursementInfo",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"tuple",name:"reimbursementInfo",components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]},{type:"bytes32[]",name:"zeroMerkleProof"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var Te=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"BondNotReleased",inputs:[]},{type:"error",name:"BondZeroAmount",inputs:[]},{type:"error",name:"CaseAppealNotFinished",inputs:[]},{type:"error",name:"CaseDeadlineNotReached",inputs:[]},{type:"error",name:"CaseDeadlineReached",inputs:[]},{type:"error",name:"CaseNotAccepted",inputs:[]},{type:"error",name:"CaseNotExist",inputs:[{type:"uint256",name:"caseId"}]},{type:"error",name:"CaseRespondentAppealed",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"respondent"}]},{type:"error",name:"DisputeNotAllowed",inputs:[]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"InvalidParameter",inputs:[]},{type:"error",name:"InvalidPoolToken",inputs:[]},{type:"error",name:"InvalidProfitAmount",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotCaseRespondent",inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"respondent"}]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"OnlyRelayer",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"RiskCloseNotCompleted",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"error",name:"UnexpectedCaseState",inputs:[]},{type:"error",name:"UnexpectedCaseType",inputs:[]},{type:"event",anonymous:false,name:"AppealCanceled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"appealCaseId",indexed:false},{type:"address",name:"complainant",indexed:false},{type:"bool",name:"isMalicious",indexed:false}]},{type:"event",anonymous:false,name:"AppealFiled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"appealCaseId",indexed:false},{type:"address",name:"respondent",indexed:false},{type:"address",name:"appealToken",indexed:false},{type:"uint256",name:"appealBond",indexed:false},{type:"uint64",name:"appealDeadline",indexed:false}]},{type:"event",anonymous:false,name:"AppealResolved",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"appealCaseId",indexed:false},{type:"uint8",name:"resolution",indexed:false},{type:"address",name:"complainant",indexed:false}]},{type:"event",anonymous:false,name:"BondClaimed",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"user",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"CaseAppealsResolved",inputs:[{type:"uint256",name:"caseId",indexed:false}]},{type:"event",anonymous:false,name:"CaseRiskClosed",inputs:[{type:"uint256",name:"caseId",indexed:false}]},{type:"event",anonymous:false,name:"DisputeCanceled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"complainant",indexed:false},{type:"bool",name:"isMalicious",indexed:false}]},{type:"event",anonymous:false,name:"DisputeConfigurationUpdated",inputs:[{type:"tuple",name:"newDisputeConfigration",indexed:false,components:[{type:"address",name:"appealToken"},{type:"uint64",name:"disputeBondUsd"},{type:"uint64",name:"appealBondUsd"},{type:"uint64",name:"disputeThresholdUsd"},{type:"uint64",name:"caseDuration"},{type:"uint64",name:"voteDuration"},{type:"uint64",name:"resolveDuration"}]}]},{type:"event",anonymous:false,name:"DisputeFiled",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"bytes32",name:"poolId",indexed:false},{type:"address",name:"complainant",indexed:false},{type:"address",name:"poolToken",indexed:false},{type:"uint256",name:"disputeBond",indexed:false},{type:"uint64",name:"caseDeadline",indexed:false}]},{type:"event",anonymous:false,name:"DisputeResolved",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint8",name:"resolution",indexed:false},{type:"uint64",name:"appealDeadline",indexed:false}]},{type:"event",anonymous:false,name:"ForfeitBondsClaimed",inputs:[{type:"address",name:"receiver",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementProcessed",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"tuple",name:"reimbursementInfo",indexed:false,components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]}]},{type:"event",anonymous:false,name:"ReimbursementVoteOpened",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"bytes32",name:"merkleRoot",indexed:false},{type:"uint256",name:"totalBaseAmount",indexed:false},{type:"uint256",name:"totalQuoteAmount",indexed:false},{type:"uint64",name:"voteDeadline",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementVoteRejected",inputs:[{type:"uint256",name:"caseId",indexed:false}]},{type:"event",anonymous:false,name:"ReimbursementVoteSubmitted",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"validator",indexed:false},{type:"uint8",name:"voteOption",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"event",anonymous:false,name:"Voted",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"address",name:"voter",indexed:false},{type:"uint8",name:"voteOption",indexed:false}]},{type:"event",anonymous:false,name:"VotingOpened",inputs:[{type:"uint256",name:"caseId",indexed:false},{type:"uint256",name:"evidenceId",indexed:false},{type:"uint64",name:"voteDeadline",indexed:false},{type:"address[]",name:"respondents",indexed:false}]},{type:"event",anonymous:false,name:"WormholeConfigurationUpdated",inputs:[{type:"tuple",name:"newWormholeConfiguration",indexed:false,components:[{type:"address",name:"wormhole"},{type:"address",name:"validatorView"},{type:"uint32",name:"maxAge"},{type:"bytes4",name:"selector"}]}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"appeal",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[]},{type:"function",name:"canRiskControlClose",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[{type:"bool"}]},{type:"function",name:"cancelAppeal",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"uint256",name:"appealCaseId"},{type:"bool",name:"isMalicious"}],outputs:[]},{type:"function",name:"cancelDispute",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bool",name:"isMalicious"}],outputs:[]},{type:"function",name:"caseIdSequencer",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"checkRiskControlCloseCompleted",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[]},{type:"function",name:"claimBond",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"}],outputs:[]},{type:"function",name:"claimForfeitBonds",constant:false,payable:false,inputs:[{type:"address",name:"receiver"}],outputs:[]},{type:"function",name:"fileDispute",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"bytes32",name:"poolId"},{type:"address",name:"poolToken"}],outputs:[]},{type:"function",name:"fileDisputeFromStaker",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getDisputeConfiguration",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"tuple",components:[{type:"address",name:"appealToken"},{type:"uint64",name:"disputeBondUsd"},{type:"uint64",name:"appealBondUsd"},{type:"uint64",name:"disputeThresholdUsd"},{type:"uint64",name:"caseDuration"},{type:"uint64",name:"voteDuration"},{type:"uint64",name:"resolveDuration"}]},{type:"uint32"},{type:"uint32"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isCaseRespondents",constant:true,stateMutability:"view",payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"account"}],outputs:[{type:"bool"}]},{type:"function",name:"openReimbursementVote",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes32",name:"merkleRoot"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"}],outputs:[]},{type:"function",name:"openVoting",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"uint256",name:"evidenceId"},{type:"address[]",name:"respondents"}],outputs:[]},{type:"function",name:"processReimbursement",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]},{type:"tuple",name:"reimbursementInfo",components:[{type:"bytes32",name:"merkleRoot"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint256",name:"totalBaseAmount"},{type:"uint256",name:"totalQuoteAmount"},{type:"uint256",name:"claimedBaseAmount"},{type:"uint256",name:"claimedQuoteAmount"},{type:"uint256",name:"expireTime"}]},{type:"bytes32[]",name:"zeroMerkleProof"}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"resolveCaseAppeals",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]}],outputs:[]},{type:"function",name:"resolveDispute",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"bytes",name:"response"},{type:"tuple[]",name:"guardianSignatures",components:[{type:"bytes32",name:"r"},{type:"bytes32",name:"s"},{type:"uint8",name:"v"},{type:"uint8",name:"guardianIndex"}]}],outputs:[]},{type:"function",name:"updateDisputeConfiguration",constant:false,payable:false,inputs:[{type:"tuple",name:"disputeConfiguration",components:[{type:"address",name:"appealToken"},{type:"uint64",name:"disputeBondUsd"},{type:"uint64",name:"appealBondUsd"},{type:"uint64",name:"disputeThresholdUsd"},{type:"uint64",name:"caseDuration"},{type:"uint64",name:"voteDuration"},{type:"uint64",name:"resolveDuration"}]},{type:"uint32",name:"voteCountRate"},{type:"uint32",name:"effectiveVoteRate"}],outputs:[]},{type:"function",name:"updateWormholeConfiguration",constant:false,payable:false,inputs:[{type:"tuple",name:"wormholeConfiguration",components:[{type:"address",name:"wormhole"},{type:"address",name:"validatorView"},{type:"uint32",name:"maxAge"},{type:"bytes4",name:"selector"}]}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"vote",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"validator"},{type:"uint8",name:"voteOption"},{type:"uint256",name:"deadline"},{type:"uint8",name:"v"},{type:"bytes32",name:"r"},{type:"bytes32",name:"s"}],outputs:[]},{type:"function",name:"voteReimbursement",constant:false,payable:false,inputs:[{type:"uint256",name:"caseId"},{type:"address",name:"validator"},{type:"uint8",name:"voteOption"},{type:"uint256",name:"deadline"},{type:"uint8",name:"v"},{type:"bytes32",name:"r"},{type:"bytes32",name:"s"}],outputs:[]}];var mt=[{type:"error",name:"AccountInsufficientFreeAmount",inputs:[]},{type:"error",name:"AccountInsufficientReservedAmount",inputs:[]},{type:"error",name:"AccountInsufficientTradableAmount",inputs:[{type:"uint256",name:"accountTradableAmount"},{type:"uint256",name:"requiredTradableAmount"}]},{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"DepositToAccount",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"ExecuteCompensation",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"baseAmount",indexed:false},{type:"uint256",name:"quoteAmount",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"PayWithPrincipal",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"receiver",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"PayWithProfitFirst",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"receiver",indexed:false},{type:"bytes32",name:"poolId",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"usedFreeAmount",indexed:false},{type:"uint256",name:"usedRestrictedAmount",indexed:false}]},{type:"event",anonymous:false,name:"ReleaseForOrder",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"orderId",indexed:false},{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"ReleaseProfit",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"ReserveForOrder",inputs:[{type:"bytes32",name:"poolId",indexed:false},{type:"uint256",name:"orderId",indexed:false},{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"event",anonymous:false,name:"SettleToAccount",inputs:[{type:"address",name:"account",indexed:false},{type:"bytes32",name:"positionId",indexed:false},{type:"address",name:"baseToken",indexed:false},{type:"address",name:"quoteToken",indexed:false},{type:"uint256",name:"freeBase",indexed:false},{type:"uint256",name:"profitBase",indexed:false},{type:"uint256",name:"freeAmount",indexed:false},{type:"uint256",name:"profitAmount",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"event",anonymous:false,name:"WithdrawFromAccount",inputs:[{type:"address",name:"account",indexed:false},{type:"address",name:"token",indexed:false},{type:"uint256",name:"amount",indexed:false}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"deposit",constant:false,payable:false,inputs:[{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"executeCompensation",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"reimbursement"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"getImplementation",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getPoolWithdrawableBaseToken",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"bytes32",name:"poolId"}],outputs:[{type:"uint256",name:"baseAmount"}]},{type:"function",name:"getTradableAmount",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"bytes32",name:"poolId"}],outputs:[{type:"bool"},{type:"uint256"},{type:"uint256"},{type:"uint256"}]},{type:"function",name:"getUserAsset",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"},{type:"address",name:"token"}],outputs:[{type:"uint256",name:"amount"}]},{type:"function",name:"getUserAssets",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"account"}],outputs:[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"}]}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"payWithPrincipal",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"},{type:"address",name:"receiver"}],outputs:[]},{type:"function",name:"payWithProfitFirst",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"orderId"},{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[{type:"uint256",name:"usedFreeAmount"},{type:"uint256",name:"usedRestrictedAmount"}]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"releaseForCancelOrder",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"orderId"},{type:"address",name:"account"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"releaseFromProfitUnlock",constant:false,payable:false,inputs:[{type:"address",name:"account"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"baseAmount"},{type:"uint256",name:"quoteAmount"}],outputs:[]},{type:"function",name:"reserveForOrder",constant:false,payable:false,inputs:[{type:"bytes32",name:"poolId"},{type:"uint256",name:"orderId"},{type:"address",name:"account"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"settlementDeposit",constant:false,payable:false,inputs:[{type:"bytes32",name:"positionId"},{type:"address",name:"account"},{type:"tuple",name:"pool",components:[{type:"bytes32",name:"marketId"},{type:"bytes32",name:"poolId"},{type:"address",name:"baseToken"},{type:"address",name:"quoteToken"},{type:"uint8",name:"riskTier"},{type:"uint8",name:"state"},{type:"address",name:"basePoolToken"},{type:"address",name:"quotePoolToken"},{type:"uint16",name:"maxPriceDeviation"},{type:"bool",name:"compoundEnabled"},{type:"uint64",name:"windowCapUsd"},{type:"address",name:"poolVault"},{type:"address",name:"tradingVault"}]},{type:"uint256",name:"freeBaseAmount"},{type:"uint256",name:"freeQuoteAmount"},{type:"uint256",name:"receivedBaseAmount"},{type:"uint256",name:"receivedQuoteAmount"}],outputs:[]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateAndWithdraw",constant:false,payable:false,inputs:[{type:"address",name:"receiver"},{type:"bytes32",name:"poolId"},{type:"bool",name:"isQuoteToken"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"upgradeTo",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var yt={USDC:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",POOL_MANAGER:"0x3E4e97c1Ff6A97847E5EB8246b8bAA15da1539dD",Account:"0x4F50B5e84A4d29e3Aa7cC0d3707cC0A338ffE5ea",POSITION_MANAGER:"0x23d022365d9a675DEA8Fa188D29B05C327263295",ORDER_MANAGER:"0x600B71aA71b6d624d4b3ABE0F8Ed75C50F031856",PYTH:"0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF",ERC20:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",LIQUIDITY_ROUTER:"0xF47De41B5F8a5d5db5Ec45950C747c5b61E64bCe",BASE_POOL:"0x652525FB7563d9468e5F4EE7D422E7dF2f3Ef599",QUOTE_POOL:"0xaF7c009239e6AdD4721B8A049Bd78105d341C337",ORACLE:"0x61f9CD3AE93737DDaa9a03c17BdB7051145e663e",EIP7702Delegation:"0x0c426bfA0D1084dE18f65EF7b9A9aC41D037Ba1c",MARKET_MANAGER:"0xBB404056d1c469a6AC5E523d15d4B10cFA61D1f1",DATA_PROVIDER:"0x2c8d06898aCc9fD24e3E3C7Ff7290A772ca5625d",ORACLE_RESERVE:"0x7bf8FCC50Feed7311AF3411aDE6fb1351c8AAAde",FORWARDER:"0x8Af3b6B7C8FAD218630D1d54ACb1656124291198",TRADING_ROUTER:"0xb24440F796cfA5d23c8089A377435e177e4d3F47",REIMBURSEMENT:"0x1C0c2eBF6bbCFFAF22A97d78ccfD5C52792d5958",DISPUTE_COURT:"0x250d8a6e2d770bf910Aa08671Dd3B13e0D96ee2e"};var lt={USDC:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",POOL_MANAGER:"0x05314a21Fc97B74f168730153b2B63A870D25dE5",Account:"0xAC0ca67fd6C7Ff9c80DE58420B840115b6d51c6e",POSITION_MANAGER:"0x1a8cC8391Ee19c3817de64a52904D0557f519bA5",ORDER_MANAGER:"0x3138f425f11f14fE33a180e9Bbf0661C8dc6d8AD",PYTH:"0x4374e5a8b9C22271E9EB878A2AA31DE97DF15DAF",ERC20:"0x7E248Ec1721639413A280d9E82e2862Cae2E6E28",LIQUIDITY_ROUTER:"0xfb790ECE13Cd9e296b4a06ABF38D10431360c236",BASE_POOL:"0x1F767BEa83EDe5E0C18904f439C579f52c2c0F1b",QUOTE_POOL:"0x50ad7da312c58c6689bEF028954a366cb5b8ee13",ORACLE:"0x3e437094C5687Ed6eDb1883b0bd445Efa9103a55",EIP7702Delegation:"0xc68fdf81ca68B26fdB296645F42a734c12E63751",MARKET_MANAGER:"0x71b57CcB7539aB761fd5C5767362A207a295e337",DATA_PROVIDER:"0xd4FdE3cc72D29b71507823cA43Dd6fD520644E92",ORACLE_RESERVE:"0x4fC26Cf34e5d486BFF211315bf17D77d34130971",FORWARDER:"0x58fb1a663b08871A755734231C387E1d10ac2B10",TRADING_ROUTER:"0x89ba8EDBD63f577cAA1095F25Df0A44A226f28bc",REIMBURSEMENT:"0xDbCe02B080C68671EF6EcEc1a01A789441A3a564",DISPUTE_COURT:"0x47648D171925a69b3A334898AaaE6e7cc41B1735"};var dt={USDC:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",POOL_MANAGER:"0x9207FBDDF4B3adACB92Cc04C99F2E47573826a1B",Account:"0xc10a7fbd80244B22CAd00F9dD12f265BF7664914",POSITION_MANAGER:"0x9dfb3816dC262308528A2AE82e1b3f69d6783CE5",ORDER_MANAGER:"0x4d77415DF43cE6b8dECC1d1DBBd628CD1827a3B4",PYTH:"0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",ERC20:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",LIQUIDITY_ROUTER:"0x57eC4Fe20a94327Bcb0Dc66C14F1E2f5f893371E",BASE_POOL:"0x690B9BB7199031Fbcbb28a717E02a1787A479573",QUOTE_POOL:"0x1c625bfE9445C488B1165eD909014bAcEa6F4797",ORACLE:"0x63074276D824194802be6Af7357228CF0BD09F9b",EIP7702Delegation:"0x5164F4AB3907C2d500d9E2D634DA1fae133d624d",MARKET_MANAGER:"0x410230345104c6779e2655510b0C08D60395f046",DATA_PROVIDER:"0x0b9321ec5ecc1D02385744891f61922B1195Bd80",ORACLE_RESERVE:"0x2e71f3dF1D0c42728982fCFba0C9785d8AF32e9D",FORWARDER:"0xBa9785A42eCB2765a627aB48dd4FCB78658980e9",TRADING_ROUTER:"0x04B3627a89Be49674AA77dcB907ee233f9b87a61",REIMBURSEMENT:"0x6973960FcE7A248dF210F00Bb291743AbAc7EB4f",DISPUTE_COURT:"0xe759EaD8aeba0e10bE9078b6331addCD5041d754"};var ct={POOL_MANAGER:"0xcf51a6895864c6D8E507fC31EF16b9011287c5f4",Account:"0x35054EfE58Bbdae792aeCaD7bC2e4939c169560f",POSITION_MANAGER:"0x689A0C7E46785584FF7636700ceF5d5e7c141F8D",ORDER_MANAGER:"0xa0B5E5AE9D3E214096C90DDeC04D39B27ED9B272",PYTH:"0xA2aa501b19aff244D90cc15a4Cf739D2725B5729",ERC20:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",LIQUIDITY_ROUTER:"0x0AE31989318565620c03d35889a0B2536b8fba5C",BASE_POOL:"0xc9e3826c42183207B418116A16827C1605132c51",QUOTE_POOL:"0x9A9934D3b22103dE822d94A22A3177d728FE0e5a",ORACLE:"0x0dD8293765358cF7f2646D0B91bA59804E197FC6",EIP7702Delegation:"0x4686F8a0d44b056037b2A51c4342EE7FA8e0A48F",MARKET_MANAGER:"0xe99dAB65c5546D7C87850Bbc40C6a7BEd7328Efa",DATA_PROVIDER:"0x5b6Be9839552a49302d552aB3C223b60Adb8BF1D",ORACLE_RESERVE:"0xB3D5a67223905FE73a0749e7A03525838063C54C",USDC:"0xD984fd34f91F92DA0586e1bE82E262fF27DC431b",FORWARDER:"0x6C40462A4d45BA4119af59Fb9e41b8eaC9293962",TRADING_ROUTER:"0x0000000000000000000000000000000000000000",REIMBURSEMENT:"0x0000000000000000000000000000000000000000",DISPUTE_COURT:"0x0000000000000000000000000000000000000000"};var ft={USDC:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",POOL_MANAGER:"0x4F917ef137b573D9790b87e3cF6dfb698cF00c9c",Account:"0xE58CC82F96c86f8F809A98BE14D9DC929d503e25",POSITION_MANAGER:"0x7A5000A1DDE26520BfC893c676a288F98F8a029c",ORDER_MANAGER:"0x343d7563eFb904375Fea81BcC4A3eCdDc0CDa8C9",PYTH:"0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",ERC20:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",LIQUIDITY_ROUTER:"0xe9F2E58562aD1D50AfB1eD92EAa6D367A6D0e552",BASE_POOL:"0x39506f97D1c1A91EAfD59368697E20dC1fE5eEDB",QUOTE_POOL:"0x80DAa474e7e2C9c86708e434B80636b92fb4e9EE",ORACLE:"0xB980765F0D5D3B482601F1a62Ec898619DA9c0C5",EIP7702Delegation:"0x9d43e7847f74E141E1A2B4C413D5F89520995551",MARKET_MANAGER:"0x624d1D5258b34d5C3F4f9CdCB7582F677643cdDC",DATA_PROVIDER:"0xb3c6b1448F04B3Eb9A5D83D6c32B0a10F3E7281B",ORACLE_RESERVE:"0x949e8a0284eA5509B47619e7667C3aA43B7c0336",FORWARDER:"0x73F9F9205E2F7E0Fb886afC3D2a53399C85383a5",TRADING_ROUTER:"0x0000000000000000000000000000000000000000",REIMBURSEMENT:"0x0000000000000000000000000000000000000000",DISPUTE_COURT:"0x0000000000000000000000000000000000000000"};var bt={USDC:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",POOL_MANAGER:"0x9E84a999e15CCdb2F64a5AF10939c25769dF6b07",Account:"0x42A1BC012CeC51Ebf3bbf79142bf2a912396FB0e",POSITION_MANAGER:"0x011a25Fe39b2f9033E49d1587CF24780242e40dA",ORDER_MANAGER:"0xfc30D3C858B72a9EDfE6679Fc3355039D276f811",PYTH:"0x5744Cbf430D99456a0A8771208b674F27f8EF0Fb",ERC20:"0xe944d7c0f7005a76E898Ee3B9Ec10479EbA9Cc02",LIQUIDITY_ROUTER:"0x0F4C6f18Fb136DD1eBd6Da3C5d86a86597CF79a3",BASE_POOL:"0x51B62554a76197d5DF2D5dC4D57FF54d40775938",QUOTE_POOL:"0x783Ed065a12e1C1D33c2a8d6408385C1843D3084",ORACLE:"0xaF26d69BC0A6f1DEf8AeB00B6DAD28398ba67a53",EIP7702Delegation:"0xc8558cD3905F273ff45B1dd6D10894445bFa622f",MARKET_MANAGER:"0x3b809daB550f9DD0DbE82567f6EA6137C174532c",DATA_PROVIDER:"0x4B5888025570934cC9D31807feBAAEDaC823Cb8e",ORACLE_RESERVE:"0x3011dA5822c1ECA7fcda64716779769D0089945D",FORWARDER:"0x2943a063ae2A772f4314FaA28E00De827A491Dd3",TRADING_ROUTER:"0xaA16801F36e49cDD4f87938032487C7E6cfbb389",REIMBURSEMENT:"0xBF72B69bA547D0bB7D1255B43Ff5D7f2615326dF",DISPUTE_COURT:"0xeD8B129a5919c45c7391AA73632eA691A471C672"};var re=Dn__default.default(),On=(t,e)=>e?(e=JSON.parse(JSON.stringify(e)),t.includes("?")?t+"&"+new URLSearchParams(e).toString():t+"?"+new URLSearchParams(e).toString()):t,G={get:(t,e,n={})=>{let a=On(t,e);return re.url(a).options(n).get().json()},post:(t,e,n={})=>re.url(t).options(n).post(e).json(),put:(t,e,n={})=>re.url(t).options(n).put(e).json(),delete:(t,e={})=>re.url(t).options(e).delete().json()};var Fn=(i=>(i[i.SUCCESS=9200]="SUCCESS",i[i.SUCCESS_ORIGIN=0]="SUCCESS_ORIGIN",i[i.IDENTITY_VERIFICATION_FAILED=9401]="IDENTITY_VERIFICATION_FAILED",i[i.PERMISSION_DENIED=9403]="PERMISSION_DENIED",i[i.NOT_EXIST=9404]="NOT_EXIST",i[i.REQUEST_LIMIT=9429]="REQUEST_LIMIT",i[i.SERVICE_ERROR=9500]="SERVICE_ERROR",i[i.MISS_REQUESTED_PARAMETER=9900]="MISS_REQUESTED_PARAMETER",i[i.INVALID_PARAMETER=9901]="INVALID_PARAMETER",i.NETWORK_ERROR="ERR_NETWORK",i))(Fn||{}),_n=(o=>(o[o.Cook=0]="Cook",o[o.Boosted=1]="Boosted",o[o.Primed=2]="Primed",o[o.Trench=3]="Trench",o[o.PreBench=4]="PreBench",o[o.Bench=5]="Bench",o))(_n||{}),gt=(n=>(n[n.Chainlink=1]="Chainlink",n[n.Pyth=2]="Pyth",n))(gt||{}),kn=(r=>(r[r.Minute1=1]="Minute1",r[r.Minute5=5]="Minute5",r[r.Minute15=15]="Minute15",r[r.Minute30=30]="Minute30",r[r.Hour1=60]="Hour1",r[r.Hour4=240]="Hour4",r[r.Day1=1440]="Day1",r[r.Week1=10080]="Week1",r[r.Month1=40320]="Month1",r))(kn||{}),Sn=(a=>(a[a.Contract=1]="Contract",a[a.Cook=2]="Cook",a[a.Earn=3]="Earn",a))(Sn||{}),Nn=(s=>(s[s.All=0]="All",s[s.Contract=1]="Contract",s[s.Cook=2]="Cook",s[s.Earn=3]="Earn",s))(Nn||{}),Bn=(n=>(n[n.BlueChips=1]="BlueChips",n[n.Alpha=2]="Alpha",n))(Bn||{}),Un=(a=>(a[a.BlueChips=1]="BlueChips",a[a.Alpha=2]="Alpha",a[a.Favorite=3]="Favorite",a))(Un||{});var Ln=(s=>(s[s.Market=0]="Market",s[s.Limit=1]="Limit",s[s.Stop=2]="Stop",s[s.Conditional=3]="Conditional",s))(Ln||{}),qn=(n=>(n[n.Increase=0]="Increase",n[n.Decrease=1]="Decrease",n))(qn||{}),Gn=(m=>(m[m.Increase=0]="Increase",m[m.Decrease=1]="Decrease",m[m.AddMargin=2]="AddMargin",m[m.RemoveMargin=3]="RemoveMargin",m[m.CancelOrder=4]="CancelOrder",m[m.ADL=5]="ADL",m[m.Liquidation=6]="Liquidation",m[m.MarketClose=7]="MarketClose",m[m.EarlyClose=8]="EarlyClose",m[m.AddTPSL=9]="AddTPSL",m[m.SecurityDeposit=10]="SecurityDeposit",m[m.TransferToWallet=11]="TransferToWallet",m[m.MarginAccountDeposit=12]="MarginAccountDeposit",m[m.ReferralReward=13]="ReferralReward",m[m.ReferralRewardClaim=14]="ReferralRewardClaim",m))(Gn||{}),zn=(a=>(a[a.Unknown=0]="Unknown",a[a.GTE=1]="GTE",a[a.LTE=2]="LTE",a))(zn||{}),Wn=(n=>(n[n.Long=0]="Long",n[n.Short=1]="Short",n))(Wn||{}),Qn=(s=>(s[s.Cancelled=1]="Cancelled",s[s.Expired=2]="Expired",s[s.Successful=9]="Successful",s[s.PartialFilled=8]="PartialFilled",s))(Qn||{}),Vn=(r=>(r[r.Market=1]="Market",r[r.Limit=2]="Limit",r[r.TP=3]="TP",r[r.SL=4]="SL",r[r.ADL=5]="ADL",r[r.ADLTrigger=6]="ADLTrigger",r[r.Liquidation=7]="Liquidation",r[r.EarlyClose=8]="EarlyClose",r[r.MarketClose=9]="MarketClose",r))(Vn||{}),Hn=(i=>(i[i.Open=0]="Open",i[i.PartialClose=1]="PartialClose",i[i.FullClose=2]="FullClose",i[i.Liquidation=3]="Liquidation",i[i.EarlyClose=4]="EarlyClose",i[i.MarketClose=5]="MarketClose",i[i.ADL=6]="ADL",i[i.TP=7]="TP",i[i.SL=8]="SL",i[i.Increase=9]="Increase",i))(Hn||{}),Jn=(a=>(a[a.MarginAccount=1]="MarginAccount",a[a.WalletAccount=2]="WalletAccount",a[a.ReferralReward=3]="ReferralReward",a))(Jn||{});var Yn=(s=>(s[s.EXECUTING=1]="EXECUTING",s[s.BROADCAST_FAILED=2]="BROADCAST_FAILED",s[s.TIMEOUT_CANCEL=3]="TIMEOUT_CANCEL",s[s.EXECUTED=9]="EXECUTED",s))(Yn||{});var bs=async()=>G.get(`${W()}/openapi/gateway/scan/market/list`);var W=()=>{let{isTestnet:t,isBetaMode:e}=N?.getConfigManager()?.getConfig()||{};return e?"https://api-beta.myx.finance":t?"https://api-test.myx.cash":"https://api.myx.finance"},Q=async(t,e=[])=>e.length?G.get(`${W()}/openapi/gateway/quote/price/oracles`,{chainId:t,poolIds:e.join(",")}):Promise.reject(new Error("Invalid pool id")),It=async(t,e)=>await G.get(`${W()}/openapi/gateway/scan/market/info?chainId=${t}&poolId=${e}`),At=async(t,e,n)=>await G.get(`${W()}/openapi/gateway/scan/market/pool-order/open?chainId=${n}`,void 0,{headers:{myx_openapi_access_token:t,myx_openapi_account:e}}),Cs=async({chainId:t,poolIds:e},n)=>G.get(`${W()}/openapi/gateway/quote/candle/tickers`,{chainId:t,poolIds:e.join(",")}),Rs=async({...t})=>G.get(`${W()}/openapi/gateway/scan/market/base-details`,t),Ps=async({...t})=>G.get(`${W()}/openapi/gateway/scan/market/detail`,t),Ct=async()=>G.get(`${W()}/openapi/gateway/scan/market`);var ne,ve=class ve{constructor(){this.version="1.0.16";Xe(this,ne);}setConfigManager(e){Ke(this,ne,e);}getConfigManager(){return je(this,ne)}setProvider(e){this.provider=e;}getProvider(){return this.provider}static getInstance(){return this._instance||(this._instance=new ve),this._instance}async getMarkets(){try{let n=(await Ct())?.data||[];return this.Markets=n,n}catch(e){throw e}}};ne=new WeakMap;var te=ve,Rt=te.getInstance(),N=Rt,Ds=async t=>{let e=Rt.getConfigManager();if(!e?.hasSigner())throw new Error("No signer: call auth({ signer }) or auth({ walletClient })");return e.getViemWalletClient(t)};var Pt={USDC:"0x55d398326f99059fF775485246999027B3197955",POOL_MANAGER:"0x765F9f1b3cD39073bE9194c0Bb70b532bcEb3af4",Account:"0xC50eC7C363C479876614FcA7D68fF305Ad44AdbA",POSITION_MANAGER:"0x90dbFb618b45e4B05cEb488b08D7613E30B5199f",ORDER_MANAGER:"0xe187Bd99AaaD09dc14F557b3072805537Db7D79B",PYTH:"0x4D7E825f80bDf85e913E0DD2A2D54927e9dE1594",ERC20:"0x55d398326f99059fF775485246999027B3197955",LIQUIDITY_ROUTER:"0x2505986d5a2ac400797d5C16C38827db27b8548E",BASE_POOL:"0x92592c809a644A0C4Bb88eF9131b658551Ff2F29",QUOTE_POOL:"0x30CE3d74711ff4d2a3732d1f9FC975fD55140909",ORACLE:"0x8E249E13538B76AaA1babd5eA2f0D8635E9860F0",EIP7702Delegation:"0x5636238726665B43ce31679643364e27Af804579",MARKET_MANAGER:"0xE116d4BB03B9edF489B167b688BD4c81ef297E25",DATA_PROVIDER:"0xe5783fA834164D8C1C6B84BdF385296dB50849f8",ORACLE_RESERVE:"0x78653b37ca1626D3B8Ab2efb72B57C8a531F8aFA",FORWARDER:"0x22540CE0BD46c0Ae8F5fea5805AFAFE301e71Ed1",TRADING_ROUTER:"0x01D21a419D481f34cc62b0C9c592F19348FE137c",REIMBURSEMENT:"0xe049a36d506659818177577376A1854648958d58",DISPUTE_COURT:"0xd4eA4D870F049207aEFCCE841413C725611D47Ab"};var v=t=>{let{isBetaMode:e}=N?.getConfigManager()?.getConfig()||{};switch(t){case 421614:return e?lt:yt;case 59141:return e?ct:dt;case 97:return e?bt:ft;case 56:return Pt;default:return {}}};var xt=[{type:"error",name:"AddressEmptyCode",inputs:[{type:"address",name:"target"}]},{type:"error",name:"DesignatedTokenMismatch",inputs:[{type:"address",name:"collectToken"},{type:"address",name:"designatedToken"}]},{type:"error",name:"ERC1967InvalidImplementation",inputs:[{type:"address",name:"implementation"}]},{type:"error",name:"ERC1967NonPayable",inputs:[]},{type:"error",name:"FailedCall",inputs:[]},{type:"error",name:"InvalidInitialization",inputs:[]},{type:"error",name:"NotActiveBroker",inputs:[{type:"address",name:"broker"}]},{type:"error",name:"NotAddressManager",inputs:[]},{type:"error",name:"NotDependencyManager",inputs:[]},{type:"error",name:"NotForwardAllowedTarget",inputs:[{type:"address",name:"from"}]},{type:"error",name:"NotInitializing",inputs:[]},{type:"error",name:"NotOrderOwner",inputs:[]},{type:"error",name:"NotPositionOwner",inputs:[]},{type:"error",name:"NotProxyAdmin",inputs:[]},{type:"error",name:"PermissionDenied",inputs:[{type:"address",name:"caller"},{type:"address",name:"target"}]},{type:"error",name:"ReentrancyGuardReentrantCall",inputs:[]},{type:"error",name:"SafeERC20FailedOperation",inputs:[{type:"address",name:"token"}]},{type:"error",name:"UUPSUnauthorizedCallContext",inputs:[]},{type:"error",name:"UUPSUnsupportedProxiableUUID",inputs:[{type:"bytes32",name:"slot"}]},{type:"event",anonymous:false,name:"CollectExecutionFee",inputs:[{type:"uint8",name:"source",indexed:false},{type:"bytes32",name:"positionId",indexed:false},{type:"address",name:"account",indexed:false},{type:"uint256",name:"executionFee",indexed:false},{type:"address",name:"token",indexed:false}]},{type:"event",anonymous:false,name:"CollectForwardFee",inputs:[{type:"uint8",name:"source",indexed:false},{type:"bytes32",name:"positionId",indexed:false},{type:"address",name:"account",indexed:false},{type:"uint256",name:"forwardFee",indexed:false},{type:"address",name:"token",indexed:false}]},{type:"event",anonymous:false,name:"Initialized",inputs:[{type:"uint64",name:"version",indexed:false}]},{type:"event",anonymous:false,name:"Upgraded",inputs:[{type:"address",name:"implementation",indexed:true}]},{type:"function",name:"UPGRADE_INTERFACE_VERSION",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"string"}]},{type:"function",name:"__ERC2771ContextUpgradeable_init",constant:false,payable:false,inputs:[{type:"address",name:"trustedForwarder_"}],outputs:[]},{type:"function",name:"cancelOrder",constant:false,payable:false,inputs:[{type:"uint256",name:"orderId"}],outputs:[]},{type:"function",name:"cancelOrders",constant:false,payable:false,inputs:[{type:"uint256[]",name:"orderIds"}],outputs:[]},{type:"function",name:"collectExecutionFee",constant:false,payable:false,inputs:[{type:"uint8",name:"source"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"collectForwardFeeIfNecessary",constant:false,payable:false,inputs:[{type:"uint8",name:"source"},{type:"bytes",name:"data"}],outputs:[]},{type:"function",name:"depositToAccount",constant:false,payable:false,inputs:[{type:"address",name:"recipient"},{type:"address",name:"token"},{type:"uint256",name:"amount"}],outputs:[]},{type:"function",name:"getAddressManager",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"getDependencyAddress",constant:true,stateMutability:"view",payable:false,inputs:[{type:"bytes32",name:"identifier"}],outputs:[{type:"address"}]},{type:"function",name:"initialize",constant:false,payable:false,inputs:[{type:"address",name:"addressManager"}],outputs:[]},{type:"function",name:"isTrustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[{type:"address",name:"forwarder"}],outputs:[{type:"bool"}]},{type:"function",name:"placeOrderWithPosition",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"bytes32",name:"positionId"},{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"tuple",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"placeOrderWithSalt",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"uint64",name:"userPositionSalt"},{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"tuple",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"placeOrdersWithPosition",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"bytes32[]",name:"positionIds"},{type:"tuple[]",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"placeOrdersWithSalt",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"uint64[]",name:"userPositionSalts"},{type:"tuple[]",name:"orderParams",components:[{type:"address",name:"user"},{type:"bytes32",name:"poolId"},{type:"uint256",name:"collateralAmount"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"uint8",name:"orderType"},{type:"uint8",name:"triggerType"},{type:"uint8",name:"operation"},{type:"uint8",name:"direction"},{type:"uint8",name:"timeInForce"},{type:"bool",name:"postOnly"},{type:"uint16",name:"slippagePct"},{type:"uint16",name:"leverage"},{type:"address",name:"broker"},{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}],outputs:[]},{type:"function",name:"proxiableUUID",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"trustedForwarder",constant:true,stateMutability:"view",payable:false,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"updateOrder",constant:false,payable:false,inputs:[{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"tuple",name:"params",components:[{type:"uint256",name:"orderId"},{type:"address",name:"broker"},{type:"uint256",name:"size"},{type:"uint256",name:"price"},{type:"tuple",name:"tpsl",components:[{type:"uint256",name:"tpSize"},{type:"uint256",name:"tpPrice"},{type:"uint256",name:"slSize"},{type:"uint256",name:"slPrice"}]}]}],outputs:[]},{type:"function",name:"updatePriceAndAdjustCollateral",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"tuple[]",name:"prices",components:[{type:"bytes32",name:"poolId"},{type:"uint8",name:"oracleType"},{type:"uint64",name:"publishTime"},{type:"bytes",name:"oracleUpdateData"}]},{type:"tuple",name:"depositParams",components:[{type:"address",name:"token"},{type:"uint256",name:"amount"}]},{type:"bytes32",name:"positionId"},{type:"int256",name:"adjustAmount"}],outputs:[]},{type:"function",name:"upgradeToAndCall",constant:false,stateMutability:"payable",payable:true,inputs:[{type:"address",name:"newImplementation"},{type:"bytes",name:"data"}],outputs:[]}];var uo=(t,e)=>{let n=c(t);return viem.getContract({address:e,abi:k,client:n})},mo=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.TRADING_ROUTER,abi:xt,client:n})},Et=async(t,e)=>{let n=await O(t);return viem.getContract({address:e,abi:k,client:n})},h=async t=>{let e=await O(t),[n]=await e.getAddresses();return n??void 0},M=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.LIQUIDITY_ROUTER,abi:Ze,client:n})},wt=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.ORACLE_RESERVE,abi:et,client:n})},L=(t,e=1)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.POOL_MANAGER,abi:ge,client:a})):O(t).then(s=>viem.getContract({address:n.POOL_MANAGER,abi:ge,client:s}))};var V=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.QUOTE_POOL,abi:Ie,client:a})):O(t).then(s=>viem.getContract({address:n.QUOTE_POOL,abi:Ie,client:s}))},z=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.BASE_POOL,abi:Ae,client:a})):O(t).then(s=>viem.getContract({address:n.BASE_POOL,abi:Ae,client:s}))},yo=async(t,e)=>{let n=await O(t);return viem.getContract({address:e,abi:Ce,client:n})};var lo=(t,e)=>{let n=c(t);return viem.getContract({address:e,abi:Ce,client:n})};var Tt=(t,e,n=0)=>{let a=n===0?c(t):null;return a?Promise.resolve(viem.getContract({address:e,abi:Re,client:a})):O(t).then(s=>viem.getContract({address:e,abi:Re,client:s}))},ie=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.MARKET_MANAGER,abi:Pe,client:a})):O(t).then(s=>viem.getContract({address:n.MARKET_MANAGER,abi:Pe,client:s}))},vt=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.DATA_PROVIDER,abi:xe,client:a})):O(t).then(s=>viem.getContract({address:n.DATA_PROVIDER,abi:xe,client:s}))},co=async t=>{let e=v(t),n=await O(t);return viem.getContract({address:e.Account,abi:mt,client:n})},fo=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.FORWARDER,abi:Ee,client:a})):O(t).then(s=>viem.getContract({address:n.FORWARDER,abi:Ee,client:s}))},bo=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.REIMBURSEMENT,abi:we,client:a})):O(t).then(s=>viem.getContract({address:n.REIMBURSEMENT,abi:we,client:s}))},go=(t,e=0)=>{let n=v(t),a=e===0?c(t):null;return a?Promise.resolve(viem.getContract({address:n.DISPUTE_COURT,abi:Te,client:a})):O(t).then(s=>viem.getContract({address:n.DISPUTE_COURT,abi:Te,client:s}))};var $=null;function jn(t){$=t;}function he(){return $??{}}function Me(){}function Xn(...t){($?.log??$?.info??Me)(...t);}function Kn(...t){($?.warn??Me)(...t);}function d(...t){($?.error??Me)(...t);}var ht=class{constructor(e){this.options={...e,logLevel:e?.logLevel??"info"};}get out(){return this.options.sink??he()}debug(e,...n){this.options.logLevel!=="none"&&this.options.logLevel==="debug"&&(this.out.log??this.out.info)?.(`[MYX-SDK-DEBUG] ${e}`,...n);}info(e,...n){this.options.logLevel!=="none"&&(this.options.logLevel==="debug"||this.options.logLevel==="info")&&(this.out.log??this.out.info)?.(`[MYX-SDK-INFO] ${e}`,...n);}error(e,...n){this.options.logLevel!=="none"&&(this.options.logLevel==="debug"||this.options.logLevel==="info"||this.options.logLevel==="error")&&this.out.error?.(`[MYX-SDK-ERROR] ${e}`,...n);}warn(e,...n){this.options.logLevel!=="none"&&this.out.warn?.(`[MYX-SDK-WARN] ${e}`,...n);}};ethersDecodeError.ErrorDecoder.create();var E={1:"Invalid Chain",2:"Invalid Token Address",4001:"User Rejected",3:"Insufficient Balance",4:"Insufficient Amount Of Approved",4002:"Invalid Base Token Address",4003:"Invalid Slippage",4004:"Invalid Amount",4005:"Invalid Pool State",4006:"Invalid Params",4007:"Invalid Amount Withdrawable LP Amount"};function ea(t){let e=t;for(;e;){if(e.name==="UserRejectedRequestError")return true;e=e.cause;}return false}async function l(t){let e=t?.shortMessage||t?.details||t?.message;return typeof t=="string"?{error:t}:ea(t)?{error:E[4001]}:{error:{code:t?.code||t?.name||"Unknow Error",message:e}}}var Mt=async(t,e,n)=>{try{return await c(t).readContract({address:n,abi:k,functionName:"balanceOf",args:[e]})}catch(a){throw d(a),a}};var Dt=async(t,e,n,a,s)=>{try{return await c(t).readContract({address:n,abi:k,functionName:"allowance",args:[e,a]})>=s}catch(p){throw p}};var F=30,H=18;var C=(t,e)=>BigInt(t)*viem.parseUnits(e.toString(),8)/BigInt(10**8),R=async t=>{try{let e=b[t],a=await c(t).getGasPrice();if(a==null)throw new Error("Network Error");return {gasPrice:C(a,e.gasPriceRatio)}}catch(e){throw e}},Y=(t,e=.01)=>{let n=viem.parseUnits("1",8)-viem.parseUnits(e.toString(),8);return t*n/BigInt(10**8)};var Ot=async(t,e,n,a,s)=>{try{let p=b[t],o=await Et(t,n);if(!o.write)throw new Error("Wallet client required for write");let u=await o.estimateGas.approve([a,s]),y=C(u,p.gasLimitRatio),{gasPrice:r}=await R(t),i=await o.write.approve([a,s],{gasLimit:y,gasPrice:r});await c(t).waitForTransactionReceipt({hash:i});}catch(p){throw p}};var I=async t=>{if("chainId"in t&&!tt(t.chainId))throw new Error(E[1]);if("slippage"in t&&!(Number(t?.slippage)<=1&&Number(t?.slippage)>0))throw new Error(E[4003]);if("amount"in t&&(Number(t.amount)===Number.NaN||Number(t.amount)<0))throw new Error(E[4004]);let{tokenAddress:e,contractAddress:n,chainId:a,amount:s,decimals:p,account:o}=t;if(s&&a&&Number(p)>=0&&o){let u=viem.parseUnits(s.toString(),Number(p));if(e){let y=await Mt(a,o,e);if(!y||y<u)throw new Error(E[3])}n&&e&&(await Dt(a,o,e,n,u)||await Ot(a,o,e,n,viem.maxUint256));}};var Ft=async(t,e)=>await Promise.all(e.map(async a=>{let{publishTime:s,vaa:p,oracleType:o,nativeFee:u,price:y,poolId:r}=a,i=lodashEs.isNil(u)?1n:BigInt(u);return {poolId:r,price:y,value:i,publishTime:s,oracleType:o??2,vaa:p}})),j=async(t,e)=>{if(!e||!e.length)return;let n=await Q(t,e);return await Ft(t,n.data)},_=async(t,e)=>{if(!e)return;let a=(await Q(t,[e]))?.data?.[0];if(!a)throw new Error(`Unable to get price for ${e}`);return (await Ft(t,[a]))?.[0]};var _t=async t=>{try{let{chainId:e,poolId:n}=t,a=b[e],s=await h(e);await I({account:s,chainId:e});let p=await j(e,[n]);if(!p)return;let o=p.map(P=>P.value),u=p.map(P=>({poolId:n,oracleType:P.oracleType,publishTime:P.publishTime,oracleUpdateData:P?.vaa??"0"})),y={prices:u,values:o,poolId:n,recipient:s},r=await M(e),i=await r.estimateGas.claimBasePoolRebate([u,n,s],{value:o[0]}),g=C(i,a.gasLimitRatio),{gasPrice:A}=await R(e);return await r.write.claimBasePoolRebate([u,n,s],{gasLimit:g,gasPrice:A,value:o[0]})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},kt=async t=>{try{let{chainId:e,poolIds:n}=t;if(n.length===0)return;let a=b[e],s=await h(e);await I({account:s,chainId:e});let p=await j(e,n);if(!p)return;let o=p.map(w=>({poolId:w.poolId,oracleType:w.oracleType,publishTime:w.publishTime,oracleUpdateData:w?.vaa??"0"})),y=p.map(w=>w.value).reduce((w,T)=>T+w,0n),r={prices:o,poolIds:n,value:y,recipient:s},i=await M(e),g=await i.estimateGas.claimBasePoolRebates([o,n,s],{value:y}),A=C(g,a.gasLimitRatio),{gasPrice:f}=await R(e),P=await i.write.claimBasePoolRebates([o,n,s],{gasLimit:A,gasPrice:f,value:y});return await c(e).waitForTransactionReceipt({hash:P})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Oe=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{let s=b[t];return await(await z(t)).read.previewLpAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}},Nt=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{let s=b[t];return await(await z(t)).read.previewBaseAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}},Bt=async({chainId:t,account:e,poolId:n,amount:a=0})=>{try{if(!t||!e||!n)return;if(!a)return {baseAmountOut:0n,rebateAmount:0n};let s=b[t],p=18;await I({decimals:p,account:e,chainId:t,amount:Number(a)});let o=viem.parseUnits(a.toString(),p),y=(await Q(t,[n])).data?.[0]?.price||"0",r=viem.parseUnits(y,30),g=await(await z(t)).read.previewUserWithdrawData([n,o,e,r]),[A,f]=g;return {baseAmountOut:A,rebateAmount:f}}catch(s){throw typeof s=="string"?s:await l(s)}};var D=async(t,e)=>{try{return !t||!e?void 0:(await It(t,e)).data}catch(n){throw typeof n=="string"?n:await l(n)}};function Ut(t){return t.includes(".")?t.split(".")[1].length:0}var X=(t=.01,e=[],n=18,a)=>{if(e.length===0)return [];if(e.filter(p=>p.amount&&p.triggerPrice&&p.triggerType).length===0)throw new Error(E[4006]);return e.map(p=>{let o=viem.parseUnits(p.amount.toString(),n),u=viem.parseUnits(p.triggerPrice.toString(),30),y=Ut(p.triggerPrice.toString()),r=viem.parseUnits(p.triggerPrice.toString(),y),i=Y(o*r*BigInt(10**a)/BigInt(10**(y+n)),t);return {amount:o,triggerPrice:u,triggerType:BigInt(p.triggerType),minQuoteOut:i}})};var K=t=>!(t===0||t===1||t===2);var qt=async t=>{try{let{poolId:e,chainId:n,amount:a,slippage:s=.01,tpsl:p=[]}=t;await I(t);let o=await D(n,e);if(!o)throw new Error(E[4006]);let u=o?.baseDecimals,y=o?.quoteDecimals,r=o?.baseToken,i=b[n],g=await h(n),f=v(n).BASE_POOL;await I({tokenAddress:r,contractAddress:f,decimals:u,account:g,chainId:n,amount:a});let P=K(o?.state),m=[],w=viem.parseUnits(a.toString(),u),T=0n,B;if(P){let U=await _(n,e);if(!U)return;let pn=viem.parseUnits(U.price,30);m.push({poolId:e,oracleType:U.oracleType,publishTime:BigInt(U.publishTime),oracleUpdateData:U.vaa}),B=await Oe({chainId:n,poolId:e,amountIn:w,price:pn}),T=U.value;}else B=await Oe({chainId:n,poolId:e,amountIn:w});let Z=p.map(U=>({amount:a,triggerPrice:U.triggerPrice,triggerType:U.triggerType})),se=X(s,Z,u,y),ee={poolId:e,amountIn:w,minAmountOut:Y(B,s),recipient:g,tpslParams:se},oe=await M(n),me=await oe.estimateGas.depositBase([m,ee],{value:T}),ye=C(me,i.gasLimitRatio),{gasPrice:le}=await R(n),Je=await oe.write.depositBase([m,ee],{gasLimit:ye,gasPrice:le,value:T});return await c(n).waitForTransactionReceipt({hash:Je})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var ae=async({chainId:t,baseToken:e,marketId:n})=>{try{if(!e)throw new Error(E[2]);let a=v(t),s=await L(t,0),p=[n,e],o=await s.read.getMarketPool(p);return o.poolId==="0x0000000000000000000000000000000000000000000000000000000000000000"||!o.poolId?void 0:o.poolId}catch(a){throw d(a),typeof a=="string"?a:await l(a)}},_e=async t=>{try{return await(await L(t)).read.getPools()||[]}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},ke=async(t,e,n=0n)=>{try{let s=await(await vt(t)).read.getPoolInfo([e,n]);return {quotePool:{poolToken:s.quotePool.poolToken,exchangeRate:s.quotePool.exchangeRate,poolTokenPrice:s.quotePool.poolTokenPrice,poolTokenSupply:s.quotePool.poolTokenSupply,totalDebt:s.quotePool.totalDebt,baseCollateral:s.quotePool.baseCollateral},basePool:{poolToken:s.basePool.poolToken,exchangeRate:s.basePool.exchangeRate,poolTokenPrice:s.basePool.poolTokenPrice,poolTokenSupply:s.basePool.poolTokenSupply,totalDebt:s.basePool.totalDebt,baseCollateral:s.basePool.baseCollateral},reserveInfo:{baseTotalAmount:s.reserveInfo.baseTotalAmount,baseReservedAmount:s.reserveInfo.baseReservedAmount,quoteTotalAmount:s.reserveInfo.quoteTotalAmount,quoteReservedAmount:s.reserveInfo.quoteReservedAmount},fundingInfo:{nextFundingRate:s.fundingInfo.nextFundingRate,lastFundingFeeTracker:s.fundingInfo.lastFundingFeeTracker,nextEpochTime:s.fundingInfo.nextEpochTime},ioTracker:{tracker:s.oi.tracker,longSize:s.oi.longSize,shortSize:s.oi.shortSize,poolEntryPrice:s.oi.poolEntryPrice},liquidityInfo:{windowCaps:s.liquidityInfo.windowCaps,openInterest:s.liquidityInfo.openInterest}}}catch(a){throw d(a),typeof a=="string"?a:await l(a)}};var Se=async({chainId:t,baseToken:e,marketId:n})=>{try{if(!e)throw new Error(E[2]);let a=b[t],s=await L(t),p={marketId:n,baseToken:e},o=await s.estimateGas.deployPool([p]),u=C(o,a.gasLimitRatio),{gasPrice:y}=await R(t),r=await s.write.deployPool([p],{gasLimit:u,gasPrice:y});if(await c(t).waitForTransactionReceipt({hash:r}))return await ae({chainId:t,baseToken:e,marketId:n})}catch(a){throw typeof a=="string"?a:await l(a)}};var Ne=async(t,e,n)=>{try{return await(await Tt(t,e)).read.userGenesisShare([n])}catch(a){throw d(a),typeof a=="string"?a:await l(a)}};var Be=async t=>{try{let{chainId:e,poolId:n,poolType:a,slippage:s=.01,tpsl:p=[]}=t;await I(t);let o=await D(e,n);if(!o)throw new Error(E[4006]);let u=18,y=o.quoteDecimals,r=X(s,p,u,y),i=b[e],g=await M(e),A={poolId:n,poolType:BigInt(a),tpslParams:r},f=await g.estimateGas.addTpsl([A]),P=C(f,i.gasLimitRatio),{gasPrice:m}=await R(e),w=await g.write.addTpsl([A],{gasLimit:P,gasPrice:m});return await c(e).waitForTransactionReceipt({hash:w})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Ue=async t=>{try{let{chainId:e,orderId:n}=t;await I(t);let a=b[e],s=await M(e),p=await s.estimateGas.cancelTpsl([n]),o=C(p,a.gasLimitRatio),{gasPrice:u}=await R(e),y=await s.write.cancelTpsl([n],{gasLimit:o,gasPrice:u});return await c(e).waitForTransactionReceipt({hash:y})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};async function oa(t){try{return (await fetch(t,{method:"HEAD"})).ok}catch{return false}}var hi=async(t,e,n)=>{try{let a=c(t),s=e,[p,o,u,y]=await Promise.all([a.readContract({address:s,abi:k,functionName:"name"}),a.readContract({address:s,abi:k,functionName:"symbol"}),a.readContract({address:s,abi:k,functionName:"decimals"}),a.readContract({address:s,abi:k,functionName:"totalSupply"})]),r=viem.getAddress(s),i=`https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/${t}/assets/${r}/logo.png`,A=await oa(i)?i:"",f;if(n){let P=await a.readContract({address:s,abi:k,functionName:"balanceOf",args:[n]});f=Number(viem.formatUnits(P,Number(u)));}return {address:e,name:p,symbol:o,decimals:Number(u),icon:A,totalSupply:Number(viem.formatUnits(y,Number(u))),...n?{balance:f}:{}}}catch(a){throw d(a),a}};var Le=async(t,e,n)=>{try{await I({chainId:t});let a=await D(t,e);if(!a)throw new Error(E[4006]);let s=await h(t),o=((N?.Markets?.length?N?.Markets:await N.getMarkets())||[])?.find(m=>m.chainId===t&&m.marketId===n);if(!o)throw new Error("Invalid Market");let u=viem.parseUnits(o.oracleFeeUsd.toString(),a.quoteDecimals);if(!u)throw new Error("Invalid Market");await I({tokenAddress:a.quoteToken,contractAddress:v(t).ORACLE_RESERVE,decimals:a.quoteDecimals,account:s,chainId:t,amount:Number(viem.formatUnits(u,a.quoteDecimals))});let y=b[t],r=await L(t),i=await r.estimateGas.reprimePool([{poolId:e}]),g=C(i,y.gasLimitRatio),{gasPrice:A}=await R(t),f=await r.write.reprimePool([{poolId:e}],{gasLimit:g,gasPrice:A});return await c(t).waitForTransactionReceipt({hash:f})}catch(a){throw d(a),typeof a=="string"?a:await l(a)}};var qe=async(t,e)=>{try{let n=await te.getInstance().getConfigManager()?.getAccessToken();if(!n)throw new Error("Failed to obtain accessToken");return (await At(n,e,t)).data||[]}catch(n){throw d(n),n}};var Ge=async t=>{try{let{chainId:e,poolId:n}=t;await I({chainId:e});let a=await D(e,n);if(!a)throw new Error(E[4006]);let s=await h(e),o=((N?.Markets?.length?N?.Markets:await N.getMarkets())||[])?.find(m=>m.chainId===e&&m.marketId===a.marketId);if(!o)throw new Error("Invalid Market");let u=viem.parseUnits(o.boostFeeUsd.toString(),a.quoteDecimals);if(!u)throw new Error("Invalid Market");await I({tokenAddress:a.quoteToken,contractAddress:v(e).ORACLE_RESERVE,decimals:a.quoteDecimals,account:s,chainId:e,amount:Number(viem.formatUnits(u,a.quoteDecimals))});let y=b[e],r=await L(e),i=await r.estimateGas.boostPool([{poolId:n}]),g=C(i,y.gasLimitRatio),{gasPrice:A}=await R(e),f=await r.write.boostPool([{poolId:n}],{gasLimit:g,gasPrice:A});return await c(e).waitForTransactionReceipt({hash:f})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var ze=async t=>{try{let{chainId:e,poolId:n}=t;await I({chainId:e});let a=b[e],s=await L(e),p=await s.estimateGas.unboostPool([{poolId:n}]),o=C(p,a.gasLimitRatio),{gasPrice:u}=await R(e),y=await s.write.unboostPool([{poolId:n}],{gasLimit:o,gasPrice:u});return await c(e).waitForTransactionReceipt({hash:y})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var We=async t=>{try{let{chainId:e,poolId:n}=t;await I({chainId:e});let a=b[e],s=await wt(e),p=await s.estimateGas.claimBoostFee([n]),o=C(p,a.gasLimitRatio),{gasPrice:u}=await R(e),y=await s.write.claimBoostFee([n],{gasLimit:o,gasPrice:u});return await c(e).waitForTransactionReceipt({hash:y})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Qe=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{return await(await V(t)).read.previewLpAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}},zt=async({chainId:t,amountIn:e,poolId:n,price:a=0n})=>{try{return await(await V(t)).read.previewQuoteAmountOut([n,e,a])}catch(s){throw d(s),typeof s=="string"?s:await l(s)}};var ue=async({amountIn:t,chainId:e,poolId:n,state:a,slippage:s,poolType:p,account:o})=>{let u=K(a),y=[],r=0n,i,g=p===0?Nt:zt;if(u)try{let f=await _(e,n);if(f){let P=viem.parseUnits(f.price,30);y.push({poolId:n,oracleType:f.oracleType,publishTime:BigInt(f.publishTime),oracleUpdateData:f.vaa}),i=await g({chainId:e,poolId:n,amountIn:t,price:P}),r=f.value;}}catch(f){console.error(f),i=await g({chainId:e,poolId:n,amountIn:t});}else i=await g({chainId:e,poolId:n,amountIn:t});let A={poolId:n,amountIn:t,minAmountOut:Y(i,s),recipient:o};return {price:y,data:A,value:r}};var Wt=async t=>{try{let{chainId:e,poolId:n,price:a}=t,s=a,p=await z(e);if(typeof a>"u"||a===null)try{let u=await _(e,n);s=viem.parseUnits(u?.price||"0",30);}catch{s=viem.parseUnits("0",30);}return await p.read.withdrawableLpAmount([n,s||0n])}catch(e){throw typeof e=="string"?e:await l(e)}},Qt=async t=>{try{let{chainId:e,poolId:n,amount:a,slippage:s=.01}=t,p=await D(e,n),o=p?.basePoolToken,u=b[e],y=await h(e),r=18;await I({tokenAddress:o,decimals:r,account:y,chainId:e,amount:a});let i=viem.parseUnits(a.toString(),r),{price:g,data:A,value:f}=await ue({poolId:n,chainId:e,account:y,amountIn:i,slippage:s,poolType:0,state:p?.state}),P=await M(e),m=await P.estimateGas.withdrawBase([g,A],{value:f}),w=C(m,u.gasLimitRatio),{gasPrice:T}=await R(e),B=await P.write.withdrawBase([g,A],{gasLimit:w,gasPrice:T,value:f});return await c(e).waitForTransactionReceipt({hash:B})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Vt=async t=>{try{let{chainId:e,account:n,poolId:a}=t;if(!e||!n||!a)return;let s=b[e],p=0n,u=(await Q(e,[a])).data?.[0]?.price||"0",y=viem.parseUnits(u,30),i=await(await z(e)).read.pendingUserRebates([a,n,y]),[g,A]=i;return {rebates:g,genesisRebates:A}}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Ht=async(t,e)=>{if(e)try{let n=await z(t),a=0n,s=await _(t,e);return s?.price&&(a=viem.parseUnits(s.price,30)),await n.read.getPoolTokenPrice([e,a])}catch(n){throw typeof n=="string"?n:await l(n)}};var an={};de(an,{claimQuotePoolRebate:()=>en,claimQuotePoolRebates:()=>tn,deposit:()=>$t,getLpPrice:()=>nn,getRewards:()=>Zt,transfer:()=>Kt,withdraw:()=>Xt,withdrawableLpAmount:()=>jt});var $t=async t=>{try{let{poolId:e,chainId:n,amount:a,slippage:s=.01,tpsl:p=[]}=t;await I(t);let o=await D(n,e);if(!o)throw new Error(E[4006]);let u=b[n],y=await h(n),i=v(n).QUOTE_POOL,g=o.quoteToken,A=o?.quoteDecimals;await I({tokenAddress:g,contractAddress:i,decimals:A,account:y,chainId:n,amount:a});let f=viem.parseUnits(a.toString(),A),P=K(o?.state),m=[],w=0n,T;if(P){let q=await _(n,e);if(!q)return;let U=viem.parseUnits(q.price,30);m.push({poolId:e,oracleType:q.oracleType,publishTime:BigInt(q.publishTime),oracleUpdateData:q.vaa}),T=await Qe({chainId:n,poolId:e,amountIn:f,price:U}),w=q.value;}else T=await Qe({chainId:n,poolId:e,amountIn:f});let B=p.map(q=>({amount:a,triggerPrice:q.triggerPrice,triggerType:q.triggerType})),Z=X(s,B,A,A),se={poolId:e,amountIn:f,minAmountOut:Y(T,s),recipient:y,tpslParams:Z},ee=await M(n),oe=await ee.estimateGas.depositQuote([m,se],{value:w}),me=C(oe,u.gasLimitRatio),{gasPrice:ye}=await R(n),le=await ee.write.depositQuote([m,se],{gasLimit:me,gasPrice:ye,value:w});return await c(n).waitForTransactionReceipt({hash:le})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var jt=async t=>{try{let{chainId:e,poolId:n,price:a}=t,s=a,p=await V(e);if(typeof a>"u"||a===null)try{let u=await _(e,n);s=viem.parseUnits(u?.price||"0",30);}catch{s=viem.parseUnits("0",30);}return await p.read.withdrawableLpAmount([n,s||0n])}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},Xt=async t=>{try{let{chainId:e,poolId:n,amount:a,slippage:s=.01}=t,p=await D(e,n),o=p?.quotePoolToken,u=b[e],y=await h(e),r=18;await I({tokenAddress:o,decimals:r,account:y,chainId:e,amount:a});let i=viem.parseUnits(a.toString(),r),{price:g,data:A,value:f}=await ue({poolId:n,chainId:e,account:y,amountIn:i,slippage:s,poolType:1,state:p?.state}),P=await M(e),m=await P.estimateGas.withdrawQuote([g,A],{value:f}),w=C(m,u.gasLimitRatio),{gasPrice:T}=await R(e),B=await P.write.withdrawQuote([g,A],{gasLimit:w,gasPrice:T,value:f});return await c(e).waitForTransactionReceipt({hash:B})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var Kt=async(t,e,n,a)=>{try{let s=await D(t,e),p=await D(t,n);if(!p||!s)return null;if([4,5].includes(p.state))throw new Error(E[4005]);let o=await h(t),u=b[t],y=18;await I({chainId:t,amount:a,account:o,decimals:y,tokenAddress:s.quotePoolToken});let r={fromPoolId:e,toPoolId:n,minLpOut:0n,amount:viem.parseUnits(a.toString(),y)},i=await M(t),g=await i.estimateGas.migrateLiquidity([r]),A=C(g,u.gasLimitRatio),{gasPrice:f}=await R(t),P=await i.write.migrateLiquidity([r],{gasLimit:A,gasPrice:f});return await c(t).waitForTransactionReceipt({hash:P})}catch(s){throw typeof s=="string"?s:await l(s)}};var Zt=async t=>{try{let{chainId:e,account:n,poolId:a}=t;if(!e||!n||!a)return;let p=(await Q(e,[a])).data?.[0]?.price||"0",o=viem.parseUnits(p,30);return await(await V(e)).read.pendingUserRebates([a,n,o])}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var en=async t=>{try{let{chainId:e,poolId:n}=t,a=b[e],s=await h(e),p=18;await I({account:s,chainId:e});let o=await j(e,[n]);if(!o)return;let u=o.map(m=>m.value),y=o.map(m=>({poolId:m.poolId,oracleUpdateData:m?.vaa??"0",publishTime:m.publishTime,oracleType:m.oracleType})),r={prices:y,values:u,poolId:n,recipient:s},i=await M(e),g=await i.estimateGas.claimQuotePoolRebate([y,n,s],{value:u[0]}),A=C(g,a.gasLimitRatio),{gasPrice:f}=await R(e);return await i.write.claimQuotePoolRebate([y,n,s],{gasLimit:A,gasPrice:f,value:u[0]})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}},tn=async t=>{try{let{chainId:e,poolIds:n}=t;if(n.length===0)return;let a=b[e],s=await h(e),p=18;await I({account:s,chainId:e});let o=await j(e,n);if(!o)return;let u=o.map(T=>({poolId:T.poolId,oracleType:T.oracleType,publishTime:T.publishTime,oracleUpdateData:T?.vaa??"0"})),r=o.map(T=>T.value).reduce((T,B)=>B+T,0n),i={prices:u,value:r,poolIds:n,recipient:s},g=await M(e),A=await g.estimateGas.claimQuotePoolRebates([u,n,s],{value:r}),f=C(A,a.gasLimitRatio),{gasPrice:P}=await R(e),m=await g.write.claimQuotePoolRebates([u,n,s],{gasLimit:f,gasPrice:P,value:r});return await c(e).waitForTransactionReceipt({hash:m})}catch(e){throw d(e),typeof e=="string"?e:await l(e)}};var nn=async(t,e)=>{if(e)try{let n=await V(t),a=0n,s=await _(t,e);return s?.price&&(a=viem.parseUnits(s.price,30)),await n.read.getPoolTokenPrice([e,a])}catch(n){throw d(n),typeof n=="string"?n:await l(n)}};var rn={};de(rn,{getMarket:()=>sn,getOracleFee:()=>on});var sn=async(t,e)=>{try{if(await I({chainId:t}),!e)return;let a=await(await ie(t)).read.getMarket([e]),{quoteToken:s,baseReserveRatio:p,quoteReserveRatio:o,oracleFeeUsd:u,boostFeeUsd:y,boostRefundFeeUsd:r,poolPrimeThreshold:i,executionFee:g,maxExecutionFee:A,forwardFee:f,maxForwardFee:P}=a;return a}catch(n){throw d(n),typeof n=="string"?n:await l(n)}};var on=async(t,e)=>{try{return await I({chainId:t}),e?await(await ie(t)).read.getOracleFee([e]):void 0}catch(n){throw d(n),typeof n=="string"?n:await l(n)}};var $m={createPool:Se,getMarketPoolId:ae,getMarketPools:_e,getPoolInfo:ke,getUserGenesisShare:Ne,addTpSl:Be,cancelTpSl:Ue,reprime:Le,getPoolDetail:D,getOpenOrders:qe,boostPool:Ge,unBoostPool:ze,claimBoostFee:We};
|
|
2
|
+
Object.defineProperty(exports,"ta",{enumerable:true,get:function(){return viem.formatUnits}});Object.defineProperty(exports,"ua",{enumerable:true,get:function(){return viem.parseUnits}});exports.$=bo;exports.A=Qn;exports.B=Vn;exports.C=Hn;exports.D=Jn;exports.E=Yn;exports.F=bs;exports.G=W;exports.H=Q;exports.I=It;exports.J=At;exports.K=Cs;exports.L=Rs;exports.M=Ps;exports.N=Ct;exports.O=te;exports.P=Ds;exports.Q=v;exports.R=xt;exports.S=uo;exports.T=mo;exports.U=Et;exports.V=yo;exports.W=lo;exports.X=ie;exports.Y=vt;exports.Z=co;exports._=fo;exports.a=ln;exports.aa=go;exports.b=tt;exports.ba=jn;exports.c=Ca;exports.ca=he;exports.d=b;exports.da=Xn;exports.e=ce;exports.ea=Kn;exports.f=c;exports.fa=d;exports.g=gn;exports.ga=ht;exports.h=O;exports.ha=l;exports.i=Ce;exports.ia=Mt;exports.j=Ee;exports.ja=Dt;exports.k=Te;exports.ka=F;exports.l=mt;exports.la=H;exports.m=G;exports.ma=C;exports.n=Fn;exports.na=R;exports.o=_n;exports.oa=Y;exports.p=gt;exports.pa=Ot;exports.q=kn;exports.qa=j;exports.r=Sn;exports.ra=_;exports.s=Nn;exports.sa=hi;exports.t=Bn;exports.u=Un;exports.v=Ln;exports.va=Jt;exports.w=qn;exports.wa=an;exports.x=Gn;exports.xa=rn;exports.y=zn;exports.ya=$m;exports.z=Wn;
|