ETH Price: $2,391.02 (+2.82%)

Contract

0x43589dB4fF32ac84424e55EC43567D7051b65aEe
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve176718282023-07-11 17:22:47435 days ago1689096167IN
0x43589dB4...051b65aEe
0 ETH0.0015358433.20674332
Approve176711742023-07-11 15:10:11435 days ago1689088211IN
0x43589dB4...051b65aEe
0 ETH0.00199242.74782433
Change Fees176711572023-07-11 15:06:47435 days ago1689088007IN
0x43589dB4...051b65aEe
0 ETH0.00448788144.66786815
Remove Limits176711432023-07-11 15:03:59435 days ago1689087839IN
0x43589dB4...051b65aEe
0 ETH0.0015776547.19287224
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Approve176711412023-07-11 15:03:35435 days ago1689087815IN
0x43589dB4...051b65aEe
0 ETH0.002290949.16215219
Enable Trade176711392023-07-11 15:03:11435 days ago1689087791IN
0x43589dB4...051b65aEe
0 ETH0.001287748.48467643
Approve176711152023-07-11 14:58:23435 days ago1689087503IN
0x43589dB4...051b65aEe
0 ETH0.0017935238.48853322
0x60806040176710762023-07-11 14:50:23435 days ago1689087023IN
 Create: PEP
0 ETH0.1690542442.57228476

Latest 2 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
176735692023-07-11 23:15:47435 days ago1689117347
0x43589dB4...051b65aEe
0.02845843 ETH
176735692023-07-11 23:15:47435 days ago1689117347
0x43589dB4...051b65aEe
0.02845843 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PEP

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 300 runs

Other Settings:
default evmVersion
File 1 of 1 : contract.sol
/**

Socials:

Twitter: https://twitter.com/PeperoniErc
Telegram: https://t.me/peperonitoken
Website: https://peperoni.lol/

*/

// SPDX-License-Identifier: NONE
pragma solidity ^0.8.19;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);
}

interface IUniswapV2Factory {
    function createPair(
        address tokenA,
        address tokenB
    ) external returns (address pair);
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );
    constructor() {
        _transferOwnership(_msgSender());
    }
    modifier onlyOwner() {
        _checkOwner();
        _;
    }
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );

    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);
}

