ETH Price: $1,922.53 (-2.76%)
 

Overview

ETH Balance

0.16528501 ETH

Eth Value

$317.77 (@ $1,922.53/ETH)

Token Holdings

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve242745502026-01-20 7:38:5934 days ago1768894739IN
0x1EA83E89...1dB55d2d2
0 ETH0.000003170.06826
Approve222433372025-04-11 4:34:47318 days ago1744346087IN
0x1EA83E89...1dB55d2d2
0 ETH0.000025761.05961681
Approve218189822025-02-10 22:03:47377 days ago1739225027IN
0x1EA83E89...1dB55d2d2
0 ETH0.000032741.12040652
Approve218189712025-02-10 22:01:35377 days ago1739224895IN
0x1EA83E89...1dB55d2d2
0 ETH0.000050841.09776089
Approve204951152024-08-10 2:06:35562 days ago1723255595IN
0x1EA83E89...1dB55d2d2
0 ETH0.000054441.1698453
Transfer204950832024-08-10 2:00:11562 days ago1723255211IN
0x1EA83E89...1dB55d2d2
0 ETH0.000138882.2916066
Approve185553392023-11-12 10:48:35833 days ago1699786115IN
0x1EA83E89...1dB55d2d2
0 ETH0.0012322626.57165156
Approve180842832023-09-07 11:34:59899 days ago1694086499IN
0x1EA83E89...1dB55d2d2
0 ETH0.0003314513.66315445
Approve179937592023-08-25 19:21:59912 days ago1692991319IN
0x1EA83E89...1dB55d2d2
0 ETH0.000838818.1109714
Approve179563792023-08-20 13:53:23917 days ago1692539603IN
0x1EA83E89...1dB55d2d2
0 ETH0.0006879714.85426109
Approve179198472023-08-15 11:08:23922 days ago1692097703IN
0x1EA83E89...1dB55d2d2
0 ETH0.0008547518.34115106
Approve178948922023-08-11 23:23:23926 days ago1691796203IN
0x1EA83E89...1dB55d2d2
0 ETH0.0008313117.86118379
Approve178906412023-08-11 9:05:59927 days ago1691744759IN
0x1EA83E89...1dB55d2d2
0 ETH0.0008922819.17123096
Transfer178880442023-08-11 0:24:23927 days ago1691713463IN
0x1EA83E89...1dB55d2d2
0 ETH0.0007978513.16504406
Approve178740202023-08-09 1:18:11929 days ago1691543891IN
0x1EA83E89...1dB55d2d2
0 ETH0.0009146819.65253508
Approve178370212023-08-03 21:02:47934 days ago1691096567IN
0x1EA83E89...1dB55d2d2
0 ETH0.0012566527.13275348
Approve178366832023-08-03 19:54:23934 days ago1691092463IN
0x1EA83E89...1dB55d2d2
0 ETH0.0011754625.3470318
Approve178345302023-08-03 12:40:11934 days ago1691066411IN
0x1EA83E89...1dB55d2d2
0 ETH0.0003258913.43387252
Approve178293272023-08-02 19:13:35935 days ago1691003615IN
0x1EA83E89...1dB55d2d2
0 ETH0.0021796247
Approve178259752023-08-02 7:59:11936 days ago1690963151IN
0x1EA83E89...1dB55d2d2
0 ETH0.0006874514.8276611
Approve178258022023-08-02 7:24:11936 days ago1690961051IN
0x1EA83E89...1dB55d2d2
0 ETH0.0006594714.16924327
Approve178184722023-08-01 6:50:59937 days ago1690872659IN
0x1EA83E89...1dB55d2d2
0 ETH0.000952420.46297835
Approve178184422023-08-01 6:44:59937 days ago1690872299IN
0x1EA83E89...1dB55d2d2
0 ETH0.0010052521.5983742
Approve178182492023-08-01 6:06:11937 days ago1690869971IN
0x1EA83E89...1dB55d2d2
0 ETH0.0008061217.40536744
Approve178173172023-08-01 2:58:11937 days ago1690858691IN
0x1EA83E89...1dB55d2d2
0 ETH0.0006817814.64844843
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer177854662023-07-27 16:02:11941 days ago1690473731
0x1EA83E89...1dB55d2d2
0.16528501 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:
Z

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2023-07-27
*/

/**
 
*/

