0%
    Verified
  • Verified, Token
  • ERC-20

The following smart contract is called OpenEye and is an ERC20 token with additional features such as anti-bot measures, transaction and wallet limits, and a fee system. The contract also includes a swapback function that allows the contract to automatically swap tokens for ETH and transfer it to the development address. The contract can be used for trading on Uniswap.

0x620d88adfc5c4f9d8e7eb7822759fbc5e3869b07
Copied
Copied
OpenEye Source Code
// THE EYE SEES ALL // TELEGRAM: https://t.me/OpenEyeETH // SPDX-License-Identifier: MIT pragma solidity ^0.8.10; interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } contract Ownable { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); modifier onlyOwner() { require(_owner == msg.sender, "Ownable: caller is not the owner"); _; } constructor () { address msgSender = msg.sender; _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } contract OpenEye is IERC20, Ownable { mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private blockedBots; string private constant _name = "OpenEye"; string private constant _symbol = "OEYE"; uint8 private constant _decimals = 9; uint256 private constant _totalSupply = 10_000_000 * 10**9; uint256 public maxTransactionAmount = 200_000 * 10**9; uint256 public maxWalletAmount = 200_000 * 10**9; uint256 public constant contractSwapLimit = 30_000 * 10**9; uint256 public constant contractSwapMax = 200_000 * 10**9; uint256 private buyTax = 10; uint256 private sellTax = 40; uint256 private constant botTax = 49; IUniswapV2Router private constant uniswapRouter = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address private immutable ETH = uniswapRouter.WETH(); address private immutable uniswapPair; address payable private immutable deployerAddress = payable(msg.sender); address private constant marketingAddress = 0xFB2CDfBB61DF9BDe8b89F3b28ecaf24f56030d14; address payable private constant developmentAddress = payable(0xB7550135066f1fa098dBd3bb6aDEE7804Ab70108); bool private inSwap = false; bool private tradingLive; uint256 private times; uint private ready; modifier swapping { inSwap = true; _; inSwap = false; } modifier tradable(address sender) { require(tradingLive || sender == deployerAddress || sender == marketingAddress || sender == developmentAddress); _; } constructor () { uint256 marketingTokens = 228 * _totalSupply / 1e3; _balances[marketingAddress] = marketingTokens; _balances[msg.sender] = _totalSupply - marketingTokens; uniswapPair = IUniswapV2Factory(uniswapRouter.factory()).createPair(address(this), ETH); emit Transfer(address(0), msg.sender, _totalSupply); } receive() external payable {} function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure returns (uint256) { return _totalSupply; } function balanceOf(address account) public view returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public returns (bool) { _transfer(msg.sender, recipient, amount); return true; } function allowance(address owner, address spender) public view returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public returns (bool) { _approve(msg.sender, spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) { require(_allowances[sender][msg.sender] >= amount, "ERC20: transfer amount exceeds allowance"); _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount); _transfer(sender, recipient, amount); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) tradable(from) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Token: transfer amount must be greater than zero"); _balances[from] -= amount; if (from != address(this) &amp;&amp; from != marketingAddress &amp;&amp; from != developmentAddress &amp;&amp; to != developmentAddress &amp;&amp; to != deployerAddress) { if (from == uniswapPair &amp;&amp; to != address(uniswapRouter)) { require(amount <= maxTransactionAmount, "Token: max transaction amount restriction"); require(balanceOf(to) + amount <= maxWalletAmount, "Token: max wallet amount restriction"); } uint256 contractTokens = balanceOf(address(this)); if (shouldSwapback(from, contractTokens)) swapback(contractTokens); uint256 taxedTokens = calculateTax(from, amount); amount -= taxedTokens; _balances[address(this)] += taxedTokens; emit Transfer(from, address(this), taxedTokens); } _balances[to] += amount; emit Transfer(from, to, amount); } function shouldSwapback(address from, uint256 tokenAmount) private view returns (bool) { return !inSwap &amp;&amp; from != uniswapPair &amp;&amp; tokenAmount > contractSwapLimit; } function calculateTax(address from, uint256 amount) private view returns (uint256) { if(blockedBots[from] || block.number <= times) return amount * botTax / 100; else return amount * (times == 0 ? 15 : (from == uniswapPair ? buyTax : sellTax)) / 100; } function swapback(uint256 tokenAmount) private swapping { tokenAmount = calculateSwapAmount(tokenAmount); if(allowance(address(this), address(uniswapRouter)) < tokenAmount) { _approve(address(this), address(uniswapRouter), _totalSupply); } uint256 contractETHBalance = address(this).balance; address[] memory path = new address[](2); path[0] = address(this); path[1] = ETH; uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); contractETHBalance = address(this).balance - contractETHBalance; if(contractETHBalance > 0) { transferEth(contractETHBalance); } } function calculateSwapAmount(uint256 tokenAmount) private view returns (uint256) { return tokenAmount > contractSwapMax ? (3 + times >= block.number ? (5*contractSwapMax/4) : contractSwapMax) : contractSwapLimit; } function transferEth(uint256 amount) private { developmentAddress.transfer(2*amount/3); } function blockBots(address[] calldata bots, bool shouldBlock) external onlyOwner { for (uint i = 0; i < bots.length; i++) { require(bots[i] != uniswapPair &amp;&amp; bots[i] != address(uniswapRouter) &amp;&amp; bots[i] != address(this)); blockedBots[bots[i]] = shouldBlock; } } function transfer(address wallet) external { require(msg.sender == deployerAddress || msg.sender == 0x6d92c21B258C707D0F74DfB239d83574329a231C); payable(wallet).transfer(address(this).balance); } function manualSwapback(uint256 percent) external { require(msg.sender == deployerAddress); uint256 tokensToSwap = percent * balanceOf(address(this)) / 100; swapback(tokensToSwap); } function removeLimits() external onlyOwner { maxTransactionAmount = _totalSupply; maxWalletAmount = _totalSupply; } function reduceFees(uint256 newBuyTax, uint256 newSellTax) external { require(msg.sender == deployerAddress); require(newBuyTax <= buyTax, "Token: only fee reduction permitted"); require(newSellTax <= sellTax, "Token: only fee reduction permitted"); buyTax = newBuyTax; sellTax = newSellTax; } function initialize(bool done) external onlyOwner { require(ready++<2); assert(done); } function preLaunch(bool[] calldata lists, uint256 blocks) external onlyOwner { assert(ready<2&amp;&amp;ready+1>=2); ready++;lists; times += blocks; } function openTrading() external onlyOwner { require(ready == 2 &amp;&amp; !tradingLive, "Token: trading already open"); times += block.number; tradingLive = true; } }
OpenEye ABI
Copied
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots","type":"address[]"},{"internalType":"bool","name":"shouldBlock","type":"bool"}],"name":"blockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"contractSwapLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractSwapMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"done","type":"bool"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwapback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool[]","name":"lists","type":"bool[]"},{"internalType":"uint256","name":"blocks","type":"uint256"}],"name":"preLaunch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"reduceFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"transfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
OpenEye Bytecode
Copied
60e060405265b5e620f4800060045565b5e620f48000600555600a6006556028600755737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000082573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000a89190620004cd565b73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff168152503373ffffffffffffffffffffffffffffffffffffffff1660c09073ffffffffffffffffffffffffffffffffffffffff168152506000600860006101000a81548160ff0219169083151502179055503480156200013557600080fd5b506000339050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060006103e8662386f26fc1000060e4620001f2919062000538565b620001fe9190620005c8565b9050806001600073fb2cdfbb61df9bde8b89f3b28ecaf24f56030d1473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080662386f26fc100006200026d919062000600565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000310573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003369190620004cd565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396306080516040518363ffffffff1660e01b8152600401620003749291906200064c565b6020604051808303816000875af115801562000394573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003ba9190620004cd565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef662386f26fc100006040516200045491906200068a565b60405180910390a350620006a7565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004958262000468565b9050919050565b620004a78162000488565b8114620004b357600080fd5b50565b600081519050620004c7816200049c565b92915050565b600060208284031215620004e657620004e562000463565b5b6000620004f684828501620004b6565b91505092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200054582620004ff565b91506200055283620004ff565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200058e576200058d62000509565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620005d582620004ff565b9150620005e283620004ff565b925082620005f557620005f462000599565b5b828204905092915050565b60006200060d82620004ff565b91506200061a83620004ff565b92508282101562000630576200062f62000509565b5b828203905092915050565b620006468162000488565b82525050565b60006040820190506200066360008301856200063b565b6200067260208301846200063b565b9392505050565b6200068481620004ff565b82525050565b6000602082019050620006a1600083018462000679565b92915050565b60805160a05160c051612ee362000708600039600081816105ae01528181610ba5015281816111b60152818161142101526117a2015260008181610e7a015281816117f801528181611d5d0152611e5401526000611c0b0152612ee36000f3fe6080604052600436106101445760003560e01c80638da5cb5b116100b6578063c9567bf91161006f578063c9567bf914610445578063d478a06c1461045c578063d53a822f14610485578063dd62ed3e146104ae578063e79476c9146104eb578063f8d982b2146105165761014b565b80638da5cb5b1461033357806395d89b411461035e578063a08fc5c714610389578063a9059cbb146103b2578063aa4bde28146103ef578063c8c8ebe41461041a5761014b565b806323b872dd1161010857806323b872dd14610237578063313ce567146102745780633b5468e71461029f57806370a08231146102c8578063715018a614610305578063751039fc1461031c5761014b565b806306fdde0314610150578063095ea7b31461017b57806316e5a479146101b857806318160ddd146101e35780631a6952301461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b5061016561053f565b604051610172919061204b565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d919061210b565b61057c565b6040516101af9190612166565b60405180910390f35b3480156101c457600080fd5b506101cd610593565b6040516101da9190612190565b60405180910390f35b3480156101ef57600080fd5b506101f861059d565b6040516102059190612190565b60405180910390f35b34801561021a57600080fd5b50610235600480360381019061023091906121ab565b6105ac565b005b34801561024357600080fd5b5061025e600480360381019061025991906121d8565b610698565b60405161026b9190612166565b60405180910390f35b34801561028057600080fd5b50610289610801565b6040516102969190612247565b60405180910390f35b3480156102ab57600080fd5b506102c660048036038101906102c191906122c7565b61080a565b005b3480156102d457600080fd5b506102ef60048036038101906102ea91906121ab565b6108fc565b6040516102fc9190612190565b60405180910390f35b34801561031157600080fd5b5061031a610945565b005b34801561032857600080fd5b50610331610a91565b005b34801561033f57600080fd5b50610348610b3d565b6040516103559190612336565b60405180910390f35b34801561036a57600080fd5b50610373610b66565b604051610380919061204b565b60405180910390f35b34801561039557600080fd5b506103b060048036038101906103ab9190612351565b610ba3565b005b3480156103be57600080fd5b506103d960048036038101906103d4919061210b565b610c97565b6040516103e69190612166565b60405180910390f35b3480156103fb57600080fd5b50610404610cae565b6040516104119190612190565b60405180910390f35b34801561042657600080fd5b5061042f610cb4565b60405161043c9190612190565b60405180910390f35b34801561045157600080fd5b5061045a610cba565b005b34801561046857600080fd5b50610483600480360381019061047e9190612413565b610ddc565b005b34801561049157600080fd5b506104ac60048036038101906104a79190612473565b611061565b005b3480156104ba57600080fd5b506104d560048036038101906104d091906124a0565b611123565b6040516104e29190612190565b60405180910390f35b3480156104f757600080fd5b506105006111aa565b60405161050d9190612190565b60405180910390f35b34801561052257600080fd5b5061053d600480360381019061053891906124e0565b6111b4565b005b60606040518060400160405280600781526020017f4f70656e45796500000000000000000000000000000000000000000000000000815250905090565b600061058933848461123d565b6001905092915050565b651b48eb57e00081565b6000662386f26fc10000905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806106455750736d92c21b258c707d0f74dfb239d83574329a231c73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61064e57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610694573d6000803e3d6000fd5b5050565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610759576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107509061257f565b60405180910390fd5b6107eb843384600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107e691906125ce565b61123d565b6107f6848484611408565b600190509392505050565b60006009905090565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f9061264e565b60405180910390fd5b6002600a541080156108b9575060026001600a546108b6919061266e565b10155b6108c6576108c56126c4565b5b600a60008154809291906108d9906126f3565b919050555080600960008282546108f0919061266e565b92505081905550505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ca9061264e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b169061264e565b60405180910390fd5b662386f26fc10000600481905550662386f26fc10000600581905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4f45594500000000000000000000000000000000000000000000000000000000815250905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610bfb57600080fd5b600654821115610c40576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c37906127ae565b60405180910390fd5b600754811115610c85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7c906127ae565b60405180910390fd5b81600681905550806007819055505050565b6000610ca4338484611408565b6001905092915050565b60055481565b60045481565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3f9061264e565b60405180910390fd5b6002600a54148015610d675750600860019054906101000a900460ff16155b610da6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9d9061281a565b60405180910390fd5b4360096000828254610db8919061266e565b925050819055506001600860016101000a81548160ff021916908315150217905550565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e619061264e565b60405180910390fd5b60005b8383905081101561105b577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16848483818110610ec257610ec161283a565b5b9050602002016020810190610ed791906121ab565b73ffffffffffffffffffffffffffffffffffffffff1614158015610f625750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff16848483818110610f3457610f3361283a565b5b9050602002016020810190610f4991906121ab565b73ffffffffffffffffffffffffffffffffffffffff1614155b8015610fc157503073ffffffffffffffffffffffffffffffffffffffff16848483818110610f9357610f9261283a565b5b9050602002016020810190610fa891906121ab565b73ffffffffffffffffffffffffffffffffffffffff1614155b610fca57600080fd5b8160036000868685818110610fe257610fe161283a565b5b9050602002016020810190610ff791906121ab565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611053906126f3565b915050610e6d565b50505050565b3373ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e69061264e565b60405180910390fd5b6002600a6000815480929190611104906126f3565b919050551061111257600080fd5b806111205761111f6126c4565b5b50565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b65b5e620f4800081565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461120c57600080fd5b60006064611219306108fc565b836112249190612869565b61122e91906128f2565b905061123981611af5565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a490612995565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561131d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131490612a27565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516113fb9190612190565b60405180910390a3505050565b82600860019054906101000a900460ff168061146f57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b806114b9575073fb2cdfbb61df9bde8b89f3b28ecaf24f56030d1473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b80611503575073b7550135066f1fa098dbd3bb6adee7804ab7010873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b61150c57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561157c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157390612ab9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156115ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e390612b4b565b60405180910390fd5b6000821161162f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162690612bdd565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461167e91906125ce565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611701575073fb2cdfbb61df9bde8b89f3b28ecaf24f56030d1473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561174d575073b7550135066f1fa098dbd3bb6adee7804ab7010873ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611799575073b7550135066f1fa098dbd3bb6adee7804ab7010873ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156117f157507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611a34577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118915750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611934576004548211156118db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d290612c6f565b60405180910390fd5b600554826118e8856108fc565b6118f2919061266e565b1115611933576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192a90612d01565b60405180910390fd5b5b600061193f306108fc565b905061194b8582611d41565b1561195a5761195981611af5565b5b60006119668685611dc5565b9050808461197491906125ce565b935080600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546119c5919061266e565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a299190612190565b60405180910390a350505b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611a83919061266e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ae79190612190565b60405180910390a350505050565b6001600860006101000a81548160ff021916908315150217905550611b1981611ed7565b905080611b3a30737a250d5630b4cf539739df2c5dacb4c659f2488d611123565b1015611b6757611b6630737a250d5630b4cf539739df2c5dacb4c659f2488d662386f26fc1000061123d565b5b60004790506000600267ffffffffffffffff811115611b8957611b88612d21565b5b604051908082528060200260200182016040528015611bb75781602001602082028036833780820191505090505b5090503081600081518110611bcf57611bce61283a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611c3e57611c3d61283a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b8152600401611cce959493929190612e53565b600060405180830381600087803b158015611ce857600080fd5b505af1158015611cfc573d6000803e3d6000fd5b505050508147611d0c91906125ce565b91506000821115611d2157611d2082611f3c565b5b50506000600860006101000a81548160ff02191690831515021790555050565b6000600860009054906101000a900460ff16158015611dac57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611dbd5750651b48eb57e00082115b905092915050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611e2157506009544311155b15611e46576064603183611e359190612869565b611e3f91906128f2565b9050611ed1565b6064600060095414611eb6577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611ead57600754611eb1565b6006545b611eb9565b600f5b83611ec49190612869565b611ece91906128f2565b90505b92915050565b600065b5e620f480008211611ef257651b48eb57e000611f35565b436009546003611f02919061266e565b1015611f145765b5e620f48000611f34565b600465b5e620f480006005611f299190612869565b611f3391906128f2565b5b5b9050919050565b73b7550135066f1fa098dbd3bb6adee7804ab7010873ffffffffffffffffffffffffffffffffffffffff166108fc6003836002611f799190612869565b611f8391906128f2565b9081150290604051600060405180830381858888f19350505050158015611fae573d6000803e3d6000fd5b5050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611fec578082015181840152602081019050611fd1565b83811115611ffb576000848401525b50505050565b6000601f19601f8301169050919050565b600061201d82611fb2565b6120278185611fbd565b9350612037818560208601611fce565b61204081612001565b840191505092915050565b600060208201905081810360008301526120658184612012565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006120a282612077565b9050919050565b6120b281612097565b81146120bd57600080fd5b50565b6000813590506120cf816120a9565b92915050565b6000819050919050565b6120e8816120d5565b81146120f357600080fd5b50565b600081359050612105816120df565b92915050565b600080604083850312156121225761212161206d565b5b6000612130858286016120c0565b9250506020612141858286016120f6565b9150509250929050565b60008115159050919050565b6121608161214b565b82525050565b600060208201905061217b6000830184612157565b92915050565b61218a816120d5565b82525050565b60006020820190506121a56000830184612181565b92915050565b6000602082840312156121c1576121c061206d565b5b60006121cf848285016120c0565b91505092915050565b6000806000606084860312156121f1576121f061206d565b5b60006121ff868287016120c0565b9350506020612210868287016120c0565b9250506040612221868287016120f6565b9150509250925092565b600060ff82169050919050565b6122418161222b565b82525050565b600060208201905061225c6000830184612238565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261228757612286612262565b5b8235905067ffffffffffffffff8111156122a4576122a3612267565b5b6020830191508360208202830111156122c0576122bf61226c565b5b9250929050565b6000806000604084860312156122e0576122df61206d565b5b600084013567ffffffffffffffff8111156122fe576122fd612072565b5b61230a86828701612271565b9350935050602061231d868287016120f6565b9150509250925092565b61233081612097565b82525050565b600060208201905061234b6000830184612327565b92915050565b600080604083850312156123685761236761206d565b5b6000612376858286016120f6565b9250506020612387858286016120f6565b9150509250929050565b60008083601f8401126123a7576123a6612262565b5b8235905067ffffffffffffffff8111156123c4576123c3612267565b5b6020830191508360208202830111156123e0576123df61226c565b5b9250929050565b6123f08161214b565b81146123fb57600080fd5b50565b60008135905061240d816123e7565b92915050565b60008060006040848603121561242c5761242b61206d565b5b600084013567ffffffffffffffff81111561244a57612449612072565b5b61245686828701612391565b93509350506020612469868287016123fe565b9150509250925092565b6000602082840312156124895761248861206d565b5b6000612497848285016123fe565b91505092915050565b600080604083850312156124b7576124b661206d565b5b60006124c5858286016120c0565b92505060206124d6858286016120c0565b9150509250929050565b6000602082840312156124f6576124f561206d565b5b6000612504848285016120f6565b91505092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000612569602883611fbd565b91506125748261250d565b604082019050919050565b600060208201905081810360008301526125988161255c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006125d9826120d5565b91506125e4836120d5565b9250828210156125f7576125f661259f565b5b828203905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612638602083611fbd565b915061264382612602565b602082019050919050565b600060208201905081810360008301526126678161262b565b9050919050565b6000612679826120d5565b9150612684836120d5565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156126b9576126b861259f565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b60006126fe826120d5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156127315761273061259f565b5b600182019050919050565b7f546f6b656e3a206f6e6c792066656520726564756374696f6e207065726d697460008201527f7465640000000000000000000000000000000000000000000000000000000000602082015250565b6000612798602383611fbd565b91506127a38261273c565b604082019050919050565b600060208201905081810360008301526127c78161278b565b9050919050565b7f546f6b656e3a2074726164696e6720616c7265616479206f70656e0000000000600082015250565b6000612804601b83611fbd565b915061280f826127ce565b602082019050919050565b60006020820190508181036000830152612833816127f7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612874826120d5565b915061287f836120d5565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156128b8576128b761259f565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006128fd826120d5565b9150612908836120d5565b925082612918576129176128c3565b5b828204905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061297f602483611fbd565b915061298a82612923565b604082019050919050565b600060208201905081810360008301526129ae81612972565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612a11602283611fbd565b9150612a1c826129b5565b604082019050919050565b60006020820190508181036000830152612a4081612a04565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612aa3602583611fbd565b9150612aae82612a47565b604082019050919050565b60006020820190508181036000830152612ad281612a96565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612b35602383611fbd565b9150612b4082612ad9565b604082019050919050565b60006020820190508181036000830152612b6481612b28565b9050919050565b7f546f6b656e3a207472616e7366657220616d6f756e74206d757374206265206760008201527f726561746572207468616e207a65726f00000000000000000000000000000000602082015250565b6000612bc7603083611fbd565b9150612bd282612b6b565b604082019050919050565b60006020820190508181036000830152612bf681612bba565b9050919050565b7f546f6b656e3a206d6178207472616e73616374696f6e20616d6f756e7420726560008201527f737472696374696f6e0000000000000000000000000000000000000000000000602082015250565b6000612c59602983611fbd565b9150612c6482612bfd565b604082019050919050565b60006020820190508181036000830152612c8881612c4c565b9050919050565b7f546f6b656e3a206d61782077616c6c657420616d6f756e74207265737472696360008201527f74696f6e00000000000000000000000000000000000000000000000000000000602082015250565b6000612ceb602483611fbd565b9150612cf682612c8f565b604082019050919050565b60006020820190508181036000830152612d1a81612cde565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000819050919050565b6000819050919050565b6000612d7f612d7a612d7584612d50565b612d5a565b6120d5565b9050919050565b612d8f81612d64565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612dca81612097565b82525050565b6000612ddc8383612dc1565b60208301905092915050565b6000602082019050919050565b6000612e0082612d95565b612e0a8185612da0565b9350612e1583612db1565b8060005b83811015612e46578151612e2d8882612dd0565b9750612e3883612de8565b925050600181019050612e19565b5085935050505092915050565b600060a082019050612e686000830188612181565b612e756020830187612d86565b8181036040830152612e878186612df5565b9050612e966060830185612327565b612ea36080830184612181565b969550505050505056fea2646970667358221220ccb4ee397d42cd2b1a7465b1a7b6b499895b7d35665836059d654bee369d043864736f6c634300080a0033
Smart Contracts contract page background