contract PEP is IERC20, Ownable {
    bool public tradingActive = false;
    uint256 public _swapTokensAtAmount = 10000000 * 10 ** 9;
    IUniswapV2Router02 public uniswapV2Router;
    address payable private constant _developmentAddress =
        payable(0xC895288dC97b23609EaD146361E464Deb5B4CAe4);
    address payable private constant _marketingAddress =
        payable(0xC895288dC97b23609EaD146361E464Deb5B4CAe4);
    uint256 private constant _totalSupply = 10000000000 * 10 ** 9;
    uint256 private _taxFeeOnBuy = 2;
    uint256 private _taxFeeOnSell = 2;
    uint256 private constant _maxFee = 4; //Highest Tax can be set
    uint256 public _maxTxAmount = 425000000 * 10 ** 9;
    uint256 public _maxWalletSize = 425000000 * 10 ** 9;
    string private constant _name = "PEPEroni";
    string private constant _symbol = "PPRONI";
    uint8 private constant _decimals = 9;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    address public uniswapV2Pair;
    bool private inSwap = false;
    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor() {
        _balances[_msgSender()] = _totalSupply;
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_marketingAddress] = true;
        _isExcludedFromFee[_developmentAddress] = true;
        _isExcludedFromFee[address(this)] = true;

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

    function name() public pure returns (string memory) {return _name;}
    function totalSupply() public pure override returns (uint256) {return _totalSupply;}
    function symbol() public pure returns (string memory) {return _symbol;}
    function decimals() public pure returns (uint8) {return _decimals;}
    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function allowance(
        address owner,
        address spender
    ) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function transfer(
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function approve(
        address spender,
        uint256 amount
    ) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function enableTrade() external onlyOwner {
        require(tradingActive == false, "The trading has been opened.");
        tradingActive = true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(
            currentAllowance >= amount,
            "ERC20: transfer amount exceeds allowance"
        );
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - 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) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        if (tradingActive == false) {
                require(_isExcludedFromFee[from] || _isExcludedFromFee[to], "ERC20: Trading is not active.");
            }
        if (from != owner() && to != owner()) {
            if (
                to != _marketingAddress &&
                from != _marketingAddress &&
                to != _developmentAddress &&
                from != _developmentAddress
            ) {
                require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
            }

            if (
                to != uniswapV2Pair &&
                to != _marketingAddress &&
                from != _marketingAddress &&
                to != _developmentAddress &&
                from != _developmentAddress
            ) {
                require(
                    balanceOf(to) + amount < _maxWalletSize,
                    "TOKEN: Balance exceeds wallet size!"
                );
            }
            uint256 contractTokenBalance = balanceOf(address(this));

            if (contractTokenBalance >= _maxTxAmount) {
                contractTokenBalance = _maxTxAmount;
            }

            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

            if (
                canSwap &&
                !inSwap &&
                from != uniswapV2Pair &&
                !_isExcludedFromFee[from] &&
                !_isExcludedFromFee[to]
            ) {
                swapTokensForEth(contractTokenBalance);

                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    _marketingAddress.transfer(address(this).balance);
                }
            }
        }
        uint256 _taxFee = 0;
        if (
            (_isExcludedFromFee[from] || _isExcludedFromFee[to]) ||
            (from != uniswapV2Pair && to != uniswapV2Pair)
        ) {
            _taxFee = 0;
        } else {
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _taxFee = _taxFeeOnBuy;
            }
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _taxFee = _taxFeeOnSell;
            }
        }

        _tokenTransfer(from, to, amount, _taxFee);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function excludeMultipleAccountsFromFees(
        address[] calldata accounts,
        bool excluded
    ) external onlyOwner {
        for (uint256 i = 0; i < accounts.length; i++) {
            _isExcludedFromFee[accounts[i]] = excluded;
        }
    }

    function changeFees(
        uint256 taxFeeOnBuy,
        uint256 taxFeeOnSell
    ) external onlyOwner {
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        uint256 tax
    ) private {
        uint256 tTeam = (amount * tax) / 100;
        uint256 tTransferAmount = amount - tTeam;
        _balances[sender] = _balances[sender] - amount;
        _balances[recipient] = _balances[recipient] + tTransferAmount;
        if (tTeam > 0) {
            _balances[address(this)] = _balances[address(this)] + tTeam;
            emit Transfer(sender, address(this), tTeam);
        }
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function removeLimits() external onlyOwner {
        _maxTxAmount = _totalSupply;
        _maxWalletSize = _totalSupply;
    }
    receive() external payable {}
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 300
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"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":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"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":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"changeFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040525f805460ff60a01b19908116909155662386f26fc10000600155600260038190556004556705e5e73f8d8a80006005819055600655600a805490911690553480156200004e575f80fd5b506200005a33620002ac565b335f90815260076020908152604091829020678ac7230489e800009055600280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155825163c45a015560e01b81529251909263c45a01559260048083019391928290030181865afa158015620000d6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000fc9190620002fb565b6001600160a01b031663c9c653963060025f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200015c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001829190620002fb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015620001cd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001f39190620002fb565b600a80546001600160a01b0319166001600160a01b039283161790555f80549091168152600960209081526040808320805460ff1990811660019081179092557fa4e69e133784214a5c0104ef380cbed54db549095b31a9e944da99dd208722f280548216831790553085528285208054909116909117905551678ac7230489e8000081523392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36200032a565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f602082840312156200030c575f80fd5b81516001600160a01b038116811462000323575f80fd5b9392505050565b6114a880620003385f395ff3fe608060405260043610610151575f3560e01c8063715018a6116100b757806395d89b411161007c578063c492f04611610057578063c492f046146103d9578063dd62ed3e146103f8578063f2fde38b1461043c575f80fd5b806395d89b411461036d578063a9059cbb1461039b578063bbc0c742146103ba575f80fd5b8063715018a6146102ff578063751039fc146103135780637d1db4a5146103275780638da5cb5b1461033c5780638f9a55c014610358575f80fd5b806321ecff5b11610117578063313ce567116100f2578063313ce5671461029157806349bd5a5e146102ac57806370a08231146102cb575f80fd5b806321ecff5b1461023e57806323b872dd1461025d5780632fd689e31461027c575f80fd5b806299d3861461015c57806306fdde0314610172578063095ea7b3146101b45780631694505e146101e357806318160ddd1461021a575f80fd5b3661015857005b5f80fd5b348015610167575f80fd5b5061017061045b565b005b34801561017d575f80fd5b5060408051808201909152600881526750455045726f6e6960c01b60208201525b6040516101ab9190611189565b60405180910390f35b3480156101bf575f80fd5b506101d36101ce3660046111e8565b6104d5565b60405190151581526020016101ab565b3480156101ee575f80fd5b50600254610202906001600160a01b031681565b6040516001600160a01b0390911681526020016101ab565b348015610225575f80fd5b50678ac7230489e800005b6040519081526020016101ab565b348015610249575f80fd5b50610170610258366004611212565b6104eb565b348015610268575f80fd5b506101d3610277366004611232565b6104fe565b348015610287575f80fd5b5061023060015481565b34801561029c575f80fd5b50604051600981526020016101ab565b3480156102b7575f80fd5b50600a54610202906001600160a01b031681565b3480156102d6575f80fd5b506102306102e5366004611270565b6001600160a01b03165f9081526007602052604090205490565b34801561030a575f80fd5b506101706105a5565b34801561031e575f80fd5b506101706105b8565b348015610332575f80fd5b5061023060055481565b348015610347575f80fd5b505f546001600160a01b0316610202565b348015610363575f80fd5b5061023060065481565b348015610378575f80fd5b506040805180820190915260068152655050524f4e4960d01b602082015261019e565b3480156103a6575f80fd5b506101d36103b53660046111e8565b6105d3565b3480156103c5575f80fd5b505f546101d390600160a01b900460ff1681565b3480156103e4575f80fd5b506101706103f3366004611292565b6105df565b348015610403575f80fd5b50610230610412366004611315565b6001600160a01b039182165f90815260086020908152604080832093909416825291909152205490565b348015610447575f80fd5b50610170610456366004611270565b61065b565b6104636106d4565b5f54600160a01b900460ff16156104c15760405162461bcd60e51b815260206004820152601c60248201527f5468652074726164696e6720686173206265656e206f70656e65642e0000000060448201526064015b60405180910390fd5b5f805460ff60a01b1916600160a01b179055565b5f6104e133848461072d565b5060015b92915050565b6104f36106d4565b600391909155600455565b6001600160a01b0383165f908152600860209081526040808320338452909152812054828110156105825760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016104b8565b61058f853385840361072d565b61059a858585610850565b506001949350505050565b6105ad6106d4565b6105b65f610e5e565b565b6105c06106d4565b678ac7230489e800006005819055600655565b5f6104e1338484610850565b6105e76106d4565b5f5b82811015610655578160095f8686858181106106075761060761134c565b905060200201602081019061061c9190611270565b6001600160a01b0316815260208101919091526040015f20805460ff19169115159190911790558061064d81611374565b9150506105e9565b50505050565b6106636106d4565b6001600160a01b0381166106c85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104b8565b6106d181610e5e565b50565b5f546001600160a01b031633146105b65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104b8565b6001600160a01b03831661078f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104b8565b6001600160a01b0382166107f05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104b8565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108b45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104b8565b6001600160a01b0382166109165760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104b8565b5f81116109775760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104b8565b5f8054600160a01b900460ff1615159003610a15576001600160a01b0383165f9081526009602052604090205460ff16806109c957506001600160a01b0382165f9081526009602052604090205460ff165b610a155760405162461bcd60e51b815260206004820152601d60248201527f45524332303a2054726164696e67206973206e6f74206163746976652e00000060448201526064016104b8565b5f546001600160a01b03848116911614801590610a3f57505f546001600160a01b03838116911614155b15610d6d576001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414801590610a8e57506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b8015610ab757506001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414155b8015610ae057506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b15610b3757600554811115610b375760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016104b8565b600a546001600160a01b03838116911614801590610b7257506001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414155b8015610b9b57506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b8015610bc457506001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414155b8015610bed57506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b15610c775760065481610c14846001600160a01b03165f9081526007602052604090205490565b610c1e919061138c565b10610c775760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016104b8565b305f908152600760205260409020546005548110610c9457506005545b60015481108015908190610cb25750600a54600160a01b900460ff16155b8015610ccc5750600a546001600160a01b03868116911614155b8015610cf057506001600160a01b0385165f9081526009602052604090205460ff16155b8015610d1457506001600160a01b0384165f9081526009602052604090205460ff16155b15610d6a57610d2282610eba565b478015610d685760405173c895288dc97b23609ead146361e464deb5b4cae4904780156108fc02915f818181858888f19350505050158015610d66573d5f803e3d5ffd5b505b505b50505b6001600160a01b0383165f9081526009602052604081205460ff1680610daa57506001600160a01b0383165f9081526009602052604090205460ff165b80610ddc5750600a546001600160a01b03858116911614801590610ddc5750600a546001600160a01b03848116911614155b15610de857505f610e52565b600a546001600160a01b038581169116148015610e1357506002546001600160a01b03848116911614155b15610e1d57506003545b600a546001600160a01b038481169116148015610e4857506002546001600160a01b03858116911614155b15610e5257506004545b6106558484848461102a565b5f80546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600a805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610f0057610f0061134c565b6001600160a01b03928316602091820292909201810191909152600254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f57573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7b919061139f565b81600181518110610f8e57610f8e61134c565b6001600160a01b039283166020918202929092010152600254610fb4913091168461072d565b60025460405163791ac94760e01b81526001600160a01b039091169063791ac94790610fec9085905f908690309042906004016113ba565b5f604051808303815f87803b158015611003575f80fd5b505af1158015611015573d5f803e3d5ffd5b5050600a805460ff60a01b1916905550505050565b5f60646110378385611429565b6110419190611440565b90505f61104e828561145f565b6001600160a01b0387165f9081526007602052604090205490915061107490859061145f565b6001600160a01b038088165f9081526007602052604080822093909355908716815220546110a390829061138c565b6001600160a01b0386165f90815260076020526040902055811561113457305f908152600760205260409020546110db90839061138c565b305f81815260076020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061112b9086815260200190565b60405180910390a35b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161117991815260200190565b60405180910390a3505050505050565b5f6020808352835180828501525f5b818110156111b457858101830151858201604001528201611198565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106d1575f80fd5b5f80604083850312156111f9575f80fd5b8235611204816111d4565b946020939093013593505050565b5f8060408385031215611223575f80fd5b50508035926020909101359150565b5f805f60608486031215611244575f80fd5b833561124f816111d4565b9250602084013561125f816111d4565b929592945050506040919091013590565b5f60208284031215611280575f80fd5b813561128b816111d4565b9392505050565b5f805f604084860312156112a4575f80fd5b833567ffffffffffffffff808211156112bb575f80fd5b818601915086601f8301126112ce575f80fd5b8135818111156112dc575f80fd5b8760208260051b85010111156112f0575f80fd5b60209283019550935050840135801515811461130a575f80fd5b809150509250925092565b5f8060408385031215611326575f80fd5b8235611331816111d4565b91506020830135611341816111d4565b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f6001820161138557611385611360565b5060010190565b808201808211156104e5576104e5611360565b5f602082840312156113af575f80fd5b815161128b816111d4565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156114085784516001600160a01b0316835293830193918301916001016113e3565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104e5576104e5611360565b5f8261145a57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156104e5576104e561136056fea2646970667358221220eaffc8969e0a1f763d34d70c1c1253974e671b86c61d8e932bba0342f66c3c2364736f6c63430008140033

Deployed Bytecode

0x608060405260043610610151575f3560e01c8063715018a6116100b757806395d89b411161007c578063c492f04611610057578063c492f046146103d9578063dd62ed3e146103f8578063f2fde38b1461043c575f80fd5b806395d89b411461036d578063a9059cbb1461039b578063bbc0c742146103ba575f80fd5b8063715018a6146102ff578063751039fc146103135780637d1db4a5146103275780638da5cb5b1461033c5780638f9a55c014610358575f80fd5b806321ecff5b11610117578063313ce567116100f2578063313ce5671461029157806349bd5a5e146102ac57806370a08231146102cb575f80fd5b806321ecff5b1461023e57806323b872dd1461025d5780632fd689e31461027c575f80fd5b806299d3861461015c57806306fdde0314610172578063095ea7b3146101b45780631694505e146101e357806318160ddd1461021a575f80fd5b3661015857005b5f80fd5b348015610167575f80fd5b5061017061045b565b005b34801561017d575f80fd5b5060408051808201909152600881526750455045726f6e6960c01b60208201525b6040516101ab9190611189565b60405180910390f35b3480156101bf575f80fd5b506101d36101ce3660046111e8565b6104d5565b60405190151581526020016101ab565b3480156101ee575f80fd5b50600254610202906001600160a01b031681565b6040516001600160a01b0390911681526020016101ab565b348015610225575f80fd5b50678ac7230489e800005b6040519081526020016101ab565b348015610249575f80fd5b50610170610258366004611212565b6104eb565b348015610268575f80fd5b506101d3610277366004611232565b6104fe565b348015610287575f80fd5b5061023060015481565b34801561029c575f80fd5b50604051600981526020016101ab565b3480156102b7575f80fd5b50600a54610202906001600160a01b031681565b3480156102d6575f80fd5b506102306102e5366004611270565b6001600160a01b03165f9081526007602052604090205490565b34801561030a575f80fd5b506101706105a5565b34801561031e575f80fd5b506101706105b8565b348015610332575f80fd5b5061023060055481565b348015610347575f80fd5b505f546001600160a01b0316610202565b348015610363575f80fd5b5061023060065481565b348015610378575f80fd5b506040805180820190915260068152655050524f4e4960d01b602082015261019e565b3480156103a6575f80fd5b506101d36103b53660046111e8565b6105d3565b3480156103c5575f80fd5b505f546101d390600160a01b900460ff1681565b3480156103e4575f80fd5b506101706103f3366004611292565b6105df565b348015610403575f80fd5b50610230610412366004611315565b6001600160a01b039182165f90815260086020908152604080832093909416825291909152205490565b348015610447575f80fd5b50610170610456366004611270565b61065b565b6104636106d4565b5f54600160a01b900460ff16156104c15760405162461bcd60e51b815260206004820152601c60248201527f5468652074726164696e6720686173206265656e206f70656e65642e0000000060448201526064015b60405180910390fd5b5f805460ff60a01b1916600160a01b179055565b5f6104e133848461072d565b5060015b92915050565b6104f36106d4565b600391909155600455565b6001600160a01b0383165f908152600860209081526040808320338452909152812054828110156105825760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016104b8565b61058f853385840361072d565b61059a858585610850565b506001949350505050565b6105ad6106d4565b6105b65f610e5e565b565b6105c06106d4565b678ac7230489e800006005819055600655565b5f6104e1338484610850565b6105e76106d4565b5f5b82811015610655578160095f8686858181106106075761060761134c565b905060200201602081019061061c9190611270565b6001600160a01b0316815260208101919091526040015f20805460ff19169115159190911790558061064d81611374565b9150506105e9565b50505050565b6106636106d4565b6001600160a01b0381166106c85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104b8565b6106d181610e5e565b50565b5f546001600160a01b031633146105b65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016104b8565b6001600160a01b03831661078f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104b8565b6001600160a01b0382166107f05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104b8565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108b45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104b8565b6001600160a01b0382166109165760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104b8565b5f81116109775760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104b8565b5f8054600160a01b900460ff1615159003610a15576001600160a01b0383165f9081526009602052604090205460ff16806109c957506001600160a01b0382165f9081526009602052604090205460ff165b610a155760405162461bcd60e51b815260206004820152601d60248201527f45524332303a2054726164696e67206973206e6f74206163746976652e00000060448201526064016104b8565b5f546001600160a01b03848116911614801590610a3f57505f546001600160a01b03838116911614155b15610d6d576001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414801590610a8e57506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b8015610ab757506001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414155b8015610ae057506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b15610b3757600554811115610b375760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016104b8565b600a546001600160a01b03838116911614801590610b7257506001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414155b8015610b9b57506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b8015610bc457506001600160a01b03821673c895288dc97b23609ead146361e464deb5b4cae414155b8015610bed57506001600160a01b03831673c895288dc97b23609ead146361e464deb5b4cae414155b15610c775760065481610c14846001600160a01b03165f9081526007602052604090205490565b610c1e919061138c565b10610c775760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016104b8565b305f908152600760205260409020546005548110610c9457506005545b60015481108015908190610cb25750600a54600160a01b900460ff16155b8015610ccc5750600a546001600160a01b03868116911614155b8015610cf057506001600160a01b0385165f9081526009602052604090205460ff16155b8015610d1457506001600160a01b0384165f9081526009602052604090205460ff16155b15610d6a57610d2282610eba565b478015610d685760405173c895288dc97b23609ead146361e464deb5b4cae4904780156108fc02915f818181858888f19350505050158015610d66573d5f803e3d5ffd5b505b505b50505b6001600160a01b0383165f9081526009602052604081205460ff1680610daa57506001600160a01b0383165f9081526009602052604090205460ff165b80610ddc5750600a546001600160a01b03858116911614801590610ddc5750600a546001600160a01b03848116911614155b15610de857505f610e52565b600a546001600160a01b038581169116148015610e1357506002546001600160a01b03848116911614155b15610e1d57506003545b600a546001600160a01b038481169116148015610e4857506002546001600160a01b03858116911614155b15610e5257506004545b6106558484848461102a565b5f80546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600a805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610f0057610f0061134c565b6001600160a01b03928316602091820292909201810191909152600254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f57573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7b919061139f565b81600181518110610f8e57610f8e61134c565b6001600160a01b039283166020918202929092010152600254610fb4913091168461072d565b60025460405163791ac94760e01b81526001600160a01b039091169063791ac94790610fec9085905f908690309042906004016113ba565b5f604051808303815f87803b158015611003575f80fd5b505af1158015611015573d5f803e3d5ffd5b5050600a805460ff60a01b1916905550505050565b5f60646110378385611429565b6110419190611440565b90505f61104e828561145f565b6001600160a01b0387165f9081526007602052604090205490915061107490859061145f565b6001600160a01b038088165f9081526007602052604080822093909355908716815220546110a390829061138c565b6001600160a01b0386165f90815260076020526040902055811561113457305f908152600760205260409020546110db90839061138c565b305f81815260076020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061112b9086815260200190565b60405180910390a35b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161117991815260200190565b60405180910390a3505050505050565b5f6020808352835180828501525f5b818110156111b457858101830151858201604001528201611198565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106d1575f80fd5b5f80604083850312156111f9575f80fd5b8235611204816111d4565b946020939093013593505050565b5f8060408385031215611223575f80fd5b50508035926020909101359150565b5f805f60608486031215611244575f80fd5b833561124f816111d4565b9250602084013561125f816111d4565b929592945050506040919091013590565b5f60208284031215611280575f80fd5b813561128b816111d4565b9392505050565b5f805f604084860312156112a4575f80fd5b833567ffffffffffffffff808211156112bb575f80fd5b818601915086601f8301126112ce575f80fd5b8135818111156112dc575f80fd5b8760208260051b85010111156112f0575f80fd5b60209283019550935050840135801515811461130a575f80fd5b809150509250925092565b5f8060408385031215611326575f80fd5b8235611331816111d4565b91506020830135611341816111d4565b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f6001820161138557611385611360565b5060010190565b808201808211156104e5576104e5611360565b5f602082840312156113af575f80fd5b815161128b816111d4565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156114085784516001600160a01b0316835293830193918301916001016113e3565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104e5576104e5611360565b5f8261145a57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156104e5576104e561136056fea2646970667358221220eaffc8969e0a1f763d34d70c1c1253974e671b86c61d8e932bba0342f66c3c2364736f6c63430008140033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.