Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 163 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Divest Eth Pair ... | 12233388 | 1355 days ago | IN | 0.01 ETH | 0.04174932 | ||||
Divest Eth Pair ... | 12233359 | 1355 days ago | IN | 0.01 ETH | 0.05030031 | ||||
Divest Eth Pair ... | 12233339 | 1355 days ago | IN | 0.01 ETH | 0.05457584 | ||||
Divest Eth Pair ... | 12228589 | 1356 days ago | IN | 0.01 ETH | 0.02198989 | ||||
Divest Eth Pair ... | 12227377 | 1356 days ago | IN | 0.01 ETH | 0.00874608 | ||||
Divest Eth Pair ... | 12227368 | 1356 days ago | IN | 0.01 ETH | 0.00874765 | ||||
Divest Eth Pair ... | 12227251 | 1356 days ago | IN | 0.01 ETH | 0.0066764 | ||||
Divest Eth Pair ... | 12227049 | 1356 days ago | IN | 0.01 ETH | 0.00859048 | ||||
Divest Eth Pair ... | 12227027 | 1356 days ago | IN | 0.01 ETH | 0.00859048 | ||||
Divest Eth Pair ... | 12227008 | 1356 days ago | IN | 0.01 ETH | 0.00859048 | ||||
Divest Eth Pair ... | 12226983 | 1356 days ago | IN | 0.01 ETH | 0.0308438 | ||||
Divest Eth Pair ... | 12226967 | 1356 days ago | IN | 0.01 ETH | 0.00859048 | ||||
Divest Eth Pair ... | 12221201 | 1357 days ago | IN | 0.01 ETH | 0.01580845 | ||||
Divest Eth Pair ... | 12219303 | 1357 days ago | IN | 0.01 ETH | 0.01619632 | ||||
Divest Eth Pair ... | 12214542 | 1358 days ago | IN | 0.01 ETH | 0.01711094 | ||||
Divest Eth Pair ... | 12214310 | 1358 days ago | IN | 0.01 ETH | 0.01804194 | ||||
Divest Eth Pair ... | 12212151 | 1358 days ago | IN | 0.01 ETH | 0.01781552 | ||||
Divest Eth Pair ... | 12211251 | 1359 days ago | IN | 0.01 ETH | 0.01868794 | ||||
Divest Eth Pair ... | 12209873 | 1359 days ago | IN | 0.01 ETH | 0.0283626 | ||||
Divest Eth Pair ... | 12204101 | 1360 days ago | IN | 0.01 ETH | 0.02294124 | ||||
Divest Eth Pair ... | 12203286 | 1360 days ago | IN | 0.01 ETH | 0.02057546 | ||||
Divest Eth Pair ... | 12202707 | 1360 days ago | IN | 0.01 ETH | 0.02441255 | ||||
Divest Eth Pair ... | 12197606 | 1361 days ago | IN | 0.01 ETH | 0.02456742 | ||||
Divest Eth Pair ... | 12197404 | 1361 days ago | IN | 0.01 ETH | 0.00688151 | ||||
Divest Eth Pair ... | 12197347 | 1361 days ago | IN | 0.01 ETH | 0.00688296 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
12233388 | 1355 days ago | 4.27542048 ETH | ||||
12233388 | 1355 days ago | 4.27542048 ETH | ||||
12233388 | 1355 days ago | 0.01 ETH | ||||
12233359 | 1355 days ago | 13.38075691 ETH | ||||
12233359 | 1355 days ago | 13.38075691 ETH | ||||
12233359 | 1355 days ago | 0.01 ETH | ||||
12233339 | 1355 days ago | 0.01 ETH | ||||
12228589 | 1356 days ago | 0.01 ETH | ||||
12227377 | 1356 days ago | 0.01 ETH | ||||
12227368 | 1356 days ago | 0.01 ETH | ||||
12227251 | 1356 days ago | 0.01 ETH | ||||
12227049 | 1356 days ago | 0.01 ETH | ||||
12227027 | 1356 days ago | 0.01 ETH | ||||
12227008 | 1356 days ago | 0.01 ETH | ||||
12226983 | 1356 days ago | 3.265012 ETH | ||||
12226983 | 1356 days ago | 3.265012 ETH | ||||
12226983 | 1356 days ago | 0.01 ETH | ||||
12226967 | 1356 days ago | 0.01 ETH | ||||
12221201 | 1357 days ago | 0.19538255 ETH | ||||
12221201 | 1357 days ago | 0.19538255 ETH | ||||
12221201 | 1357 days ago | 0.01 ETH | ||||
12219303 | 1357 days ago | 0.82120283 ETH | ||||
12219303 | 1357 days ago | 0.82120283 ETH | ||||
12219303 | 1357 days ago | 0.01 ETH | ||||
12214542 | 1358 days ago | 0.27489153 ETH |
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xD0ae33eA...57f90B0De The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Vyper_contract
Compiler Version
vyper:0.2.8
Contract Source Code (Vyper language format)
# Copyright (C) 2021 VolumeFi Software, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the Apache 2.0 License. # This program is distributed WITHOUT ANY WARRANTY without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # @author VolumeFi, Software inc. # @notice This Vyper contract adds liquidity to any Uniswap V2 pool using ETH or any ERC20 Token. # SPDX-License-Identifier: Apache-2.0 # @version ^0.2.0 interface ERC20: def approve(spender: address, amount: uint256): nonpayable def transfer(recipient: address, amount: uint256): nonpayable def transferFrom(sender: address, recipient: address, amount: uint256): nonpayable interface UniswapV2Pair: def token0() -> address: view def token1() -> address: view interface UniswapV2Router02: def removeLiquidity(tokenA: address, tokenB: address, liquidity: uint256, amountAMin: uint256, amountBMin: uint256, to: address, deadline: uint256) -> (uint256, uint256): nonpayable interface WrappedEth: def withdraw(wad: uint256): nonpayable UNISWAPV2ROUTER02: constant(address) = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D VETH: constant(address) = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE WETH: constant(address) = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 DEADLINE: constant(uint256) = MAX_UINT256 # change paused: public(bool) admin: public(address) feeAmount: public(uint256) feeAddress: public(address) @external def __init__(): self.paused = False self.admin = msg.sender self.feeAddress = 0xf29399fB3311082d9F8e62b988cBA44a5a98ebeD self.feeAmount = 1 * 10 ** 16 @internal def _token2Token(fromToken: address, toToken: address, tokens2Trade: uint256, to: address, deadline: uint256) -> uint256: if fromToken == toToken: return tokens2Trade ERC20(fromToken).approve(UNISWAPV2ROUTER02, 0) ERC20(fromToken).approve(UNISWAPV2ROUTER02, tokens2Trade) addrBytes: Bytes[288] = concat(convert(tokens2Trade, bytes32), convert(0, bytes32), convert(160, bytes32), convert(to, bytes32), convert(deadline, bytes32), convert(2, bytes32), convert(fromToken, bytes32), convert(toToken, bytes32)) funcsig: Bytes[4] = method_id("swapExactTokensForTokens(uint256,uint256,address[],address,uint256)") full_data: Bytes[292] = concat(funcsig, addrBytes) _response: Bytes[128] = raw_call( UNISWAPV2ROUTER02, full_data, max_outsize=128 ) tokenBought: uint256 = convert(slice(_response, 96, 32), uint256) assert tokenBought > 0, "Error Swapping Token 2" return tokenBought @external @payable @nonreentrant('lock') def divestEthPairToToken(pair: address, token: address, amount: uint256, deadline: uint256=MAX_UINT256) -> uint256: assert not self.paused, "Paused" fee: uint256 = self.feeAmount msg_value: uint256 = msg.value assert msg.value >= fee, "Insufficient fee" if msg.value > fee: send(msg.sender, msg.value - fee) send(self.feeAddress, fee) assert pair != ZERO_ADDRESS, "Invalid Unipool Address" token0: address = UniswapV2Pair(pair).token0() token1: address = UniswapV2Pair(pair).token1() assert token0 == WETH or token1 == WETH, "Not ETH Pair" ERC20(pair).transferFrom(msg.sender, self, amount) ERC20(pair).approve(UNISWAPV2ROUTER02, amount) token0Amount: uint256 = 0 token1Amount: uint256 = 0 (token0Amount, token1Amount) = UniswapV2Router02(UNISWAPV2ROUTER02).removeLiquidity(token0, token1, amount, 1, 1, self, deadline) tokenAmount: uint256 = 0 if token == token0: tokenAmount = token0Amount + self._token2Token(token1, token0, token1Amount, self, deadline) ERC20(token).transfer(msg.sender, tokenAmount) elif token == token1: tokenAmount = token1Amount + self._token2Token(token0, token1, token0Amount, self, deadline) ERC20(token).transfer(msg.sender, tokenAmount) elif token == VETH or token == ZERO_ADDRESS: if token0 == WETH: tokenAmount = token0Amount + self._token2Token(token1, token0, token1Amount, self, deadline) else: tokenAmount = token1Amount + self._token2Token(token0, token1, token0Amount, self, deadline) WrappedEth(WETH).withdraw(tokenAmount) send(msg.sender, tokenAmount) elif token0 == WETH: tokenAmount = token0Amount + self._token2Token(token1, token0, token1Amount, self, deadline) tokenAmount = self._token2Token(WETH, token, tokenAmount, msg.sender, deadline) elif token1 == WETH: tokenAmount = token1Amount + self._token2Token(token0, token1, token0Amount, self, deadline) tokenAmount = self._token2Token(WETH, token, tokenAmount, msg.sender, deadline) else: raise "Token ERROR" return tokenAmount # Admin functions @external def pause(_paused: bool): assert msg.sender == self.admin, "Not admin" self.paused = _paused @external def newAdmin(_admin: address): assert msg.sender == self.admin, "Not admin" self.admin = _admin @external def newFeeAmount(_feeAmount: uint256): assert msg.sender == self.admin, "Not admin" self.feeAmount = _feeAmount @external def newFeeAddress(_feeAddress: address): assert msg.sender == self.admin, "Not admin" self.feeAddress = _feeAddress @external @payable def __default__(): pass
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"outputs":[],"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"name":"divestEthPairToToken","outputs":[{"type":"uint256","name":""}],"inputs":[{"type":"address","name":"pair"},{"type":"address","name":"token"},{"type":"uint256","name":"amount"}],"stateMutability":"payable","type":"function"},{"name":"divestEthPairToToken","outputs":[{"type":"uint256","name":""}],"inputs":[{"type":"address","name":"pair"},{"type":"address","name":"token"},{"type":"uint256","name":"amount"},{"type":"uint256","name":"deadline"}],"stateMutability":"payable","type":"function"},{"name":"pause","outputs":[],"inputs":[{"type":"bool","name":"_paused"}],"stateMutability":"nonpayable","type":"function","gas":36397},{"name":"newAdmin","outputs":[],"inputs":[{"type":"address","name":"_admin"}],"stateMutability":"nonpayable","type":"function","gas":36427},{"name":"newFeeAmount","outputs":[],"inputs":[{"type":"uint256","name":"_feeAmount"}],"stateMutability":"nonpayable","type":"function","gas":36357},{"name":"newFeeAddress","outputs":[],"inputs":[{"type":"address","name":"_feeAddress"}],"stateMutability":"nonpayable","type":"function","gas":36487},{"stateMutability":"payable","type":"fallback"},{"name":"paused","outputs":[{"type":"bool","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1331},{"name":"admin","outputs":[{"type":"address","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1361},{"name":"feeAmount","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1391},{"name":"feeAddress","outputs":[{"type":"address","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1421}]
Deployed Bytecode
0x600436101561000d576111ce565b600035601c526000156103ce575b6101e0526101405261016052610180526101a0526101c0526101605161014051141561005257610180516000526000516101e05156505b610140513b61006057600080fd5b60006000604463095ea7b361020052737a250d5630b4cf539739df2c5dacb4c659f2488d6102205260006102405261021c6000610140515af16100a257600080fd5b610140513b6100b057600080fd5b60006000604463095ea7b361020052737a250d5630b4cf539739df2c5dacb4c659f2488d61022052610180516102405261021c6000610140515af16100f457600080fd5b600061018051602082610360010152602081019050600060208261036001015260208101905060a06020826103600101526020810190506101a0516020826103600101526020810190506101c05160208261036001015260208101905060026020826103600101526020810190506101405160208261036001015260208101905061016051602082610360010152602081019050806103605261036090508051602001806102008284600060045af16101ac57600080fd5b505060046103c0527f38ed1739000000000000000000000000000000000000000000000000000000006103e0526103c08051602001806103608284600060045af16101f657600080fd5b5050600061036060048060208461054001018260208501600060045af15050805182019150506102006101208060208461054001018260208501600060045af1505080518201915050806105405261054090508051602001806103c08284600060045af161026357600080fd5b50506103c08051602001806106008284600060045af161028257600080fd5b505060806107a0610600516106206000737a250d5630b4cf539739df2c5dacb4c659f2488d5af16102b257600080fd5b60803d808211156102c357806102c5565b815b90509050610780526107808051602001806105408284600060045af16102ea57600080fd5b505060606020602082066107000161054051828401111561030a57600080fd5b6080806107208260206020880688030161054001600060045af150508181528090509050905080602001516000825180602090131561034857600080fd5b809190121561035657600080fd5b806020036101000a8204905090509050610600526000610600511115156103bc576308c379a0610620526020610640526016610660527f4572726f72205377617070696e6720546f6b656e2032000000000000000000006106805261066050606461063cfd5b610600516000526000516101e0515650005b6375a0389f6000511415610406577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101405261042c565b63c7f91fd7600051141561042457602060646101403760005061042c565b600015610f3d575b62ffffff541561043b57600080fd5b600162ffffff5560043560a01c1561045257600080fd5b60243560a01c1561046257600080fd5b6000541515156104b1576308c379a06101605260206101805260066101a0527f50617573656400000000000000000000000000000000000000000000000000006101c0526101a050606461017cfd5b60025461016052346101805261016051341015151561050f576308c379a06101a05260206101c05260106101e0527f496e73756666696369656e742066656500000000000000000000000000000000610200526101e05060646101bcfd5b6101605134111561054957600060006000600034610160518082101561053457600080fd5b80820390509050336000f161054857600080fd5b5b6000600060006000610160516003546000f161056457600080fd5b6000600435141515156105b6576308c379a06101a05260206101c05260176101e0527f496e76616c696420556e69706f6f6c2041646472657373000000000000000000610200526101e05060646101bcfd5b60206102206004630dfe16816101c0526101dc6004355afa6105d757600080fd5b601f3d116105e457600080fd5b600050610220516101a0526020610240600463d21220a76101e0526101fc6004355afa61061057600080fd5b601f3d1161061d57600080fd5b600050610240516101c05273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101a051141561064e576001610669565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101c051145b5b15156106b5576308c379a06101e052602061020052600c610220527f4e6f742045544820506169720000000000000000000000000000000000000000610240526102205060646101fcfd5b6004353b6106c257600080fd5b6000600060646323b872dd6101e05233610200523061022052604435610240526101fc60006004355af16106f557600080fd5b6004353b61070257600080fd5b60006000604463095ea7b36101e052737a250d5630b4cf539739df2c5dacb4c659f2488d61020052604435610220526101fc60006004355af161074457600080fd5b6040366101e037604061036060e463baa2abde610220526101a051610240526101c051610260526044356102805260016102a05260016102c052306102e052610140516103005261023c6000737a250d5630b4cf539739df2c5dacb4c659f2488d5af16107b057600080fd5b603f3d116107bd57600080fd5b61036080808080516103a0525050602081019050808080516103c052505050506000506103a080516101e052806020015161020052506000610220526101a05160243514156108ef576101e0516101405161016051610180516101a0516101c0516101e05161020051610220516101c051610240526101a051610260526102005161028052306102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a052610180526101605261014052610320518181830110156108a357600080fd5b80820190509050610220526024353b6108bb57600080fd5b60006000604463a9059cbb610240523361026052610220516102805261025c60006024355af16108ea57600080fd5b610f20565b6101c05160243514156109e557610200516101405161016051610180516101a0516101c0516101e05161020051610220516101a051610240526101c051610260526101e05161028052306102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a0526101805261016052610140526103205181818301101561099957600080fd5b80820190509050610220526024353b6109b157600080fd5b60006000604463a9059cbb610240523361026052610220516102805261025c60006024355af16109e057600080fd5b610f1f565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6024351415610a0a576001610a0f565b602435155b5b15610c035773c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101a0511415610ae1576101e0516101405161016051610180516101a0516101c0516101e05161020051610220516101c051610240526101a051610260526102005161028052306102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a05261018052610160526101405261032051818183011015610ad157600080fd5b8082019050905061022052610b8a565b610200516101405161016051610180516101a0516101c0516101e05161020051610220516101a051610240526101c051610260526101e05161028052306102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a05261018052610160526101405261032051818183011015610b7e57600080fd5b80820190509050610220525b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc23b610ba957600080fd5b600060006024632e1a7d4d61024052610220516102605261025c600073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1610be557600080fd5b600060006000600061022051336000f1610bfe57600080fd5b610f1e565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101a0511415610d6d576101e0516101405161016051610180516101a0516101c0516101e05161020051610220516101c051610240526101a051610260526102005161028052306102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a05261018052610160526101405261032051818183011015610cbf57600080fd5b80820190509050610220526101405161016051610180516101a0516101c0516101e051610200516102205173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc261024052602435610260526102205161028052336102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a0526101805261016052610140526103205161022052610f1d565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26101c0511415610ed757610200516101405161016051610180516101a0516101c0516101e05161020051610220516101a051610240526101c051610260526101e05161028052306102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a05261018052610160526101405261032051818183011015610e2957600080fd5b80820190509050610220526101405161016051610180516101a0516101c0516101e051610200516102205173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc261024052602435610260526102205161028052336102a052610140516102c0526102c0516102a0516102805161026051610240516006580161001b565b6103205261022052610200526101e0526101c0526101a0526101805261016052610140526103205161022052610f1c565b6308c379a061024052602061026052600b610280527f546f6b656e204552524f520000000000000000000000000000000000000000006102a05261028050606461025cfd5b5b5b5b5b61022051600052600062ffffff5560206000f350600062ffffff55005b6302329a296000511415610fbe573415610f5657600080fd5b60043560011c15610f6657600080fd5b60015433141515610fb6576308c379a0610140526020610160526009610180527f4e6f742061646d696e00000000000000000000000000000000000000000000006101a05261018050606461015cfd5b600435600055005b63a6ba31c1600051141561103f573415610fd757600080fd5b60043560a01c15610fe757600080fd5b60015433141515611037576308c379a0610140526020610160526009610180527f4e6f742061646d696e00000000000000000000000000000000000000000000006101a05261018050606461015cfd5b600435600155005b63361bc0ca60005114156110b057341561105857600080fd5b600154331415156110a8576308c379a0610140526020610160526009610180527f4e6f742061646d696e00000000000000000000000000000000000000000000006101a05261018050606461015cfd5b600435600255005b637755075660005114156111315734156110c957600080fd5b60043560a01c156110d957600080fd5b60015433141515611129576308c379a0610140526020610160526009610180527f4e6f742061646d696e00000000000000000000000000000000000000000000006101a05261018050606461015cfd5b600435600355005b635c975abb600051141561115857341561114a57600080fd5b60005460005260206000f350005b63f851a440600051141561117f57341561117157600080fd5b60015460005260206000f350005b6369e1540460005114156111a657341561119857600080fd5b60025460005260206000f350005b634127535860005114156111cd5734156111bf57600080fd5b60035460005260206000f350005b5b
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 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.