ETH Price: $3,253.79 (-3.66%)

Contract

0x8cac176e44c71cC8df9f8ae002FaC654D52DD16b
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer181444732023-09-15 22:09:11493 days ago1694815751IN
0x8cac176e...4D52DD16b
0 ETH0.0004104411.2897289
Transfer181444692023-09-15 22:08:23493 days ago1694815703IN
0x8cac176e...4D52DD16b
0 ETH0.000426611.73422576
Approve169820542023-04-05 10:41:59656 days ago1680691319IN
0x8cac176e...4D52DD16b
0 ETH0.0012533526.92727909
Approve168672332023-03-20 6:55:11673 days ago1679295311IN
0x8cac176e...4D52DD16b
0 ETH0.0007143315.32718372
Approve168672332023-03-20 6:55:11673 days ago1679295311IN
0x8cac176e...4D52DD16b
0 ETH0.0007143315.32718372
Approve168594362023-03-19 4:37:35674 days ago1679200655IN
0x8cac176e...4D52DD16b
0 ETH0.0006189613.28073283
Approve168590072023-03-19 3:10:59674 days ago1679195459IN
0x8cac176e...4D52DD16b
0 ETH0.0006566914.10861473
Approve168589972023-03-19 3:08:59674 days ago1679195339IN
0x8cac176e...4D52DD16b
0 ETH0.0006383213.71379743
Approve168589932023-03-19 3:08:11674 days ago1679195291IN
0x8cac176e...4D52DD16b
0 ETH0.0006422713.79866566
Approve168589852023-03-19 3:06:35674 days ago1679195195IN
0x8cac176e...4D52DD16b
0 ETH0.0006453713.86525127
Approve168589712023-03-19 3:03:47674 days ago1679195027IN
0x8cac176e...4D52DD16b
0 ETH0.0006248513.42456002
Approve168589662023-03-19 3:02:47674 days ago1679194967IN
0x8cac176e...4D52DD16b
0 ETH0.0006286113.50521531
Approve168588022023-03-19 2:29:11674 days ago1679192951IN
0x8cac176e...4D52DD16b
0 ETH0.0005652512.14403504
Approve168587942023-03-19 2:27:35674 days ago1679192855IN
0x8cac176e...4D52DD16b
0 ETH0.000567412.19014332
Approve168585762023-03-19 1:42:47674 days ago1679190167IN
0x8cac176e...4D52DD16b
0 ETH0.0006321513.56387756
Approve168583502023-03-19 0:57:11674 days ago1679187431IN
0x8cac176e...4D52DD16b
0 ETH0.0006577914.11387735
Approve168580342023-03-18 23:53:35674 days ago1679183615IN
0x8cac176e...4D52DD16b
0 ETH0.0007065715.16061103
Approve168577892023-03-18 23:03:47674 days ago1679180627IN
0x8cac176e...4D52DD16b
0 ETH0.0008262217.75061889
Approve168571112023-03-18 20:47:11674 days ago1679172431IN
0x8cac176e...4D52DD16b
0 ETH0.000838918
Approve168570692023-03-18 20:38:47674 days ago1679171927IN
0x8cac176e...4D52DD16b
0 ETH0.0006729814.45858258
Approve168570372023-03-18 20:32:23674 days ago1679171543IN
0x8cac176e...4D52DD16b
0 ETH0.0007517716.15127468
Approve168569832023-03-18 20:21:11674 days ago1679170871IN
0x8cac176e...4D52DD16b
0 ETH0.0007338515.74588184
Approve168569542023-03-18 20:15:23674 days ago1679170523IN
0x8cac176e...4D52DD16b
0 ETH0.0006588714.15532809
Approve168569002023-03-18 20:04:35674 days ago1679169875IN
0x8cac176e...4D52DD16b
0 ETH0.0006699614.39354783
Approve168568542023-03-18 19:55:23674 days ago1679169323IN
0x8cac176e...4D52DD16b
0 ETH0.000704715.13999985
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ERC20

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-03-18
*/

//SPDX-License-Identifier: Unlicensed

pragma solidity >=0.7.0 <0.9.0;

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

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

library Address {

    function isContract(address account) internal view returns (bool) {
        return account.code.length > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, "Address: low-level call failed");
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }

    function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }

    function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function verifyCallResultFromTarget(address target, bool success, bytes memory returndata, string memory errorMessage) internal view returns (bytes memory) {
        if (success) {
            if (returndata.length == 0) {

                require(isContract(target), "Address: call to non-contract");
            }
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            _revert(returndata, errorMessage);
        }
    }

    function _revert(bytes memory returndata, string memory errorMessage) private pure {
        if (returndata.length > 0) {
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert(errorMessage);
        }
    }
}

library SafeMath {

    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

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

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

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

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    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);
}

