More Info
Private Name Tags
ContractCreator
Latest 17 from a total of 17 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Burn_amount | 16384400 | 564 days ago | IN | 0 ETH | 0.00904743 | ||||
Burn_amount | 16384356 | 564 days ago | IN | 0 ETH | 0.01093909 | ||||
Set_swap_data | 16336716 | 571 days ago | IN | 0 ETH | 0.00265853 | ||||
Set_swap_data | 16336711 | 571 days ago | IN | 0 ETH | 0.00224113 | ||||
Set_swap_data | 13920069 | 939 days ago | IN | 0 ETH | 0.00933024 | ||||
Burn_amount | 13758232 | 964 days ago | IN | 0 ETH | 0.0191429 | ||||
Burn_amount | 13758224 | 964 days ago | IN | 0 ETH | 0.01520432 | ||||
Burn_amount | 13758215 | 964 days ago | IN | 0 ETH | 0.01639013 | ||||
Burn_amount | 13758205 | 964 days ago | IN | 0 ETH | 0.01565668 | ||||
Burn_amount | 13758193 | 964 days ago | IN | 0 ETH | 0.01766568 | ||||
Burn_amount | 13758172 | 964 days ago | IN | 0 ETH | 0.014811 | ||||
Burn_amount | 13757790 | 965 days ago | IN | 0 ETH | 0.02049709 | ||||
Commit_transfer_... | 13708987 | 972 days ago | IN | 0 ETH | 0.00434424 | ||||
Set_swap_data | 13708984 | 972 days ago | IN | 0 ETH | 0.01487778 | ||||
Set_swap_data | 13708978 | 972 days ago | IN | 0 ETH | 0.01497286 | ||||
Set_swap_data | 13708975 | 972 days ago | IN | 0 ETH | 0.01490891 | ||||
0x6020610f | 13708925 | 972 days ago | IN | 0 ETH | 0.09484793 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
16685387 | 522 days ago | 6.32314134 ETH | ||||
16685387 | 522 days ago | 6.32314134 ETH | ||||
16685387 | 522 days ago | 19.74650608 ETH | ||||
16685387 | 522 days ago | 19.74650608 ETH | ||||
16634931 | 529 days ago | 7.77917275 ETH | ||||
16634931 | 529 days ago | 7.77917275 ETH | ||||
16634931 | 529 days ago | 20.20056505 ETH | ||||
16634931 | 529 days ago | 20.20056505 ETH | ||||
16584829 | 536 days ago | 8.15956446 ETH | ||||
16584829 | 536 days ago | 8.15956446 ETH | ||||
16584829 | 536 days ago | 21.70462365 ETH | ||||
16584829 | 536 days ago | 21.70462365 ETH | ||||
16535055 | 543 days ago | 5.85840591 ETH | ||||
16535055 | 543 days ago | 5.85840591 ETH | ||||
16535055 | 543 days ago | 26.07022726 ETH | ||||
16535055 | 543 days ago | 26.07022726 ETH | ||||
16484808 | 550 days ago | 5.68121801 ETH | ||||
16484808 | 550 days ago | 5.68121801 ETH | ||||
16484808 | 550 days ago | 27.27262483 ETH | ||||
16484808 | 550 days ago | 27.27262483 ETH | ||||
16434183 | 557 days ago | 9.64502119 ETH | ||||
16434183 | 557 days ago | 9.64502119 ETH | ||||
16434183 | 557 days ago | 21.89985641 ETH | ||||
16434183 | 557 days ago | 21.89985641 ETH | ||||
16384556 | 564 days ago | 2.38251905 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Vyper_contract
Compiler Version
vyper:0.3.0
Contract Source Code (Vyper language format)
# @version 0.3.0 """ @title 2Crypto Swap Burner @notice Performs a swap using a 2 asset Crypto pool, with slippage protection via price oracle """ from vyper.interfaces import ERC20 interface CryptoPool: def exchange(i: uint256, j: uint256, dx: uint256, min_dy: uint256): payable def price_oracle() -> uint256: view interface CryptoPoolETH: def exchange(i: uint256, j: uint256, dx: uint256, min_dy: uint256, use_eth: bool): payable interface PoolProxy: def burners(_coin: address) -> address: view struct SwapData: pool: address coin: address receiver: address i: uint256 ETH_ADDRESS: constant(address) = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE is_approved: HashMap[address, HashMap[address, bool]] swap_data: public(HashMap[address, SwapData]) pool_proxy: public(address) recovery: public(address) is_killed: public(bool) owner: public(address) emergency_owner: public(address) future_owner: public(address) future_emergency_owner: public(address) @external def __init__(_pool_proxy: address, _recovery: address, _owner: address, _emergency_owner: address): """ @notice Contract constructor @dev Unlike other burners, this contract may transfer tokens to multiple addresses after the swap. Receiver addresses are set by calling `set_swap_data` instead of setting it within the constructor. @param _recovery Address that tokens are transferred to during an emergency token recovery. @param _owner Owner address. Can kill the contract, recover tokens and modify the recovery address. @param _emergency_owner Emergency owner address. Can kill the contract and recover tokens. """ self.pool_proxy = _pool_proxy self.recovery = _recovery self.owner = _owner self.emergency_owner = _emergency_owner @payable @external def __default__(): # required to receive ether during intermediate swaps pass @internal def _transfer_from(_coin: address, _from: address) -> (uint256, uint256): if _coin == ETH_ADDRESS: return self.balance, self.balance # transfer coins from caller amount: uint256 = ERC20(_coin).balanceOf(_from) if amount != 0: response: Bytes[32] = raw_call( _coin, _abi_encode( self.pool_proxy, self, amount, method_id=method_id("transferFrom(address,address,uint256)") ), max_outsize=32, ) if len(response) != 0: assert convert(response, bool) # get actual balance in case of transfer fee or pre-existing balance return ERC20(_coin).balanceOf(self), 0 @internal def _burn(_coin: address, _amount: uint256, _eth_amount: uint256): initial_balance: uint256 = 0 min_dy: uint256 = 0 i: uint256 = 0 j: uint256 = 0 swap_data: SwapData = self.swap_data[_coin] if swap_data.coin == ETH_ADDRESS: initial_balance = self.balance else: initial_balance = ERC20(swap_data.coin).balanceOf(self) oracle_price: uint256 = CryptoPool(swap_data.pool).price_oracle() if swap_data.i == 1: i = 1 min_dy = oracle_price * _amount / 10**18 * 98 / 100 else: j = 1 min_dy = _amount * 10**18 / oracle_price * 98 / 100 if _coin == ETH_ADDRESS or swap_data.coin == ETH_ADDRESS: CryptoPoolETH(swap_data.pool).exchange(i, j, _amount, 0, True, value=_eth_amount) else: CryptoPool(swap_data.pool).exchange(i, j, _amount, 0) if swap_data.coin == ETH_ADDRESS: assert self.balance - initial_balance >= min_dy, "Slippage" if swap_data.receiver != ZERO_ADDRESS: raw_call(swap_data.receiver, b"", value=self.balance) else: assert ERC20(swap_data.coin).balanceOf(self) - initial_balance >= min_dy, "Slippage" if swap_data.receiver != ZERO_ADDRESS: amount: uint256 = ERC20(swap_data.coin).balanceOf(self) response: Bytes[32] = raw_call( swap_data.coin, _abi_encode(swap_data.receiver, amount, method_id=method_id("transfer(address,uint256)")), max_outsize=32, ) if len(response) != 0: assert convert(response, bool) @payable @external def burn(_coin: address) -> bool: """ @notice Convert `_coin` by removing liquidity and transfer to another burner @param _coin Address of the coin being converted @return bool success """ assert not self.is_killed # dev: is killed amount: uint256 = 0 eth_amount: uint256 = 0 amount, eth_amount = self._transfer_from(_coin, self.pool_proxy) if amount != 0: self._burn(_coin, amount, eth_amount) return True @external def burn_amount(_coin: address, _amount_to_burn: uint256): """ @notice Burn a specific quantity of `_coin` @dev Useful when the total amount to burn is so large that it fails from slippage @param _coin Address of the coin being converted @param _amount_to_burn Amount of the coin to burn """ assert not self.is_killed # dev: is killed amount: uint256 = 0 eth_amount: uint256 = 0 pool_proxy: address = self.pool_proxy assert PoolProxy(pool_proxy).burners(_coin) == self amount, eth_amount = self._transfer_from(_coin, pool_proxy) assert amount >= _amount_to_burn, "Insufficient balance" self._burn(_coin, _amount_to_burn, eth_amount) @external def set_swap_data( _from: address, _to: address, _pool: address, _receiver: address, i: uint256, ) -> bool: """ @notice Set conversion and transfer data for `_from` @return bool success """ assert msg.sender in [self.owner, self.emergency_owner] # dev: only owner self.swap_data[_from] = SwapData({ pool: _pool, coin: _to, receiver: _receiver, i: i }) if _from != ETH_ADDRESS: response: Bytes[32] = raw_call( _from, _abi_encode(_pool, MAX_UINT256, method_id=method_id("approve(address,uint256)")), max_outsize=32, ) if len(response) != 0: assert convert(response, bool) return True @external def recover_balance(_coin: address) -> bool: """ @notice Recover ERC20 tokens from this contract @dev Tokens are sent to the recovery address @param _coin Token address @return bool success """ assert msg.sender in [self.owner, self.emergency_owner] # dev: only owner amount: uint256 = ERC20(_coin).balanceOf(self) response: Bytes[32] = raw_call( _coin, _abi_encode(self.recovery, amount, method_id=method_id("transfer(address,uint256)")), max_outsize=32, ) if len(response) != 0: assert convert(response, bool) return True @external def set_recovery(_recovery: address) -> bool: """ @notice Set the token recovery address @param _recovery Token recovery address @return bool success """ assert msg.sender == self.owner # dev: only owner self.recovery = _recovery return True @external def set_killed(_is_killed: bool) -> bool: """ @notice Set killed status for this contract @dev When killed, the `burn` function cannot be called @param _is_killed Killed status @return bool success """ assert msg.sender in [self.owner, self.emergency_owner] # dev: only owner self.is_killed = _is_killed return True @external def commit_transfer_ownership(_future_owner: address) -> bool: """ @notice Commit a transfer of ownership @dev Must be accepted by the new owner via `accept_transfer_ownership` @param _future_owner New owner address @return bool success """ assert msg.sender == self.owner # dev: only owner self.future_owner = _future_owner return True @external def accept_transfer_ownership() -> bool: """ @notice Accept a transfer of ownership @return bool success """ assert msg.sender == self.future_owner # dev: only owner self.owner = msg.sender return True @external def commit_transfer_emergency_ownership(_future_owner: address) -> bool: """ @notice Commit a transfer of ownership @dev Must be accepted by the new owner via `accept_transfer_ownership` @param _future_owner New owner address @return bool success """ assert msg.sender == self.emergency_owner # dev: only owner self.future_emergency_owner = _future_owner return True @external def accept_transfer_emergency_ownership() -> bool: """ @notice Accept a transfer of ownership @return bool success """ assert msg.sender == self.future_emergency_owner # dev: only owner self.emergency_owner = msg.sender return True
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"stateMutability":"nonpayable","type":"constructor","inputs":[{"name":"_pool_proxy","type":"address"},{"name":"_recovery","type":"address"},{"name":"_owner","type":"address"},{"name":"_emergency_owner","type":"address"}],"outputs":[]},{"stateMutability":"payable","type":"fallback"},{"stateMutability":"payable","type":"function","name":"burn","inputs":[{"name":"_coin","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":112531},{"stateMutability":"nonpayable","type":"function","name":"burn_amount","inputs":[{"name":"_coin","type":"address"},{"name":"_amount_to_burn","type":"uint256"}],"outputs":[],"gas":115128},{"stateMutability":"nonpayable","type":"function","name":"set_swap_data","inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_pool","type":"address"},{"name":"_receiver","type":"address"},{"name":"i","type":"uint256"}],"outputs":[{"name":"","type":"bool"}],"gas":153520},{"stateMutability":"nonpayable","type":"function","name":"recover_balance","inputs":[{"name":"_coin","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":17324},{"stateMutability":"nonpayable","type":"function","name":"set_recovery","inputs":[{"name":"_recovery","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":37995},{"stateMutability":"nonpayable","type":"function","name":"set_killed","inputs":[{"name":"_is_killed","type":"bool"}],"outputs":[{"name":"","type":"bool"}],"gas":40573},{"stateMutability":"nonpayable","type":"function","name":"commit_transfer_ownership","inputs":[{"name":"_future_owner","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":38055},{"stateMutability":"nonpayable","type":"function","name":"accept_transfer_ownership","inputs":[],"outputs":[{"name":"","type":"bool"}],"gas":37924},{"stateMutability":"nonpayable","type":"function","name":"commit_transfer_emergency_ownership","inputs":[{"name":"_future_owner","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":38115},{"stateMutability":"nonpayable","type":"function","name":"accept_transfer_emergency_ownership","inputs":[],"outputs":[{"name":"","type":"bool"}],"gas":37984},{"stateMutability":"view","type":"function","name":"swap_data","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"tuple","components":[{"name":"pool","type":"address"},{"name":"coin","type":"address"},{"name":"receiver","type":"address"},{"name":"i","type":"uint256"}]}],"gas":9587},{"stateMutability":"view","type":"function","name":"pool_proxy","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":2946},{"stateMutability":"view","type":"function","name":"recovery","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":2976},{"stateMutability":"view","type":"function","name":"is_killed","inputs":[],"outputs":[{"name":"","type":"bool"}],"gas":3006},{"stateMutability":"view","type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":3036},{"stateMutability":"view","type":"function","name":"emergency_owner","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":3066},{"stateMutability":"view","type":"function","name":"future_owner","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":3096},{"stateMutability":"view","type":"function","name":"future_emergency_owner","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":3126}]
Contract Creation Code
6020610f3b60c03960c0518060a01c610f36578090506101405260206020610f3b0160c03960c0518060a01c610f36578090506101605260206040610f3b0160c03960c0518060a01c610f36578090506101805260206060610f3b0160c03960c0518060a01c610f36578090506101a0526101405160025561016051600355610180516005556101a051600655610f1e56600436101561000d57610826565b60046000601c376000516389afcb448114156100aa576004358060a01c610e885780905061046052600454610e88576040366104803761046051610140526002546101605261005d6104c0610828565b6104c080516104805260208101516104a05250600061048051181561009d57610460516101405261048051610160526104a0516101805261009c6109a6565b5b60016104c05260206104c0f35b637afb0ed18114156101bd576004358060a01c610e88578090506104605234610e8857600454610e8857604036610480376002546104c052306303d41e0e6104e052610460516105005260206104e060246104fc6104c0515afa15610e8857601f3d1115610e88576104e0511415610e885761046051610140526104c051610160526101376104e0610828565b6104e080516104805260208101516104a0525060243561048051101561019c576308c379a06104e0526020610500526014610520527f496e73756666696369656e742062616c616e6365000000000000000000000000610540526105205060646104fcfd5b6104605161014052602435610160526104a051610180526101bb6109a6565b005b63ec5956948114156103b8576004358060a01c610e8857809050610140526024358060a01c610e8857809050610160526044358060a01c610e8857809050610180526064358060a01c610e88578090506101a05234610e88576005546101e0526006546102005260006101c0526101c061012060006002818352015b610120516020026101e001513314156102555760018352610265565b8151600101808352811415610239575b5050506101c05115610e885760016101405160e05260c052604060c0206101805181556101605160018201556101a051600282015560843560038201555073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6101405118156103ab5763095ea7b361020452600461018051610224527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61024452604001610200526102008051602001806102808284600060045af115610e885750506020610320610280516102a06000610140515af115610e885760203d808211156103465780610348565b815b90509050610300526103008051602001806101c08284600060045af115610e8857505060006101c05118156103aa576101c08060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b5b60016101c05260206101c0f35b63db2f5f79811415610541576004358060a01c610e88578090506101405234610e8857600554610180526006546101a05260006101605261016061012060006002818352015b61012051602002610180015133141561041a576001835261042a565b81516001018083528114156103fe575b5050506101605115610e88576370a0823161018052306101a0526020610180602461019c610140515afa15610e8857601f3d1115610e8857610180516101605263a9059cbb6101c45260046003546101e45261016051610204526040016101c0526101c08051602001806102408284600060045af115610e8857505060206102e0610240516102606000610140515af115610e885760203d808211156104d057806104d2565b815b905090506102c0526102c08051602001806101808284600060045af115610e885750506000610180511815610534576101808060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b60016101c05260206101c0f35b635dc659b0811415610582576004358060a01c610e88578090506101405234610e8857600554331415610e8857610140516003556001610160526020610160f35b6390b22997811415610614576004358060011c610e88578090506101405234610e8857600554610180526006546101a05260006101605261016061012060006002818352015b6101205160200261018001513314156105e457600183526105f4565b81516001018083528114156105c8575b5050506101605115610e8857610140516004556001610160526020610160f35b636b441a40811415610655576004358060a01c610e88578090506101405234610e8857600554331415610e8857610140516007556001610160526020610160f35b63e5ea47b88114156106815734610e8857600754331415610e8857336005556001610140526020610140f35b6395c899158114156106c2576004358060a01c610e88578090506101405234610e8857600654331415610e8857610140516008556001610160526020610160f35b632d2cb6758114156106ee5734610e8857600854331415610e8857336006556001610140526020610140f35b6312946aae81141561074b576004358060a01c610e88578090506101405234610e885760016101405160e05260c052604060c02080546101605260018101546101805260028101546101a05260038101546101c052506080610160f35b6391db89f381141561076a5734610e8857600254610140526020610140f35b63ddceafa98114156107895734610e8857600354610140526020610140f35b639c868ac08114156107a85734610e8857600454610140526020610140f35b638da5cb5b8114156107c75734610e8857600554610140526020610140f35b6363a4042a8114156107e65734610e8857600654610140526020610140f35b631ec0cdc18114156108055734610e8857600754610140526020610140f35b63e19f994c8114156108245734610e8857600854610140526020610140f35b505b005b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee61014051141561085657478152476020820152506109a4565b6370a082316101a052610160516101c05260206101a060246101bc610140515afa15610e8857601f3d1115610e88576101a051610180526000610180511815610969576323b872dd6101e452600460025461020452306102245261018051610244526060016101e0526101e08051602001806102808284600060045af115610e885750506020610340610280516102a06000610140515af115610e885760203d808211156109045780610906565b815b90509050610320526103208051602001806101a08284600060045af115610e8857505060006101a0511815610968576101a08060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b5b6370a082316101a052306101c05260206101a060246101bc610140515afa15610e8857601f3d1115610e88576101a051815260006020820152505b565b6080366101a03760016101405160e05260c052604060c0208054610220526001810154610240526002810154610260526003810154610280525073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee610240511415610a0957476101a052610a3e565b6370a082316102a052306102c05260206102a060246102bc610240515afa15610e8857601f3d1115610e88576102a0516101a0525b6386fc88d36102c05260206102c060046102dc610220515afa15610e8857601f3d1115610e88576102c0516102a0526001610280511415610ad95760016101e0526102a05161016051808202821582848304141715610e885780905090509050670de0b6b3a7640000808204905090506062808202821582848304141715610e8857809050905090506064808204905090506101c052610b3b565b60016102005261016051670de0b6b3a7640000808202821582848304141715610e8857809050905090506102a051808015610e88578204905090506062808202821582848304141715610e8857809050905090506064808204905090506101c0525b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee610140511415610b61576001610b7c565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee61024051145b15610bd55763394747c56102c0526101e0516102e05261020051610300526101605161032052600061034052600161036052610220513b15610e88576000600060a46102dc61018051610220515af115610e8857610c1d565b635b41b9086102c0526101e0516102e05261020051610300526101605161032052600061034052610220513b15610e88576000600060846102dc6000610220515af115610e88575b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee610240511415610ce8576101c051476101a051808210610e8857808203905090501015610c9e576308c379a06102c05260206102e0526008610300527f536c697070616765000000000000000000000000000000000000000000000000610320526103005060646102dcfd5b6000610260511815610ce35760006102c0526102c08051602001806102e08284600060045af115610e88575050600060006102e05161030047610260515af115610e88575b610e86565b6101c0516370a082316102c052306102e05260206102c060246102dc610240515afa15610e8857601f3d1115610e88576102c0516101a051808210610e8857808203905090501015610d79576308c379a0610300526020610320526008610340527f536c6970706167650000000000000000000000000000000000000000000000006103605261034050606461031cfd5b6000610260511815610e85576370a082316102e052306103005260206102e060246102fc610240515afa15610e8857601f3d1115610e88576102e0516102c05263a9059cbb61032452600461026051610344526102c05161036452604001610320526103208051602001806103a08284600060045af115610e8857505060206104406103a0516103c06000610240515af115610e885760203d80821115610e205780610e22565b815b90509050610420526104208051602001806102e08284600060045af115610e8857505060006102e0511815610e84576102e08060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b5b5b565b600080fd5b610091610f1e03610091600039610091610f1e036000f35b600080fd000000000000000000000000ecb456ea5365865ebab8a2661b0c503410e9b347000000000000000000000000ecb456ea5365865ebab8a2661b0c503410e9b3470000000000000000000000007eeac6cddbd1d0b8af061742d41877d7f707289a000000000000000000000000467947ee34af926cf1dcac093870f613c96b1e0c
Deployed Bytecode
0x600436101561000d57610826565b60046000601c376000516389afcb448114156100aa576004358060a01c610e885780905061046052600454610e88576040366104803761046051610140526002546101605261005d6104c0610828565b6104c080516104805260208101516104a05250600061048051181561009d57610460516101405261048051610160526104a0516101805261009c6109a6565b5b60016104c05260206104c0f35b637afb0ed18114156101bd576004358060a01c610e88578090506104605234610e8857600454610e8857604036610480376002546104c052306303d41e0e6104e052610460516105005260206104e060246104fc6104c0515afa15610e8857601f3d1115610e88576104e0511415610e885761046051610140526104c051610160526101376104e0610828565b6104e080516104805260208101516104a0525060243561048051101561019c576308c379a06104e0526020610500526014610520527f496e73756666696369656e742062616c616e6365000000000000000000000000610540526105205060646104fcfd5b6104605161014052602435610160526104a051610180526101bb6109a6565b005b63ec5956948114156103b8576004358060a01c610e8857809050610140526024358060a01c610e8857809050610160526044358060a01c610e8857809050610180526064358060a01c610e88578090506101a05234610e88576005546101e0526006546102005260006101c0526101c061012060006002818352015b610120516020026101e001513314156102555760018352610265565b8151600101808352811415610239575b5050506101c05115610e885760016101405160e05260c052604060c0206101805181556101605160018201556101a051600282015560843560038201555073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6101405118156103ab5763095ea7b361020452600461018051610224527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61024452604001610200526102008051602001806102808284600060045af115610e885750506020610320610280516102a06000610140515af115610e885760203d808211156103465780610348565b815b90509050610300526103008051602001806101c08284600060045af115610e8857505060006101c05118156103aa576101c08060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b5b60016101c05260206101c0f35b63db2f5f79811415610541576004358060a01c610e88578090506101405234610e8857600554610180526006546101a05260006101605261016061012060006002818352015b61012051602002610180015133141561041a576001835261042a565b81516001018083528114156103fe575b5050506101605115610e88576370a0823161018052306101a0526020610180602461019c610140515afa15610e8857601f3d1115610e8857610180516101605263a9059cbb6101c45260046003546101e45261016051610204526040016101c0526101c08051602001806102408284600060045af115610e8857505060206102e0610240516102606000610140515af115610e885760203d808211156104d057806104d2565b815b905090506102c0526102c08051602001806101808284600060045af115610e885750506000610180511815610534576101808060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b60016101c05260206101c0f35b635dc659b0811415610582576004358060a01c610e88578090506101405234610e8857600554331415610e8857610140516003556001610160526020610160f35b6390b22997811415610614576004358060011c610e88578090506101405234610e8857600554610180526006546101a05260006101605261016061012060006002818352015b6101205160200261018001513314156105e457600183526105f4565b81516001018083528114156105c8575b5050506101605115610e8857610140516004556001610160526020610160f35b636b441a40811415610655576004358060a01c610e88578090506101405234610e8857600554331415610e8857610140516007556001610160526020610160f35b63e5ea47b88114156106815734610e8857600754331415610e8857336005556001610140526020610140f35b6395c899158114156106c2576004358060a01c610e88578090506101405234610e8857600654331415610e8857610140516008556001610160526020610160f35b632d2cb6758114156106ee5734610e8857600854331415610e8857336006556001610140526020610140f35b6312946aae81141561074b576004358060a01c610e88578090506101405234610e885760016101405160e05260c052604060c02080546101605260018101546101805260028101546101a05260038101546101c052506080610160f35b6391db89f381141561076a5734610e8857600254610140526020610140f35b63ddceafa98114156107895734610e8857600354610140526020610140f35b639c868ac08114156107a85734610e8857600454610140526020610140f35b638da5cb5b8114156107c75734610e8857600554610140526020610140f35b6363a4042a8114156107e65734610e8857600654610140526020610140f35b631ec0cdc18114156108055734610e8857600754610140526020610140f35b63e19f994c8114156108245734610e8857600854610140526020610140f35b505b005b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee61014051141561085657478152476020820152506109a4565b6370a082316101a052610160516101c05260206101a060246101bc610140515afa15610e8857601f3d1115610e88576101a051610180526000610180511815610969576323b872dd6101e452600460025461020452306102245261018051610244526060016101e0526101e08051602001806102808284600060045af115610e885750506020610340610280516102a06000610140515af115610e885760203d808211156109045780610906565b815b90509050610320526103208051602001806101a08284600060045af115610e8857505060006101a0511815610968576101a08060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b5b6370a082316101a052306101c05260206101a060246101bc610140515afa15610e8857601f3d1115610e88576101a051815260006020820152505b565b6080366101a03760016101405160e05260c052604060c0208054610220526001810154610240526002810154610260526003810154610280525073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee610240511415610a0957476101a052610a3e565b6370a082316102a052306102c05260206102a060246102bc610240515afa15610e8857601f3d1115610e88576102a0516101a0525b6386fc88d36102c05260206102c060046102dc610220515afa15610e8857601f3d1115610e88576102c0516102a0526001610280511415610ad95760016101e0526102a05161016051808202821582848304141715610e885780905090509050670de0b6b3a7640000808204905090506062808202821582848304141715610e8857809050905090506064808204905090506101c052610b3b565b60016102005261016051670de0b6b3a7640000808202821582848304141715610e8857809050905090506102a051808015610e88578204905090506062808202821582848304141715610e8857809050905090506064808204905090506101c0525b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee610140511415610b61576001610b7c565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee61024051145b15610bd55763394747c56102c0526101e0516102e05261020051610300526101605161032052600061034052600161036052610220513b15610e88576000600060a46102dc61018051610220515af115610e8857610c1d565b635b41b9086102c0526101e0516102e05261020051610300526101605161032052600061034052610220513b15610e88576000600060846102dc6000610220515af115610e88575b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee610240511415610ce8576101c051476101a051808210610e8857808203905090501015610c9e576308c379a06102c05260206102e0526008610300527f536c697070616765000000000000000000000000000000000000000000000000610320526103005060646102dcfd5b6000610260511815610ce35760006102c0526102c08051602001806102e08284600060045af115610e88575050600060006102e05161030047610260515af115610e88575b610e86565b6101c0516370a082316102c052306102e05260206102c060246102dc610240515afa15610e8857601f3d1115610e88576102c0516101a051808210610e8857808203905090501015610d79576308c379a0610300526020610320526008610340527f536c6970706167650000000000000000000000000000000000000000000000006103605261034050606461031cfd5b6000610260511815610e85576370a082316102e052306103005260206102e060246102fc610240515afa15610e8857601f3d1115610e88576102e0516102c05263a9059cbb61032452600461026051610344526102c05161036452604001610320526103208051602001806103a08284600060045af115610e8857505060206104406103a0516103c06000610240515af115610e885760203d80821115610e205780610e22565b815b90509050610420526104208051602001806102e08284600060045af115610e8857505060006102e0511815610e84576102e08060200151600082518060209013610e885780919012610e8857806020036101000a820490509050905015610e88575b5b5b565b600080fd
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000ecb456ea5365865ebab8a2661b0c503410e9b347000000000000000000000000ecb456ea5365865ebab8a2661b0c503410e9b3470000000000000000000000007eeac6cddbd1d0b8af061742d41877d7f707289a000000000000000000000000467947ee34af926cf1dcac093870f613c96b1e0c
-----Decoded View---------------
Arg [0] : _pool_proxy (address): 0xeCb456EA5365865EbAb8a2661B0c503410e9B347
Arg [1] : _recovery (address): 0xeCb456EA5365865EbAb8a2661B0c503410e9B347
Arg [2] : _owner (address): 0x7EeAC6CDdbd1D0B8aF061742D41877D7F707289a
Arg [3] : _emergency_owner (address): 0x467947EE34aF926cF1DCac093870f613C96B1E0c
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000ecb456ea5365865ebab8a2661b0c503410e9b347
Arg [1] : 000000000000000000000000ecb456ea5365865ebab8a2661b0c503410e9b347
Arg [2] : 0000000000000000000000007eeac6cddbd1d0b8af061742d41877d7f707289a
Arg [3] : 000000000000000000000000467947ee34af926cf1dcac093870f613c96b1e0c
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.