ETH Price: $1,989.33 (+0.84%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve179853732023-08-24 15:11:47575 days ago1692889907IN
0x12251Db4...d3C715ADd
0 ETH0.0017253937.07823258
Approve179348852023-08-17 13:37:59582 days ago1692279479IN
0x12251Db4...d3C715ADd
0 ETH0.0012199426.25
Approve179348592023-08-17 13:32:35582 days ago1692279155IN
0x12251Db4...d3C715ADd
0 ETH0.0011711425.2
Approve179348532023-08-17 13:31:23582 days ago1692279083IN
0x12251Db4...d3C715ADd
0 ETH0.0011711425.2
Approve179348462023-08-17 13:29:59582 days ago1692278999IN
0x12251Db4...d3C715ADd
0 ETH0.0009759521
Approve179348442023-08-17 13:29:35582 days ago1692278975IN
0x12251Db4...d3C715ADd
0 ETH0.0010252822.05
Approve179305752023-08-16 23:09:35583 days ago1692227375IN
0x12251Db4...d3C715ADd
0 ETH0.0015708433.80047497
Approve179294872023-08-16 19:31:11583 days ago1692214271IN
0x12251Db4...d3C715ADd
0 ETH0.0020015143.29104658
Approve179282562023-08-16 15:22:59583 days ago1692199379IN
0x12251Db4...d3C715ADd
0 ETH0.0015331632.94729405
Approve179282472023-08-16 15:20:59583 days ago1692199259IN
0x12251Db4...d3C715ADd
0 ETH0.0015806233.96700672
Approve179280772023-08-16 14:46:59583 days ago1692197219IN
0x12251Db4...d3C715ADd
0 ETH0.0016572535.61392424
Approve179279892023-08-16 14:29:11583 days ago1692196151IN
0x12251Db4...d3C715ADd
0 ETH0.0017054936.65061478
Recuse Tax179279412023-08-16 14:19:23583 days ago1692195563IN
0x12251Db4...d3C715ADd
0 ETH0.0019298934.08745621
Approve179279302023-08-16 14:17:11583 days ago1692195431IN
0x12251Db4...d3C715ADd
0 ETH0.0016770236.03860674
Approve179279232023-08-16 14:15:47583 days ago1692195347IN
0x12251Db4...d3C715ADd
0 ETH0.0017156836.86947735
Approve179279222023-08-16 14:15:35583 days ago1692195335IN
0x12251Db4...d3C715ADd
0 ETH0.0017308637.19566372
Approve179278262023-08-16 13:56:11583 days ago1692194171IN
0x12251Db4...d3C715ADd
0 ETH0.0014141630.42925396
Approve179277332023-08-16 13:37:11583 days ago1692193031IN
0x12251Db4...d3C715ADd
0 ETH0.0015411333.16127054
Approve179277082023-08-16 13:32:11583 days ago1692192731IN
0x12251Db4...d3C715ADd
0 ETH0.0017294337.21302347
Approve179276812023-08-16 13:26:35583 days ago1692192395IN
0x12251Db4...d3C715ADd
0 ETH0.0013478928.96575943
Approve179276742023-08-16 13:25:11583 days ago1692192311IN
0x12251Db4...d3C715ADd
0 ETH0.0014632531.44487803
Approve179276742023-08-16 13:25:11583 days ago1692192311IN
0x12251Db4...d3C715ADd
0 ETH0.001598234.34487803
Approve179276742023-08-16 13:25:11583 days ago1692192311IN
0x12251Db4...d3C715ADd
0 ETH0.001598234.34487803
Approve179276732023-08-16 13:24:59583 days ago1692192299IN
0x12251Db4...d3C715ADd
0 ETH0.0015148732.55421192
Approve179276722023-08-16 13:24:47583 days ago1692192287IN
0x12251Db4...d3C715ADd
0 ETH0.001517532.61062041
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer179853812023-08-24 15:13:23575 days ago1692890003
0x12251Db4...d3C715ADd
0.00350123 ETH
Transfer179853812023-08-24 15:13:23575 days ago1692890003
0x12251Db4...d3C715ADd
0.00350123 ETH
Transfer179349882023-08-17 13:58:59582 days ago1692280739
0x12251Db4...d3C715ADd
0.00241001 ETH
Transfer179349882023-08-17 13:58:59582 days ago1692280739
0x12251Db4...d3C715ADd
0.00241001 ETH
Transfer179349852023-08-17 13:58:23582 days ago1692280703
0x12251Db4...d3C715ADd
0.0024155 ETH
Transfer179349852023-08-17 13:58:23582 days ago1692280703
0x12251Db4...d3C715ADd
0.0024155 ETH
Transfer179349832023-08-17 13:57:59582 days ago1692280679
0x12251Db4...d3C715ADd
0.00242061 ETH
Transfer179349832023-08-17 13:57:59582 days ago1692280679
0x12251Db4...d3C715ADd
0.00242061 ETH
Transfer179349792023-08-17 13:57:11582 days ago1692280631
0x12251Db4...d3C715ADd
0.00098299 ETH
Transfer179349792023-08-17 13:57:11582 days ago1692280631
0x12251Db4...d3C715ADd
0.00098299 ETH
Transfer179349272023-08-17 13:46:23582 days ago1692279983
0x12251Db4...d3C715ADd
0.00185246 ETH
Transfer179349272023-08-17 13:46:23582 days ago1692279983
0x12251Db4...d3C715ADd
0.00185246 ETH
Transfer179349262023-08-17 13:46:11582 days ago1692279971
0x12251Db4...d3C715ADd
0.00102586 ETH
Transfer179349262023-08-17 13:46:11582 days ago1692279971
0x12251Db4...d3C715ADd
0.00102586 ETH
Transfer179349262023-08-17 13:46:11582 days ago1692279971
0x12251Db4...d3C715ADd
0.0011758 ETH
Transfer179349262023-08-17 13:46:11582 days ago1692279971
0x12251Db4...d3C715ADd
0.0011758 ETH
Transfer179349082023-08-17 13:42:35582 days ago1692279755
0x12251Db4...d3C715ADd
0.00162365 ETH
Transfer179349082023-08-17 13:42:35582 days ago1692279755
0x12251Db4...d3C715ADd
0.00162365 ETH
Transfer179348862023-08-17 13:38:11582 days ago1692279491
0x12251Db4...d3C715ADd
0.00135371 ETH
Transfer179348862023-08-17 13:38:11582 days ago1692279491
0x12251Db4...d3C715ADd
0.00135371 ETH
Transfer179348802023-08-17 13:36:59582 days ago1692279419
0x12251Db4...d3C715ADd
0.00149031 ETH
Transfer179348802023-08-17 13:36:59582 days ago1692279419
0x12251Db4...d3C715ADd
0.00149031 ETH
Transfer179348762023-08-17 13:35:59582 days ago1692279359
0x12251Db4...d3C715ADd
0.00164862 ETH
Transfer179348762023-08-17 13:35:59582 days ago1692279359
0x12251Db4...d3C715ADd
0.00164862 ETH
Transfer179348722023-08-17 13:35:11582 days ago1692279311
0x12251Db4...d3C715ADd
0.0018335 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ERC20

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-14
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.17;

interface IERC20 {
    function decimals() external view returns (uint8);

    function symbol() external view returns (string memory);

    function name() external view returns (string memory);

    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 IUniswapRouter {
    function getAmountsOut(
        uint amountIn,
        address[] calldata path
    ) external view returns (uint[] memory amounts);

    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;

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

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

interface IUniswapFactory {
    function getPair(
        address tokenA,
        address tokenB
    ) external view returns (address pair);

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

abstract contract Ownable {
    address internal _owner;

    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

    constructor() {
        address msgSender = msg.sender;
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "you are not 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), "new is 0");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

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

    address private fundAddress;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    mapping(address => bool) public _isExcludeFromFee;
    mapping(address => bool) public _isBlacklisted;

    uint256 private _totalSupply;

    IUniswapRouter public _uniswapRouter;

    mapping(address => bool) public isMarketPair;
    bool private inSwap;

    uint256 private constant MAX = ~uint256(0);

    address public _uniswapPair;
    uint256 public startTradeTimeStamp;
    bool public remainHolder = true;

    taxFees private _swapTax =
        taxFees({
            initialBuyTax: 1,
            initialSellTax: 1,
            reduceBuyTaxAt: 1,
            reduceSellTaxAt: 1,
            finalBuyTax: 1,
            finalSellTax: 1,
            reduceTimePartition: 2,
            finalTimePartition: 5
        });

    struct taxFees {
        uint256 initialBuyTax;
        uint256 initialSellTax;
        uint256 reduceBuyTaxAt;
        uint256 reduceSellTaxAt;
        uint256 finalBuyTax;
        uint256 finalSellTax;
        uint256 reduceTimePartition;
        uint256 finalTimePartition;
    }

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

    constructor() {
        _name = "XMUSIC";
        _symbol = "XMUSIC";
        _decimals = 9;
        uint256 Supply = 46000000000000;
        _totalSupply = Supply * 10 ** _decimals;

        address receiveAddr = msg.sender;
        _balances[receiveAddr] = _totalSupply;
        emit Transfer(address(0), receiveAddr, _totalSupply);

        fundAddress = msg.sender;

        _isExcludeFromFee[address(this)] = true;
        _isExcludeFromFee[receiveAddr] = true;
        _isExcludeFromFee[fundAddress] = true;

        IUniswapRouter swapRouter = IUniswapRouter(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _uniswapRouter = swapRouter;
        _allowances[address(this)][address(swapRouter)] = MAX;

        IUniswapFactory swapFactory = IUniswapFactory(swapRouter.factory());
        _uniswapPair = swapFactory.createPair(address(this), swapRouter.WETH());

        isMarketPair[_uniswapPair] = true;
        IERC20(_uniswapRouter.WETH()).approve(
            address(address(_uniswapRouter)),
            ~uint256(0)
        );
        _isExcludeFromFee[address(swapRouter)] = true;
    }

    function setFundAddr(address newAddr) public onlyOwner {
        fundAddress = newAddr;
        _isExcludeFromFee[fundAddress] = true;
    }

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

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

    function decimals() external view override returns (uint8) {
        return _decimals;
    }

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

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

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

    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(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        if (_allowances[sender][msg.sender] != MAX) {
            _allowances[sender][msg.sender] =
                _allowances[sender][msg.sender] -
                amount;
        }
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _basicTransfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (bool) {
        _balances[sender] -= amount;
        _balances[recipient] += amount;
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function changeRemain() public onlyOwner {
        remainHolder = !remainHolder;
    }

    function recuseTax(
        uint256 newInitialBuy,
        uint256 newInitialSell,
        uint256 newReduceBuy,
        uint256 newReduceSell,
        uint256 newFinalBuy,
        uint256 newFinalSell,
        uint256 newReduceTime,
        uint256 newFinalTime
    ) public onlyOwner {
        taxFees memory swapTax = _swapTax;
        swapTax.initialBuyTax = newInitialBuy;
        swapTax.initialSellTax = newInitialSell;
        swapTax.finalBuyTax = newFinalBuy;
        swapTax.finalSellTax = newFinalSell;
        swapTax.reduceBuyTaxAt = newReduceBuy;
        swapTax.reduceSellTaxAt = newReduceSell;
        swapTax.reduceTimePartition = newReduceTime;
        swapTax.finalTimePartition = newFinalTime;
        _swapTax = swapTax;
    }

    function getFee() public view returns (uint256 buyTax, uint256 sellTax) {
        if (block.timestamp < startTradeTimeStamp || startTradeTimeStamp == 0) {
            return (0, 0);
        }
        taxFees memory swapTax = _swapTax;
        if (
            block.timestamp >
            startTradeTimeStamp + swapTax.finalTimePartition * 1 minutes
        ) {
            return (swapTax.finalBuyTax, swapTax.finalSellTax);
        } else if (
            block.timestamp >
            startTradeTimeStamp + swapTax.reduceTimePartition * 1 minutes
        ) {
            return (swapTax.reduceBuyTaxAt, swapTax.reduceSellTaxAt);
        } else {
            return (swapTax.initialBuyTax, swapTax.initialSellTax);
        }
    }

    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(!_isBlacklisted[from], "you are in blacklist");
        require(!_isBlacklisted[to], "recipient is in blacklist");
        uint256 balance = balanceOf(from);
        if (inSwap) {
            _basicTransfer(from, to, amount);
            return;
        }
        bool takeFee;
        if (isMarketPair[to] && !inSwap && !_isExcludeFromFee[from] && !_isExcludeFromFee[to]) {
            uint256 _numSellToken = _balances[address(this)];
            if (_numSellToken > 0){
                swapTokenForETH(_numSellToken);
            }
        }

        if (
            !_isExcludeFromFee[from] && !_isExcludeFromFee[to] && !inSwap
        ) {
            require(startTradeTimeStamp > 0,"not open trade");
            takeFee = true;
            if (remainHolder && amount == balance) {
                amount = amount - (amount / 10000);
            }
        }
        _transferToken(from, to, amount, takeFee);
    }

    function _transferToken(
        address sender,
        address recipient,
        uint256 tAmount,
        bool takeFee
    ) private {
        _balances[sender] = _balances[sender] - tAmount;
        uint256 feeAmount;
        if (takeFee) {
            uint256 taxFee;
            (uint256 buyTax, uint256 sellTax) = getFee();
            if (isMarketPair[recipient]) {
                taxFee = sellTax;
            } else if (isMarketPair[sender]) {
                taxFee = buyTax;
            }
            feeAmount = tAmount * taxFee / 100;
            if (feeAmount > 0) {
                _balances[address(this)] = _balances[address(this)] + feeAmount;
                emit Transfer(sender, address(this), feeAmount);
            }
        }

        _balances[recipient] = _balances[recipient] + (tAmount - feeAmount);
        emit Transfer(sender, recipient, tAmount - feeAmount);
    }

    function setBlack(address adr, bool value) public onlyOwner {
        _isBlacklisted[adr] = value;
    }

    function setBlackList(
        address[] calldata adrs,
        bool value
    ) public onlyOwner {
        for (uint i = 0; i < adrs.length; i++) {
            _isBlacklisted[adrs[i]] = value;
        }
    }

    function startTrade(address[] calldata adrs) public onlyOwner {
        uint256 balance = IERC20(address(_uniswapRouter.WETH())).balanceOf(address(this));
        uint256 amount = balance / adrs.length;
        for (uint i = 0; i < adrs.length; i++) {
            swapToken(amount,adrs[i]);
        }
        startTradeTimeStamp = block.timestamp;
    }

    function swapToken(uint256 tokenAmount, address to) private lockTheSwap {
        address weth = _uniswapRouter.WETH();
        address[] memory path = new address[](2);
        path[0] = address(weth);
        path[1] = address(this);
        uint256 _bal = IERC20(weth).balanceOf(address(this));
        tokenAmount = tokenAmount > _bal ? _bal : tokenAmount;
        if (tokenAmount == 0) return;
        _uniswapRouter.swapExactTokensForTokensSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(to),
            block.timestamp
        );
    }

    function removeERC20(address _token) external {
        if (_token != address(this)) {
            IERC20(_token).transfer(
                fundAddress,
                IERC20(_token).balanceOf(address(this))
            );
            payable(fundAddress).transfer(address(this).balance);
        }
    }

    function swapTokenForETH(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswapRouter.WETH();
        try
            _uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
                tokenAmount,
                0,
                path,
                address(this),
                block.timestamp
            )
        {} catch {}

        uint256 _bal = address(this).balance;
        if (_bal > 0) {
            payable(fundAddress).transfer(_bal);
        }
    }

    function setFeeExclude(address account, bool value) public onlyOwner {
        _isExcludeFromFee[account] = value;
    }

    receive() external payable {}
}

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":"","type":"address"}],"name":"_isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludeFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapRouter","outputs":[{"internalType":"contract IUniswapRouter","name":"","type":"address"}],"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":"changeRemain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getFee","outputs":[{"internalType":"uint256","name":"buyTax","type":"uint256"},{"internalType":"uint256","name":"sellTax","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"uint256","name":"newInitialBuy","type":"uint256"},{"internalType":"uint256","name":"newInitialSell","type":"uint256"},{"internalType":"uint256","name":"newReduceBuy","type":"uint256"},{"internalType":"uint256","name":"newReduceSell","type":"uint256"},{"internalType":"uint256","name":"newFinalBuy","type":"uint256"},{"internalType":"uint256","name":"newFinalSell","type":"uint256"},{"internalType":"uint256","name":"newReduceTime","type":"uint256"},{"internalType":"uint256","name":"newFinalTime","type":"uint256"}],"name":"recuseTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"remainHolder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"removeERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setBlack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"adrs","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setFeeExclude","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddr","type":"address"}],"name":"setFundAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"adrs","type":"address[]"}],"name":"startTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTradeTimeStamp","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":[{"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"},{"stateMutability":"payable","type":"receive"}]

600e805460ff19166001908117909155610180604052608081905260a081905260c081905260e081905261010081905261012081905260026101408190526005610160819052600f83905560108390556011839055601283905560138390556014929092556015556016553480156200007757600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350604080518082019091526006815265584d5553494360d01b6020820152600490620000e590826200056a565b50604080518082019091526006815265584d5553494360d01b60208201526005906200011290826200056a565b506006805460ff191660099081179091556529d635a8e000906200013890600a6200074b565b62000144908262000763565b600981905533600081815260016020908152604080832085905551938452919283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a360038054336001600160a01b0319918216178255306000818152600760209081526040808320805460ff1990811660019081179092556001600160a01b038981168652838620805483168417905597549097168452818420805490971617909555600a8054737a250d5630b4cf539739df2c5dacb4c659f2488d9516851790559181526002825283812083825282528381206000199055835163c45a015560e01b8152935192939092849263c45a015592600480820193918290030181865afa15801562000263573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028991906200077d565b9050806001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030091906200077d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200034e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037491906200077d565b600c8054610100600160a81b0319166101006001600160a01b0393841681029190911791829055900481166000908152600b6020908152604091829020805460ff19166001179055600a5482516315ab88c960e31b8152925193169263ad5c46489260048082019392918290030181865afa158015620003f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200041e91906200077d565b600a5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b3906044016020604051808303816000875af115801562000472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004989190620007a8565b50506001600160a01b03166000908152600760205260409020805460ff1916600117905550620007cc9050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620004f057607f821691505b6020821081036200051157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200056557600081815260208120601f850160051c81016020861015620005405750805b601f850160051c820191505b8181101562000561578281556001016200054c565b5050505b505050565b81516001600160401b03811115620005865762000586620004c5565b6200059e81620005978454620004db565b8462000517565b602080601f831160018114620005d65760008415620005bd5750858301515b600019600386901b1c1916600185901b17855562000561565b600085815260208120601f198616915b828110156200060757888601518255948401946001909101908401620005e6565b5085821015620006265787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200068d57816000190482111562000671576200067162000636565b808516156200067f57918102915b93841c939080029062000651565b509250929050565b600082620006a65750600162000745565b81620006b55750600062000745565b8160018114620006ce5760028114620006d957620006f9565b600191505062000745565b60ff841115620006ed57620006ed62000636565b50506001821b62000745565b5060208310610133831016604e8410600b84101617156200071e575081810a62000745565b6200072a83836200064c565b806000190482111562000741576200074162000636565b0290505b92915050565b60006200075c60ff84168362000695565b9392505050565b808202811582820484141762000745576200074562000636565b6000602082840312156200079057600080fd5b81516001600160a01b03811681146200075c57600080fd5b600060208284031215620007bb57600080fd5b815180151581146200075c57600080fd5b611cc080620007dc6000396000f3fe6080604052600436106101bb5760003560e01c806380720140116100ec578063bc76c0521161008a578063cefab2af11610064578063cefab2af14610529578063dd62ed3e14610543578063ee1c56d214610589578063f2fde38b146105a957600080fd5b8063bc76c052146104ca578063cb23bf08146104df578063ced72f87146104ff57600080fd5b8063936c044b116100c6578063936c044b1461045557806395d89b4114610475578063a67755c21461048a578063a9059cbb146104aa57600080fd5b806380720140146103f75780638da5cb5b146104175780638f85a0431461043557600080fd5b806336b2e0271161015957806365b61b771161013357806365b61b771461036a5780636f39cfcd1461038a57806370a08231146103ac578063715018a6146103e257600080fd5b806336b2e027146102cd5780633ecad271146102fd5780634bf28fd01461032d57600080fd5b806318160ddd1161019557806318160ddd146102465780631cdd3be31461025b57806323b872dd1461028b578063313ce567146102ab57600080fd5b806306fdde03146101c7578063095ea7b3146101f25780631439972b1461022257600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101dc6105c9565b6040516101e9919061181a565b60405180910390f35b3480156101fe57600080fd5b5061021261020d36600461187d565b61065b565b60405190151581526020016101e9565b34801561022e57600080fd5b50610238600d5481565b6040519081526020016101e9565b34801561025257600080fd5b50600954610238565b34801561026757600080fd5b506102126102763660046118a9565b60086020526000908152604090205460ff1681565b34801561029757600080fd5b506102126102a63660046118cd565b610672565b3480156102b757600080fd5b5060065460405160ff90911681526020016101e9565b3480156102d957600080fd5b506102126102e83660046118a9565b60076020526000908152604090205460ff1681565b34801561030957600080fd5b506102126103183660046118a9565b600b6020526000908152604090205460ff1681565b34801561033957600080fd5b50600c546103529061010090046001600160a01b031681565b6040516001600160a01b0390911681526020016101e9565b34801561037657600080fd5b50600a54610352906001600160a01b031681565b34801561039657600080fd5b506103aa6103a53660046118a9565b610709565b005b3480156103b857600080fd5b506102386103c73660046118a9565b6001600160a01b031660009081526001602052604090205490565b3480156103ee57600080fd5b506103aa610776565b34801561040357600080fd5b506103aa61041236600461195a565b6107ea565b34801561042357600080fd5b506000546001600160a01b0316610352565b34801561044157600080fd5b506103aa6104503660046119aa565b610954565b34801561046157600080fd5b506103aa610470366004611a01565b6109f5565b34801561048157600080fd5b506101dc610a4a565b34801561049657600080fd5b506103aa6104a53660046118a9565b610a59565b3480156104b657600080fd5b506102126104c536600461187d565b610b8e565b3480156104d657600080fd5b506103aa610b9b565b3480156104eb57600080fd5b506103aa6104fa366004611a01565b610bd9565b34801561050b57600080fd5b50610514610c2e565b604080519283526020830191909152016101e9565b34801561053557600080fd5b50600e546102129060ff1681565b34801561054f57600080fd5b5061023861055e366004611a3a565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561059557600080fd5b506103aa6105a4366004611a68565b610d15565b3480156105b557600080fd5b506103aa6105c43660046118a9565b610da2565b6060600480546105d890611abd565b80601f016020809104026020016040519081016040528092919081815260200182805461060490611abd565b80156106515780601f1061062657610100808354040283529160200191610651565b820191906000526020600020905b81548152906001019060200180831161063457829003601f168201915b5050505050905090565b6000610668338484610e68565b5060015b92915050565b600061067f848484610ec9565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019146106ff576001600160a01b03841660009081526002602090815260408083203384529091529020546106da908390611b0d565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b0316331461073c5760405162461bcd60e51b815260040161073390611b20565b60405180910390fd5b600380546001600160a01b039092166001600160a01b0319909216821790556000908152600760205260409020805460ff19166001179055565b6000546001600160a01b031633146107a05760405162461bcd60e51b815260040161073390611b20565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108145760405162461bcd60e51b815260040161073390611b20565b600a54604080516315ab88c960e31b815290516000926001600160a01b03169163ad5c46489160048083019260209291908290030181865afa15801561085e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108829190611b4b565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156108c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ec9190611b68565b905060006108fa8383611b81565b905060005b83811015610949576109378286868481811061091d5761091d611ba3565b905060200201602081019061093291906118a9565b611201565b8061094181611bb9565b9150506108ff565b505042600d55505050565b6000546001600160a01b0316331461097e5760405162461bcd60e51b815260040161073390611b20565b60005b828110156109ef5781600860008686858181106109a0576109a0611ba3565b90506020020160208101906109b591906118a9565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806109e781611bb9565b915050610981565b50505050565b6000546001600160a01b03163314610a1f5760405162461bcd60e51b815260040161073390611b20565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6060600580546105d890611abd565b6001600160a01b0381163014610b8b576003546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa158015610abc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae09190611b68565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610b2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4f9190611bd2565b506003546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610b89573d6000803e3d6000fd5b505b50565b6000610668338484610ec9565b6000546001600160a01b03163314610bc55760405162461bcd60e51b815260040161073390611b20565b600e805460ff19811660ff90911615179055565b6000546001600160a01b03163314610c035760405162461bcd60e51b815260040161073390611b20565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b600080600d54421080610c415750600d54155b15610c4f5750600091829150565b6040805161010081018252600f5481526010546020820152601154918101919091526012546060820152601354608082015260145460a082015260155460c082015260165460e08201819052610ca690603c611bef565b600d54610cb39190611c06565b421115610ccd5780608001518160a0015192509250509091565b60c0810151610cdd90603c611bef565b600d54610cea9190611c06565b421115610d04578060400151816060015192509250509091565b805160209091015190939092509050565b6000546001600160a01b03163314610d3f5760405162461bcd60e51b815260040161073390611b20565b6040805161010081018252898152602081018990526080810186905260a081018590529081018790526060810186905260c0810183905260e001819052600f97909755601095909555601193909355601291909155601355601455601555601655565b6000546001600160a01b03163314610dcc5760405162461bcd60e51b815260040161073390611b20565b6001600160a01b038116610e0d5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610733565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f2d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610733565b6001600160a01b038216610f8f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610733565b6001600160a01b03831660009081526008602052604090205460ff1615610fef5760405162461bcd60e51b81526020600482015260146024820152731e5bdd48185c99481a5b88189b1858dadb1a5cdd60621b6044820152606401610733565b6001600160a01b03821660009081526008602052604090205460ff16156110585760405162461bcd60e51b815260206004820152601960248201527f726563697069656e7420697320696e20626c61636b6c697374000000000000006044820152606401610733565b6001600160a01b038316600090815260016020526040902054600c5460ff161561108e57611087848484611403565b5050505050565b6001600160a01b0383166000908152600b602052604081205460ff1680156110b95750600c5460ff16155b80156110de57506001600160a01b03851660009081526007602052604090205460ff16155b801561110357506001600160a01b03841660009081526007602052604090205460ff16155b156111295730600090815260016020526040902054801561112757611127816114b8565b505b6001600160a01b03851660009081526007602052604090205460ff1615801561116b57506001600160a01b03841660009081526007602052604090205460ff16155b801561117a5750600c5460ff16155b156111f5576000600d54116111c25760405162461bcd60e51b815260206004820152600e60248201526d6e6f74206f70656e20747261646560901b6044820152606401610733565b50600e5460019060ff1680156111d757508183145b156111f5576111e861271084611b81565b6111f29084611b0d565b92505b6110878585858461164e565b600c805460ff19166001179055600a54604080516315ab88c960e31b815290516000926001600160a01b03169163ad5c46489160048083019260209291908290030181865afa158015611258573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061127c9190611b4b565b604080516002808252606082018352929350600092909160208301908036833701905050905081816000815181106112b6576112b6611ba3565b60200260200101906001600160a01b031690816001600160a01b03168152505030816001815181106112ea576112ea611ba3565b6001600160a01b0392831660209182029290920101526040516370a0823160e01b81523060048201526000918416906370a0823190602401602060405180830381865afa15801561133f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113639190611b68565b90508085116113725784611374565b805b945084600003611386575050506113f5565b600a54604051635c11d79560e01b81526001600160a01b0390911690635c11d795906113bf90889060009087908a904290600401611c19565b600060405180830381600087803b1580156113d957600080fd5b505af11580156113ed573d6000803e3d6000fd5b505050505050505b5050600c805460ff19169055565b6001600160a01b03831660009081526001602052604081208054839190839061142d908490611b0d565b90915550506001600160a01b0383166000908152600160205260408120805484929061145a908490611c06565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114a691815260200190565b60405180910390a35060019392505050565b600c805460ff1916600117905560408051600280825260608201835260009260208301908036833701905050905030816000815181106114fa576114fa611ba3565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611553573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115779190611b4b565b8160018151811061158a5761158a611ba3565b6001600160a01b039283166020918202929092010152600a5460405163791ac94760e01b815291169063791ac947906115d0908590600090869030904290600401611c19565b600060405180830381600087803b1580156115ea57600080fd5b505af19250505080156115fb575060015b5047801561163f576003546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561163d573d6000803e3d6000fd5b505b5050600c805460ff1916905550565b6001600160a01b038416600090815260016020526040902054611672908390611b0d565b6001600160a01b038516600090815260016020526040812091909155811561178b5760008060006116a1610c2e565b6001600160a01b0389166000908152600b6020526040902054919350915060ff16156116cf578092506116f4565b6001600160a01b0388166000908152600b602052604090205460ff16156116f4578192505b60646117008488611bef565b61170a9190611b81565b93508315611787573060009081526001602052604090205461172d908590611c06565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061177e9088815260200190565b60405180910390a35b5050505b6117958184611b0d565b6001600160a01b0385166000908152600160205260409020546117b89190611c06565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6118028487611b0d565b60405190815260200160405180910390a35050505050565b600060208083528351808285015260005b818110156118475785810183015185820160400152820161182b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b8b57600080fd5b6000806040838503121561189057600080fd5b823561189b81611868565b946020939093013593505050565b6000602082840312156118bb57600080fd5b81356118c681611868565b9392505050565b6000806000606084860312156118e257600080fd5b83356118ed81611868565b925060208401356118fd81611868565b929592945050506040919091013590565b60008083601f84011261192057600080fd5b50813567ffffffffffffffff81111561193857600080fd5b6020830191508360208260051b850101111561195357600080fd5b9250929050565b6000806020838503121561196d57600080fd5b823567ffffffffffffffff81111561198457600080fd5b6119908582860161190e565b90969095509350505050565b8015158114610b8b57600080fd5b6000806000604084860312156119bf57600080fd5b833567ffffffffffffffff8111156119d657600080fd5b6119e28682870161190e565b90945092505060208401356119f68161199c565b809150509250925092565b60008060408385031215611a1457600080fd5b8235611a1f81611868565b91506020830135611a2f8161199c565b809150509250929050565b60008060408385031215611a4d57600080fd5b8235611a5881611868565b91506020830135611a2f81611868565b600080600080600080600080610100898b031215611a8557600080fd5b505086359860208801359850604088013597606081013597506080810135965060a0810135955060c0810135945060e0013592509050565b600181811c90821680611ad157607f821691505b602082108103611af157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561066c5761066c611af7565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060208284031215611b5d57600080fd5b81516118c681611868565b600060208284031215611b7a57600080fd5b5051919050565b600082611b9e57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201611bcb57611bcb611af7565b5060010190565b600060208284031215611be457600080fd5b81516118c68161199c565b808202811582820484141761066c5761066c611af7565b8082018082111561066c5761066c611af7565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c695784516001600160a01b031683529383019391830191600101611c44565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220c94a12cdafb0de48821fb3aebe546d95ee30d520f7cedf53da1933aecc66809164736f6c63430008120033

Deployed Bytecode

0x6080604052600436106101bb5760003560e01c806380720140116100ec578063bc76c0521161008a578063cefab2af11610064578063cefab2af14610529578063dd62ed3e14610543578063ee1c56d214610589578063f2fde38b146105a957600080fd5b8063bc76c052146104ca578063cb23bf08146104df578063ced72f87146104ff57600080fd5b8063936c044b116100c6578063936c044b1461045557806395d89b4114610475578063a67755c21461048a578063a9059cbb146104aa57600080fd5b806380720140146103f75780638da5cb5b146104175780638f85a0431461043557600080fd5b806336b2e0271161015957806365b61b771161013357806365b61b771461036a5780636f39cfcd1461038a57806370a08231146103ac578063715018a6146103e257600080fd5b806336b2e027146102cd5780633ecad271146102fd5780634bf28fd01461032d57600080fd5b806318160ddd1161019557806318160ddd146102465780631cdd3be31461025b57806323b872dd1461028b578063313ce567146102ab57600080fd5b806306fdde03146101c7578063095ea7b3146101f25780631439972b1461022257600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101dc6105c9565b6040516101e9919061181a565b60405180910390f35b3480156101fe57600080fd5b5061021261020d36600461187d565b61065b565b60405190151581526020016101e9565b34801561022e57600080fd5b50610238600d5481565b6040519081526020016101e9565b34801561025257600080fd5b50600954610238565b34801561026757600080fd5b506102126102763660046118a9565b60086020526000908152604090205460ff1681565b34801561029757600080fd5b506102126102a63660046118cd565b610672565b3480156102b757600080fd5b5060065460405160ff90911681526020016101e9565b3480156102d957600080fd5b506102126102e83660046118a9565b60076020526000908152604090205460ff1681565b34801561030957600080fd5b506102126103183660046118a9565b600b6020526000908152604090205460ff1681565b34801561033957600080fd5b50600c546103529061010090046001600160a01b031681565b6040516001600160a01b0390911681526020016101e9565b34801561037657600080fd5b50600a54610352906001600160a01b031681565b34801561039657600080fd5b506103aa6103a53660046118a9565b610709565b005b3480156103b857600080fd5b506102386103c73660046118a9565b6001600160a01b031660009081526001602052604090205490565b3480156103ee57600080fd5b506103aa610776565b34801561040357600080fd5b506103aa61041236600461195a565b6107ea565b34801561042357600080fd5b506000546001600160a01b0316610352565b34801561044157600080fd5b506103aa6104503660046119aa565b610954565b34801561046157600080fd5b506103aa610470366004611a01565b6109f5565b34801561048157600080fd5b506101dc610a4a565b34801561049657600080fd5b506103aa6104a53660046118a9565b610a59565b3480156104b657600080fd5b506102126104c536600461187d565b610b8e565b3480156104d657600080fd5b506103aa610b9b565b3480156104eb57600080fd5b506103aa6104fa366004611a01565b610bd9565b34801561050b57600080fd5b50610514610c2e565b604080519283526020830191909152016101e9565b34801561053557600080fd5b50600e546102129060ff1681565b34801561054f57600080fd5b5061023861055e366004611a3a565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561059557600080fd5b506103aa6105a4366004611a68565b610d15565b3480156105b557600080fd5b506103aa6105c43660046118a9565b610da2565b6060600480546105d890611abd565b80601f016020809104026020016040519081016040528092919081815260200182805461060490611abd565b80156106515780601f1061062657610100808354040283529160200191610651565b820191906000526020600020905b81548152906001019060200180831161063457829003601f168201915b5050505050905090565b6000610668338484610e68565b5060015b92915050565b600061067f848484610ec9565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019146106ff576001600160a01b03841660009081526002602090815260408083203384529091529020546106da908390611b0d565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b0316331461073c5760405162461bcd60e51b815260040161073390611b20565b60405180910390fd5b600380546001600160a01b039092166001600160a01b0319909216821790556000908152600760205260409020805460ff19166001179055565b6000546001600160a01b031633146107a05760405162461bcd60e51b815260040161073390611b20565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108145760405162461bcd60e51b815260040161073390611b20565b600a54604080516315ab88c960e31b815290516000926001600160a01b03169163ad5c46489160048083019260209291908290030181865afa15801561085e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108829190611b4b565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa1580156108c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ec9190611b68565b905060006108fa8383611b81565b905060005b83811015610949576109378286868481811061091d5761091d611ba3565b905060200201602081019061093291906118a9565b611201565b8061094181611bb9565b9150506108ff565b505042600d55505050565b6000546001600160a01b0316331461097e5760405162461bcd60e51b815260040161073390611b20565b60005b828110156109ef5781600860008686858181106109a0576109a0611ba3565b90506020020160208101906109b591906118a9565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806109e781611bb9565b915050610981565b50505050565b6000546001600160a01b03163314610a1f5760405162461bcd60e51b815260040161073390611b20565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6060600580546105d890611abd565b6001600160a01b0381163014610b8b576003546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa158015610abc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae09190611b68565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610b2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4f9190611bd2565b506003546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610b89573d6000803e3d6000fd5b505b50565b6000610668338484610ec9565b6000546001600160a01b03163314610bc55760405162461bcd60e51b815260040161073390611b20565b600e805460ff19811660ff90911615179055565b6000546001600160a01b03163314610c035760405162461bcd60e51b815260040161073390611b20565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b600080600d54421080610c415750600d54155b15610c4f5750600091829150565b6040805161010081018252600f5481526010546020820152601154918101919091526012546060820152601354608082015260145460a082015260155460c082015260165460e08201819052610ca690603c611bef565b600d54610cb39190611c06565b421115610ccd5780608001518160a0015192509250509091565b60c0810151610cdd90603c611bef565b600d54610cea9190611c06565b421115610d04578060400151816060015192509250509091565b805160209091015190939092509050565b6000546001600160a01b03163314610d3f5760405162461bcd60e51b815260040161073390611b20565b6040805161010081018252898152602081018990526080810186905260a081018590529081018790526060810186905260c0810183905260e001819052600f97909755601095909555601193909355601291909155601355601455601555601655565b6000546001600160a01b03163314610dcc5760405162461bcd60e51b815260040161073390611b20565b6001600160a01b038116610e0d5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b6044820152606401610733565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f2d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610733565b6001600160a01b038216610f8f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610733565b6001600160a01b03831660009081526008602052604090205460ff1615610fef5760405162461bcd60e51b81526020600482015260146024820152731e5bdd48185c99481a5b88189b1858dadb1a5cdd60621b6044820152606401610733565b6001600160a01b03821660009081526008602052604090205460ff16156110585760405162461bcd60e51b815260206004820152601960248201527f726563697069656e7420697320696e20626c61636b6c697374000000000000006044820152606401610733565b6001600160a01b038316600090815260016020526040902054600c5460ff161561108e57611087848484611403565b5050505050565b6001600160a01b0383166000908152600b602052604081205460ff1680156110b95750600c5460ff16155b80156110de57506001600160a01b03851660009081526007602052604090205460ff16155b801561110357506001600160a01b03841660009081526007602052604090205460ff16155b156111295730600090815260016020526040902054801561112757611127816114b8565b505b6001600160a01b03851660009081526007602052604090205460ff1615801561116b57506001600160a01b03841660009081526007602052604090205460ff16155b801561117a5750600c5460ff16155b156111f5576000600d54116111c25760405162461bcd60e51b815260206004820152600e60248201526d6e6f74206f70656e20747261646560901b6044820152606401610733565b50600e5460019060ff1680156111d757508183145b156111f5576111e861271084611b81565b6111f29084611b0d565b92505b6110878585858461164e565b600c805460ff19166001179055600a54604080516315ab88c960e31b815290516000926001600160a01b03169163ad5c46489160048083019260209291908290030181865afa158015611258573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061127c9190611b4b565b604080516002808252606082018352929350600092909160208301908036833701905050905081816000815181106112b6576112b6611ba3565b60200260200101906001600160a01b031690816001600160a01b03168152505030816001815181106112ea576112ea611ba3565b6001600160a01b0392831660209182029290920101526040516370a0823160e01b81523060048201526000918416906370a0823190602401602060405180830381865afa15801561133f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113639190611b68565b90508085116113725784611374565b805b945084600003611386575050506113f5565b600a54604051635c11d79560e01b81526001600160a01b0390911690635c11d795906113bf90889060009087908a904290600401611c19565b600060405180830381600087803b1580156113d957600080fd5b505af11580156113ed573d6000803e3d6000fd5b505050505050505b5050600c805460ff19169055565b6001600160a01b03831660009081526001602052604081208054839190839061142d908490611b0d565b90915550506001600160a01b0383166000908152600160205260408120805484929061145a908490611c06565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114a691815260200190565b60405180910390a35060019392505050565b600c805460ff1916600117905560408051600280825260608201835260009260208301908036833701905050905030816000815181106114fa576114fa611ba3565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611553573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115779190611b4b565b8160018151811061158a5761158a611ba3565b6001600160a01b039283166020918202929092010152600a5460405163791ac94760e01b815291169063791ac947906115d0908590600090869030904290600401611c19565b600060405180830381600087803b1580156115ea57600080fd5b505af19250505080156115fb575060015b5047801561163f576003546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561163d573d6000803e3d6000fd5b505b5050600c805460ff1916905550565b6001600160a01b038416600090815260016020526040902054611672908390611b0d565b6001600160a01b038516600090815260016020526040812091909155811561178b5760008060006116a1610c2e565b6001600160a01b0389166000908152600b6020526040902054919350915060ff16156116cf578092506116f4565b6001600160a01b0388166000908152600b602052604090205460ff16156116f4578192505b60646117008488611bef565b61170a9190611b81565b93508315611787573060009081526001602052604090205461172d908590611c06565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061177e9088815260200190565b60405180910390a35b5050505b6117958184611b0d565b6001600160a01b0385166000908152600160205260409020546117b89190611c06565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6118028487611b0d565b60405190815260200160405180910390a35050505050565b600060208083528351808285015260005b818110156118475785810183015185820160400152820161182b565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b8b57600080fd5b6000806040838503121561189057600080fd5b823561189b81611868565b946020939093013593505050565b6000602082840312156118bb57600080fd5b81356118c681611868565b9392505050565b6000806000606084860312156118e257600080fd5b83356118ed81611868565b925060208401356118fd81611868565b929592945050506040919091013590565b60008083601f84011261192057600080fd5b50813567ffffffffffffffff81111561193857600080fd5b6020830191508360208260051b850101111561195357600080fd5b9250929050565b6000806020838503121561196d57600080fd5b823567ffffffffffffffff81111561198457600080fd5b6119908582860161190e565b90969095509350505050565b8015158114610b8b57600080fd5b6000806000604084860312156119bf57600080fd5b833567ffffffffffffffff8111156119d657600080fd5b6119e28682870161190e565b90945092505060208401356119f68161199c565b809150509250925092565b60008060408385031215611a1457600080fd5b8235611a1f81611868565b91506020830135611a2f8161199c565b809150509250929050565b60008060408385031215611a4d57600080fd5b8235611a5881611868565b91506020830135611a2f81611868565b600080600080600080600080610100898b031215611a8557600080fd5b505086359860208801359850604088013597606081013597506080810135965060a0810135955060c0810135945060e0013592509050565b600181811c90821680611ad157607f821691505b602082108103611af157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561066c5761066c611af7565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060208284031215611b5d57600080fd5b81516118c681611868565b600060208284031215611b7a57600080fd5b5051919050565b600082611b9e57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060018201611bcb57611bcb611af7565b5060010190565b600060208284031215611be457600080fd5b81516118c68161199c565b808202811582820484141761066c5761066c611af7565b8082018082111561066c5761066c611af7565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611c695784516001600160a01b031683529383019391830191600101611c44565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220c94a12cdafb0de48821fb3aebe546d95ee30d520f7cedf53da1933aecc66809164736f6c63430008120033

Deployed Bytecode Sourcemap

3262:10965:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6138:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6951:184;;;;;;;;;;-1:-1:-1;6951:184:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6951:184:0;1023:187:1;3912:34:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;3912:34:0;1215:177:1;6342:100:0;;;;;;;;;;-1:-1:-1;6422:12:0;;6342:100;;3611:46;;;;;;;;;;-1:-1:-1;3611:46:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7143:404;;;;;;;;;;-1:-1:-1;7143:404:0;;;;;:::i;:::-;;:::i;6240:94::-;;;;;;;;;;-1:-1:-1;6317:9:0;;6240:94;;6317:9;;;;2252:36:1;;2240:2;2225:18;6240:94:0;2110:184:1;3555:49:0;;;;;;;;;;-1:-1:-1;3555:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3748:44;;;;;;;;;;-1:-1:-1;3748:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3878:27;;;;;;;;;;-1:-1:-1;3878:27:0;;;;;;;-1:-1:-1;;;;;3878:27:0;;;;;;-1:-1:-1;;;;;2463:32:1;;;2445:51;;2433:2;2418:18;3878:27:0;2299:203:1;3703:36:0;;;;;;;;;;-1:-1:-1;3703:36:0;;;;-1:-1:-1;;;;;3703:36:0;;;5881:143;;;;;;;;;;-1:-1:-1;5881:143:0;;;;;:::i;:::-;;:::i;:::-;;6450:119;;;;;;;;;;-1:-1:-1;6450:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6543:18:0;6516:7;6543:18;;;:9;:18;;;;;;;6450:119;2885:148;;;;;;;;;;;;;:::i;12138:360::-;;;;;;;;;;-1:-1:-1;12138:360:0;;;;;:::i;:::-;;:::i;2688:79::-;;;;;;;;;;-1:-1:-1;2726:7:0;2753:6;-1:-1:-1;;;;;2753:6:0;2688:79;;11914:216;;;;;;;;;;-1:-1:-1;11914:216:0;;;;;:::i;:::-;;:::i;14065:122::-;;;;;;;;;;-1:-1:-1;14065:122:0;;;;;:::i;:::-;;:::i;6032:98::-;;;;;;;;;;;;;:::i;13133:313::-;;;;;;;;;;-1:-1:-1;13133:313:0;;;;;:::i;:::-;;:::i;6577:190::-;;;;;;;;;;-1:-1:-1;6577:190:0;;;;;:::i;:::-;;:::i;8041:88::-;;;;;;;;;;;;;:::i;11800:106::-;;;;;;;;;;-1:-1:-1;11800:106:0;;;;;:::i;:::-;;:::i;8913:751::-;;;;;;;;;;;;;:::i;:::-;;;;4806:25:1;;;4862:2;4847:18;;4840:34;;;;4779:18;8913:751:0;4632:248:1;3953:31:0;;;;;;;;;;-1:-1:-1;3953:31:0;;;;;;;;6775:168;;;;;;;;;;-1:-1:-1;6775:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6908:18:0;;;6881:7;6908:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6775:168;8137:768;;;;;;;;;;-1:-1:-1;8137:768:0;;;;;:::i;:::-;;:::i;3041:214::-;;;;;;;;;;-1:-1:-1;3041:214:0;;;;;:::i;:::-;;:::i;6138:94::-;6186:13;6219:5;6212:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6138:94;:::o;6951:184::-;7051:4;7068:37;7077:10;7089:7;7098:6;7068:8;:37::i;:::-;-1:-1:-1;7123:4:0;6951:184;;;;;:::o;7143:404::-;7275:4;7292:36;7302:6;7310:9;7321:6;7292:9;:36::i;:::-;-1:-1:-1;;;;;7343:19:0;;3867:1;7343:19;;;:11;:19;;;;;;;;7363:10;7343:31;;;;;;;;-1:-1:-1;;7343:38:0;7339:179;;-1:-1:-1;;;;;7449:19:0;;;;;;:11;:19;;;;;;;;7469:10;7449:31;;;;;;;;:57;;7500:6;;7449:57;:::i;:::-;-1:-1:-1;;;;;7398:19:0;;;;;;:11;:19;;;;;;;;7418:10;7398:31;;;;;;;:108;7339:179;-1:-1:-1;7535:4:0;7143:404;;;;;:::o;5881:143::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;;;;;;;;;5947:11:::1;:21:::0;;-1:-1:-1;;;;;5947:21:0;;::::1;-1:-1:-1::0;;;;;;5947:21:0;;::::1;::::0;::::1;::::0;;:11:::1;5979:30:::0;;;:17:::1;:30;::::0;;;;:37;;-1:-1:-1;;5979:37:0::1;5947:21:::0;5979:37:::1;::::0;;5881:143::o;2885:148::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;2992:1:::1;2976:6:::0;;2955:40:::1;::::0;-1:-1:-1;;;;;2976:6:0;;::::1;::::0;2955:40:::1;::::0;2992:1;;2955:40:::1;3023:1;3006:19:::0;;-1:-1:-1;;;;;;3006:19:0::1;::::0;;2885:148::o;12138:360::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;12244:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;12244:21:0;;;;12211:15:::1;::::0;-1:-1:-1;;;;;12244:14:0::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:14;:21:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12229:63;::::0;-1:-1:-1;;;12229:63:0;;12286:4:::1;12229:63;::::0;::::1;2445:51:1::0;-1:-1:-1;;;;;12229:48:0;;;::::1;::::0;::::1;::::0;2418:18:1;;12229:63:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12211:81:::0;-1:-1:-1;12303:14:0::1;12320:21;12330:4:::0;12211:81;12320:21:::1;:::i;:::-;12303:38;;12357:6;12352:91;12369:15:::0;;::::1;12352:91;;;12406:25;12416:6;12423:4;;12428:1;12423:7;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;12406:9;:25::i;:::-;12386:3:::0;::::1;::::0;::::1;:::i;:::-;;;;12352:91;;;-1:-1:-1::0;;12475:15:0::1;12453:19;:37:::0;-1:-1:-1;;;12138:360:0:o;11914:216::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;12031:6:::1;12026:97;12043:15:::0;;::::1;12026:97;;;12106:5;12080:14;:23;12095:4;;12100:1;12095:7;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12080:23:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;12080:23:0;:31;;-1:-1:-1;;12080:31:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12060:3;::::1;::::0;::::1;:::i;:::-;;;;12026:97;;;;11914:216:::0;;;:::o;14065:122::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14145:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:34;;-1:-1:-1;;14145:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14065:122::o;6032:98::-;6082:13;6115:7;6108:14;;;;;:::i;13133:313::-;-1:-1:-1;;;;;13194:23:0;;13212:4;13194:23;13190:249;;13276:11;;13306:39;;-1:-1:-1;;;13306:39:0;;13339:4;13306:39;;;2445:51:1;-1:-1:-1;;;;;13234:23:0;;;;;;13276:11;;;13234:23;;13306:24;;2418:18:1;;13306:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13234:126;;-1:-1:-1;;;;;;13234:126:0;;;;;;;-1:-1:-1;;;;;8071:32:1;;;13234:126:0;;;8053:51:1;8120:18;;;8113:34;8026:18;;13234:126:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;13383:11:0;;13375:52;;-1:-1:-1;;;;;13383:11:0;;;;13405:21;13375:52;;;;;13383:11;13375:52;13383:11;13375:52;13405:21;13383:11;13375:52;;;;;;;;;;;;;;;;;;;;;13190:249;13133:313;:::o;6577:190::-;6680:4;6697:40;6707:10;6719:9;6730:6;6697:9;:40::i;8041:88::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;8109:12:::1;::::0;;-1:-1:-1;;8093:28:0;::::1;8109:12;::::0;;::::1;8108:13;8093:28;::::0;;8041:88::o;11800:106::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11871:19:0;;;::::1;;::::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;11871:27:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11800:106::o;8913:751::-;8952:14;8968:15;9018:19;;9000:15;:37;:65;;;-1:-1:-1;9041:19:0;;:24;9000:65;8996:111;;;-1:-1:-1;9090:1:0;;;;-1:-1:-1;8913:751:0:o;8996:111::-;9117:33;;;;;;;;9142:8;9117:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9232:38;;9261:9;9232:38;:::i;:::-;9210:19;;:60;;;;:::i;:::-;9179:15;:91;9161:496;;;9305:7;:19;;;9326:7;:20;;;9297:50;;;;;8913:751;;:::o;9161:496::-;9436:27;;;;:39;;9466:9;9436:39;:::i;:::-;9414:19;;:61;;;;:::i;:::-;9383:15;:92;9365:292;;;9510:7;:22;;;9534:7;:23;;;9502:56;;;;;8913:751;;:::o;9365:292::-;9599:21;;9622:22;;;;;9599:21;;9622:22;;-1:-1:-1;8913:751:0;-1:-1:-1;8913:751:0:o;8137:768::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;8443:33:::1;::::0;;::::1;::::0;::::1;::::0;;8487:37;;;8443:33:::1;::::0;::::1;8535:39:::0;;;8443:33;;;8585;;;8443;;;8629:35;;;8443:33;;;8675:37;;;8443:33;;;8723:39;;;8443:33;;;8773:43;;;8443:33;;8827:41;;;8468:8:::1;8879:18:::0;;;;8443:33;8879:18;;;;8443:33;8879:18;;;;8443:33;8879:18;;;;8443:33;8879:18;8443:33;8879:18;8443:33;8879:18;8443:33;8879:18;8137:768::o;3041:214::-;2815:6;;-1:-1:-1;;;;;2815:6:0;2825:10;2815:20;2807:50;;;;-1:-1:-1;;;2807:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3130:22:0;::::1;3122:43;;;::::0;-1:-1:-1;;;3122:43:0;;8913:2:1;3122:43:0::1;::::0;::::1;8895:21:1::0;8952:1;8932:18;;;8925:29;-1:-1:-1;;;8970:18:1;;;8963:38;9018:18;;3122:43:0::1;8711:331:1::0;3122:43:0::1;3202:6;::::0;;3181:38:::1;::::0;-1:-1:-1;;;;;3181:38:0;;::::1;::::0;3202:6;::::1;::::0;3181:38:::1;::::0;::::1;3230:6;:17:::0;;-1:-1:-1;;;;;;3230:17:0::1;-1:-1:-1::0;;;;;3230:17:0;;;::::1;::::0;;;::::1;::::0;;3041:214::o;7555:177::-;-1:-1:-1;;;;;7640:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7692:32;;1361:25:1;;;7692:32:0;;1334:18:1;7692:32:0;;;;;;;7555:177;;;:::o;9672:1188::-;-1:-1:-1;;;;;9760:18:0;;9752:68;;;;-1:-1:-1;;;9752:68:0;;9249:2:1;9752:68:0;;;9231:21:1;9288:2;9268:18;;;9261:30;9327:34;9307:18;;;9300:62;-1:-1:-1;;;9378:18:1;;;9371:35;9423:19;;9752:68:0;9047:401:1;9752:68:0;-1:-1:-1;;;;;9839:16:0;;9831:64;;;;-1:-1:-1;;;9831:64:0;;9655:2:1;9831:64:0;;;9637:21:1;9694:2;9674:18;;;9667:30;9733:34;9713:18;;;9706:62;-1:-1:-1;;;9784:18:1;;;9777:33;9827:19;;9831:64:0;9453:399:1;9831:64:0;-1:-1:-1;;;;;9915:20:0;;;;;;:14;:20;;;;;;;;9914:21;9906:54;;;;-1:-1:-1;;;9906:54:0;;10059:2:1;9906:54:0;;;10041:21:1;10098:2;10078:18;;;10071:30;-1:-1:-1;;;10117:18:1;;;10110:50;10177:18;;9906:54:0;9857:344:1;9906:54:0;-1:-1:-1;;;;;9980:18:0;;;;;;:14;:18;;;;;;;;9979:19;9971:57;;;;-1:-1:-1;;;9971:57:0;;10408:2:1;9971:57:0;;;10390:21:1;10447:2;10427:18;;;10420:30;10486:27;10466:18;;;10459:55;10531:18;;9971:57:0;10206:349:1;9971:57:0;-1:-1:-1;;;;;6543:18:0;;10039:15;6543:18;;;:9;:18;;;;;;10087:6;;;;10083:92;;;10110:32;10125:4;10131:2;10135:6;10110:14;:32::i;:::-;;10157:7;9672:1188;;;:::o;10083:92::-;-1:-1:-1;;;;;10212:16:0;;10185:12;10212:16;;;:12;:16;;;;;;;;:27;;;;-1:-1:-1;10233:6:0;;;;10232:7;10212:27;:55;;;;-1:-1:-1;;;;;;10244:23:0;;;;;;:17;:23;;;;;;;;10243:24;10212:55;:81;;;;-1:-1:-1;;;;;;10272:21:0;;;;;;:17;:21;;;;;;;;10271:22;10212:81;10208:263;;;10352:4;10310:21;10334:24;;;:9;:24;;;;;;10377:17;;10373:87;;10414:30;10430:13;10414:15;:30::i;:::-;10295:176;10208:263;-1:-1:-1;;;;;10502:23:0;;;;;;:17;:23;;;;;;;;10501:24;:50;;;;-1:-1:-1;;;;;;10530:21:0;;;;;;:17;:21;;;;;;;;10529:22;10501:50;:61;;;;-1:-1:-1;10556:6:0;;;;10555:7;10501:61;10483:318;;;10619:1;10597:19;;:23;10589:49;;;;-1:-1:-1;;;10589:49:0;;10762:2:1;10589:49:0;;;10744:21:1;10801:2;10781:18;;;10774:30;-1:-1:-1;;;10820:18:1;;;10813:44;10874:18;;10589:49:0;10560:338:1;10589:49:0;-1:-1:-1;10686:12:0;;10663:4;;10686:12;;:33;;;;;10712:7;10702:6;:17;10686:33;10682:108;;;10759:14;10768:5;10759:6;:14;:::i;:::-;10749:25;;:6;:25;:::i;:::-;10740:34;;10682:108;10811:41;10826:4;10832:2;10836:6;10844:7;10811:14;:41::i;12506:619::-;4651:6;:13;;-1:-1:-1;;4651:13:0;4660:4;4651:13;;;12604:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;12604:21:0;;;;4651:6;;-1:-1:-1;;;;;12604:14:0::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:14;:21:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12660:16;::::0;;12674:1:::1;12660:16:::0;;;;;::::1;::::0;;12589:36;;-1:-1:-1;12636:21:0::1;::::0;12660:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12660:16:0::1;12636:40;;12705:4;12687;12692:1;12687:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;12687:23:0::1;;;-1:-1:-1::0;;;;;12687:23:0::1;;;::::0;::::1;12739:4;12721;12726:1;12721:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12721:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;12770:37:::1;::::0;-1:-1:-1;;;12770:37:0;;12801:4:::1;12770:37;::::0;::::1;2445:51:1::0;12755:12:0::1;::::0;12770:22;::::1;::::0;::::1;::::0;2418:18:1;;12770:37:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12755:52;;12846:4;12832:11;:18;:39;;12860:11;12832:39;;;12853:4;12832:39;12818:53;;12886:11;12901:1;12886:16:::0;12882:29:::1;;12904:7;;;;;12882:29;12921:14;::::0;:196:::1;::::0;-1:-1:-1;;;12921:196:0;;-1:-1:-1;;;;;12921:14:0;;::::1;::::0;:68:::1;::::0;:196:::1;::::0;13004:11;;12921:14:::1;::::0;13046:4;;13073:2;;13091:15:::1;::::0;12921:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;12578:547;;;4675:1;-1:-1:-1::0;;4687:6:0;:14;;-1:-1:-1;;4687:14:0;;;12506:619::o;7740:293::-;-1:-1:-1;;;;;7884:17:0;;7867:4;7884:17;;;:9;:17;;;;;:27;;7905:6;;7884:17;7867:4;;7884:27;;7905:6;;7884:27;:::i;:::-;;;;-1:-1:-1;;;;;;;7922:20:0;;;;;;:9;:20;;;;;:30;;7946:6;;7922:20;:30;;7946:6;;7922:30;:::i;:::-;;;;;;;;7985:9;-1:-1:-1;;;;;7968:35:0;7977:6;-1:-1:-1;;;;;7968:35:0;;7996:6;7968:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;7968:35:0;;;;;;;;-1:-1:-1;8021:4:0;7740:293;;;;;:::o;13454:603::-;4651:6;:13;;-1:-1:-1;;4651:13:0;4660:4;4651:13;;;13555:16:::1;::::0;;13569:1:::1;13555:16:::0;;;;;::::1;::::0;;-1:-1:-1;;13555:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13555:16:0::1;13531:40;;13600:4;13582;13587:1;13582:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13582:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;13626:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;13626:21:0;;;;:14;;;::::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;13582:7;;13626:21;;;;;:14;:21:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13616:4;13621:1;13616:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13616:31:0;;::::1;:7;::::0;;::::1;::::0;;;;;:31;13675:14:::1;::::0;:219:::1;::::0;-1:-1:-1;;;13675:219:0;;:14;::::1;::::0;:65:::1;::::0;:219:::1;::::0;13759:11;;13675:14:::1;::::0;13809:4;;13840::::1;::::0;13864:15:::1;::::0;13675:219:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;13658:257:::0;13942:21:::1;13978:8:::0;;13974:76:::1;;14011:11;::::0;14003:35:::1;::::0;-1:-1:-1;;;;;14011:11:0;;::::1;::::0;14003:35;::::1;;;::::0;14033:4;;14011:11:::1;14003:35:::0;14011:11;14003:35;14033:4;14011:11;14003:35;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;13974:76;-1:-1:-1::0;;4687:6:0;:14;;-1:-1:-1;;4687:14:0;;;-1:-1:-1;13454:603:0:o;10868:924::-;-1:-1:-1;;;;;11040:17:0;;;;;;:9;:17;;;;;;:27;;11060:7;;11040:27;:::i;:::-;-1:-1:-1;;;;;11020:17:0;;;;;;:9;:17;;;;;:47;;;;11106:535;;;;11134:14;11164;11180:15;11199:8;:6;:8::i;:::-;-1:-1:-1;;;;;11226:23:0;;;;;;:12;:23;;;;;;11163:44;;-1:-1:-1;11163:44:0;-1:-1:-1;11226:23:0;;11222:162;;;11279:7;11270:16;;11222:162;;;-1:-1:-1;;;;;11312:20:0;;;;;;:12;:20;;;;;;;;11308:76;;;11362:6;11353:15;;11308:76;11429:3;11410:16;11420:6;11410:7;:16;:::i;:::-;:22;;;;:::i;:::-;11398:34;-1:-1:-1;11451:13:0;;11447:183;;11530:4;11512:24;;;;:9;:24;;;;;;:36;;11539:9;;11512:36;:::i;:::-;11503:4;11485:24;;;;:9;:24;;;;;;;:63;;;;11572:42;;-1:-1:-1;;;;;11572:42:0;;;;;;;11604:9;1361:25:1;;1349:2;1334:18;;1215:177;11572:42:0;;;;;;;;11447:183;11119:522;;;11106:535;11700:19;11710:9;11700:7;:19;:::i;:::-;-1:-1:-1;;;;;11676:20:0;;;;;;:9;:20;;;;;;:44;;;;:::i;:::-;-1:-1:-1;;;;;11653:20:0;;;;;;;:9;:20;;;;;:67;;;;11736:48;;;11764:19;11774:9;11764:7;:19;:::i;:::-;11736:48;;1361:25:1;;;1349:2;1334:18;11736:48:0;;;;;;;11009:783;10868:924;;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:247::-;1456:6;1509:2;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;1564:9;1551:23;1583:31;1608:5;1583:31;:::i;:::-;1633:5;1397:247;-1:-1:-1;;;1397:247:1:o;1649:456::-;1726:6;1734;1742;1795:2;1783:9;1774:7;1770:23;1766:32;1763:52;;;1811:1;1808;1801:12;1763:52;1850:9;1837:23;1869:31;1894:5;1869:31;:::i;:::-;1919:5;-1:-1:-1;1976:2:1;1961:18;;1948:32;1989:33;1948:32;1989:33;:::i;:::-;1649:456;;2041:7;;-1:-1:-1;;;2095:2:1;2080:18;;;;2067:32;;1649:456::o;2737:367::-;2800:8;2810:6;2864:3;2857:4;2849:6;2845:17;2841:27;2831:55;;2882:1;2879;2872:12;2831:55;-1:-1:-1;2905:20:1;;2948:18;2937:30;;2934:50;;;2980:1;2977;2970:12;2934:50;3017:4;3009:6;3005:17;2993:29;;3077:3;3070:4;3060:6;3057:1;3053:14;3045:6;3041:27;3037:38;3034:47;3031:67;;;3094:1;3091;3084:12;3031:67;2737:367;;;;;:::o;3109:437::-;3195:6;3203;3256:2;3244:9;3235:7;3231:23;3227:32;3224:52;;;3272:1;3269;3262:12;3224:52;3312:9;3299:23;3345:18;3337:6;3334:30;3331:50;;;3377:1;3374;3367:12;3331:50;3416:70;3478:7;3469:6;3458:9;3454:22;3416:70;:::i;:::-;3505:8;;3390:96;;-1:-1:-1;3109:437:1;-1:-1:-1;;;;3109:437:1:o;3551:118::-;3637:5;3630:13;3623:21;3616:5;3613:32;3603:60;;3659:1;3656;3649:12;3674:566;3766:6;3774;3782;3835:2;3823:9;3814:7;3810:23;3806:32;3803:52;;;3851:1;3848;3841:12;3803:52;3891:9;3878:23;3924:18;3916:6;3913:30;3910:50;;;3956:1;3953;3946:12;3910:50;3995:70;4057:7;4048:6;4037:9;4033:22;3995:70;:::i;:::-;4084:8;;-1:-1:-1;3969:96:1;-1:-1:-1;;4169:2:1;4154:18;;4141:32;4182:28;4141:32;4182:28;:::i;:::-;4229:5;4219:15;;;3674:566;;;;;:::o;4245:382::-;4310:6;4318;4371:2;4359:9;4350:7;4346:23;4342:32;4339:52;;;4387:1;4384;4377:12;4339:52;4426:9;4413:23;4445:31;4470:5;4445:31;:::i;:::-;4495:5;-1:-1:-1;4552:2:1;4537:18;;4524:32;4565:30;4524:32;4565:30;:::i;:::-;4614:7;4604:17;;;4245:382;;;;;:::o;4885:388::-;4953:6;4961;5014:2;5002:9;4993:7;4989:23;4985:32;4982:52;;;5030:1;5027;5020:12;4982:52;5069:9;5056:23;5088:31;5113:5;5088:31;:::i;:::-;5138:5;-1:-1:-1;5195:2:1;5180:18;;5167:32;5208:33;5167:32;5208:33;:::i;5278:661::-;5400:6;5408;5416;5424;5432;5440;5448;5456;5509:3;5497:9;5488:7;5484:23;5480:33;5477:53;;;5526:1;5523;5516:12;5477:53;-1:-1:-1;;5549:23:1;;;5619:2;5604:18;;5591:32;;-1:-1:-1;5670:2:1;5655:18;;5642:32;;5721:2;5706:18;;5693:32;;-1:-1:-1;5772:3:1;5757:19;;5744:33;;-1:-1:-1;5824:3:1;5809:19;;5796:33;;-1:-1:-1;5876:3:1;5861:19;;5848:33;;-1:-1:-1;5928:3:1;5913:19;5900:33;;-1:-1:-1;5278:661:1;-1:-1:-1;5278:661:1:o;5944:380::-;6023:1;6019:12;;;;6066;;;6087:61;;6141:4;6133:6;6129:17;6119:27;;6087:61;6194:2;6186:6;6183:14;6163:18;6160:38;6157:161;;6240:10;6235:3;6231:20;6228:1;6221:31;6275:4;6272:1;6265:15;6303:4;6300:1;6293:15;6157:161;;5944:380;;;:::o;6329:127::-;6390:10;6385:3;6381:20;6378:1;6371:31;6421:4;6418:1;6411:15;6445:4;6442:1;6435:15;6461:128;6528:9;;;6549:11;;;6546:37;;;6563:18;;:::i;6594:341::-;6796:2;6778:21;;;6835:2;6815:18;;;6808:30;-1:-1:-1;;;6869:2:1;6854:18;;6847:47;6926:2;6911:18;;6594:341::o;6940:251::-;7010:6;7063:2;7051:9;7042:7;7038:23;7034:32;7031:52;;;7079:1;7076;7069:12;7031:52;7111:9;7105:16;7130:31;7155:5;7130:31;:::i;7196:184::-;7266:6;7319:2;7307:9;7298:7;7294:23;7290:32;7287:52;;;7335:1;7332;7325:12;7287:52;-1:-1:-1;7358:16:1;;7196:184;-1:-1:-1;7196:184:1:o;7385:217::-;7425:1;7451;7441:132;;7495:10;7490:3;7486:20;7483:1;7476:31;7530:4;7527:1;7520:15;7558:4;7555:1;7548:15;7441:132;-1:-1:-1;7587:9:1;;7385:217::o;7607:127::-;7668:10;7663:3;7659:20;7656:1;7649:31;7699:4;7696:1;7689:15;7723:4;7720:1;7713:15;7739:135;7778:3;7799:17;;;7796:43;;7819:18;;:::i;:::-;-1:-1:-1;7866:1:1;7855:13;;7739:135::o;8158:245::-;8225:6;8278:2;8266:9;8257:7;8253:23;8249:32;8246:52;;;8294:1;8291;8284:12;8246:52;8326:9;8320:16;8345:28;8367:5;8345:28;:::i;8408:168::-;8481:9;;;8512;;8529:15;;;8523:22;;8509:37;8499:71;;8550:18;;:::i;8581:125::-;8646:9;;;8667:10;;;8664:36;;;8680:18;;:::i;11035:980::-;11297:4;11345:3;11334:9;11330:19;11376:6;11365:9;11358:25;11402:2;11440:6;11435:2;11424:9;11420:18;11413:34;11483:3;11478:2;11467:9;11463:18;11456:31;11507:6;11542;11536:13;11573:6;11565;11558:22;11611:3;11600:9;11596:19;11589:26;;11650:2;11642:6;11638:15;11624:29;;11671:1;11681:195;11695:6;11692:1;11689:13;11681:195;;;11760:13;;-1:-1:-1;;;;;11756:39:1;11744:52;;11851:15;;;;11816:12;;;;11792:1;11710:9;11681:195;;;-1:-1:-1;;;;;;;11932:32:1;;;;11927:2;11912:18;;11905:60;-1:-1:-1;;;11996:3:1;11981:19;11974:35;11893:3;11035:980;-1:-1:-1;;;11035:980:1:o

Swarm Source

ipfs://c94a12cdafb0de48821fb3aebe546d95ee30d520f7cedf53da1933aecc668091

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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