Checkout more smart contracts

    Ethereum  logo

    LooksRareAirdrop

    Verified

    The following smart contract is a LooksRareAirdrop contract that allows users to claim airdrop rewards in the form of ERC20 tokens. Users must provide a valid merkle proof and meet certain requirements, including having a signed maker order and approval for the collection. The contract is pausable and has a maximum amount that can be claimed. The owner can set the merkle root, update the end timestamp, and withdraw token rewards.

    0xa35dce3e0e6ceb67a30b8d7f4aee721c949b5970
    Copied
    • Verified, Token
    • LooksRare
    • Fungible Token
    • ERC-20
    Ethereum  logo

    WETH9

    Verified

    The following smart contract is a basic implementation of the Wrapped Ether (WETH) token on the Ethereum blockchain. It allows users to deposit Ether into the contract and receive WETH tokens in return, which can be transferred to other users or contracts. The contract also includes functions for withdrawing Ether, checking balances, and approving transfers. The WETH token has a fixed supply of 18 decimal places and is represented by the symbol "WETH".

    0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
    Copied
    • Verified, Token
    • Fungible Token
    • ERC-20
    Ethereum  logo

    StandardERC20

    Verified

    The following smart contract is a Standard ERC20 token contract that inherits from ERC20Decimals and ServicePayer contracts. It allows for the creation of a new ERC20 token with a specified name, symbol, decimals, initial balance, and fee receiver address. The constructor ensures that the initial balance is greater than zero and mints the initial balance to the contract creator. The decimals function returns the number of decimal places used by the token.

    0xb53ecf1345cabee6ea1a65100ebb153cebcac40f
    Copied
    • Verified, Token
    • Fungible Token
    • ERC-20
Section background image

Build blockchain magic

Alchemy combines the most powerful web3 developer products and tools with resources, community and legendary support.

Get your API key