Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 116 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Open Leverage Fl... | 25949487 | 8 hrs ago | IN | 0 ETH | 0.00020473 | ||||
| Open Leverage Fl... | 25947320 | 15 hrs ago | IN | 0 ETH | 0.00050264 | ||||
| Open Leverage Fl... | 25946891 | 17 hrs ago | IN | 0 ETH | 0.00018375 | ||||
| Open Leverage Fl... | 25933564 | 2 days ago | IN | 0 ETH | 0.00028416 | ||||
| Open Leverage Fl... | 25933020 | 2 days ago | IN | 0 ETH | 0.00079876 | ||||
| Open Leverage Fl... | 25932977 | 2 days ago | IN | 0 ETH | 0.00031589 | ||||
| Open Leverage Fl... | 25883179 | 9 days ago | IN | 0 ETH | 0.0002582 | ||||
| Open Leverage Fl... | 25860987 | 12 days ago | IN | 0 ETH | 0.00013778 | ||||
| Open Leverage Fl... | 25852652 | 13 days ago | IN | 0 ETH | 0.00001035 | ||||
| Open Leverage Fl... | 25824937 | 17 days ago | IN | 0 ETH | 0.00024595 | ||||
| Swap Collateral ... | 25810934 | 19 days ago | IN | 0 ETH | 0.00029859 | ||||
| Swap Collateral ... | 25810897 | 19 days ago | IN | 0 ETH | 0.00026924 | ||||
| Swap Collateral ... | 25810835 | 19 days ago | IN | 0 ETH | 0.0002622 | ||||
| Swap Collateral ... | 25806887 | 20 days ago | IN | 0 ETH | 0.00145795 | ||||
| Swap Collateral ... | 25806743 | 20 days ago | IN | 0 ETH | 0.00033536 | ||||
| Swap Collateral ... | 25804758 | 20 days ago | IN | 0 ETH | 0.00068685 | ||||
| Swap Collateral ... | 25804645 | 20 days ago | IN | 0 ETH | 0.00111436 | ||||
| Swap Collateral ... | 25804576 | 20 days ago | IN | 0 ETH | 0.00104719 | ||||
| Swap Collateral ... | 25804420 | 20 days ago | IN | 0 ETH | 0.00080821 | ||||
| Swap Collateral ... | 25804403 | 20 days ago | IN | 0 ETH | 0.00115831 | ||||
| Swap Collateral ... | 25804359 | 20 days ago | IN | 0 ETH | 0.00113179 | ||||
| Close Leverage F... | 25804169 | 20 days ago | IN | 0 ETH | 0.00119676 | ||||
| Swap Collateral ... | 25804066 | 20 days ago | IN | 0 ETH | 0.00177236 | ||||
| Open Leverage Fl... | 25803575 | 20 days ago | IN | 0 ETH | 0.00048111 | ||||
| Open Leverage Fl... | 25803570 | 20 days ago | IN | 0 ETH | 0.00070885 |
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method |
Block
|
From
|
To
|
|||
|---|---|---|---|---|---|---|---|
| 0x60a08060 | 24974967 | 136 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"pm_","type":"address"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"feeCollector_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"LeverageActionMismatch","type":"error"},{"inputs":[],"name":"LeverageAlreadyFilled","type":"error"},{"inputs":[],"name":"LeverageAmountZero","type":"error"},{"inputs":[],"name":"LeverageBadCancelAuth","type":"error"},{"inputs":[],"name":"LeverageBadSignature","type":"error"},{"inputs":[],"name":"LeverageBuyAmountTooLow","type":"error"},{"inputs":[],"name":"LeverageExpired","type":"error"},{"inputs":[],"name":"LeverageFeeCollectorZero","type":"error"},{"inputs":[],"name":"LeverageMetaActionsUnset","type":"error"},{"inputs":[],"name":"LeverageMetaSessionActionsUnset","type":"error"},{"inputs":[],"name":"LeverageOnlyPositionsManager","type":"error"},{"inputs":[],"name":"LeverageOrderNotActive","type":"error"},{"inputs":[],"name":"LeverageOrderUserMismatch","type":"error"},{"inputs":[],"name":"LeverageSameToken","type":"error"},{"inputs":[{"internalType":"bytes32","name":"expected","type":"bytes32"},{"internalType":"bytes32","name":"provided","type":"bytes32"}],"name":"LeverageSessionDataHashMismatch","type":"error"},{"inputs":[{"internalType":"address","name":"expectedExecutor","type":"address"},{"internalType":"address","name":"actualCaller","type":"address"}],"name":"LeverageSessionExecutorMismatch","type":"error"},{"inputs":[],"name":"LeverageSessionFeeExceedsAmount","type":"error"},{"inputs":[],"name":"LeverageSessionFeeTooHigh","type":"error"},{"inputs":[],"name":"LeverageSessionManagerNotSet","type":"error"},{"inputs":[{"internalType":"address","name":"expectedOwner","type":"address"},{"internalType":"address","name":"actualOwner","type":"address"}],"name":"LeverageSessionOwnerMismatch","type":"error"},{"inputs":[],"name":"LeverageZeroAddress","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[],"name":"ftPositionManagerOnlyOwner","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"prev","type":"address"},{"indexed":true,"internalType":"address","name":"next","type":"address"}],"name":"AdminTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"filler","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"sellToken","type":"address"},{"indexed":false,"internalType":"address","name":"buyToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"sellAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountMin","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"CloseLeverageFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"filler","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"sellToken","type":"address"},{"indexed":false,"internalType":"address","name":"buyToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"sellAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountMin","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"address","name":"fillTarget","type":"address"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"CloseLeverageFlashFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"filler","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"sellToken","type":"address"},{"indexed":false,"internalType":"address","name":"buyToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"sellAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountMin","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"CollateralSwapFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"filler","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"sellToken","type":"address"},{"indexed":false,"internalType":"address","name":"buyToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"sellAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountMin","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"address","name":"fillTarget","type":"address"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"CollateralSwapFlashFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"collector","type":"address"}],"name":"FeeCollectorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"metaActions","type":"address"}],"name":"MetaActionsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"metaSessionActions","type":"address"}],"name":"MetaSessionActionsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"filler","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"sellToken","type":"address"},{"indexed":false,"internalType":"address","name":"buyToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"sellAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountMin","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"OpenLeverageFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"filler","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"address","name":"sellToken","type":"address"},{"indexed":false,"internalType":"address","name":"buyToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"sellAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"buyAmountMin","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"address","name":"fillTarget","type":"address"},{"indexed":false,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"OpenLeverageFlashFilled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"bytes32","name":"digest","type":"bytes32"},{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"indexed":false,"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"}],"name":"OrderBroadcast","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":true,"internalType":"bytes32","name":"digest","type":"bytes32"}],"name":"OrderCancelled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"bytes32","name":"digest","type":"bytes32"},{"indexed":false,"internalType":"bool","name":"signed","type":"bool"}],"name":"PreSignature","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sessionManager","type":"address"}],"name":"SessionManagerSet","type":"event"},{"inputs":[],"name":"DOMAIN_CHAIN_ID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"LEVERAGED_ORDER_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"}],"name":"broadcastOrder","outputs":[{"internalType":"bytes32","name":"digest","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"}],"name":"cancelOrder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"cancelOrderWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bool","name":"usePermit","type":"bool"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bytes","name":"sig","type":"bytes"}],"internalType":"struct LeverageRfqEngine.MetaPermit","name":"permit","type":"tuple"}],"name":"closeLeverage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"}],"name":"closeLeverage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"internalType":"bytes","name":"sig","type":"bytes"},{"components":[{"internalType":"bool","name":"usePermit","type":"bool"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bytes","name":"sig","type":"bytes"}],"internalType":"struct LeverageRfqEngine.MetaPermit","name":"permit","type":"tuple"}],"name":"closeLeverageFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"internalType":"bytes","name":"sig","type":"bytes"}],"name":"closeLeverageFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"closeLeverageFlashWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"permitSessionCall","type":"tuple"},{"internalType":"bytes","name":"permitDelegateSignature","type":"bytes"}],"name":"closeLeverageFlashWithSessionPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"closeLeverageWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"permitSessionCall","type":"tuple"},{"internalType":"bytes","name":"permitDelegateSignature","type":"bytes"}],"name":"closeLeverageWithSessionPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeCollector","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"filledDigests","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"metaActions","outputs":[{"internalType":"contract MetaActions","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"metaSessionActions","outputs":[{"internalType":"contract MetaSessionActions","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"}],"name":"onLeverageFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"}],"name":"openLeverage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bool","name":"usePermit","type":"bool"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bytes","name":"sig","type":"bytes"}],"internalType":"struct LeverageRfqEngine.MetaPermit","name":"permit","type":"tuple"}],"name":"openLeverage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"internalType":"bytes","name":"sig","type":"bytes"}],"name":"openLeverageFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"internalType":"bytes","name":"sig","type":"bytes"},{"components":[{"internalType":"bool","name":"usePermit","type":"bool"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bytes","name":"sig","type":"bytes"}],"internalType":"struct LeverageRfqEngine.MetaPermit","name":"permit","type":"tuple"}],"name":"openLeverageFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"openLeverageFlashWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"permitSessionCall","type":"tuple"},{"internalType":"bytes","name":"permitDelegateSignature","type":"bytes"}],"name":"openLeverageFlashWithSessionPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"openLeverageWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"permitSessionCall","type":"tuple"},{"internalType":"bytes","name":"permitDelegateSignature","type":"bytes"}],"name":"openLeverageWithSessionPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"}],"name":"orderDigest","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pm","outputs":[{"internalType":"contract IPositionsManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"preSignature","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sessionManager","outputs":[{"internalType":"contract ISessionManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"collector","type":"address"}],"name":"setFeeCollector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"metaActions_","type":"address"}],"name":"setMetaActions","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"metaSessionActions_","type":"address"}],"name":"setMetaSessionActions","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"digest","type":"bytes32"},{"internalType":"bool","name":"signed","type":"bool"}],"name":"setPreSignature","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sessionManager_","type":"address"}],"name":"setSessionManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"}],"name":"swapCollateral","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"bytes","name":"sig","type":"bytes"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bool","name":"usePermit","type":"bool"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bytes","name":"sig","type":"bytes"}],"internalType":"struct LeverageRfqEngine.MetaPermit","name":"permit","type":"tuple"}],"name":"swapCollateral","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"internalType":"bytes","name":"sig","type":"bytes"}],"name":"swapCollateralFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"internalType":"bytes","name":"sig","type":"bytes"},{"components":[{"internalType":"bool","name":"usePermit","type":"bool"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bytes","name":"sig","type":"bytes"}],"internalType":"struct LeverageRfqEngine.MetaPermit","name":"permit","type":"tuple"}],"name":"swapCollateralFlash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"swapCollateralFlashWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"address","name":"fillTarget","type":"address"},{"internalType":"bytes","name":"fillData","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"permitSessionCall","type":"tuple"},{"internalType":"bytes","name":"permitDelegateSignature","type":"bytes"}],"name":"swapCollateralFlashWithSessionPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"}],"name":"swapCollateralWithSession","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"enum LeverageRfqEngine.LeverageAction","name":"action","type":"uint8"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"sellToken","type":"address"},{"internalType":"address","name":"buyToken","type":"address"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"buyAmount","type":"uint256"},{"internalType":"uint32","name":"validTo","type":"uint32"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct LeverageRfqEngine.LeveragedOrder","name":"order","type":"tuple"},{"internalType":"uint256","name":"buyAmountIn","type":"uint256"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"sessionCall","type":"tuple"},{"internalType":"bytes","name":"delegateSignature","type":"bytes"},{"components":[{"internalType":"bytes32","name":"sessionId","type":"bytes32"},{"internalType":"bytes32","name":"dataHash","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"internalType":"struct ISessionManager.SessionCall","name":"permitSessionCall","type":"tuple"},{"internalType":"bytes","name":"permitDelegateSignature","type":"bytes"}],"name":"swapCollateralWithSessionPermit","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
60a08060405234610257576060816145fb803803809161001f828561025b565b8339810103126102575761003281610292565b9061004b604061004460208401610292565b9201610292565b6001600160a01b039092169182158015610246575b610237576001600160a01b0316918215610228576080525f80546001600160a01b03199081166001600160a01b0393909316928317825560018054909116841790557ff8ccb027dfcd135e000e9d45e6cc2d662578a8825d4c45b5e32e0adf67e79ec68180a37f12e1d17016b94668449f97876f4a8d5cc2c19f314db337418894734037cc19d45f80a2466005556040516100fc60408261025b565b60118152704c65766572616765526671456e67696e6560781b602090910152604080517f9472db2fb5cb0ea7c0ce865fe96609bad4756ba07af9eb7fad3b69cfb1ff9aa59161014b908261025b565b600181526020810190603160f81b82525190206040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a081526101af60c08261025b565b51902060065560405161435490816102a782396080518181816110e3015281816111de0152818161204f0152818161227c0152818161248b015281816126b30152818161289e01528181612a1701528181612ed4015281816130a9015281816132f40152818161348e0152818161376f015261396f0152f35b638f4f6d3360e01b5f5260045ffd5b634d01520f60e01b5f5260045ffd5b506001600160a01b03821615610060565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761027e57604052565b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036102575756fe60806040526004361015610011575f80fd5b5f3560e01c80631307d9a1146102f4578063137fba4e146102ef57806313b91383146102ea5780631840c171146102e55780631c5e28b4146102e0578063234f8bcf146102db5780632850e9e2146102d65780632fe4fa23146102d15780633227a8ec146102cc57806334134c5a146102c75780633644e515146102c2578063416f281d146102bd578063596fbf29146102b857806360a73a7a146102b3578063620c9105146102ae578063674f0abd146102a95780636df11c18146102a45780636e54fe571461029f578063704b6c021461029a57806374c3767e14610295578063789880cf146102905780637a9d2a631461028b5780637b671ecb14610286578063833c4ac9146102815780638970cdff1461027c57806397b939d31461027757806397eb675d146102725780639eb35ec31461026d5780639fc85f0014610268578063a22b452b14610263578063a42dce801461025e578063a5c0963514610259578063a9ce826614610254578063b7b13f791461024f578063c3507bcf1461024a578063c415b95c14610245578063c5649eab14610240578063c6fbdc6c1461023b578063d7b8acf414610236578063dc06432814610231578063e7d1a8891461022c578063eb8fb26814610227578063ed714f6014610222578063f2fe80d21461021d578063f65bbc1f146102185763f851a44014610213575f80fd5b61188b565b61186e565b611854565b61183a565b6117c9565b611782565b61171e565b6116f9565b611695565b61167b565b611653565b611636565b61160e565b6115df565b61157e565b611503565b6114b7565b61144c565b6111ab565b611141565b611112565b6110ce565b6110a5565b611023565b610e94565b610e45565b610ddb565b610d68565b610d02565b610c5c565b610bf2565b6109dd565b61096f565b61087d565b610860565b610843565b61081e565b6107cf565b610783565b610719565b6106f5565b610688565b610655565b610590565b610496565b61031e565b61010090600319011261030b57600490565b5f80fd5b908161010091031261030b5790565b3461030b5761010036600319011261030b57610339366102f9565b6020810135610347816103de565b336001600160a01b03909116036103cf5761036461036991611d08565b611e02565b805f52600760205260ff60405f2054166103c057805f52600760205261039960405f20600160ff19825416179055565b337f35974c4230d53fb4c6e8553fd900c88ba92747dbc689a79bcd6ba755cb9369855f80a3005b63781601e160e11b5f5260045ffd5b637898993160e01b5f5260045ffd5b6001600160a01b0381160361030b57565b35906103fa826103de565b565b9181601f8401121561030b578235916001600160401b03831161030b576020838186019501011161030b57565b6003198101610160811261030b576101001361030b576004916101043561044f816103de565b91610124356001600160401b03811161030b578161046f916004016103fc565b9290929161014435906001600160401b03821161030b57610492916004016103fc565b9091565b3461030b576104e56104a736610429565b936104b3939193611e45565b604051956104c2602088611927565b5f8752604051966104d2886118d0565b5f88525f60208901526040880152611fbe565b5f5f5160206143345f395f51905f525d005b60c09061010319011261030b5761010490565b908160c091031261030b5790565b906003198201610220811261030b576101001361030b576004916101043561053f816103de565b91610124356001600160401b03811161030b578261055f916004016103fc565b9290929161014460c08184031261030b579161020435906001600160401b03821161030b57610492916004016103fc565b3461030b576104e56105a136610518565b956105b0959195949294611e45565b6121bf565b9081606091031261030b5790565b61018060031982011261030b57610100600482031261030b57600491610104356105ec816103de565b91610124356001600160401b03811161030b578161060c916004016103fc565b92909291610144356001600160401b03811161030b578161062f916004016103fc565b9290929161016435906001600160401b03821161030b57610652916004016105b5565b90565b3461030b576104e5610682610669366105c3565b61067b97919697959295949394611e45565b36906119c3565b95611fbe565b3461030b5761010036600319011261030b5760206106db6106a8366102f9565b60055446036106e3576106bd60065491611d08565b906042916040519161190160f01b8352600283015260228201522090565b604051908152f35b6106bd6106ef46613ec1565b91611d08565b3461030b576104e5610709610669366105c3565b95612429565b5f91031261030b57565b3461030b575f36600319011261030b576002546040516001600160a01b039091168152602090f35b906003198201610140811261030b576101001361030b5760049161010435906001600160401b03821161030b5761077a916004016103fc565b90916101243590565b3461030b576104e561079436610741565b9161079d611e45565b604051936107ac602086611927565b5f8552604051946107bc866118d0565b5f86525f60208701526040860152612630565b3461030b576104e56107e036610429565b936107ec939193611e45565b604051956107fb602088611927565b5f87526040519661080b886118d0565b5f88525f60208901526040880152612429565b3461030b576104e561082f36610518565b9561083e959195949294611e45565b6127ff565b3461030b575f36600319011261030b576020600654604051908152f35b3461030b575f36600319011261030b576020600554604051908152f35b3461030b576104e561088e36610741565b91610897611e45565b604051936108a6602086611927565b5f8552604051946108b6866118d0565b5f86525f602087015260408601526129c1565b61030060031982011261030b576108e181600461030f565b91610104356108ef816103de565b91610124356001600160401b03811161030b578161090f916004016103fc565b9290929161091f8161014461050a565b91610204356001600160401b03811161030b578261093f916004016103fc565b9290929161094f8261022461050a565b916102e435906001600160401b03821161030b57610492916004016103fc565b3461030b5761097d366108c9565b610991999299989398979497969596611e45565b61099b8a88612be0565b60808301359160e084013583018093116109d85760a088013583018093116109d8576104e59a6105b09360408601356109d3816103de565b612d45565b611a19565b3461030b576101e036600319011261030b576109f8366102f9565b610a01366104f7565b6101c4356001600160401b03811161030b57610a219036906004016103fc565b610a2c939193611e45565b600454610a49906001600160a01b03165b6001600160a01b031690565b936001600160a01b03851615610be357610a8994606092610a6986612dc5565b5f60405180988195829463033972db60e61b845233918b60048601611ae1565b03925af1928315610bde575f93610bab575b506001600160a01b038316928315610b9c576020820184610abe610a3d836118b2565b03610b6e575050610ad0602091611d08565b910135818103610b555750610ae490611e02565b90610b01610afa835f52600760205260405f2090565b5460ff1690565b6103c057610b27610b1a835f52600760205260405f2090565b805460ff19166001179055565b7f35974c4230d53fb4c6e8553fd900c88ba92747dbc689a79bcd6ba755cb9369855f80a3610b53611e7a565b005b6324d8403760e11b5f5260049190915260245260445b5ffd5b90610b7b610b6b926118b2565b63618cfe1560e11b5f526001600160a01b0391821660045216602452604490565b634d01520f60e01b5f5260045ffd5b610bce91935060603d606011610bd7575b610bc68183611927565b810190611a49565b5050915f610a9b565b503d610bbc565b611b28565b63fe4e473560e01b5f5260045ffd5b3461030b57602036600319011261030b57600435610c0f816103de565b610c17612e07565b600480546001600160a01b0319166001600160a01b039290921691821790557f8d3eb0d506bd1ac935e42a380dc3a5bb14bb1a905548aab3dc62c50c60f778645f80a2005b3461030b575f36600319011261030b576003546040516001600160a01b039091168152602090f35b6102e060031982011261030b57610100600482031261030b57600491610104359161012460c08183031261030b57916101e4356001600160401b03811161030b5782610cd2916004016103fc565b92909291610ce28261020461050a565b916102c435906001600160401b03821161030b57610492916004016103fc565b3461030b57610d1036610c84565b610d21979297969396959495611e45565b610d2b8886612be0565b60808301359160e084013583018093116109d85760a086013583018093116109d8576104e598610d639360408601356109d3816103de565b612e29565b3461030b57602036600319011261030b57600435610d85816103de565b610d8d612e07565b6001600160a01b03168015610b9c575f548160018060a01b0382167ff8ccb027dfcd135e000e9d45e6cc2d662578a8825d4c45b5e32e0adf67e79ec65f80a36001600160a01b031916175f55005b3461030b57602036600319011261030b57600435610df8816103de565b610e00612e07565b600280546001600160a01b0319166001600160a01b039290921691821790557f5226c2129eacbc36446bd868e02ddc36344062a0b8dbdd02835138e4e2d37faa5f80a2005b3461030b576104e5610e5636610429565b93610e62939193611e45565b60405195610e71602088611927565b5f875260405196610e81886118d0565b5f88525f60208901526040880152613047565b3461030b5761010036600319011261030b57610eaf366102f9565b602081013590610ebe826103de565b6001600160a01b038216338103610fc557610fc19260e0610ee161036485611d08565b938493610eee85336131fa565b610f0e60405194610f09868535610f0481611b33565b611b6b565b6103de565b6020840152610f346040820135610f24816103de565b6001600160a01b03166040850152565b610f53610f43606083016103ef565b6001600160a01b03166060850152565b6080810135608084015260a081013560a0840152610f83610f7660c08301611b86565b63ffffffff1660c0850152565b013560e08201527f7e37598d7e8b67ec1cd215b7c2d1e7e0b6f126cc2798b173066b0f3951ed3bc06101003392a36040519081529081906020820190565b0390f35b6322b1b9cd60e11b5f5260045ffd5b906003198201610200811261030b576101001361030b57600491610104359160c06101231983011261030b57610124916101e435906001600160401b03821161030b57610492916004016103fc565b3461030b576104e561103436610fd4565b93611040939193611e45565b613251565b6003198101610160811261030b576101001361030b57600491610104356001600160401b03811161030b578261107d916004016103fc565b92909291610124359161014435906001600160401b03821161030b57610652916004016105b5565b3461030b576104e56110c86110b936611045565b61067b95919495939293611e45565b93613438565b3461030b575f36600319011261030b576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461030b57602036600319011261030b576004355f526007602052602060ff60405f2054166040519015158152f35b3461030b57602036600319011261030b5760043561115e816103de565b611166612e07565b600380546001600160a01b0319166001600160a01b039290921691821790557fa9951ff64d6f18170636613f2e6652d59f149a892a7308f76a8698aaec63cbbe5f80a2005b3461030b57602036600319011261030b576004356001600160401b03811161030b576111db9036906004016103fc565b907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361143d5761121891810190611c19565b60608181015190810151909190611237906001600160a01b0316610a3d565b6040516370a0823160e01b8152306004820152916001600160a01b03821691602084602481865afa938415610bde575f9461141c575b506040850151611285906001600160a01b0316610a3d565b6020830180516080880151919392916112a7916001600160a01b031683613608565b60e0870151806113fe575b50508251156113c95750516040906112d490610a3d906001600160a01b031681565b91015190803b1561030b576040516001621a3ce760e11b03198152915f9183918290849082906113079060048301611cd6565b03925af18015610bde576113af575b505b6040516370a0823160e01b815230600482015290602090829060249082905afa908115610bde575f91611380575b50818111156113755760a09161135b91611ce7565b915b01511161136657005b6304aecd2d60e21b5f5260045ffd5b505060a05f9161135d565b6113a2915060203d6020116113a8575b61139a8183611927565b810190611ca3565b5f611346565b503d611390565b806113bd5f6113c393611927565b8061070f565b5f611316565b906113e460406113f994015160208082518301019101611ca3565b9051909130916001600160a01b031690613649565b611318565b60015461141592906001600160a01b031690613608565b5f806112b2565b61143691945060203d6020116113a85761139a8183611927565b925f61126d565b63e8d9240560e01b5f5260045ffd5b3461030b5761145a36610c84565b61146b979297969396959495611e45565b6114758886612be0565b60808301359160e084013583018093116109d85760a086013583018093116109d8576104e5986114b29360408601356114ad816103de565b61368d565b6136d8565b3461030b576104e56114c836610741565b916114d1611e45565b604051936114e0602086611927565b5f8552604051946114f0866118d0565b5f86525f60208701526040860152613438565b3461030b57602036600319011261030b57600435611520816103de565b611528612e07565b6001600160a01b0316801561156f57600180546001600160a01b031916821790557f12e1d17016b94668449f97876f4a8d5cc2c19f314db337418894734037cc19d45f80a2005b638f4f6d3360e01b5f5260045ffd5b3461030b5761158c36610c84565b61159d979297969396959495611e45565b6115a78886612be0565b60808301359160e084013583018093116109d85760a086013583018093116109d8576104e5986110409360408601356109d3816103de565b3461030b57602036600319011261030b576004355f526008602052602060ff60405f2054166040519015158152f35b3461030b575f36600319011261030b576004546040516001600160a01b039091168152602090f35b3461030b576104e561164736610fd4565b936114b2939193611e45565b3461030b575f36600319011261030b576001546040516001600160a01b039091168152602090f35b3461030b576104e561168f6110b936611045565b936129c1565b3461030b576116a3366108c9565b6116b7999299989398979497969596611e45565b6116c18a88612be0565b60808301359160e084013583018093116109d85760a088013583018093116109d8576104e59a61083e9360408601356114ad816103de565b3461030b576104e561170a36610518565b95611719959195949294611e45565b6138a5565b3461030b5761172c366108c9565b611740999299989398979497969596611e45565b61174a8a88612be0565b60808301359160e084013583018093116109d85760a088013583018093116109d8576104e59a6117199360408601356109d3816103de565b3461030b575f36600319011261030b5760206040517ffd8d2910f3a2f56905df13cec5c26556c38404fe5081cd6f39be7a18b85a12188152f35b3590811515820361030b57565b3461030b57604036600319011261030b5760043560243580151580910361030b576117f48233613fde565b5f52600860205260405f2060ff1981541660ff83161790556040519081527f7b2d0801ca1cc329a98add2e4d0bc676494400788a76e6b50c15a77a4d02f07160203392a3005b3461030b576104e561184e610669366105c3565b95613047565b3461030b576104e56118686110b936611045565b93612630565b3461030b576104e561187f36610fd4565b93610d63939193611e45565b3461030b575f36600319011261030b575f546040516001600160a01b039091168152602090f35b35610652816103de565b634e487b7160e01b5f52604160045260245ffd5b606081019081106001600160401b038211176118eb57604052565b6118bc565b61010081019081106001600160401b038211176118eb57604052565b608081019081106001600160401b038211176118eb57604052565b90601f801991011681019081106001600160401b038211176118eb57604052565b604051906103fa608083611927565b6001600160401b0381116118eb57601f01601f191660200190565b92919261197e82611957565b9161198c6040519384611927565b82948184528183011161030b578281602093845f960137010152565b9080601f8301121561030b5781602061065293359101611972565b919060608382031261030b57604051906119dc826118d0565b81936119e7816117bc565b8352602081013560208401526040810135916001600160401b03831161030b57604092611a1492016119a8565b910152565b634e487b7160e01b5f52601160045260245ffd5b919082018092116109d857565b519061ffff8216820361030b57565b9081606091031261030b578051611a5f816103de565b9161065260406020840151611a73816103de565b9301611a3a565b60a08091803584526020810135602085015260408101356040850152606081013560608501526080810135611aae816103de565b600180841b031660808501520135910152565b908060209392818452848401375f828201840152601f01601f1916010190565b929161012092611b04611b18939796975f87525f60208801526040870190611a7a565b610140610100860152610140850191611ac1565b6001600160a01b03909416910152565b6040513d5f823e3d90fd5b6003111561030b57565b35906103fa82611b33565b634e487b7160e01b5f52602160045260245ffd5b60031115611b6657565b611b48565b906003821015611b665752565b63ffffffff81160361030b57565b35906103fa82611b78565b91908261010091031261030b57604051611baa816118f0565b60e0808294611bb881611b3d565b8452611bc6602082016103ef565b6020850152611bd7604082016103ef565b6040850152611be8606082016103ef565b60608501526080810135608085015260a081013560a0850152611c0d60c08201611b86565b60c08501520135910152565b60208183031261030b578035906001600160401b03821161030b57016101608183031261030b5760405191611c4d8361190c565b611c56826117bc565b83526020820135611c66816103de565b602084015260408201356001600160401b03811161030b5782611c9083606093611c9b96016119a8565b604086015201611b91565b606082015290565b9081602091031261030b575190565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b906020610652928181520190611cb2565b919082039182116109d857565b3561065281611b33565b3561065281611b78565b803590611d1482611b33565b6003821015611b6657611dfc6020820135611d2e816103de565b611dee604084013593611d40856103de565b606081013590611d4f826103de565b608081013560a08201359060e060c084013593611d6b85611b78565b604080517ffd8d2910f3a2f56905df13cec5c26556c38404fe5081cd6f39be7a18b85a12186020820190815260ff909d16918101919091526001600160a01b03988916606082015299881660808b01529690941660a089015260c088015260e087015263ffffffff16610100860152909101356101208401528290610140820190565b03601f198101835282611927565b51902090565b610652906005544603611e30575b6006546042916040519161190160f01b8352600283015260228201522090565b46600555611e3d46613ec1565b600655611e10565b5f5160206143345f395f51905f525c611e6b5760015f5160206143345f395f51905f525d565b633ee5aeb560e01b5f5260045ffd5b5f5f5160206143345f395f51905f525d565b6020815281511515602082015260018060a01b03602083015116604082015261016060e06060611eca60408601518483870152610180860190611cb2565b940151611edb608085018251611b6b565b60208101516001600160a01b0390811660a0868101919091526040830151821660c080880191909152606084015190921684870152608083015161010087015282015161012086015281015163ffffffff16610140850152015191015290565b6001600160a01b0391821681529181166020830152604082019290925291166060820152608081019190915260c060a0820181905261065292910190611cb2565b6001600160a01b0391821681529181166020830152604082019290925260608101929092526080820192909252911660a082015260c081019190915260e00190565b93959291949095611fce85611cf4565b611fd781611b5c565b6121b057611fe7602086016118b2565b91611ff188613a58565b611ffa86613a68565b6120049186613b18565b9160808501359260e08601359761201b8986611a2d565b9687604082019761202b896118b2565b916120369288613bd7565b6060810197612044896118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316959092906120858785613c7e565b61208e8a6118b2565b906120988c6118b2565b9260a08101359d6120a7611948565b60018152926001600160a01b038916602085015236906120c692611972565b6040830152366120d591611b91565b6060820152604051809160208201906120ed91611e8c565b03601f19810182526120ff9082611927565b873b1561030b5761212989918e5f95604051978896879663ef8dcd4b60e01b885260048801611f3b565b038183895af1978815610bde576121726121979661217d94612177947fcc26eea29ec6f7d5c4ff51f3c9b3ff6bd4b0575e7e2ab99e25b3f07613a4832f9c61219c575b50613d50565b6118b2565b976118b2565b9360018060a01b0316988998604051968796339a88611f7c565b0390a4565b806113bd5f6121aa93611927565b5f61216c565b631f05786d60e31b5f5260045ffd5b959492939591909160026121d282611cf4565b6121db81611b5c565b036121b0576121e983613a58565b6121f281613a68565b60a08701359560808201359360e083013561222f6122198a612214848a611a2d565b611a2d565b9360408601988c8661222a8c6118b2565b613db7565b6001600160a01b0381169a8b15610b9c57602086018c612251610a3d836118b2565b036123dd57506122619086613e5b565b9360608601998a612271816118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316989094906122b28a87613c7e565b6122bb8d6118b2565b926122c5906118b2565b9060a08101359b6122d4611948565b60018152956001600160a01b038b16602088015236906122f392611972565b60408601523661230291611b91565b60608501526040518094602082019061231a91611e8c565b03601f198101855261232c9085611927565b893b1561030b575f938b61235592604051978896879663120cb0bd60e21b885260048801611f3b565b0381838a5af1988915610bde578c9b61239f612197986123b1956123ab957fb4a8c723294d64215bd89bb6f8d10809a1af3373f7fea1b4b65d9455b1ab68769e61219c5750613d50565b806123c0575b506118b2565b986118b2565b94604051968796339a88611f7c565b6123d7906123d0610a3d846118b2565b3390613608565b5f6123a5565b82610b7b610b6b926118b2565b6001600160a01b03918216815291811660208301526040820192909252911660608201525f608082015260c060a0820181905261065292910190611cb2565b9091959293600161243983611cf4565b61244281611b5c565b036121b057612453602083016118b2565b9561245d84613a58565b61246683613a68565b6124709183613b18565b93606082019461247f866118b2565b6001600160a01b0316937f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166124bd8187613c7e565b60808501359560e08601359a6124d38c89611a2d565b958b604089019a886124e48d6118b2565b6124ed93613f5a565b6124f68a6118b2565b906125008c6118b2565b92612509611948565b60018152916001600160a01b0388166020840152369061252892611972565b6040820152612537368a611b91565b60608201526040518091602082019061254f91611e8c565b03601f19810182526125619082611927565b843b1561030b5761258a8d915f946040519a8b958695636022a48960e11b8752600487016123ea565b038183865af1948515610bde577fa9d270f97b84471fed88da0dd9e0936a7dcb3ebfc6de1b1943d58d16ce6d6be89861217260a0946125d5946123ab946121979a61219c5750613d50565b9401359760018060a01b0316988998604051968796339a88611f7c565b93909796959260c0959260e086019960018060a01b0316865260018060a01b0316602086015260408501526060840152608083015260a08201520152565b939061263b85611cf4565b61264481611b5c565b6121b057612654602086016118b2565b9261265f8587613fc9565b6126699186613b18565b60e08501359260808601359161267f8584611a2d565b9081604089019561268f876118b2565b9161269a9286613bd7565b60608801956126a8876118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316936126e68583613c7e565b6126ef886118b2565b6126f88a6118b2565b908b8d60a001359d6040518092602082019061271690602083019252565b03601f19810183526127289083611927565b612730611948565b5f81523360208201529160408301523661274991611b91565b60608201526040518091602082019061276191611e8c565b03601f19810182526127739082611927565b873b1561030b5761279d89918f5f95604051978896879663ef8dcd4b60e01b885260048801611f3b565b038183895af1978815610bde57612172612197966127e594612177947ff10165a5b14f33e30ae647cf5eb988c5ce7122a13fba12e6fb5b9586278c3d099c61219c5750613d50565b9360018060a01b0316988998604051968796339a886125f2565b959492939591909161281081611cf4565b61281981611b5c565b6121b05761282683613a58565b61282f81613a68565b60a08701359560808201359360e08301356128516122198a612214848a611a2d565b6001600160a01b0381169a8b15610b9c57602086018c612873610a3d836118b2565b036123dd57506128839086613e5b565b9360608601998a612893816118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316989094906128d48a87613c7e565b6128dd8d6118b2565b926128e7906118b2565b9060a08101359b6128f6611948565b60018152956001600160a01b038b166020880152369061291592611972565b60408601523661292491611b91565b60608501526040518094602082019061293c91611e8c565b03601f198101855261294e9085611927565b893b1561030b575f938b61297792604051978896879663ef8dcd4b60e01b885260048801611f3b565b0381838a5af1988915610bde578c9b61239f612197986123b1956123ab957fcc26eea29ec6f7d5c4ff51f3c9b3ff6bd4b0575e7e2ab99e25b3f07613a4832f9e61219c5750613d50565b939060026129ce86611cf4565b6129d781611b5c565b036121b0576129e8602086016118b2565b926129f38587613fc9565b6129fd9186613b18565b6060850192612a0b846118b2565b6001600160a01b0316917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690612a4a8285613c7e565b60808801359360e089013590612a608287611a2d565b8060408c0198612a6f8a6118b2565b91612a7a9289613f5a565b612a83886118b2565b612a8c8a6118b2565b908b8d60a001359d60405180926020820190612aaa90602083019252565b03601f1981018352612abc9083611927565b612ac4611948565b5f815233602082015291604083015236612add91611b91565b606082015260405180916020820190612af591611e8c565b03601f1981018252612b079082611927565b873b1561030b57612b3189918f5f95604051978896879663120cb0bd60e21b885260048801611f3b565b038183895af1978815610bde57612172612197966127e594612177947f71674d065a34912f8c1f16e8ef1274486beba4d0349ccf209b5989ff3c3892ec9c61219c5750613d50565b519065ffffffffffff8216820361030b57565b91908260c091031261030b578151612ba3816103de565b916020810151612bb2816103de565b91612bbf60408301612b79565b91612bcc60608201612b79565b9161065260a06080840151611a7381611b78565b600454909190612bf8906001600160a01b0316610a3d565b6001600160a01b03811615610be357604051633ede941960e11b81529235600484015260c083602481845afa908115610bde57612c5d935f92612cde575b5060c0919235906040518080968194633ede941960e11b8352600483019190602083019252565b03915afa918215610bde575f92612ca8575b506001600160a01b0382811690821603612c87575050565b63618cfe1560e11b5f526001600160a01b039081166004521660245260445ffd5b612ccb91925060c03d60c011612cd7575b612cc38183611927565b810190612b8c565b5050505050905f612c6f565b503d612cb9565b60c09250612cf890833d8511612cd757612cc38183611927565b505050505091612c36565b6001600160a01b03918216815291166020820152604081019190915261065293916101409190612d37906060830190611a7a565b816101208201520191611ac1565b929390612d5183612dc5565b6003546001600160a01b0316918215612db657823b1561030b575f94612d908692604051988997889687956315c5752560e21b87523060048801612d03565b03925af18015610bde57612da15750565b80612dad5f8093611927565b80031261030b57565b63b7689b9d60e01b5f5260045ffd5b60800135612dd2816103de565b6001600160a01b03811690338203612de8575050565b612df1906103de565b63743b76f160e11b5f526004523360245260445ffd5b5f546001600160a01b03163303612e1a57565b6316a8949d60e31b5f5260045ffd5b9391939290926002612e3a82611cf4565b612e4381611b5c565b036121b057612e528482613fc9565b60a08501359360808201359160e0810135612e85612e74886122148488611a2d565b9660408401968a8961222a8a6118b2565b6001600160a01b038116989091908915610b9c57602084018a612eaa610a3d836118b2565b0361303a5750612eba9084613e5b565b916060840197612ec9896118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031695909190612f0a8784613c7e565b612f138a6118b2565b612f1c8c6118b2565b9460a08301359560405193848c6020820190612f3a90602083019252565b03601f1981018652612f4c9086611927565b612f54611948565b5f815233602082015294604086015236612f6d91611b91565b606085015260405180946020820190612f8591611e8c565b03601f1981018552612f979085611927565b893b1561030b575f9387612fc092604051978896879663120cb0bd60e21b885260048801611f3b565b0381838a5af1988915610bde578c9b61300a61219798613015956123ab957f71674d065a34912f8c1f16e8ef1274486beba4d0349ccf209b5989ff3c3892ec9e61219c5750613d50565b8061302457506118b2565b94604051968796339a886125f2565b6123d79033613035610a3d856118b2565b613608565b83610b7b610b6b926118b2565b959291949093600261305888611cf4565b61306181611b5c565b036121b057613072602088016118b2565b9161307c86613a58565b61308588613a68565b61308f9188613b18565b93606087019461309e866118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031692906130dd8482613c7e565b60808a01359560e08b01359a6130f38c89611a2d565b9182604083019a6131038c6118b2565b9161310e928b613f5a565b6131178a6118b2565b906131218c6118b2565b9260a08101359d613130611948565b60018152926001600160a01b0389166020850152369061314f92611972565b60408301523661315e91611b91565b60608201526040518091602082019061317691611e8c565b03601f19810182526131889082611927565b873b1561030b576131b289918e5f95604051978896879663120cb0bd60e21b885260048801611f3b565b038183895af1978815610bde576121726121979661217d94612177947fb4a8c723294d64215bd89bb6f8d10809a1af3373f7fea1b4b65d9455b1ab68769c61219c5750613d50565b6132048282613fde565b5f52600860205260405f20600160ff198254161790557f7b2d0801ca1cc329a98add2e4d0bc676494400788a76e6b50c15a77a4d02f0716020604051926001845260018060a01b031692a3565b909193600161325f83611cf4565b61326881611b5c565b036121b0576132778383613fc9565b60a08501359160808101359160e0820135946132ab61329a866122148988611a2d565b9260408501988a8561222a8c6118b2565b6001600160a01b038116989096908915610b9c57602085018a6132d0610a3d836118b2565b0361342b57506132e09085613e5b565b9160608501976132f2610a3d8a6118b2565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316916133909061332b8484613c7e565b6133348d6118b2565b9061333e8d6118b2565b61339e60405161335a81611dee8b602083019190602083019252565b613362611948565b5f8152336020820152905b604082015261337c368e611b91565b606082015260405195869160208301611e8c565b03601f198101865285611927565b853b1561030b575f936133c6916040519b8c958695636022a48960e11b8752600487016123ea565b038183865af1958615610bde578c9b7f22f41c76561b0c426efdb1355e73725b3c1b63ae56d743cdafa06b3572b659719a61300a60a09561341995613413956121979c61219c5750613d50565b996118b2565b95013590604051968796339a886125f2565b88610b7b610b6b926118b2565b919390600161344684611cf4565b61344f81611b5c565b036121b057613460602084016118b2565b9461346b8585613fc9565b6134759184613b18565b6060830192613483846118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316926134c18483613c7e565b60808301359360e0840135906134d78287611a2d565b938a6040870198866134e88b6118b2565b6134f193613f5a565b6134fa886118b2565b6135038a6118b2565b90604051808d602082019061351a90602083019252565b03601f198101825261352c9082611927565b613534611948565b5f815233602082015290604082015261354d368a611b91565b60608201526040518091602082019061356591611e8c565b03601f19810182526135779082611927565b843b1561030b576135a08e915f946040519a8b958695636022a48960e11b8752600487016123ea565b038183865af1948515610bde577f22f41c76561b0c426efdb1355e73725b3c1b63ae56d743cdafa06b3572b659719861217260a0946135eb946123ab946121979a61219c5750613d50565b9401359860018060a01b0316988998604051968796339a886125f2565b60405163a9059cbb60e01b60208201526001600160a01b039290921660248301526044808301939093529181526103fa91613644606483611927565b614011565b6040516323b872dd60e01b60208201526001600160a01b0392831660248201529290911660448301526064808301939093529181526103fa91613644608483611927565b92939061369983612dc5565b6003546001600160a01b0316918215612db657823b1561030b575f94612d908692604051988997889687956306f7f5dd60e21b87523060048801612d03565b9391939290926136e781611cf4565b6136f081611b5c565b6121b0576136fe8482613fc9565b60a08501359360808201359160e0810135613720612e74886122148488611a2d565b6001600160a01b038116989091908915610b9c57602084018a613745610a3d836118b2565b0361303a57506137559084613e5b565b916060840197613764896118b2565b6001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316959091906137a58784613c7e565b6137ae8a6118b2565b6137b78c6118b2565b9460a08301359560405193848c60208201906137d590602083019252565b03601f19810186526137e79086611927565b6137ef611948565b5f81523360208201529460408601523661380891611b91565b60608501526040518094602082019061382091611e8c565b03601f19810185526138329085611927565b893b1561030b575f938761385b92604051978896879663ef8dcd4b60e01b885260048801611f3b565b0381838a5af1988915610bde578c9b61300a61219798613015956123ab957ff10165a5b14f33e30ae647cf5eb988c5ce7122a13fba12e6fb5b9586278c3d099e61219c5750613d50565b90929395919460016138b683611cf4565b6138bf81611b5c565b036121b05761222a956138d185613a58565b6138da83613a68565b60a08801359460808401359461390b60e0860135916138fd89612214858b611a2d565b958c8760408a019d8e6118b2565b6001600160a01b0381169a9098908b15610b9c57602087018c613930610a3d836118b2565b03613a4b5750906133906139458c9389613e5b565b95606089019b8c916139c561395c610a3d856118b2565b9561336d6139a061399a60018060a01b037f0000000000000000000000000000000000000000000000000000000000000000169a6121728c8c613c7e565b966118b2565b936139a9611948565b60018152926001600160a01b038d1660208501525b3691611972565b853b1561030b575f936139ed916040519b8c958695636022a48960e11b8752600487016123ea565b038183865af1958615610bde578c9b7fa9d270f97b84471fed88da0dd9e0936a7dcb3ebfc6de1b1943d58d16ce6d6be89a61239f60a095613a3a95613413956121979c61219c5750613d50565b950135604051968796339a88611f7c565b8a610b7b610b6b926118b2565b6001600160a01b031615610b9c57565b613a80613a7760c08301611cfe565b63ffffffff1690565b4211613b09576080810135158015613afd575b613aee57613aa3604082016118b2565b613ab2610a3d606084016118b2565b6001600160a01b0390911614613adf576001600160a01b0390613ad7906020016118b2565b1615610b9c57565b63a17ac8eb60e01b5f5260045ffd5b6323ee846560e21b5f5260045ffd5b5060a081013515613a93565b630f34ff8560e41b5f5260045ffd5b909291613b2761036483611d08565b93845f52600760205260ff60405f205416613b8657613b5385916020613b59950135936139be856103de565b916140b9565b15613b7757815f52600760205260405f20600160ff19825416179055565b630facae2b60e11b5f5260045ffd5b63321ec40b60e11b5f5260045ffd5b6001600160a01b039182168152918116602083015290911660408201526060810191909152608081019190915260c060a0820181905261065292910190611cb2565b9190613bea613be68551151590565b1590565b613c7857600254613c03906001600160a01b0316610a3d565b906001600160a01b03821615613c695760406020860151950151823b1561030b575f94613c4a869260405198899788968795636b4fa25b60e11b8752309060048801613b95565b03925af18015610bde57613c5b5750565b806113bd5f6103fa93611927565b630ce2637160e41b5f5260045ffd5b50505050565b60405163095ea7b360e01b60208083019182526001600160a01b03851660248401525f196044840152919291905f90613cc485606481015b03601f198101875286611927565b84519082855af15f51903d81613d24575b501590505b613ce357505050565b60405163095ea7b360e01b60208201526001600160a01b0390931660248401525f60448401526103fa9261364490613d1e8160648101611dee565b82614011565b15159050613d445750613cda6001600160a01b0382163b15155b5f613cd5565b6001613cda9114613d3e565b60405163095ea7b360e01b60208083019182526001600160a01b03851660248401525f604484018190529293929091613cc48560648101613cb6565b9490611b18936101209593611b049299989960018060a01b0316885260208801526040870190611a7a565b600454929594939192613dd2906001600160a01b0316610a3d565b6001600160a01b03811615610be357613e13945f606094613df28a612dc5565b6040519788958694859363033972db60e61b85528d8b339460048801613d8c565b03925af18015610bde576103fa925f905f92613e36575b509460a0013591614196565b60a09250613e53915060603d606011610bd757610bc68183611927565b929050613e2a565b613e66602091611d08565b910135818103613eab5750613e7a90611e02565b90815f52600760205260ff60405f205416613b8657815f5260076020526103fa60405f20600160ff19825416179055565b906324d8403760e11b5f5260045260245260445ffd5b604090601160208351613ed48582611927565b82815201704c65766572616765526671456e67696e6560781b81522090600160208451613f018682611927565b82815201603160f81b81522083519260208401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8652840152606083015260808201523060a082015260a08152611dfc60c082611927565b9190613f69613be68551151590565b613c7857600254613f82906001600160a01b0316610a3d565b906001600160a01b03821615613c695760406020860151950151823b1561030b575f94613c4a86926040519889978896879563a74a81fd60e01b8752309060048801613b95565b60a090613fd581613a68565b01351161136657565b906040519060208201926bffffffffffffffffffffffff199060601b168352603482015260348152611dfc605482611927565b905f602091828151910182855af115611b28575f513d61406057506001600160a01b0381163b155b6140405750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b60011415614039565b60041115611b6657565b604090610652939281528160208201520190611cb2565b3d156140b4573d9061409b82611957565b916140a96040519384611927565b82523d5f602084013e565b606090565b9190916140da610afa6140cc8584613fde565b5f52600860205260405f2090565b614178576140e882846141f9565b506140f281614069565b159081614180575b5061417857803b15614171575f92611dee61412e85946040519283916020830195630b135d3f60e11b875260248401614073565b51915afa61413a61408a565b90158015614166575b61416157602001516001600160e01b031916630b135d3f60e11b1490565b505f90565b506004815110614143565b5050505f90565b505050600190565b6001600160a01b0383811691161490505f6140fa565b919081156141f457828210156141e5578183039283116109d85761ffff61271091166141c281856142b5565b9309151582018092116109d857116141d657565b630e34194b60e01b5f5260045ffd5b633763711f60e01b5f5260045ffd5b505050565b8151919060418303614229576142229250602082015190606060408401519301515f1a90614233565b9192909190565b50505f9160029190565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116142aa579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa15610bde575f516001600160a01b038116156142a057905f905f90565b505f906001905f90565b5050505f9160039190565b5f1982820990828102918280821091030390811561431857816127101115614311577fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e9193612710910990828211900360fc1b910360041c170290565b6011614323565b506127109250500490565b634e487b715f526020526024601cfdfe9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b2005500000000000000000000000044820497f8fe95a258a9522f0de2c04ab2bc3da30000000000000000000000001118e1c057211306a40a4d7006c040dbfe1370cb
Deployed Bytecode
0x60806040526004361015610011575f80fd5b5f3560e01c80631307d9a1146102f4578063137fba4e146102ef57806313b91383146102ea5780631840c171146102e55780631c5e28b4146102e0578063234f8bcf146102db5780632850e9e2146102d65780632fe4fa23146102d15780633227a8ec146102cc57806334134c5a146102c75780633644e515146102c2578063416f281d146102bd578063596fbf29146102b857806360a73a7a146102b3578063620c9105146102ae578063674f0abd146102a95780636df11c18146102a45780636e54fe571461029f578063704b6c021461029a57806374c3767e14610295578063789880cf146102905780637a9d2a631461028b5780637b671ecb14610286578063833c4ac9146102815780638970cdff1461027c57806397b939d31461027757806397eb675d146102725780639eb35ec31461026d5780639fc85f0014610268578063a22b452b14610263578063a42dce801461025e578063a5c0963514610259578063a9ce826614610254578063b7b13f791461024f578063c3507bcf1461024a578063c415b95c14610245578063c5649eab14610240578063c6fbdc6c1461023b578063d7b8acf414610236578063dc06432814610231578063e7d1a8891461022c578063eb8fb26814610227578063ed714f6014610222578063f2fe80d21461021d578063f65bbc1f146102185763f851a44014610213575f80fd5b61188b565b61186e565b611854565b61183a565b6117c9565b611782565b61171e565b6116f9565b611695565b61167b565b611653565b611636565b61160e565b6115df565b61157e565b611503565b6114b7565b61144c565b6111ab565b611141565b611112565b6110ce565b6110a5565b611023565b610e94565b610e45565b610ddb565b610d68565b610d02565b610c5c565b610bf2565b6109dd565b61096f565b61087d565b610860565b610843565b61081e565b6107cf565b610783565b610719565b6106f5565b610688565b610655565b610590565b610496565b61031e565b61010090600319011261030b57600490565b5f80fd5b908161010091031261030b5790565b3461030b5761010036600319011261030b57610339366102f9565b6020810135610347816103de565b336001600160a01b03909116036103cf5761036461036991611d08565b611e02565b805f52600760205260ff60405f2054166103c057805f52600760205261039960405f20600160ff19825416179055565b337f35974c4230d53fb4c6e8553fd900c88ba92747dbc689a79bcd6ba755cb9369855f80a3005b63781601e160e11b5f5260045ffd5b637898993160e01b5f5260045ffd5b6001600160a01b0381160361030b57565b35906103fa826103de565b565b9181601f8401121561030b578235916001600160401b03831161030b576020838186019501011161030b57565b6003198101610160811261030b576101001361030b576004916101043561044f816103de565b91610124356001600160401b03811161030b578161046f916004016103fc565b9290929161014435906001600160401b03821161030b57610492916004016103fc565b9091565b3461030b576104e56104a736610429565b936104b3939193611e45565b604051956104c2602088611927565b5f8752604051966104d2886118d0565b5f88525f60208901526040880152611fbe565b5f5f5160206143345f395f51905f525d005b60c09061010319011261030b5761010490565b908160c091031261030b5790565b906003198201610220811261030b576101001361030b576004916101043561053f816103de565b91610124356001600160401b03811161030b578261055f916004016103fc565b9290929161014460c08184031261030b579161020435906001600160401b03821161030b57610492916004016103fc565b3461030b576104e56105a136610518565b956105b0959195949294611e45565b6121bf565b9081606091031261030b5790565b61018060031982011261030b57610100600482031261030b57600491610104356105ec816103de565b91610124356001600160401b03811161030b578161060c916004016103fc565b92909291610144356001600160401b03811161030b578161062f916004016103fc565b9290929161016435906001600160401b03821161030b57610652916004016105b5565b90565b3461030b576104e5610682610669366105c3565b61067b97919697959295949394611e45565b36906119c3565b95611fbe565b3461030b5761010036600319011261030b5760206106db6106a8366102f9565b60055446036106e3576106bd60065491611d08565b906042916040519161190160f01b8352600283015260228201522090565b604051908152f35b6106bd6106ef46613ec1565b91611d08565b3461030b576104e5610709610669366105c3565b95612429565b5f91031261030b57565b3461030b575f36600319011261030b576002546040516001600160a01b039091168152602090f35b906003198201610140811261030b576101001361030b5760049161010435906001600160401b03821161030b5761077a916004016103fc565b90916101243590565b3461030b576104e561079436610741565b9161079d611e45565b604051936107ac602086611927565b5f8552604051946107bc866118d0565b5f86525f60208701526040860152612630565b3461030b576104e56107e036610429565b936107ec939193611e45565b604051956107fb602088611927565b5f87526040519661080b886118d0565b5f88525f60208901526040880152612429565b3461030b576104e561082f36610518565b9561083e959195949294611e45565b6127ff565b3461030b575f36600319011261030b576020600654604051908152f35b3461030b575f36600319011261030b576020600554604051908152f35b3461030b576104e561088e36610741565b91610897611e45565b604051936108a6602086611927565b5f8552604051946108b6866118d0565b5f86525f602087015260408601526129c1565b61030060031982011261030b576108e181600461030f565b91610104356108ef816103de565b91610124356001600160401b03811161030b578161090f916004016103fc565b9290929161091f8161014461050a565b91610204356001600160401b03811161030b578261093f916004016103fc565b9290929161094f8261022461050a565b916102e435906001600160401b03821161030b57610492916004016103fc565b3461030b5761097d366108c9565b610991999299989398979497969596611e45565b61099b8a88612be0565b60808301359160e084013583018093116109d85760a088013583018093116109d8576104e59a6105b09360408601356109d3816103de565b612d45565b611a19565b3461030b576101e036600319011261030b576109f8366102f9565b610a01366104f7565b6101c4356001600160401b03811161030b57610a219036906004016103fc565b610a2c939193611e45565b600454610a49906001600160a01b03165b6001600160a01b031690565b936001600160a01b03851615610be357610a8994606092610a6986612dc5565b5f60405180988195829463033972db60e61b845233918b60048601611ae1565b03925af1928315610bde575f93610bab575b506001600160a01b038316928315610b9c576020820184610abe610a3d836118b2565b03610b6e575050610ad0602091611d08565b910135818103610b555750610ae490611e02565b90610b01610afa835f52600760205260405f2090565b5460ff1690565b6103c057610b27610b1a835f52600760205260405f2090565b805460ff19166001179055565b7f35974c4230d53fb4c6e8553fd900c88ba92747dbc689a79bcd6ba755cb9369855f80a3610b53611e7a565b005b6324d8403760e11b5f5260049190915260245260445b5ffd5b90610b7b610b6b926118b2565b63618cfe1560e11b5f526001600160a01b0391821660045216602452604490565b634d01520f60e01b5f5260045ffd5b610bce91935060603d606011610bd7575b610bc68183611927565b810190611a49565b5050915f610a9b565b503d610bbc565b611b28565b63fe4e473560e01b5f5260045ffd5b3461030b57602036600319011261030b57600435610c0f816103de565b610c17612e07565b600480546001600160a01b0319166001600160a01b039290921691821790557f8d3eb0d506bd1ac935e42a380dc3a5bb14bb1a905548aab3dc62c50c60f778645f80a2005b3461030b575f36600319011261030b576003546040516001600160a01b039091168152602090f35b6102e060031982011261030b57610100600482031261030b57600491610104359161012460c08183031261030b57916101e4356001600160401b03811161030b5782610cd2916004016103fc565b92909291610ce28261020461050a565b916102c435906001600160401b03821161030b57610492916004016103fc565b3461030b57610d1036610c84565b610d21979297969396959495611e45565b610d2b8886612be0565b60808301359160e084013583018093116109d85760a086013583018093116109d8576104e598610d639360408601356109d3816103de565b612e29565b3461030b57602036600319011261030b57600435610d85816103de565b610d8d612e07565b6001600160a01b03168015610b9c575f548160018060a01b0382167ff8ccb027dfcd135e000e9d45e6cc2d662578a8825d4c45b5e32e0adf67e79ec65f80a36001600160a01b031916175f55005b3461030b57602036600319011261030b57600435610df8816103de565b610e00612e07565b600280546001600160a01b0319166001600160a01b039290921691821790557f5226c2129eacbc36446bd868e02ddc36344062a0b8dbdd02835138e4e2d37faa5f80a2005b3461030b576104e5610e5636610429565b93610e62939193611e45565b60405195610e71602088611927565b5f875260405196610e81886118d0565b5f88525f60208901526040880152613047565b3461030b5761010036600319011261030b57610eaf366102f9565b602081013590610ebe826103de565b6001600160a01b038216338103610fc557610fc19260e0610ee161036485611d08565b938493610eee85336131fa565b610f0e60405194610f09868535610f0481611b33565b611b6b565b6103de565b6020840152610f346040820135610f24816103de565b6001600160a01b03166040850152565b610f53610f43606083016103ef565b6001600160a01b03166060850152565b6080810135608084015260a081013560a0840152610f83610f7660c08301611b86565b63ffffffff1660c0850152565b013560e08201527f7e37598d7e8b67ec1cd215b7c2d1e7e0b6f126cc2798b173066b0f3951ed3bc06101003392a36040519081529081906020820190565b0390f35b6322b1b9cd60e11b5f5260045ffd5b906003198201610200811261030b576101001361030b57600491610104359160c06101231983011261030b57610124916101e435906001600160401b03821161030b57610492916004016103fc565b3461030b576104e561103436610fd4565b93611040939193611e45565b613251565b6003198101610160811261030b576101001361030b57600491610104356001600160401b03811161030b578261107d916004016103fc565b92909291610124359161014435906001600160401b03821161030b57610652916004016105b5565b3461030b576104e56110c86110b936611045565b61067b95919495939293611e45565b93613438565b3461030b575f36600319011261030b576040517f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b03168152602090f35b3461030b57602036600319011261030b576004355f526007602052602060ff60405f2054166040519015158152f35b3461030b57602036600319011261030b5760043561115e816103de565b611166612e07565b600380546001600160a01b0319166001600160a01b039290921691821790557fa9951ff64d6f18170636613f2e6652d59f149a892a7308f76a8698aaec63cbbe5f80a2005b3461030b57602036600319011261030b576004356001600160401b03811161030b576111db9036906004016103fc565b907f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316330361143d5761121891810190611c19565b60608181015190810151909190611237906001600160a01b0316610a3d565b6040516370a0823160e01b8152306004820152916001600160a01b03821691602084602481865afa938415610bde575f9461141c575b506040850151611285906001600160a01b0316610a3d565b6020830180516080880151919392916112a7916001600160a01b031683613608565b60e0870151806113fe575b50508251156113c95750516040906112d490610a3d906001600160a01b031681565b91015190803b1561030b576040516001621a3ce760e11b03198152915f9183918290849082906113079060048301611cd6565b03925af18015610bde576113af575b505b6040516370a0823160e01b815230600482015290602090829060249082905afa908115610bde575f91611380575b50818111156113755760a09161135b91611ce7565b915b01511161136657005b6304aecd2d60e21b5f5260045ffd5b505060a05f9161135d565b6113a2915060203d6020116113a8575b61139a8183611927565b810190611ca3565b5f611346565b503d611390565b806113bd5f6113c393611927565b8061070f565b5f611316565b906113e460406113f994015160208082518301019101611ca3565b9051909130916001600160a01b031690613649565b611318565b60015461141592906001600160a01b031690613608565b5f806112b2565b61143691945060203d6020116113a85761139a8183611927565b925f61126d565b63e8d9240560e01b5f5260045ffd5b3461030b5761145a36610c84565b61146b979297969396959495611e45565b6114758886612be0565b60808301359160e084013583018093116109d85760a086013583018093116109d8576104e5986114b29360408601356114ad816103de565b61368d565b6136d8565b3461030b576104e56114c836610741565b916114d1611e45565b604051936114e0602086611927565b5f8552604051946114f0866118d0565b5f86525f60208701526040860152613438565b3461030b57602036600319011261030b57600435611520816103de565b611528612e07565b6001600160a01b0316801561156f57600180546001600160a01b031916821790557f12e1d17016b94668449f97876f4a8d5cc2c19f314db337418894734037cc19d45f80a2005b638f4f6d3360e01b5f5260045ffd5b3461030b5761158c36610c84565b61159d979297969396959495611e45565b6115a78886612be0565b60808301359160e084013583018093116109d85760a086013583018093116109d8576104e5986110409360408601356109d3816103de565b3461030b57602036600319011261030b576004355f526008602052602060ff60405f2054166040519015158152f35b3461030b575f36600319011261030b576004546040516001600160a01b039091168152602090f35b3461030b576104e561164736610fd4565b936114b2939193611e45565b3461030b575f36600319011261030b576001546040516001600160a01b039091168152602090f35b3461030b576104e561168f6110b936611045565b936129c1565b3461030b576116a3366108c9565b6116b7999299989398979497969596611e45565b6116c18a88612be0565b60808301359160e084013583018093116109d85760a088013583018093116109d8576104e59a61083e9360408601356114ad816103de565b3461030b576104e561170a36610518565b95611719959195949294611e45565b6138a5565b3461030b5761172c366108c9565b611740999299989398979497969596611e45565b61174a8a88612be0565b60808301359160e084013583018093116109d85760a088013583018093116109d8576104e59a6117199360408601356109d3816103de565b3461030b575f36600319011261030b5760206040517ffd8d2910f3a2f56905df13cec5c26556c38404fe5081cd6f39be7a18b85a12188152f35b3590811515820361030b57565b3461030b57604036600319011261030b5760043560243580151580910361030b576117f48233613fde565b5f52600860205260405f2060ff1981541660ff83161790556040519081527f7b2d0801ca1cc329a98add2e4d0bc676494400788a76e6b50c15a77a4d02f07160203392a3005b3461030b576104e561184e610669366105c3565b95613047565b3461030b576104e56118686110b936611045565b93612630565b3461030b576104e561187f36610fd4565b93610d63939193611e45565b3461030b575f36600319011261030b575f546040516001600160a01b039091168152602090f35b35610652816103de565b634e487b7160e01b5f52604160045260245ffd5b606081019081106001600160401b038211176118eb57604052565b6118bc565b61010081019081106001600160401b038211176118eb57604052565b608081019081106001600160401b038211176118eb57604052565b90601f801991011681019081106001600160401b038211176118eb57604052565b604051906103fa608083611927565b6001600160401b0381116118eb57601f01601f191660200190565b92919261197e82611957565b9161198c6040519384611927565b82948184528183011161030b578281602093845f960137010152565b9080601f8301121561030b5781602061065293359101611972565b919060608382031261030b57604051906119dc826118d0565b81936119e7816117bc565b8352602081013560208401526040810135916001600160401b03831161030b57604092611a1492016119a8565b910152565b634e487b7160e01b5f52601160045260245ffd5b919082018092116109d857565b519061ffff8216820361030b57565b9081606091031261030b578051611a5f816103de565b9161065260406020840151611a73816103de565b9301611a3a565b60a08091803584526020810135602085015260408101356040850152606081013560608501526080810135611aae816103de565b600180841b031660808501520135910152565b908060209392818452848401375f828201840152601f01601f1916010190565b929161012092611b04611b18939796975f87525f60208801526040870190611a7a565b610140610100860152610140850191611ac1565b6001600160a01b03909416910152565b6040513d5f823e3d90fd5b6003111561030b57565b35906103fa82611b33565b634e487b7160e01b5f52602160045260245ffd5b60031115611b6657565b611b48565b906003821015611b665752565b63ffffffff81160361030b57565b35906103fa82611b78565b91908261010091031261030b57604051611baa816118f0565b60e0808294611bb881611b3d565b8452611bc6602082016103ef565b6020850152611bd7604082016103ef565b6040850152611be8606082016103ef565b60608501526080810135608085015260a081013560a0850152611c0d60c08201611b86565b60c08501520135910152565b60208183031261030b578035906001600160401b03821161030b57016101608183031261030b5760405191611c4d8361190c565b611c56826117bc565b83526020820135611c66816103de565b602084015260408201356001600160401b03811161030b5782611c9083606093611c9b96016119a8565b604086015201611b91565b606082015290565b9081602091031261030b575190565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b906020610652928181520190611cb2565b919082039182116109d857565b3561065281611b33565b3561065281611b78565b803590611d1482611b33565b6003821015611b6657611dfc6020820135611d2e816103de565b611dee604084013593611d40856103de565b606081013590611d4f826103de565b608081013560a08201359060e060c084013593611d6b85611b78565b604080517ffd8d2910f3a2f56905df13cec5c26556c38404fe5081cd6f39be7a18b85a12186020820190815260ff909d16918101919091526001600160a01b03988916606082015299881660808b01529690941660a089015260c088015260e087015263ffffffff16610100860152909101356101208401528290610140820190565b03601f198101835282611927565b51902090565b610652906005544603611e30575b6006546042916040519161190160f01b8352600283015260228201522090565b46600555611e3d46613ec1565b600655611e10565b5f5160206143345f395f51905f525c611e6b5760015f5160206143345f395f51905f525d565b633ee5aeb560e01b5f5260045ffd5b5f5f5160206143345f395f51905f525d565b6020815281511515602082015260018060a01b03602083015116604082015261016060e06060611eca60408601518483870152610180860190611cb2565b940151611edb608085018251611b6b565b60208101516001600160a01b0390811660a0868101919091526040830151821660c080880191909152606084015190921684870152608083015161010087015282015161012086015281015163ffffffff16610140850152015191015290565b6001600160a01b0391821681529181166020830152604082019290925291166060820152608081019190915260c060a0820181905261065292910190611cb2565b6001600160a01b0391821681529181166020830152604082019290925260608101929092526080820192909252911660a082015260c081019190915260e00190565b93959291949095611fce85611cf4565b611fd781611b5c565b6121b057611fe7602086016118b2565b91611ff188613a58565b611ffa86613a68565b6120049186613b18565b9160808501359260e08601359761201b8986611a2d565b9687604082019761202b896118b2565b916120369288613bd7565b6060810197612044896118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316959092906120858785613c7e565b61208e8a6118b2565b906120988c6118b2565b9260a08101359d6120a7611948565b60018152926001600160a01b038916602085015236906120c692611972565b6040830152366120d591611b91565b6060820152604051809160208201906120ed91611e8c565b03601f19810182526120ff9082611927565b873b1561030b5761212989918e5f95604051978896879663ef8dcd4b60e01b885260048801611f3b565b038183895af1978815610bde576121726121979661217d94612177947fcc26eea29ec6f7d5c4ff51f3c9b3ff6bd4b0575e7e2ab99e25b3f07613a4832f9c61219c575b50613d50565b6118b2565b976118b2565b9360018060a01b0316988998604051968796339a88611f7c565b0390a4565b806113bd5f6121aa93611927565b5f61216c565b631f05786d60e31b5f5260045ffd5b959492939591909160026121d282611cf4565b6121db81611b5c565b036121b0576121e983613a58565b6121f281613a68565b60a08701359560808201359360e083013561222f6122198a612214848a611a2d565b611a2d565b9360408601988c8661222a8c6118b2565b613db7565b6001600160a01b0381169a8b15610b9c57602086018c612251610a3d836118b2565b036123dd57506122619086613e5b565b9360608601998a612271816118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316989094906122b28a87613c7e565b6122bb8d6118b2565b926122c5906118b2565b9060a08101359b6122d4611948565b60018152956001600160a01b038b16602088015236906122f392611972565b60408601523661230291611b91565b60608501526040518094602082019061231a91611e8c565b03601f198101855261232c9085611927565b893b1561030b575f938b61235592604051978896879663120cb0bd60e21b885260048801611f3b565b0381838a5af1988915610bde578c9b61239f612197986123b1956123ab957fb4a8c723294d64215bd89bb6f8d10809a1af3373f7fea1b4b65d9455b1ab68769e61219c5750613d50565b806123c0575b506118b2565b986118b2565b94604051968796339a88611f7c565b6123d7906123d0610a3d846118b2565b3390613608565b5f6123a5565b82610b7b610b6b926118b2565b6001600160a01b03918216815291811660208301526040820192909252911660608201525f608082015260c060a0820181905261065292910190611cb2565b9091959293600161243983611cf4565b61244281611b5c565b036121b057612453602083016118b2565b9561245d84613a58565b61246683613a68565b6124709183613b18565b93606082019461247f866118b2565b6001600160a01b0316937f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b03166124bd8187613c7e565b60808501359560e08601359a6124d38c89611a2d565b958b604089019a886124e48d6118b2565b6124ed93613f5a565b6124f68a6118b2565b906125008c6118b2565b92612509611948565b60018152916001600160a01b0388166020840152369061252892611972565b6040820152612537368a611b91565b60608201526040518091602082019061254f91611e8c565b03601f19810182526125619082611927565b843b1561030b5761258a8d915f946040519a8b958695636022a48960e11b8752600487016123ea565b038183865af1948515610bde577fa9d270f97b84471fed88da0dd9e0936a7dcb3ebfc6de1b1943d58d16ce6d6be89861217260a0946125d5946123ab946121979a61219c5750613d50565b9401359760018060a01b0316988998604051968796339a88611f7c565b93909796959260c0959260e086019960018060a01b0316865260018060a01b0316602086015260408501526060840152608083015260a08201520152565b939061263b85611cf4565b61264481611b5c565b6121b057612654602086016118b2565b9261265f8587613fc9565b6126699186613b18565b60e08501359260808601359161267f8584611a2d565b9081604089019561268f876118b2565b9161269a9286613bd7565b60608801956126a8876118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316936126e68583613c7e565b6126ef886118b2565b6126f88a6118b2565b908b8d60a001359d6040518092602082019061271690602083019252565b03601f19810183526127289083611927565b612730611948565b5f81523360208201529160408301523661274991611b91565b60608201526040518091602082019061276191611e8c565b03601f19810182526127739082611927565b873b1561030b5761279d89918f5f95604051978896879663ef8dcd4b60e01b885260048801611f3b565b038183895af1978815610bde57612172612197966127e594612177947ff10165a5b14f33e30ae647cf5eb988c5ce7122a13fba12e6fb5b9586278c3d099c61219c5750613d50565b9360018060a01b0316988998604051968796339a886125f2565b959492939591909161281081611cf4565b61281981611b5c565b6121b05761282683613a58565b61282f81613a68565b60a08701359560808201359360e08301356128516122198a612214848a611a2d565b6001600160a01b0381169a8b15610b9c57602086018c612873610a3d836118b2565b036123dd57506128839086613e5b565b9360608601998a612893816118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316989094906128d48a87613c7e565b6128dd8d6118b2565b926128e7906118b2565b9060a08101359b6128f6611948565b60018152956001600160a01b038b166020880152369061291592611972565b60408601523661292491611b91565b60608501526040518094602082019061293c91611e8c565b03601f198101855261294e9085611927565b893b1561030b575f938b61297792604051978896879663ef8dcd4b60e01b885260048801611f3b565b0381838a5af1988915610bde578c9b61239f612197986123b1956123ab957fcc26eea29ec6f7d5c4ff51f3c9b3ff6bd4b0575e7e2ab99e25b3f07613a4832f9e61219c5750613d50565b939060026129ce86611cf4565b6129d781611b5c565b036121b0576129e8602086016118b2565b926129f38587613fc9565b6129fd9186613b18565b6060850192612a0b846118b2565b6001600160a01b0316917f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b031690612a4a8285613c7e565b60808801359360e089013590612a608287611a2d565b8060408c0198612a6f8a6118b2565b91612a7a9289613f5a565b612a83886118b2565b612a8c8a6118b2565b908b8d60a001359d60405180926020820190612aaa90602083019252565b03601f1981018352612abc9083611927565b612ac4611948565b5f815233602082015291604083015236612add91611b91565b606082015260405180916020820190612af591611e8c565b03601f1981018252612b079082611927565b873b1561030b57612b3189918f5f95604051978896879663120cb0bd60e21b885260048801611f3b565b038183895af1978815610bde57612172612197966127e594612177947f71674d065a34912f8c1f16e8ef1274486beba4d0349ccf209b5989ff3c3892ec9c61219c5750613d50565b519065ffffffffffff8216820361030b57565b91908260c091031261030b578151612ba3816103de565b916020810151612bb2816103de565b91612bbf60408301612b79565b91612bcc60608201612b79565b9161065260a06080840151611a7381611b78565b600454909190612bf8906001600160a01b0316610a3d565b6001600160a01b03811615610be357604051633ede941960e11b81529235600484015260c083602481845afa908115610bde57612c5d935f92612cde575b5060c0919235906040518080968194633ede941960e11b8352600483019190602083019252565b03915afa918215610bde575f92612ca8575b506001600160a01b0382811690821603612c87575050565b63618cfe1560e11b5f526001600160a01b039081166004521660245260445ffd5b612ccb91925060c03d60c011612cd7575b612cc38183611927565b810190612b8c565b5050505050905f612c6f565b503d612cb9565b60c09250612cf890833d8511612cd757612cc38183611927565b505050505091612c36565b6001600160a01b03918216815291166020820152604081019190915261065293916101409190612d37906060830190611a7a565b816101208201520191611ac1565b929390612d5183612dc5565b6003546001600160a01b0316918215612db657823b1561030b575f94612d908692604051988997889687956315c5752560e21b87523060048801612d03565b03925af18015610bde57612da15750565b80612dad5f8093611927565b80031261030b57565b63b7689b9d60e01b5f5260045ffd5b60800135612dd2816103de565b6001600160a01b03811690338203612de8575050565b612df1906103de565b63743b76f160e11b5f526004523360245260445ffd5b5f546001600160a01b03163303612e1a57565b6316a8949d60e31b5f5260045ffd5b9391939290926002612e3a82611cf4565b612e4381611b5c565b036121b057612e528482613fc9565b60a08501359360808201359160e0810135612e85612e74886122148488611a2d565b9660408401968a8961222a8a6118b2565b6001600160a01b038116989091908915610b9c57602084018a612eaa610a3d836118b2565b0361303a5750612eba9084613e5b565b916060840197612ec9896118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b031695909190612f0a8784613c7e565b612f138a6118b2565b612f1c8c6118b2565b9460a08301359560405193848c6020820190612f3a90602083019252565b03601f1981018652612f4c9086611927565b612f54611948565b5f815233602082015294604086015236612f6d91611b91565b606085015260405180946020820190612f8591611e8c565b03601f1981018552612f979085611927565b893b1561030b575f9387612fc092604051978896879663120cb0bd60e21b885260048801611f3b565b0381838a5af1988915610bde578c9b61300a61219798613015956123ab957f71674d065a34912f8c1f16e8ef1274486beba4d0349ccf209b5989ff3c3892ec9e61219c5750613d50565b8061302457506118b2565b94604051968796339a886125f2565b6123d79033613035610a3d856118b2565b613608565b83610b7b610b6b926118b2565b959291949093600261305888611cf4565b61306181611b5c565b036121b057613072602088016118b2565b9161307c86613a58565b61308588613a68565b61308f9188613b18565b93606087019461309e866118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b031692906130dd8482613c7e565b60808a01359560e08b01359a6130f38c89611a2d565b9182604083019a6131038c6118b2565b9161310e928b613f5a565b6131178a6118b2565b906131218c6118b2565b9260a08101359d613130611948565b60018152926001600160a01b0389166020850152369061314f92611972565b60408301523661315e91611b91565b60608201526040518091602082019061317691611e8c565b03601f19810182526131889082611927565b873b1561030b576131b289918e5f95604051978896879663120cb0bd60e21b885260048801611f3b565b038183895af1978815610bde576121726121979661217d94612177947fb4a8c723294d64215bd89bb6f8d10809a1af3373f7fea1b4b65d9455b1ab68769c61219c5750613d50565b6132048282613fde565b5f52600860205260405f20600160ff198254161790557f7b2d0801ca1cc329a98add2e4d0bc676494400788a76e6b50c15a77a4d02f0716020604051926001845260018060a01b031692a3565b909193600161325f83611cf4565b61326881611b5c565b036121b0576132778383613fc9565b60a08501359160808101359160e0820135946132ab61329a866122148988611a2d565b9260408501988a8561222a8c6118b2565b6001600160a01b038116989096908915610b9c57602085018a6132d0610a3d836118b2565b0361342b57506132e09085613e5b565b9160608501976132f2610a3d8a6118b2565b7f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316916133909061332b8484613c7e565b6133348d6118b2565b9061333e8d6118b2565b61339e60405161335a81611dee8b602083019190602083019252565b613362611948565b5f8152336020820152905b604082015261337c368e611b91565b606082015260405195869160208301611e8c565b03601f198101865285611927565b853b1561030b575f936133c6916040519b8c958695636022a48960e11b8752600487016123ea565b038183865af1958615610bde578c9b7f22f41c76561b0c426efdb1355e73725b3c1b63ae56d743cdafa06b3572b659719a61300a60a09561341995613413956121979c61219c5750613d50565b996118b2565b95013590604051968796339a886125f2565b88610b7b610b6b926118b2565b919390600161344684611cf4565b61344f81611b5c565b036121b057613460602084016118b2565b9461346b8585613fc9565b6134759184613b18565b6060830192613483846118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316926134c18483613c7e565b60808301359360e0840135906134d78287611a2d565b938a6040870198866134e88b6118b2565b6134f193613f5a565b6134fa886118b2565b6135038a6118b2565b90604051808d602082019061351a90602083019252565b03601f198101825261352c9082611927565b613534611948565b5f815233602082015290604082015261354d368a611b91565b60608201526040518091602082019061356591611e8c565b03601f19810182526135779082611927565b843b1561030b576135a08e915f946040519a8b958695636022a48960e11b8752600487016123ea565b038183865af1948515610bde577f22f41c76561b0c426efdb1355e73725b3c1b63ae56d743cdafa06b3572b659719861217260a0946135eb946123ab946121979a61219c5750613d50565b9401359860018060a01b0316988998604051968796339a886125f2565b60405163a9059cbb60e01b60208201526001600160a01b039290921660248301526044808301939093529181526103fa91613644606483611927565b614011565b6040516323b872dd60e01b60208201526001600160a01b0392831660248201529290911660448301526064808301939093529181526103fa91613644608483611927565b92939061369983612dc5565b6003546001600160a01b0316918215612db657823b1561030b575f94612d908692604051988997889687956306f7f5dd60e21b87523060048801612d03565b9391939290926136e781611cf4565b6136f081611b5c565b6121b0576136fe8482613fc9565b60a08501359360808201359160e0810135613720612e74886122148488611a2d565b6001600160a01b038116989091908915610b9c57602084018a613745610a3d836118b2565b0361303a57506137559084613e5b565b916060840197613764896118b2565b6001600160a01b03167f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b200556001600160a01b0316959091906137a58784613c7e565b6137ae8a6118b2565b6137b78c6118b2565b9460a08301359560405193848c60208201906137d590602083019252565b03601f19810186526137e79086611927565b6137ef611948565b5f81523360208201529460408601523661380891611b91565b60608501526040518094602082019061382091611e8c565b03601f19810185526138329085611927565b893b1561030b575f938761385b92604051978896879663ef8dcd4b60e01b885260048801611f3b565b0381838a5af1988915610bde578c9b61300a61219798613015956123ab957ff10165a5b14f33e30ae647cf5eb988c5ce7122a13fba12e6fb5b9586278c3d099e61219c5750613d50565b90929395919460016138b683611cf4565b6138bf81611b5c565b036121b05761222a956138d185613a58565b6138da83613a68565b60a08801359460808401359461390b60e0860135916138fd89612214858b611a2d565b958c8760408a019d8e6118b2565b6001600160a01b0381169a9098908b15610b9c57602087018c613930610a3d836118b2565b03613a4b5750906133906139458c9389613e5b565b95606089019b8c916139c561395c610a3d856118b2565b9561336d6139a061399a60018060a01b037f000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b20055169a6121728c8c613c7e565b966118b2565b936139a9611948565b60018152926001600160a01b038d1660208501525b3691611972565b853b1561030b575f936139ed916040519b8c958695636022a48960e11b8752600487016123ea565b038183865af1958615610bde578c9b7fa9d270f97b84471fed88da0dd9e0936a7dcb3ebfc6de1b1943d58d16ce6d6be89a61239f60a095613a3a95613413956121979c61219c5750613d50565b950135604051968796339a88611f7c565b8a610b7b610b6b926118b2565b6001600160a01b031615610b9c57565b613a80613a7760c08301611cfe565b63ffffffff1690565b4211613b09576080810135158015613afd575b613aee57613aa3604082016118b2565b613ab2610a3d606084016118b2565b6001600160a01b0390911614613adf576001600160a01b0390613ad7906020016118b2565b1615610b9c57565b63a17ac8eb60e01b5f5260045ffd5b6323ee846560e21b5f5260045ffd5b5060a081013515613a93565b630f34ff8560e41b5f5260045ffd5b909291613b2761036483611d08565b93845f52600760205260ff60405f205416613b8657613b5385916020613b59950135936139be856103de565b916140b9565b15613b7757815f52600760205260405f20600160ff19825416179055565b630facae2b60e11b5f5260045ffd5b63321ec40b60e11b5f5260045ffd5b6001600160a01b039182168152918116602083015290911660408201526060810191909152608081019190915260c060a0820181905261065292910190611cb2565b9190613bea613be68551151590565b1590565b613c7857600254613c03906001600160a01b0316610a3d565b906001600160a01b03821615613c695760406020860151950151823b1561030b575f94613c4a869260405198899788968795636b4fa25b60e11b8752309060048801613b95565b03925af18015610bde57613c5b5750565b806113bd5f6103fa93611927565b630ce2637160e41b5f5260045ffd5b50505050565b60405163095ea7b360e01b60208083019182526001600160a01b03851660248401525f196044840152919291905f90613cc485606481015b03601f198101875286611927565b84519082855af15f51903d81613d24575b501590505b613ce357505050565b60405163095ea7b360e01b60208201526001600160a01b0390931660248401525f60448401526103fa9261364490613d1e8160648101611dee565b82614011565b15159050613d445750613cda6001600160a01b0382163b15155b5f613cd5565b6001613cda9114613d3e565b60405163095ea7b360e01b60208083019182526001600160a01b03851660248401525f604484018190529293929091613cc48560648101613cb6565b9490611b18936101209593611b049299989960018060a01b0316885260208801526040870190611a7a565b600454929594939192613dd2906001600160a01b0316610a3d565b6001600160a01b03811615610be357613e13945f606094613df28a612dc5565b6040519788958694859363033972db60e61b85528d8b339460048801613d8c565b03925af18015610bde576103fa925f905f92613e36575b509460a0013591614196565b60a09250613e53915060603d606011610bd757610bc68183611927565b929050613e2a565b613e66602091611d08565b910135818103613eab5750613e7a90611e02565b90815f52600760205260ff60405f205416613b8657815f5260076020526103fa60405f20600160ff19825416179055565b906324d8403760e11b5f5260045260245260445ffd5b604090601160208351613ed48582611927565b82815201704c65766572616765526671456e67696e6560781b81522090600160208451613f018682611927565b82815201603160f81b81522083519260208401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8652840152606083015260808201523060a082015260a08152611dfc60c082611927565b9190613f69613be68551151590565b613c7857600254613f82906001600160a01b0316610a3d565b906001600160a01b03821615613c695760406020860151950151823b1561030b575f94613c4a86926040519889978896879563a74a81fd60e01b8752309060048801613b95565b60a090613fd581613a68565b01351161136657565b906040519060208201926bffffffffffffffffffffffff199060601b168352603482015260348152611dfc605482611927565b905f602091828151910182855af115611b28575f513d61406057506001600160a01b0381163b155b6140405750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b60011415614039565b60041115611b6657565b604090610652939281528160208201520190611cb2565b3d156140b4573d9061409b82611957565b916140a96040519384611927565b82523d5f602084013e565b606090565b9190916140da610afa6140cc8584613fde565b5f52600860205260405f2090565b614178576140e882846141f9565b506140f281614069565b159081614180575b5061417857803b15614171575f92611dee61412e85946040519283916020830195630b135d3f60e11b875260248401614073565b51915afa61413a61408a565b90158015614166575b61416157602001516001600160e01b031916630b135d3f60e11b1490565b505f90565b506004815110614143565b5050505f90565b505050600190565b6001600160a01b0383811691161490505f6140fa565b919081156141f457828210156141e5578183039283116109d85761ffff61271091166141c281856142b5565b9309151582018092116109d857116141d657565b630e34194b60e01b5f5260045ffd5b633763711f60e01b5f5260045ffd5b505050565b8151919060418303614229576142229250602082015190606060408401519301515f1a90614233565b9192909190565b50505f9160029190565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116142aa579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa15610bde575f516001600160a01b038116156142a057905f905f90565b505f906001905f90565b5050505f9160039190565b5f1982820990828102918280821091030390811561431857816127101115614311577fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e9193612710910990828211900360fc1b910360041c170290565b6011614323565b506127109250500490565b634e487b715f526020526024601cfdfe9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b2005500000000000000000000000044820497f8fe95a258a9522f0de2c04ab2bc3da30000000000000000000000001118e1c057211306a40a4d7006c040dbfe1370cb
-----Decoded View---------------
Arg [0] : pm_ (address): 0xbe4050a73a7Fb384c65E885a15C33461A4B20055
Arg [1] : admin_ (address): 0x44820497f8FE95A258A9522f0De2c04ab2bC3da3
Arg [2] : feeCollector_ (address): 0x1118e1c057211306a40A4d7006C040dbfE1370Cb
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000be4050a73a7fb384c65e885a15c33461a4b20055
Arg [1] : 00000000000000000000000044820497f8fe95a258a9522f0de2c04ab2bc3da3
Arg [2] : 0000000000000000000000001118e1c057211306a40a4d7006c040dbfe1370cb
🤖 Code Reader
Generate instant answers for your smart contract questions using AI Models. Read more.
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 30 Chains
Tokens
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.


