Source Code
Latest 6 from a total of 6 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Withdraw | 25554296 | 66 days ago | IN | 0 ETH | 0.00016539 | ||||
| Withdraw | 24799944 | 171 days ago | IN | 0 ETH | 0.00034894 | ||||
| Withdraw | 24173378 | 258 days ago | IN | 0 ETH | 0.00001802 | ||||
| Withdraw | 24004812 | 282 days ago | IN | 0 ETH | 0.00013365 | ||||
| Withdraw | 23833457 | 306 days ago | IN | 0 ETH | 0.00020577 | ||||
| Accrue Interest | 19222716 | 950 days ago | IN | 0 ETH | 0.00200514 |
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method |
Block
|
From
|
To
|
|||
|---|---|---|---|---|---|---|---|
| 0x61010060 | 17821019 | 1147 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":"contract ISiloRepository","name":"_repository","type":"address"},{"internalType":"address","name":"_siloAsset","type":"address"},{"internalType":"uint128","name":"_version","type":"uint128"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AssetDoesNotExist","type":"error"},{"inputs":[],"name":"BorrowNotPossible","type":"error"},{"inputs":[],"name":"DepositNotPossible","type":"error"},{"inputs":[],"name":"DepositsExceedLimit","type":"error"},{"inputs":[],"name":"DifferentArrayLength","type":"error"},{"inputs":[],"name":"InvalidRepository","type":"error"},{"inputs":[],"name":"InvalidSiloVersion","type":"error"},{"inputs":[],"name":"LiquidationReentrancyCall","type":"error"},{"inputs":[],"name":"MaximumLTVReached","type":"error"},{"inputs":[],"name":"NotEnoughDeposits","type":"error"},{"inputs":[],"name":"NotEnoughLiquidity","type":"error"},{"inputs":[],"name":"NotSolvent","type":"error"},{"inputs":[],"name":"OnlyRouter","type":"error"},{"inputs":[],"name":"Paused","type":"error"},{"inputs":[],"name":"TokenIsNotAContract","type":"error"},{"inputs":[],"name":"UnexpectedEmptyReturn","type":"error"},{"inputs":[],"name":"UnsupportedLTVType","type":"error"},{"inputs":[],"name":"UserIsZero","type":"error"},{"inputs":[],"name":"ZeroAssets","type":"error"},{"inputs":[],"name":"ZeroShares","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":true,"internalType":"enum IBaseSilo.AssetStatus","name":"status","type":"uint8"}],"name":"AssetStatusUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Borrow","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":true,"internalType":"address","name":"depositor","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bool","name":"collateralOnly","type":"bool"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"shareAmountRepaid","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"seizedCollateral","type":"uint256"}],"name":"Liquidate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Repay","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":true,"internalType":"address","name":"depositor","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bool","name":"collateralOnly","type":"bool"}],"name":"Withdraw","type":"event"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"}],"name":"accrueInterest","outputs":[{"internalType":"uint256","name":"interest","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"}],"name":"assetStorage","outputs":[{"components":[{"internalType":"contract IShareToken","name":"collateralToken","type":"address"},{"internalType":"contract IShareToken","name":"collateralOnlyToken","type":"address"},{"internalType":"contract IShareToken","name":"debtToken","type":"address"},{"internalType":"uint256","name":"totalDeposits","type":"uint256"},{"internalType":"uint256","name":"collateralOnlyDeposits","type":"uint256"},{"internalType":"uint256","name":"totalBorrowAmount","type":"uint256"}],"internalType":"struct IBaseSilo.AssetStorage","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"borrow","outputs":[{"internalType":"uint256","name":"debtAmount","type":"uint256"},{"internalType":"uint256","name":"debtShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"address","name":"_borrower","type":"address"},{"internalType":"address","name":"_receiver","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"borrowFor","outputs":[{"internalType":"uint256","name":"debtAmount","type":"uint256"},{"internalType":"uint256","name":"debtShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"address","name":"_borrower","type":"address"}],"name":"borrowPossible","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"bool","name":"_collateralOnly","type":"bool"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"collateralAmount","type":"uint256"},{"internalType":"uint256","name":"collateralShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"address","name":"_depositor","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"bool","name":"_collateralOnly","type":"bool"}],"name":"depositFor","outputs":[{"internalType":"uint256","name":"collateralAmount","type":"uint256"},{"internalType":"uint256","name":"collateralShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"address","name":"_depositor","type":"address"}],"name":"depositPossible","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"bytes","name":"_flashReceiverData","type":"bytes"}],"name":"flashLiquidate","outputs":[{"internalType":"address[]","name":"assets","type":"address[]"},{"internalType":"uint256[][]","name":"receivedCollaterals","type":"uint256[][]"},{"internalType":"uint256[][]","name":"shareAmountsToRepay","type":"uint256[][]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAssets","outputs":[{"internalType":"address[]","name":"assets","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAssetsWithState","outputs":[{"internalType":"address[]","name":"assets","type":"address[]"},{"components":[{"internalType":"contract IShareToken","name":"collateralToken","type":"address"},{"internalType":"contract IShareToken","name":"collateralOnlyToken","type":"address"},{"internalType":"contract IShareToken","name":"debtToken","type":"address"},{"internalType":"uint256","name":"totalDeposits","type":"uint256"},{"internalType":"uint256","name":"collateralOnlyDeposits","type":"uint256"},{"internalType":"uint256","name":"totalBorrowAmount","type":"uint256"}],"internalType":"struct IBaseSilo.AssetStorage[]","name":"assetsStorage","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"harvestProtocolFees","outputs":[{"internalType":"uint256[]","name":"harvestedAmounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initAssetsTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"}],"name":"interestData","outputs":[{"components":[{"internalType":"uint256","name":"harvestedProtocolFees","type":"uint256"},{"internalType":"uint256","name":"protocolFees","type":"uint256"},{"internalType":"uint64","name":"interestRateTimestamp","type":"uint64"},{"internalType":"enum IBaseSilo.AssetStatus","name":"status","type":"uint8"}],"internalType":"struct IBaseSilo.AssetInterestData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"isSolvent","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"}],"name":"liquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"repay","outputs":[{"internalType":"uint256","name":"repaidAmount","type":"uint256"},{"internalType":"uint256","name":"repaidShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"address","name":"_borrower","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"repayFor","outputs":[{"internalType":"uint256","name":"repaidAmount","type":"uint256"},{"internalType":"uint256","name":"repaidShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"siloAsset","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"siloRepository","outputs":[{"internalType":"contract ISiloRepository","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"syncBridgeAssets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"}],"name":"utilizationData","outputs":[{"components":[{"internalType":"uint256","name":"totalDeposits","type":"uint256"},{"internalType":"uint256","name":"totalBorrowAmount","type":"uint256"},{"internalType":"uint64","name":"interestRateTimestamp","type":"uint64"}],"internalType":"struct IBaseSilo.UtilizationData","name":"data","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"bool","name":"_collateralOnly","type":"bool"}],"name":"withdraw","outputs":[{"internalType":"uint256","name":"withdrawnAmount","type":"uint256"},{"internalType":"uint256","name":"withdrawnShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_asset","type":"address"},{"internalType":"address","name":"_depositor","type":"address"},{"internalType":"address","name":"_receiver","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"bool","name":"_collateralOnly","type":"bool"}],"name":"withdrawFor","outputs":[{"internalType":"uint256","name":"withdrawnAmount","type":"uint256"},{"internalType":"uint256","name":"withdrawnShare","type":"uint256"}],"stateMutability":"nonpayable","type":"function"}]Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101735760003560e01c8063a388991b116100de578063ead5d35911610097578063f87c3aa811610071578063f87c3aa814610392578063fb255703146103d0578063fbf178db146103f0578063ffa1ad741461040357600080fd5b8063ead5d35914610359578063f364181c1461036c578063f3d470c21461037f57600080fd5b8063a388991b146102d1578063a6e08aa1146102d9578063b8c876b1146102ec578063bde12718146102ff578063bf27304114610326578063dbc5b4811461034657600080fd5b806364654cf51161013057806364654cf51461024657806367e4ac2c1461025c5780639198e5151461027157806393a94ca314610292578063976ce495146102b4578063a1dfa423146102c757600080fd5b8063151541f01461017857806322867d781461019657806338b51ce1146101be5780633edd1128146101e15780634521c019146101f45780634b8a352914610233575b600080fd5b61018061044b565b60405161018d919061471a565b60405180910390f35b6101a96101a4366004614745565b61057e565b6040805192835260208301919091520161018d565b6101d16101cc366004614771565b610599565b604051901515815260200161018d565b6101a96101ef36600461479c565b61064c565b61021b7f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4881565b6040516001600160a01b03909116815260200161018d565b6101a9610241366004614745565b610669565b61024e610678565b60405161018d92919061485e565b6102646107f8565b60405161018d91906148bf565b61028461027f366004614771565b61085a565b60405190815260200161018d565b6102a56102a03660046149b8565b61086b565b60405161018d93929190614af5565b6101a96102c2366004614b2e565b61099f565b6102cf6109ae565b005b6102cf6109ed565b6101d16102e7366004614b6f565b610b85565b6102846102fa366004614771565b610c50565b61021b7f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c81565b610339610334366004614771565b610cdb565b60405161018d9190614ba8565b6101a9610354366004614bb6565b610d4c565b6101a961036736600461479c565b610e1b565b6101a961037a366004614c07565b610e2b565b6101d161038d366004614b6f565b610efc565b6103a56103a0366004614771565b611042565b604080518251815260208084015190820152918101516001600160401b03169082015260600161018d565b6103e36103de366004614771565b6110c2565b60405161018d9190614c85565b6101a96103fe366004614cde565b611172565b61042a7f000000000000000000000000000000000000000000000000000000000000000181565b6040516fffffffffffffffffffffffffffffffff909116815260200161018d565b606060006104576107f8565b905080516001600160401b03811115610472576104726148d2565b60405190808252806020026020018201604052801561049b578160200160208202803683370190505b50915060007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105229190614d31565b905060005b82518110156105785761055383828151811061054557610545614d4e565b60200260200101518361127b565b84828151811061056557610565614d4e565b6020908102919091010152600101610527565b50505090565b60008061058d84333386611322565b915091505b9250929050565b60006001600160a01b0382166105c257604051630b328ad960e31b815260040160405180910390fd5b6000806105cd610678565b915091506000806106406040518060a001604052807f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b03168152602001306001600160a01b03168152602001868152602001858152602001886001600160a01b031681525060016114ee565b10159695505050505050565b60008061065c853333878761165d565b915091505b935093915050565b60008061058d84333386611b97565b60608060028054806020026020016040519081016040528092919081815260200182805480156106d157602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116106b3575b5050505050915081516001600160401b038111156106f1576106f16148d2565b60405190808252806020026020018201604052801561072a57816020015b61071761468e565b81526020019060019003908161070f5790505b50905060005b82518110156107f3576003600084838151811061074f5761074f614d4e565b6020908102919091018101516001600160a01b039081168352828201939093526040918201600020825160c0810184528154851681526001820154851692810192909252600281015490931691810191909152600382015460608201526004820154608082015260059091015460a082015282518390839081106107d5576107d5614d4e565b602002602001018190525080806107eb90614d7a565b915050610730565b509091565b6060600280548060200260200160405190810160405280929190818152602001828054801561085057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610832575b5050505050905090565b600061086582611ec5565b92915050565b60608060606108786107f8565b8551909350806001600160401b03811115610895576108956148d2565b6040519080825280602002602001820160405280156108c857816020015b60608152602001906001900390816108b35790505b509250806001600160401b038111156108e3576108e36148d2565b60405190808252806020026020018201604052801561091657816020015b60608152602001906001900390816109015790505b50915060005b81811015610996576109498588838151811061093a5761093a614d4e565b602002602001015133896121a6565b85838151811061095b5761095b614d4e565b6020026020010185848151811061097457610974614d4e565b602002602001018290528290525050808061098e90614d7a565b91505061091c565b50509250925092565b60008061065c85853386611322565b6002600054036109d95760405162461bcd60e51b81526004016109d090614d93565b60405180910390fd5b60026000556109e66123e4565b6001600055565b600260005403610a0f5760405162461bcd60e51b81526004016109d090614d93565b600260008190555060007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663296041ea6040518163ffffffff1660e01b8152600401600060405180830381865afa158015610a77573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a9f9190810190614dca565b905060005b8151811015610b74576000828281518110610ac157610ac1614d4e565b602002602001015190507f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb486001600160a01b0316816001600160a01b031614610b61576001600160a01b0381166000818152600460205260408082206002908101805460ff60401b19166802000000000000000017905590519092917f51efec4e8c6ee88d51e1ec000985e267b4296e493de77b4aa7a38315981390bf91a35b5080610b6c81614d7a565b915050610aa4565b50610b7d6123e4565b506001600055565b6001600160a01b038281166000908152600360205260408082206002015490516370a0823160e01b81528484166004820152919216906370a0823190602401602060405180830381865afa158015610be1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c059190614e58565b158015610c49575060016001600160a01b0384166000908152600460205260409020600290810154600160401b900460ff1690811115610c4757610c47614c6f565b145b9392505050565b6001600160a01b03811660008181526003602052604080822060049081015491516370a0823160e01b81523091810191909152919290916370a0823190602401602060405180830381865afa158015610cad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd19190614e58565b6108659190614e71565b610ce361468e565b506001600160a01b03908116600090815260036020818152604092839020835160c081018552815486168152600182015486169281019290925260028101549094169281019290925282015460608201526004820154608082015260059091015460a082015290565b6000807f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663f887ea406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd19190614d31565b6001600160a01b0316336001600160a01b031614610e0257604051639e41bdd760e01b815260040160405180910390fd5b610e0e86868686611b97565b9150915094509492505050565b60008061065c853333878761262e565b6000807f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663f887ea406040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb09190614d31565b6001600160a01b0316336001600160a01b031614610ee157604051639e41bdd760e01b815260040160405180910390fd5b610eee878787878761262e565b915091509550959350505050565b6001600160a01b03828116600090815260036020526040808220805491516370a0823160e01b81528585166004820152929390929116906370a0823190602401602060405180830381865afa158015610f59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7d9190614e58565b158015610ff7575060018101546040516370a0823160e01b81526001600160a01b038581166004830152909116906370a0823190602401602060405180830381865afa158015610fd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff59190614e58565b155b801561103a575060016001600160a01b0385166000908152600460205260409020600290810154600160401b900460ff169081111561103857611038614c6f565b145b949350505050565b61106f6040518060600160405280600081526020016000815260200160006001600160401b031681525090565b506001600160a01b03166000818152600360208181526040808420815160608101835293810154845260050154838301529383526004905290829020600201546001600160401b03169181019190915290565b6110ea6040805160808101825260008082526020820181905291810182905290606082015290565b6001600160a01b0382166000908152600460209081526040918290208251608081018452815481526001820154928101929092526002808201546001600160401b03811694840194909452919290916060840191600160401b900460ff169081111561115857611158614c6f565b600281111561116957611169614c6f565b90525092915050565b600080610e0e863387878761165d565b60006001600160a01b03831615801590610c49575082826040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ec9190614e88565b60e083901b6001600160e01b0319908116911614905092915050565b6040805160048152602481019091526020810180516001600160e01b031663313ce56760e01b1790526000908190819061124390859061278c565b9150915081611256575060009392505050565b8080602001905181019061126a9190614eb2565b60ff16949350505050565b3b151590565b600060026000540361129f5760405162461bcd60e51b81526004016109d090614d93565b600260009081556001600160a01b0384168152600460205260409020805460018201546112cc9190614e71565b915060006112d985610c50565b9050808311156112e7578092505b826000036112fa57600092505050611317565b8154830182556113146001600160a01b038616858561283e565b50505b600160005592915050565b60008085816001600160a01b0382166000908152600460205260409020600290810154600160401b900460ff169081111561135f5761135f614c6f565b0361137d576040516367fa94e760e01b815260040160405180910390fd5b60026000540361139f5760405162461bcd60e51b81526004016109d090614d93565b60026000556113ad87611ec5565b506001600160a01b03871660009081526003602052604090206113d18188876128a1565b909450925060008390036113f85760405163faf4da9160e01b815260040160405180910390fd5b866001600160a01b0316886001600160a01b03167f05f2eeda0e08e4b437f487c8d7d29b14537d15e3488170dc3de5dbdf8dac46848660405161143d91815260200190565b60405180910390a361145a6001600160a01b0389168730876129db565b8381600501600082825461146e9190614e71565b90915550506002810154604051632770a7eb60e21b81526001600160a01b0389811660048301526024820186905290911690639dc29fac90604401600060405180830381600087803b1580156114c357600080fd5b505af11580156114d7573d6000803e3d6000fd5b505050505060016000819055505094509492505050565b60008060006114fc85612a19565b905061150781612b35565b60000361151b576000809250925050610592565b600085600001516001600160a01b0316635ddf2be36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561155f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115839190614d31565b9050600061159682886040015185612b71565b905060006115a382612b35565b9050806000036115bd576000809550955050505050610592565b60006115c9848a612d8c565b905060006115d682612b35565b9050806000036115f457600019600097509750505050505050610592565b600061160f8b600001518c602001518d604001518d87612daa565b905081611624670de0b6b3a764000086614ed5565b61162e9190614f0a565b985081611643670de0b6b3a764000083614ed5565b61164d9190614f0a565b9750505050505050509250929050565b6000806002600054036116825760405162461bcd60e51b81526004016109d090614d93565b60026000558661169181611ec5565b5061169c8887610b85565b6116b95760405163206e46bd60e21b815260040160405180910390fd5b6001600160a01b038816600090815260036020526040812086945090856116e45781600301546116ea565b81600401545b905085156117fa57611777818360010160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561174b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061176f9190614e58565b899190612e41565b93506117838782614f1e565b60048381019190915560018301546040516340c10f1960e01b81526001600160a01b038b811693820193909352602481018790529116906340c10f1990604401600060405180830381600087803b1580156117dd57600080fd5b505af11580156117f1573d6000803e3d6000fd5b505050506118ca565b611853818360000160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561174b573d6000803e3d6000fd5b935061185f8782614f1e565b600383015581546040516340c10f1960e01b81526001600160a01b038a8116600483015260248201879052909116906340c10f1990604401600060405180830381600087803b1580156118b157600080fd5b505af11580156118c5573d6000803e3d6000fd5b505050505b6118df6001600160a01b038b168a308a6129db565b6040805188815287151560208201526001600160a01b03808b1692908d16917fdd160bb401ec5b5e5ca443d41e8e7182f3fe72d70a04b9c0ba844483d212bcb5910160405180910390a3505060007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b0316635ddf2be36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561198b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119af9190614d31565b6001600160a01b03831660009081526003602081905260408220600481015491810154939450926119e09190614f1e565b604051630968252160e11b81523060048201526001600160a01b0386811660248301529192507f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c909116906312d04a4290604401602060405180830381865afa158015611a51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a759190614e58565b846001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad79190614eb2565b611ae290600a61501a565b6040516341976e0960e01b81526001600160a01b0387811660048301528491908716906341976e0990602401602060405180830381865afa158015611b2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b4f9190614e58565b611b599190614ed5565b611b639190614f0a565b1115611b825760405163221e43cf60e11b815260040160405180910390fd5b50506001600055509197909650945050505050565b600080600260005403611bbc5760405162461bcd60e51b81526004016109d090614d93565b6002600055611bca86611ec5565b50611bd58686610efc565b611bf2576040516301c08c7960e11b815260040160405180910390fd5b82611bfc87610c50565b1015611c1b57604051634323a55560e01b815260040160405180910390fd5b600060036000886001600160a01b03166001600160a01b03168152602001908152602001600020905060008160050154905060007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663072ea61c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cd19190614e58565b905060008115611cfd57670de0b6b3a7640000611cee8389614ed5565b611cf89190614f0a565b611d00565b60005b9050611d90838560020160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d5b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7f9190614e58565b611d89848b614f1e565b9190612ea3565b879650945080611da08785614f1e565b611daa9190614f1e565b60058501556001600160a01b038a1660009081526004602052604081206001018054839290611dda908490614f1e565b909155505060028401546040516340c10f1960e01b81526001600160a01b038b8116600483015260248201889052909116906340c10f1990604401600060405180830381600087803b158015611e2f57600080fd5b505af1158015611e43573d6000803e3d6000fd5b50505050886001600160a01b03168a6001600160a01b03167f312a5e5e1079f5dda4e95dbbd0b908b291fd5b992ef22073643ab691572c5b5289604051611e8c91815260200190565b60405180910390a3611ea86001600160a01b038b16898961283e565b611eb189612ef6565b505060016000555091969095509350505050565b6040516344cf3e9360e01b81523060048201526001600160a01b0382811660248301526000917f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c909116906344cf3e9390604401602060405180830381865afa158015611f36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f5a9190615029565b15611f78576040516313d0ff5960e31b815260040160405180910390fd5b6001600160a01b0382166000908152600360209081526040808320600490925282206002810154919290916001600160401b031690819003611fdb5750600201805467ffffffffffffffff1916426001600160401b031617905550600092915050565b428103611fed57506000949350505050565b6000611ff886612fa0565b60405162f704bf60e21b81526001600160a01b03888116600483015242602483015291909116906303dc12fc906044016020604051808303816000875af1158015612047573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206b9190614e58565b905060007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b03166325ed3d446040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f19190614e58565b600586015460018601549192509060008080670de0b6b3a76400006121168887614ed5565b6121209190614f0a565b9a50670de0b6b3a7640000868c02049150818401925083831015612148576000199250831991505b50808a036121568b86614f1e565b60058b015560038a015461216b908290614f1e565b60039a909a01999099555060018701555050506002909201805467ffffffffffffffff1916426001600160401b031617905550919392505050565b6060806002600154036121cc57604051634fe29f1760e01b815260040160405180910390fd5b60026001556121da85610599565b1561223057600086516001600160401b038111156121fa576121fa6148d2565b604051908082528060200260200182016040528015612223578160200160208202803683370190505b5092508291506123d59050565b61223b868686613035565b60405163e7b43da560e01b815291935091506001600160a01b0385169063e7b43da5906122749088908a90879087908a9060040161509e565b600060405180830381600087803b15801561228e57600080fd5b505af11580156122a2573d6000803e3d6000fd5b5050505060005b86518110156123ae578281815181106122c4576122c4614d4e565b602002602001015160001415806122f557508181815181106122e8576122e8614d4e565b6020026020010151600014155b1561239c57856001600160a01b031687828151811061231657612316614d4e565b60200260200101516001600160a01b03167ff3fa0eaee8f258c23b013654df25d1527f98a5c7ccd5e951dd77caca400ef97284848151811061235a5761235a614d4e565b602002602001015186858151811061237457612374614d4e565b6020026020010151604051612393929190918252602082015260400190565b60405180910390a35b806123a681614d7a565b9150506122a9565b506123b885610599565b6123d55760405163e081c8f360e01b815260040160405180910390fd5b60018055909590945092505050565b60007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663cc1fdf166040518163ffffffff1660e01b8152600401602060405180830381865afa158015612444573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124689190614d31565b6001600160a01b037f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb488116600090815260036020526040902054919250166124d6576124d6817f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48600061328d565b60007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663ee306a346040518163ffffffff1660e01b8152600401600060405180830381865afa158015612536573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261255e9190810190614dca565b905060005b815181101561262957600082828151811061258057612580614d4e565b6020908102919091018101516001600160a01b0380821660009081526003909352604090922054909250166125c0576125bb8482600161328d565b612616565b6001600160a01b038116600081815260046020526040808220600201805460ff60401b1916600160401b17905551600192917f51efec4e8c6ee88d51e1ec000985e267b4296e493de77b4aa7a38315981390bf91a35b508061262181614d7a565b915050612563565b505050565b6000806002600054036126535760405162461bcd60e51b81526004016109d090614d93565b6002600090815587906001600160a01b0382166000908152600460205260409020600290810154600160401b900460ff169081111561269457612694614c6f565b036126b2576040516367fa94e760e01b815260040160405180910390fd5b6126bb88611ec5565b506126cb888689898860006134f6565b909350915060008390036126f25760405163faf4da9160e01b815260040160405180910390fd5b6126fb87610599565b6127185760405163e081c8f360e01b815260040160405180910390fd5b856001600160a01b0316876001600160a01b0316896001600160a01b03167f3b5f15635b488fe265654176726b3222080f3d6500a562f4664233b3ea2f028386886040516127729291909182521515602082015260400190565b60405180910390a450600160005590969095509350505050565b60006060833b6127af576040516373d39f9d60e01b815260040160405180910390fd5b600080856001600160a01b0316856040516127ca91906150fc565b600060405180830381855afa9150503d8060008114612805576040519150601f19603f3d011682016040523d82523d6000602084013e61280a565b606091505b50915091508161283157600060405180602001604052806000815250935093505050610592565b6001969095509350505050565b6040516001600160a01b03831660248201526044810182905261262990849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152613793565b60028301546040516370a0823160e01b81526001600160a01b03848116600483015260009283928392909116906370a0823190602401602060405180830381865afa1580156128f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129189190614e58565b905060008660020160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612971573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129959190614e58565b600588015490915060006129aa848385613865565b90508087106129be578095508394506129cf565b8695506129cc868385612e41565b94505b50505050935093915050565b6040516001600160a01b0380851660248301528316604482015260648101829052612a139085906323b872dd60e01b9060840161286a565b50505050565b606081606001515182604001515114612a455760405163dba17af560e01b815260040160405180910390fd5b8160400151516001600160401b03811115612a6257612a626148d2565b604051908082528060200260200182016040528015612a8b578160200160208202803683370190505b50905060005b826040015151811015612b2f576000612ad18460200151856000015186604001518581518110612ac357612ac3614d4e565b6020026020010151426138a9565b9050612aff84606001518381518110612aec57612aec614d4e565b60200260200101518560800151836139a7565b838381518110612b1157612b11614d4e565b60209081029190910101525080612b2781614d7a565b915050612a91565b50919050565b6000805b8251811015612b2f57828181518110612b5457612b54614d4e565b602002602001015182612b679190614f1e565b9150600101612b39565b60608151835114612b955760405163dba17af560e01b815260040160405180910390fd5b82516001600160401b03811115612bae57612bae6148d2565b604051908082528060200260200182016040528015612bd7578160200160208202803683370190505b50905060005b8351811015612d8457828181518110612bf857612bf8614d4e565b602002602001015160000315612d72576000856001600160a01b03166341976e09868481518110612c2b57612c2b614d4e565b60200260200101516040518263ffffffff1660e01b8152600401612c5e91906001600160a01b0391909116815260200190565b602060405180830381865afa158015612c7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c9f9190614e58565b90506000858381518110612cb557612cb5614d4e565b60200260200101516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015612cfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d1e9190614eb2565b9050612d51828260ff16878681518110612d3a57612d3a614d4e565b6020026020010151613ab39092919063ffffffff16565b848481518110612d6357612d63614d4e565b60200260200101818152505050505b80612d7c81614d7a565b915050612bdd565b509392505050565b60606000612d9983613adc565b905061103a84846040015183612b71565b60008151845114612dce5760405163dba17af560e01b815260040160405180910390fd5b60005b8451811015612e3757612e198787878481518110612df157612df1614d4e565b602002602001015187878681518110612e0c57612e0c614d4e565b6020026020010151613d2e565b612e239083614f1e565b915080612e2f81614d7a565b915050612dd1565b5095945050505050565b6000811580612e4e575082155b15612e5a575082610c49565b612e648285614ed5565b9050828181612e7557612e75614ef4565b04905080158015612e8557508315155b15610c4957604051639811e0c760e01b815260040160405180910390fd5b6000811580612eb0575082155b15612ebc575082610c49565b6000612ec88386614ed5565b9050838181612ed957612ed9614ef4565b049150612ee68482615118565b15612d8457506001019392505050565b600080612f01610678565b91509150600080612f746040518060a001604052807f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b03168152602001306001600160a01b03168152602001868152602001858152602001876001600160a01b031681525060006114ee565b9150915080821115612f9957604051630655b2eb60e31b815260040160405180910390fd5b5050505050565b60405163122cfaaf60e21b81523060048201526001600160a01b0382811660248301526000917f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c909116906348b3eabc90604401602060405180830381865afa158015613011573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108659190614d31565b82516060908190806001600160401b03811115613054576130546148d2565b60405190808252806020026020018201604052801561307d578160200160208202803683370190505b509250806001600160401b03811115613098576130986148d2565b6040519080825280602002602001820160405280156130c1578160200160208202803683370190505b50915060007f000000000000000000000000bcd67f35c7a2f212db0ad7f68fc773b5ac15377c6001600160a01b031663eafecffa6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131489190614e58565b905060005b828110156132825761317788828151811061316a5761316a614d4e565b6020026020010151611ec5565b506000600360008a848151811061319057613190614d4e565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002090506131c781896000196128a1565b508583815181106131da576131da614d4e565b60200260200101818152505060006132128a84815181106131fd576131fd614d4e565b60200260200101516000198b8b6001896134f6565b50905060006132418b858151811061322c5761322c614d4e565b60200260200101516000198c8c60008a6134f6565b50905061324e8183614f1e565b88858151811061326057613260614d4e565b602002602001018181525050505050808061327a90614d7a565b91505061314d565b505050935093915050565b60006132998383613e53565b6001600160a01b03808516600090815260036020908152604091829020845191850151925163f8f38d1b60e01b8152949550939288169263f8f38d1b926132e59291899060040161512c565b6020604051808303816000875af1158015613304573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133289190614d31565b81546001600160a01b0319166001600160a01b039182161782556040838101516060850151915163f8f38d1b60e01b81529288169263f8f38d1b926133729291899060040161512c565b6020604051808303816000875af1158015613391573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133b59190614d31565b6001820180546001600160a01b0319166001600160a01b03928316179055608083015160a0840151604051633b0eb45d60e21b81529288169263ec3ad17492613404929091899060040161512c565b6020604051808303816000875af1158015613423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134479190614d31565b600282810180546001600160a01b039384166001600160a01b0319918216179091558154600181810184557f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace9091018054948916949092168417909155600083815260046020526040808220909301805460ff60401b1916600160401b17905591519092917f51efec4e8c6ee88d51e1ec000985e267b4296e493de77b4aa7a38315981390bf91a35050505050565b60008060008060006135088b886140c7565b9250925092506000198a036135f8576040516370a0823160e01b81526001600160a01b038a811660048301528316906370a0823190602401602060405180830381865afa15801561355d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135819190614e58565b93506135f183836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156135c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135e99190614e58565b869190614132565b945061366c565b61366683836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561363a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061365e9190614e58565b8c9190612ea3565b93508994505b846000036136835760008094509450505050613788565b848310156136a457604051631648a98f60e31b815260040160405180910390fd5b848303925060006136b68c8789614195565b9050808210156136d957604051634323a55560e01b815260040160405180910390fd5b6001600160a01b038c1660009081526003602052604090208815613703576004810185905561370b565b600381018590555b604051632770a7eb60e21b81526001600160a01b038c8116600483015260248201889052851690639dc29fac90604401600060405180830381600087803b15801561375557600080fd5b505af1158015613769573d6000803e3d6000fd5b50613782925050506001600160a01b038e168b8461283e565b50505050505b965096945050505050565b60006137e8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166141f59092919063ffffffff16565b80519091501561262957808060200190518101906138069190615029565b6126295760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016109d0565b6000811580613872575082155b1561387f57506000610c49565b600061388b8486614ed5565b905082818161389c5761389c614ef4565b049150612ee68382615118565b60405163122cfaaf60e21b81526001600160a01b038581166004830152838116602483015260009182918616906348b3eabc90604401602060405180830381865afa1580156138fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139209190614d31565b60405163b1e0176560e01b81526001600160a01b0388811660048301528681166024830152604482018690529192509082169063b1e0176590606401602060405180830381865afa158015613979573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061399d9190614e58565b9695505050505050565b60408084015190516370a0823160e01b81526001600160a01b03848116600483015260009283929116906370a0823190602401602060405180830381865afa1580156139f7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a1b9190614e58565b905080600003613a2f576000915050610c49565b6000613a3f8660a0015185614204565b905061399d8187604001516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613a87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aab9190614e58565b849190613865565b6000613abf8385614ed5565b905081600a0a8181613ad357613ad3614ef4565b04949350505050565b606081606001515182604001515114613b085760405163dba17af560e01b815260040160405180910390fd5b8160400151516001600160401b03811115613b2557613b256148d2565b604051908082528060200260200182016040528015613b4e578160200160208202803683370190505b50905060005b826040015151811015612b2f57600083606001518281518110613b7957613b79614d4e565b60209081029190910101515160808501516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015613bd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613bf49190614e58565b9050600084606001518381518110613c0e57613c0e614d4e565b602090810291909101810151015160808601516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015613c67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c8b9190614e58565b9050613c978183614f1e565b600003613ca5575050613d1c565b6000613cca8660200151876000015188604001518781518110612ac357612ac3614d4e565b9050613cfa86606001518581518110613ce557613ce5614d4e565b60200260200101518484848a6000015161422d565b858581518110613d0c57613d0c614d4e565b6020026020010181815250505050505b80613d2681614d7a565b915050613b54565b60008080846001811115613d4457613d44614c6f565b03613dc3576040516330be9d2560e21b81526001600160a01b038781166004830152868116602483015288169063c2fa7494906044015b602060405180830381865afa158015613d98573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dbc9190614e58565b9050613e2b565b6001846001811115613dd757613dd7614c6f565b03613e1257604051630ca4db1160e21b81526001600160a01b03878116600483015286811660248301528816906332936c4490604401613d7b565b6040516353c3731560e01b815260040160405180910390fd5b670de0b6b3a7640000613e3e8285614ed5565b613e489190614f0a565b979650505050505050565b613e8c6040518060c001604052806060815260200160608152602001606081526020016060815260200160608152602001606081525090565b6000613e9784614398565b90506040518060c0016040528082604051602001613eb5919061516a565b604051602081830303815290604052815260200182604051602001613eda91906151c1565b604051602081830303815290604052815260200182604051602001613eff91906151ea565b604051602081830303815290604052815260200182604051602001613f249190615241565b604051602081830303815290604052815260200182604051602001613f49919061526b565b604051602081830303815290604052815260200182604051602001613f6e91906152af565b604051602081830303815290604052815250915082156140c0576000613fb37f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48614398565b8351604051919250613fc99183906020016152cb565b60408051601f198184030181529181529084526020848101519151613ff1929184910161531c565b604051602081830303815290604052836020018190525082604001518160405160200161401f9291906152cb565b604051602081830303815290604052836040018190525082606001518160405160200161404d92919061531c565b604051602081830303815290604052836060018190525082608001518160405160200161407b9291906152cb565b60405160208183030381529060405283608001819052508260a00151816040516020016140a992919061531c565b60408051601f1981840301815291905260a0840152505b5092915050565b6001600160a01b038216600090815260036020526040812081908190841561410957600481015460018201549094506001600160a01b0316925083915061412a565b600381015481549094506001600160a01b0316925061412786610c50565b91505b509250925092565b600081158061413f575082155b1561414c57506000610c49565b6141568385614ed5565b905081818161416757614167614ef4565b0490508015801561417757508315155b15610c4957604051630cb65c7760e21b815260040160405180910390fd5b6000816000036141a6575081610c49565b6001600160a01b0384166000908152600460205260408120600101546141cd908585614436565b6001600160a01b03871660009081526004602052604090206001015584039150509392505050565b606061103a8484600085614465565b6000670de0b6b3a76400006142198385614ed5565b6142239190614f0a565b610c499084614f1e565b60008085156143215761431c6142ae88606001518960a00151866001600160a01b03166325ed3d446040518163ffffffff1660e01b8152600401602060405180830381865afa158015614284573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142a89190614e58565b88614582565b88600001516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156142f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143149190614e58565b889190614132565b614324565b60005b90506000851561437d57614378886080015189602001516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156142f0573d6000803e3d6000fd5b614380565b60005b905061438c8183614f1e565b98975050505050505050565b6040805160048152602481019091526020810180516001600160e01b03166395d89b4160e01b17905260609060009081906143d490859061278c565b915091508115806143e457508051155b156144095750506040805180820190915260018152603f60f81b602082015292915050565b602081510361441b5761103a816145d6565b8080602001905181019061103a9190615358565b5050919050565b670de0b6b3a7640000818302046000811985111561445a5750508219600019610661565b509392840192915050565b6060824710156144c65760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016109d0565b843b6145145760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016109d0565b600080866001600160a01b0316858760405161453091906150fc565b60006040518083038185875af1925050503d806000811461456d576040519150601f19603f3d011682016040523d82523d6000602084013e614572565b606091505b5091509150613e48828286614655565b60008061459784670de0b6b3a7640000614e71565b9050670de0b6b3a764000081816145ae8689614ed5565b6145b89190614f0a565b6145c29190614ed5565b6145cc9190614f0a565b61399d9087614f1e565b805160609060005b8181101561442f578381815181106145f8576145f8614d4e565b01602001516001600160f81b0319161561464d578284828151811061461f5761461f614d4e565b602001015160f81c60f81b60405160200161463b9291906153ce565b60405160208183030381529060405292505b6001016145de565b60608315614664575081610c49565b8251156146745782518084602001fd5b8160405162461bcd60e51b81526004016109d091906153fd565b6040518060c0016040528060006001600160a01b0316815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001600081525090565b600081518084526020808501945080840160005b8381101561470f578151875295820195908201906001016146f3565b509495945050505050565b602081526000610c4960208301846146df565b6001600160a01b038116811461474257600080fd5b50565b6000806040838503121561475857600080fd5b82356147638161472d565b946020939093013593505050565b60006020828403121561478357600080fd5b8135610c498161472d565b801515811461474257600080fd5b6000806000606084860312156147b157600080fd5b83356147bc8161472d565b92506020840135915060408401356147d38161478e565b809150509250925092565b600081518084526020808501945080840160005b8381101561470f5781516001600160a01b0316875295820195908201906001016147f2565b80516001600160a01b03908116835260208083015182169084015260408083015190911690830152606080820151908301526080808201519083015260a090810151910152565b60408152600061487160408301856147de565b82810360208481019190915284518083528582019282019060005b818110156148b25761489f838651614817565b9383019360c0929092019160010161488c565b5090979650505050505050565b602081526000610c4960208301846147de565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614910576149106148d2565b604052919050565b60006001600160401b03821115614931576149316148d2565b5060051b60200190565b60006001600160401b03821115614954576149546148d2565b50601f01601f191660200190565b600082601f83011261497357600080fd5b81356149866149818261493b565b6148e8565b81815284602083860101111561499b57600080fd5b816020850160208301376000918101602001919091529392505050565b600080604083850312156149cb57600080fd5b82356001600160401b03808211156149e257600080fd5b818501915085601f8301126149f657600080fd5b81356020614a0661498183614918565b82815260059290921b84018101918181019089841115614a2557600080fd5b948201945b83861015614a4c578535614a3d8161472d565b82529482019490820190614a2a565b96505086013592505080821115614a6257600080fd5b50614a6f85828601614962565b9150509250929050565b600081518084526020808501808196508360051b810191508286016000805b86811015614ae7578385038a52825180518087529087019087870190845b81811015614ad257835183529289019291890191600101614ab6565b50509a87019a95505091850191600101614a98565b509298975050505050505050565b606081526000614b0860608301866147de565b8281036020840152614b1a8186614a79565b9050828103604084015261399d8185614a79565b600080600060608486031215614b4357600080fd5b8335614b4e8161472d565b92506020840135614b5e8161472d565b929592945050506040919091013590565b60008060408385031215614b8257600080fd5b8235614b8d8161472d565b91506020830135614b9d8161472d565b809150509250929050565b60c081016108658284614817565b60008060008060808587031215614bcc57600080fd5b8435614bd78161472d565b93506020850135614be78161472d565b92506040850135614bf78161472d565b9396929550929360600135925050565b600080600080600060a08688031215614c1f57600080fd5b8535614c2a8161472d565b94506020860135614c3a8161472d565b93506040860135614c4a8161472d565b9250606086013591506080860135614c618161478e565b809150509295509295909350565b634e487b7160e01b600052602160045260246000fd5b600060808201905082518252602083015160208301526001600160401b036040840151166040830152606083015160038110614cd157634e487b7160e01b600052602160045260246000fd5b8060608401525092915050565b60008060008060808587031215614cf457600080fd5b8435614cff8161472d565b93506020850135614d0f8161472d565b9250604085013591506060850135614d268161478e565b939692955090935050565b600060208284031215614d4357600080fd5b8151610c498161472d565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201614d8c57614d8c614d64565b5060010190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b60006020808385031215614ddd57600080fd5b82516001600160401b03811115614df357600080fd5b8301601f81018513614e0457600080fd5b8051614e1261498182614918565b81815260059190911b82018301908381019087831115614e3157600080fd5b928401925b82841015613e48578351614e498161472d565b82529284019290840190614e36565b600060208284031215614e6a57600080fd5b5051919050565b600082821015614e8357614e83614d64565b500390565b600060208284031215614e9a57600080fd5b81516001600160e01b031981168114610c4957600080fd5b600060208284031215614ec457600080fd5b815160ff81168114610c4957600080fd5b6000816000190483118215151615614eef57614eef614d64565b500290565b634e487b7160e01b600052601260045260246000fd5b600082614f1957614f19614ef4565b500490565b60008219821115614f3157614f31614d64565b500190565b600181815b80851115614f71578160001904821115614f5757614f57614d64565b80851615614f6457918102915b93841c9390800290614f3b565b509250929050565b600082614f8857506001610865565b81614f9557506000610865565b8160018114614fab5760028114614fb557614fd1565b6001915050610865565b60ff841115614fc657614fc6614d64565b50506001821b610865565b5060208310610133831016604e8410600b8410161715614ff4575081810a610865565b614ffe8383614f36565b806000190482111561501257615012614d64565b029392505050565b6000610c4960ff841683614f79565b60006020828403121561503b57600080fd5b8151610c498161478e565b60005b83811015615061578181015183820152602001615049565b83811115612a135750506000910152565b6000815180845261508a816020860160208601615046565b601f01601f19169290920160200192915050565b6001600160a01b038616815260a0602082018190526000906150c2908301876147de565b82810360408401526150d481876146df565b905082810360608401526150e881866146df565b9050828103608084015261438c8185615072565b6000825161510e818460208701615046565b9190910192915050565b60008261512757615127614ef4565b500690565b60608152600061513f6060830186615072565b82810360208401526151518186615072565b91505060018060a01b0383166040830152949350505050565b7f53696c6f2046696e616e636520426f72726f7761626c652000000000000000008152600082516151a2816018850160208701615046565b670811195c1bdcda5d60c21b6018939091019283015250602001919050565b607360f81b8152600082516151dd816001850160208701615046565b9190910160010192915050565b7f53696c6f2046696e616e63652050726f74656374656420000000000000000000815260008251615222816017850160208701615046565b670811195c1bdcda5d60c21b6017939091019283015250601f01919050565b61073760f41b81526000825161525e816002850160208701615046565b9190910160020192915050565b6c029b4b637902334b730b731b29609d1b81526000825161529381600d850160208701615046565b64081119589d60da1b600d939091019283015250601201919050565b601960fa1b8152600082516151dd816001850160208701615046565b600083516152dd818460208801615046565b6301034b7160e51b90830190815283516152fe816004840160208801615046565b642053696c6f60d81b60049290910191820152600901949350505050565b6000835161532e818460208801615046565b602d60f81b908301908152835161534c816001840160208801615046565b01600101949350505050565b60006020828403121561536a57600080fd5b81516001600160401b0381111561538057600080fd5b8201601f8101841361539157600080fd5b805161539f6149818261493b565b8181528560208385010111156153b457600080fd5b6153c5826020830160208601615046565b95945050505050565b600083516153e0818460208801615046565b6001600160f81b0319939093169190920190815260010192915050565b602081526000610c49602083018461507256fea26469706673582212208b9eb7dd0102d6607a66da41a403284f59619609a241394c4be2690f5af56c2f64736f6c634300080d0033
🤖 Code Reader
Generate instant answers for your smart contract questions using AI Models. Read more.
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.