Source Code
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH | ||||
| 107558217 | 1174 days ago | 0 ETH |
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":"contract ERC20","name":"asset_","type":"address"},{"internalType":"contract Auditor","name":"auditor_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"Disagreement","type":"error"},{"inputs":[],"name":"InsufficientProtocolLiquidity","type":"error"},{"inputs":[],"name":"MaturityOverflow","type":"error"},{"inputs":[],"name":"NotAuditor","type":"error"},{"inputs":[],"name":"SelfLiquidation","type":"error"},{"inputs":[{"internalType":"uint8","name":"state","type":"uint8"},{"internalType":"uint8","name":"requiredState","type":"uint8"}],"name":"UnmatchedPoolState","type":"error"},{"inputs":[{"internalType":"uint8","name":"state","type":"uint8"},{"internalType":"uint8","name":"requiredState","type":"uint8"},{"internalType":"uint8","name":"alternativeState","type":"uint8"}],"name":"UnmatchedPoolStates","type":"error"},{"inputs":[],"name":"ZeroBorrow","type":"error"},{"inputs":[],"name":"ZeroDeposit","type":"error"},{"inputs":[],"name":"ZeroRepay","type":"error"},{"inputs":[],"name":"ZeroWithdraw","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"AccumulatorAccrual","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"backupFeeRate","type":"uint256"}],"name":"BackupFeeRateSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Borrow","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"maturity","type":"uint256"},{"indexed":false,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"BorrowAtMaturity","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"dampSpeedUp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"dampSpeedDown","type":"uint256"}],"name":"DampSpeedSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"maturity","type":"uint256"},{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"DepositAtMaturity","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"earningsAccumulatorSmoothFactor","type":"uint256"}],"name":"EarningsAccumulatorSmoothFactorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"maturity","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"unassignedEarnings","type":"uint256"}],"name":"FixedEarningsUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"utilization","type":"uint256"}],"name":"FloatingDebtUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint8","name":"version","type":"uint8"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"contract InterestRateModel","name":"interestRateModel","type":"address"}],"name":"InterestRateModelSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"lendersAssets","type":"uint256"},{"indexed":true,"internalType":"contract Market","name":"seizeMarket","type":"address"},{"indexed":false,"internalType":"uint256","name":"seizedAssets","type":"uint256"}],"name":"Liquidate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"floatingDepositShares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"floatingAssets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"floatingBorrowShares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"floatingDebt","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"earningsAccumulator","type":"uint256"}],"name":"MarketUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"maxFuturePools","type":"uint256"}],"name":"MaxFuturePoolsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"penaltyRate","type":"uint256"}],"name":"PenaltyRateSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Repay","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"maturity","type":"uint256"},{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"positionAssets","type":"uint256"}],"name":"RepayAtMaturity","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"reserveFactor","type":"uint256"}],"name":"ReserveFactorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"contract RewardsController","name":"rewardsController","type":"address"}],"name":"RewardsControllerSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"liquidator","type":"address"},{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"}],"name":"Seize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"}],"name":"SpreadBadDebt","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"treasury","type":"address"},{"indexed":false,"internalType":"uint256","name":"treasuryFeeRate","type":"uint256"}],"name":"TreasurySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Withdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"maturity","type":"uint256"},{"indexed":false,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"positionAssets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"}],"name":"WithdrawAtMaturity","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"accountSnapshot","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"accounts","outputs":[{"internalType":"uint256","name":"fixedDeposits","type":"uint256"},{"internalType":"uint256","name":"fixedBorrows","type":"uint256"},{"internalType":"uint256","name":"floatingBorrowShares","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"asset","outputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"auditor","outputs":[{"internalType":"contract Auditor","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"backupFeeRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"borrower","type":"address"}],"name":"borrow","outputs":[{"internalType":"uint256","name":"borrowShares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maturity","type":"uint256"},{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"uint256","name":"maxAssets","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"borrower","type":"address"}],"name":"borrowAtMaturity","outputs":[{"internalType":"uint256","name":"assetsOwed","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"borrower","type":"address"}],"name":"clearBadDebt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"convertToAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"convertToShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dampSpeedDown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dampSpeedUp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maturity","type":"uint256"},{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"uint256","name":"minAssetsRequired","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"}],"name":"depositAtMaturity","outputs":[{"internalType":"uint256","name":"positionAssets","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"earningsAccumulator","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"earningsAccumulatorSmoothFactor","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"fixedBorrowPositions","outputs":[{"internalType":"uint256","name":"principal","type":"uint256"},{"internalType":"uint256","name":"fee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"fixedDepositPositions","outputs":[{"internalType":"uint256","name":"principal","type":"uint256"},{"internalType":"uint256","name":"fee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"maturity","type":"uint256"}],"name":"fixedPoolBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"maturity","type":"uint256"}],"name":"fixedPoolBorrowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"fixedPools","outputs":[{"internalType":"uint256","name":"borrowed","type":"uint256"},{"internalType":"uint256","name":"supplied","type":"uint256"},{"internalType":"uint256","name":"unassignedEarnings","type":"uint256"},{"internalType":"uint256","name":"lastAccrual","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"floatingAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"floatingAssetsAverage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"floatingBackupBorrowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"floatingDebt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"maxFuturePools_","type":"uint8"},{"internalType":"uint128","name":"earningsAccumulatorSmoothFactor_","type":"uint128"},{"internalType":"contract InterestRateModel","name":"interestRateModel_","type":"address"},{"internalType":"uint256","name":"penaltyRate_","type":"uint256"},{"internalType":"uint256","name":"backupFeeRate_","type":"uint256"},{"internalType":"uint128","name":"reserveFactor_","type":"uint128"},{"internalType":"uint256","name":"dampSpeedUp_","type":"uint256"},{"internalType":"uint256","name":"dampSpeedDown_","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"interestRateModel","outputs":[{"internalType":"contract InterestRateModel","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastAccumulatorAccrual","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastAverageUpdate","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastFloatingDebtUpdate","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"borrower","type":"address"},{"internalType":"uint256","name":"maxAssets","type":"uint256"},{"internalType":"contract Market","name":"seizeMarket","type":"address"}],"name":"liquidate","outputs":[{"internalType":"uint256","name":"repaidAssets","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"maxDeposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxFuturePools","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"maxMint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"maxRedeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"maxWithdraw","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"}],"name":"mint","outputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"penaltyRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewBorrow","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"borrower","type":"address"}],"name":"previewDebt","outputs":[{"internalType":"uint256","name":"debt","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewDeposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"previewFloatingAssetsAverage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"previewMint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"previewRedeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"previewRefund","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewRepay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewWithdraw","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"redeem","outputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"borrowShares","type":"uint256"},{"internalType":"address","name":"borrower","type":"address"}],"name":"refund","outputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"uint256","name":"actualShares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"address","name":"borrower","type":"address"}],"name":"repay","outputs":[{"internalType":"uint256","name":"actualRepay","type":"uint256"},{"internalType":"uint256","name":"borrowShares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maturity","type":"uint256"},{"internalType":"uint256","name":"positionAssets","type":"uint256"},{"internalType":"uint256","name":"maxAssets","type":"uint256"},{"internalType":"address","name":"borrower","type":"address"}],"name":"repayAtMaturity","outputs":[{"internalType":"uint256","name":"actualRepayAssets","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reserveFactor","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardsController","outputs":[{"internalType":"contract RewardsController","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"liquidator","type":"address"},{"internalType":"address","name":"borrower","type":"address"},{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"seize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"backupFeeRate_","type":"uint256"}],"name":"setBackupFeeRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"up","type":"uint256"},{"internalType":"uint256","name":"down","type":"uint256"}],"name":"setDampSpeed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint128","name":"earningsAccumulatorSmoothFactor_","type":"uint128"}],"name":"setEarningsAccumulatorSmoothFactor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract InterestRateModel","name":"interestRateModel_","type":"address"}],"name":"setInterestRateModel","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"futurePools","type":"uint8"}],"name":"setMaxFuturePools","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"penaltyRate_","type":"uint256"}],"name":"setPenaltyRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint128","name":"reserveFactor_","type":"uint128"}],"name":"setReserveFactor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract RewardsController","name":"rewardsController_","type":"address"}],"name":"setRewardsController","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"treasury_","type":"address"},{"internalType":"uint256","name":"treasuryFeeRate_","type":"uint256"}],"name":"setTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFloatingBorrowAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFloatingBorrowShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasury","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryFeeRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"withdraw","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maturity","type":"uint256"},{"internalType":"uint256","name":"positionAssets","type":"uint256"},{"internalType":"uint256","name":"minAssetsRequired","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"withdrawAtMaturity","outputs":[{"internalType":"uint256","name":"assetsDiscounted","type":"uint256"}],"stateMutability":"nonpayable","type":"function"}]Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061050f5760003560e01c80636eb9ffeb116102a4578063b3d7f6b911610172578063d547741f116100d9578063e94b3c2111610092578063e94b3c2114610cd0578063eee8c9e014610cd9578063ef8b30f714610ce1578063f3fdb15a14610cf4578063fb0fc4c314610d07578063fea45d9414610d1e57600080fd5b8063d547741f14610c26578063d6b7494f14610c39578063d905777e14610c42578063dd62ed3e14610c6b578063e00b262514610c96578063e63ab1e914610ca957600080fd5b8063c6e6f5921161012b578063c6e6f59214610b76578063ccfd8b1114610b89578063ce96cb7714610bbb578063d2681a0b14610bce578063d505accf14610c00578063d516418414610c1357600080fd5b8063b3d7f6b914610b17578063b460af9414610b2a578063ba08765214610b3d578063bee36bb314610b50578063bf722ca214610b63578063c63d75b6146107e457600080fd5b8063926bb63311610216578063a1bab447116101cf578063a1bab44714610aba578063a1e8f02b14610acd578063a217fddf14610ad6578063a9059cbb14610ade578063acb7081514610af1578063b2a02ff114610b0457600080fd5b8063926bb63314610a5157806394bf804d14610a6457806395d89b4114610a775780639f73066e14610a7f578063a05a091a14610a92578063a16a885014610aa557600080fd5b80638456cb59116102685780638456cb5914610a085780638a1baa4614610a105780638bcd401614610a195780638c3cba5a14610a2c5780638d0e5f0214610a3557806391d1485414610a3e57600080fd5b80636eb9ffeb1461097657806370a08231146109a257806378007e23146109c25780637ad226dc146109d55780637ecebe00146109e857600080fd5b8063313ce567116103e15780634322b714116103535780635cc2ef831161030c5780635cc2ef83146108d75780635e5c06e2146108ea57806361d027b31461093457806366601032146109475780636bb65f53146109505780636e553f651461096357600080fd5b80634322b7141461080c57806347dffde01461083e5780634914c008146108515780634cdad506146108645780634e7c5059146108775780635c975abb146108cc57600080fd5b80633aa18d6f116103a55780633aa18d6f146107995780633c6f317f146107a25780633ec045a6146107b55780633f4ba83a146107dc578063402d267d146107e457806342da42bf146107f957600080fd5b8063313ce5671461070557806334f7d1f21461072c5780633644e5151461073f57806336568abe1461074757806338d52e0f1461075a57600080fd5b80630f2b75aa11610485578063248a9ca31161043e578063248a9ca31461068057806325fc07a9146106a357806328acf2cf146106c35780632c5dcc77146106d65780632e0af008146106e95780632f2ff15d146106f257600080fd5b80630f2b75aa1461062d57806318160ddd146106355780631a5b9e621461063e5780631a90f186146106515780631d43b30b1461065a57806323b872dd1461066d57600080fd5b806306fdde03116104d757806306fdde031461059857806307a2d13a146105ad578063095ea7b3146105c05780630a28a477146105d35780630ab69be8146105e65780630e52dbec1461060e57600080fd5b8063014a296f1461051457806301e1d1141461054157806301ffc9a714610557578063022d8af51461057a5780630539fa8c1461058f575b600080fd5b610527610522366004615566565b610d31565b604080519283526020830191909152015b60405180910390f35b610549610d67565b604051908152602001610538565b61056a610565366004615583565b610e16565b6040519015158152602001610538565b61058d6105883660046155c9565b610e4d565b005b61054960d85481565b6105a0610ede565b6040516105389190615608565b6105496105bb36600461563b565b610f6c565b61056a6105ce366004615654565b610f99565b6105496105e136600461563b565b611005565b6105276105f436600461563b565b600090815260d16020526040902080546001909101549091565b60da5461061b9060ff1681565b60405160ff9091168152602001610538565b610549611025565b61054960cb5481565b61054961064c366004615680565b6110cc565b61054960d45481565b610549610668366004615566565b611591565b61056a61067b3660046156d6565b611693565b61054961068e36600461563b565b60009081526065602052604090206001015490565b6105496106b136600461563b565b600090815260d1602052604090205490565b61058d6106d1366004615728565b6117fb565b61058d6106e4366004615654565b611848565b61054960dd5481565b61058d610700366004615743565b6118b9565b61061b7f000000000000000000000000000000000000000000000000000000000000000681565b61054961073a366004615773565b6118e3565b610549611b49565b61058d610755366004615743565b611ba4565b6107817f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c3160781565b6040516001600160a01b039091168152602001610538565b61054960d95481565b6105496107b0366004615773565b611bc7565b6107817f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e81565b61058d611c3b565b6105496107f2366004615566565b5060001990565b61058d61080736600461563b565b611c70565b60dc5461082690600160801b90046001600160801b031681565b6040516001600160801b039091168152602001610538565b61054961084c36600461563b565b611cb0565b61054961085f3660046157b4565b611ccf565b61054961087236600461563b565b6121c4565b6108ac61088536600461563b565b60d16020526000908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610538565b60975460ff1661056a565b61058d6108e53660046157f6565b6121cf565b6109196108f8366004615566565b60d26020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610538565b60e154610781906001600160a01b031681565b61054960e25481565b60e354610781906001600160a01b031681565b610549610971366004615743565b61222a565b60da5461098d90600160281b900463ffffffff1681565b60405163ffffffff9091168152602001610538565b6105496109b0366004615566565b60cc6020526000908152604090205481565b6105496109d036600461563b565b6122d3565b6105276109e3366004615743565b6122eb565b6105496109f6366004615566565b60ce6020526000908152604090205481565b61058d612349565b61054960d55481565b61058d610a27366004615566565b61237b565b61054960d35481565b61054960df5481565b61056a610a4c366004615743565b6123fd565b61058d610a5f366004615566565b612428565b610549610a72366004615743565b61271d565b6105a06127b9565b61058d610a8d366004615818565b6127c6565b610549610aa0366004615680565b612a0c565b60da5461098d90610100900463ffffffff1681565b61058d610ac836600461563b565b612df1565b61054960d75481565b610549600081565b61056a610aec366004615654565b612e31565b610527610aff366004615743565b612f8d565b61058d610b123660046156d6565b612faa565b610549610b2536600461563b565b612fbe565b610549610b38366004615895565b612fd5565b610549610b4b366004615895565b6130e4565b61058d610b5e366004615566565b6131e8565b610549610b7136600461563b565b61323e565b610549610b8436600461563b565b61325e565b610527610b97366004615743565b60cf6020908152600092835260408084209091529082529020805460019091015482565b610549610bc9366004615566565b613276565b610527610bdc366004615743565b60d06020908152600092835260408084209091529082529020805460019091015482565b61058d610c0e3660046158cc565b613298565b610549610c21366004615895565b613465565b61058d610c34366004615743565b6136c4565b61054960d65481565b610549610c50366004615566565b6001600160a01b0316600090815260cc602052604090205490565b610549610c7936600461593a565b60cd60209081526000928352604080842090915290825290205481565b61058d610ca43660046155c9565b6136e9565b6105497f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b61054960de5481565b610549613742565b610549610cef36600461563b565b61380f565b60db54610781906001600160a01b031681565b60da5461098d90600160481b900463ffffffff1681565b60dc54610826906001600160801b031681565b6001600160a01b038116600090815260cc60205260408120548190610d5590610f6c565b610d5e84611591565b91509150915091565b60da5460009060ff16816224ea004281810690039083028101815b818111610ddb57600081815260d160205260409020600381015480831115610dcf57824210610db5578160020154610dca565b6002820154610dca904283900383860361381a565b860195505b50506224ea0001610d82565b50610dfe60e254670de0b6b3a76400000360d454610df7613742565b0390613839565b610e0661384e565b8460dd5401010194505050505090565b60006001600160e01b03198216637965db0b60e01b1480610e4757506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000610e58816138c7565b610e606138d1565b60dd6000828254610e719190615994565b90915550610e7f905061394c565b60dc80546fffffffffffffffffffffffffffffffff19166001600160801b0384169081179091556040519081527f5499a947330efc8c6d458d51fd04d56d7e44dc1469558b2300e359963cef317e906020015b60405180910390a15050565b60c98054610eeb906159a7565b80601f0160208091040260200160405190810160405280929190818152602001828054610f17906159a7565b8015610f645780601f10610f3957610100808354040283529160200191610f64565b820191906000526020600020905b815481529060010190602001808311610f4757829003601f168201915b505050505081565b60cb546000908015610f9057610f8b610f83610d67565b84908361381a565b610f92565b825b9392505050565b33600081815260cd602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590610ff49086815260200190565b60405180910390a350600192915050565b60cb546000908015610f9057610f8b8161101d610d67565b8591906139b2565b60dd5460de54600091908281831061103f5760d854611043565b60d9545b60da5490915060009061107f9061106790600160481b900463ffffffff16426159e1565b61107190846159f4565b61107a90615a0b565b6139e0565b61109190670de0b6b3a7640000615a27565b905061109d8185613839565b6110b96110b283670de0b6b3a76400006159e1565b8590613839565b6110c39190615994565b94505050505090565b60006110d6613b57565b846000036110f75760405163774257f760e01b815260040160405180910390fd5b60da5461110c90879060ff1660036000613b69565b600086815260d160205260408120906111258289613d05565b60db54835460018501549293506000926111d6926001600160a01b03169163df635f3d918d918d91611155611025565b6040516001600160e01b031960e088901b1681526004810195909552602485019390935260448401919091526064830152608482015260a401602060405180830381865afa1580156111ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cf9190615a47565b8990613839565b90506111e28189615994565b93508684111561120557604051632c1b6b4160e21b815260040160405180910390fd5b60e3546001600160a01b0316801561127357604051636c912dad60e01b81526001600160a01b038781166004830152821690636c912dad90602401600060405180830381600087803b15801561125a57600080fd5b505af115801561126e573d6000803e3d6000fd5b505050505b61127d8686613d86565b6000611289858b613dff565b9050801561131d5760008160d3546112a19190615994565b90506112b36112ae613e3c565b613f2f565b60dc546112ee906112dc90600160801b90046001600160801b0316670de0b6b3a7640000615a60565b60dd54906001600160801b0316613839565b60d4546112fb9083615994565b111561131957604051622d41ad60e31b815260040160405180910390fd5b60d3555b5060008a815260d0602090815260408083206001600160a01b038a16845290915281208054909103611377576001600160a01b038716600090815260d2602052604090206001810154611370908d613f6d565b6001909101555b6000806113bb6113868661405c565b604080516080810182528a54815260018b0154602082015260028b01549181019190915260038a01546060820152908e614089565b909250905081156113e057818760020160008282546113da9190615994565b90915550505b6113e9816140d7565b60405180604001604052808d85600001546114049190615994565b81526020018685600101546114199190615994565b905260008e815260d0602090815260408083206001600160a01b038e168452825282208351815592015160019092019190915560dd8054889550909350909150611464908490615994565b909155505060408051338152602081018b90529081018390526001600160a01b0380881691908916908c907f66866b472f27d55d69496091bbd651907b2fb1041b3eeaca6e565ae5b5af40139060600160405180910390a46114c461394c565b6114cd8a614105565b604051637b9d893160e01b81523060048201526001600160a01b0387811660248301527f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e1690637b9d893190604401600060405180830381600087803b15801561153657600080fd5b505af115801561154a573d6000803e3d6000fd5b506115849250506001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c31607169050888b614154565b5050505095945050505050565b6001600160a01b038116600090815260d260209081526040822060d6546001820154919290919081901c9063ffffffff165b811561166857600182161561164d57600081815260d0602090815260408083206001600160a01b038a1684529091528120600181015481549192916116089190615994565b90506116148188615994565b96508242111561164a5761163d8561162c85426159e1565b61163691906159f4565b8290613839565b6116479088615994565b96505b50505b60019190911c906116616224ea0082615994565b90506115c3565b600284015480156116895761167c81611cb0565b6116869087615994565b95505b5050505050919050565b60007f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e6001600160a01b031663a3883db530866116cf866121c4565b6040518463ffffffff1660e01b81526004016116ed93929190615a80565b60006040518083038186803b15801561170557600080fd5b505afa158015611719573d6000803e3d6000fd5b505060e3546001600160a01b031691505080156117e757604051630149e46f60e01b81526001600160a01b038681166004830152821690630149e46f90602401600060405180830381600087803b15801561177357600080fd5b505af1158015611787573d6000803e3d6000fd5b5050604051630149e46f60e01b81526001600160a01b03878116600483015284169250630149e46f9150602401600060405180830381600087803b1580156117ce57600080fd5b505af11580156117e2573d6000803e3d6000fd5b505050505b6117f28585856141a3565b95945050505050565b6000611806816138c7565b60da805460ff191660ff84169081179091556040519081527f23c0170203096819aed8a13739fe91ce445ec92a7e2aa228081b5e45ee582c8090602001610ed2565b6000611853816138c7565b61185e6112ae613e3c565b60e180546001600160a01b0319166001600160a01b03851690811790915560e28390556040518381527fd471a80a3a5fd21dfce2b1b7c88bbea4684ab90254a4e47345ac344d566788729060200160405180910390a2505050565b6000828152606560205260409020600101546118d4816138c7565b6118de8383614283565b505050565b60006118ed613b57565b8360000361190e576040516356316e8760e01b815260040160405180910390fd5b60da5461192390869060ff1660036000613b69565b600085815260d1602052604081209061193c8288613d05565b60d75460408051608081018252855481526001860154602082015260028601549181019190915260038501546060820152919250600091829161198191908a90614309565b90925090506119908289615994565b9450868510156119b357604051632c1b6b4160e21b815260040160405180910390fd5b6119bd848961435c565b60d360008282546119ce91906159e1565b909155506119de90508183615994565b8460020160008282546119f191906159e1565b925050819055508060d56000828254611a0a9190615994565b9091555050600089815260cf602090815260408083206001600160a01b038a16845290915281208054909103611a61576001600160a01b038716600090815260d2602052604090208054611a5e908c613f6d565b90555b88816000016000828254611a759190615994565b9250508190555082816001016000828254611a909190615994565b925050819055508360dd6000828254611aa99190615994565b9091555050604080518a8152602081018590526001600160a01b0389169133918d917fd9900507c64720c1a5e11858a42769b599616268b832495aa6afe8b9dc566e76910160405180910390a4611afe61394c565b611b078a614105565b611b3c6001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071633308c61438d565b5050505050949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000a4614611b7f57611b7a6143da565b905090565b507fa761a7afcb586f0de06c2b5df0ced945fcd151ac88a9d3403c0b91ae3dd96d6390565b6001600160a01b0381163314611bb957600080fd5b611bc38282614474565b5050565b6000611bd1613b57565b60da54611be690869060ff1660036002613b69565b611bf48585858560016144db565b9050611bfe61394c565b611c336001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071633308461438d565b949350505050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a611c65816138c7565b611c6d614851565b50565b6000611c7b816138c7565b60d78290556040518281527f08b437f29bc93f50025290193a680338033c3fccb93cf0ef95788eba3f003e2690602001610ed2565b60df546000908015610f9057610f8b611cc7613742565b8490836139b2565b6000611cd9613b57565b6001600160a01b0384163303611d02576040516344511af160e01b815260040160405180910390fd5b60405163042dcf6b60e31b81523060048201526001600160a01b0383811660248301528581166044830152606482018590527f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e169063216e7b5890608401602060405180830381865afa158015611d7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611da19190615a47565b925082600003611dc45760405163685e923560e01b815260040160405180910390fd5b6001600160a01b038416600090815260d2602090815260409091206001810154909181901c9063ffffffff165b8115801590611dff57508515155b15611f13576001821615611ef857600081421015611e3857611e258288898b60006144db565b9050611e3181886159e1565b9650611eea565b600082815260d0602090815260408083206001600160a01b038c168452909152812060018101548154611e6b9190615994565b9150506000611e9360d6548542611e8291906159e1565b611e8c91906159f4565b8390613839565b611e9d9083615994565b9050888111611eac5788611eb7565b611eb789838361381a565b925082600003611eca5760009850611ee7565b611ed884848b8d60006144db565b9250611ee4838a6159e1565b98505b50505b611ef48186615994565b9450505b60019190911c90611f0c6224ea0082615994565b9050611df1565b5050600084118015611f29575060008160020154115b15611f60576000611f398561323e565b90508015611f5e576000611f4d828861489e565b509050611f5a8185615994565b9350505b505b604051636e1b003160e01b81523060048201526001600160a01b03848116602483015286811660448301526064820184905260009182917f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e1690636e1b0031906084016040805180830381865afa158015611fdf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120039190615aa4565b915091508160d560008282546120199190615994565b9091555050306001600160a01b0386160361203f5761203a30338984614a02565b6120a9565b60405163b2a02ff160e01b81526001600160a01b0386169063b2a02ff19061206f9033908b908690600401615a80565b600060405180830381600087803b15801561208957600080fd5b505af115801561209d573d6000803e3d6000fd5b505050506120a961394c565b60408051858152602081018490529081018290526001600160a01b03808716919089169033907f67bb48f97d82192848c24158abf58ec614777328e19655e0a219652b773fd1db9060600160405180910390a46040516311fd52e160e01b81526001600160a01b0388811660048301527f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e16906311fd52e190602401600060405180830381600087803b15801561215f57600080fd5b505af1158015612173573d6000803e3d6000fd5b505050506121ba333084876121889190615994565b6001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071692919061438d565b5050509392505050565b6000610e4782610f6c565b60006121da816138c7565b6121e2614c06565b60d883905560d982905560408051848152602081018490527fd09fee08a2915f9ac9a77197b21a3e275d34ec9542f569eb15b95ce8f7fe2808910160405180910390a1505050565b60006122358361380f565b90508060000361224457600080fd5b6122796001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071633308661438d565b6122838282614c31565b60408051848152602081018390526001600160a01b0384169133917fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7910160405180910390a3610e478382614ca9565b60df546000908015610f9057610f8b8161101d613742565b6000806122f6613b57565b612300848461489e565b909250905061230d61394c565b6123426001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071633308561438d565b9250929050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a612373816138c7565b611c6d614d03565b6000612386816138c7565b60db546001600160a01b0316156123a2576123a26112ae613e3c565b60db80546001600160a01b0319166001600160a01b0384161790556123c561394c565b6040516001600160a01b038316907f7902cd1307c545e3f5782172612372bf997a93698917ced12b2f83d86e347d0c90600090a25050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b336001600160a01b037f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e1614612471576040516317568c8f60e21b815260040160405180910390fd5b6124796138d1565b60dd600082825461248a9190615994565b90915550506001600160a01b038116600090815260d260209081526040822060d55460018201549193909290919081901c9063ffffffff165b811561267057600182161561265557600081815260d0602090815260408083206001600160a01b038a1684529091528120600181015481549192916125089190615994565b90508086106126525760e3546001600160a01b0316801561257f57604051636c912dad60e01b81526001600160a01b038a81166004830152821690636c912dad90602401600060405180830381600087803b15801561256657600080fd5b505af115801561257a573d6000803e3d6000fd5b505050505b61258982886159e1565b96506125958287615994565b8354600086815260d1602052604090209197506125b29190614d40565b60d360008282546125c391906159e1565b9091555050600084815260d0602090815260408083206001600160a01b038d16845290915281208181556001908101919091558801546126039085614d64565b600189015560408051838152602081018490526001600160a01b038b1691339187917ff17fce321dd9fb005136a80c0bfb3789e455b7a70be9eb8922f1ad20a80d1a33910160405180910390a4505b50505b60019190911c906126696224ea0082615994565b90506124c3565b6000856002015411801561268f5750600061268a8561323e565b945084115b156126b15760006126a0858861489e565b5090506126ad8185615994565b9350505b821561270d578260d560008282546126c991906159e1565b90915550506040518381526001600160a01b038716907fde0e3a281fa92ee953a13c5bd96dcaf07b10c6b9f42c65d0e3752c855caa6e7c9060200160405180910390a25b61271561394c565b505050505050565b600061272883612fbe565b905061275f6001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071633308461438d565b6127698284614c31565b60408051828152602081018590526001600160a01b0384169133917fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7910160405180910390a3610e478184614ca9565b60ca8054610eeb906159a7565b600054610100900460ff16158080156127e65750600054600160ff909116105b806128005750303b158015612800575060005460ff166001145b61280957600080fd5b6000805460ff19166001179055801561282c576000805461ff0019166101001790555b612834614e26565b61283c614e3a565b60007f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316076001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa15801561289c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526128c49190810190615ade565b9050806040516020016128d79190615b8b565b60405160208183030381529060405260c990816128f49190615c01565b50806040516020016129069190615cc1565b60405160208183030381529060405260ca90816129239190615c01565b5060da805468ffffffffffffffff0019166101004263ffffffff1690810268ffffffff0000000000191691909117600160281b82021763ffffffff60481b1916600160481b9190910217905561297a600033614283565b6129838a6117fb565b61298c89610e4d565b6129958861237b565b61299e87612df1565b6129a786611c70565b6129b0856136e9565b6129ba84846121cf565b508015612a01576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b600084600003612a2f5760405163b8cb621960e01b815260040160405180910390fd5b60da54612a4490879060ff1660036002613b69565b600086815260d16020526040812090612a5d8289613d05565b600089815260cf602090815260408083206001600160a01b0389168452825291829020825180840190935280548084526001909101549183018290529293509091612aa89190615994565b881115612ac35760208101518151612ac09190615994565b97505b88421015612b8f5760db5483546001850154612b88926001600160a01b03169163df635f3d918d918d91612af5611025565b6040516001600160e01b031960e088901b1681526004810195909552602485019390935260448401919091526064830152608482015260a401602060405180830381865afa158015612b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b6f9190615a47565b612b8190670de0b6b3a7640000615994565b8990614e56565b9350612b93565b8793505b86841015612bb457604051632c1b6b4160e21b815260040160405180910390fd5b612bbe8585613d86565b604080518082019091528151815260208083015190820152600090612bef90612be7908b614e6b565b518590614eb3565b60d354612bfc9190615994565b905060dd5460d45482612c0f9190615994565b1115612c2d57604051622d41ad60e31b815260040160405180910390fd5b60d355600080612c7d612c48612c43888d6159e1565b61405c565b604080516080810182528854815260018901546020820152600289015491810191909152600388015460608201529088614089565b9150915081856002016000828254612c959190615994565b90915550612ca49050816140d7565b612cae838b614ef8565b506020830151835117600003612d035760008b815260cf602090815260408083206001600160a01b038b168452825280832083815560010183905560d290915290208054612cfc908d614d64565b9055612d34565b60008b815260cf602090815260408083206001600160a01b038b168452825290912084518155908401516001909101555b8360dd6000828254612d469190615994565b909155505060408051338152602081018c90529081018790526001600160a01b0380891691908a16908d907fe57dbac0e7c42ad5f3b0fadb9c065565377cf771054fca70d35c96e01f9ec53c9060600160405180910390a4612da661394c565b612daf8b614105565b612de36001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c31607168988614154565b505050505095945050505050565b6000612dfc816138c7565b60d68290556040518281527fdb0ebfb2503f7c16b45577ebbf6c7d6b99b6e8aaf6652b156e36d5d6654a3a5e90602001610ed2565b60007f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e6001600160a01b031663a3883db53033612e6d866121c4565b6040518463ffffffff1660e01b8152600401612e8b93929190615a80565b60006040518083038186803b158015612ea357600080fd5b505afa158015612eb7573d6000803e3d6000fd5b505060e3546001600160a01b03169150508015612f8357604051630149e46f60e01b81523360048201526001600160a01b03821690630149e46f90602401600060405180830381600087803b158015612f0f57600080fd5b505af1158015612f23573d6000803e3d6000fd5b5050604051630149e46f60e01b81526001600160a01b03878116600483015284169250630149e46f9150602401600060405180830381600087803b158015612f6a57600080fd5b505af1158015612f7e573d6000803e3d6000fd5b505050505b611c338484614f59565b600080612f98613b57565b612300612fa48561323e565b8461489e565b612fb2613b57565b6118de33848484614a02565b60cb546000908015610f9057610f8b611cc7610d67565b60405163a3883db560e01b81526000906001600160a01b037f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e169063a3883db59061302890309086908990600401615a80565b60006040518083038186803b15801561304057600080fd5b505afa158015613054573d6000803e3d6000fd5b505060e3546001600160a01b031691505080156130c757604051630149e46f60e01b81526001600160a01b038481166004830152821690630149e46f90602401600060405180830381600087803b1580156130ae57600080fd5b505af11580156130c2573d6000803e3d6000fd5b505050505b6130d2858585614fbf565b91506130dc61394c565b509392505050565b60007f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e6001600160a01b031663a3883db53084613120886121c4565b6040518463ffffffff1660e01b815260040161313e93929190615a80565b60006040518083038186803b15801561315657600080fd5b505afa15801561316a573d6000803e3d6000fd5b505060e3546001600160a01b031691505080156131dd57604051630149e46f60e01b81526001600160a01b038481166004830152821690630149e46f90602401600060405180830381600087803b1580156131c457600080fd5b505af11580156131d8573d6000803e3d6000fd5b505050505b6130d28585856150cd565b60006131f3816138c7565b60e380546001600160a01b0319166001600160a01b0384169081179091556040517fbe945f1688d0c44e4727dde3ee4f1f52c5263e6213e3d6321cf7804cbe33be3c90600090a25050565b60df546000908015610f9057610f8b81613256613742565b85919061381a565b60cb546000908015610f9057610f8b81613256610d67565b6001600160a01b038116600090815260cc6020526040812054610e4790610f6c565b428410156132a557600080fd5b600060016132b1611b49565b6001600160a01b038a8116600081815260ce602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa1580156133bd573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116158015906133f35750876001600160a01b0316816001600160a01b0316145b6133fc57600080fd5b6001600160a01b03908116600090815260cd602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b600061346f613b57565b6134798285613d86565b60e3546001600160a01b031680156134e757604051636c912dad60e01b81526001600160a01b038481166004830152821690636c912dad90602401600060405180830381600087803b1580156134ce57600080fd5b505af11580156134e2573d6000803e3d6000fd5b505050505b6134f26112ae613e3c565b6134fb856122d3565b915060008560d45461350d9190615994565b60d481905560dc5490915061353e906112dc90600160801b90046001600160801b0316670de0b6b3a7640000615a60565b8160d35461354c9190615994565b111561356a57604051622d41ad60e31b815260040160405180910390fd5b8260df600082825461357c9190615994565b90915550506001600160a01b038416600090815260d26020526040812060020180548592906135ac908490615994565b909155505060408051878152602081018590526001600160a01b03808716929088169133917f96558a334f4759f0e7c423d68c84721860bd8fbf94ddc4e55158ecb125ad04b5910160405180910390a461360461394c565b604051637b9d893160e01b81523060048201526001600160a01b0385811660248301527f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e1690637b9d893190604401600060405180830381600087803b15801561366d57600080fd5b505af1158015613681573d6000803e3d6000fd5b506136bb9250506001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c316071690508688614154565b50509392505050565b6000828152606560205260409020600101546136df816138c7565b6118de8383614474565b60006136f4816138c7565b60dc80546001600160801b03908116600160801b918516918202179091556040519081527fc197c4ec4c97f824717acfad017c2a16643adc8874798a0899da42c6b5ebf9bf90602001610ed2565b60d45460dd54600091908281613759576000613763565b61376383836151e8565b60da54909150600090613803906110b29061378b90600160281b900463ffffffff16426159e1565b60db546040516342543a3360e11b8152600481018790526301e13380916001600160a01b0316906384a8746690602401602060405180830381865afa1580156137d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137fc9190615a47565b919061381a565b90506110c38185615994565b6000610e478261325e565b82820281151584158583048514171661383257600080fd5b0492915050565b6000610f928383670de0b6b3a764000061381a565b60da54600090819061386b90610100900463ffffffff16426159e1565b90508060000361387d57600091505090565b60da546138c19082906138ad9061389b906224ea009060ff166159f4565b60dc546001600160801b031690613839565b6138b79084615994565b60d554919061381a565b91505090565b611c6d81336151fd565b60006138db61384e565b90508060d560008282546138ef91906159e1565b909155505060da805464ffffffff0019166101004263ffffffff811691909102919091179091556040519081527fe24d78f24f27ad7740c08c83f439e4c144df201bfd8f5c4c93e3e0898248b1bb9060200160405180910390a190565b60cb5460dd5460df5460d45460d5546040805142815260208101969096528501939093526060840191909152608083015260a08201527f7a71b92e3ef471c5ad18359e076f3df1c563d92e9ea1e33aa4761dbbc9b7ae409060c0015b60405180910390a1565b8282028115158415858304851417166139ca57600080fd5b6001826001830304018115150290509392505050565b6000680248ce36a70cb26b3e1982136139fb57506000919050565b680755bf798b4a1bf1e58212613a1057600080fd5b6503782dace9d9604e83901b059150600060606bb17217f7d1cf79abc9e3b39884821b056001605f1b01901d6bb17217f7d1cf79abc9e3b39881029093036c240c330e9fb2d9cbaf0fd5aafb1981018102606090811d6d0277594991cfc85f6e2461837cd9018202811d6d1a521255e34f6a5061b25ef1c9c319018202811d6db1bbb201f443cf962f1a1d3db4a5018202811d6e02c72388d9f74f51a9331fed693f1419018202811d6e05180bb14799ab47a8a8cb2a527d57016d02d16720577bd19bf614176fe9ea6c10fe68e7fd37d0007b713f765084018402831d9081019084016d01d3967ed30fc4f89c02bab5708119010290911d6e0587f503bb6ea29d25fcb740196450019091026d360d7aeea093263ecc6e0ecb291760621b010574029d9dc38563c32e5c2f6dc192ee70ef65f9978af30260c3939093039290921c92915050565b60975460ff1615613b6757600080fd5b565b6000613b786224ea0086615cec565b15613b8557506001613bd8565b428511613b9457506002613bd8565b613ba460ff85166224ea006159f4565b613bb16224ea0042615cec565b613bbb90426159e1565b613bc59190615994565b851115613bd457506004613bd8565b5060035b826004811115613bea57613bea615d00565b816004811115613bfc57613bfc615d00565b14158015613c2c5750816004811115613c1757613c17615d00565b816004811115613c2957613c29615d00565b14155b15613cfe576000826004811115613c4557613c45615d00565b03613c9957806004811115613c5c57613c5c615d00565b836004811115613c6e57613c6e615d00565b604051631a71301d60e11b815260ff9283166004820152911660248201526044015b60405180910390fd5b806004811115613cab57613cab615d00565b836004811115613cbd57613cbd615d00565b836004811115613ccf57613ccf615d00565b604051637f2cef9960e01b815260ff938416600482015291831660248301529091166044820152606401613c90565b5050505050565b600382015460009042831115613d5a5760028401544260038601819055613d4390613d319084906159e1565b613d3b84876159e1565b83919061381a565b9250613d4f83826159e1565b600286015550613d7f565b828103613d6a5760009150613d7f565b60038401839055600284018054600090915591505b5092915050565b336001600160a01b03831614611bc3576001600160a01b038216600090815260cd6020908152604080832033845290915290205460001981146118de57613dcc82611005565b613dd690826159e1565b6001600160a01b038416600090815260cd60209081526040808320338452909152902055505050565b815460009081613e0f8483615994565b9050613e28613e22838760010154615244565b8261525a565b613e3290826159e1565b9455509192915050565b60d45460dd54600091908281613e53576000613e5d565b613e5d83836151e8565b60da54909150600090613e85906110b29061378b90600160281b900463ffffffff16426159e1565b9050613e918185615994565b9350613ea860e2548261383990919063ffffffff16565b945084613eb58285615994565b613ebf91906159e1565b60dd5560d484905560da805468ffffffff00000000001916600160281b4263ffffffff8116919091029190911790915560408051918252602082018490527f582b129106eba35020853cdae92ceb413a0227befcce433b67b23a630219b35f910160405180910390a15050505090565b8015611c6d5760e154613f53906001600160a01b0316613f4e8361380f565b614c31565b8060dd6000828254613f659190615994565b909155505050565b600082600003613f8557506401000000008117610e47565b63ffffffff8316808310156140045760006224ea00613fa485846159e1565b613fae9190615d16565b9050613fbc816101006159e1565b85901c15613fdd5760405163293cc41f60e21b815260040160405180910390fd5b613fe8816020615994565b602086901c901b94508484176401000000001792505050610e47565b60006224ea0061401483866159e1565b61401e9190615d16565b905060df8111156140425760405163293cc41f60e21b815260040160405180910390fd5b61404d816020615994565b6001901b851792505050610e47565b60008061407460e2548461383990919063ffffffff16565b905061407f81613f2f565b610f9281846159e1565b60008082156140be576140b96140a76140a187615269565b8561525a565b6140b190856159e1565b85908561381a565b6140c1565b60005b90506140cd81856159e1565b9150935093915050565b806000036140e25750565b60e254156140f357611c6d81613f2f565b8060d56000828254613f659190615994565b600081815260d160209081526040918290206002015482514281529182015282917fa2e6044136bec58e0605f40ac11a7bf87f1a8bdf3e2588b11b2cfae5acd9109f910160405180910390a250565b600060405163a9059cbb60e01b6000528360045282602452602060006044600080895af13d15601f3d116001600051141617169150600060605280604052508061419d57600080fd5b50505050565b6001600160a01b038316600090815260cd6020908152604080832033845290915281205460001981146141ff576141da83826159e1565b6001600160a01b038616600090815260cd602090815260408083203384529091529020555b6001600160a01b038516600090815260cc6020526040812080548592906142279084906159e1565b90915550506001600160a01b03808516600081815260cc602052604090819020805487019055519091871690600080516020615e43833981519152906142709087815260200190565b60405180910390a3506001949350505050565b61428d82826123fd565b611bc35760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556142c53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600080600061431786615269565b905080156143535761433861432c868361525a565b6040880151908361381a565b92506143448385613839565b915061435082846159e1565b92505b50935093915050565b81546001830154600091906143718482615994565b60018601556117f2614383838361525a565b6140a190846159e1565b60006040516323b872dd60e01b6000528460045283602452826044526020600060646000808a5af13d15601f3d1160016000511416171691506000606052806040525080613cfe57600080fd5b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60c960405161440c9190615d2a565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b61447e82826123fd565b15611bc35760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000846000036144fe5760405163685e923560e01b815260040160405180910390fd5b600086815260d160205260408120906145178289613d05565b600089815260d0602090815260408083206001600160a01b038a1684528252808320815180830190925280548083526001909101549282018390529394509261456b918b916145669190615994565b61525a565b6040805180820190915283518152602080850151908201529091506000906145939083614e6b565b5160e3549091506001600160a01b0316801561460557604051636c912dad60e01b81526001600160a01b038a81166004830152821690636c912dad90602401600060405180830381600087803b1580156145ec57600080fd5b505af1158015614600573d6000803e3d6000fd5b505050505b8b4210156146b05787156146a85760d754604080516080810182528854815260018901546020820152600289015491810191909152600388015460608201526000918291614654918690614309565b90925090506146638183615994565b88600201600082825461467691906159e1565b925050819055508060d5600082825461468f9190615994565b9091555061469f905082866159e1565b985050506146ff565b8296506146ff565b60d6546146d2906146c18e426159e1565b6146cb91906159f4565b8490613839565b6146dc9084615994565b96506146e883886159e1565b60d560008282546146f99190615994565b90915550505b8987111561472057604051632c1b6b4160e21b815260040160405180910390fd5b61472a8683614d40565b60d3600082825461473b91906159e1565b9091555061474b90508484614ef8565b5060208401518451176000036147a95760008c815260d0602090815260408083206001600160a01b038d1684528252808320838155600190810184905560d29092529091209081015461479e908e614d64565b6001909101556147da565b60008c815260d0602090815260408083206001600160a01b038d168452825290912085518155908501516001909101555b8460dd60008282546147ec9190615994565b909155505060408051888152602081018590526001600160a01b038b169133918f917ff17fce321dd9fb005136a80c0bfb3789e455b7a70be9eb8922f1ad20a80d1a33910160405180910390a46148428c614105565b50505050505095945050505050565b614859615288565b6097805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b0390911681526020016139a8565b60e35460009081906001600160a01b0316801561491157604051636c912dad60e01b81526001600160a01b038581166004830152821690636c912dad90602401600060405180830381600087803b1580156148f857600080fd5b505af115801561490c573d6000803e3d6000fd5b505050505b61491c6112ae613e3c565b6001600160a01b038416600090815260d2602052604090206002810154614943878261525a565b935061494e84611cb0565b9450846000036149715760405163685e923560e01b815260040160405180910390fd5b8460d4600082825461498391906159e1565b90915550614993905084826159e1565b82600201819055508360df60008282546149ad91906159e1565b909155505060408051868152602081018690526001600160a01b0388169133917fe4a1ae657f49cb1fb1c7d3a94ae6093565c4c8c0e03de488f79c377c3c3a24e0910160405180910390a35050509250929050565b80600003614a235760405163b8cb621960e01b815260040160405180910390fd5b60405163070b773960e51b81526001600160a01b0385811660048301523060248301527f000000000000000000000000aeb62e6f27bc103702e7bc879ae98bcea56f027e169063e16ee7209060440160006040518083038186803b158015614a8a57600080fd5b505afa158015614a9e573d6000803e3d6000fd5b505060e3546001600160a01b03169150508015614b1157604051630149e46f60e01b81526001600160a01b038481166004830152821690630149e46f90602401600060405180830381600087803b158015614af857600080fd5b505af1158015614b0c573d6000803e3d6000fd5b505050505b6000614b1c83611005565b9050614b288382615297565b614b32848261530a565b60408051848152602081018390526001600160a01b03808716929088169133917ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db910160405180910390a4836001600160a01b0316856001600160a01b03167f9e2db63c5a9dc5d08222447d76570029e4f2f3074c8aa4f1c511fa658506c71085604051614bc291815260200190565b60405180910390a3614bd261394c565b6127156001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c31607168685614154565b614c0e611025565b60de5560da805463ffffffff60481b1916600160481b4263ffffffff1602179055565b60e3546001600160a01b03168015614c9f57604051630149e46f60e01b81526001600160a01b038481166004830152821690630149e46f90602401600060405180830381600087803b158015614c8657600080fd5b505af1158015614c9a573d6000803e3d6000fd5b505050505b6118de8383615374565b614cb1613b57565b614cb9614c06565b6000614cc3613e3c565b90506000614ccf6138d1565b9050614cdb8482615994565b60dd6000828254614cec9190615994565b90915550614cfb905082613f2f565b61419d61394c565b614d0b613b57565b6097805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586148863390565b8154600183015460009190614d5584836159e1565b85556117f2614383838361525a565b6000821580614d795750816401000000001783145b15614d8657506000610e47565b63ffffffff8316808303614df457602184901c60015b60018216158015614dac57508115155b15614dbd57600191821c9101614d9c565b6020614dc98282615994565b9690961c90951b9485614ddf6224ea00836159f4565b614de99087615994565b179350505050610e47565b6224ea00614e0282856159e1565b614e0c9190615d16565b614e17906020615994565b6001901b198416915050610e47565b600054610100900460ff16613b6757600080fd5b600054610100900460ff16614e4e57600080fd5b613b676153c6565b6000610f9283670de0b6b3a76400008461381a565b604080518082019091526000808252602082015282516020840151600091614e97916132569082615994565b8085529050614ea681846159e1565b6020850152509192915050565b815460018301546000919082614ec985836159e1565b9050614ed5818461525a565b614edf838561525a565b614ee991906159e1565b60019096015550929392505050565b604080518082019091526000808252602082015260208301518351600091614f1f91615994565b90506000614f2d84836159e1565b8551909150614f3e9082908461381a565b808652614f4b90826159e1565b602086015250929392505050565b33600090815260cc6020526040812080548391908390614f7a9084906159e1565b90915550506001600160a01b038316600081815260cc602052604090819020805485019055513390600080516020615e4383398151915290610ff49086815260200190565b6000614fca84611005565b9050336001600160a01b0383161461503a576001600160a01b038216600090815260cd6020908152604080832033845290915290205460001981146150385761501382826159e1565b6001600160a01b038416600090815260cd602090815260408083203384529091529020555b505b6150448482615297565b61504e828261530a565b60408051858152602081018390526001600160a01b03808516929086169133917ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db910160405180910390a4610f926001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c31607168486614154565b6000336001600160a01b0383161461513d576001600160a01b038216600090815260cd60209081526040808320338452909152902054600019811461513b5761511685826159e1565b6001600160a01b038416600090815260cd602090815260408083203384529091529020555b505b615146846121c4565b90508060000361515557600080fd5b61515f8185615297565b615169828561530a565b60408051828152602081018690526001600160a01b03808516929086169133917ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db910160405180910390a4610f926001600160a01b037f0000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c31607168483614154565b6000610f9283670de0b6b3a7640000846139b2565b61520782826123fd565b611bc357615214816153e6565b61521f8360206153f8565b604051602001615230929190615da0565b604051602081830303815290604052600080fd5b60008183116152535781610f92565b5090919050565b60008183106152535781610f92565b805160208201516000919061527e828261525a565b611c3390836159e1565b60975460ff16613b6757600080fd5b61529f614c06565b6152aa6112ae613e3c565b60006152b46138d1565b90506000838260dd546152c79190615994565b6152d191906159e1565b90508060d45460d3546152e49190615994565b111561530257604051622d41ad60e31b815260040160405180910390fd5b60dd55505050565b6001600160a01b038216600090815260cc6020526040812080548392906153329084906159e1565b909155505060cb805482900390556040518181526000906001600160a01b03841690600080516020615e43833981519152906020015b60405180910390a35050565b8060cb60008282546153869190615994565b90915550506001600160a01b038216600081815260cc6020908152604080832080548601905551848152600080516020615e438339815191529101615368565b600054610100900460ff166153da57600080fd5b6097805460ff19169055565b6060610e476001600160a01b03831660145b606060006154078360026159f4565b615412906002615994565b67ffffffffffffffff81111561542a5761542a615ac8565b6040519080825280601f01601f191660200182016040528015615454576020820181803683370190505b509050600360fc1b8160008151811061546f5761546f615e15565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061549e5761549e615e15565b60200101906001600160f81b031916908160001a90535060006154c28460026159f4565b6154cd906001615994565b90505b6001811115615545576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061550157615501615e15565b1a60f81b82828151811061551757615517615e15565b60200101906001600160f81b031916908160001a90535060049490941c9361553e81615e2b565b90506154d0565b508315610f9257600080fd5b6001600160a01b0381168114611c6d57600080fd5b60006020828403121561557857600080fd5b8135610f9281615551565b60006020828403121561559557600080fd5b81356001600160e01b031981168114610f9257600080fd5b80356001600160801b03811681146155c457600080fd5b919050565b6000602082840312156155db57600080fd5b610f92826155ad565b60005b838110156155ff5781810151838201526020016155e7565b50506000910152565b60208152600082518060208401526156278160408501602087016155e4565b601f01601f19169190910160400192915050565b60006020828403121561564d57600080fd5b5035919050565b6000806040838503121561566757600080fd5b823561567281615551565b946020939093013593505050565b600080600080600060a0868803121561569857600080fd5b85359450602086013593506040860135925060608601356156b881615551565b915060808601356156c881615551565b809150509295509295909350565b6000806000606084860312156156eb57600080fd5b83356156f681615551565b9250602084013561570681615551565b929592945050506040919091013590565b803560ff811681146155c457600080fd5b60006020828403121561573a57600080fd5b610f9282615717565b6000806040838503121561575657600080fd5b82359150602083013561576881615551565b809150509250929050565b6000806000806080858703121561578957600080fd5b84359350602085013592506040850135915060608501356157a981615551565b939692955090935050565b6000806000606084860312156157c957600080fd5b83356157d481615551565b92506020840135915060408401356157eb81615551565b809150509250925092565b6000806040838503121561580957600080fd5b50508035926020909101359150565b600080600080600080600080610100898b03121561583557600080fd5b61583e89615717565b975061584c60208a016155ad565b9650604089013561585c81615551565b9550606089013594506080890135935061587860a08a016155ad565b925060c0890135915060e089013590509295985092959890939650565b6000806000606084860312156158aa57600080fd5b8335925060208401356158bc81615551565b915060408401356157eb81615551565b600080600080600080600060e0888a0312156158e757600080fd5b87356158f281615551565b9650602088013561590281615551565b9550604088013594506060880135935061591e60808901615717565b925060a0880135915060c0880135905092959891949750929550565b6000806040838503121561594d57600080fd5b823561595881615551565b9150602083013561576881615551565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b80820180821115610e4757610e4761597e565b600181811c908216806159bb57607f821691505b6020821081036159db57634e487b7160e01b600052602260045260246000fd5b50919050565b81810381811115610e4757610e4761597e565b8082028115828204841417610e4757610e4761597e565b6000600160ff1b8201615a2057615a2061597e565b5060000390565b8181036000831280158383131683831282161715613d7f57613d7f61597e565b600060208284031215615a5957600080fd5b5051919050565b6001600160801b03828116828216039080821115613d7f57613d7f61597e565b6001600160a01b039384168152919092166020820152604081019190915260600190565b60008060408385031215615ab757600080fd5b505080516020909101519092909150565b634e487b7160e01b600052604160045260246000fd5b600060208284031215615af057600080fd5b815167ffffffffffffffff80821115615b0857600080fd5b818401915084601f830112615b1c57600080fd5b815181811115615b2e57615b2e615ac8565b604051601f8201601f19908116603f01168101908382118183101715615b5657615b56615ac8565b81604052828152876020848701011115615b6f57600080fd5b615b808360208301602088016155e4565b979650505050505050565b67032bc30b1ba363c960c51b815260008251615bae8160088501602087016155e4565b9190910160080192915050565b601f8211156118de57600081815260208120601f850160051c81016020861015615be25750805b601f850160051c820191505b8181101561271557828155600101615bee565b815167ffffffffffffffff811115615c1b57615c1b615ac8565b615c2f81615c2984546159a7565b84615bbb565b602080601f831160018114615c645760008415615c4c5750858301515b600019600386901b1c1916600185901b178555612715565b600085815260208120601f198616915b82811015615c9357888601518255948401946001909101908401615c74565b5085821015615cb15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6265786160e81b815260008251615cdf8160038501602087016155e4565b9190910160030192915050565b600082615cfb57615cfb615968565b500690565b634e487b7160e01b600052602160045260246000fd5b600082615d2557615d25615968565b500490565b6000808354615d38816159a7565b60018281168015615d505760018114615d6557615d94565b60ff1984168752821515830287019450615d94565b8760005260208060002060005b85811015615d8b5781548a820152908401908201615d72565b50505082870194505b50929695505050505050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351615dd88160178501602088016155e4565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351615e098160288401602088016155e4565b01602801949350505050565b634e487b7160e01b600052603260045260246000fd5b600081615e3a57615e3a61597e565b50600019019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212202560e763e660225782d8a55b7a0e37fc45bcfc85ae7ad08bca9914513fc8b03e64736f6c63430008110033
🤖 Code Reader
Generate instant answers for your smart contract questions using Al Models. Read more.
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$10,367.82
Net Worth in ETH
4.284948
Token Allocations
USDC
100.00%
Multichain Portfolio | 31 Chains
Tokens
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| BASE | 100.00% | $0.999823 | 10,369.654 | $10,367.82 |
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.