ETH Price: $3,388.95 (+1.48%)

Token

STEAMPUNX (STEAMPUNX)
 

Overview

Max Total Supply

1,000,000,000,000 STEAMPUNX

Holders

21

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
remyware.eth
Balance
9,301,708,449.294833715 STEAMPUNX

Value
$0.00
0xEB1e1c73Da0Be950c4c7b8941dF19Ad5226A2bC3
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
STEAMPUNX

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : STEAMPUNX.sol
/**
 _______  _______  _______  _______  __   __  _______  __   __  __    _  __   __ 
|       ||       ||       ||   _   ||  |_|  ||       ||  | |  ||  |  | ||  |_|  |
|  _____||_     _||    ___||  |_|  ||       ||    _  ||  | |  ||   |_| ||       |
| |_____   |   |  |   |___ |       ||       ||   |_| ||  |_|  ||       ||       |
|_____  |  |   |  |    ___||       ||       ||    ___||       ||  _    | |     | 
 _____| |  |   |  |   |___ |   _   || ||_|| ||   |    |       || | |   ||   _   |
|_______|  |___|  |_______||__| |__||_|   |_||___|    |_______||_|  |__||__| |__|
 * 
 * TOKENOMICS:
 * 1,000,000,000,000 token supply
 * FIRST TWO MINUTES: 3,000,000,000 max buy / 45-second buy cooldown (these limitations are lifted automatically two minutes post-launch)
 * 15-second cooldown to sell after a buy
 * 10% tax on buys and sells
 * Max wallet of 9% of total supply for first 12 hours
 * Higher fee on sells within first 1 hour post-launch
 * No team tokens, no presale
 * Functions for removing fees
 * 
SPDX-License-Identifier: UNLICENSED 
*/
pragma solidity ^0.8.4;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

}  

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract STEAMPUNX is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => User) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e12 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    string private constant _name = unicode"STEAMPUNX";
    string private constant _symbol = unicode"STEAMPUNX";
    uint8 private constant _decimals = 9;
    uint256 private _taxFee = 6;
    uint256 private _teamFee = 4;
    uint256 private _feeRate = 2;
    uint256 private _previousTaxFee = _taxFee;
    uint256 private _previousteamFee = _teamFee;
    uint256 private _launchFeeEnd;
    uint256 private _maxBuyAmount;
    uint256 private _maxHeldTokens;
    address payable private _feeAddress1;
    address payable private _feeAddress2;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private _tradingOpen;
    bool private _cooldownEnabled = true;
    bool private inSwap = false;
    bool private _useFees = true;
    bool private _useDevFee = true;
    uint256 private _buyLimitEnd;
    uint256 private _maxHeldTokensEnd;
    struct User {
        uint256 buy;
        uint256 sell;
        bool exists;
    }

    event MaxBuyAmountUpdated(uint _maxBuyAmount);
    event CooldownEnabledUpdated(bool _cooldown);
    event UseFeesBooleanUpdated(bool _usefees);
    event UseDevFeeBooleanUpdated(bool _usedevfee);
    event TaxFeeUpdated(uint _taxfee);
    event TeamFeeUpdated(uint _taxfee);
    event FeeAddress1Updated(address _feewallet1);
    event FeeAddress2Updated(address _feewallet2);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor (address payable feeAddress1, address payable feeAddress2) {
        _feeAddress1 = feeAddress1;
        _feeAddress2 = feeAddress2;
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[feeAddress1] = true;
        _isExcludedFromFee[feeAddress2] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function tokenFromReflection(uint256 rAmount) private view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if(_taxFee == 0 && _teamFee == 0) return;
        _previousTaxFee = _taxFee;
        _previousteamFee = _teamFee;
        _taxFee = 0;
        _teamFee = 0;
    }
    
    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _teamFee = _previousteamFee;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        // set to false for no fee on buys
        bool takeFee = true;

        if(from != owner() && to != owner()) {
            if(_cooldownEnabled) {
                if(!cooldown[msg.sender].exists) {
                    cooldown[msg.sender] = User(0,0,true);
                }
            }

            // buy
            if(from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) {
                _taxFee = 6;
                _teamFee = 4;
                require(_tradingOpen, "Trading not yet enabled.");
                if(_maxHeldTokensEnd > block.timestamp) {
                    require(amount.add(balanceOf(address(to))) <= _maxHeldTokens, "You can't own that many tokens at once.");
                }
                if(_cooldownEnabled) {
                    if(_buyLimitEnd > block.timestamp) {
                        require(amount <= _maxBuyAmount);
                        require(cooldown[to].buy < block.timestamp, "Your buy cooldown has not expired.");
                        cooldown[to].buy = block.timestamp + (45 seconds);
                    }
                }
                if(_cooldownEnabled) {
                    cooldown[to].sell = block.timestamp + (15 seconds);
                }
            }
            uint256 contractTokenBalance = balanceOf(address(this));

            // sell
            if(!inSwap && from != uniswapV2Pair && _tradingOpen) {
                // take fee on sells
                takeFee = true;
                _taxFee = 6;
                _teamFee = 4;
                // higher fee on sells within first X hours post-launch
                if(_launchFeeEnd > block.timestamp) {
                    _taxFee = 9;
                    _teamFee = 6;
                }

                if(_cooldownEnabled) {
                    require(cooldown[from].sell < block.timestamp, "Your sell cooldown has not expired.");
                }

                if(contractTokenBalance > 0) {
                    if(contractTokenBalance > balanceOf(uniswapV2Pair).mul(_feeRate).div(100)) {
                        contractTokenBalance = balanceOf(uniswapV2Pair).mul(_feeRate).div(100);
                    }
                    swapTokensForEth(contractTokenBalance);
                }
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if(!_useDevFee && _teamFee != 0) {
            _teamFee = 0;
        }
        if(_isExcludedFromFee[from] || _isExcludedFromFee[to] || !_useFees){
            takeFee = false;
        }
        
        _tokenTransfer(from,to,amount,takeFee);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
        
    function sendETHToFee(uint256 amount) private {
        _feeAddress1.transfer(amount.div(2));
        _feeAddress2.transfer(amount.div(2));
    }
    
    function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private {
        if(!takeFee)
            removeAllFee();
        _transferStandard(sender, recipient, amount);
        if(!takeFee)
            restoreAllFee();
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); 

        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _taxFee, _teamFee);
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(TeamFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if(rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate =  _getRate();
        uint256 rTeam = tTeam.mul(currentRate);

        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}
    
    function addLiquidity() external onlyOwner() {
        require(!_tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        _maxBuyAmount = 3000000000 * 10**9;
        // 1,000,000,000,000 total tokens
        // 90,000,000,000 = 9% of total token count
        _maxHeldTokens = 90000000000 * 10**9;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function openTrading() public onlyOwner {
        _tradingOpen = true;
        _buyLimitEnd = block.timestamp + (120 seconds);
        _maxHeldTokensEnd = block.timestamp + (12 hours);
        _launchFeeEnd = block.timestamp + (1 hours);
    }

    function manualswap() external {
        require(_msgSender() == _feeAddress1);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    
    function manualsend() external {
        require(_msgSender() == _feeAddress1);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function toggleFees() external {
        require(_msgSender() == _feeAddress1);
        _useFees = false;
        emit UseFeesBooleanUpdated(_useFees);
    }

    function turnOffDevFee() external {
        require(_msgSender() == _feeAddress1);
        _useDevFee = false;
        emit UseDevFeeBooleanUpdated(_useDevFee);
    }

    function updateFeeAddress1(address newAddress) external {
        require(_msgSender() == _feeAddress1);
        _feeAddress1 = payable(newAddress);
        emit FeeAddress1Updated(_feeAddress1);
    }

    function updateFeeAddress2(address newAddress) external {
        require(_msgSender() == _feeAddress2);
        _feeAddress2 = payable(newAddress);
        emit FeeAddress2Updated(_feeAddress2);
    }

    function setCooldownEnabled() external onlyOwner() {
        _cooldownEnabled = !_cooldownEnabled;
        emit CooldownEnabledUpdated(_cooldownEnabled);
    }

    function cooldownEnabled() public view returns (bool) {
        return _cooldownEnabled;
    }

    function timeToBuy(address buyer) public view returns (uint) {
        return block.timestamp - cooldown[buyer].buy;
    }

    function timeToSell(address buyer) public view returns (uint) {
        return block.timestamp - cooldown[buyer].sell;
    }

    function balancePool() public view returns (uint) {
        return balanceOf(uniswapV2Pair);
    }

    function balanceContract() public view returns (uint) {
        return balanceOf(address(this));
    }

    function usingFees() public view returns (bool) {
        return _useFees;
    }

    function usingDevFee() public view returns (bool) {
        return _useDevFee;
    }

    function isThereMaxHeld() public view returns (bool) {
        return (block.timestamp < _maxHeldTokensEnd);
    }

    function whatIsMaxHeld() public view returns (uint256) {
        return _maxHeldTokens;
    }

    function whatIsTaxFee() public view returns (uint256) {
        return _taxFee;
    }

    function whatIsTeamFee() public view returns (uint256) {
        return _teamFee;
    }

    function whatIsFeeAddress1() public view returns (address) {
        return _feeAddress1;
    }

    function whatIsFeeAddress2() public view returns (address) {
        return _feeAddress2;
    }
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"feeAddress1","type":"address"},{"internalType":"address payable","name":"feeAddress2","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":[{"indexed":false,"internalType":"bool","name":"_cooldown","type":"bool"}],"name":"CooldownEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_feewallet1","type":"address"}],"name":"FeeAddress1Updated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_feewallet2","type":"address"}],"name":"FeeAddress2Updated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxBuyAmount","type":"uint256"}],"name":"MaxBuyAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_taxfee","type":"uint256"}],"name":"TaxFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_taxfee","type":"uint256"}],"name":"TeamFeeUpdated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_usedevfee","type":"bool"}],"name":"UseDevFeeBooleanUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_usefees","type":"bool"}],"name":"UseFeesBooleanUpdated","type":"event"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","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":[],"name":"balanceContract","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"balancePool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cooldownEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"isThereMaxHeld","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"buyer","type":"address"}],"name":"timeToBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"buyer","type":"address"}],"name":"timeToSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"toggleFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"turnOffDevFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateFeeAddress1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateFeeAddress2","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"usingDevFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"usingFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whatIsFeeAddress1","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whatIsFeeAddress2","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whatIsMaxHeld","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whatIsTaxFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whatIsTeamFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006000196200001d919062000597565b6000196200002c91906200051e565b60075560066009556004600a556002600b55600954600c55600a54600d556001601460156101000a81548160ff0219169083151502179055506000601460166101000a81548160ff0219169083151502179055506001601460176101000a81548160ff0219169083151502179055506001601460186101000a81548160ff021916908315150217905550348015620000c357600080fd5b5060405162004540380380620045408339818101604052810190620000e99190620004af565b6000620000fb6200046760201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060075460026000620002326200046760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160056000620002866200046f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003ef6200046760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea0000060405162000457919062000501565b60405180910390a3505062000647565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620004a9816200062d565b92915050565b60008060408385031215620004c357600080fd5b6000620004d38582860162000498565b9250506020620004e68582860162000498565b9150509250929050565b620004fb816200058d565b82525050565b6000602082019050620005186000830184620004f0565b92915050565b60006200052b826200058d565b915062000538836200058d565b9250828210156200054e576200054d620005cf565b5b828203905092915050565b600062000566826200056d565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000620005a4826200058d565b9150620005b1836200058d565b925082620005c457620005c3620005fe565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b620006388162000559565b81146200064457600080fd5b50565b613ee980620006576000396000f3fe6080604052600436106101f25760003560e01c806370eb843b1161010d578063b177f189116100a0578063d7a2a8ad1161006f578063d7a2a8ad146106b6578063dd62ed3e146106e1578063ddf545121461071e578063e63aff6314610735578063e8078d941461074c576101f9565b8063b177f18914610632578063c3c8cd801461065d578063c4a8814f14610674578063c9567bf91461069f576101f9565b8063a1c31bf9116100dc578063a1c31bf914610562578063a9059cbb1461058d578063a985ceef146105ca578063a9fc35a9146105f5576101f9565b806370eb843b146104ca578063715018a6146104f55780638da5cb5b1461050c57806395d89b4114610537576101f9565b8063313ce5671161018557806362b3e1ec1161015457806362b3e1ec1461040e57806368a3a6a5146104395780636fc3eaec1461047657806370a082311461048d576101f9565b8063313ce56714610378578063322a5e5f146103a35780634a81854a146103ce57806350901617146103e5576101f9565b806318160ddd116101c157806318160ddd146102ba57806323b872dd146102e557806326515462146103225780632e82b8f31461034d576101f9565b806306fdde03146101fe5780630802d2f6146102295780630853b3dc14610252578063095ea7b31461027d576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610763565b6040516102209190613571565b60405180910390f35b34801561023557600080fd5b50610250600480360381019061024b9190612fda565b6107a0565b005b34801561025e57600080fd5b5061026761089e565b604051610274919061346d565b60405180910390f35b34801561028957600080fd5b506102a4600480360381019061029f91906130b7565b6108c8565b6040516102b19190613556565b60405180910390f35b3480156102c657600080fd5b506102cf6108e6565b6040516102dc9190613753565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190613068565b6108f7565b6040516103199190613556565b60405180910390f35b34801561032e57600080fd5b506103376109d0565b6040516103449190613753565b60405180910390f35b34801561035957600080fd5b506103626109da565b60405161036f9190613556565b60405180910390f35b34801561038457600080fd5b5061038d6109f1565b60405161039a91906137c8565b60405180910390f35b3480156103af57600080fd5b506103b86109fa565b6040516103c59190613753565b60405180910390f35b3480156103da57600080fd5b506103e3610a0a565b005b3480156103f157600080fd5b5061040c60048036038101906104079190612fda565b610ace565b005b34801561041a57600080fd5b50610423610bcc565b6040516104309190613753565b60405180910390f35b34801561044557600080fd5b50610460600480360381019061045b9190612fda565b610bd6565b60405161046d9190613753565b60405180910390f35b34801561048257600080fd5b5061048b610c2d565b005b34801561049957600080fd5b506104b460048036038101906104af9190612fda565b610c9f565b6040516104c19190613753565b60405180910390f35b3480156104d657600080fd5b506104df610cf0565b6040516104ec9190613753565b60405180910390f35b34801561050157600080fd5b5061050a610d22565b005b34801561051857600080fd5b50610521610e75565b60405161052e919061346d565b60405180910390f35b34801561054357600080fd5b5061054c610e9e565b6040516105599190613571565b60405180910390f35b34801561056e57600080fd5b50610577610edb565b6040516105849190613556565b60405180910390f35b34801561059957600080fd5b506105b460048036038101906105af91906130b7565b610ee7565b6040516105c19190613556565b60405180910390f35b3480156105d657600080fd5b506105df610f05565b6040516105ec9190613556565b60405180910390f35b34801561060157600080fd5b5061061c60048036038101906106179190612fda565b610f1c565b6040516106299190613753565b60405180910390f35b34801561063e57600080fd5b50610647610f73565b6040516106549190613556565b60405180910390f35b34801561066957600080fd5b50610672610f8a565b005b34801561068057600080fd5b50610689611004565b604051610696919061346d565b60405180910390f35b3480156106ab57600080fd5b506106b461102e565b005b3480156106c257600080fd5b506106cb61111a565b6040516106d89190613753565b60405180910390f35b3480156106ed57600080fd5b506107086004803603810190610703919061302c565b611124565b6040516107159190613753565b60405180910390f35b34801561072a57600080fd5b506107336111ab565b005b34801561074157600080fd5b5061074a61126f565b005b34801561075857600080fd5b50610761611376565b005b60606040518060400160405280600981526020017f535445414d50554e580000000000000000000000000000000000000000000000815250905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107e161188f565b73ffffffffffffffffffffffffffffffffffffffff161461080157600080fd5b80601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f0e96f8986653644392af4a5daec8b04a389af0d497572173e63846ccd26c843c601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516108939190613488565b60405180910390a150565b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006108dc6108d561188f565b8484611897565b6001905092915050565b6000683635c9adc5dea00000905090565b6000610904848484611a62565b6109c58461091061188f565b6109c085604051806060016040528060288152602001613e8c60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061097661188f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123809092919063ffffffff16565b611897565b600190509392505050565b6000600954905090565b6000601460179054906101000a900460ff16905090565b60006009905090565b6000610a0530610c9f565b905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a4b61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610a6b57600080fd5b6000601460186101000a81548160ff0219169083151502179055507fa0332a09ed075cc53786280bd769d2ddaeb0dab224287b246f7b8753f1fe835f601460189054906101000a900460ff16604051610ac49190613556565b60405180910390a1565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b0f61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610b2f57600080fd5b80601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f96511497113ddf59712b28350d7457b9c300ab227616bd3b451745a395a53014601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051610bc19190613488565b60405180910390a150565b6000601054905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015442610c269190613919565b9050919050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c6e61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610c8e57600080fd5b6000479050610c9c816123e4565b50565b6000610ce9600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124df565b9050919050565b6000610d1d601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c9f565b905090565b610d2a61188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dae90613673565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600981526020017f535445414d50554e580000000000000000000000000000000000000000000000815250905090565b60006016544210905090565b6000610efb610ef461188f565b8484611a62565b6001905092915050565b6000601460159054906101000a900460ff16905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015442610f6c9190613919565b9050919050565b6000601460189054906101000a900460ff16905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fcb61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610feb57600080fd5b6000610ff630610c9f565b90506110018161254d565b50565b6000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61103661188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ba90613673565b60405180910390fd5b60016014806101000a81548160ff0219169083151502179055506078426110ea9190613838565b60158190555061a8c0426110fe9190613838565b601681905550610e10426111129190613838565b600e81905550565b6000600a54905090565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111ec61188f565b73ffffffffffffffffffffffffffffffffffffffff161461120c57600080fd5b6000601460176101000a81548160ff0219169083151502179055507f875ab13664b130e9f02c6927ebda6944d90a0f0db6c0fdb7cc7ec5f85ed630b8601460179054906101000a900460ff166040516112659190613556565b60405180910390a1565b61127761188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611304576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112fb90613673565b60405180910390fd5b601460159054906101000a900460ff1615601460156101000a81548160ff0219169083151502179055507f0d63187a8abb5b4d1bb562e1163897386b0a88ee72e0799dd105bd0fd6f28706601460159054906101000a900460ff1660405161136c9190613556565b60405180910390a1565b61137e61188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461140b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140290613673565b60405180910390fd5b60148054906101000a900460ff1615611459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145090613713565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506114e930601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea00000611897565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561152f57600080fd5b505afa158015611543573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115679190613003565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156115c957600080fd5b505afa1580156115dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116019190613003565b6040518363ffffffff1660e01b815260040161161e9291906134a3565b602060405180830381600087803b15801561163857600080fd5b505af115801561164c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116709190613003565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306116f930610c9f565b600080611704610e75565b426040518863ffffffff1660e01b8152600401611726969594939291906134f5565b6060604051808303818588803b15801561173f57600080fd5b505af1158015611753573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611778919061311c565b5050506729a2241af62c0000600f819055506804e1003b28d9280000601081905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016118399291906134cc565b602060405180830381600087803b15801561185357600080fd5b505af1158015611867573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188b91906130f3565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611907576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fe906136f3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611977576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196e906135d3565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611a559190613753565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611ad2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac9906136b3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3990613593565b60405180910390fd5b60008111611b85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7c90613693565b60405180910390fd5b600060019050611b93610e75565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611c015750611bd1610e75565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561227d57601460159054906101000a900460ff1615611d0757600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160009054906101000a900460ff16611d06576040518060600160405280600081526020016000815260200160011515815250600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611db25750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611e085750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156120455760066009819055506004600a8190555060148054906101000a900460ff16611e6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6190613733565b60405180910390fd5b426016541115611ed457601054611e92611e8385610c9f565b8461284790919063ffffffff16565b1115611ed3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eca906136d3565b60405180910390fd5b5b601460159054906101000a900460ff1615611fdb57426015541115611fda57600f54821115611f0257600080fd5b42600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410611f86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7d906135f3565b60405180910390fd5b602d42611f939190613838565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b5b601460159054906101000a900460ff161561204457600f42611ffd9190613838565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b5b600061205030610c9f565b9050601460169054906101000a900460ff161580156120bd5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156120d3575060148054906101000a900460ff165b1561227b576001915060066009819055506004600a8190555042600e54111561210657600980819055506006600a819055505b601460159054906101000a900460ff16156121a05742600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541061219f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161219690613633565b60405180910390fd5b5b6000811115612261576121fb60646121ed600b546121df601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c9f565b6128a590919063ffffffff16565b61292090919063ffffffff16565b811115612257576122546064612246600b54612238601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c9f565b6128a590919063ffffffff16565b61292090919063ffffffff16565b90505b6122608161254d565b5b6000479050600081111561227957612278476123e4565b5b505b505b601460189054906101000a900460ff1615801561229d57506000600a5414155b156122ab576000600a819055505b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061234c5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806123645750601460179054906101000a900460ff16155b1561236e57600090505b61237a8484848461296a565b50505050565b60008383111582906123c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123bf9190613571565b60405180910390fd5b50600083856123d79190613919565b9050809150509392505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc61243460028461292090919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561245f573d6000803e3d6000fd5b50601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6124b060028461292090919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156124db573d6000803e3d6000fd5b5050565b6000600754821115612526576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161251d906135b3565b60405180910390fd5b6000612530612997565b9050612545818461292090919063ffffffff16565b915050919050565b6001601460166101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156125ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156125d95781602001602082028036833780820191505090505b5090503081600081518110612617577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156126b957600080fd5b505afa1580156126cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126f19190613003565b8160018151811061272b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061279230601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611897565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016127f695949392919061376e565b600060405180830381600087803b15801561281057600080fd5b505af1158015612824573d6000803e3d6000fd5b50505050506000601460166101000a81548160ff02191690831515021790555050565b60008082846128569190613838565b90508381101561289b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161289290613613565b60405180910390fd5b8091505092915050565b6000808314156128b8576000905061291a565b600082846128c691906138bf565b90508284826128d5919061388e565b14612915576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161290c90613653565b60405180910390fd5b809150505b92915050565b600061296283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506129c2565b905092915050565b8061297857612977612a25565b5b612983848484612a68565b8061299157612990612c33565b5b50505050565b60008060006129a4612c47565b915091506129bb818361292090919063ffffffff16565b9250505090565b60008083118290612a09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a009190613571565b60405180910390fd5b5060008385612a18919061388e565b9050809150509392505050565b6000600954148015612a3957506000600a54145b15612a4357612a66565b600954600c81905550600a54600d8190555060006009819055506000600a819055505b565b600080600080600080612a7a87612ca9565b955095509550955095509550612ad886600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d1190919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b6d85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284790919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612bb981612d5b565b612bc38483612e18565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051612c209190613753565b60405180910390a3505050505050505050565b600c54600981905550600d54600a81905550565b600080600060075490506000683635c9adc5dea000009050612c7d683635c9adc5dea0000060075461292090919063ffffffff16565b821015612c9c57600754683635c9adc5dea00000935093505050612ca5565b81819350935050505b9091565b6000806000806000806000806000612cc68a600954600a54612e52565b9250925092506000612cd6612997565b90506000806000612ce98e878787612ee8565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000612d5383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612380565b905092915050565b6000612d65612997565b90506000612d7c82846128a590919063ffffffff16565b9050612dd081600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284790919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612e2d82600754612d1190919063ffffffff16565b600781905550612e488160085461284790919063ffffffff16565b6008819055505050565b600080600080612e7e6064612e70888a6128a590919063ffffffff16565b61292090919063ffffffff16565b90506000612ea86064612e9a888b6128a590919063ffffffff16565b61292090919063ffffffff16565b90506000612ed182612ec3858c612d1190919063ffffffff16565b612d1190919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612f0185896128a590919063ffffffff16565b90506000612f1886896128a590919063ffffffff16565b90506000612f2f87896128a590919063ffffffff16565b90506000612f5882612f4a8587612d1190919063ffffffff16565b612d1190919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081359050612f8081613e46565b92915050565b600081519050612f9581613e46565b92915050565b600081519050612faa81613e5d565b92915050565b600081359050612fbf81613e74565b92915050565b600081519050612fd481613e74565b92915050565b600060208284031215612fec57600080fd5b6000612ffa84828501612f71565b91505092915050565b60006020828403121561301557600080fd5b600061302384828501612f86565b91505092915050565b6000806040838503121561303f57600080fd5b600061304d85828601612f71565b925050602061305e85828601612f71565b9150509250929050565b60008060006060848603121561307d57600080fd5b600061308b86828701612f71565b935050602061309c86828701612f71565b92505060406130ad86828701612fb0565b9150509250925092565b600080604083850312156130ca57600080fd5b60006130d885828601612f71565b92505060206130e985828601612fb0565b9150509250929050565b60006020828403121561310557600080fd5b600061311384828501612f9b565b91505092915050565b60008060006060848603121561313157600080fd5b600061313f86828701612fc5565b935050602061315086828701612fc5565b925050604061316186828701612fc5565b9150509250925092565b60006131778383613192565b60208301905092915050565b61318c816139a2565b82525050565b61319b8161394d565b82525050565b6131aa8161394d565b82525050565b60006131bb826137f3565b6131c58185613816565b93506131d0836137e3565b8060005b838110156132015781516131e8888261316b565b97506131f383613809565b9250506001810190506131d4565b5085935050505092915050565b6132178161395f565b82525050565b613226816139b4565b82525050565b6000613237826137fe565b6132418185613827565b93506132518185602086016139ea565b61325a81613a7b565b840191505092915050565b6000613272602383613827565b915061327d82613a8c565b604082019050919050565b6000613295602a83613827565b91506132a082613adb565b604082019050919050565b60006132b8602283613827565b91506132c382613b2a565b604082019050919050565b60006132db602283613827565b91506132e682613b79565b604082019050919050565b60006132fe601b83613827565b915061330982613bc8565b602082019050919050565b6000613321602383613827565b915061332c82613bf1565b604082019050919050565b6000613344602183613827565b915061334f82613c40565b604082019050919050565b6000613367602083613827565b915061337282613c8f565b602082019050919050565b600061338a602983613827565b915061339582613cb8565b604082019050919050565b60006133ad602583613827565b91506133b882613d07565b604082019050919050565b60006133d0602783613827565b91506133db82613d56565b604082019050919050565b60006133f3602483613827565b91506133fe82613da5565b604082019050919050565b6000613416601783613827565b915061342182613df4565b602082019050919050565b6000613439601883613827565b915061344482613e1d565b602082019050919050565b6134588161398b565b82525050565b61346781613995565b82525050565b600060208201905061348260008301846131a1565b92915050565b600060208201905061349d6000830184613183565b92915050565b60006040820190506134b860008301856131a1565b6134c560208301846131a1565b9392505050565b60006040820190506134e160008301856131a1565b6134ee602083018461344f565b9392505050565b600060c08201905061350a60008301896131a1565b613517602083018861344f565b613524604083018761321d565b613531606083018661321d565b61353e60808301856131a1565b61354b60a083018461344f565b979650505050505050565b600060208201905061356b600083018461320e565b92915050565b6000602082019050818103600083015261358b818461322c565b905092915050565b600060208201905081810360008301526135ac81613265565b9050919050565b600060208201905081810360008301526135cc81613288565b9050919050565b600060208201905081810360008301526135ec816132ab565b9050919050565b6000602082019050818103600083015261360c816132ce565b9050919050565b6000602082019050818103600083015261362c816132f1565b9050919050565b6000602082019050818103600083015261364c81613314565b9050919050565b6000602082019050818103600083015261366c81613337565b9050919050565b6000602082019050818103600083015261368c8161335a565b9050919050565b600060208201905081810360008301526136ac8161337d565b9050919050565b600060208201905081810360008301526136cc816133a0565b9050919050565b600060208201905081810360008301526136ec816133c3565b9050919050565b6000602082019050818103600083015261370c816133e6565b9050919050565b6000602082019050818103600083015261372c81613409565b9050919050565b6000602082019050818103600083015261374c8161342c565b9050919050565b6000602082019050613768600083018461344f565b92915050565b600060a082019050613783600083018861344f565b613790602083018761321d565b81810360408301526137a281866131b0565b90506137b160608301856131a1565b6137be608083018461344f565b9695505050505050565b60006020820190506137dd600083018461345e565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006138438261398b565b915061384e8361398b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561388357613882613a1d565b5b828201905092915050565b60006138998261398b565b91506138a48361398b565b9250826138b4576138b3613a4c565b5b828204905092915050565b60006138ca8261398b565b91506138d58361398b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561390e5761390d613a1d565b5b828202905092915050565b60006139248261398b565b915061392f8361398b565b92508282101561394257613941613a1d565b5b828203905092915050565b60006139588261396b565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006139ad826139c6565b9050919050565b60006139bf8261398b565b9050919050565b60006139d1826139d8565b9050919050565b60006139e38261396b565b9050919050565b60005b83811015613a085780820151818401526020810190506139ed565b83811115613a17576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f596f75722062757920636f6f6c646f776e20686173206e6f742065787069726560008201527f642e000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260008201527f65642e0000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f596f752063616e2774206f776e2074686174206d616e7920746f6b656e73206160008201527f74206f6e63652e00000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b613e4f8161394d565b8114613e5a57600080fd5b50565b613e668161395f565b8114613e7157600080fd5b50565b613e7d8161398b565b8114613e8857600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207b433f59b41c4cd8fe9324cfaa803c487ff4d9ede2b7819edf05e0f0bd293cc964736f6c634300080400330000000000000000000000004594aaf7bfa2074b88c54e733b9ed1c9d3cea0710000000000000000000000000306c5417fa059f54df74af3405161e755aa9a28

