ETH Price: $3,870.60 (+5.63%)

Contract

0xe80471aC40b9c985f6Bbd15c0ac5807eB49374C0
 

Overview

ETH Balance

1 wei

Eth Value

Less Than $0.01 (@ $3,870.60/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve176211492023-07-04 14:28:23519 days ago1688480903IN
0xe80471aC...eB49374C0
0 ETH0.0007306930.13801144
Approve176211392023-07-04 14:26:11519 days ago1688480771IN
0xe80471aC...eB49374C0
0 ETH0.0006668527.50492706
Approve159626082022-11-13 17:30:47752 days ago1668360647IN
0xe80471aC...eB49374C0
0 ETH0.0004053916.72080055
Approve152950572022-08-07 12:05:36850 days ago1659873936IN
0xe80471aC...eB49374C0
0 ETH0.000292866.29421792
Transfer152767152022-08-04 15:33:02853 days ago1659627182IN
0xe80471aC...eB49374C0
0 ETH0.0019315222.97685765
Approve152606672022-08-02 3:23:30855 days ago1659410610IN
0xe80471aC...eB49374C0
0 ETH0.0004784619.73473882
Approve152525272022-07-31 20:59:30857 days ago1659301170IN
0xe80471aC...eB49374C0
0 ETH0.000453079.73742323
Approve152377782022-07-29 14:01:38859 days ago1659103298IN
0xe80471aC...eB49374C0
0 ETH0.0017081936.71255895
Approve152264222022-07-27 19:32:54861 days ago1658950374IN
0xe80471aC...eB49374C0
0 ETH0.0014368230.88010294
Approve151717432022-07-19 7:35:58869 days ago1658216158IN
0xe80471aC...eB49374C0
0 ETH0.0007779616.72000023
Approve151436952022-07-14 23:09:28874 days ago1657840168IN
0xe80471aC...eB49374C0
0 ETH0.00100221.53498666
Approve151382162022-07-14 3:12:45875 days ago1657768365IN
0xe80471aC...eB49374C0
0 ETH0.0013324628.63730981
Approve151381892022-07-14 3:07:16875 days ago1657768036IN
0xe80471aC...eB49374C0
0 ETH0.0018142638.99223256
Approve151320592022-07-13 4:09:39875 days ago1657685379IN
0xe80471aC...eB49374C0
0 ETH0.0003069112.65893694
Approve151162892022-07-10 17:38:50878 days ago1657474730IN
0xe80471aC...eB49374C0
0 ETH0.0013489929
Approve151162862022-07-10 17:38:26878 days ago1657474706IN
0xe80471aC...eB49374C0
0 ETH0.0006957926.12913214
Approve151162862022-07-10 17:38:26878 days ago1657474706IN
0xe80471aC...eB49374C0
0 ETH0.0012157626.12913214
Approve151162532022-07-10 17:29:54878 days ago1657474194IN
0xe80471aC...eB49374C0
0 ETH0.0007416715.94000426
Approve151159662022-07-10 16:31:05878 days ago1657470665IN
0xe80471aC...eB49374C0
0 ETH0.0017139336.8358824
Approve151158132022-07-10 15:51:59878 days ago1657468319IN
0xe80471aC...eB49374C0
0 ETH0.0020830944.76981882
Approve151056372022-07-09 2:06:55880 days ago1657332415IN
0xe80471aC...eB49374C0
0 ETH0.0006952814.94295323
Approve151053312022-07-09 0:54:34880 days ago1657328074IN
0xe80471aC...eB49374C0
0 ETH0.0003102810.65193537
Approve151046982022-07-08 22:34:29880 days ago1657319669IN
0xe80471aC...eB49374C0
0 ETH0.000669114.38039739
Approve151045402022-07-08 21:58:57880 days ago1657317537IN
0xe80471aC...eB49374C0
0 ETH0.0005258411.30134093
Approve151042202022-07-08 20:48:23880 days ago1657313303IN
0xe80471aC...eB49374C0
0 ETH0.0018611640
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
152377822022-07-29 14:02:41859 days ago1659103361
0xe80471aC...eB49374C0
0.01290208 ETH
152377822022-07-29 14:02:41859 days ago1659103361
0xe80471aC...eB49374C0
0.01290208 ETH
152377822022-07-29 14:02:41859 days ago1659103361
0xe80471aC...eB49374C0
0.01290208 ETH
152377822022-07-29 14:02:41859 days ago1659103361
0xe80471aC...eB49374C0
0.03870626 ETH
151159842022-07-10 16:34:38878 days ago1657470878
0xe80471aC...eB49374C0
0.01790165 ETH
151159842022-07-10 16:34:38878 days ago1657470878
0xe80471aC...eB49374C0
0.01790165 ETH
151159842022-07-10 16:34:38878 days ago1657470878
0xe80471aC...eB49374C0
0.01790165 ETH
151159842022-07-10 16:34:38878 days ago1657470878
0xe80471aC...eB49374C0
0.05370497 ETH
151091802022-07-09 15:17:55879 days ago1657379875
0xe80471aC...eB49374C0
0.0223358 ETH
151091802022-07-09 15:17:55879 days ago1657379875
0xe80471aC...eB49374C0
0.0223358 ETH
151091802022-07-09 15:17:55879 days ago1657379875
0xe80471aC...eB49374C0
0.0223358 ETH
151091802022-07-09 15:17:55879 days ago1657379875
0xe80471aC...eB49374C0
0.06700742 ETH
151037672022-07-08 19:12:57880 days ago1657307577
0xe80471aC...eB49374C0
0.02310003 ETH
151037672022-07-08 19:12:57880 days ago1657307577
0xe80471aC...eB49374C0
0.02310003 ETH
151037672022-07-08 19:12:57880 days ago1657307577
0xe80471aC...eB49374C0
0.02310003 ETH
151037672022-07-08 19:12:57880 days ago1657307577
0xe80471aC...eB49374C0
0.06930011 ETH
151026852022-07-08 15:20:52880 days ago1657293652
0xe80471aC...eB49374C0
0.03050641 ETH
151026852022-07-08 15:20:52880 days ago1657293652
0xe80471aC...eB49374C0
0.03050641 ETH
151026852022-07-08 15:20:52880 days ago1657293652
0xe80471aC...eB49374C0
0.03050641 ETH
151026852022-07-08 15:20:52880 days ago1657293652
0xe80471aC...eB49374C0
0.09151923 ETH
150989742022-07-08 1:29:31881 days ago1657243771
0xe80471aC...eB49374C0
0.09134704 ETH
150989742022-07-08 1:29:31881 days ago1657243771
0xe80471aC...eB49374C0
0.09134704 ETH
150989742022-07-08 1:29:31881 days ago1657243771
0xe80471aC...eB49374C0
0.09134704 ETH
150989742022-07-08 1:29:31881 days ago1657243771
0xe80471aC...eB49374C0
0.27404113 ETH
150980802022-07-07 22:28:25881 days ago1657232905
0xe80471aC...eB49374C0
0.10856691 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
XTOKEN

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-07-07
*/

/**
 
X TOKEN

A token and NFT based defi lottery game. 

Buy X
Burn X
Mint XNFT
Win ETH

https://thextoken.net/

*/

pragma solidity 0.8.4;

// SPDX-License-Identifier: Unlicensed

interface IBEP20 {
    function totalSupply() external view returns (uint256);

    function decimals() external view returns (uint8);

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

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

    function getOwner() external view returns (address);

    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 PancakeSwapFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface PancakeSwapRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

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

// Contracts and libraries

library SafeMath {

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

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

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

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

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

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

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

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

contract Ownable is Context {
    address private _owner;

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

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        authorizations[_owner] = true;
        emit OwnershipTransferred(address(0), msgSender);
    }
    mapping (address => bool) internal authorizations;

    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 XTOKEN is Ownable, IBEP20 {
    using SafeMath for uint256;

    uint8 constant _decimals = 9;

    uint256 _totalSupply = 10000000000 * (10 ** _decimals); //Set Supply
    uint256 public _maxTxAmount = _totalSupply * 5 / 1000; //Set max transaction amount. Currently set to 0.5% of the supply.
    uint256 public _walletMax = _totalSupply * 20 / 1000; //Set max wallet amount. Currently set to 2% of the supply.

    address DEAD_WALLET = 0x000000000000000000000000000000000000dEaD;
    address ZERO_WALLET = 0x0000000000000000000000000000000000000000;

    address pancakeAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    //address pancakeAddress = 0x10ED43C718714eb63d5aA57B78B54704E256024E;

    string constant _name = "XTOKEN"; //Set the name of your token.
    string constant _symbol = "X"; //Set the symbol of your token.

    bool public restrictWhales = true; //If true, limits wallet to _walletMax set above.

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

    mapping(address => bool) public isFeeExempt;
    mapping(address => bool) public isTxLimitExempt;

    uint256 public developmentFee = 2; // Tax for development costs -- Actual wallet split set below at "amountToDevelopment"
    uint256 public marketingFee = 3; //Tax for Marketing costs -- Actual wallet split set below at "amountToMarketing"
    uint256 public rewardsFee = 0; // Tax for Rewards -- Actual wallet split set below at "amountToRewards"

    uint256 public totalFee; //Ignore this

    address private developmentWallet;
    address private marketingWallet;
    address private rewardsWallet;

    PancakeSwapRouter public router;
    address public pair;

    uint256 public launchedAt;
    bool public tradingOpen = false; //Leave false, enabled after launch.

    bool inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    bool public swapAndLiquifyByLimitOnly = false;

    uint256 public swapThreshold = _totalSupply * 4 / 2000; //Amount to swap for Development/Marketing/Rewards -- Set to 0.2% 

    event AutoLiquify(uint256 amountBNB, uint256 amountBOG);

    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor() {
        router = PancakeSwapRouter(pancakeAddress);
        pair = PancakeSwapFactory(router.factory()).createPair(router.WETH(), address(this));
        _allowances[address(this)][address(router)] = type(uint256).max;
        _allowances[address(this)][address(pair)] = type(uint256).max;

        isFeeExempt[msg.sender] = true;
        isFeeExempt[address(this)] = true;
        isFeeExempt[DEAD_WALLET] = true;

        isTxLimitExempt[msg.sender] = true;
        isTxLimitExempt[pair] = true;
        isTxLimitExempt[DEAD_WALLET] = true;

        developmentWallet = 0x69d2333997d875308B28863C6947f19D711a0dEb; //Address for development costs
        marketingWallet = 0x9bd438A6A7E82593110e969a967f2DBFA96F5680; //Address for marketing fees
        rewardsWallet = 0x69d2333997d875308B28863C6947f19D711a0dEb; //Address for rewards
        
        isFeeExempt[marketingWallet] = true;
        totalFee = developmentFee.add(marketingFee + rewardsFee);

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

    receive() external payable {}

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

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

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

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

    function getOwner() external view override returns (address) {return owner();}

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

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

    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD_WALLET)).sub(balanceOf(ZERO_WALLET));
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function approveMax(address spender) external returns (bool) {
        return approve(spender, type(uint256).max);
    }

    function launched() internal view returns (bool) {
        return launchedAt != 0;
    }

    function launch() internal {
        launchedAt = block.number;
    }

    function checkTxLimit(address sender, uint256 amount) internal view {
        require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded");
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if (_allowances[sender][msg.sender] != type(uint256).max) {
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }
        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if (inSwapAndLiquify) {return _basicTransfer(sender, recipient, amount);}
        if(!authorizations[sender] && !authorizations[recipient]){
            require(tradingOpen, "Trading not open yet");
        }

        require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded");
        if (msg.sender != pair && !inSwapAndLiquify && swapAndLiquifyEnabled && _balances[address(this)] >= swapThreshold) {transferFees();}
        if (!launched() && recipient == pair) {
            require(_balances[sender] > 0, "Zero balance violated!");
            launch();
        }    

        //Exchange tokens
         _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");

        if (!isTxLimitExempt[recipient] && restrictWhales) {
            require(_balances[recipient].add(amount) <= _walletMax, "Max wallet violated!");
        }

        uint256 finalAmount = !isFeeExempt[sender] && !isFeeExempt[recipient] ? extractFee(sender, amount) : amount;
        _balances[recipient] = _balances[recipient].add(finalAmount);

        emit Transfer(sender, recipient, finalAmount);
        return true;
    }

    function extractFee(address sender, uint256 amount) internal returns (uint256) {
        uint256 feeAmount = amount.mul(totalFee).div(100);

        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);

        return amount.sub(feeAmount);
    }

    function transferFees() internal lockTheSwap {
        uint256 tokensToSwap = _balances[address(this)];

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokensToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountBNB = address(this).balance;

        uint256 amountToMarketing = amountBNB.div(3);
        uint256 amountToDevelopment = amountBNB.div(3);
        uint256 amountToRewards = amountBNB.div(3);
        
        (bool tmpSuccess1,) = payable(marketingWallet).call{value : amountToMarketing, gas : 30000}("");
        tmpSuccess1 = false;

        (bool tmpSuccess2,) = payable(developmentWallet).call{value : amountToDevelopment, gas : 30000}("");
        tmpSuccess2 = false;

        (bool tmpSuccess3,) = payable(rewardsWallet).call{value : amountToRewards, gas : 30000}("");
        tmpSuccess3 = false;

    }

    // CONTRACT OWNER FUNCTIONS

    function setWalletLimit(uint256 newLimit) external onlyOwner {
        _walletMax = newLimit;
    }

    function tradingStatus(bool newStatus) public onlyOwner {
        tradingOpen = newStatus;
    }

    function setIsFeeExempt(address holder, bool exempt) external onlyOwner {
        isFeeExempt[holder] = exempt;
    }

    function setIsTxLimitExempt(address holder, bool exempt) external onlyOwner {
        isTxLimitExempt[holder] = exempt;
    }

    function setFees(uint256 newDevFee, uint256 newMarketingFee, uint256 newRewardsFee) external onlyOwner {
        developmentFee = newDevFee;
        marketingFee = newMarketingFee;
        rewardsFee = newRewardsFee;

        totalFee = developmentFee.add(marketingFee + rewardsFee);
    }

    function rescueToken(address tokenAddress, uint256 tokens) public onlyOwner returns (bool success) {
        return IBEP20(tokenAddress).transfer(msg.sender, tokens);
    }

    function clearStuckBalance(uint256 amountPercentage) external onlyOwner {
        uint256 amountETH = address(this).balance;
        payable(msg.sender).transfer(amountETH * amountPercentage / 100);
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_walletMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"developmentFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"rescueToken","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"restrictWhales","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract PancakeSwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newDevFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"},{"internalType":"uint256","name":"newRewardsFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"newStatus","type":"bool"}],"name":"tradingStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a620005ea565b62000023906402540be400620006b6565b6002556103e860025460056200003a9190620006b6565b62000046919062000580565b6003556103e860025460146200005d9190620006b6565b62000069919062000580565b6004908155600580546001600160a01b031990811661dead179091556006805490911690556007805474017a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a81b03199091161790556002600c8190556003600d556000600e556016805463ffff00ff191662010000179055546107d091620000eb9190620006b6565b620000f7919062000580565b6017553480156200010757600080fd5b50600080546001600160a01b031916339081178255808252600160208190526040808420805460ff191690921790915551909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600754601380546001600160a01b0319166001600160a01b0390921691821790556040805163c45a015560e01b8152905163c45a015591600480820192602092909190829003018186803b158015620001ba57600080fd5b505afa158015620001cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f591906200053c565b6001600160a01b031663c9c65396601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200025257600080fd5b505afa15801562000267573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028d91906200053c565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381600087803b158015620002d557600080fd5b505af1158015620002ea573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031091906200053c565b601480546001600160a01b03199081166001600160a01b03938416178255306000818152600960209081526040808320601354881684528252808320600019908190558654881684528184205533808452600a808452828520805460ff1990811660019081179092559686528386208054881682179055600580548b1687528487208054891683179055928652600b8552838620805488168217905597548916855282852080548716891790559054909716835282208054841686179055601080547369d2333997d875308b28863c6947f19d711a0deb908616811790915560118054739bd438a6a7e82593110e969a967f2dbfa96f56809087168117909155601280549096169091179094559290529290527f0e94dfcbbdf44b9c34c2007b02adf52cfd325620d10cb61d16f9400d87e70ac78054909216179055600e54600d546200047991620004629162000565565b600c54620004cd60201b62000cbc1790919060201c565b600f5560025433600081815260086020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620006ee565b600080620004dc838562000565565b905083811015620005335760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640160405180910390fd5b90505b92915050565b6000602082840312156200054e578081fd5b81516001600160a01b038116811462000533578182fd5b600082198211156200057b576200057b620006d8565b500190565b6000826200059c57634e487b7160e01b81526012600452602481fd5b500490565b600181815b80851115620005e2578160001904821115620005c657620005c6620006d8565b80851615620005d457918102915b93841c9390800290620005a6565b509250929050565b6000620005fb60ff84168362000602565b9392505050565b600082620006135750600162000536565b81620006225750600062000536565b81600181146200063b5760028114620006465762000666565b600191505062000536565b60ff8411156200065a576200065a620006d8565b50506001821b62000536565b5060208310610133831016604e8410600b84101617156200068b575081810a62000536565b620006978383620005a1565b8060001904821115620006ae57620006ae620006d8565b029392505050565b6000816000190483118215151615620006d357620006d3620006d8565b500290565b634e487b7160e01b600052601160045260246000fd5b611a4f80620006fe6000396000f3fe6080604052600436106102295760003560e01c8063715018a611610123578063a9059cbb116100ab578063f1d5f5171161006f578063f1d5f51714610695578063f2fde38b146106b5578063f84ba65d146106d5578063f887ea40146106f5578063ffb54a991461071557600080fd5b8063a9059cbb146105d8578063bf56b371146105f8578063cec10c111461060e578063da00097d1461062e578063dd62ed3e1461064f57600080fd5b80638b42507f116100f25780638b42507f1461052a5780638da5cb5b1461055a57806395d89b4114610578578063a5f3d003146105a2578063a8aa1b31146105b857600080fd5b8063715018a6146104b75780637d1db4a5146104cc578063807c2d9c146104e2578063893d20e8146104f857600080fd5b80632bb14e1d116101b15780634a74bb02116101755780634a74bb021461040b578063571ac8b01461042b578063658d4b7f1461044b5780636b67c4df1461046b57806370a082311461048157600080fd5b80632bb14e1d14610368578063313ce5671461037e57806333f3d6281461039a5780633f4218e0146103ba57806344de2e4c146103ea57600080fd5b806318160ddd116101f857806318160ddd146102e85780631da1db5e146102fd5780631df4ccfc1461031d57806323b872dd146103335780632b112e491461035357600080fd5b80630445b6671461023557806306fdde031461025e578063095ea7b3146102965780630d295980146102c657600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024b60175481565b6040519081526020015b60405180910390f35b34801561026a57600080fd5b506040805180820190915260068152652c2a27a5a2a760d11b60208201525b6040516102559190611877565b3480156102a257600080fd5b506102b66102b13660046117d1565b61072f565b6040519015158152602001610255565b3480156102d257600080fd5b506102e66102e13660046117fc565b61079c565b005b3480156102f457600080fd5b5060025461024b565b34801561030957600080fd5b506102e6610318366004611834565b6107e2565b34801561032957600080fd5b5061024b600f5481565b34801561033f57600080fd5b506102b661034e366004611764565b610854565b34801561035f57600080fd5b5061024b610916565b34801561037457600080fd5b5061024b600e5481565b34801561038a57600080fd5b5060405160098152602001610255565b3480156103a657600080fd5b506102b66103b53660046117d1565b610968565b3480156103c657600080fd5b506102b66103d53660046116f4565b600a6020526000908152604090205460ff1681565b3480156103f657600080fd5b506007546102b690600160a01b900460ff1681565b34801561041757600080fd5b506016546102b69062010000900460ff1681565b34801561043757600080fd5b506102b66104463660046116f4565b610a13565b34801561045757600080fd5b506102e66104663660046117a4565b610a21565b34801561047757600080fd5b5061024b600d5481565b34801561048d57600080fd5b5061024b61049c3660046116f4565b6001600160a01b031660009081526008602052604090205490565b3480156104c357600080fd5b506102e6610a76565b3480156104d857600080fd5b5061024b60035481565b3480156104ee57600080fd5b5061024b60045481565b34801561050457600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610255565b34801561053657600080fd5b506102b66105453660046116f4565b600b6020526000908152604090205460ff1681565b34801561056657600080fd5b506000546001600160a01b0316610512565b34801561058457600080fd5b506040805180820190915260018152600b60fb1b6020820152610289565b3480156105ae57600080fd5b5061024b600c5481565b3480156105c457600080fd5b50601454610512906001600160a01b031681565b3480156105e457600080fd5b506102b66105f33660046117d1565b610aea565b34801561060457600080fd5b5061024b60155481565b34801561061a57600080fd5b506102e661062936600461184c565b610af7565b34801561063a57600080fd5b506016546102b6906301000000900460ff1681565b34801561065b57600080fd5b5061024b61066a36600461172c565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156106a157600080fd5b506102e66106b0366004611834565b610b4e565b3480156106c157600080fd5b506102e66106d03660046116f4565b610b7d565b3480156106e157600080fd5b506102e66106f03660046117a4565b610c67565b34801561070157600080fd5b50601354610512906001600160a01b031681565b34801561072157600080fd5b506016546102b69060ff1681565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061078a9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146107cf5760405162461bcd60e51b81526004016107c6906118ca565b60405180910390fd5b6016805460ff1916911515919091179055565b6000546001600160a01b0316331461080c5760405162461bcd60e51b81526004016107c6906118ca565b47336108fc606461081d85856119a7565b6108279190611987565b6040518115909202916000818181858888f1935050505015801561084f573d6000803e3d6000fd5b505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610901576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546108dc918490610d1b565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b61090c848484610d55565b90505b9392505050565b6006546001600160a01b0316600090815260086020526040812054610963906005546001600160a01b031660009081526008602052604090205461095d9060025490611147565b90611147565b905090565b600080546001600160a01b031633146109935760405162461bcd60e51b81526004016107c6906118ca565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb90604401602060405180830381600087803b1580156109db57600080fd5b505af11580156109ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090f9190611818565b60006107968260001961072f565b6000546001600160a01b03163314610a4b5760405162461bcd60e51b81526004016107c6906118ca565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610aa05760405162461bcd60e51b81526004016107c6906118ca565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061090f338484610d55565b6000546001600160a01b03163314610b215760405162461bcd60e51b81526004016107c6906118ca565b600c839055600d829055600e819055610b46610b3d828461196f565b600c5490610cbc565b600f55505050565b6000546001600160a01b03163314610b785760405162461bcd60e51b81526004016107c6906118ca565b600455565b6000546001600160a01b03163314610ba75760405162461bcd60e51b81526004016107c6906118ca565b6001600160a01b038116610c0c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107c6565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c915760405162461bcd60e51b81526004016107c6906118ca565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b600080610cc9838561196f565b90508381101561090f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107c6565b60008184841115610d3f5760405162461bcd60e51b81526004016107c69190611877565b506000610d4c84866119c6565b95945050505050565b601654600090610100900460ff1615610d7a57610d73848484611189565b905061090f565b6001600160a01b03841660009081526001602052604090205460ff16158015610dbc57506001600160a01b03831660009081526001602052604090205460ff16155b15610e0a5760165460ff16610e0a5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b60448201526064016107c6565b60035482111580610e3357506001600160a01b0384166000908152600b602052604090205460ff165b610e735760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016107c6565b6014546001600160a01b03163314801590610e965750601654610100900460ff16155b8015610eaa575060165462010000900460ff165b8015610ec757506017543060009081526008602052604090205410155b15610ed457610ed461126f565b601554158015610ef157506014546001600160a01b038481169116145b15610f5d576001600160a01b038416600090815260086020526040902054610f545760405162461bcd60e51b81526020600482015260166024820152755a65726f2062616c616e63652076696f6c617465642160501b60448201526064016107c6565b610f5d43601555565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260089091529190912054610faf918490610d1b565b6001600160a01b038086166000908152600860209081526040808320949094559186168152600b909152205460ff16158015610ff45750600754600160a01b900460ff165b15611064576004546001600160a01b03841660009081526008602052604090205461101f9084610cbc565b11156110645760405162461bcd60e51b81526020600482015260146024820152734d61782077616c6c65742076696f6c617465642160601b60448201526064016107c6565b6001600160a01b0384166000908152600a602052604081205460ff161580156110a657506001600160a01b0384166000908152600a602052604090205460ff16155b6110b057826110ba565b6110ba858461155a565b6001600160a01b0385166000908152600860205260409020549091506110e09082610cbc565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111349085815260200190565b60405180910390a3506001949350505050565b600061090f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d1b565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526008909152918220546111da918490610d1b565b6001600160a01b0380861660009081526008602052604080822093909355908516815220546112099083610cbc565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061125d9086815260200190565b60405180910390a35060019392505050565b6016805461ff00191661010017905530600090815260086020908152604080832054815160028082526060820184529194939092908301908036833701905050905030816000815181106112d357634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135f9190611710565b8160018151811061138057634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b815291169063791ac947906113c69085906000908690309042906004016118ff565b600060405180830381600087803b1580156113e057600080fd5b505af11580156113f4573d6000803e3d6000fd5b50479250600091506114099050826003611605565b90506000611418836003611605565b90506000611427846003611605565b6011546040519192506000916001600160a01b039091169061753090869084818181858888f193505050503d806000811461147e576040519150601f19603f3d011682016040523d82523d6000602084013e611483565b606091505b5050601054604051600093508392506001600160a01b039091169061753090869084818181858888f193505050503d80600081146114dd576040519150601f19603f3d011682016040523d82523d6000602084013e6114e2565b606091505b5050601254604051600093508392506001600160a01b039091169061753090869084818181858888f193505050503d806000811461153c576040519150601f19603f3d011682016040523d82523d6000602084013e611541565b606091505b50506016805461ff001916905550505050505050505050565b60008061157d6064611577600f548661164790919063ffffffff16565b90611605565b3060009081526008602052604090205490915061159a9082610cbc565b30600081815260086020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115eb9085815260200190565b60405180910390a36115fd8382611147565b949350505050565b600061090f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116c6565b60008261165657506000610796565b600061166283856119a7565b90508261166f8583611987565b1461090f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107c6565b600081836116e75760405162461bcd60e51b81526004016107c69190611877565b506000610d4c8486611987565b600060208284031215611705578081fd5b813561090f816119f3565b600060208284031215611721578081fd5b815161090f816119f3565b6000806040838503121561173e578081fd5b8235611749816119f3565b91506020830135611759816119f3565b809150509250929050565b600080600060608486031215611778578081fd5b8335611783816119f3565b92506020840135611793816119f3565b929592945050506040919091013590565b600080604083850312156117b6578182fd5b82356117c1816119f3565b9150602083013561175981611a0b565b600080604083850312156117e3578182fd5b82356117ee816119f3565b946020939093013593505050565b60006020828403121561180d578081fd5b813561090f81611a0b565b600060208284031215611829578081fd5b815161090f81611a0b565b600060208284031215611845578081fd5b5035919050565b600080600060608486031215611860578283fd5b505081359360208301359350604090920135919050565b6000602080835283518082850152825b818110156118a357858101830151858201604001528201611887565b818111156118b45783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b8181101561194e5784516001600160a01b031683529383019391830191600101611929565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611982576119826119dd565b500190565b6000826119a257634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156119c1576119c16119dd565b500290565b6000828210156119d8576119d86119dd565b500390565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0381168114611a0857600080fd5b50565b8015158114611a0857600080fdfea2646970667358221220b39bdf7d400dbc1da45eec8a9efdd7a53bca6641d794549e652008a7c9bfcded64736f6c63430008040033

Deployed Bytecode

0x6080604052600436106102295760003560e01c8063715018a611610123578063a9059cbb116100ab578063f1d5f5171161006f578063f1d5f51714610695578063f2fde38b146106b5578063f84ba65d146106d5578063f887ea40146106f5578063ffb54a991461071557600080fd5b8063a9059cbb146105d8578063bf56b371146105f8578063cec10c111461060e578063da00097d1461062e578063dd62ed3e1461064f57600080fd5b80638b42507f116100f25780638b42507f1461052a5780638da5cb5b1461055a57806395d89b4114610578578063a5f3d003146105a2578063a8aa1b31146105b857600080fd5b8063715018a6146104b75780637d1db4a5146104cc578063807c2d9c146104e2578063893d20e8146104f857600080fd5b80632bb14e1d116101b15780634a74bb02116101755780634a74bb021461040b578063571ac8b01461042b578063658d4b7f1461044b5780636b67c4df1461046b57806370a082311461048157600080fd5b80632bb14e1d14610368578063313ce5671461037e57806333f3d6281461039a5780633f4218e0146103ba57806344de2e4c146103ea57600080fd5b806318160ddd116101f857806318160ddd146102e85780631da1db5e146102fd5780631df4ccfc1461031d57806323b872dd146103335780632b112e491461035357600080fd5b80630445b6671461023557806306fdde031461025e578063095ea7b3146102965780630d295980146102c657600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024b60175481565b6040519081526020015b60405180910390f35b34801561026a57600080fd5b506040805180820190915260068152652c2a27a5a2a760d11b60208201525b6040516102559190611877565b3480156102a257600080fd5b506102b66102b13660046117d1565b61072f565b6040519015158152602001610255565b3480156102d257600080fd5b506102e66102e13660046117fc565b61079c565b005b3480156102f457600080fd5b5060025461024b565b34801561030957600080fd5b506102e6610318366004611834565b6107e2565b34801561032957600080fd5b5061024b600f5481565b34801561033f57600080fd5b506102b661034e366004611764565b610854565b34801561035f57600080fd5b5061024b610916565b34801561037457600080fd5b5061024b600e5481565b34801561038a57600080fd5b5060405160098152602001610255565b3480156103a657600080fd5b506102b66103b53660046117d1565b610968565b3480156103c657600080fd5b506102b66103d53660046116f4565b600a6020526000908152604090205460ff1681565b3480156103f657600080fd5b506007546102b690600160a01b900460ff1681565b34801561041757600080fd5b506016546102b69062010000900460ff1681565b34801561043757600080fd5b506102b66104463660046116f4565b610a13565b34801561045757600080fd5b506102e66104663660046117a4565b610a21565b34801561047757600080fd5b5061024b600d5481565b34801561048d57600080fd5b5061024b61049c3660046116f4565b6001600160a01b031660009081526008602052604090205490565b3480156104c357600080fd5b506102e6610a76565b3480156104d857600080fd5b5061024b60035481565b3480156104ee57600080fd5b5061024b60045481565b34801561050457600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610255565b34801561053657600080fd5b506102b66105453660046116f4565b600b6020526000908152604090205460ff1681565b34801561056657600080fd5b506000546001600160a01b0316610512565b34801561058457600080fd5b506040805180820190915260018152600b60fb1b6020820152610289565b3480156105ae57600080fd5b5061024b600c5481565b3480156105c457600080fd5b50601454610512906001600160a01b031681565b3480156105e457600080fd5b506102b66105f33660046117d1565b610aea565b34801561060457600080fd5b5061024b60155481565b34801561061a57600080fd5b506102e661062936600461184c565b610af7565b34801561063a57600080fd5b506016546102b6906301000000900460ff1681565b34801561065b57600080fd5b5061024b61066a36600461172c565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156106a157600080fd5b506102e66106b0366004611834565b610b4e565b3480156106c157600080fd5b506102e66106d03660046116f4565b610b7d565b3480156106e157600080fd5b506102e66106f03660046117a4565b610c67565b34801561070157600080fd5b50601354610512906001600160a01b031681565b34801561072157600080fd5b506016546102b69060ff1681565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061078a9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146107cf5760405162461bcd60e51b81526004016107c6906118ca565b60405180910390fd5b6016805460ff1916911515919091179055565b6000546001600160a01b0316331461080c5760405162461bcd60e51b81526004016107c6906118ca565b47336108fc606461081d85856119a7565b6108279190611987565b6040518115909202916000818181858888f1935050505015801561084f573d6000803e3d6000fd5b505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610901576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546108dc918490610d1b565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b61090c848484610d55565b90505b9392505050565b6006546001600160a01b0316600090815260086020526040812054610963906005546001600160a01b031660009081526008602052604090205461095d9060025490611147565b90611147565b905090565b600080546001600160a01b031633146109935760405162461bcd60e51b81526004016107c6906118ca565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb90604401602060405180830381600087803b1580156109db57600080fd5b505af11580156109ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090f9190611818565b60006107968260001961072f565b6000546001600160a01b03163314610a4b5760405162461bcd60e51b81526004016107c6906118ca565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610aa05760405162461bcd60e51b81526004016107c6906118ca565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061090f338484610d55565b6000546001600160a01b03163314610b215760405162461bcd60e51b81526004016107c6906118ca565b600c839055600d829055600e819055610b46610b3d828461196f565b600c5490610cbc565b600f55505050565b6000546001600160a01b03163314610b785760405162461bcd60e51b81526004016107c6906118ca565b600455565b6000546001600160a01b03163314610ba75760405162461bcd60e51b81526004016107c6906118ca565b6001600160a01b038116610c0c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107c6565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610c915760405162461bcd60e51b81526004016107c6906118ca565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b600080610cc9838561196f565b90508381101561090f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107c6565b60008184841115610d3f5760405162461bcd60e51b81526004016107c69190611877565b506000610d4c84866119c6565b95945050505050565b601654600090610100900460ff1615610d7a57610d73848484611189565b905061090f565b6001600160a01b03841660009081526001602052604090205460ff16158015610dbc57506001600160a01b03831660009081526001602052604090205460ff16155b15610e0a5760165460ff16610e0a5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b60448201526064016107c6565b60035482111580610e3357506001600160a01b0384166000908152600b602052604090205460ff165b610e735760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b60448201526064016107c6565b6014546001600160a01b03163314801590610e965750601654610100900460ff16155b8015610eaa575060165462010000900460ff165b8015610ec757506017543060009081526008602052604090205410155b15610ed457610ed461126f565b601554158015610ef157506014546001600160a01b038481169116145b15610f5d576001600160a01b038416600090815260086020526040902054610f545760405162461bcd60e51b81526020600482015260166024820152755a65726f2062616c616e63652076696f6c617465642160501b60448201526064016107c6565b610f5d43601555565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260089091529190912054610faf918490610d1b565b6001600160a01b038086166000908152600860209081526040808320949094559186168152600b909152205460ff16158015610ff45750600754600160a01b900460ff165b15611064576004546001600160a01b03841660009081526008602052604090205461101f9084610cbc565b11156110645760405162461bcd60e51b81526020600482015260146024820152734d61782077616c6c65742076696f6c617465642160601b60448201526064016107c6565b6001600160a01b0384166000908152600a602052604081205460ff161580156110a657506001600160a01b0384166000908152600a602052604090205460ff16155b6110b057826110ba565b6110ba858461155a565b6001600160a01b0385166000908152600860205260409020549091506110e09082610cbc565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111349085815260200190565b60405180910390a3506001949350505050565b600061090f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d1b565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526008909152918220546111da918490610d1b565b6001600160a01b0380861660009081526008602052604080822093909355908516815220546112099083610cbc565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061125d9086815260200190565b60405180910390a35060019392505050565b6016805461ff00191661010017905530600090815260086020908152604080832054815160028082526060820184529194939092908301908036833701905050905030816000815181106112d357634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561132757600080fd5b505afa15801561133b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135f9190611710565b8160018151811061138057634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b815291169063791ac947906113c69085906000908690309042906004016118ff565b600060405180830381600087803b1580156113e057600080fd5b505af11580156113f4573d6000803e3d6000fd5b50479250600091506114099050826003611605565b90506000611418836003611605565b90506000611427846003611605565b6011546040519192506000916001600160a01b039091169061753090869084818181858888f193505050503d806000811461147e576040519150601f19603f3d011682016040523d82523d6000602084013e611483565b606091505b5050601054604051600093508392506001600160a01b039091169061753090869084818181858888f193505050503d80600081146114dd576040519150601f19603f3d011682016040523d82523d6000602084013e6114e2565b606091505b5050601254604051600093508392506001600160a01b039091169061753090869084818181858888f193505050503d806000811461153c576040519150601f19603f3d011682016040523d82523d6000602084013e611541565b606091505b50506016805461ff001916905550505050505050505050565b60008061157d6064611577600f548661164790919063ffffffff16565b90611605565b3060009081526008602052604090205490915061159a9082610cbc565b30600081815260086020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115eb9085815260200190565b60405180910390a36115fd8382611147565b949350505050565b600061090f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116c6565b60008261165657506000610796565b600061166283856119a7565b90508261166f8583611987565b1461090f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107c6565b600081836116e75760405162461bcd60e51b81526004016107c69190611877565b506000610d4c8486611987565b600060208284031215611705578081fd5b813561090f816119f3565b600060208284031215611721578081fd5b815161090f816119f3565b6000806040838503121561173e578081fd5b8235611749816119f3565b91506020830135611759816119f3565b809150509250929050565b600080600060608486031215611778578081fd5b8335611783816119f3565b92506020840135611793816119f3565b929592945050506040919091013590565b600080604083850312156117b6578182fd5b82356117c1816119f3565b9150602083013561175981611a0b565b600080604083850312156117e3578182fd5b82356117ee816119f3565b946020939093013593505050565b60006020828403121561180d578081fd5b813561090f81611a0b565b600060208284031215611829578081fd5b815161090f81611a0b565b600060208284031215611845578081fd5b5035919050565b600080600060608486031215611860578283fd5b505081359360208301359350604090920135919050565b6000602080835283518082850152825b818110156118a357858101830151858201604001528201611887565b818111156118b45783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b8181101561194e5784516001600160a01b031683529383019391830191600101611929565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611982576119826119dd565b500190565b6000826119a257634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156119c1576119c16119dd565b500290565b6000828210156119d8576119d86119dd565b500390565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0381168114611a0857600080fd5b50565b8015158114611a0857600080fdfea2646970667358221220b39bdf7d400dbc1da45eec8a9efdd7a53bca6641d794549e652008a7c9bfcded64736f6c63430008040033

Deployed Bytecode Sourcemap

5093:9821:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7098:54;;;;;;;;;;;;;;;;;;;7982:25:1;;;7970:2;7955:18;7098:54:0;;;;;;;;8564:78;;;;;;;;;;-1:-1:-1;8635:5:0;;;;;;;;;;;;-1:-1:-1;;;8635:5:0;;;;8564:78;;;;;;;:::i;9420:216::-;;;;;;;;;;-1:-1:-1;9420:216:0;;;;;:::i;:::-;;:::i;:::-;;;4047:14:1;;4040:22;4022:41;;4010:2;3995:18;9420:216:0;3977:92:1;13849:98:0;;;;;;;;;;-1:-1:-1;13849:98:0;;;;;:::i;:::-;;:::i;:::-;;8826:86;;;;;;;;;;-1:-1:-1;8898:12:0;;8826:86;;14702:207;;;;;;;;;;-1:-1:-1;14702:207:0;;;;;:::i;:::-;;:::i;6632:23::-;;;;;;;;;;;;;;;;10627:370;;;;;;;;;;-1:-1:-1;10627:370:0;;;;;:::i;:::-;;:::i;9256:156::-;;;;;;;;;;;;;:::i;6521:29::-;;;;;;;;;;;;;;;;8740:78;;;;;;;;;;-1:-1:-1;8740:78:0;;5197:1;9148:36:1;;9136:2;9121:18;8740:78:0;9103:87:1;14520:174:0;;;;;;;;;;-1:-1:-1;14520:174:0;;;;;:::i;:::-;;:::i;6168:43::-;;;;;;;;;;-1:-1:-1;6168:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5964:33;;;;;;;;;;-1:-1:-1;5964:33:0;;;;-1:-1:-1;;;5964:33:0;;;;;;6997:40;;;;;;;;;;-1:-1:-1;6997:40:0;;;;;;;;;;;9644:122;;;;;;;;;;-1:-1:-1;9644:122:0;;;;;:::i;:::-;;:::i;13955:119::-;;;;;;;;;;-1:-1:-1;13955:119:0;;;;;:::i;:::-;;:::i;6401:31::-;;;;;;;;;;;;;;;;9006:103;;;;;;;;;;-1:-1:-1;9006:103:0;;;;;:::i;:::-;-1:-1:-1;;;;;9089:18:0;9072:7;9089:18;;;:9;:18;;;;;;;9006:103;4686:148;;;;;;;;;;;;;:::i;5281:53::-;;;;;;;;;;;;;;;;5408:52;;;;;;;;;;;;;;;;8920:78;;;;;;;;;;-1:-1:-1;8972:7:0;4535:6;-1:-1:-1;;;;;4535:6:0;8920:78;;;-1:-1:-1;;;;;3559:32:1;;;3541:51;;3529:2;3514:18;8920:78:0;3496:102:1;6218:47:0;;;;;;;;;;-1:-1:-1;6218:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4470:79;;;;;;;;;;-1:-1:-1;4508:7:0;4535:6;-1:-1:-1;;;;;4535:6:0;4470:79;;8650:82;;;;;;;;;;-1:-1:-1;8723:7:0;;;;;;;;;;;;-1:-1:-1;;;8723:7:0;;;;8650:82;;6274:33;;;;;;;;;;;;;;;;6832:19;;;;;;;;;;-1:-1:-1;6832:19:0;;;;-1:-1:-1;;;;;6832:19:0;;;10125:156;;;;;;;;;;-1:-1:-1;10125:156:0;;;;;:::i;:::-;;:::i;6860:25::-;;;;;;;;;;;;;;;;14217:295;;;;;;;;;;-1:-1:-1;14217:295:0;;;;;:::i;:::-;;:::i;7044:45::-;;;;;;;;;;-1:-1:-1;7044:45:0;;;;;;;;;;;9117:131;;;;;;;;;;-1:-1:-1;9117:131:0;;;;;:::i;:::-;-1:-1:-1;;;;;9218:19:0;;;9201:7;9218:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;9117:131;13740:101;;;;;;;;;;-1:-1:-1;13740:101:0;;;;;:::i;:::-;;:::i;4842:244::-;;;;;;;;;;-1:-1:-1;4842:244:0;;;;;:::i;:::-;;:::i;14082:127::-;;;;;;;;;;-1:-1:-1;14082:127:0;;;;;:::i;:::-;;:::i;6794:31::-;;;;;;;;;;-1:-1:-1;6794:31:0;;;;-1:-1:-1;;;;;6794:31:0;;;6892;;;;;;;;;;-1:-1:-1;6892:31:0;;;;;;;;9420:216;9524:10;9495:4;9512:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;9512:32:0;;;;;;;;;;:41;;;9569:37;9495:4;;9512:32;;9569:37;;;;9547:6;7982:25:1;;7970:2;7955:18;;7937:76;9569:37:0;;;;;;;;-1:-1:-1;9624:4:0;9420:216;;;;;:::o;13849:98::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;;;;;;;;;13916:11:::1;:23:::0;;-1:-1:-1;;13916:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13849:98::o;14702:207::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;14805:21:::1;14845:10;14837:64;14897:3;14866:28;14878:16:::0;14805:21;14866:28:::1;:::i;:::-;:34;;;;:::i;:::-;14837:64;::::0;;::::1;::::0;;::::1;::::0;::::1;::::0;;;;;;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;4667:1;14702:207:::0;:::o;10627:370::-;-1:-1:-1;;;;;10748:19:0;;10727:4;10748:19;;;:11;:19;;;;;;;;10768:10;10748:31;;;;;;;;-1:-1:-1;;10748:52:0;10744:188;;10851:69;;;;;;;;;;;-1:-1:-1;;;10851:69:0;;;;;;;;-1:-1:-1;;;;;10851:19:0;;-1:-1:-1;10851:19:0;;;:11;:19;;;;;10871:10;10851:31;;;;;;;;;;:69;;10887:6;;10851:35;:69::i;:::-;-1:-1:-1;;;;;10817:19:0;;;;;;:11;:19;;;;;;;;10837:10;10817:31;;;;;;;:103;10744:188;10949:40;10963:6;10971:9;10982:6;10949:13;:40::i;:::-;10942:47;;10627:370;;;;;;:::o;9256:156::-;9391:11;;-1:-1:-1;;;;;9391:11:0;9309:7;9089:18;;;:9;:18;;;;;;9336:68;;9363:11;;-1:-1:-1;;;;;9363:11:0;9072:7;9089:18;;;:9;:18;;;;;;9336:40;;:12;;;:16;:40::i;:::-;:44;;:68::i;:::-;9329:75;;9256:156;:::o;14520:174::-;14605:12;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;14637:49:::1;::::0;-1:-1:-1;;;14637:49:0;;14667:10:::1;14637:49;::::0;::::1;3777:51:1::0;3844:18;;;3837:34;;;-1:-1:-1;;;;;14637:29:0;::::1;::::0;::::1;::::0;3750:18:1;;14637:49:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;9644:122::-:0;9699:4;9723:35;9731:7;-1:-1:-1;;9723:7:0;:35::i;13955:119::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14038:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;14038:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13955:119::o;4686:148::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;4793:1:::1;4777:6:::0;;4756:40:::1;::::0;-1:-1:-1;;;;;4777:6:0;;::::1;::::0;4756:40:::1;::::0;4793:1;;4756:40:::1;4824:1;4807:19:::0;;-1:-1:-1;;;;;;4807:19:0::1;::::0;;4686:148::o;10125:156::-;10205:4;10229:44;10243:10;10255:9;10266:6;10229:13;:44::i;14217:295::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;14331:14:::1;:26:::0;;;14368:12:::1;:30:::0;;;14409:10:::1;:26:::0;;;14459:45:::1;14478:25;14422:13:::0;14383:15;14478:25:::1;:::i;:::-;14459:14;::::0;;:18:::1;:45::i;:::-;14448:8;:56:::0;-1:-1:-1;;;14217:295:0:o;13740:101::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;13812:10:::1;:21:::0;13740:101::o;4842:244::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4931:22:0;::::1;4923:73;;;::::0;-1:-1:-1;;;4923:73:0;;5463:2:1;4923:73:0::1;::::0;::::1;5445:21:1::0;5502:2;5482:18;;;5475:30;5541:34;5521:18;;;5514:62;-1:-1:-1;;;5592:18:1;;;5585:36;5638:19;;4923:73:0::1;5435:228:1::0;4923:73:0::1;5033:6;::::0;;5012:38:::1;::::0;-1:-1:-1;;;;;5012:38:0;;::::1;::::0;5033:6;::::1;::::0;5012:38:::1;::::0;::::1;5061:6;:17:::0;;-1:-1:-1;;;;;;5061:17:0::1;-1:-1:-1::0;;;;;5061:17:0;;;::::1;::::0;;;::::1;::::0;;4842:244::o;14082:127::-;4597:6;;-1:-1:-1;;;;;4597:6:0;3906:10;4597:22;4589:67;;;;-1:-1:-1;;;4589:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14169:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;14169:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14082:127::o;2682:179::-;2740:7;;2772:5;2776:1;2772;:5;:::i;:::-;2760:17;;2801:1;2796;:6;;2788:46;;;;-1:-1:-1;;;2788:46:0;;5870:2:1;2788:46:0;;;5852:21:1;5909:2;5889:18;;;5882:30;5948:29;5928:18;;;5921:57;5995:18;;2788:46:0;5842:177:1;3013:190:0;3099:7;3135:12;3127:6;;;;3119:29;;;;-1:-1:-1;;;3119:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3159:9:0;3171:5;3175:1;3171;:5;:::i;:::-;3159:17;3013:190;-1:-1:-1;;;;;3013:190:0:o;11005:1273::-;11118:16;;11097:4;;11118:16;;;;;11114:73;;;11144:41;11159:6;11167:9;11178:6;11144:14;:41::i;:::-;11137:48;;;;11114:73;-1:-1:-1;;;;;11201:22:0;;;;;;:14;:22;;;;;;;;11200:23;:53;;;;-1:-1:-1;;;;;;11228:25:0;;;;;;:14;:25;;;;;;;;11227:26;11200:53;11197:128;;;11277:11;;;;11269:44;;;;-1:-1:-1;;;11269:44:0;;6577:2:1;11269:44:0;;;6559:21:1;6616:2;6596:18;;;6589:30;-1:-1:-1;;;6635:18:1;;;6628:50;6695:18;;11269:44:0;6549:170:1;11269:44:0;11355:12;;11345:6;:22;;:49;;;-1:-1:-1;;;;;;11371:23:0;;;;;;:15;:23;;;;;;;;11345:49;11337:79;;;;-1:-1:-1;;;11337:79:0;;5117:2:1;11337:79:0;;;5099:21:1;5156:2;5136:18;;;5129:30;-1:-1:-1;;;5175:18:1;;;5168:47;5232:18;;11337:79:0;5089:167:1;11337:79:0;11445:4;;-1:-1:-1;;;;;11445:4:0;11431:10;:18;;;;:39;;-1:-1:-1;11454:16:0;;;;;;;11453:17;11431:39;:64;;;;-1:-1:-1;11474:21:0;;;;;;;11431:64;:109;;;;-1:-1:-1;11527:13:0;;11517:4;11499:24;;;;:9;:24;;;;;;:41;;11431:109;11427:132;;;11543:14;:12;:14::i;:::-;9841:10;;:15;;;11573:32;;-1:-1:-1;11601:4:0;;-1:-1:-1;;;;;11588:17:0;;;11601:4;;11588:17;11573:32;11569:144;;;-1:-1:-1;;;;;11630:17:0;;11650:1;11630:17;;;:9;:17;;;;;;11622:56;;;;-1:-1:-1;;;11622:56:0;;6226:2:1;11622:56:0;;;6208:21:1;6265:2;6245:18;;;6238:30;-1:-1:-1;;;6284:18:1;;;6277:52;6346:18;;11622:56:0;6198:172:1;11622:56:0;11693:8;9923:12;9910:10;:25;9872:71;11693:8;11777:53;;;;;;;;;;;-1:-1:-1;;;11777:53:0;;;;;;;;-1:-1:-1;;;;;11777:17:0;;-1:-1:-1;11777:17:0;;;:9;:17;;;;;;;;:53;;11799:6;;11777:21;:53::i;:::-;-1:-1:-1;;;;;11757:17:0;;;;;;;:9;:17;;;;;;;;:73;;;;11848:26;;;;;:15;:26;;;;;;;11847:27;:45;;;;-1:-1:-1;11878:14:0;;-1:-1:-1;;;11878:14:0;;;;11847:45;11843:157;;;11953:10;;-1:-1:-1;;;;;11917:20:0;;;;;;:9;:20;;;;;;:32;;11942:6;11917:24;:32::i;:::-;:46;;11909:79;;;;-1:-1:-1;;;11909:79:0;;7689:2:1;11909:79:0;;;7671:21:1;7728:2;7708:18;;;7701:30;-1:-1:-1;;;7747:18:1;;;7740:50;7807:18;;11909:79:0;7661:170:1;11909:79:0;-1:-1:-1;;;;;12035:19:0;;12012;12035;;;:11;:19;;;;;;;;12034:20;:47;;;;-1:-1:-1;;;;;;12059:22:0;;;;;;:11;:22;;;;;;;;12058:23;12034:47;:85;;12113:6;12034:85;;;12084:26;12095:6;12103;12084:10;:26::i;:::-;-1:-1:-1;;;;;12153:20:0;;;;;;:9;:20;;;;;;12012:107;;-1:-1:-1;12153:37:0;;12012:107;12153:24;:37::i;:::-;-1:-1:-1;;;;;12130:20:0;;;;;;;:9;:20;;;;;;;:60;;;;12208:40;;;;;;;;;;12236:11;7982:25:1;;7970:2;7955:18;;7937:76;12208:40:0;;;;;;;;-1:-1:-1;12266:4:0;;11005:1273;-1:-1:-1;;;;11005:1273:0:o;2869:136::-;2927:7;2954:43;2958:1;2961;2954:43;;;;;;;;;;;;;;;;;:3;:43::i;10289:330::-;10419:53;;;;;;;;;;;-1:-1:-1;;;10419:53:0;;;;;;;;-1:-1:-1;;;;;10419:17:0;;10382:4;10419:17;;;:9;:17;;;;;;;:53;;10441:6;;10419:21;:53::i;:::-;-1:-1:-1;;;;;10399:17:0;;;;;;;:9;:17;;;;;;:73;;;;10506:20;;;;;;;:32;;10531:6;10506:24;:32::i;:::-;-1:-1:-1;;;;;10483:20:0;;;;;;;:9;:20;;;;;;;:55;;;;10554:35;;;;;;;;;;10582:6;7982:25:1;;7970:2;7955:18;;7937:76;10554:35:0;;;;;;;;-1:-1:-1;10607:4:0;10289:330;;;;;:::o;12619:1078::-;7324:16;:23;;-1:-1:-1;;7324:23:0;;;;;12716:4:::1;-1:-1:-1::0;12698:24:0;;;:9:::1;:24;::::0;;;;;;;;12759:16;;12773:1:::1;12759:16:::0;;;;;::::1;::::0;;12698:24;;-1:-1:-1;12759:16:0;;;;::::1;::::0;12698:24;12759:16:::1;::::0;::::1;;::::0;-1:-1:-1;12759:16:0::1;12735:40;;12804:4;12786;12791:1;12786:7;;;;;;-1:-1:-1::0;;;12786:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;12786:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12830:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;12830:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;12786:7;;12830:13;;;;;:6;:13;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12820:4;12825:1;12820:7;;;;;;-1:-1:-1::0;;;12820:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;12820:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;12856:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;12856:188:0;;:6;::::1;::::0;:57:::1;::::0;:188:::1;::::0;12928:12;;12856:6:::1;::::0;12971:4;;12998::::1;::::0;13018:15:::1;::::0;12856:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;13077:21:0::1;::::0;-1:-1:-1;13057:17:0::1;::::0;-1:-1:-1;13139:16:0::1;::::0;-1:-1:-1;13077:21:0;13153:1:::1;13139:13;:16::i;:::-;13111:44:::0;-1:-1:-1;13166:27:0::1;13196:16;:9:::0;13210:1:::1;13196:13;:16::i;:::-;13166:46:::0;-1:-1:-1;13223:23:0::1;13249:16;:9:::0;13263:1:::1;13249:13;:16::i;:::-;13316:15;::::0;13308:73:::1;::::0;13223:42;;-1:-1:-1;13287:16:0::1;::::0;-1:-1:-1;;;;;13316:15:0;;::::1;::::0;13371:5:::1;::::0;13346:17;;13287:16;13308:73;13287:16;13308:73;13346:17;13316:15;13371:5;13308:73:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;13454:17:0::1;::::0;13446:77:::1;::::0;13406:5:::1;::::0;-1:-1:-1;13406:5:0;;-1:-1:-1;;;;;;13454:17:0;;::::1;::::0;13513:5:::1;::::0;13486:19;;13406:5;13446:77;13406:5;13446:77;13486:19;13454:17;13513:5;13446:77:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;13596:13:0::1;::::0;13588:69:::1;::::0;13548:5:::1;::::0;-1:-1:-1;13548:5:0;;-1:-1:-1;;;;;;13596:13:0;;::::1;::::0;13647:5:::1;::::0;13624:15;;13548:5;13588:69;13548:5;13588:69;13624:15;13596:13;13647:5;13588:69:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;7370:16:0;:24;;-1:-1:-1;;7370:24:0;;;-1:-1:-1;;;;;;;;;;12619:1078:0:o;12286:325::-;12356:7;12376:17;12396:29;12421:3;12396:20;12407:8;;12396:6;:10;;:20;;;;:::i;:::-;:24;;:29::i;:::-;12483:4;12465:24;;;;:9;:24;;;;;;12376:49;;-1:-1:-1;12465:39:0;;12376:49;12465:28;:39::i;:::-;12456:4;12438:24;;;;:9;:24;;;;;;;:66;;;;12520:42;;-1:-1:-1;;;;;12520:42:0;;;;;;;12552:9;7982:25:1;;7970:2;7955:18;;7937:76;12520:42:0;;;;;;;;12582:21;:6;12593:9;12582:10;:21::i;:::-;12575:28;12286:325;-1:-1:-1;;;;12286:325:0:o;3441:132::-;3499:7;3526:39;3530:1;3533;3526:39;;;;;;;;;;;;;;;;;:3;:39::i;3211:222::-;3269:7;3293:6;3289:23;;-1:-1:-1;3309:1:0;3302:8;;3289:23;3322:9;3334:5;3338:1;3334;:5;:::i;:::-;3322:17;-1:-1:-1;3367:1:0;3358:5;3362:1;3322:17;3358:5;:::i;:::-;:10;3350:56;;;;-1:-1:-1;;;3350:56:0;;6926:2:1;3350:56:0;;;6908:21:1;6965:2;6945:18;;;6938:30;7004:34;6984:18;;;6977:62;-1:-1:-1;;;7055:18:1;;;7048:31;7096:19;;3350:56:0;6898:223:1;3581:189:0;3667:7;3702:12;3695:5;3687:28;;;;-1:-1:-1;;;3687:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3726:9:0;3738:5;3742:1;3738;:5;:::i;14:257:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:2;;;147:6;139;132:22;94:2;191:9;178:23;210:31;235:5;210:31;:::i;276:261::-;346:6;399:2;387:9;378:7;374:23;370:32;367:2;;;420:6;412;405:22;367:2;457:9;451:16;476:31;501:5;476:31;:::i;542:398::-;610:6;618;671:2;659:9;650:7;646:23;642:32;639:2;;;692:6;684;677:22;639:2;736:9;723:23;755:31;780:5;755:31;:::i;:::-;805:5;-1:-1:-1;862:2:1;847:18;;834:32;875:33;834:32;875:33;:::i;:::-;927:7;917:17;;;629:311;;;;;:::o;945:466::-;1022:6;1030;1038;1091:2;1079:9;1070:7;1066:23;1062:32;1059:2;;;1112:6;1104;1097:22;1059:2;1156:9;1143:23;1175:31;1200:5;1175:31;:::i;:::-;1225:5;-1:-1:-1;1282:2:1;1267:18;;1254:32;1295:33;1254:32;1295:33;:::i;:::-;1049:362;;1347:7;;-1:-1:-1;;;1401:2:1;1386:18;;;;1373:32;;1049:362::o;1416:392::-;1481:6;1489;1542:2;1530:9;1521:7;1517:23;1513:32;1510:2;;;1563:6;1555;1548:22;1510:2;1607:9;1594:23;1626:31;1651:5;1626:31;:::i;:::-;1676:5;-1:-1:-1;1733:2:1;1718:18;;1705:32;1746:30;1705:32;1746:30;:::i;1813:325::-;1881:6;1889;1942:2;1930:9;1921:7;1917:23;1913:32;1910:2;;;1963:6;1955;1948:22;1910:2;2007:9;1994:23;2026:31;2051:5;2026:31;:::i;:::-;2076:5;2128:2;2113:18;;;;2100:32;;-1:-1:-1;;;1900:238:1:o;2143:251::-;2199:6;2252:2;2240:9;2231:7;2227:23;2223:32;2220:2;;;2273:6;2265;2258:22;2220:2;2317:9;2304:23;2336:28;2358:5;2336:28;:::i;2399:255::-;2466:6;2519:2;2507:9;2498:7;2494:23;2490:32;2487:2;;;2540:6;2532;2525:22;2487:2;2577:9;2571:16;2596:28;2618:5;2596:28;:::i;2659:190::-;2718:6;2771:2;2759:9;2750:7;2746:23;2742:32;2739:2;;;2792:6;2784;2777:22;2739:2;-1:-1:-1;2820:23:1;;2729:120;-1:-1:-1;2729:120:1:o;2854:326::-;2931:6;2939;2947;3000:2;2988:9;2979:7;2975:23;2971:32;2968:2;;;3021:6;3013;3006:22;2968:2;-1:-1:-1;;3049:23:1;;;3119:2;3104:18;;3091:32;;-1:-1:-1;3170:2:1;3155:18;;;3142:32;;2958:222;-1:-1:-1;2958:222:1:o;4307:603::-;4419:4;4448:2;4477;4466:9;4459:21;4509:6;4503:13;4552:6;4547:2;4536:9;4532:18;4525:34;4577:4;4590:140;4604:6;4601:1;4598:13;4590:140;;;4699:14;;;4695:23;;4689:30;4665:17;;;4684:2;4661:26;4654:66;4619:10;;4590:140;;;4748:6;4745:1;4742:13;4739:2;;;4818:4;4813:2;4804:6;4793:9;4789:22;4785:31;4778:45;4739:2;-1:-1:-1;4894:2:1;4873:15;-1:-1:-1;;4869:29:1;4854:45;;;;4901:2;4850:54;;4428:482;-1:-1:-1;;;4428:482:1:o;7126:356::-;7328:2;7310:21;;;7347:18;;;7340:30;7406:34;7401:2;7386:18;;7379:62;7473:2;7458:18;;7300:182::o;8018:983::-;8280:4;8328:3;8317:9;8313:19;8359:6;8348:9;8341:25;8385:2;8423:6;8418:2;8407:9;8403:18;8396:34;8466:3;8461:2;8450:9;8446:18;8439:31;8490:6;8525;8519:13;8556:6;8548;8541:22;8594:3;8583:9;8579:19;8572:26;;8633:2;8625:6;8621:15;8607:29;;8654:4;8667:195;8681:6;8678:1;8675:13;8667:195;;;8746:13;;-1:-1:-1;;;;;8742:39:1;8730:52;;8837:15;;;;8802:12;;;;8778:1;8696:9;8667:195;;;-1:-1:-1;;;;;;;8918:32:1;;;;8913:2;8898:18;;8891:60;-1:-1:-1;;;8982:3:1;8967:19;8960:35;8879:3;8289:712;-1:-1:-1;;;8289:712:1:o;9195:128::-;9235:3;9266:1;9262:6;9259:1;9256:13;9253:2;;;9272:18;;:::i;:::-;-1:-1:-1;9308:9:1;;9243:80::o;9328:217::-;9368:1;9394;9384:2;;-1:-1:-1;;;9419:31:1;;9473:4;9470:1;9463:15;9501:4;9426:1;9491:15;9384:2;-1:-1:-1;9530:9:1;;9374:171::o;9550:168::-;9590:7;9656:1;9652;9648:6;9644:14;9641:1;9638:21;9633:1;9626:9;9619:17;9615:45;9612:2;;;9663:18;;:::i;:::-;-1:-1:-1;9703:9:1;;9602:116::o;9723:125::-;9763:4;9791:1;9788;9785:8;9782:2;;;9796:18;;:::i;:::-;-1:-1:-1;9833:9:1;;9772:76::o;9853:127::-;9914:10;9909:3;9905:20;9902:1;9895:31;9945:4;9942:1;9935:15;9969:4;9966:1;9959:15;9985:131;-1:-1:-1;;;;;10060:31:1;;10050:42;;10040:2;;10106:1;10103;10096:12;10040:2;10030:86;:::o;10121:118::-;10207:5;10200:13;10193:21;10186:5;10183:32;10173:2;;10229:1;10226;10219:12

Swarm Source

ipfs://b39bdf7d400dbc1da45eec8a9efdd7a53bca6641d794549e652008a7c9bfcded

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.