contract ERC20 is Context, IERC20 {
    using Address for address payable;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => uint256) public _balances;
    mapping(address => bool) feeExempt;
    mapping(address => bool) lpHolder;
    mapping(address => bool) lpPairs;
    mapping(address => bool) maxWalletExempt;

    uint256 _totalSupply;
    uint256 tokensToSwap;
    uint256 lastSwap;
    uint256 maxTxAmount;
    uint256 maxWalletAmount;
    uint256 feeAmount;
    uint16 marketingFee;
    uint16 public sellMarketingFee;
    uint16 public buyMarketingFee;
    uint16 public transferMarketingFee;
    uint8 swapDelay;
    uint feeDenominator = 1000; // 10 = 1%

    bool swapEnabled;
    bool feeEnabled;
    bool tradingOpen;
    bool txLimits;

    address public ownerWallet;
    address public marketingWallet;
    address public pair;

    string private _name;
    string private _symbol;

    IRouter public router;

    modifier onlyOwner() {
        require(isOwner(msg.sender), "You are not the owner");
        _;
    }

    constructor(string memory name_, string memory symbol_, uint256 startingSupply, address _marketingWallet) {
        _name = name_;
        _symbol = symbol_;
        _mint(_msgSender(), startingSupply * (10**9));

        ownerWallet = _msgSender();
        setMarketingWallet(_marketingWallet);
        router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        pair = IFactory(router.factory()).createPair(router.WETH(), address(this));
        lpHolder[_msgSender()] = true;
        lpPairs[pair] = true;

        _approve(address(this), address(router), type(uint256).max);
        _approve(_msgSender(), address(router), type(uint256).max);

        maxWalletExempt[_msgSender()] = true;
        maxWalletExempt[address(this)] = true;
        maxWalletExempt[pair] = true;

        feeExempt[address(this)] = true;
        feeExempt[_msgSender()] = true;


        maxTxAmount = (_totalSupply * 1) / (100);
        maxWalletAmount = (_totalSupply * 2) / 100;

        txLimits = true;
        setSwapBackSettings(true, 5, 10);
        feeEnabled = true;
    }

    receive() external payable {}

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

    function decimals() public pure override returns (uint8) {
        return 9;
    }

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

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

    function transfer(address to, uint256 amount) public override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, 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) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }
     
    function renounceOwnership(bool keepLimits) external onlyOwner {
        emit OwnershipRenounced();
        setExemptions(ownerWallet, false, false, false);
        limitsInEffect(keepLimits);
        ownerWallet = address(0);
    }

    function transferOwnership(address newOwner) external onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address, use renounceOwnership Function");
        emit OwnershipTransferred(ownerWallet, newOwner);

        if(balanceOf(ownerWallet) > 0) _transfer(ownerWallet, newOwner, balanceOf(ownerWallet));
        setExemptions(ownerWallet, false, false, false);
        setExemptions(newOwner, true, true, true);

        ownerWallet = newOwner;
    }

    function clearStuckBalance(uint256 percent) external onlyOwner {
        require(percent <= 100);
        uint256 amountEth = address(this).balance;
        payable(marketingWallet).sendValue((amountEth* percent) / 100);
    }

    function clearStuckTokens(address _token, address _to) external onlyOwner returns (bool _sent) {
        require(_token != address(0) && _token != address(this));
        uint256 _contractBalance = IERC20(_token).balanceOf(address(this));
        _sent = IERC20(_token).transfer(_to, _contractBalance);
    }

    function setTransactionLimits(uint256 percent, uint256 divisor, bool maxTx) external onlyOwner() {
        if(maxTx){
            require(percent >= 1 && divisor <= 1000, "Max Transaction must be set above .1%");
            maxTxAmount = (_totalSupply * percent) / (divisor);
        } else {
            require(percent >= 1 && divisor <= 100, "Max Wallet must be set above 1%");
            maxWalletAmount = (_totalSupply * percent) / divisor;
        }
    }

    function setExemptions(address holder, bool lpHolders, bool _feeExempt, bool _maxWalletExempt) public onlyOwner(){
        maxWalletExempt[holder] = _maxWalletExempt;
        feeExempt[holder] = _feeExempt;
        lpHolder[holder] = lpHolders;
    }

    function limitsInEffect(bool limit) public onlyOwner() {
        txLimits = limit;
    }

    function setPair(address pairing, bool lpPair) external onlyOwner {
        lpPairs[pairing] = lpPair;
    }

    function setBuyFee(uint16 fee) external onlyOwner {
        require(fee <= 100);
        buyMarketingFee = fee;
    }
    
    function setTransferFee(uint16 fee) external onlyOwner {
        require(fee <= 100);
        transferMarketingFee = fee;
    }

    function setSellFee(uint16 fee) external onlyOwner {
        require(fee <= 100);
        sellMarketingFee = fee;
    } 
    function setFeeEnabled(bool enabled) external onlyOwner {
        feeEnabled = enabled;
    }

    function setMarketingWallet(address _marketingWallet) public onlyOwner {
        marketingWallet = _marketingWallet;
    }

    function setSwapBackSettings(bool _enabled, uint8 interval, uint256 _amount) public onlyOwner{
        swapEnabled = _enabled;
        swapDelay = interval;
        tokensToSwap = (_totalSupply * (_amount)) / (10000);
    }

    function limits(address from, address to) private view returns (bool) {
        return !isOwner(from)
            && !isOwner(to)
            && tx.origin != ownerWallet
            && !lpHolder[from]
            && !lpHolder[to]
            && to != address(0xdead)
            && from != address(this);
    }

    function massAirDropTokens(address[] memory addresses, uint256[] memory amounts) external {
        require(addresses.length == amounts.length, "Lengths do not match.");
        for (uint8 i = 0; i < addresses.length; i++) {
            require(balanceOf(_msgSender()) >= amounts[i]*10**9);
            _transfer(_msgSender(), addresses[i], amounts[i]*10**9);
        }
    }

    function transferFrom(address from, address to, uint256 amount) public override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

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

        return true;
    }

    function _transfer(address from, address to, uint256 amount) internal {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(_balances[from] >= amount, "ERC20: transfer amount exceeds balance");
        if(!tradingOpen) {
            require(isOwner(from));                
            if(to == pair) {
                tradingOpen = true;
                emit Launched();
            }
        }
        _beforeTokenTransfer(from, to, amount);

        uint256 amountReceived = feeEnabled && !feeExempt[from] ? takeFee(from, to, amount) : amount;

        uint256 fromBalance = _balances[from];
        unchecked {
            _balances[from] = fromBalance - amountReceived;
            _balances[to] += amountReceived;
        }
        emit Transfer(from, to, amountReceived);

        if(!lpPairs[_msgSender()] 
        && swapEnabled 
        && block.timestamp >= lastSwap + swapDelay 
        && _balances[address(this)] >= tokensToSwap) {
            lastSwap = block.timestamp;

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

            router.swapExactTokensForETHSupportingFeeOnTransferTokens(
                tokensToSwap,
                0,
                path,
                address(this),
                block.timestamp
            );
    
            uint256 balance = address(this).balance;
            payable(marketingWallet).sendValue(balance);
        }
    }

    function takeFee(address sender, address receiver, uint256 amount) internal returns (uint256) {
        if (feeExempt[receiver]) {
            return amount;
        }
        if(lpPairs[receiver]) {   
            marketingFee = sellMarketingFee;         
        } else if(lpPairs[sender]){
            marketingFee = buyMarketingFee;    
        } else {
            marketingFee = transferMarketingFee;
        }

        feeAmount = (amount * marketingFee) / feeDenominator;
        uint256 senderBalance = _balances[sender];
        unchecked {
            _balances[sender] = senderBalance - feeAmount;
            _balances[address(this)] += feeAmount;
        }

        emit Transfer(sender, address(this), feeAmount);

        return amount - feeAmount;
    }

    function _mint(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

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

    function _burn(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);
        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);
    }

    function burn(uint256 amount) external {
        _burn(_msgSender(), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _spendAllowance(address owner, address spender, uint256 amount) internal {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(address from, address to, uint256 amount) internal view {
        if(limits(from, to) && tradingOpen && txLimits){
            if(!maxWalletExempt[to]){
                require(amount <= maxTxAmount && balanceOf(to) + amount <= maxWalletAmount);
            } else if(lpPairs[to]){
                require(amount <= maxTxAmount);
            }
        }
    }

    function getTransactionLimits() external view returns(uint maxTransaction, uint maxWallet, bool transactionLimits){
        if(txLimits){
            maxTransaction = maxTxAmount / 10**9;
            maxWallet = maxWalletAmount / 10**9;
            transactionLimits = txLimits;
        } else {
            maxTransaction = totalSupply();
            maxWallet = totalSupply();
            transactionLimits = false;
        }
    }

    function isOwner(address account) public view returns (bool) {
        return account == ownerWallet;
    }

    event Launched();
    event OwnershipRenounced();
    event OwnershipTransferred(address oldOwner, address newOwner);
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint256","name":"startingSupply","type":"uint256"},{"internalType":"address","name":"_marketingWallet","type":"address"}],"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":[],"name":"Launched","type":"event"},{"anonymous":false,"inputs":[],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":false,"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":"_balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyMarketingFee","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"clearStuckTokens","outputs":[{"internalType":"bool","name":"_sent","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getTransactionLimits","outputs":[{"internalType":"uint256","name":"maxTransaction","type":"uint256"},{"internalType":"uint256","name":"maxWallet","type":"uint256"},{"internalType":"bool","name":"transactionLimits","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"limit","type":"bool"}],"name":"limitsInEffect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"massAirDropTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"keepLimits","type":"bool"}],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellMarketingFee","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"fee","type":"uint16"}],"name":"setBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"lpHolders","type":"bool"},{"internalType":"bool","name":"_feeExempt","type":"bool"},{"internalType":"bool","name":"_maxWalletExempt","type":"bool"}],"name":"setExemptions","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setFeeEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pairing","type":"address"},{"internalType":"bool","name":"lpPair","type":"bool"}],"name":"setPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"fee","type":"uint16"}],"name":"setSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint8","name":"interval","type":"uint8"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"},{"internalType":"uint256","name":"divisor","type":"uint256"},{"internalType":"bool","name":"maxTx","type":"bool"}],"name":"setTransactionLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"fee","type":"uint16"}],"name":"setTransferFee","outputs":[],"stateMutability":"nonpayable","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":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferMarketingFee","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526103e8600d553480156200001757600080fd5b5060405162003037380380620030378339810160408190526200003a9162000a83565b83516200004f906011906020870190620008eb565b50825162000065906012906020860190620008eb565b5062000081336200007b84633b9aca0062000b47565b620003ee565b600e8054600160201b600160c01b0319166401000000003302179055620000a881620004c5565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a015591600480820192602092909190829003018186803b1580156200010857600080fd5b505afa1580156200011d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000143919062000a65565b6001600160a01b031663c9c65396601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001a057600080fd5b505afa158015620001b5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001db919062000a65565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604401602060405180830381600087803b1580156200022357600080fd5b505af115801562000238573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025e919062000a65565b601080546001600160a01b0319166001600160a01b03929092169190911790556001600360006200028c3390565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905560105482168152600490935291208054909216600117909155601354620002e7913091166000196200054c565b62000301336013546001600160a01b03166000196200054c565b3360008181526005602090815260408083208054600160ff1991821681179092553080865283862080548316841790556010546001600160a01b0316865283862080548316841790558552600290935281842080548416821790559383529091208054909116821790556006546064916200037d919062000b47565b62000389919062000b24565b6009556006546064906200039f90600262000b47565b620003ab919062000b24565b600a908155600e805463ff00000019166301000000179055620003d49060019060059062000672565b5050600e805461ff0019166101001790555062000bd29050565b6001600160a01b0382166200044a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b62000458600083836200072a565b80600660008282546200046c919062000b09565b90915550506001600160a01b0382166000818152600160209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600e546001600160a01b036401000000009091041633146200052a5760405162461bcd60e51b815260206004820152601560248201527f596f7520617265206e6f7420746865206f776e65720000000000000000000000604482015260640162000441565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316620005b05760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840162000441565b6001600160a01b038216620006135760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840162000441565b6001600160a01b038381166000818152602081815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600e546001600160a01b03640100000000909104163314620006d75760405162461bcd60e51b815260206004820152601560248201527f596f7520617265206e6f7420746865206f776e65720000000000000000000000604482015260640162000441565b600e805460ff1916841515179055600c805460ff60401b19166801000000000000000060ff851602179055600654612710906200071690839062000b47565b62000722919062000b24565b600755505050565b6200073683836200080a565b80156200074b5750600e5462010000900460ff165b8015620007615750600e546301000000900460ff165b15620007d3576001600160a01b03821660009081526005602052604090205460ff16620007d8576009548111158015620007c95750600a5481620007ba846001600160a01b031660009081526001602052604090205490565b620007c6919062000b09565b11155b620007d357600080fd5b505050565b6001600160a01b03821660009081526004602052604090205460ff1615620007d357600954811115620007d357600080fd5b600e546000906001600160a01b0380851664010000000090920416141580156200084a5750600e546001600160a01b038084166401000000009092041614155b80156200086a5750600e5464010000000090046001600160a01b03163214155b80156200089057506001600160a01b03831660009081526003602052604090205460ff16155b8015620008b657506001600160a01b03821660009081526003602052604090205460ff16155b8015620008ce57506001600160a01b03821661dead14155b8015620008e457506001600160a01b0383163014155b9392505050565b828054620008f99062000b69565b90600052602060002090601f0160209004810192826200091d576000855562000968565b82601f106200093857805160ff191683800117855562000968565b8280016001018555821562000968579182015b82811115620009685782518255916020019190600101906200094b565b50620009769291506200097a565b5090565b5b808211156200097657600081556001016200097b565b80516001600160a01b0381168114620009a957600080fd5b919050565b600082601f830112620009c057600080fd5b81516001600160401b0380821115620009dd57620009dd62000bbc565b604051601f8301601f19908116603f0116810190828211818310171562000a085762000a0862000bbc565b8160405283815260209250868385880101111562000a2557600080fd5b600091505b8382101562000a49578582018301518183018401529082019062000a2a565b8382111562000a5b5760008385830101525b9695505050505050565b60006020828403121562000a7857600080fd5b620008e48262000991565b6000806000806080858703121562000a9a57600080fd5b84516001600160401b038082111562000ab257600080fd5b62000ac088838901620009ae565b9550602087015191508082111562000ad757600080fd5b5062000ae687828801620009ae565b9350506040850151915062000afe6060860162000991565b905092959194509250565b6000821982111562000b1f5762000b1f62000ba6565b500190565b60008262000b4257634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161562000b645762000b6462000ba6565b500290565b600181811c9082168062000b7e57607f821691505b6020821081141562000ba057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6124558062000be26000396000f3fe60806040526004361061021e5760003560e01c806375f0a8741161012357806395d89b41116100ab578063c40fedc61161006f578063c40fedc6146106a3578063dd62ed3e146106c3578063e064648a146106e3578063f2fde38b14610703578063f887ea401461072357600080fd5b806395d89b411461060e578063a457c2d714610623578063a8aa1b3114610643578063a9059cbb14610663578063ab6677161461068357600080fd5b806386a22eff116100f257806386a22eff1461056657806388152cbc146105865780638c9dcf9e146105a657806392136913146105c65780639335dcb7146105e757600080fd5b806375f0a874146104b75780637bce5a04146104ef5780637e926b4b1461052457806385c5b3191461054457600080fd5b806339509351116101a65780635d098b38116101755780635d098b38146103f45780636ebcf607146104145780636f6094871461044157806370a082311461046157806370c476711461049757600080fd5b80633950935114610374578063403e82631461039457806342966c68146103b457806359966cfd146103d457600080fd5b80631da1db5e116101ed5780631da1db5e146102c657806323b872dd146102e65780632f54bf6e14610306578063313ce5671461032657806333d25d131461034257600080fd5b806306fdde031461022a578063095ea7b3146102555780630db474fa1461028557806318160ddd146102a757600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061023f610743565b60405161024c91906121a5565b60405180910390f35b34801561026157600080fd5b50610275610270366004611fb1565b6107d5565b604051901515815260200161024c565b34801561029157600080fd5b506102a56102a03660046120a6565b6107ed565b005b3480156102b357600080fd5b506006545b60405190815260200161024c565b3480156102d257600080fd5b506102a56102e136600461213a565b610835565b3480156102f257600080fd5b50610275610301366004611ee6565b610898565b34801561031257600080fd5b50610275610321366004611e73565b6108be565b34801561033257600080fd5b506040516009815260200161024c565b34801561034e57600080fd5b506103576108d9565b60408051938452602084019290925215159082015260600161024c565b34801561038057600080fd5b5061027561038f366004611fb1565b61093e565b3480156103a057600080fd5b506102a56103af36600461216c565b610960565b3480156103c057600080fd5b506102a56103cf36600461213a565b610a99565b3480156103e057600080fd5b506102a56103ef366004612116565b610aa6565b34801561040057600080fd5b506102a561040f366004611e73565b610b02565b34801561042057600080fd5b506102b861042f366004611e73565b60016020526000908152604090205481565b34801561044d57600080fd5b506102a561045c366004611f55565b610b49565b34801561046d57600080fd5b506102b861047c366004611e73565b6001600160a01b031660009081526001602052604090205490565b3480156104a357600080fd5b506102a56104b2366004612116565b610bc1565b3480156104c357600080fd5b50600f546104d7906001600160a01b031681565b6040516001600160a01b03909116815260200161024c565b3480156104fb57600080fd5b50600c5461051190600160201b900461ffff1681565b60405161ffff909116815260200161024c565b34801561053057600080fd5b506102a561053f3660046120a6565b610c1b565b34801561055057600080fd5b50600c5461051190600160301b900461ffff1681565b34801561057257600080fd5b506102a5610581366004611f27565b610ca9565b34801561059257600080fd5b506102a56105a13660046120e0565b610cf9565b3480156105b257600080fd5b506102a56105c13660046120a6565b610d6d565b3480156105d257600080fd5b50600c546105119062010000900461ffff1681565b3480156105f357600080fd5b50600e546104d790600160201b90046001600160a01b031681565b34801561061a57600080fd5b5061023f610db0565b34801561062f57600080fd5b5061027561063e366004611fb1565b610dbf565b34801561064f57600080fd5b506010546104d7906001600160a01b031681565b34801561066f57600080fd5b5061027561067e366004611fb1565b610e45565b34801561068f57600080fd5b506102a561069e366004611fdd565b610e53565b3480156106af57600080fd5b506102756106be366004611ead565b610f4f565b3480156106cf57600080fd5b506102b86106de366004611ead565b6110a8565b3480156106ef57600080fd5b506102a56106fe366004612116565b6110d1565b34801561070f57600080fd5b506102a561071e366004611e73565b611128565b34801561072f57600080fd5b506013546104d7906001600160a01b031681565b6060601180546107529061235f565b80601f016020809104026020016040519081016040528092919081815260200182805461077e9061235f565b80156107cb5780601f106107a0576101008083540402835291602001916107cb565b820191906000526020600020905b8154815290600101906020018083116107ae57829003601f168201915b5050505050905090565b6000336107e38185856112d7565b5060019392505050565b6107f6336108be565b61081b5760405162461bcd60e51b8152600401610812906121fa565b60405180910390fd5b600e80549115156101000261ff0019909216919091179055565b61083e336108be565b61085a5760405162461bcd60e51b8152600401610812906121fa565b606481111561086857600080fd5b4761089460646108788484612329565b6108829190612307565b600f546001600160a01b0316906113fa565b5050565b6000336108a6858285611513565b6108b185858561158d565b60019150505b9392505050565b600e54600160201b90046001600160a01b0390811691161490565b6000806000600e60039054906101000a900460ff161561093057633b9aca006009546109059190612307565b9250633b9aca00600a546109199190612307565b600e54939490936301000000900460ff1692509050565b505060065491829150600090565b6000336107e381858561095183836110a8565b61095b91906122ef565b6112d7565b610969336108be565b6109855760405162461bcd60e51b8152600401610812906121fa565b8015610a19576001831015801561099e57506103e88211155b6109f85760405162461bcd60e51b815260206004820152602560248201527f4d6178205472616e73616374696f6e206d757374206265207365742061626f7660448201526465202e312560d81b6064820152608401610812565b8183600654610a079190612329565b610a119190612307565b600955505050565b60018310158015610a2b575060648211155b610a775760405162461bcd60e51b815260206004820152601f60248201527f4d61782057616c6c6574206d757374206265207365742061626f7665203125006044820152606401610812565b8183600654610a869190612329565b610a909190612307565b600a555b505050565b610aa333826119de565b50565b610aaf336108be565b610acb5760405162461bcd60e51b8152600401610812906121fa565b60648161ffff161115610add57600080fd5b600c805461ffff909216600160301b0267ffff00000000000019909216919091179055565b610b0b336108be565b610b275760405162461bcd60e51b8152600401610812906121fa565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b610b52336108be565b610b6e5760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b039093166000908152600560209081526040808320805496151560ff19978816179055600282528083208054941515948716949094179093556003905220805491151591909216179055565b610bca336108be565b610be65760405162461bcd60e51b8152600401610812906121fa565b60648161ffff161115610bf857600080fd5b600c805461ffff909216600160201b0265ffff0000000019909216919091179055565b610c24336108be565b610c405760405162461bcd60e51b8152600401610812906121fa565b6040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce90600090a1600e54610c8990600160201b90046001600160a01b031660008080610b49565b610c9281610d6d565b50600e8054640100000000600160c01b0319169055565b610cb2336108be565b610cce5760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b610d02336108be565b610d1e5760405162461bcd60e51b8152600401610812906121fa565b600e805460ff1916841515179055600c805468ff00000000000000001916600160401b60ff85160217905560065461271090610d5b908390612329565b610d659190612307565b600755505050565b610d76336108be565b610d925760405162461bcd60e51b8152600401610812906121fa565b600e805491151563010000000263ff00000019909216919091179055565b6060601280546107529061235f565b60003381610dcd82866110a8565b905083811015610e2d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610812565b610e3a82868684036112d7565b506001949350505050565b6000336107e381858561158d565b8051825114610e9c5760405162461bcd60e51b81526020600482015260156024820152742632b733ba3439903237903737ba1036b0ba31b41760591b6044820152606401610812565b60005b82518160ff161015610a9457818160ff1681518110610ec057610ec06123d0565b6020026020010151633b9aca00610ed79190612329565b610ee03361047c565b1015610eeb57600080fd5b610f3d33848360ff1681518110610f0457610f046123d0565b6020026020010151848460ff1681518110610f2157610f216123d0565b6020026020010151633b9aca00610f389190612329565b61158d565b80610f478161239a565b915050610e9f565b6000610f5a336108be565b610f765760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b03831615801590610f9757506001600160a01b0383163014155b610fa057600080fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a082319060240160206040518083038186803b158015610fe257600080fd5b505afa158015610ff6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101a9190612153565b60405163a9059cbb60e01b81526001600160a01b038581166004830152602482018390529192509085169063a9059cbb90604401602060405180830381600087803b15801561106857600080fd5b505af115801561107c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a091906120c3565b949350505050565b6001600160a01b0391821660009081526020818152604080832093909416825291909152205490565b6110da336108be565b6110f65760405162461bcd60e51b8152600401610812906121fa565b60648161ffff16111561110857600080fd5b600c805461ffff909216620100000263ffff000019909216919091179055565b611131336108be565b61114d5760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b0381166111d85760405162461bcd60e51b815260206004820152604660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573732c207573652072656e6f756e63654f776e6572736869702046756064820152653731ba34b7b760d11b608482015260a401610812565b600e54604080516001600160a01b03600160201b9093048316815291831660208301527f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0910160405180910390a1600e54600160201b90046001600160a01b0316600090815260016020526040812054111561127c57600e54600160201b90046001600160a01b031660008181526001602052604090205461127c9190839061158d565b600e5461129c90600160201b90046001600160a01b031660008080610b49565b6112aa816001806001610b49565b600e80546001600160a01b03909216600160201b02640100000000600160c01b0319909216919091179055565b6001600160a01b0383166113395760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610812565b6001600160a01b03821661139a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610812565b6001600160a01b038381166000818152602081815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b8047101561144a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610812565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611497576040519150601f19603f3d011682016040523d82523d6000602084013e61149c565b606091505b5050905080610a945760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610812565b600061151f84846110a8565b90506000198114611587578181101561157a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610812565b61158784848484036112d7565b50505050565b6001600160a01b0383166115f15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610812565b6001600160a01b0382166116535760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610812565b6001600160a01b0383166000908152600160205260409020548111156116ca5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610812565b600e5462010000900460ff1661173d576116e3836108be565b6116ec57600080fd5b6010546001600160a01b038381169116141561173d57600e805462ff00001916620100001790556040517fba61a96074b3d636edeee92caddc86293c917d5b6818b7d3698bb52e02ec86c890600090a15b611748838383611b16565b600e54600090610100900460ff16801561177b57506001600160a01b03841660009081526002602052604090205460ff16155b6117855781611790565b611790848484611be4565b6001600160a01b038086166000818152600160205260408082208054868103909155938816808352918190208054860190555193945091927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117f79086815260200190565b60405180910390a33360009081526004602052604090205460ff161580156118215750600e5460ff165b80156118465750600c5460085461184291600160401b900460ff16906122ef565b4210155b801561186357506007543060009081526001602052604090205410155b156119d7574260085560408051600280825260608201835260009260208301908036833701905050905030816000815181106118a1576118a16123d0565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156118f557600080fd5b505afa158015611909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192d9190611e90565b81600181518110611940576119406123d0565b6001600160a01b03928316602091820292909201015260135460075460405163791ac94760e01b8152919092169163791ac9479161198a9190600090869030904290600401612229565b600060405180830381600087803b1580156119a457600080fd5b505af11580156119b8573d6000803e3d6000fd5b5050600f544792506119d491506001600160a01b0316826113fa565b50505b5050505050565b6001600160a01b038216611a3e5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610812565b611a4a82600083611b16565b6001600160a01b03821660009081526001602052604090205481811015611abe5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610812565b6001600160a01b03831660008181526001602090815260408083208686039055600680548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016113ed565b611b208383611d49565b8015611b345750600e5462010000900460ff165b8015611b495750600e546301000000900460ff165b15610a94576001600160a01b03821660009081526005602052604090205460ff16611bb4576009548111158015611bab5750600a5481611b9e846001600160a01b031660009081526001602052604090205490565b611ba891906122ef565b11155b610a9457600080fd5b6001600160a01b03821660009081526004602052604090205460ff1615610a9457600954811115610a9457600080fd5b6001600160a01b03821660009081526002602052604081205460ff1615611c0c5750806108b7565b6001600160a01b03831660009081526004602052604090205460ff1615611c4a57600c805462010000810461ffff1661ffff19909116179055611ca3565b6001600160a01b03841660009081526004602052604090205460ff1615611c8957600c8054600160201b810461ffff1661ffff19909116179055611ca3565b600c8054600160301b810461ffff1661ffff199091161790555b600d54600c54611cb79061ffff1684612329565b611cc19190612307565b600b8181556001600160a01b0386166000818152600160205260408082208054958603905583543080845292829020805490910190559254925190927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91611d2b91815260200190565b60405180910390a3600b54611d409084612348565b95945050505050565b6000611d54836108be565b158015611d675750611d65826108be565b155b8015611d855750600e54600160201b90046001600160a01b03163214155b8015611daa57506001600160a01b03831660009081526003602052604090205460ff16155b8015611dcf57506001600160a01b03821660009081526003602052604090205460ff16155b8015611de657506001600160a01b03821661dead14155b80156108b757506001600160a01b0383163014159392505050565b600082601f830112611e1257600080fd5b81356020611e27611e22836122cb565b61229a565b80838252828201915082860187848660051b8901011115611e4757600080fd5b60005b85811015611e6657813584529284019290840190600101611e4a565b5090979650505050505050565b600060208284031215611e8557600080fd5b81356108b7816123fc565b600060208284031215611ea257600080fd5b81516108b7816123fc565b60008060408385031215611ec057600080fd5b8235611ecb816123fc565b91506020830135611edb816123fc565b809150509250929050565b600080600060608486031215611efb57600080fd5b8335611f06816123fc565b92506020840135611f16816123fc565b929592945050506040919091013590565b60008060408385031215611f3a57600080fd5b8235611f45816123fc565b91506020830135611edb81612411565b60008060008060808587031215611f6b57600080fd5b8435611f76816123fc565b93506020850135611f8681612411565b92506040850135611f9681612411565b91506060850135611fa681612411565b939692955090935050565b60008060408385031215611fc457600080fd5b8235611fcf816123fc565b946020939093013593505050565b60008060408385031215611ff057600080fd5b823567ffffffffffffffff8082111561200857600080fd5b818501915085601f83011261201c57600080fd5b8135602061202c611e22836122cb565b8083825282820191508286018a848660051b890101111561204c57600080fd5b600096505b84871015612078578035612064816123fc565b835260019690960195918301918301612051565b509650508601359250508082111561208f57600080fd5b5061209c85828601611e01565b9150509250929050565b6000602082840312156120b857600080fd5b81356108b781612411565b6000602082840312156120d557600080fd5b81516108b781612411565b6000806000606084860312156120f557600080fd5b833561210081612411565b9250602084013560ff81168114611f1657600080fd5b60006020828403121561212857600080fd5b813561ffff811681146108b757600080fd5b60006020828403121561214c57600080fd5b5035919050565b60006020828403121561216557600080fd5b5051919050565b60008060006060848603121561218157600080fd5b8335925060208401359150604084013561219a81612411565b809150509250925092565b600060208083528351808285015260005b818110156121d2578581018301518582016040015282016121b6565b818111156121e4576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252601590820152742cb7ba9030b932903737ba103a34329037bbb732b960591b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122795784516001600160a01b031683529383019391830191600101612254565b50506001600160a01b03969096166060850152505050608001529392505050565b604051601f8201601f1916810167ffffffffffffffff811182821017156122c3576122c36123e6565b604052919050565b600067ffffffffffffffff8211156122e5576122e56123e6565b5060051b60200190565b60008219821115612302576123026123ba565b500190565b60008261232457634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615612343576123436123ba565b500290565b60008282101561235a5761235a6123ba565b500390565b600181811c9082168061237357607f821691505b6020821081141561239457634e487b7160e01b600052602260045260246000fd5b50919050565b600060ff821660ff8114156123b1576123b16123ba565b60010192915050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610aa357600080fd5b8015158114610aa357600080fdfea2646970667358221220438fa0a619efbf4c7749ff93825e162c75e0cf055fcd2125773b0d1d2750b29564736f6c63430008070033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000001dcd65000000000000000000000000000a6539811656d41c105c2a8a6173aa8a5f4a238ed000000000000000000000000000000000000000000000000000000000000000a54726561747320496e750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000065452454154530000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x60806040526004361061021e5760003560e01c806375f0a8741161012357806395d89b41116100ab578063c40fedc61161006f578063c40fedc6146106a3578063dd62ed3e146106c3578063e064648a146106e3578063f2fde38b14610703578063f887ea401461072357600080fd5b806395d89b411461060e578063a457c2d714610623578063a8aa1b3114610643578063a9059cbb14610663578063ab6677161461068357600080fd5b806386a22eff116100f257806386a22eff1461056657806388152cbc146105865780638c9dcf9e146105a657806392136913146105c65780639335dcb7146105e757600080fd5b806375f0a874146104b75780637bce5a04146104ef5780637e926b4b1461052457806385c5b3191461054457600080fd5b806339509351116101a65780635d098b38116101755780635d098b38146103f45780636ebcf607146104145780636f6094871461044157806370a082311461046157806370c476711461049757600080fd5b80633950935114610374578063403e82631461039457806342966c68146103b457806359966cfd146103d457600080fd5b80631da1db5e116101ed5780631da1db5e146102c657806323b872dd146102e65780632f54bf6e14610306578063313ce5671461032657806333d25d131461034257600080fd5b806306fdde031461022a578063095ea7b3146102555780630db474fa1461028557806318160ddd146102a757600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5061023f610743565b60405161024c91906121a5565b60405180910390f35b34801561026157600080fd5b50610275610270366004611fb1565b6107d5565b604051901515815260200161024c565b34801561029157600080fd5b506102a56102a03660046120a6565b6107ed565b005b3480156102b357600080fd5b506006545b60405190815260200161024c565b3480156102d257600080fd5b506102a56102e136600461213a565b610835565b3480156102f257600080fd5b50610275610301366004611ee6565b610898565b34801561031257600080fd5b50610275610321366004611e73565b6108be565b34801561033257600080fd5b506040516009815260200161024c565b34801561034e57600080fd5b506103576108d9565b60408051938452602084019290925215159082015260600161024c565b34801561038057600080fd5b5061027561038f366004611fb1565b61093e565b3480156103a057600080fd5b506102a56103af36600461216c565b610960565b3480156103c057600080fd5b506102a56103cf36600461213a565b610a99565b3480156103e057600080fd5b506102a56103ef366004612116565b610aa6565b34801561040057600080fd5b506102a561040f366004611e73565b610b02565b34801561042057600080fd5b506102b861042f366004611e73565b60016020526000908152604090205481565b34801561044d57600080fd5b506102a561045c366004611f55565b610b49565b34801561046d57600080fd5b506102b861047c366004611e73565b6001600160a01b031660009081526001602052604090205490565b3480156104a357600080fd5b506102a56104b2366004612116565b610bc1565b3480156104c357600080fd5b50600f546104d7906001600160a01b031681565b6040516001600160a01b03909116815260200161024c565b3480156104fb57600080fd5b50600c5461051190600160201b900461ffff1681565b60405161ffff909116815260200161024c565b34801561053057600080fd5b506102a561053f3660046120a6565b610c1b565b34801561055057600080fd5b50600c5461051190600160301b900461ffff1681565b34801561057257600080fd5b506102a5610581366004611f27565b610ca9565b34801561059257600080fd5b506102a56105a13660046120e0565b610cf9565b3480156105b257600080fd5b506102a56105c13660046120a6565b610d6d565b3480156105d257600080fd5b50600c546105119062010000900461ffff1681565b3480156105f357600080fd5b50600e546104d790600160201b90046001600160a01b031681565b34801561061a57600080fd5b5061023f610db0565b34801561062f57600080fd5b5061027561063e366004611fb1565b610dbf565b34801561064f57600080fd5b506010546104d7906001600160a01b031681565b34801561066f57600080fd5b5061027561067e366004611fb1565b610e45565b34801561068f57600080fd5b506102a561069e366004611fdd565b610e53565b3480156106af57600080fd5b506102756106be366004611ead565b610f4f565b3480156106cf57600080fd5b506102b86106de366004611ead565b6110a8565b3480156106ef57600080fd5b506102a56106fe366004612116565b6110d1565b34801561070f57600080fd5b506102a561071e366004611e73565b611128565b34801561072f57600080fd5b506013546104d7906001600160a01b031681565b6060601180546107529061235f565b80601f016020809104026020016040519081016040528092919081815260200182805461077e9061235f565b80156107cb5780601f106107a0576101008083540402835291602001916107cb565b820191906000526020600020905b8154815290600101906020018083116107ae57829003601f168201915b5050505050905090565b6000336107e38185856112d7565b5060019392505050565b6107f6336108be565b61081b5760405162461bcd60e51b8152600401610812906121fa565b60405180910390fd5b600e80549115156101000261ff0019909216919091179055565b61083e336108be565b61085a5760405162461bcd60e51b8152600401610812906121fa565b606481111561086857600080fd5b4761089460646108788484612329565b6108829190612307565b600f546001600160a01b0316906113fa565b5050565b6000336108a6858285611513565b6108b185858561158d565b60019150505b9392505050565b600e54600160201b90046001600160a01b0390811691161490565b6000806000600e60039054906101000a900460ff161561093057633b9aca006009546109059190612307565b9250633b9aca00600a546109199190612307565b600e54939490936301000000900460ff1692509050565b505060065491829150600090565b6000336107e381858561095183836110a8565b61095b91906122ef565b6112d7565b610969336108be565b6109855760405162461bcd60e51b8152600401610812906121fa565b8015610a19576001831015801561099e57506103e88211155b6109f85760405162461bcd60e51b815260206004820152602560248201527f4d6178205472616e73616374696f6e206d757374206265207365742061626f7660448201526465202e312560d81b6064820152608401610812565b8183600654610a079190612329565b610a119190612307565b600955505050565b60018310158015610a2b575060648211155b610a775760405162461bcd60e51b815260206004820152601f60248201527f4d61782057616c6c6574206d757374206265207365742061626f7665203125006044820152606401610812565b8183600654610a869190612329565b610a909190612307565b600a555b505050565b610aa333826119de565b50565b610aaf336108be565b610acb5760405162461bcd60e51b8152600401610812906121fa565b60648161ffff161115610add57600080fd5b600c805461ffff909216600160301b0267ffff00000000000019909216919091179055565b610b0b336108be565b610b275760405162461bcd60e51b8152600401610812906121fa565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b610b52336108be565b610b6e5760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b039093166000908152600560209081526040808320805496151560ff19978816179055600282528083208054941515948716949094179093556003905220805491151591909216179055565b610bca336108be565b610be65760405162461bcd60e51b8152600401610812906121fa565b60648161ffff161115610bf857600080fd5b600c805461ffff909216600160201b0265ffff0000000019909216919091179055565b610c24336108be565b610c405760405162461bcd60e51b8152600401610812906121fa565b6040517fd1f66c3d2bc1993a86be5e3d33709d98f0442381befcedd29f578b9b2506b1ce90600090a1600e54610c8990600160201b90046001600160a01b031660008080610b49565b610c9281610d6d565b50600e8054640100000000600160c01b0319169055565b610cb2336108be565b610cce5760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b610d02336108be565b610d1e5760405162461bcd60e51b8152600401610812906121fa565b600e805460ff1916841515179055600c805468ff00000000000000001916600160401b60ff85160217905560065461271090610d5b908390612329565b610d659190612307565b600755505050565b610d76336108be565b610d925760405162461bcd60e51b8152600401610812906121fa565b600e805491151563010000000263ff00000019909216919091179055565b6060601280546107529061235f565b60003381610dcd82866110a8565b905083811015610e2d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610812565b610e3a82868684036112d7565b506001949350505050565b6000336107e381858561158d565b8051825114610e9c5760405162461bcd60e51b81526020600482015260156024820152742632b733ba3439903237903737ba1036b0ba31b41760591b6044820152606401610812565b60005b82518160ff161015610a9457818160ff1681518110610ec057610ec06123d0565b6020026020010151633b9aca00610ed79190612329565b610ee03361047c565b1015610eeb57600080fd5b610f3d33848360ff1681518110610f0457610f046123d0565b6020026020010151848460ff1681518110610f2157610f216123d0565b6020026020010151633b9aca00610f389190612329565b61158d565b80610f478161239a565b915050610e9f565b6000610f5a336108be565b610f765760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b03831615801590610f9757506001600160a01b0383163014155b610fa057600080fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a082319060240160206040518083038186803b158015610fe257600080fd5b505afa158015610ff6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101a9190612153565b60405163a9059cbb60e01b81526001600160a01b038581166004830152602482018390529192509085169063a9059cbb90604401602060405180830381600087803b15801561106857600080fd5b505af115801561107c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a091906120c3565b949350505050565b6001600160a01b0391821660009081526020818152604080832093909416825291909152205490565b6110da336108be565b6110f65760405162461bcd60e51b8152600401610812906121fa565b60648161ffff16111561110857600080fd5b600c805461ffff909216620100000263ffff000019909216919091179055565b611131336108be565b61114d5760405162461bcd60e51b8152600401610812906121fa565b6001600160a01b0381166111d85760405162461bcd60e51b815260206004820152604660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573732c207573652072656e6f756e63654f776e6572736869702046756064820152653731ba34b7b760d11b608482015260a401610812565b600e54604080516001600160a01b03600160201b9093048316815291831660208301527f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0910160405180910390a1600e54600160201b90046001600160a01b0316600090815260016020526040812054111561127c57600e54600160201b90046001600160a01b031660008181526001602052604090205461127c9190839061158d565b600e5461129c90600160201b90046001600160a01b031660008080610b49565b6112aa816001806001610b49565b600e80546001600160a01b03909216600160201b02640100000000600160c01b0319909216919091179055565b6001600160a01b0383166113395760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610812565b6001600160a01b03821661139a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610812565b6001600160a01b038381166000818152602081815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b8047101561144a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610812565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611497576040519150601f19603f3d011682016040523d82523d6000602084013e61149c565b606091505b5050905080610a945760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610812565b600061151f84846110a8565b90506000198114611587578181101561157a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610812565b61158784848484036112d7565b50505050565b6001600160a01b0383166115f15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610812565b6001600160a01b0382166116535760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610812565b6001600160a01b0383166000908152600160205260409020548111156116ca5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610812565b600e5462010000900460ff1661173d576116e3836108be565b6116ec57600080fd5b6010546001600160a01b038381169116141561173d57600e805462ff00001916620100001790556040517fba61a96074b3d636edeee92caddc86293c917d5b6818b7d3698bb52e02ec86c890600090a15b611748838383611b16565b600e54600090610100900460ff16801561177b57506001600160a01b03841660009081526002602052604090205460ff16155b6117855781611790565b611790848484611be4565b6001600160a01b038086166000818152600160205260408082208054868103909155938816808352918190208054860190555193945091927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117f79086815260200190565b60405180910390a33360009081526004602052604090205460ff161580156118215750600e5460ff165b80156118465750600c5460085461184291600160401b900460ff16906122ef565b4210155b801561186357506007543060009081526001602052604090205410155b156119d7574260085560408051600280825260608201835260009260208301908036833701905050905030816000815181106118a1576118a16123d0565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156118f557600080fd5b505afa158015611909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192d9190611e90565b81600181518110611940576119406123d0565b6001600160a01b03928316602091820292909201015260135460075460405163791ac94760e01b8152919092169163791ac9479161198a9190600090869030904290600401612229565b600060405180830381600087803b1580156119a457600080fd5b505af11580156119b8573d6000803e3d6000fd5b5050600f544792506119d491506001600160a01b0316826113fa565b50505b5050505050565b6001600160a01b038216611a3e5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610812565b611a4a82600083611b16565b6001600160a01b03821660009081526001602052604090205481811015611abe5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610812565b6001600160a01b03831660008181526001602090815260408083208686039055600680548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016113ed565b611b208383611d49565b8015611b345750600e5462010000900460ff165b8015611b495750600e546301000000900460ff165b15610a94576001600160a01b03821660009081526005602052604090205460ff16611bb4576009548111158015611bab5750600a5481611b9e846001600160a01b031660009081526001602052604090205490565b611ba891906122ef565b11155b610a9457600080fd5b6001600160a01b03821660009081526004602052604090205460ff1615610a9457600954811115610a9457600080fd5b6001600160a01b03821660009081526002602052604081205460ff1615611c0c5750806108b7565b6001600160a01b03831660009081526004602052604090205460ff1615611c4a57600c805462010000810461ffff1661ffff19909116179055611ca3565b6001600160a01b03841660009081526004602052604090205460ff1615611c8957600c8054600160201b810461ffff1661ffff19909116179055611ca3565b600c8054600160301b810461ffff1661ffff199091161790555b600d54600c54611cb79061ffff1684612329565b611cc19190612307565b600b8181556001600160a01b0386166000818152600160205260408082208054958603905583543080845292829020805490910190559254925190927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91611d2b91815260200190565b60405180910390a3600b54611d409084612348565b95945050505050565b6000611d54836108be565b158015611d675750611d65826108be565b155b8015611d855750600e54600160201b90046001600160a01b03163214155b8015611daa57506001600160a01b03831660009081526003602052604090205460ff16155b8015611dcf57506001600160a01b03821660009081526003602052604090205460ff16155b8015611de657506001600160a01b03821661dead14155b80156108b757506001600160a01b0383163014159392505050565b600082601f830112611e1257600080fd5b81356020611e27611e22836122cb565b61229a565b80838252828201915082860187848660051b8901011115611e4757600080fd5b60005b85811015611e6657813584529284019290840190600101611e4a565b5090979650505050505050565b600060208284031215611e8557600080fd5b81356108b7816123fc565b600060208284031215611ea257600080fd5b81516108b7816123fc565b60008060408385031215611ec057600080fd5b8235611ecb816123fc565b91506020830135611edb816123fc565b809150509250929050565b600080600060608486031215611efb57600080fd5b8335611f06816123fc565b92506020840135611f16816123fc565b929592945050506040919091013590565b60008060408385031215611f3a57600080fd5b8235611f45816123fc565b91506020830135611edb81612411565b60008060008060808587031215611f6b57600080fd5b8435611f76816123fc565b93506020850135611f8681612411565b92506040850135611f9681612411565b91506060850135611fa681612411565b939692955090935050565b60008060408385031215611fc457600080fd5b8235611fcf816123fc565b946020939093013593505050565b60008060408385031215611ff057600080fd5b823567ffffffffffffffff8082111561200857600080fd5b818501915085601f83011261201c57600080fd5b8135602061202c611e22836122cb565b8083825282820191508286018a848660051b890101111561204c57600080fd5b600096505b84871015612078578035612064816123fc565b835260019690960195918301918301612051565b509650508601359250508082111561208f57600080fd5b5061209c85828601611e01565b9150509250929050565b6000602082840312156120b857600080fd5b81356108b781612411565b6000602082840312156120d557600080fd5b81516108b781612411565b6000806000606084860312156120f557600080fd5b833561210081612411565b9250602084013560ff81168114611f1657600080fd5b60006020828403121561212857600080fd5b813561ffff811681146108b757600080fd5b60006020828403121561214c57600080fd5b5035919050565b60006020828403121561216557600080fd5b5051919050565b60008060006060848603121561218157600080fd5b8335925060208401359150604084013561219a81612411565b809150509250925092565b600060208083528351808285015260005b818110156121d2578581018301518582016040015282016121b6565b818111156121e4576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252601590820152742cb7ba9030b932903737ba103a34329037bbb732b960591b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122795784516001600160a01b031683529383019391830191600101612254565b50506001600160a01b03969096166060850152505050608001529392505050565b604051601f8201601f1916810167ffffffffffffffff811182821017156122c3576122c36123e6565b604052919050565b600067ffffffffffffffff8211156122e5576122e56123e6565b5060051b60200190565b60008219821115612302576123026123ba565b500190565b60008261232457634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615612343576123436123ba565b500290565b60008282101561235a5761235a6123ba565b500390565b600181811c9082168061237357607f821691505b6020821081141561239457634e487b7160e01b600052602260045260246000fd5b50919050565b600060ff821660ff8114156123b1576123b16123ba565b60010192915050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610aa357600080fd5b8015158114610aa357600080fdfea2646970667358221220438fa0a619efbf4c7749ff93825e162c75e0cf055fcd2125773b0d1d2750b29564736f6c63430008070033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000001dcd65000000000000000000000000000a6539811656d41c105c2a8a6173aa8a5f4a238ed000000000000000000000000000000000000000000000000000000000000000a54726561747320496e750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000065452454154530000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): Treats Inu
Arg [1] : symbol_ (string): TREATS
Arg [2] : startingSupply (uint256): 8000000000
Arg [3] : _marketingWallet (address): 0xA6539811656d41c105c2a8A6173aa8a5F4A238eD

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 00000000000000000000000000000000000000000000000000000001dcd65000
Arg [3] : 000000000000000000000000a6539811656d41c105c2a8a6173aa8a5f4a238ed
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [5] : 54726561747320496e7500000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [7] : 5452454154530000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