Deployed Bytecode

0x6080604052600436106101f25760003560e01c806370eb843b1161010d578063b177f189116100a0578063d7a2a8ad1161006f578063d7a2a8ad146106b6578063dd62ed3e146106e1578063ddf545121461071e578063e63aff6314610735578063e8078d941461074c576101f9565b8063b177f18914610632578063c3c8cd801461065d578063c4a8814f14610674578063c9567bf91461069f576101f9565b8063a1c31bf9116100dc578063a1c31bf914610562578063a9059cbb1461058d578063a985ceef146105ca578063a9fc35a9146105f5576101f9565b806370eb843b146104ca578063715018a6146104f55780638da5cb5b1461050c57806395d89b4114610537576101f9565b8063313ce5671161018557806362b3e1ec1161015457806362b3e1ec1461040e57806368a3a6a5146104395780636fc3eaec1461047657806370a082311461048d576101f9565b8063313ce56714610378578063322a5e5f146103a35780634a81854a146103ce57806350901617146103e5576101f9565b806318160ddd116101c157806318160ddd146102ba57806323b872dd146102e557806326515462146103225780632e82b8f31461034d576101f9565b806306fdde03146101fe5780630802d2f6146102295780630853b3dc14610252578063095ea7b31461027d576101f9565b366101f957005b600080fd5b34801561020a57600080fd5b50610213610763565b6040516102209190613571565b60405180910390f35b34801561023557600080fd5b50610250600480360381019061024b9190612fda565b6107a0565b005b34801561025e57600080fd5b5061026761089e565b604051610274919061346d565b60405180910390f35b34801561028957600080fd5b506102a4600480360381019061029f91906130b7565b6108c8565b6040516102b19190613556565b60405180910390f35b3480156102c657600080fd5b506102cf6108e6565b6040516102dc9190613753565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190613068565b6108f7565b6040516103199190613556565b60405180910390f35b34801561032e57600080fd5b506103376109d0565b6040516103449190613753565b60405180910390f35b34801561035957600080fd5b506103626109da565b60405161036f9190613556565b60405180910390f35b34801561038457600080fd5b5061038d6109f1565b60405161039a91906137c8565b60405180910390f35b3480156103af57600080fd5b506103b86109fa565b6040516103c59190613753565b60405180910390f35b3480156103da57600080fd5b506103e3610a0a565b005b3480156103f157600080fd5b5061040c60048036038101906104079190612fda565b610ace565b005b34801561041a57600080fd5b50610423610bcc565b6040516104309190613753565b60405180910390f35b34801561044557600080fd5b50610460600480360381019061045b9190612fda565b610bd6565b60405161046d9190613753565b60405180910390f35b34801561048257600080fd5b5061048b610c2d565b005b34801561049957600080fd5b506104b460048036038101906104af9190612fda565b610c9f565b6040516104c19190613753565b60405180910390f35b3480156104d657600080fd5b506104df610cf0565b6040516104ec9190613753565b60405180910390f35b34801561050157600080fd5b5061050a610d22565b005b34801561051857600080fd5b50610521610e75565b60405161052e919061346d565b60405180910390f35b34801561054357600080fd5b5061054c610e9e565b6040516105599190613571565b60405180910390f35b34801561056e57600080fd5b50610577610edb565b6040516105849190613556565b60405180910390f35b34801561059957600080fd5b506105b460048036038101906105af91906130b7565b610ee7565b6040516105c19190613556565b60405180910390f35b3480156105d657600080fd5b506105df610f05565b6040516105ec9190613556565b60405180910390f35b34801561060157600080fd5b5061061c60048036038101906106179190612fda565b610f1c565b6040516106299190613753565b60405180910390f35b34801561063e57600080fd5b50610647610f73565b6040516106549190613556565b60405180910390f35b34801561066957600080fd5b50610672610f8a565b005b34801561068057600080fd5b50610689611004565b604051610696919061346d565b60405180910390f35b3480156106ab57600080fd5b506106b461102e565b005b3480156106c257600080fd5b506106cb61111a565b6040516106d89190613753565b60405180910390f35b3480156106ed57600080fd5b506107086004803603810190610703919061302c565b611124565b6040516107159190613753565b60405180910390f35b34801561072a57600080fd5b506107336111ab565b005b34801561074157600080fd5b5061074a61126f565b005b34801561075857600080fd5b50610761611376565b005b60606040518060400160405280600981526020017f535445414d50554e580000000000000000000000000000000000000000000000815250905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107e161188f565b73ffffffffffffffffffffffffffffffffffffffff161461080157600080fd5b80601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f0e96f8986653644392af4a5daec8b04a389af0d497572173e63846ccd26c843c601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040516108939190613488565b60405180910390a150565b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006108dc6108d561188f565b8484611897565b6001905092915050565b6000683635c9adc5dea00000905090565b6000610904848484611a62565b6109c58461091061188f565b6109c085604051806060016040528060288152602001613e8c60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061097661188f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123809092919063ffffffff16565b611897565b600190509392505050565b6000600954905090565b6000601460179054906101000a900460ff16905090565b60006009905090565b6000610a0530610c9f565b905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a4b61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610a6b57600080fd5b6000601460186101000a81548160ff0219169083151502179055507fa0332a09ed075cc53786280bd769d2ddaeb0dab224287b246f7b8753f1fe835f601460189054906101000a900460ff16604051610ac49190613556565b60405180910390a1565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b0f61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610b2f57600080fd5b80601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f96511497113ddf59712b28350d7457b9c300ab227616bd3b451745a395a53014601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051610bc19190613488565b60405180910390a150565b6000601054905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015442610c269190613919565b9050919050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c6e61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610c8e57600080fd5b6000479050610c9c816123e4565b50565b6000610ce9600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124df565b9050919050565b6000610d1d601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c9f565b905090565b610d2a61188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610db7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dae90613673565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600981526020017f535445414d50554e580000000000000000000000000000000000000000000000815250905090565b60006016544210905090565b6000610efb610ef461188f565b8484611a62565b6001905092915050565b6000601460159054906101000a900460ff16905090565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015442610f6c9190613919565b9050919050565b6000601460189054906101000a900460ff16905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fcb61188f565b73ffffffffffffffffffffffffffffffffffffffff1614610feb57600080fd5b6000610ff630610c9f565b90506110018161254d565b50565b6000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61103661188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ba90613673565b60405180910390fd5b60016014806101000a81548160ff0219169083151502179055506078426110ea9190613838565b60158190555061a8c0426110fe9190613838565b601681905550610e10426111129190613838565b600e81905550565b6000600a54905090565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111ec61188f565b73ffffffffffffffffffffffffffffffffffffffff161461120c57600080fd5b6000601460176101000a81548160ff0219169083151502179055507f875ab13664b130e9f02c6927ebda6944d90a0f0db6c0fdb7cc7ec5f85ed630b8601460179054906101000a900460ff166040516112659190613556565b60405180910390a1565b61127761188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611304576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112fb90613673565b60405180910390fd5b601460159054906101000a900460ff1615601460156101000a81548160ff0219169083151502179055507f0d63187a8abb5b4d1bb562e1163897386b0a88ee72e0799dd105bd0fd6f28706601460159054906101000a900460ff1660405161136c9190613556565b60405180910390a1565b61137e61188f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461140b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140290613673565b60405180910390fd5b60148054906101000a900460ff1615611459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145090613713565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506114e930601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea00000611897565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561152f57600080fd5b505afa158015611543573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115679190613003565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156115c957600080fd5b505afa1580156115dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116019190613003565b6040518363ffffffff1660e01b815260040161161e9291906134a3565b602060405180830381600087803b15801561163857600080fd5b505af115801561164c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116709190613003565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306116f930610c9f565b600080611704610e75565b426040518863ffffffff1660e01b8152600401611726969594939291906134f5565b6060604051808303818588803b15801561173f57600080fd5b505af1158015611753573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611778919061311c565b5050506729a2241af62c0000600f819055506804e1003b28d9280000601081905550601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016118399291906134cc565b602060405180830381600087803b15801561185357600080fd5b505af1158015611867573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188b91906130f3565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611907576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fe906136f3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611977576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196e906135d3565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611a559190613753565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611ad2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac9906136b3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3990613593565b60405180910390fd5b60008111611b85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7c90613693565b60405180910390fd5b600060019050611b93610e75565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611c015750611bd1610e75565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561227d57601460159054906101000a900460ff1615611d0757600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160009054906101000a900460ff16611d06576040518060600160405280600081526020016000815260200160011515815250600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611db25750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611e085750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156120455760066009819055506004600a8190555060148054906101000a900460ff16611e6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6190613733565b60405180910390fd5b426016541115611ed457601054611e92611e8385610c9f565b8461284790919063ffffffff16565b1115611ed3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eca906136d3565b60405180910390fd5b5b601460159054906101000a900460ff1615611fdb57426015541115611fda57600f54821115611f0257600080fd5b42600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410611f86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7d906135f3565b60405180910390fd5b602d42611f939190613838565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001819055505b5b601460159054906101000a900460ff161561204457600f42611ffd9190613838565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b5b600061205030610c9f565b9050601460169054906101000a900460ff161580156120bd5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156120d3575060148054906101000a900460ff165b1561227b576001915060066009819055506004600a8190555042600e54111561210657600980819055506006600a819055505b601460159054906101000a900460ff16156121a05742600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541061219f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161219690613633565b60405180910390fd5b5b6000811115612261576121fb60646121ed600b546121df601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c9f565b6128a590919063ffffffff16565b61292090919063ffffffff16565b811115612257576122546064612246600b54612238601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610c9f565b6128a590919063ffffffff16565b61292090919063ffffffff16565b90505b6122608161254d565b5b6000479050600081111561227957612278476123e4565b5b505b505b601460189054906101000a900460ff1615801561229d57506000600a5414155b156122ab576000600a819055505b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061234c5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806123645750601460179054906101000a900460ff16155b1561236e57600090505b61237a8484848461296a565b50505050565b60008383111582906123c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123bf9190613571565b60405180910390fd5b50600083856123d79190613919565b9050809150509392505050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc61243460028461292090919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561245f573d6000803e3d6000fd5b50601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6124b060028461292090919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156124db573d6000803e3d6000fd5b5050565b6000600754821115612526576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161251d906135b3565b60405180910390fd5b6000612530612997565b9050612545818461292090919063ffffffff16565b915050919050565b6001601460166101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156125ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156125d95781602001602082028036833780820191505090505b5090503081600081518110612617577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156126b957600080fd5b505afa1580156126cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126f19190613003565b8160018151811061272b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061279230601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611897565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016127f695949392919061376e565b600060405180830381600087803b15801561281057600080fd5b505af1158015612824573d6000803e3d6000fd5b50505050506000601460166101000a81548160ff02191690831515021790555050565b60008082846128569190613838565b90508381101561289b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161289290613613565b60405180910390fd5b8091505092915050565b6000808314156128b8576000905061291a565b600082846128c691906138bf565b90508284826128d5919061388e565b14612915576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161290c90613653565b60405180910390fd5b809150505b92915050565b600061296283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506129c2565b905092915050565b8061297857612977612a25565b5b612983848484612a68565b8061299157612990612c33565b5b50505050565b60008060006129a4612c47565b915091506129bb818361292090919063ffffffff16565b9250505090565b60008083118290612a09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a009190613571565b60405180910390fd5b5060008385612a18919061388e565b9050809150509392505050565b6000600954148015612a3957506000600a54145b15612a4357612a66565b600954600c81905550600a54600d8190555060006009819055506000600a819055505b565b600080600080600080612a7a87612ca9565b955095509550955095509550612ad886600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612d1190919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b6d85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284790919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612bb981612d5b565b612bc38483612e18565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051612c209190613753565b60405180910390a3505050505050505050565b600c54600981905550600d54600a81905550565b600080600060075490506000683635c9adc5dea000009050612c7d683635c9adc5dea0000060075461292090919063ffffffff16565b821015612c9c57600754683635c9adc5dea00000935093505050612ca5565b81819350935050505b9091565b6000806000806000806000806000612cc68a600954600a54612e52565b9250925092506000612cd6612997565b90506000806000612ce98e878787612ee8565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000612d5383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612380565b905092915050565b6000612d65612997565b90506000612d7c82846128a590919063ffffffff16565b9050612dd081600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284790919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612e2d82600754612d1190919063ffffffff16565b600781905550612e488160085461284790919063ffffffff16565b6008819055505050565b600080600080612e7e6064612e70888a6128a590919063ffffffff16565b61292090919063ffffffff16565b90506000612ea86064612e9a888b6128a590919063ffffffff16565b61292090919063ffffffff16565b90506000612ed182612ec3858c612d1190919063ffffffff16565b612d1190919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612f0185896128a590919063ffffffff16565b90506000612f1886896128a590919063ffffffff16565b90506000612f2f87896128a590919063ffffffff16565b90506000612f5882612f4a8587612d1190919063ffffffff16565b612d1190919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081359050612f8081613e46565b92915050565b600081519050612f9581613e46565b92915050565b600081519050612faa81613e5d565b92915050565b600081359050612fbf81613e74565b92915050565b600081519050612fd481613e74565b92915050565b600060208284031215612fec57600080fd5b6000612ffa84828501612f71565b91505092915050565b60006020828403121561301557600080fd5b600061302384828501612f86565b91505092915050565b6000806040838503121561303f57600080fd5b600061304d85828601612f71565b925050602061305e85828601612f71565b9150509250929050565b60008060006060848603121561307d57600080fd5b600061308b86828701612f71565b935050602061309c86828701612f71565b92505060406130ad86828701612fb0565b9150509250925092565b600080604083850312156130ca57600080fd5b60006130d885828601612f71565b92505060206130e985828601612fb0565b9150509250929050565b60006020828403121561310557600080fd5b600061311384828501612f9b565b91505092915050565b60008060006060848603121561313157600080fd5b600061313f86828701612fc5565b935050602061315086828701612fc5565b925050604061316186828701612fc5565b9150509250925092565b60006131778383613192565b60208301905092915050565b61318c816139a2565b82525050565b61319b8161394d565b82525050565b6131aa8161394d565b82525050565b60006131bb826137f3565b6131c58185613816565b93506131d0836137e3565b8060005b838110156132015781516131e8888261316b565b97506131f383613809565b9250506001810190506131d4565b5085935050505092915050565b6132178161395f565b82525050565b613226816139b4565b82525050565b6000613237826137fe565b6132418185613827565b93506132518185602086016139ea565b61325a81613a7b565b840191505092915050565b6000613272602383613827565b915061327d82613a8c565b604082019050919050565b6000613295602a83613827565b91506132a082613adb565b604082019050919050565b60006132b8602283613827565b91506132c382613b2a565b604082019050919050565b60006132db602283613827565b91506132e682613b79565b604082019050919050565b60006132fe601b83613827565b915061330982613bc8565b602082019050919050565b6000613321602383613827565b915061332c82613bf1565b604082019050919050565b6000613344602183613827565b915061334f82613c40565b604082019050919050565b6000613367602083613827565b915061337282613c8f565b602082019050919050565b600061338a602983613827565b915061339582613cb8565b604082019050919050565b60006133ad602583613827565b91506133b882613d07565b604082019050919050565b60006133d0602783613827565b91506133db82613d56565b604082019050919050565b60006133f3602483613827565b91506133fe82613da5565b604082019050919050565b6000613416601783613827565b915061342182613df4565b602082019050919050565b6000613439601883613827565b915061344482613e1d565b602082019050919050565b6134588161398b565b82525050565b61346781613995565b82525050565b600060208201905061348260008301846131a1565b92915050565b600060208201905061349d6000830184613183565b92915050565b60006040820190506134b860008301856131a1565b6134c560208301846131a1565b9392505050565b60006040820190506134e160008301856131a1565b6134ee602083018461344f565b9392505050565b600060c08201905061350a60008301896131a1565b613517602083018861344f565b613524604083018761321d565b613531606083018661321d565b61353e60808301856131a1565b61354b60a083018461344f565b979650505050505050565b600060208201905061356b600083018461320e565b92915050565b6000602082019050818103600083015261358b818461322c565b905092915050565b600060208201905081810360008301526135ac81613265565b9050919050565b600060208201905081810360008301526135cc81613288565b9050919050565b600060208201905081810360008301526135ec816132ab565b9050919050565b6000602082019050818103600083015261360c816132ce565b9050919050565b6000602082019050818103600083015261362c816132f1565b9050919050565b6000602082019050818103600083015261364c81613314565b9050919050565b6000602082019050818103600083015261366c81613337565b9050919050565b6000602082019050818103600083015261368c8161335a565b9050919050565b600060208201905081810360008301526136ac8161337d565b9050919050565b600060208201905081810360008301526136cc816133a0565b9050919050565b600060208201905081810360008301526136ec816133c3565b9050919050565b6000602082019050818103600083015261370c816133e6565b9050919050565b6000602082019050818103600083015261372c81613409565b9050919050565b6000602082019050818103600083015261374c8161342c565b9050919050565b6000602082019050613768600083018461344f565b92915050565b600060a082019050613783600083018861344f565b613790602083018761321d565b81810360408301526137a281866131b0565b90506137b160608301856131a1565b6137be608083018461344f565b9695505050505050565b60006020820190506137dd600083018461345e565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006138438261398b565b915061384e8361398b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561388357613882613a1d565b5b828201905092915050565b60006138998261398b565b91506138a48361398b565b9250826138b4576138b3613a4c565b5b828204905092915050565b60006138ca8261398b565b91506138d58361398b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561390e5761390d613a1d565b5b828202905092915050565b60006139248261398b565b915061392f8361398b565b92508282101561394257613941613a1d565b5b828203905092915050565b60006139588261396b565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006139ad826139c6565b9050919050565b60006139bf8261398b565b9050919050565b60006139d1826139d8565b9050919050565b60006139e38261396b565b9050919050565b60005b83811015613a085780820151818401526020810190506139ed565b83811115613a17576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f596f75722062757920636f6f6c646f776e20686173206e6f742065787069726560008201527f642e000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260008201527f65642e0000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f596f752063616e2774206f776e2074686174206d616e7920746f6b656e73206160008201527f74206f6e63652e00000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f742079657420656e61626c65642e0000000000000000600082015250565b613e4f8161394d565b8114613e5a57600080fd5b50565b613e668161395f565b8114613e7157600080fd5b50565b613e7d8161398b565b8114613e8857600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207b433f59b41c4cd8fe9324cfaa803c487ff4d9ede2b7819edf05e0f0bd293cc964736f6c63430008040033

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

0000000000000000000000004594aaf7bfa2074b88c54e733b9ed1c9d3cea0710000000000000000000000000306c5417fa059f54df74af3405161e755aa9a28

-----Decoded View---------------
Arg [0] : feeAddress1 (address): 0x4594aaf7BFA2074B88C54e733b9Ed1c9D3cEa071
Arg [1] : feeAddress2 (address): 0x0306c5417FA059F54dF74Af3405161E755aA9a28

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000004594aaf7bfa2074b88c54e733b9ed1c9d3cea071
Arg [1] : 0000000000000000000000000306c5417fa059f54df74af3405161e755aa9a28


Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.