/*

Z (Z)

Telegram: https://t.me/Zethportal
Twitter: 

*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.17;

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
   
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

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

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

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

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - amount);
            }
        }

        _transfer(sender, recipient, amount);

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);
    }
}

contract Z is ERC20, Ownable {

    IUniswapV2Router02 public uniswapV2Router;
    mapping (address => bool) private _isExcludedFromFees;
    address public uniswapV2Pair;
    address public marketingWallet;

    uint256 public swapTokensAtAmount;
    bool private swapping;
    bool public tradingEnabled;

    uint256 public buyTax;
    uint256 public sellTax;

    constructor () ERC20("Z", "Z") 
    {   
        address router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(router);
        address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair   = _uniswapV2Pair;

        _approve(address(this), address(uniswapV2Router), type(uint256).max);
        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[address(this)] = true;
        marketingWallet = msg.sender;
        _mint(msg.sender, 690_000_000_000_000 * 1e18);
        swapTokensAtAmount = totalSupply() / 5_000;
    }

    receive() external payable {}

    
    

    function changeMarketingWallet(address who) public onlyOwner { 
        marketingWallet = who;
    }

    function setTaxes(uint256 _buyTax, uint256 _sellTax) public onlyOwner {
        require(_buyTax <= 40 && _sellTax <= 40, "Cannot set above 40%.");
        buyTax = _buyTax;
        sellTax = _sellTax;
    }

    function enableTrading() external onlyOwner {
        require(!tradingEnabled, "Trading already enabled.");
        tradingEnabled = true;
    }

    function _transfer(address from,address to,uint256 amount) internal  override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Cannot transfer 0 tokens.");
        require(tradingEnabled || from == owner(), "Trading not yet enabled!");
       
		uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance >= swapTokensAtAmount;

        if (canSwap &&
            !swapping &&
            to == uniswapV2Pair
        ) {
            swapping = true;

            swapAndSendMarketing(contractTokenBalance);     

            swapping = false;
        }

        uint256 _totalFees;
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to] || swapping) {
            _totalFees = 0;
        } else if (from == uniswapV2Pair) {
            _totalFees = buyTax;
        } else if (to == uniswapV2Pair) {
            _totalFees = sellTax;
        } else {
            _totalFees = 0;
        }

        if (_totalFees > 0) {
            uint256 fees = (amount * _totalFees) / 100;
            amount = amount - fees;
            super._transfer(from, address(this), fees);
        }

        super._transfer(from, to, amount);
    }

    function swapAndSendMarketing(uint256 tokenAmount) private {

        if(tokenAmount == 0) {
            return;
        }

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        try
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            marketingWallet,
            block.timestamp
        )
        {}
        catch {}
    }


    function rescueTokens(address token) public onlyOwner {
        uint256 caBalances = IERC20(token).balanceOf(address(this));
        IERC20(token).transfer(msg.sender, caBalances);
    }

}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"changeMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"rescueTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyTax","type":"uint256"},{"internalType":"uint256","name":"_sellTax","type":"uint256"}],"name":"setTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","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"}]

60806040523480156200001157600080fd5b506040805180820182526001808252602d60f91b60208084018290528451808601909552918452908301529060036200004b8382620005d3565b5060046200005a8282620005d3565b50505060006200006f6200031960201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d905060008190506000816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200014291906200069f565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000190573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b691906200069f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000204573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200022a91906200069f565b600680546001600160a01b038086166001600160a01b0319928316811790935560088054918516919092161790559091506200026b9030906000196200031d565b600160076000620002846005546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff199586161790553081526007909252902080549091166001179055600980546001600160a01b03191633908117909155620002f3906d2205063ea95de72941608000000062000449565b6113886200030060025490565b6200030c9190620006d1565b600a55506200071c915050565b3390565b6001600160a01b038316620003855760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b038216620003e85760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016200037c565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038216620004a15760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200037c565b8060026000828254620004b59190620006f4565b90915550506001600160a01b03821660009081526020819052604081208054839290620004e4908490620006f4565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200055957607f821691505b6020821081036200057a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005ce57600081815260208120601f850160051c81016020861015620005a95750805b601f850160051c820191505b81811015620005ca57828155600101620005b5565b5050505b505050565b81516001600160401b03811115620005ef57620005ef6200052e565b620006078162000600845462000544565b8462000580565b602080601f8311600181146200063f5760008415620006265750858301515b600019600386901b1c1916600185901b178555620005ca565b600085815260208120601f198616915b8281101562000670578886015182559484019460019091019084016200064f565b50858210156200068f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620006b257600080fd5b81516001600160a01b0381168114620006ca57600080fd5b9392505050565b600082620006ef57634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156200071657634e487b7160e01b600052601160045260246000fd5b92915050565b6114d6806200072c6000396000f3fe6080604052600436106101695760003560e01c8063715018a6116100d1578063a9059cbb1161008a578063cc1776d311610064578063cc1776d31461042d578063dd62ed3e14610443578063e2f4560514610489578063f2fde38b1461049f57600080fd5b8063a9059cbb146103cd578063bb85c6d1146103ed578063c647b20e1461040d57600080fd5b8063715018a61461033057806375f0a874146103455780638a8c523c146103655780638da5cb5b1461037a57806395d89b4114610398578063a457c2d7146103ad57600080fd5b8063313ce56711610123578063313ce56714610269578063395093511461028557806349bd5a5e146102a55780634ada218b146102c55780634f7041a5146102e457806370a08231146102fa57600080fd5b8062ae3bf81461017557806306fdde0314610197578063095ea7b3146101c25780631694505e146101f257806318160ddd1461022a57806323b872dd1461024957600080fd5b3661017057005b600080fd5b34801561018157600080fd5b5061019561019036600461111b565b6104bf565b005b3480156101a357600080fd5b506101ac6105d6565b6040516101b9919061113f565b60405180910390f35b3480156101ce57600080fd5b506101e26101dd36600461118d565b610668565b60405190151581526020016101b9565b3480156101fe57600080fd5b50600654610212906001600160a01b031681565b6040516001600160a01b0390911681526020016101b9565b34801561023657600080fd5b506002545b6040519081526020016101b9565b34801561025557600080fd5b506101e26102643660046111b9565b61067f565b34801561027557600080fd5b50604051601281526020016101b9565b34801561029157600080fd5b506101e26102a036600461118d565b610730565b3480156102b157600080fd5b50600854610212906001600160a01b031681565b3480156102d157600080fd5b50600b546101e290610100900460ff1681565b3480156102f057600080fd5b5061023b600c5481565b34801561030657600080fd5b5061023b61031536600461111b565b6001600160a01b031660009081526020819052604090205490565b34801561033c57600080fd5b5061019561076c565b34801561035157600080fd5b50600954610212906001600160a01b031681565b34801561037157600080fd5b506101956107e0565b34801561038657600080fd5b506005546001600160a01b0316610212565b3480156103a457600080fd5b506101ac610873565b3480156103b957600080fd5b506101e26103c836600461118d565b610882565b3480156103d957600080fd5b506101e26103e836600461118d565b61091b565b3480156103f957600080fd5b5061019561040836600461111b565b610928565b34801561041957600080fd5b506101956104283660046111fa565b610974565b34801561043957600080fd5b5061023b600d5481565b34801561044f57600080fd5b5061023b61045e36600461121c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561049557600080fd5b5061023b600a5481565b3480156104ab57600080fd5b506101956104ba36600461111b565b6109ff565b6005546001600160a01b031633146104f25760405162461bcd60e51b81526004016104e990611255565b60405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d919061128a565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af11580156105ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d191906112a3565b505050565b6060600380546105e5906112c5565b80601f0160208091040260200160405190810160405280929190818152602001828054610611906112c5565b801561065e5780601f106106335761010080835404028352916020019161065e565b820191906000526020600020905b81548152906001019060200180831161064157829003601f168201915b5050505050905090565b6000610675338484610aea565b5060015b92915050565b6001600160a01b0383166000908152600160209081526040808320338452909152812054600019811461071a578281101561070d5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016104e9565b61071a8533858403610aea565b610725858585610c0e565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610675918590610767908690611315565b610aea565b6005546001600160a01b031633146107965760405162461bcd60e51b81526004016104e990611255565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b0316331461080a5760405162461bcd60e51b81526004016104e990611255565b600b54610100900460ff16156108625760405162461bcd60e51b815260206004820152601860248201527f54726164696e6720616c726561647920656e61626c65642e000000000000000060448201526064016104e9565b600b805461ff001916610100179055565b6060600480546105e5906112c5565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156109045760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104e9565b6109113385858403610aea565b5060019392505050565b6000610675338484610c0e565b6005546001600160a01b031633146109525760405162461bcd60e51b81526004016104e990611255565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b0316331461099e5760405162461bcd60e51b81526004016104e990611255565b602882111580156109b0575060288111155b6109f45760405162461bcd60e51b815260206004820152601560248201527421b0b73737ba1039b2ba1030b137bb32901a18129760591b60448201526064016104e9565b600c91909155600d55565b6005546001600160a01b03163314610a295760405162461bcd60e51b81526004016104e990611255565b6001600160a01b038116610a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104e9565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610b4c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104e9565b6001600160a01b038216610bad5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104e9565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c345760405162461bcd60e51b81526004016104e990611328565b6001600160a01b038216610c5a5760405162461bcd60e51b81526004016104e99061136d565b60008111610caa5760405162461bcd60e51b815260206004820152601960248201527f43616e6e6f74207472616e73666572203020746f6b656e732e0000000000000060448201526064016104e9565b600b54610100900460ff1680610ccd57506005546001600160a01b038481169116145b610d195760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016104e9565b30600090815260208190526040902054600a5481108015908190610d405750600b5460ff16155b8015610d5957506008546001600160a01b038581169116145b15610d7f57600b805460ff19166001179055610d7482610e66565b600b805460ff191690555b6001600160a01b03851660009081526007602052604081205460ff1680610dbe57506001600160a01b03851660009081526007602052604090205460ff165b80610dcb5750600b5460ff165b15610dd857506000610e1a565b6008546001600160a01b0390811690871603610df75750600c54610e1a565b6008546001600160a01b0390811690861603610e165750600d54610e1a565b5060005b8015610e535760006064610e2e83876113b0565b610e3891906113c7565b9050610e4481866113e9565b9450610e51873083610fae565b505b610e5e868686610fae565b505050505050565b80600003610e715750565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ea657610ea66113fc565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f239190611412565b81600181518110610f3657610f366113fc565b6001600160a01b03928316602091820292909201015260065460095460405163791ac94760e01b81529183169263791ac94792610f82928792600092889290911690429060040161142f565b600060405180830381600087803b158015610f9c57600080fd5b505af19250505080156105d157505050565b6001600160a01b038316610fd45760405162461bcd60e51b81526004016104e990611328565b6001600160a01b038216610ffa5760405162461bcd60e51b81526004016104e99061136d565b6001600160a01b038316600090815260208190526040902054818110156110725760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104e9565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906110a9908490611315565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110f591815260200190565b60405180910390a350505050565b6001600160a01b038116811461111857600080fd5b50565b60006020828403121561112d57600080fd5b813561113881611103565b9392505050565b600060208083528351808285015260005b8181101561116c57858101830151858201604001528201611150565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156111a057600080fd5b82356111ab81611103565b946020939093013593505050565b6000806000606084860312156111ce57600080fd5b83356111d981611103565b925060208401356111e981611103565b929592945050506040919091013590565b6000806040838503121561120d57600080fd5b50508035926020909101359150565b6000806040838503121561122f57600080fd5b823561123a81611103565b9150602083013561124a81611103565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561129c57600080fd5b5051919050565b6000602082840312156112b557600080fd5b8151801515811461113857600080fd5b600181811c908216806112d957607f821691505b6020821081036112f957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610679576106796112ff565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8082028115828204841417610679576106796112ff565b6000826113e457634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610679576106796112ff565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561142457600080fd5b815161113881611103565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561147f5784516001600160a01b03168352938301939183019160010161145a565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122074b82b6e328c98bca66b61e148a92a9622110c16bf858b30d845bbf975a119f664736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101695760003560e01c8063715018a6116100d1578063a9059cbb1161008a578063cc1776d311610064578063cc1776d31461042d578063dd62ed3e14610443578063e2f4560514610489578063f2fde38b1461049f57600080fd5b8063a9059cbb146103cd578063bb85c6d1146103ed578063c647b20e1461040d57600080fd5b8063715018a61461033057806375f0a874146103455780638a8c523c146103655780638da5cb5b1461037a57806395d89b4114610398578063a457c2d7146103ad57600080fd5b8063313ce56711610123578063313ce56714610269578063395093511461028557806349bd5a5e146102a55780634ada218b146102c55780634f7041a5146102e457806370a08231146102fa57600080fd5b8062ae3bf81461017557806306fdde0314610197578063095ea7b3146101c25780631694505e146101f257806318160ddd1461022a57806323b872dd1461024957600080fd5b3661017057005b600080fd5b34801561018157600080fd5b5061019561019036600461111b565b6104bf565b005b3480156101a357600080fd5b506101ac6105d6565b6040516101b9919061113f565b60405180910390f35b3480156101ce57600080fd5b506101e26101dd36600461118d565b610668565b60405190151581526020016101b9565b3480156101fe57600080fd5b50600654610212906001600160a01b031681565b6040516001600160a01b0390911681526020016101b9565b34801561023657600080fd5b506002545b6040519081526020016101b9565b34801561025557600080fd5b506101e26102643660046111b9565b61067f565b34801561027557600080fd5b50604051601281526020016101b9565b34801561029157600080fd5b506101e26102a036600461118d565b610730565b3480156102b157600080fd5b50600854610212906001600160a01b031681565b3480156102d157600080fd5b50600b546101e290610100900460ff1681565b3480156102f057600080fd5b5061023b600c5481565b34801561030657600080fd5b5061023b61031536600461111b565b6001600160a01b031660009081526020819052604090205490565b34801561033c57600080fd5b5061019561076c565b34801561035157600080fd5b50600954610212906001600160a01b031681565b34801561037157600080fd5b506101956107e0565b34801561038657600080fd5b506005546001600160a01b0316610212565b3480156103a457600080fd5b506101ac610873565b3480156103b957600080fd5b506101e26103c836600461118d565b610882565b3480156103d957600080fd5b506101e26103e836600461118d565b61091b565b3480156103f957600080fd5b5061019561040836600461111b565b610928565b34801561041957600080fd5b506101956104283660046111fa565b610974565b34801561043957600080fd5b5061023b600d5481565b34801561044f57600080fd5b5061023b61045e36600461121c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561049557600080fd5b5061023b600a5481565b3480156104ab57600080fd5b506101956104ba36600461111b565b6109ff565b6005546001600160a01b031633146104f25760405162461bcd60e51b81526004016104e990611255565b60405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d919061128a565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af11580156105ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d191906112a3565b505050565b6060600380546105e5906112c5565b80601f0160208091040260200160405190810160405280929190818152602001828054610611906112c5565b801561065e5780601f106106335761010080835404028352916020019161065e565b820191906000526020600020905b81548152906001019060200180831161064157829003601f168201915b5050505050905090565b6000610675338484610aea565b5060015b92915050565b6001600160a01b0383166000908152600160209081526040808320338452909152812054600019811461071a578281101561070d5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016104e9565b61071a8533858403610aea565b610725858585610c0e565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610675918590610767908690611315565b610aea565b6005546001600160a01b031633146107965760405162461bcd60e51b81526004016104e990611255565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b0316331461080a5760405162461bcd60e51b81526004016104e990611255565b600b54610100900460ff16156108625760405162461bcd60e51b815260206004820152601860248201527f54726164696e6720616c726561647920656e61626c65642e000000000000000060448201526064016104e9565b600b805461ff001916610100179055565b6060600480546105e5906112c5565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156109045760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104e9565b6109113385858403610aea565b5060019392505050565b6000610675338484610c0e565b6005546001600160a01b031633146109525760405162461bcd60e51b81526004016104e990611255565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b0316331461099e5760405162461bcd60e51b81526004016104e990611255565b602882111580156109b0575060288111155b6109f45760405162461bcd60e51b815260206004820152601560248201527421b0b73737ba1039b2ba1030b137bb32901a18129760591b60448201526064016104e9565b600c91909155600d55565b6005546001600160a01b03163314610a295760405162461bcd60e51b81526004016104e990611255565b6001600160a01b038116610a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104e9565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610b4c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104e9565b6001600160a01b038216610bad5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104e9565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c345760405162461bcd60e51b81526004016104e990611328565b6001600160a01b038216610c5a5760405162461bcd60e51b81526004016104e99061136d565b60008111610caa5760405162461bcd60e51b815260206004820152601960248201527f43616e6e6f74207472616e73666572203020746f6b656e732e0000000000000060448201526064016104e9565b600b54610100900460ff1680610ccd57506005546001600160a01b038481169116145b610d195760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016104e9565b30600090815260208190526040902054600a5481108015908190610d405750600b5460ff16155b8015610d5957506008546001600160a01b038581169116145b15610d7f57600b805460ff19166001179055610d7482610e66565b600b805460ff191690555b6001600160a01b03851660009081526007602052604081205460ff1680610dbe57506001600160a01b03851660009081526007602052604090205460ff165b80610dcb5750600b5460ff165b15610dd857506000610e1a565b6008546001600160a01b0390811690871603610df75750600c54610e1a565b6008546001600160a01b0390811690861603610e165750600d54610e1a565b5060005b8015610e535760006064610e2e83876113b0565b610e3891906113c7565b9050610e4481866113e9565b9450610e51873083610fae565b505b610e5e868686610fae565b505050505050565b80600003610e715750565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610ea657610ea66113fc565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f239190611412565b81600181518110610f3657610f366113fc565b6001600160a01b03928316602091820292909201015260065460095460405163791ac94760e01b81529183169263791ac94792610f82928792600092889290911690429060040161142f565b600060405180830381600087803b158015610f9c57600080fd5b505af19250505080156105d157505050565b6001600160a01b038316610fd45760405162461bcd60e51b81526004016104e990611328565b6001600160a01b038216610ffa5760405162461bcd60e51b81526004016104e99061136d565b6001600160a01b038316600090815260208190526040902054818110156110725760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104e9565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906110a9908490611315565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110f591815260200190565b60405180910390a350505050565b6001600160a01b038116811461111857600080fd5b50565b60006020828403121561112d57600080fd5b813561113881611103565b9392505050565b600060208083528351808285015260005b8181101561116c57858101830151858201604001528201611150565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156111a057600080fd5b82356111ab81611103565b946020939093013593505050565b6000806000606084860312156111ce57600080fd5b83356111d981611103565b925060208401356111e981611103565b929592945050506040919091013590565b6000806040838503121561120d57600080fd5b50508035926020909101359150565b6000806040838503121561122f57600080fd5b823561123a81611103565b9150602083013561124a81611103565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561129c57600080fd5b5051919050565b6000602082840312156112b557600080fd5b8151801515811461113857600080fd5b600181811c908216806112d957607f821691505b6020821081036112f957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610679576106796112ff565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8082028115828204841417610679576106796112ff565b6000826113e457634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610679576106796112ff565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561142457600080fd5b815161113881611103565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561147f5784516001600160a01b03168352938301939183019160010161145a565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122074b82b6e328c98bca66b61e148a92a9622110c16bf858b30d845bbf975a119f664736f6c63430008130033

Deployed Bytecode Sourcemap

7009:3760:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10575:189;;;;;;;;;;-1:-1:-1;10575:189:0;;;;;:::i;:::-;;:::i;:::-;;3399:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4313:169;;;;;;;;;;-1:-1:-1;4313:169:0;;;;;:::i;:::-;;:::i;:::-;;;1440:14:1;;1433:22;1415:41;;1403:2;1388:18;4313:169:0;1275:187:1;7047:41:0;;;;;;;;;;-1:-1:-1;7047:41:0;;;;-1:-1:-1;;;;;7047:41:0;;;;;;-1:-1:-1;;;;;1656:32:1;;;1638:51;;1626:2;1611:18;7047:41:0;1467:228:1;3720:108:0;;;;;;;;;;-1:-1:-1;3808:12:0;;3720:108;;;1846:25:1;;;1834:2;1819:18;3720:108:0;1700:177:1;4490:573:0;;;;;;;;;;-1:-1:-1;4490:573:0;;;;;:::i;:::-;;:::i;3619:93::-;;;;;;;;;;-1:-1:-1;3619:93:0;;3702:2;2485:36:1;;2473:2;2458:18;3619:93:0;2343:184:1;5071:215:0;;;;;;;;;;-1:-1:-1;5071:215:0;;;;;:::i;:::-;;:::i;7155:28::-;;;;;;;;;;-1:-1:-1;7155:28:0;;;;-1:-1:-1;;;;;7155:28:0;;;7297:26;;;;;;;;;;-1:-1:-1;7297:26:0;;;;;;;;;;;7332:21;;;;;;;;;;;;;;;;3836:127;;;;;;;;;;-1:-1:-1;3836:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;3937:18:0;3910:7;3937:18;;;;;;;;;;;;3836:127;2586:148;;;;;;;;;;;;;:::i;7190:30::-;;;;;;;;;;-1:-1:-1;7190:30:0;;;;-1:-1:-1;;;;;7190:30:0;;;8536:147;;;;;;;;;;;;;:::i;2372:79::-;;;;;;;;;;-1:-1:-1;2437:6:0;;-1:-1:-1;;;;;2437:6:0;2372:79;;3507:104;;;;;;;;;;;;;:::i;5294:413::-;;;;;;;;;;-1:-1:-1;5294:413:0;;;;;:::i;:::-;;:::i;3971:175::-;;;;;;;;;;-1:-1:-1;3971:175:0;;;;;:::i;:::-;;:::i;8208:102::-;;;;;;;;;;-1:-1:-1;8208:102:0;;;;;:::i;:::-;;:::i;8318:210::-;;;;;;;;;;-1:-1:-1;8318:210:0;;;;;:::i;:::-;;:::i;7360:22::-;;;;;;;;;;;;;;;;4154:151;;;;;;;;;;-1:-1:-1;4154:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;4270:18:0;;;4243:7;4270:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4154:151;7229:33;;;;;;;;;;;;;;;;2742:244;;;;;;;;;;-1:-1:-1;2742:244:0;;;;;:::i;:::-;;:::i;10575:189::-;2499:6;;-1:-1:-1;;;;;2499:6:0;1775:10;2499:22;2491:67;;;;-1:-1:-1;;;2491:67:0;;;;;;;:::i;:::-;;;;;;;;;10661:38:::1;::::0;-1:-1:-1;;;10661:38:0;;10693:4:::1;10661:38;::::0;::::1;1638:51:1::0;10640:18:0::1;::::0;-1:-1:-1;;;;;10661:23:0;::::1;::::0;::::1;::::0;1611:18:1;;10661:38:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10710:46;::::0;-1:-1:-1;;;10710:46:0;;10733:10:::1;10710:46;::::0;::::1;4110:51:1::0;4177:18;;;4170:34;;;10640:59:0;;-1:-1:-1;;;;;;10710:22:0;::::1;::::0;::::1;::::0;4083:18:1;;10710:46:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10629:135;10575:189:::0;:::o;3399:100::-;3453:13;3486:5;3479:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3399:100;:::o;4313:169::-;4396:4;4413:39;1775:10;4436:7;4445:6;4413:8;:39::i;:::-;-1:-1:-1;4470:4:0;4313:169;;;;;:::o;4490:573::-;-1:-1:-1;;;;;4674:19:0;;4630:4;4674:19;;;:11;:19;;;;;;;;1775:10;4674:33;;;;;;;;-1:-1:-1;;4722:37:0;;4718:265;;4804:6;4784:16;:26;;4776:79;;;;-1:-1:-1;;;4776:79:0;;5084:2:1;4776:79:0;;;5066:21:1;5123:2;5103:18;;;5096:30;5162:34;5142:18;;;5135:62;-1:-1:-1;;;5213:18:1;;;5206:38;5261:19;;4776:79:0;4882:404:1;4776:79:0;4899:57;4908:6;1775:10;4949:6;4930:16;:25;4899:8;:57::i;:::-;4995:36;5005:6;5013:9;5024:6;4995:9;:36::i;:::-;-1:-1:-1;5051:4:0;;4490:573;-1:-1:-1;;;;4490:573:0:o;5071:215::-;1775:10;5159:4;5208:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5208:34:0;;;;;;;;;;5159:4;;5176:80;;5199:7;;5208:47;;5245:10;;5208:47;:::i;:::-;5176:8;:80::i;2586:148::-;2499:6;;-1:-1:-1;;;;;2499:6:0;1775:10;2499:22;2491:67;;;;-1:-1:-1;;;2491:67:0;;;;;;;:::i;:::-;2677:6:::1;::::0;2656:40:::1;::::0;2693:1:::1;::::0;-1:-1:-1;;;;;2677:6:0::1;::::0;2656:40:::1;::::0;2693:1;;2656:40:::1;2707:6;:19:::0;;-1:-1:-1;;;;;;2707:19:0::1;::::0;;2586:148::o;8536:147::-;2499:6;;-1:-1:-1;;;;;2499:6:0;1775:10;2499:22;2491:67;;;;-1:-1:-1;;;2491:67:0;;;;;;;:::i;:::-;8600:14:::1;::::0;::::1;::::0;::::1;;;8599:15;8591:52;;;::::0;-1:-1:-1;;;8591:52:0;;5755:2:1;8591:52:0::1;::::0;::::1;5737:21:1::0;5794:2;5774:18;;;5767:30;5833:26;5813:18;;;5806:54;5877:18;;8591:52:0::1;5553:348:1::0;8591:52:0::1;8654:14;:21:::0;;-1:-1:-1;;8654:21:0::1;;;::::0;;8536:147::o;3507:104::-;3563:13;3596:7;3589:14;;;;;:::i;5294:413::-;1775:10;5387:4;5431:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5431:34:0;;;;;;;;;;5484:35;;;;5476:85;;;;-1:-1:-1;;;5476:85:0;;6108:2:1;5476:85:0;;;6090:21:1;6147:2;6127:18;;;6120:30;6186:34;6166:18;;;6159:62;-1:-1:-1;;;6237:18:1;;;6230:35;6282:19;;5476:85:0;5906:401:1;5476:85:0;5597:67;1775:10;5620:7;5648:15;5629:16;:34;5597:8;:67::i;:::-;-1:-1:-1;5695:4:0;;5294:413;-1:-1:-1;;;5294:413:0:o;3971:175::-;4057:4;4074:42;1775:10;4098:9;4109:6;4074:9;:42::i;8208:102::-;2499:6;;-1:-1:-1;;;;;2499:6:0;1775:10;2499:22;2491:67;;;;-1:-1:-1;;;2491:67:0;;;;;;;:::i;:::-;8281:15:::1;:21:::0;;-1:-1:-1;;;;;;8281:21:0::1;-1:-1:-1::0;;;;;8281:21:0;;;::::1;::::0;;;::::1;::::0;;8208:102::o;8318:210::-;2499:6;;-1:-1:-1;;;;;2499:6:0;1775:10;2499:22;2491:67;;;;-1:-1:-1;;;2491:67:0;;;;;;;:::i;:::-;8418:2:::1;8407:7;:13;;:31;;;;;8436:2;8424:8;:14;;8407:31;8399:65;;;::::0;-1:-1:-1;;;8399:65:0;;6514:2:1;8399:65:0::1;::::0;::::1;6496:21:1::0;6553:2;6533:18;;;6526:30;-1:-1:-1;;;6572:18:1;;;6565:51;6633:18;;8399:65:0::1;6312:345:1::0;8399:65:0::1;8475:6;:16:::0;;;;8502:7:::1;:18:::0;8318:210::o;2742:244::-;2499:6;;-1:-1:-1;;;;;2499:6:0;1775:10;2499:22;2491:67;;;;-1:-1:-1;;;2491:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2831:22:0;::::1;2823:73;;;::::0;-1:-1:-1;;;2823:73:0;;6864:2:1;2823:73:0::1;::::0;::::1;6846:21:1::0;6903:2;6883:18;;;6876:30;6942:34;6922:18;;;6915:62;-1:-1:-1;;;6993:18:1;;;6986:36;7039:19;;2823:73:0::1;6662:402:1::0;2823:73:0::1;2933:6;::::0;2912:38:::1;::::0;-1:-1:-1;;;;;2912:38:0;;::::1;::::0;2933:6:::1;::::0;2912:38:::1;::::0;2933:6:::1;::::0;2912:38:::1;2961:6;:17:::0;;-1:-1:-1;;;;;;2961:17:0::1;-1:-1:-1::0;;;;;2961:17:0;;;::::1;::::0;;;::::1;::::0;;2742:244::o;6337:380::-;-1:-1:-1;;;;;6473:19:0;;6465:68;;;;-1:-1:-1;;;6465:68:0;;7271:2:1;6465:68:0;;;7253:21:1;7310:2;7290:18;;;7283:30;7349:34;7329:18;;;7322:62;-1:-1:-1;;;7400:18:1;;;7393:34;7444:19;;6465:68:0;7069:400:1;6465:68:0;-1:-1:-1;;;;;6552:21:0;;6544:68;;;;-1:-1:-1;;;6544:68:0;;7676:2:1;6544:68:0;;;7658:21:1;7715:2;7695:18;;;7688:30;7754:34;7734:18;;;7727:62;-1:-1:-1;;;7805:18:1;;;7798:32;7847:19;;6544:68:0;7474:398:1;6544:68:0;-1:-1:-1;;;;;6625:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6677:32;;1846:25:1;;;6677:32:0;;1819:18:1;6677:32:0;;;;;;;6337:380;;;:::o;8691:1352::-;-1:-1:-1;;;;;8788:18:0;;8780:68;;;;-1:-1:-1;;;8780:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8867:16:0;;8859:64;;;;-1:-1:-1;;;8859:64:0;;;;;;;:::i;:::-;8951:1;8942:6;:10;8934:48;;;;-1:-1:-1;;;8934:48:0;;8889:2:1;8934:48:0;;;8871:21:1;8928:2;8908:18;;;8901:30;8967:27;8947:18;;;8940:55;9012:18;;8934:48:0;8687:349:1;8934:48:0;9001:14;;;;;;;;:33;;-1:-1:-1;2437:6:0;;-1:-1:-1;;;;;9019:15:0;;;2437:6;;9019:15;9001:33;8993:70;;;;-1:-1:-1;;;8993:70:0;;9243:2:1;8993:70:0;;;9225:21:1;9282:2;9262:18;;;9255:30;9321:26;9301:18;;;9294:54;9365:18;;8993:70:0;9041:348:1;8993:70:0;9126:4;9077:28;3937:18;;;;;;;;;;;9184;;9160:42;;;;;;;9219:33;;-1:-1:-1;9244:8:0;;;;9243:9;9219:33;:69;;;;-1:-1:-1;9275:13:0;;-1:-1:-1;;;;;9269:19:0;;;9275:13;;9269:19;9219:69;9215:224;;;9315:8;:15;;-1:-1:-1;;9315:15:0;9326:4;9315:15;;;9347:42;9368:20;9347;:42::i;:::-;9411:8;:16;;-1:-1:-1;;9411:16:0;;;9215:224;-1:-1:-1;;;;;9484:25:0;;9451:18;9484:25;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;9513:23:0;;;;;;:19;:23;;;;;;;;9484:52;:64;;;-1:-1:-1;9540:8:0;;;;9484:64;9480:315;;;-1:-1:-1;9578:1:0;9480:315;;;9609:13;;-1:-1:-1;;;;;9609:13:0;;;9601:21;;;;9597:198;;-1:-1:-1;9652:6:0;;9597:198;;;9686:13;;-1:-1:-1;;;;;9686:13:0;;;9680:19;;;;9676:119;;-1:-1:-1;9729:7:0;;9676:119;;;-1:-1:-1;9782:1:0;9676:119;9811:14;;9807:183;;9842:12;9881:3;9858:19;9867:10;9858:6;:19;:::i;:::-;9857:27;;;;:::i;:::-;9842:42;-1:-1:-1;9908:13:0;9842:42;9908:6;:13;:::i;:::-;9899:22;;9936:42;9952:4;9966;9973;9936:15;:42::i;:::-;9827:163;9807:183;10002:33;10018:4;10024:2;10028:6;10002:15;:33::i;:::-;8769:1274;;;8691:1352;;;:::o;10051:514::-;10126:11;10141:1;10126:16;10123:54;;10051:514;:::o;10123:54::-;10213:16;;;10227:1;10213:16;;;;;;;;10189:21;;10213:16;;;;;;;;;;-1:-1:-1;10213:16:0;10189:40;;10258:4;10240;10245:1;10240:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10240:23:0;;;:7;;;;;;;;;;:23;;;;10284:15;;:22;;;-1:-1:-1;;;10284:22:0;;;;:15;;;;;:20;;:22;;;;;10240:7;;10284:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10274:4;10279:1;10274:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10274:32:0;;;:7;;;;;;;;;:32;10330:15;;10472;;10330:198;;-1:-1:-1;;;10330:198:0;;:15;;;;:66;;:198;;10411:11;;10330:15;;10453:4;;10472:15;;;;10502;;10330:198;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10110:455;10051:514;:::o;5715:614::-;-1:-1:-1;;;;;5855:20:0;;5847:70;;;;-1:-1:-1;;;5847:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5936:23:0;;5928:71;;;;-1:-1:-1;;;5928:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6036:17:0;;6012:21;6036:17;;;;;;;;;;;6072:23;;;;6064:74;;;;-1:-1:-1;;;6064:74:0;;11629:2:1;6064:74:0;;;11611:21:1;11668:2;11648:18;;;11641:30;11707:34;11687:18;;;11680:62;-1:-1:-1;;;11758:18:1;;;11751:36;11804:19;;6064:74:0;11427:402:1;6064:74:0;-1:-1:-1;;;;;6174:17:0;;;:9;:17;;;;;;;;;;;6194:22;;;6174:42;;6238:20;;;;;;;;:30;;6210:6;;6174:9;6238:30;;6210:6;;6238:30;:::i;:::-;;;;;;;;6303:9;-1:-1:-1;;;;;6286:35:0;6295:6;-1:-1:-1;;;;;6286:35:0;;6314:6;6286:35;;;;1846:25:1;;1834:2;1819:18;;1700:177;6286:35:0;;;;;;;;5836:493;5715:614;;;:::o;14:131:1:-;-1:-1:-1;;;;;89:31:1;;79:42;;69:70;;135:1;132;125:12;69:70;14:131;:::o;150:247::-;209:6;262:2;250:9;241:7;237:23;233:32;230:52;;;278:1;275;268:12;230:52;317:9;304:23;336:31;361:5;336:31;:::i;:::-;386:5;150:247;-1:-1:-1;;;150:247:1:o;402:548::-;514:4;543:2;572;561:9;554:21;604:6;598:13;647:6;642:2;631:9;627:18;620:34;672:1;682:140;696:6;693:1;690:13;682:140;;;791:14;;;787:23;;781:30;757:17;;;776:2;753:26;746:66;711:10;;682:140;;;686:3;871:1;866:2;857:6;846:9;842:22;838:31;831:42;941:2;934;930:7;925:2;917:6;913:15;909:29;898:9;894:45;890:54;882:62;;;;402:548;;;;:::o;955:315::-;1023:6;1031;1084:2;1072:9;1063:7;1059:23;1055:32;1052:52;;;1100:1;1097;1090:12;1052:52;1139:9;1126:23;1158:31;1183:5;1158:31;:::i;:::-;1208:5;1260:2;1245:18;;;;1232:32;;-1:-1:-1;;;955:315:1:o;1882:456::-;1959:6;1967;1975;2028:2;2016:9;2007:7;2003:23;1999:32;1996:52;;;2044:1;2041;2034:12;1996:52;2083:9;2070:23;2102:31;2127:5;2102:31;:::i;:::-;2152:5;-1:-1:-1;2209:2:1;2194:18;;2181:32;2222:33;2181:32;2222:33;:::i;:::-;1882:456;;2274:7;;-1:-1:-1;;;2328:2:1;2313:18;;;;2300:32;;1882:456::o;2740:248::-;2808:6;2816;2869:2;2857:9;2848:7;2844:23;2840:32;2837:52;;;2885:1;2882;2875:12;2837:52;-1:-1:-1;;2908:23:1;;;2978:2;2963:18;;;2950:32;;-1:-1:-1;2740:248:1:o;2993:388::-;3061:6;3069;3122:2;3110:9;3101:7;3097:23;3093:32;3090:52;;;3138:1;3135;3128:12;3090:52;3177:9;3164:23;3196:31;3221:5;3196:31;:::i;:::-;3246:5;-1:-1:-1;3303:2:1;3288:18;;3275:32;3316:33;3275:32;3316:33;:::i;:::-;3368:7;3358:17;;;2993:388;;;;;:::o;3386:356::-;3588:2;3570:21;;;3607:18;;;3600:30;3666:34;3661:2;3646:18;;3639:62;3733:2;3718:18;;3386:356::o;3747:184::-;3817:6;3870:2;3858:9;3849:7;3845:23;3841:32;3838:52;;;3886:1;3883;3876:12;3838:52;-1:-1:-1;3909:16:1;;3747:184;-1:-1:-1;3747:184:1:o;4215:277::-;4282:6;4335:2;4323:9;4314:7;4310:23;4306:32;4303:52;;;4351:1;4348;4341:12;4303:52;4383:9;4377:16;4436:5;4429:13;4422:21;4415:5;4412:32;4402:60;;4458:1;4455;4448:12;4497:380;4576:1;4572:12;;;;4619;;;4640:61;;4694:4;4686:6;4682:17;4672:27;;4640:61;4747:2;4739:6;4736:14;4716:18;4713:38;4710:161;;4793:10;4788:3;4784:20;4781:1;4774:31;4828:4;4825:1;4818:15;4856:4;4853:1;4846:15;4710:161;;4497:380;;;:::o;5291:127::-;5352:10;5347:3;5343:20;5340:1;5333:31;5383:4;5380:1;5373:15;5407:4;5404:1;5397:15;5423:125;5488:9;;;5509:10;;;5506:36;;;5522:18;;:::i;7877:401::-;8079:2;8061:21;;;8118:2;8098:18;;;8091:30;8157:34;8152:2;8137:18;;8130:62;-1:-1:-1;;;8223:2:1;8208:18;;8201:35;8268:3;8253:19;;7877:401::o;8283:399::-;8485:2;8467:21;;;8524:2;8504:18;;;8497:30;8563:34;8558:2;8543:18;;8536:62;-1:-1:-1;;;8629:2:1;8614:18;;8607:33;8672:3;8657:19;;8283:399::o;9394:168::-;9467:9;;;9498;;9515:15;;;9509:22;;9495:37;9485:71;;9536:18;;:::i;9567:217::-;9607:1;9633;9623:132;;9677:10;9672:3;9668:20;9665:1;9658:31;9712:4;9709:1;9702:15;9740:4;9737:1;9730:15;9623:132;-1:-1:-1;9769:9:1;;9567:217::o;9789:128::-;9856:9;;;9877:11;;;9874:37;;;9891:18;;:::i;10054:127::-;10115:10;10110:3;10106:20;10103:1;10096:31;10146:4;10143:1;10136:15;10170:4;10167:1;10160:15;10186:251;10256:6;10309:2;10297:9;10288:7;10284:23;10280:32;10277:52;;;10325:1;10322;10315:12;10277:52;10357:9;10351:16;10376:31;10401:5;10376:31;:::i;10442:980::-;10704:4;10752:3;10741:9;10737:19;10783:6;10772:9;10765:25;10809:2;10847:6;10842:2;10831:9;10827:18;10820:34;10890:3;10885:2;10874:9;10870:18;10863:31;10914:6;10949;10943:13;10980:6;10972;10965:22;11018:3;11007:9;11003:19;10996:26;;11057:2;11049:6;11045:15;11031:29;;11078:1;11088:195;11102:6;11099:1;11096:13;11088:195;;;11167:13;;-1:-1:-1;;;;;11163:39:1;11151:52;;11258:15;;;;11223:12;;;;11199:1;11117:9;11088:195;;;-1:-1:-1;;;;;;;11339:32:1;;;;11334:2;11319:18;;11312:60;-1:-1:-1;;;11403:3:1;11388:19;11381:35;11300:3;10442:980;-1:-1:-1;;;10442:980:1:o

Swarm Source

ipfs://74b82b6e328c98bca66b61e148a92a9622110c16bf858b30d845bbf975a119f6

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.