7698:13430:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9976:92;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10852:193;;;;;;;;;;-1:-1:-1;10852:193:0;;;;;:::i;:::-;;:::i;:::-;;;7829:14:1;;7822:22;7804:41;;7792:2;7777:18;10852:193:0;7664:187:1;13717:95:0;;;;;;;;;;-1:-1:-1;13717:95:0;;;;;:::i;:::-;;:::i;:::-;;10273:100;;;;;;;;;;-1:-1:-1;10353:12:0;;10273:100;;;15344:25:1;;;15332:2;15317:18;10273:100:0;15198:177:1;11803:230:0;;;;;;;;;;-1:-1:-1;11803:230:0;;;;;:::i;:::-;;:::i;14902:253::-;;;;;;;;;;-1:-1:-1;14902:253:0;;;;;:::i;:::-;;:::i;20889:109::-;;;;;;;;;;-1:-1:-1;20889:109:0;;;;;:::i;:::-;;:::i;10181:84::-;;;;;;;;;;-1:-1:-1;10181:84:0;;10256:1;16841:36:1;;16829:2;16814:18;10181:84:0;16699:184:1;20438:443:0;;;;;;;;;;;;;:::i;:::-;;;;16561:25:1;;;16617:2;16602:18;;16595:34;;;;16672:14;16665:22;16645:18;;;16638:50;16549:2;16534:18;20438:443:0;16365:329:1;15163:230:0;;;;;;;;;;-1:-1:-1;15163:230:0;;;;;:::i;:::-;;:::i;12361:471::-;;;;;;;;;;-1:-1:-1;12361:471:0;;;;;:::i;:::-;;:::i;19175:85::-;;;;;;;;;;-1:-1:-1;19175:85:0;;;;;:::i;:::-;;:::i;13450:130::-;;;;;;;;;;-1:-1:-1;13450:130:0;;;;;:::i;:::-;;:::i;13820:124::-;;;;;;;;;;-1:-1:-1;13820:124:0;;;;;:::i;:::-;;:::i;7853:44::-;;;;;;;;;;-1:-1:-1;7853:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;12840:254;;;;;;;;;;-1:-1:-1;12840:254:0;;;;;:::i;:::-;;:::i;10381:119::-;;;;;;;;;;-1:-1:-1;10381:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;10474:18:0;10447:7;10474:18;;;:9;:18;;;;;;;10381:119;13318:120;;;;;;;;;;-1:-1:-1;13318:120:0;;;;;:::i;:::-;;:::i;8561:30::-;;;;;;;;;;-1:-1:-1;8561:30:0;;;;-1:-1:-1;;;;;8561:30:0;;;;;;-1:-1:-1;;;;;7032:32:1;;;7014:51;;7002:2;6987:18;8561:30:0;6868:203:1;8293:29:0;;;;;;;;;;-1:-1:-1;8293:29:0;;;;-1:-1:-1;;;8293:29:0;;;;;;;;;15179:6:1;15167:19;;;15149:38;;15137:2;15122:18;8293:29:0;15005:188:1;11058:237:0;;;;;;;;;;-1:-1:-1;11058:237:0;;;;;:::i;:::-;;:::i;8329:34::-;;;;;;;;;;-1:-1:-1;8329:34:0;;;;-1:-1:-1;;;8329:34:0;;;;;;13200:110;;;;;;;;;;-1:-1:-1;13200:110:0;;;;;:::i;:::-;;:::i;13952:227::-;;;;;;;;;;-1:-1:-1;13952:227:0;;;;;:::i;:::-;;:::i;13102:90::-;;;;;;;;;;-1:-1:-1;13102:90:0;;;;;:::i;:::-;;:::i;8256:30::-;;;;;;;;;;-1:-1:-1;8256:30:0;;;;;;;;;;;8528:26;;;;;;;;;;-1:-1:-1;8528:26:0;;;;-1:-1:-1;;;8528:26:0;;-1:-1:-1;;;;;8528:26:0;;;10077:96;;;;;;;;;;;;;:::i;15401:428::-;;;;;;;;;;-1:-1:-1;15401:428:0;;;;;:::i;:::-;;:::i;8598:19::-;;;;;;;;;;-1:-1:-1;8598:19:0;;;;-1:-1:-1;;;;;8598:19:0;;;10508:185;;;;;;;;;;-1:-1:-1;10508:185:0;;;;;:::i;:::-;;:::i;14513:381::-;;;;;;;;;;-1:-1:-1;14513:381:0;;;;;:::i;:::-;;:::i;12041:312::-;;;;;;;;;;-1:-1:-1;12041:312:0;;;;;:::i;:::-;;:::i;10701:143::-;;;;;;;;;;-1:-1:-1;10701:143:0;;;;;:::i;:::-;;:::i;13588:122::-;;;;;;;;;;-1:-1:-1;13588:122:0;;;;;:::i;:::-;;:::i;11303:492::-;;;;;;;;;;-1:-1:-1;11303:492:0;;;;;:::i;:::-;;:::i;8684:21::-;;;;;;;;;;-1:-1:-1;8684:21:0;;;;-1:-1:-1;;;;;8684:21:0;;;9976:92;10022:13;10055:5;10048:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9976:92;:::o;10852:193::-;10927:4;197:10;10983:32;197:10;10999:7;11008:6;10983:8;:32::i;:::-;-1:-1:-1;11033:4:0;;10852:193;-1:-1:-1;;;10852:193:0:o;13717:95::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;;;;;;;;;13784:10:::1;:20:::0;;;::::1;;;;-1:-1:-1::0;;13784:20:0;;::::1;::::0;;;::::1;::::0;;13717:95::o;11803:230::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;11896:3:::1;11885:7;:14;;11877:23;;;::::0;::::1;;11931:21;11963:62;12021:3;11999:18;12010:7:::0;11931:21;11999:18:::1;:::i;:::-;11998:26;;;;:::i;:::-;11971:15;::::0;-1:-1:-1;;;;;11971:15:0::1;::::0;11963:34:::1;:62::i;:::-;11866:167;11803:230:::0;:::o;14902:253::-;14991:4;197:10;15049:38;15065:4;197:10;15080:6;15049:15;:38::i;:::-;15098:27;15108:4;15114:2;15118:6;15098:9;:27::i;:::-;15143:4;15136:11;;;14902:253;;;;;;:::o;20889:109::-;20979:11;;-1:-1:-1;;;20979:11:0;;-1:-1:-1;;;;;20979:11:0;;;20968:22;;;;20889:109::o;20438:443::-;20492:19;20513:14;20529:22;20566:8;;;;;;;;;;;20563:311;;;20621:5;20607:11;;:19;;;;:::i;:::-;20590:36;;20671:5;20653:15;;:23;;;;:::i;:::-;20711:8;;20438:443;;20641:35;;20711:8;;;;;;-1:-1:-1;20438:443:0;-1:-1:-1;20438:443:0:o;20563:311::-;-1:-1:-1;;10353:12:0;;;;;-1:-1:-1;20857:5:0;;20438:443::o;15163:230::-;15243:4;197:10;15299:64;197:10;15315:7;15352:10;15324:25;197:10;15315:7;15324:9;:25::i;:::-;:38;;;;:::i;:::-;15299:8;:64::i;12361:471::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;12472:5:::1;12469:356;;;12512:1;12501:7;:12;;:31;;;;;12528:4;12517:7;:15;;12501:31;12493:81;;;::::0;-1:-1:-1;;;12493:81:0;;12472:2:1;12493:81:0::1;::::0;::::1;12454:21:1::0;12511:2;12491:18;;;12484:30;12550:34;12530:18;;;12523:62;-1:-1:-1;;;12601:18:1;;;12594:35;12646:19;;12493:81:0::1;12270:401:1::0;12493:81:0::1;12631:7;12619;12604:12;;:22;;;;:::i;:::-;12603:36;;;;:::i;:::-;12589:11;:50:::0;12361:471;;;:::o;12469:356::-:1;12691:1;12680:7;:12;;:30;;;;;12707:3;12696:7;:14;;12680:30;12672:74;;;::::0;-1:-1:-1;;;12672:74:0;;12878:2:1;12672:74:0::1;::::0;::::1;12860:21:1::0;12917:2;12897:18;;;12890:30;12956:33;12936:18;;;12929:61;13007:18;;12672:74:0::1;12676:355:1::0;12672:74:0::1;12806:7;12795;12780:12;;:22;;;;:::i;:::-;12779:34;;;;:::i;:::-;12761:15;:52:::0;12469:356:::1;12361:471:::0;;;:::o;19175:85::-;19225:27;197:10;19245:6;19225:5;:27::i;:::-;19175:85;:::o;13450:130::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;13531:3:::1;13524;:10;;;;13516:19;;;::::0;::::1;;13546:20;:26:::0;;::::1;::::0;;::::1;-1:-1:-1::0;;;13546:26:0::1;-1:-1:-1::0;;13546:26:0;;::::1;::::0;;;::::1;::::0;;13450:130::o;13820:124::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;13902:15:::1;:34:::0;;-1:-1:-1;;;;;;13902:34:0::1;-1:-1:-1::0;;;;;13902:34:0;;;::::1;::::0;;;::::1;::::0;;13820:124::o;12840:254::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12964:23:0;;::::1;;::::0;;;:15:::1;:23;::::0;;;;;;;:42;;;::::1;;-1:-1:-1::0;;12964:42:0;;::::1;;::::0;;13017:9:::1;:17:::0;;;;;:30;;;::::1;;::::0;;::::1;::::0;;;::::1;::::0;;;13058:8:::1;:16:::0;;;:28;;;::::1;;::::0;;;::::1;;::::0;;12840:254::o;13318:120::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;13394:3:::1;13387;:10;;;;13379:19;;;::::0;::::1;;13409:15;:21:::0;;::::1;::::0;;::::1;-1:-1:-1::0;;;13409:21:0::1;-1:-1:-1::0;;13409:21:0;;::::1;::::0;;;::::1;::::0;;13318:120::o;11058:237::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;11137:20:::1;::::0;::::1;::::0;;;::::1;11182:11;::::0;11168:47:::1;::::0;-1:-1:-1;;;11182:11:0;::::1;-1:-1:-1::0;;;;;11182:11:0::1;11195:5;::::0;;11168:13:::1;:47::i;:::-;11226:26;11241:10;11226:14;:26::i;:::-;-1:-1:-1::0;11263:11:0::1;:24:::0;;-1:-1:-1;;;;;;11263:24:0::1;::::0;;11058:237::o;13200:110::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13277:16:0;;;::::1;;::::0;;;:7:::1;:16;::::0;;;;:25;;-1:-1:-1;;13277:25:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13200:110::o;13952:227::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;14056:11:::1;:22:::0;;-1:-1:-1;;14056:22:0::1;::::0;::::1;;;::::0;;14089:9:::1;:20:::0;;-1:-1:-1;;14089:20:0::1;-1:-1:-1::0;;;14056:22:0::1;14089:20:::0;::::1;;;::::0;;14136:12:::1;::::0;14165:5:::1;::::0;14136:24:::1;::::0;14152:7;;14136:24:::1;:::i;:::-;14135:36;;;;:::i;:::-;14120:12;:51:::0;-1:-1:-1;;;13952:227:0:o;13102:90::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;13168:8:::1;:16:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;13168:16:0;;::::1;::::0;;;::::1;::::0;;13102:90::o;10077:96::-;10125:13;10158:7;10151:14;;;;;:::i;15401:428::-;15486:4;197:10;15486:4;15569:25;197:10;15586:7;15569:9;:25::i;:::-;15542:52;;15633:15;15613:16;:35;;15605:85;;;;-1:-1:-1;;;15605:85:0;;14801:2:1;15605:85:0;;;14783:21:1;14840:2;14820:18;;;14813:30;14879:34;14859:18;;;14852:62;-1:-1:-1;;;14930:18:1;;;14923:35;14975:19;;15605:85:0;14599:401:1;15605:85:0;15726:60;15735:5;15742:7;15770:15;15751:16;:34;15726:8;:60::i;:::-;-1:-1:-1;15817:4:0;;15401:428;-1:-1:-1;;;;15401:428:0:o;10508:185::-;10579:4;197:10;10635:28;197:10;10652:2;10656:6;10635:9;:28::i;14513:381::-;14642:7;:14;14622:9;:16;:34;14614:68;;;;-1:-1:-1;;;14614:68:0;;13238:2:1;14614:68:0;;;13220:21:1;13277:2;13257:18;;;13250:30;-1:-1:-1;;;13296:18:1;;;13289:51;13357:18;;14614:68:0;13036:345:1;14614:68:0;14698:7;14693:194;14715:9;:16;14711:1;:20;;;14693:194;;;14788:7;14796:1;14788:10;;;;;;;;;;:::i;:::-;;;;;;;14799:5;14788:16;;;;:::i;:::-;14761:23;197:10;14771:12;109:107;14761:23;:43;;14753:52;;;;;;14820:55;197:10;14844:9;14854:1;14844:12;;;;;;;;;;:::i;:::-;;;;;;;14858:7;14866:1;14858:10;;;;;;;;;;:::i;:::-;;;;;;;14869:5;14858:16;;;;:::i;:::-;14820:9;:55::i;:::-;14733:3;;;;:::i;:::-;;;;14693:194;;12041:312;12124:10;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12155:20:0;::::1;::::0;;::::1;::::0;:47:::1;;-1:-1:-1::0;;;;;;12179:23:0;::::1;12197:4;12179:23;;12155:47;12147:56;;;::::0;::::1;;12241:39;::::0;-1:-1:-1;;;12241:39:0;;12274:4:::1;12241:39;::::0;::::1;7014:51:1::0;12214:24:0::1;::::0;-1:-1:-1;;;;;12241:24:0;::::1;::::0;::::1;::::0;6987:18:1;;12241:39:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12299:46;::::0;-1:-1:-1;;;12299:46:0;;-1:-1:-1;;;;;7577:32:1;;;12299:46:0::1;::::0;::::1;7559:51:1::0;7626:18;;;7619:34;;;12214:66:0;;-1:-1:-1;12299:23:0;;::::1;::::0;::::1;::::0;7532:18:1;;12299:46:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12291:54:::0;12041:312;-1:-1:-1;;;;12041:312:0:o;10701:143::-;-1:-1:-1;;;;;10809:18:0;;;10782:7;10809:18;;;;;;;;;;;:27;;;;;;;;;;;;;10701:143::o;13588:122::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;13665:3:::1;13658;:10;;;;13650:19;;;::::0;::::1;;13680:16;:22:::0;;::::1;::::0;;::::1;::::0;::::1;-1:-1:-1::0;;13680:22:0;;::::1;::::0;;;::::1;::::0;;13588:122::o;11303:492::-;8754:19;8762:10;8754:7;:19::i;:::-;8746:53;;;;-1:-1:-1;;;8746:53:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11386:22:0;::::1;11378:105;;;::::0;-1:-1:-1;;;11378:105:0;;9287:2:1;11378:105:0::1;::::0;::::1;9269:21:1::0;9326:2;9306:18;;;9299:30;9365:34;9345:18;;;9338:62;9436:34;9416:18;;;9409:62;-1:-1:-1;;;9487:19:1;;;9480:37;9534:19;;11378:105:0::1;9085:474:1::0;11378:105:0::1;11520:11;::::0;11499:43:::1;::::0;;-1:-1:-1;;;;;;;;11520:11:0;;::::1;::::0;::::1;7288:34:1::0;;7358:15;;;7353:2;7338:18;;7331:43;11499::0::1;::::0;7223:18:1;11499:43:0::1;;;;;;;11568:11;::::0;-1:-1:-1;;;11568:11:0;::::1;-1:-1:-1::0;;;;;11568:11:0::1;11583:1;10474:18:::0;;;:9;:18;;;;;;11558:26:::1;11555:87;;;11596:11;::::0;-1:-1:-1;;;11596:11:0;::::1;-1:-1:-1::0;;;;;11596:11:0::1;10447:7:::0;10474:18;;;:9;:18;;;;;;11586:56:::1;::::0;11596:11;11609:8;;14820:9;:55::i;11586:56::-:1;11667:11;::::0;11653:47:::1;::::0;-1:-1:-1;;;11667:11:0;::::1;-1:-1:-1::0;;;;;11667:11:0::1;11680:5;::::0;;11653:13:::1;:47::i;:::-;11711:41;11725:8;11735:4;11741::::0;11747::::1;11711:13;:41::i;:::-;11765:11;:22:::0;;-1:-1:-1;;;;;11765:22:0;;::::1;-1:-1:-1::0;;;11765:22:0::1;-1:-1:-1::0;;;;;;11765:22:0;;::::1;::::0;;;::::1;::::0;;11303:492::o;19268:338::-;-1:-1:-1;;;;;19362:19:0;;19354:68;;;;-1:-1:-1;;;19354:68:0;;14396:2:1;19354:68:0;;;14378:21:1;14435:2;14415:18;;;14408:30;14474:34;14454:18;;;14447:62;-1:-1:-1;;;14525:18:1;;;14518:34;14569:19;;19354:68:0;14194:400:1;19354:68:0;-1:-1:-1;;;;;19441:21:0;;19433:68;;;;-1:-1:-1;;;19433:68:0;;10169:2:1;19433:68:0;;;10151:21:1;10208:2;10188:18;;;10181:30;10247:34;10227:18;;;10220:62;-1:-1:-1;;;10298:18:1;;;10291:32;10340:19;;19433:68:0;9967:398:1;19433:68:0;-1:-1:-1;;;;;19514:18:0;;;:11;:18;;;;;;;;;;;:27;;;;;;;;;;;;;:36;;;19566:32;;15344:25:1;;;19566:32:0;;15317:18:1;19566:32:0;;;;;;;;19268:338;;;:::o;485:317::-;600:6;575:21;:31;;567:73;;;;-1:-1:-1;;;567:73:0;;12114:2:1;567:73:0;;;12096:21:1;12153:2;12133:18;;;12126:30;12192:31;12172:18;;;12165:59;12241:18;;567:73:0;11912:353:1;567:73:0;654:12;672:9;-1:-1:-1;;;;;672:14:0;694:6;672:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;653:52;;;724:7;716:78;;;;-1:-1:-1;;;716:78:0;;11337:2:1;716:78:0;;;11319:21:1;11376:2;11356:18;;;11349:30;11415:34;11395:18;;;11388:62;11486:28;11466:18;;;11459:56;11532:19;;716:78:0;11135:422:1;19614:411:0;19707:24;19734:25;19744:5;19751:7;19734:9;:25::i;:::-;19707:52;;-1:-1:-1;;19774:16:0;:37;19770:248;;19856:6;19836:16;:26;;19828:68;;;;-1:-1:-1;;;19828:68:0;;10572:2:1;19828:68:0;;;10554:21:1;10611:2;10591:18;;;10584:30;10650:31;10630:18;;;10623:59;10699:18;;19828:68:0;10370:353:1;19828:68:0;19940:51;19949:5;19956:7;19984:6;19965:16;:25;19940:8;:51::i;:::-;19696:329;19614:411;;;:::o;15837:1624::-;-1:-1:-1;;;;;15926:18:0;;15918:68;;;;-1:-1:-1;;;15918:68:0;;13990:2:1;15918:68:0;;;13972:21:1;14029:2;14009:18;;;14002:30;14068:34;14048:18;;;14041:62;-1:-1:-1;;;14119:18:1;;;14112:35;14164:19;;15918:68:0;13788:401:1;15918:68:0;-1:-1:-1;;;;;16005:16:0;;15997:64;;;;-1:-1:-1;;;15997:64:0;;8883:2:1;15997:64:0;;;8865:21:1;8922:2;8902:18;;;8895:30;8961:34;8941:18;;;8934:62;-1:-1:-1;;;9012:18:1;;;9005:33;9055:19;;15997:64:0;8681:399:1;15997:64:0;-1:-1:-1;;;;;16080:15:0;;;;;;:9;:15;;;;;;:25;-1:-1:-1;16080:25:0;16072:76;;;;-1:-1:-1;;;16072:76:0;;10930:2:1;16072:76:0;;;10912:21:1;10969:2;10949:18;;;10942:30;11008:34;10988:18;;;10981:62;-1:-1:-1;;;11059:18:1;;;11052:36;11105:19;;16072:76:0;10728:402:1;16072:76:0;16163:11;;;;;;;16159:198;;16199:13;16207:4;16199:7;:13::i;:::-;16191:22;;;;;;16253:4;;-1:-1:-1;;;;;16247:10:0;;;16253:4;;16247:10;16244:102;;;16278:11;:18;;-1:-1:-1;;16278:18:0;;;;;16320:10;;;;16278:18;;16320:10;16244:102;16367:38;16388:4;16394:2;16398:6;16367:20;:38::i;:::-;16443:10;;16418:22;;16443:10;;;;;:30;;;;-1:-1:-1;;;;;;16458:15:0;;;;;;:9;:15;;;;;;;;16457:16;16443:30;:67;;16504:6;16443:67;;;16476:25;16484:4;16490:2;16494:6;16476:7;:25::i;:::-;-1:-1:-1;;;;;16545:15:0;;;16523:19;16545:15;;;:9;:15;;;;;;;;16614:28;;;16596:46;;;16657:13;;;;;;;;;;:31;;;;;;16715:34;16418:92;;-1:-1:-1;16545:15:0;;16715:34;;;;16418:92;15344:25:1;;15332:2;15317:18;;15198:177;16715:34:0;;;;;;;;197:10;16766:21;;;;:7;:21;;;;;;;;16765:22;:47;;;;-1:-1:-1;16801:11:0;;;;16765:47;:100;;;;-1:-1:-1;16856:9:0;;;16845:8;:20;;-1:-1:-1;;;16856:9:0;;;;;16845:20;:::i;:::-;16826:15;:39;;16765:100;:154;;;;-1:-1:-1;16907:12:0;;16897:4;16879:24;;;;:9;:24;;;;;;:40;;16765:154;16762:692;;;16947:15;16936:8;:26;17003:16;;;17017:1;17003:16;;;;;;;;16979:21;;17003:16;;;;;;;;;;-1:-1:-1;17003:16:0;16979:40;;17052:4;17034;17039:1;17034:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17034:23:0;;;:7;;;;;;;;;;:23;;;;17082:6;;:13;;;-1:-1:-1;;;17082:13:0;;;;:6;;;;;:11;;:13;;;;;17034:7;;17082:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17072:4;17077:1;17072:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17072:23:0;;;:7;;;;;;;;;:23;17112:6;;17188:12;;17112:212;;-1:-1:-1;;;17112:212:0;;:6;;;;;:57;;:212;;17188:12;17112:6;;17239:4;;17270;;17294:15;;17112:212;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17407:15:0;;17363:21;;-1:-1:-1;17399:43:0;;-1:-1:-1;;;;;;17407:15:0;17363:21;17399:34;:43::i;:::-;16921:533;;16762:692;15907:1554;;15837:1624;;;:::o;18643:524::-;-1:-1:-1;;;;;18719:21:0;;18711:67;;;;-1:-1:-1;;;18711:67:0;;13588:2:1;18711:67:0;;;13570:21:1;13627:2;13607:18;;;13600:30;13666:34;13646:18;;;13639:62;-1:-1:-1;;;13717:18:1;;;13710:31;13758:19;;18711:67:0;13386:397:1;18711:67:0;18791:49;18812:7;18829:1;18833:6;18791:20;:49::i;:::-;-1:-1:-1;;;;;18876:18:0;;18851:22;18876:18;;;:9;:18;;;;;;18913:24;;;;18905:71;;;;-1:-1:-1;;;18905:71:0;;9766:2:1;18905:71:0;;;9748:21:1;9805:2;9785:18;;;9778:30;9844:34;9824:18;;;9817:62;-1:-1:-1;;;9895:18:1;;;9888:32;9937:19;;18905:71:0;9564:398:1;18905:71:0;-1:-1:-1;;;;;19012:18:0;;;;;;:9;:18;;;;;;;;19033:23;;;19012:44;;19071:12;:22;;;;;;;19122:37;15344:25:1;;;19012:18:0;;;19122:37;;15317:18:1;19122:37:0;15198:177:1;20033:397:0;20133:16;20140:4;20146:2;20133:6;:16::i;:::-;:31;;;;-1:-1:-1;20153:11:0;;;;;;;20133:31;:43;;;;-1:-1:-1;20168:8:0;;;;;;;20133:43;20130:293;;;-1:-1:-1;;;;;20196:19:0;;;;;;:15;:19;;;;;;;;20192:220;;20253:11;;20243:6;:21;;:66;;;;;20294:15;;20284:6;20268:13;20278:2;-1:-1:-1;;;;;10474:18:0;10447:7;10474:18;;;:9;:18;;;;;;;10381:119;20268:13;:22;;;;:::i;:::-;:41;;20243:66;20235:75;;;;;20192:220;-1:-1:-1;;;;;20335:11:0;;;;;;:7;:11;;;;;;;;20332:80;;;20384:11;;20374:6;:21;;20366:30;;;;;17469:792;-1:-1:-1;;;;;17578:19:0;;17554:7;17578:19;;;:9;:19;;;;;;;;17574:65;;;-1:-1:-1;17621:6:0;17614:13;;17574:65;-1:-1:-1;;;;;17652:17:0;;;;;;:7;:17;;;;;;;;17649:246;;;17704:16;;;;;;;;-1:-1:-1;;17689:31:0;;;;;;17649:246;;;-1:-1:-1;;;;;17750:15:0;;;;;;:7;:15;;;;;;;;17747:148;;;17796:15;;;-1:-1:-1;;;17796:15:0;;;;-1:-1:-1;;17781:30:0;;;;;;17747:148;;;17863:20;;;-1:-1:-1;;;17863:20:0;;;;-1:-1:-1;;17848:35:0;;;;;;17747:148;17945:14;;17929:12;;17920:21;;17929:12;;17920:6;:21;:::i;:::-;17919:40;;;;:::i;:::-;17907:9;:52;;;-1:-1:-1;;;;;17994:17:0;;17970:21;17994:17;;;:9;:17;;;;;;;;18067:25;;;18047:45;;18135:9;;18125:4;18107:24;;;;;;;:37;;;;;;;18205:9;;18173:42;;18125:4;;18173:42;;;;15344:25:1;;15332:2;15317:18;;15198:177;18173:42:0;;;;;;;;18244:9;;18235:18;;:6;:18;:::i;:::-;18228:25;17469:792;-1:-1:-1;;;;;17469:792:0:o;14187:318::-;14251:4;14276:13;14284:4;14276:7;:13::i;:::-;14275:14;:43;;;;;14307:11;14315:2;14307:7;:11::i;:::-;14306:12;14275:43;:84;;;;-1:-1:-1;14348:11:0;;-1:-1:-1;;;14348:11:0;;-1:-1:-1;;;;;14348:11:0;14335:9;:24;;14275:84;:116;;;;-1:-1:-1;;;;;;14377:14:0;;;;;;:8;:14;;;;;;;;14376:15;14275:116;:146;;;;-1:-1:-1;;;;;;14409:12:0;;;;;;:8;:12;;;;;;;;14408:13;14275:146;:184;;;;-1:-1:-1;;;;;;14438:21:0;;14452:6;14438:21;;14275:184;:222;;;;-1:-1:-1;;;;;;14476:21:0;;14492:4;14476:21;;14268:229;14187:318;-1:-1:-1;;;14187:318:0:o;14:673:1:-;68:5;121:3;114:4;106:6;102:17;98:27;88:55;;139:1;136;129:12;88:55;175:6;162:20;201:4;225:60;241:43;281:2;241:43;:::i;:::-;225:60;:::i;:::-;307:3;331:2;326:3;319:15;359:2;354:3;350:12;343:19;;394:2;386:6;382:15;446:3;441:2;435;432:1;428:10;420:6;416:23;412:32;409:41;406:61;;;463:1;460;453:12;406:61;485:1;495:163;509:2;506:1;503:9;495:163;;;566:17;;554:30;;604:12;;;;636;;;;527:1;520:9;495:163;;;-1:-1:-1;676:5:1;;14:673;-1:-1:-1;;;;;;;14:673:1:o;692:247::-;751:6;804:2;792:9;783:7;779:23;775:32;772:52;;;820:1;817;810:12;772:52;859:9;846:23;878:31;903:5;878:31;:::i;944:251::-;1014:6;1067:2;1055:9;1046:7;1042:23;1038:32;1035:52;;;1083:1;1080;1073:12;1035:52;1115:9;1109:16;1134:31;1159:5;1134:31;:::i;1200:388::-;1268:6;1276;1329:2;1317:9;1308:7;1304:23;1300:32;1297:52;;;1345:1;1342;1335:12;1297:52;1384:9;1371:23;1403:31;1428:5;1403:31;:::i;:::-;1453:5;-1:-1:-1;1510:2:1;1495:18;;1482:32;1523:33;1482:32;1523:33;:::i;:::-;1575:7;1565:17;;;1200:388;;;;;:::o;1593:456::-;1670:6;1678;1686;1739:2;1727:9;1718:7;1714:23;1710:32;1707:52;;;1755:1;1752;1745:12;1707:52;1794:9;1781:23;1813:31;1838:5;1813:31;:::i;:::-;1863:5;-1:-1:-1;1920:2:1;1905:18;;1892:32;1933:33;1892:32;1933:33;:::i;:::-;1593:456;;1985:7;;-1:-1:-1;;;2039:2:1;2024:18;;;;2011:32;;1593:456::o;2054:382::-;2119:6;2127;2180:2;2168:9;2159:7;2155:23;2151:32;2148:52;;;2196:1;2193;2186:12;2148:52;2235:9;2222:23;2254:31;2279:5;2254:31;:::i;:::-;2304:5;-1:-1:-1;2361:2:1;2346:18;;2333:32;2374:30;2333:32;2374:30;:::i;2441:653::-;2518:6;2526;2534;2542;2595:3;2583:9;2574:7;2570:23;2566:33;2563:53;;;2612:1;2609;2602:12;2563:53;2651:9;2638:23;2670:31;2695:5;2670:31;:::i;:::-;2720:5;-1:-1:-1;2777:2:1;2762:18;;2749:32;2790:30;2749:32;2790:30;:::i;:::-;2839:7;-1:-1:-1;2898:2:1;2883:18;;2870:32;2911:30;2870:32;2911:30;:::i;:::-;2960:7;-1:-1:-1;3019:2:1;3004:18;;2991:32;3032:30;2991:32;3032:30;:::i;:::-;2441:653;;;;-1:-1:-1;2441:653:1;;-1:-1:-1;;2441:653:1:o;3099:315::-;3167:6;3175;3228:2;3216:9;3207:7;3203:23;3199:32;3196:52;;;3244:1;3241;3234:12;3196:52;3283:9;3270:23;3302:31;3327:5;3302:31;:::i;:::-;3352:5;3404:2;3389:18;;;;3376:32;;-1:-1:-1;;;3099:315:1:o;3419:1226::-;3537:6;3545;3598:2;3586:9;3577:7;3573:23;3569:32;3566:52;;;3614:1;3611;3604:12;3566:52;3654:9;3641:23;3683:18;3724:2;3716:6;3713:14;3710:34;;;3740:1;3737;3730:12;3710:34;3778:6;3767:9;3763:22;3753:32;;3823:7;3816:4;3812:2;3808:13;3804:27;3794:55;;3845:1;3842;3835:12;3794:55;3881:2;3868:16;3903:4;3927:60;3943:43;3983:2;3943:43;:::i;3927:60::-;4009:3;4033:2;4028:3;4021:15;4061:2;4056:3;4052:12;4045:19;;4092:2;4088;4084:11;4140:7;4135:2;4129;4126:1;4122:10;4118:2;4114:19;4110:28;4107:41;4104:61;;;4161:1;4158;4151:12;4104:61;4183:1;4174:10;;4193:238;4207:2;4204:1;4201:9;4193:238;;;4278:3;4265:17;4295:31;4320:5;4295:31;:::i;:::-;4339:18;;4225:1;4218:9;;;;;4377:12;;;;4409;;4193:238;;;-1:-1:-1;4450:5:1;-1:-1:-1;;4493:18:1;;4480:32;;-1:-1:-1;;4524:16:1;;;4521:36;;;4553:1;4550;4543:12;4521:36;;4576:63;4631:7;4620:8;4609:9;4605:24;4576:63;:::i;:::-;4566:73;;;3419:1226;;;;;:::o;4650:241::-;4706:6;4759:2;4747:9;4738:7;4734:23;4730:32;4727:52;;;4775:1;4772;4765:12;4727:52;4814:9;4801:23;4833:28;4855:5;4833:28;:::i;4896:245::-;4963:6;5016:2;5004:9;4995:7;4991:23;4987:32;4984:52;;;5032:1;5029;5022:12;4984:52;5064:9;5058:16;5083:28;5105:5;5083:28;:::i;5146:474::-;5218:6;5226;5234;5287:2;5275:9;5266:7;5262:23;5258:32;5255:52;;;5303:1;5300;5293:12;5255:52;5342:9;5329:23;5361:28;5383:5;5361:28;:::i;:::-;5408:5;-1:-1:-1;5465:2:1;5450:18;;5437:32;5513:4;5500:18;;5488:31;;5478:59;;5533:1;5530;5523:12;5625:272;5683:6;5736:2;5724:9;5715:7;5711:23;5707:32;5704:52;;;5752:1;5749;5742:12;5704:52;5791:9;5778:23;5841:6;5834:5;5830:18;5823:5;5820:29;5810:57;;5863:1;5860;5853:12;5902:180;5961:6;6014:2;6002:9;5993:7;5989:23;5985:32;5982:52;;;6030:1;6027;6020:12;5982:52;-1:-1:-1;6053:23:1;;5902:180;-1:-1:-1;5902:180:1:o;6087:184::-;6157:6;6210:2;6198:9;6189:7;6185:23;6181:32;6178:52;;;6226:1;6223;6216:12;6178:52;-1:-1:-1;6249:16:1;;6087:184;-1:-1:-1;6087:184:1:o;6276:377::-;6350:6;6358;6366;6419:2;6407:9;6398:7;6394:23;6390:32;6387:52;;;6435:1;6432;6425:12;6387:52;6471:9;6458:23;6448:33;;6528:2;6517:9;6513:18;6500:32;6490:42;;6582:2;6571:9;6567:18;6554:32;6595:28;6617:5;6595:28;:::i;:::-;6642:5;6632:15;;;6276:377;;;;;:::o;8079:597::-;8191:4;8220:2;8249;8238:9;8231:21;8281:6;8275:13;8324:6;8319:2;8308:9;8304:18;8297:34;8349:1;8359:140;8373:6;8370:1;8367:13;8359:140;;;8468:14;;;8464:23;;8458:30;8434:17;;;8453:2;8430:26;8423:66;8388:10;;8359:140;;;8517:6;8514:1;8511:13;8508:91;;;8587:1;8582:2;8573:6;8562:9;8558:22;8554:31;8547:42;8508:91;-1:-1:-1;8660:2:1;8639:15;-1:-1:-1;;8635:29:1;8620:45;;;;8667:2;8616:54;;8079:597;-1:-1:-1;;;8079:597:1:o;11562:345::-;11764:2;11746:21;;;11803:2;11783:18;;;11776:30;-1:-1:-1;;;11837:2:1;11822:18;;11815:51;11898:2;11883:18;;11562:345::o;15380:980::-;15642:4;15690:3;15679:9;15675:19;15721:6;15710:9;15703:25;15747:2;15785:6;15780:2;15769:9;15765:18;15758:34;15828:3;15823:2;15812:9;15808:18;15801:31;15852:6;15887;15881:13;15918:6;15910;15903:22;15956:3;15945:9;15941:19;15934:26;;15995:2;15987:6;15983:15;15969:29;;16016:1;16026:195;16040:6;16037:1;16034:13;16026:195;;;16105:13;;-1:-1:-1;;;;;16101:39:1;16089:52;;16196:15;;;;16161:12;;;;16137:1;16055:9;16026:195;;;-1:-1:-1;;;;;;;16277:32:1;;;;16272:2;16257:18;;16250:60;-1:-1:-1;;;16341:3:1;16326:19;16319:35;16238:3;15380:980;-1:-1:-1;;;15380:980:1:o;16888:275::-;16959:2;16953:9;17024:2;17005:13;;-1:-1:-1;;17001:27:1;16989:40;;17059:18;17044:34;;17080:22;;;17041:62;17038:88;;;17106:18;;:::i;:::-;17142:2;17135:22;16888:275;;-1:-1:-1;16888:275:1:o;17168:183::-;17228:4;17261:18;17253:6;17250:30;17247:56;;;17283:18;;:::i;:::-;-1:-1:-1;17328:1:1;17324:14;17340:4;17320:25;;17168:183::o;17356:128::-;17396:3;17427:1;17423:6;17420:1;17417:13;17414:39;;;17433:18;;:::i;:::-;-1:-1:-1;17469:9:1;;17356:128::o;17489:217::-;17529:1;17555;17545:132;;17599:10;17594:3;17590:20;17587:1;17580:31;17634:4;17631:1;17624:15;17662:4;17659:1;17652:15;17545:132;-1:-1:-1;17691:9:1;;17489:217::o;17711:168::-;17751:7;17817:1;17813;17809:6;17805:14;17802:1;17799:21;17794:1;17787:9;17780:17;17776:45;17773:71;;;17824:18;;:::i;:::-;-1:-1:-1;17864:9:1;;17711:168::o;17884:125::-;17924:4;17952:1;17949;17946:8;17943:34;;;17957:18;;:::i;:::-;-1:-1:-1;17994:9:1;;17884:125::o;18014:380::-;18093:1;18089:12;;;;18136;;;18157:61;;18211:4;18203:6;18199:17;18189:27;;18157:61;18264:2;18256:6;18253:14;18233:18;18230:38;18227:161;;;18310:10;18305:3;18301:20;18298:1;18291:31;18345:4;18342:1;18335:15;18373:4;18370:1;18363:15;18227:161;;18014:380;;;:::o;18399:175::-;18436:3;18480:4;18473:5;18469:16;18509:4;18500:7;18497:17;18494:43;;;18517:18;;:::i;:::-;18566:1;18553:15;;18399:175;-1:-1:-1;;18399:175:1:o;18579:127::-;18640:10;18635:3;18631:20;18628:1;18621:31;18671:4;18668:1;18661:15;18695:4;18692:1;18685:15;18711:127;18772:10;18767:3;18763:20;18760:1;18753:31;18803:4;18800:1;18793:15;18827:4;18824:1;18817:15;18843:127;18904:10;18899:3;18895:20;18892:1;18885:31;18935:4;18932:1;18925:15;18959:4;18956:1;18949:15;18975:131;-1:-1:-1;;;;;19050:31:1;;19040:42;;19030:70;;19096:1;19093;19086:12;19111:118;19197:5;19190:13;19183:21;19176:5;19173:32;19163:60;;19219:1;19216;19209:12

Swarm Source

ipfs://438fa0a619efbf4c7749ff93825e162c75e0cf055fcd2125773b0d1d2750b295

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  ]

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.