Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 68 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 11788853 | 1498 days ago | IN | 0.05 ETH | 0.02795156 | ||||
Transfer | 11788651 | 1498 days ago | IN | 0.05 ETH | 0.01371549 | ||||
Transfer | 11788342 | 1498 days ago | IN | 0.05 ETH | 0.01101103 | ||||
Transfer | 11788334 | 1498 days ago | IN | 0.25 ETH | 0.00556688 | ||||
Transfer | 11788328 | 1498 days ago | IN | 0.15 ETH | 0.002793 | ||||
Transfer | 11788326 | 1498 days ago | IN | 0.25 ETH | 0.00363745 | ||||
Transfer | 11788235 | 1498 days ago | IN | 0.058 ETH | 0.003507 | ||||
Transfer | 11788214 | 1498 days ago | IN | 0.04 ETH | 0.003066 | ||||
Transfer | 11788191 | 1498 days ago | IN | 0.05 ETH | 0.0112686 | ||||
Transfer | 11788140 | 1498 days ago | IN | 0.17 ETH | 0.00512406 | ||||
Transfer | 11788127 | 1498 days ago | IN | 0.05 ETH | 0.01191252 | ||||
Transfer | 11788120 | 1498 days ago | IN | 0.18 ETH | 0.00515569 | ||||
Transfer | 11788107 | 1498 days ago | IN | 0.054803 ETH | 0.01191252 | ||||
Transfer | 11788052 | 1498 days ago | IN | 0.057 ETH | 0.01217008 | ||||
Transfer | 11788032 | 1498 days ago | IN | 0.0576375 ETH | 0.01274961 | ||||
Transfer | 11788030 | 1498 days ago | IN | 0.057 ETH | 0.00834724 | ||||
Transfer | 11788022 | 1498 days ago | IN | 0.0575 ETH | 0.00829785 | ||||
Transfer | 11788016 | 1498 days ago | IN | 0.0575 ETH | 0.00824846 | ||||
Transfer | 11787926 | 1498 days ago | IN | 0.055 ETH | 0.00869292 | ||||
Transfer | 11787849 | 1498 days ago | IN | 0.05 ETH | 0.00830656 | ||||
Transfer | 11787838 | 1498 days ago | IN | 0.0576 ETH | 0.00927244 | ||||
Transfer | 11787837 | 1498 days ago | IN | 0.2 ETH | 0.00455472 | ||||
Transfer | 11787822 | 1498 days ago | IN | 0.5 ETH | 0.0041119 | ||||
Transfer | 11787761 | 1498 days ago | IN | 0.2 ETH | 0.00366908 | ||||
Transfer | 11787757 | 1498 days ago | IN | 0.04 ETH | 0.00417206 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
- | 11788853 | 1498 days ago | 0.05 ETH | ||||
- | 11787670 | 1498 days ago | 0.06 ETH | ||||
- | 11787667 | 1498 days ago | 0.05 ETH | ||||
- | 11787661 | 1498 days ago | 0.5 ETH | ||||
- | 11787654 | 1498 days ago | 0.0568604 ETH | ||||
- | 11787626 | 1498 days ago | 0.5 ETH | ||||
- | 11787596 | 1498 days ago | 0.06 ETH | ||||
- | 11787575 | 1498 days ago | 0.5 ETH | ||||
- | 11787566 | 1498 days ago | 0.5 ETH | ||||
- | 11787516 | 1498 days ago | 0.08236662 ETH | ||||
- | 11787395 | 1498 days ago | 0.22 ETH | ||||
- | 11787361 | 1498 days ago | 0.06 ETH | ||||
- | 11787357 | 1498 days ago | 0.23 ETH | ||||
- | 11787313 | 1498 days ago | 0.23 ETH | ||||
- | 11787209 | 1498 days ago | 0.05 ETH | ||||
- | 11787130 | 1498 days ago | 0.05 ETH | ||||
- | 11787044 | 1498 days ago | 0.5 ETH | ||||
- | 11786989 | 1498 days ago | 0.5 ETH | ||||
- | 11786950 | 1498 days ago | 0.26071582 ETH | ||||
- | 11786884 | 1498 days ago | 0.3 ETH | ||||
- | 11786815 | 1498 days ago | 0.05 ETH | ||||
- | 11786767 | 1498 days ago | 0.46 ETH | ||||
- | 11786640 | 1498 days ago | 0.5 ETH | ||||
- | 11786622 | 1498 days ago | 0.24123823 ETH | ||||
- | 11786610 | 1498 days ago | 0.44 ETH |
Loading...
Loading
Contract Name:
ERC20Presale
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-02-04 */ //SPDX-License-Identifier: UNLICENSED //Check before deployment: Hardcoded token contract address, pair address /* Generic presale contract for ERC20 token. Important: Set gas limit to 210000 if sending ether directly! It reserves much but consumes max 80%. Presale allows buying specified ERC20 for rate mentioned in constructor. Allowed amounts: 0.05 ETH to 0.5 ETH. Presale ends once there is no supply left. Once eth is sent to this presale contract sender gets their tokens, eth is wrapped and sent directly to the liquidity pool along with the same amount of tokens. The pool is synced to reflect new ratio right away and calculates token price correctly. Neither ERC20 nor ETH goes to any wallet except token to buyer. Deployer will receive no ether from this presale. This makes liquidity continuously inflating and keeping price near presale price ratio by keeping either the presale or direct uniswap trade cheaper at every moment. Once presale ends there is enough ether liquidity and the price can start going up! */ pragma solidity =0.7.6; interface UNIV2Sync { function sync() external; } interface IERC { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function feeDistributor() external view returns (address); } interface IWETH { function deposit() external payable; function balanceOf(address _owner) external returns (uint256); function transfer(address _to, uint256 _value) external returns (bool); function withdraw(uint256 _amount) external; } abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } library Address { function isContract(address account) internal view returns (bool) { // This method relies on extcodesize, which returns 0 for contracts in // construction, since the code is only stored at the end of the // constructor execution. uint256 size; // solhint-disable-next-line no-inline-assembly assembly { size := extcodesize(account) } return size > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: value }(data); return _verifyCallResult(success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { require(isContract(target), "Address: delegate call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.delegatecall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly // solhint-disable-next-line no-inline-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } contract ERC20Presale { using Address for address; address public token; address public pair; address public wethContract; uint256 public rate; uint256 public weiRaised; constructor() { rate = 5e9; //16.5M2e = 8 eth -> 2M2e = 2e8 = 1/5 e9 = 1e18 wei/5e9, 1M2e = 0.5 weiRaised = 0; token = 0x8937041C8C52a78c25aa54051F6a9dAdA23D42A2; //mainnet pair = 0x76d629ebAD7fDf703Ed5923f41F20c472e8F23E3; //mainnet //wethContract = 0xc778417E063141139Fce010982780140Aa0cD5Ab; //ropsten wethContract = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; //mainnet } receive() external payable { buyTokens(msg.sender); } function buyTokens(address _beneficiary) public payable { require(msg.sender == tx.origin); //no automated arbitrage require(_beneficiary != address(0)); require(msg.value >= 5e16 wei && msg.value <= 5e17 wei); uint256 tokens = msg.value/rate; weiRaised+=msg.value; IERC(token).transfer(_beneficiary,tokens); IERC(token).transfer(pair,tokens); //Convert any ETH to WETH (always). uint256 amountETH = address(this).balance; if (amountETH > 0) { IWETH(wethContract).deposit{value : amountETH}(); } uint256 amountWETH = IWETH(wethContract).balanceOf(address(this)); //Sends weth to pool if (amountWETH > 0) { IWETH(wethContract).transfer(pair, amountWETH); } UNIV2Sync(pair).sync(); //important to reflect updated price } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"_beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"weiRaised","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"wethContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405234801561001057600080fd5b5064012a05f2006003556000600481905580546001600160a01b0319908116738937041c8c52a78c25aa54051f6a9dada23d42a2179091556001805482167376d629ebad7fdf703ed5923f41f20c472e8f23e31790556002805490911673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790556104f0806100946000396000f3fe6080604052600436106100595760003560e01c80632c4e722e1461006e5780634042b66f146100955780634780eac1146100aa578063a8aa1b31146100db578063ec8ac4d8146100f0578063fc0c546a1461011657610069565b36610069576100673361012b565b005b600080fd5b34801561007a57600080fd5b50610083610481565b60408051918252519081900360200190f35b3480156100a157600080fd5b50610083610487565b3480156100b657600080fd5b506100bf61048d565b604080516001600160a01b039092168252519081900360200190f35b3480156100e757600080fd5b506100bf61049c565b6100676004803603602081101561010657600080fd5b50356001600160a01b031661012b565b34801561012257600080fd5b506100bf6104ab565b33321461013757600080fd5b6001600160a01b03811661014a57600080fd5b66b1a2bc2ec50000341015801561016957506706f05b59d3b200003411155b61017257600080fd5b6000600354348161017f57fe5b6004805434018155600080546040805163a9059cbb60e01b81526001600160a01b038981169582019590955295909404602486018190529351939550919091169263a9059cbb9260448083019360209383900390910190829087803b1580156101e757600080fd5b505af11580156101fb573d6000803e3d6000fd5b505050506040513d602081101561021157600080fd5b5050600080546001546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018690529051919092169263a9059cbb92604480820193602093909283900390910190829087803b15801561026f57600080fd5b505af1158015610283573d6000803e3d6000fd5b505050506040513d602081101561029957600080fd5b50479050801561030d57600260009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b1580156102f357600080fd5b505af1158015610307573d6000803e3d6000fd5b50505050505b600254604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a0823191602480830192602092919082900301818787803b15801561035957600080fd5b505af115801561036d573d6000803e3d6000fd5b505050506040513d602081101561038357600080fd5b505190508015610413576002546001546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156103e657600080fd5b505af11580156103fa573d6000803e3d6000fd5b505050506040513d602081101561041057600080fd5b50505b600160009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561046357600080fd5b505af1158015610477573d6000803e3d6000fd5b5050505050505050565b60035481565b60045481565b6002546001600160a01b031681565b6001546001600160a01b031681565b6000546001600160a01b03168156fea2646970667358221220186abb548c46d37bb19a37b50c0282a50a673f8511d96fd82c6655668860cf1264736f6c63430007060033
Deployed Bytecode
0x6080604052600436106100595760003560e01c80632c4e722e1461006e5780634042b66f146100955780634780eac1146100aa578063a8aa1b31146100db578063ec8ac4d8146100f0578063fc0c546a1461011657610069565b36610069576100673361012b565b005b600080fd5b34801561007a57600080fd5b50610083610481565b60408051918252519081900360200190f35b3480156100a157600080fd5b50610083610487565b3480156100b657600080fd5b506100bf61048d565b604080516001600160a01b039092168252519081900360200190f35b3480156100e757600080fd5b506100bf61049c565b6100676004803603602081101561010657600080fd5b50356001600160a01b031661012b565b34801561012257600080fd5b506100bf6104ab565b33321461013757600080fd5b6001600160a01b03811661014a57600080fd5b66b1a2bc2ec50000341015801561016957506706f05b59d3b200003411155b61017257600080fd5b6000600354348161017f57fe5b6004805434018155600080546040805163a9059cbb60e01b81526001600160a01b038981169582019590955295909404602486018190529351939550919091169263a9059cbb9260448083019360209383900390910190829087803b1580156101e757600080fd5b505af11580156101fb573d6000803e3d6000fd5b505050506040513d602081101561021157600080fd5b5050600080546001546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018690529051919092169263a9059cbb92604480820193602093909283900390910190829087803b15801561026f57600080fd5b505af1158015610283573d6000803e3d6000fd5b505050506040513d602081101561029957600080fd5b50479050801561030d57600260009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b1580156102f357600080fd5b505af1158015610307573d6000803e3d6000fd5b50505050505b600254604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a0823191602480830192602092919082900301818787803b15801561035957600080fd5b505af115801561036d573d6000803e3d6000fd5b505050506040513d602081101561038357600080fd5b505190508015610413576002546001546040805163a9059cbb60e01b81526001600160a01b039283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156103e657600080fd5b505af11580156103fa573d6000803e3d6000fd5b505050506040513d602081101561041057600080fd5b50505b600160009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561046357600080fd5b505af1158015610477573d6000803e3d6000fd5b5050505050505050565b60035481565b60045481565b6002546001600160a01b031681565b6001546001600160a01b031681565b6000546001600160a01b03168156fea2646970667358221220186abb548c46d37bb19a37b50c0282a50a673f8511d96fd82c6655668860cf1264736f6c63430007060033
Deployed Bytecode Sourcemap
6105:1632:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6798:21;6808:10;6798:9;:21::i;:::-;6105:1632;;;;;6255:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;6281:24;;;;;;;;;;;;;:::i;6221:27::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;6221:27:0;;;;;;;;;;;;;;6195:19;;;;;;;;;;;;;:::i;6839:895::-;;;;;;;;;;;;;;;;-1:-1:-1;6839:895:0;-1:-1:-1;;;;;6839:895:0;;:::i;6168:20::-;;;;;;;;;;;;;:::i;6839:895::-;6914:10;6928:9;6914:23;6906:32;;;;;;-1:-1:-1;;;;;6982:26:0;;6974:35;;;;;;7041:8;7028:9;:21;;:46;;;;;7066:8;7053:9;:21;;7028:46;7020:55;;;;;;7086:14;7113:4;;7103:9;:14;;;;;7129:9;:20;;7140:9;7129:20;;;:9;7165:5;;7160:41;;;-1:-1:-1;;;7160:41:0;;-1:-1:-1;;;;;7160:41:0;;;;;;;;;;7103:14;;;;7160:41;;;;;;;;7103:14;;-1:-1:-1;7165:5:0;;;;;7160:20;;:41;;;;;;;;;;;;;;;;7165:5;7160:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7217:5:0;;;;7233:4;7212:33;;;-1:-1:-1;;;7212:33:0;;-1:-1:-1;;;;;7233:4:0;;;7212:33;;;;;;;;;;;;7217:5;;;;;7212:20;;:33;;;;;7160:41;;7212:33;;;;;;;;;;;7217:5;7212:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7321:21:0;;-1:-1:-1;7357:13:0;;7353:94;;7393:12;;;;;;;;;-1:-1:-1;;;;;7393:12:0;-1:-1:-1;;;;;7387:27:0;;7423:9;7387:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7353:94;7485:12;;7479:44;;;-1:-1:-1;;;7479:44:0;;7517:4;7479:44;;;;;;7457:18;;-1:-1:-1;;;;;7485:12:0;;7479:29;;:44;;;;;;;;;;;;;;7457:18;7485:12;7479:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7479:44:0;;-1:-1:-1;7568:14:0;;7564:93;;7605:12;;;7628:4;7599:46;;;-1:-1:-1;;;7599:46:0;;-1:-1:-1;;;;;7628:4:0;;;7599:46;;;;;;;;;;;;7605:12;;;;;7599:28;;:46;;;;;;;;;;;;;;7605:12;;7599:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7564:93:0;7677:4;;;;;;;;;-1:-1:-1;;;;;7677:4:0;-1:-1:-1;;;;;7667:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6839:895;;;;:::o;6255:19::-;;;;:::o;6281:24::-;;;;:::o;6221:27::-;;;-1:-1:-1;;;;;6221:27:0;;:::o;6195:19::-;;;-1:-1:-1;;;;;6195:19:0;;:::o;6168:20::-;;;-1:-1:-1;;;;;6168:20:0;;:::o
Swarm Source
ipfs://186abb548c46d37bb19a37b50c0282a50a673f8511d96fd82c6655668860cf12
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.