ETH Price: $2,597.20 (-2.62%)
Gas: 1 Gwei

Token

SatoruTama (SATORUTAMA)
 

Overview

Max Total Supply

1,000,000,000 SATORUTAMA

Holders

48

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,090,127.935509956 SATORUTAMA

Value
$0.00
0x4d68b74b421373d9c68c28f9386de78d1ec8298f
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:
SATORUTAMA

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

//SPDX-License-Identifier: UNLICENSED
//TG: t.me/satorutama
pragma solidity ^0.8.10;

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

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 SATORUTAMA is Context, IERC20, Ownable {
    mapping (address => uint) private _owned;
    mapping (address => mapping (address => uint)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private _isBot;
    mapping (address => User) private cooldown;
    uint private constant _totalSupply = 1e9 * 10**9;

    string public constant name = unicode"SatoruTama";
    string public constant symbol = unicode"SATORUTAMA";
    uint8 public constant decimals = 9;

    IUniswapV2Router02 private uniswapV2Router;

    address payable public _TaxAdd;
    address public uniswapV2Pair;
    uint public _buyFee = 12;
    uint public _sellFee = 12;
    uint private _feeRate = 15;
    uint public _maxBuyAmount;
    uint public _maxHeldTokens;
    uint public _launchedAt;
    bool private _tradingOpen;
    bool private _inSwap = false;
    bool public _useImpactFeeSetter = false;

    struct User {
        uint buy;
        bool exists;
    }

    event FeeMultiplierUpdated(uint _multiplier);
    event ImpactFeeSetterUpdated(bool _usefeesetter);
    event FeeRateUpdated(uint _rate);
    event FeesUpdated(uint _buy, uint _sell);
    event TaxAddUpdated(address _taxwallet);
    
    modifier lockTheSwap {
        _inSwap = true;
        _;
        _inSwap = false;
    }
    constructor (address payable TaxAdd) {
        _TaxAdd = TaxAdd;
        _owned[address(this)] = _totalSupply;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[TaxAdd] = true;
        emit Transfer(address(0), address(this), _totalSupply);
    }

    function balanceOf(address account) public view override returns (uint) {
        return _owned[account];
    }
    function transfer(address recipient, uint amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    
    function totalSupply() public pure override returns (uint) {
        return _totalSupply;
    }

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

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

    function transferFrom(address sender, address recipient, uint amount) public override returns (bool) {

        _transfer(sender, recipient, amount);
        uint allowedAmount = _allowances[sender][_msgSender()] - amount;
        _approve(sender, _msgSender(), allowedAmount);
        return true;
    }

    function _approve(address owner, address spender, uint 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, uint amount) private {
        require(!_isBot[from] && !_isBot[to] && !_isBot[msg.sender]);
        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");
        bool isBuy = false;
        if(from != owner() && to != owner()) {
            if(from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) {
                require(_tradingOpen, "Trading not yet enabled.");
                if (block.timestamp == _launchedAt) _isBot[to] = true;
                if((_launchedAt + (3 minutes)) > block.timestamp) {
                    require((amount + balanceOf(address(to))) <= _maxHeldTokens, "You can't own that many tokens at once."); 
                }
                if(!cooldown[to].exists) {
                    cooldown[to] = User(0,true);
                }
                if((_launchedAt + (3 minutes)) > block.timestamp) {
                    require(amount <= _maxBuyAmount, "Exceeds maximum buy amount.");
                    require(cooldown[to].buy < block.timestamp + (30 seconds), "Your buy cooldown has not expired.");
                }
                cooldown[to].buy = block.timestamp;
                isBuy = true;
            }
            if(!_inSwap && _tradingOpen && from != uniswapV2Pair) {
                require(cooldown[from].buy < block.timestamp + (15 seconds), "Your sell cooldown has not expired.");
                uint contractTokenBalance = balanceOf(address(this));
                if(contractTokenBalance > 0) {
                    if(_useImpactFeeSetter) {
                        if(contractTokenBalance > (balanceOf(uniswapV2Pair) * _feeRate) / 100) {
                            contractTokenBalance = (balanceOf(uniswapV2Pair) * _feeRate) / 100;
                        }
                    }
                    uint burnAmount = contractTokenBalance/20;
                    contractTokenBalance -= burnAmount;
                    burnToken(burnAmount);
                    swapTokensForEth(contractTokenBalance);
                }
                uint contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                isBuy = false;
            }
        }
        bool takeFee = true;
        if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
            takeFee = false;
        }
        _tokenTransfer(from,to,amount,takeFee,isBuy);
    }

    function burnToken (uint burnAmount) private lockTheSwap{
        _transfer(address(this), address(0xdead),burnAmount);

    }


    function swapTokensForEth(uint 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(uint amount) private {
        _TaxAdd.transfer(amount);
    }
    
    function _tokenTransfer(address sender, address recipient, uint amount, bool takefee, bool buy) private {
        (uint fee) = _getFee(takefee, buy);
        _transferStandard(sender, recipient, amount, fee);
    }

    function _getFee(bool takefee, bool buy) private view returns (uint) {
        uint fee = 0;
        if(takefee) {
            if(buy) {
                fee = _buyFee;
            } else {
                fee = _sellFee;
            }
        }
        return fee;
    }

    function _transferStandard(address sender, address recipient, uint amount, uint fee) private {
        (uint transferAmount, uint team) = _getValues(amount, fee);
        _owned[sender] = _owned[sender] - amount;
        _owned[recipient] = _owned[recipient] + transferAmount; 
        _takeTeam(team);
        emit Transfer(sender, recipient, transferAmount);
    }

    function _getValues(uint amount, uint teamFee) private pure returns (uint, uint) {
        uint team = (amount * teamFee) / 100;
        uint transferAmount = amount - team;
        return (transferAmount, team);
    }

    function _takeTeam(uint team) private {
        _owned[address(this)] = _owned[address(this)] + team;
    }

    receive() external payable {}
    
    // external functions
    function addLiquidity() external onlyOwner() {
        require(!_tradingOpen, "Trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _totalSupply);
        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);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function openTrading() external onlyOwner() {
        require(!_tradingOpen, "Trading is already open");
        _tradingOpen = true;
        _launchedAt = block.timestamp;
        _maxBuyAmount = 20000000 * 10**9; 
        _maxHeldTokens = 20000000 * 10**9; 
    }

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

    function setFeeRate(uint rate) external {
        require(_msgSender() == _TaxAdd);
        require(rate > 0, "can't be zero");
        _feeRate = rate;
        emit FeeRateUpdated(_feeRate);
    }

    function setFees(uint buy, uint sell) external {
        require(_msgSender() == _TaxAdd);
        require(buy < 12 && sell < 12 && buy < _buyFee && sell < _sellFee);
        _buyFee = buy;
        _sellFee = sell;
        emit FeesUpdated(_buyFee, _sellFee);
    }

    function toggleImpactFee(bool onoff) external {
        require(_msgSender() == _TaxAdd);
        _useImpactFeeSetter = onoff;
        emit ImpactFeeSetterUpdated(_useImpactFeeSetter);
    }

    function updateTaxAdd(address newAddress) external {
        require(_msgSender() == _TaxAdd);
        _TaxAdd = payable(newAddress);
        emit TaxAddUpdated(_TaxAdd);
    }

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

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


    function setBots(address[] memory bots_) external onlyOwner() {
        for (uint i = 0; i < bots_.length; i++) {
            if (bots_[i] != uniswapV2Pair && bots_[i] != address(uniswapV2Router)) {
                _isBot[bots_[i]] = true;
            }
        }
    }
    function delBots(address[] memory bots_) external {
        require(_msgSender() == _TaxAdd);
        for (uint i = 0; i < bots_.length; i++) {
            _isBot[bots_[i]] = false;
        }
    }

    function isBot(address ad) public view returns (bool) {
        return _isBot[ad];
    }
    

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"TaxAdd","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":"uint256","name":"_multiplier","type":"uint256"}],"name":"FeeMultiplierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_rate","type":"uint256"}],"name":"FeeRateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_buy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_sell","type":"uint256"}],"name":"FeesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_usefeesetter","type":"bool"}],"name":"ImpactFeeSetterUpdated","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":"address","name":"_taxwallet","type":"address"}],"name":"TaxAddUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_TaxAdd","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxBuyAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxHeldTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_useImpactFeeSetter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"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":[],"name":"amountInPool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ad","type":"address"}],"name":"isBot","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":"view","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":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"rate","type":"uint256"}],"name":"setFeeRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buy","type":"uint256"},{"internalType":"uint256","name":"sell","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"thisBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"toggleImpactFee","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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateTaxAdd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600c600a819055600b819055600f90556010805462ffff00191690553480156200002d57600080fd5b506040516200208e3803806200208e833981016040819052620000509162000183565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600880546001600160a01b0319166001600160a01b038316179055306000908152600260205260408120670de0b6b3a76400009055600190600490620000df6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530808252600490945282812080548616600190811790915591861681528281208054909516909117909355519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906200017490670de0b6b3a7640000815260200190565b60405180910390a350620001b5565b6000602082840312156200019657600080fd5b81516001600160a01b0381168114620001ae57600080fd5b9392505050565b611ec980620001c56000396000f3fe6080604052600436106101e75760003560e01c8063590f897e11610102578063a9059cbb11610095578063db92dbb611610064578063db92dbb614610599578063dcb0e0ad146105ae578063dd62ed3e146105ce578063e8078d941461061457600080fd5b8063a9059cbb1461052f578063b515566a1461054f578063c3c8cd801461056f578063c9567bf91461058457600080fd5b806373f54a11116100d157806373f54a111461049b5780638da5cb5b146104bb57806394b8d8f2146104d957806395d89b41146104f957600080fd5b8063590f897e1461043b5780636fc3eaec1461045157806370a0823114610466578063715018a61461048657600080fd5b806327f3a72a1161017a5780633bbac579116101495780633bbac579146103ac57806340b9a54b146103e557806345596e2e146103fb57806349bd5a5e1461041b57600080fd5b806327f3a72a1461033a578063313ce5671461034f57806331c2d8471461037657806332d873d81461039657600080fd5b8063104ce66d116101b6578063104ce66d146102b157806318160ddd146102e95780631940d0201461030457806323b872dd1461031a57600080fd5b80630492f055146101f357806306fdde031461021c578063095ea7b31461025f5780630b78f9c01461028f57600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b50610209600d5481565b6040519081526020015b60405180910390f35b34801561022857600080fd5b506102526040518060400160405280600a8152602001695361746f727554616d6160b01b81525081565b6040516102139190611a50565b34801561026b57600080fd5b5061027f61027a366004611aca565b610629565b6040519015158152602001610213565b34801561029b57600080fd5b506102af6102aa366004611af6565b61063f565b005b3480156102bd57600080fd5b506008546102d1906001600160a01b031681565b6040516001600160a01b039091168152602001610213565b3480156102f557600080fd5b50670de0b6b3a7640000610209565b34801561031057600080fd5b50610209600e5481565b34801561032657600080fd5b5061027f610335366004611b18565b6106d9565b34801561034657600080fd5b5061020961072d565b34801561035b57600080fd5b50610364600981565b60405160ff9091168152602001610213565b34801561038257600080fd5b506102af610391366004611b6f565b61073d565b3480156103a257600080fd5b50610209600f5481565b3480156103b857600080fd5b5061027f6103c7366004611c34565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156103f157600080fd5b50610209600a5481565b34801561040757600080fd5b506102af610416366004611c51565b6107c9565b34801561042757600080fd5b506009546102d1906001600160a01b031681565b34801561044757600080fd5b50610209600b5481565b34801561045d57600080fd5b506102af61086a565b34801561047257600080fd5b50610209610481366004611c34565b610897565b34801561049257600080fd5b506102af6108b2565b3480156104a757600080fd5b506102af6104b6366004611c34565b610926565b3480156104c757600080fd5b506000546001600160a01b03166102d1565b3480156104e557600080fd5b5060105461027f9062010000900460ff1681565b34801561050557600080fd5b506102526040518060400160405280600a8152602001695341544f525554414d4160b01b81525081565b34801561053b57600080fd5b5061027f61054a366004611aca565b610994565b34801561055b57600080fd5b506102af61056a366004611b6f565b6109a1565b34801561057b57600080fd5b506102af610aba565b34801561059057600080fd5b506102af610af0565b3480156105a557600080fd5b50610209610b8a565b3480156105ba57600080fd5b506102af6105c9366004611c78565b610ba2565b3480156105da57600080fd5b506102096105e9366004611c95565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561062057600080fd5b506102af610c15565b6000610636338484610f5b565b50600192915050565b6008546001600160a01b0316336001600160a01b03161461065f57600080fd5b600c8210801561066f5750600c81105b801561067c5750600a5482105b80156106895750600b5481105b61069257600080fd5b600a829055600b81905560408051838152602081018390527f5c6323bf1c2d7aaea2c091a4751c1c87af7f2864650c336507a77d0557af37a1910160405180910390a15050565b60006106e684848461107f565b6001600160a01b0384166000908152600360209081526040808320338452909152812054610715908490611ce4565b9050610722853383610f5b565b506001949350505050565b600061073830610897565b905090565b6008546001600160a01b0316336001600160a01b03161461075d57600080fd5b60005b81518110156107c55760006005600084848151811061078157610781611cfb565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806107bd81611d11565b915050610760565b5050565b6008546001600160a01b0316336001600160a01b0316146107e957600080fd5b6000811161082e5760405162461bcd60e51b815260206004820152600d60248201526c63616e2774206265207a65726f60981b60448201526064015b60405180910390fd5b600c8190556040518181527f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd8906020015b60405180910390a150565b6008546001600160a01b0316336001600160a01b03161461088a57600080fd5b47610894816116f3565b50565b6001600160a01b031660009081526002602052604090205490565b6000546001600160a01b031633146108dc5760405162461bcd60e51b815260040161082590611d2c565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6008546001600160a01b0316336001600160a01b03161461094657600080fd5b600880546001600160a01b0319166001600160a01b0383169081179091556040519081527f5a9bcd8aea0cbf27de081c73815e420f65287b49bcf7a17ff691c61a2dd2d2d69060200161085f565b600061063633848461107f565b6000546001600160a01b031633146109cb5760405162461bcd60e51b815260040161082590611d2c565b60005b81518110156107c55760095482516001600160a01b03909116908390839081106109fa576109fa611cfb565b60200260200101516001600160a01b031614158015610a4b575060075482516001600160a01b0390911690839083908110610a3757610a37611cfb565b60200260200101516001600160a01b031614155b15610aa857600160056000848481518110610a6857610a68611cfb565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055505b80610ab281611d11565b9150506109ce565b6008546001600160a01b0316336001600160a01b031614610ada57600080fd5b6000610ae530610897565b90506108948161172d565b6000546001600160a01b03163314610b1a5760405162461bcd60e51b815260040161082590611d2c565b60105460ff1615610b675760405162461bcd60e51b81526020600482015260176024820152762a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610825565b6010805460ff1916600117905542600f5566470de4df820000600d819055600e55565b600954600090610738906001600160a01b0316610897565b6008546001600160a01b0316336001600160a01b031614610bc257600080fd5b6010805462ff00001916620100008315158102919091179182905560405160ff9190920416151581527ff65c78d1059dbb9ec90732848bcfebbec05ac40af847d3c19adcad63379d3aeb9060200161085f565b6000546001600160a01b03163314610c3f5760405162461bcd60e51b815260040161082590611d2c565b60105460ff1615610c8c5760405162461bcd60e51b81526020600482015260176024820152762a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610825565b600780546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610cc83082670de0b6b3a7640000610f5b565b806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2a9190611d61565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9b9190611d61565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e0c9190611d61565b600980546001600160a01b0319166001600160a01b039283161790556007541663f305d7194730610e3c81610897565b600080610e516000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610eb9573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ede9190611d7e565b505060095460075460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610f37573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190611dac565b6001600160a01b038316610fbd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610825565b6001600160a01b03821661101e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610825565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526005602052604090205460ff161580156110c157506001600160a01b03821660009081526005602052604090205460ff16155b80156110dd57503360009081526005602052604090205460ff16155b6110e657600080fd5b6001600160a01b03831661114a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610825565b6001600160a01b0382166111ac5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610825565b6000811161120e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610825565b600080546001600160a01b0385811691161480159061123b57506000546001600160a01b03848116911614155b15611694576009546001600160a01b03858116911614801561126b57506007546001600160a01b03848116911614155b801561129057506001600160a01b03831660009081526004602052604090205460ff16155b1561150a5760105460ff166112e75760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e00000000000000006044820152606401610825565b600f54421415611315576001600160a01b0383166000908152600560205260409020805460ff191660011790555b42600f5460b46113259190611dc9565b111561139f57600e5461133784610897565b6113419084611dc9565b111561139f5760405162461bcd60e51b815260206004820152602760248201527f596f752063616e2774206f776e2074686174206d616e7920746f6b656e7320616044820152663a1037b731b29760c91b6064820152608401610825565b6001600160a01b03831660009081526006602052604090206001015460ff16611407576040805180820182526000808252600160208084018281526001600160a01b03891684526006909152939091209151825591519101805460ff19169115159190911790555b42600f5460b46114179190611dc9565b11156114eb57600d5482111561146f5760405162461bcd60e51b815260206004820152601b60248201527f45786365656473206d6178696d756d2062757920616d6f756e742e00000000006044820152606401610825565b61147a42601e611dc9565b6001600160a01b038416600090815260066020526040902054106114eb5760405162461bcd60e51b815260206004820152602260248201527f596f75722062757920636f6f6c646f776e20686173206e6f7420657870697265604482015261321760f11b6064820152608401610825565b506001600160a01b038216600090815260066020526040902042905560015b601054610100900460ff16158015611524575060105460ff165b801561153e57506009546001600160a01b03858116911614155b156116945761154e42600f611dc9565b6001600160a01b038516600090815260066020526040902054106115c05760405162461bcd60e51b815260206004820152602360248201527f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260448201526232b21760e91b6064820152608401610825565b60006115cb30610897565b9050801561167d5760105462010000900460ff161561164e57600c5460095460649190611600906001600160a01b0316610897565b61160a9190611de1565b6116149190611e00565b81111561164e57600c5460095460649190611637906001600160a01b0316610897565b6116419190611de1565b61164b9190611e00565b90505b600061165b601483611e00565b90506116678183611ce4565b9150611672816118a1565b61167b8261172d565b505b47801561168d5761168d476116f3565b6000925050505b6001600160a01b03841660009081526004602052604090205460019060ff16806116d657506001600160a01b03841660009081526004602052604090205460ff165b156116df575060005b6116ec85858584866118cb565b5050505050565b6008546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156107c5573d6000803e3d6000fd5b6010805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061177157611771611cfb565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156117ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ee9190611d61565b8160018151811061180157611801611cfb565b6001600160a01b0392831660209182029290920101526007546118279130911684610f5b565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac94790611860908590600090869030904290600401611e22565b600060405180830381600087803b15801561187a57600080fd5b505af115801561188e573d6000803e3d6000fd5b50506010805461ff001916905550505050565b6010805461ff0019166101001790556118bd3061dead8361107f565b506010805461ff0019169055565b60006118d783836118ed565b90506118e586868684611911565b505050505050565b600080831561190a5782156119055750600a5461190a565b50600b545b9392505050565b60008061191e84846119ee565b6001600160a01b0388166000908152600260205260409020549193509150611947908590611ce4565b6001600160a01b038088166000908152600260205260408082209390935590871681522054611977908390611dc9565b6001600160a01b03861660009081526002602052604090205561199981611a22565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516119de91815260200190565b60405180910390a3505050505050565b6000808060646119fe8587611de1565b611a089190611e00565b90506000611a168287611ce4565b96919550909350505050565b30600090815260026020526040902054611a3d908290611dc9565b3060009081526002602052604090205550565b600060208083528351808285015260005b81811015611a7d57858101830151858201604001528201611a61565b81811115611a8f576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461089457600080fd5b8035611ac581611aa5565b919050565b60008060408385031215611add57600080fd5b8235611ae881611aa5565b946020939093013593505050565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b600080600060608486031215611b2d57600080fd5b8335611b3881611aa5565b92506020840135611b4881611aa5565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611b8257600080fd5b823567ffffffffffffffff80821115611b9a57600080fd5b818501915085601f830112611bae57600080fd5b813581811115611bc057611bc0611b59565b8060051b604051601f19603f83011681018181108582111715611be557611be5611b59565b604052918252848201925083810185019188831115611c0357600080fd5b938501935b82851015611c2857611c1985611aba565b84529385019392850192611c08565b98975050505050505050565b600060208284031215611c4657600080fd5b813561190a81611aa5565b600060208284031215611c6357600080fd5b5035919050565b801515811461089457600080fd5b600060208284031215611c8a57600080fd5b813561190a81611c6a565b60008060408385031215611ca857600080fd5b8235611cb381611aa5565b91506020830135611cc381611aa5565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600082821015611cf657611cf6611cce565b500390565b634e487b7160e01b600052603260045260246000fd5b6000600019821415611d2557611d25611cce565b5060010190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611d7357600080fd5b815161190a81611aa5565b600080600060608486031215611d9357600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611dbe57600080fd5b815161190a81611c6a565b60008219821115611ddc57611ddc611cce565b500190565b6000816000190483118215151615611dfb57611dfb611cce565b500290565b600082611e1d57634e487b7160e01b600052601260045260246000fd5b500490565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e725784516001600160a01b031683529383019391830191600101611e4d565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212201c15ddce3c444b4797d03c04ffac93b1012cf60a13a3d283dcb06749014575f164736f6c634300080c0033000000000000000000000000671545dc3787dc665fa2bc312d38cd37293eac1f

Deployed Bytecode

0x6080604052600436106101e75760003560e01c8063590f897e11610102578063a9059cbb11610095578063db92dbb611610064578063db92dbb614610599578063dcb0e0ad146105ae578063dd62ed3e146105ce578063e8078d941461061457600080fd5b8063a9059cbb1461052f578063b515566a1461054f578063c3c8cd801461056f578063c9567bf91461058457600080fd5b806373f54a11116100d157806373f54a111461049b5780638da5cb5b146104bb57806394b8d8f2146104d957806395d89b41146104f957600080fd5b8063590f897e1461043b5780636fc3eaec1461045157806370a0823114610466578063715018a61461048657600080fd5b806327f3a72a1161017a5780633bbac579116101495780633bbac579146103ac57806340b9a54b146103e557806345596e2e146103fb57806349bd5a5e1461041b57600080fd5b806327f3a72a1461033a578063313ce5671461034f57806331c2d8471461037657806332d873d81461039657600080fd5b8063104ce66d116101b6578063104ce66d146102b157806318160ddd146102e95780631940d0201461030457806323b872dd1461031a57600080fd5b80630492f055146101f357806306fdde031461021c578063095ea7b31461025f5780630b78f9c01461028f57600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b50610209600d5481565b6040519081526020015b60405180910390f35b34801561022857600080fd5b506102526040518060400160405280600a8152602001695361746f727554616d6160b01b81525081565b6040516102139190611a50565b34801561026b57600080fd5b5061027f61027a366004611aca565b610629565b6040519015158152602001610213565b34801561029b57600080fd5b506102af6102aa366004611af6565b61063f565b005b3480156102bd57600080fd5b506008546102d1906001600160a01b031681565b6040516001600160a01b039091168152602001610213565b3480156102f557600080fd5b50670de0b6b3a7640000610209565b34801561031057600080fd5b50610209600e5481565b34801561032657600080fd5b5061027f610335366004611b18565b6106d9565b34801561034657600080fd5b5061020961072d565b34801561035b57600080fd5b50610364600981565b60405160ff9091168152602001610213565b34801561038257600080fd5b506102af610391366004611b6f565b61073d565b3480156103a257600080fd5b50610209600f5481565b3480156103b857600080fd5b5061027f6103c7366004611c34565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156103f157600080fd5b50610209600a5481565b34801561040757600080fd5b506102af610416366004611c51565b6107c9565b34801561042757600080fd5b506009546102d1906001600160a01b031681565b34801561044757600080fd5b50610209600b5481565b34801561045d57600080fd5b506102af61086a565b34801561047257600080fd5b50610209610481366004611c34565b610897565b34801561049257600080fd5b506102af6108b2565b3480156104a757600080fd5b506102af6104b6366004611c34565b610926565b3480156104c757600080fd5b506000546001600160a01b03166102d1565b3480156104e557600080fd5b5060105461027f9062010000900460ff1681565b34801561050557600080fd5b506102526040518060400160405280600a8152602001695341544f525554414d4160b01b81525081565b34801561053b57600080fd5b5061027f61054a366004611aca565b610994565b34801561055b57600080fd5b506102af61056a366004611b6f565b6109a1565b34801561057b57600080fd5b506102af610aba565b34801561059057600080fd5b506102af610af0565b3480156105a557600080fd5b50610209610b8a565b3480156105ba57600080fd5b506102af6105c9366004611c78565b610ba2565b3480156105da57600080fd5b506102096105e9366004611c95565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561062057600080fd5b506102af610c15565b6000610636338484610f5b565b50600192915050565b6008546001600160a01b0316336001600160a01b03161461065f57600080fd5b600c8210801561066f5750600c81105b801561067c5750600a5482105b80156106895750600b5481105b61069257600080fd5b600a829055600b81905560408051838152602081018390527f5c6323bf1c2d7aaea2c091a4751c1c87af7f2864650c336507a77d0557af37a1910160405180910390a15050565b60006106e684848461107f565b6001600160a01b0384166000908152600360209081526040808320338452909152812054610715908490611ce4565b9050610722853383610f5b565b506001949350505050565b600061073830610897565b905090565b6008546001600160a01b0316336001600160a01b03161461075d57600080fd5b60005b81518110156107c55760006005600084848151811061078157610781611cfb565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806107bd81611d11565b915050610760565b5050565b6008546001600160a01b0316336001600160a01b0316146107e957600080fd5b6000811161082e5760405162461bcd60e51b815260206004820152600d60248201526c63616e2774206265207a65726f60981b60448201526064015b60405180910390fd5b600c8190556040518181527f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd8906020015b60405180910390a150565b6008546001600160a01b0316336001600160a01b03161461088a57600080fd5b47610894816116f3565b50565b6001600160a01b031660009081526002602052604090205490565b6000546001600160a01b031633146108dc5760405162461bcd60e51b815260040161082590611d2c565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6008546001600160a01b0316336001600160a01b03161461094657600080fd5b600880546001600160a01b0319166001600160a01b0383169081179091556040519081527f5a9bcd8aea0cbf27de081c73815e420f65287b49bcf7a17ff691c61a2dd2d2d69060200161085f565b600061063633848461107f565b6000546001600160a01b031633146109cb5760405162461bcd60e51b815260040161082590611d2c565b60005b81518110156107c55760095482516001600160a01b03909116908390839081106109fa576109fa611cfb565b60200260200101516001600160a01b031614158015610a4b575060075482516001600160a01b0390911690839083908110610a3757610a37611cfb565b60200260200101516001600160a01b031614155b15610aa857600160056000848481518110610a6857610a68611cfb565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055505b80610ab281611d11565b9150506109ce565b6008546001600160a01b0316336001600160a01b031614610ada57600080fd5b6000610ae530610897565b90506108948161172d565b6000546001600160a01b03163314610b1a5760405162461bcd60e51b815260040161082590611d2c565b60105460ff1615610b675760405162461bcd60e51b81526020600482015260176024820152762a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610825565b6010805460ff1916600117905542600f5566470de4df820000600d819055600e55565b600954600090610738906001600160a01b0316610897565b6008546001600160a01b0316336001600160a01b031614610bc257600080fd5b6010805462ff00001916620100008315158102919091179182905560405160ff9190920416151581527ff65c78d1059dbb9ec90732848bcfebbec05ac40af847d3c19adcad63379d3aeb9060200161085f565b6000546001600160a01b03163314610c3f5760405162461bcd60e51b815260040161082590611d2c565b60105460ff1615610c8c5760405162461bcd60e51b81526020600482015260176024820152762a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610825565b600780546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610cc83082670de0b6b3a7640000610f5b565b806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2a9190611d61565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9b9190611d61565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e0c9190611d61565b600980546001600160a01b0319166001600160a01b039283161790556007541663f305d7194730610e3c81610897565b600080610e516000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610eb9573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ede9190611d7e565b505060095460075460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610f37573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190611dac565b6001600160a01b038316610fbd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610825565b6001600160a01b03821661101e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610825565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526005602052604090205460ff161580156110c157506001600160a01b03821660009081526005602052604090205460ff16155b80156110dd57503360009081526005602052604090205460ff16155b6110e657600080fd5b6001600160a01b03831661114a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610825565b6001600160a01b0382166111ac5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610825565b6000811161120e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610825565b600080546001600160a01b0385811691161480159061123b57506000546001600160a01b03848116911614155b15611694576009546001600160a01b03858116911614801561126b57506007546001600160a01b03848116911614155b801561129057506001600160a01b03831660009081526004602052604090205460ff16155b1561150a5760105460ff166112e75760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c65642e00000000000000006044820152606401610825565b600f54421415611315576001600160a01b0383166000908152600560205260409020805460ff191660011790555b42600f5460b46113259190611dc9565b111561139f57600e5461133784610897565b6113419084611dc9565b111561139f5760405162461bcd60e51b815260206004820152602760248201527f596f752063616e2774206f776e2074686174206d616e7920746f6b656e7320616044820152663a1037b731b29760c91b6064820152608401610825565b6001600160a01b03831660009081526006602052604090206001015460ff16611407576040805180820182526000808252600160208084018281526001600160a01b03891684526006909152939091209151825591519101805460ff19169115159190911790555b42600f5460b46114179190611dc9565b11156114eb57600d5482111561146f5760405162461bcd60e51b815260206004820152601b60248201527f45786365656473206d6178696d756d2062757920616d6f756e742e00000000006044820152606401610825565b61147a42601e611dc9565b6001600160a01b038416600090815260066020526040902054106114eb5760405162461bcd60e51b815260206004820152602260248201527f596f75722062757920636f6f6c646f776e20686173206e6f7420657870697265604482015261321760f11b6064820152608401610825565b506001600160a01b038216600090815260066020526040902042905560015b601054610100900460ff16158015611524575060105460ff165b801561153e57506009546001600160a01b03858116911614155b156116945761154e42600f611dc9565b6001600160a01b038516600090815260066020526040902054106115c05760405162461bcd60e51b815260206004820152602360248201527f596f75722073656c6c20636f6f6c646f776e20686173206e6f7420657870697260448201526232b21760e91b6064820152608401610825565b60006115cb30610897565b9050801561167d5760105462010000900460ff161561164e57600c5460095460649190611600906001600160a01b0316610897565b61160a9190611de1565b6116149190611e00565b81111561164e57600c5460095460649190611637906001600160a01b0316610897565b6116419190611de1565b61164b9190611e00565b90505b600061165b601483611e00565b90506116678183611ce4565b9150611672816118a1565b61167b8261172d565b505b47801561168d5761168d476116f3565b6000925050505b6001600160a01b03841660009081526004602052604090205460019060ff16806116d657506001600160a01b03841660009081526004602052604090205460ff165b156116df575060005b6116ec85858584866118cb565b5050505050565b6008546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156107c5573d6000803e3d6000fd5b6010805461ff001916610100179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061177157611771611cfb565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156117ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ee9190611d61565b8160018151811061180157611801611cfb565b6001600160a01b0392831660209182029290920101526007546118279130911684610f5b565b60075460405163791ac94760e01b81526001600160a01b039091169063791ac94790611860908590600090869030904290600401611e22565b600060405180830381600087803b15801561187a57600080fd5b505af115801561188e573d6000803e3d6000fd5b50506010805461ff001916905550505050565b6010805461ff0019166101001790556118bd3061dead8361107f565b506010805461ff0019169055565b60006118d783836118ed565b90506118e586868684611911565b505050505050565b600080831561190a5782156119055750600a5461190a565b50600b545b9392505050565b60008061191e84846119ee565b6001600160a01b0388166000908152600260205260409020549193509150611947908590611ce4565b6001600160a01b038088166000908152600260205260408082209390935590871681522054611977908390611dc9565b6001600160a01b03861660009081526002602052604090205561199981611a22565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516119de91815260200190565b60405180910390a3505050505050565b6000808060646119fe8587611de1565b611a089190611e00565b90506000611a168287611ce4565b96919550909350505050565b30600090815260026020526040902054611a3d908290611dc9565b3060009081526002602052604090205550565b600060208083528351808285015260005b81811015611a7d57858101830151858201604001528201611a61565b81811115611a8f576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461089457600080fd5b8035611ac581611aa5565b919050565b60008060408385031215611add57600080fd5b8235611ae881611aa5565b946020939093013593505050565b60008060408385031215611b0957600080fd5b50508035926020909101359150565b600080600060608486031215611b2d57600080fd5b8335611b3881611aa5565b92506020840135611b4881611aa5565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611b8257600080fd5b823567ffffffffffffffff80821115611b9a57600080fd5b818501915085601f830112611bae57600080fd5b813581811115611bc057611bc0611b59565b8060051b604051601f19603f83011681018181108582111715611be557611be5611b59565b604052918252848201925083810185019188831115611c0357600080fd5b938501935b82851015611c2857611c1985611aba565b84529385019392850192611c08565b98975050505050505050565b600060208284031215611c4657600080fd5b813561190a81611aa5565b600060208284031215611c6357600080fd5b5035919050565b801515811461089457600080fd5b600060208284031215611c8a57600080fd5b813561190a81611c6a565b60008060408385031215611ca857600080fd5b8235611cb381611aa5565b91506020830135611cc381611aa5565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600082821015611cf657611cf6611cce565b500390565b634e487b7160e01b600052603260045260246000fd5b6000600019821415611d2557611d25611cce565b5060010190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611d7357600080fd5b815161190a81611aa5565b600080600060608486031215611d9357600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611dbe57600080fd5b815161190a81611c6a565b60008219821115611ddc57611ddc611cce565b500190565b6000816000190483118215151615611dfb57611dfb611cce565b500290565b600082611e1d57634e487b7160e01b600052601260045260246000fd5b500490565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e725784516001600160a01b031683529383019391830191600101611e4d565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212201c15ddce3c444b4797d03c04ffac93b1012cf60a13a3d283dcb06749014575f164736f6c634300080c0033

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

000000000000000000000000671545dc3787dc665fa2bc312d38cd37293eac1f

-----Decoded View---------------
Arg [0] : TaxAdd (address): 0x671545Dc3787dC665FA2BC312d38cD37293EaC1F

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000671545dc3787dc665fa2bc312d38cd37293eac1f


Deployed Bytecode Sourcemap

2393:10883:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3156:25;;;;;;;;;;;;;;;;;;;160::1;;;148:2;133:18;3156:25:0;;;;;;;;2780:49;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;2780:49:0;;;;;;;;;;;;:::i;4657:158::-;;;;;;;;;;-1:-1:-1;4657:158:0;;;;;:::i;:::-;;:::i;:::-;;;1558:14:1;;1551:22;1533:41;;1521:2;1506:18;4657:158:0;1393:187:1;11796:271:0;;;;;;;;;;-1:-1:-1;11796:271:0;;;;;:::i;:::-;;:::i;:::-;;2988:30;;;;;;;;;;-1:-1:-1;2988:30:0;;;;-1:-1:-1;;;;;2988:30:0;;;;;;-1:-1:-1;;;;;2018:32:1;;;2000:51;;1988:2;1973:18;2988:30:0;1838:219:1;4404:97:0;;;;;;;;;;-1:-1:-1;2760:11:0;4404:97;;3188:26;;;;;;;;;;;;;;;;4823:310;;;;;;;;;;-1:-1:-1;4823:310:0;;;;;:::i;:::-;;:::i;12465:100::-;;;;;;;;;;;;;:::i;2894:34::-;;;;;;;;;;;;2927:1;2894:34;;;;;2695:4:1;2683:17;;;2665:36;;2653:2;2638:18;2894:34:0;2523:184:1;12965:202:0;;;;;;;;;;-1:-1:-1;12965:202:0;;;;;:::i;:::-;;:::i;3221:23::-;;;;;;;;;;;;;;;;13175:90;;;;;;;;;;-1:-1:-1;13175:90:0;;;;;:::i;:::-;-1:-1:-1;;;;;13247:10:0;13223:4;13247:10;;;:6;:10;;;;;;;;;13175:90;3060:24;;;;;;;;;;;;;;;;11586:202;;;;;;;;;;-1:-1:-1;11586:202:0;;;;;:::i;:::-;;:::i;3025:28::-;;;;;;;;;;-1:-1:-1;3025:28:0;;;;-1:-1:-1;;;;;3025:28:0;;;3091:25;;;;;;;;;;;;;;;;11395:183;;;;;;;;;;;;;:::i;4109:113::-;;;;;;;;;;-1:-1:-1;4109:113:0;;;;;:::i;:::-;;:::i;1474:148::-;;;;;;;;;;;;;:::i;12277:180::-;;;;;;;;;;-1:-1:-1;12277:180:0;;;;;:::i;:::-;;:::i;1260:79::-;;;;;;;;;;-1:-1:-1;1298:7:0;1325:6;-1:-1:-1;;;;;1325:6:0;1260:79;;3318:39;;;;;;;;;;-1:-1:-1;3318:39:0;;;;;;;;;;;2836:51;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;2836:51:0;;;;;4228:164;;;;;;;;;;-1:-1:-1;4228:164:0;;;;;:::i;:::-;;:::i;12684:275::-;;;;;;;;;;-1:-1:-1;12684:275:0;;;;;:::i;:::-;;:::i;11199:184::-;;;;;;;;;;;;;:::i;10920:271::-;;;;;;;;;;;;;:::i;12573:101::-;;;;;;;;;;;;;:::i;12075:194::-;;;;;;;;;;-1:-1:-1;12075:194:0;;;;;:::i;:::-;;:::i;4509:140::-;;;;;;;;;;-1:-1:-1;4509:140:0;;;;;:::i;:::-;-1:-1:-1;;;;;4614:18:0;;;4590:4;4614:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4509:140;10224:688;;;;;;;;;;;;;:::i;4657:158::-;4729:4;4746:39;203:10;4769:7;4778:6;4746:8;:39::i;:::-;-1:-1:-1;4803:4:0;4657:158;;;;:::o;11796:271::-;11878:7;;-1:-1:-1;;;;;11878:7:0;203:10;-1:-1:-1;;;;;11862:23:0;;11854:32;;;;;;11911:2;11905:3;:8;:21;;;;;11924:2;11917:4;:9;11905:21;:38;;;;;11936:7;;11930:3;:13;11905:38;:57;;;;;11954:8;;11947:4;:15;11905:57;11897:66;;;;;;11974:7;:13;;;11998:8;:15;;;12029:30;;;5551:25:1;;;5607:2;5592:18;;5585:34;;;12029:30:0;;5524:18:1;12029:30:0;;;;;;;11796:271;;:::o;4823:310::-;4918:4;4937:36;4947:6;4955:9;4966:6;4937:9;:36::i;:::-;-1:-1:-1;;;;;5005:19:0;;4984:18;5005:19;;;:11;:19;;;;;;;;203:10;5005:33;;;;;;;;:42;;5041:6;;5005:42;:::i;:::-;4984:63;-1:-1:-1;5058:45:0;5067:6;203:10;5089:13;5058:8;:45::i;:::-;-1:-1:-1;5121:4:0;;4823:310;-1:-1:-1;;;;4823:310:0:o;12465:100::-;12509:4;12533:24;12551:4;12533:9;:24::i;:::-;12526:31;;12465:100;:::o;12965:202::-;13050:7;;-1:-1:-1;;;;;13050:7:0;203:10;-1:-1:-1;;;;;13034:23:0;;13026:32;;;;;;13074:6;13069:91;13090:5;:12;13086:1;:16;13069:91;;;13143:5;13124:6;:16;13131:5;13137:1;13131:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;13124:16:0;;;;;;;;;;;-1:-1:-1;13124:16:0;:24;;-1:-1:-1;;13124:24:0;;;;;;;;;;13104:3;;;;:::i;:::-;;;;13069:91;;;;12965:202;:::o;11586:::-;11661:7;;-1:-1:-1;;;;;11661:7:0;203:10;-1:-1:-1;;;;;11645:23:0;;11637:32;;;;;;11695:1;11688:4;:8;11680:34;;;;-1:-1:-1;;;11680:34:0;;6366:2:1;11680:34:0;;;6348:21:1;6405:2;6385:18;;;6378:30;-1:-1:-1;;;6424:18:1;;;6417:43;6477:18;;11680:34:0;;;;;;;;;11725:8;:15;;;11756:24;;160:25:1;;;11756:24:0;;148:2:1;133:18;11756:24:0;;;;;;;;11586:202;:::o;11395:183::-;11461:7;;-1:-1:-1;;;;;11461:7:0;203:10;-1:-1:-1;;;;;11445:23:0;;11437:32;;;;;;11506:21;11538:32;11506:21;11538:12;:32::i;:::-;11426:152;11395:183::o;4109:113::-;-1:-1:-1;;;;;4199:15:0;4175:4;4199:15;;;:6;:15;;;;;;;4109:113::o;1474:148::-;1387:6;;-1:-1:-1;;;;;1387:6:0;203:10;1387:22;1379:67;;;;-1:-1:-1;;;1379:67:0;;;;;;;:::i;:::-;1581:1:::1;1565:6:::0;;1544:40:::1;::::0;-1:-1:-1;;;;;1565:6:0;;::::1;::::0;1544:40:::1;::::0;1581:1;;1544:40:::1;1612:1;1595:19:::0;;-1:-1:-1;;;;;;1595:19:0::1;::::0;;1474:148::o;12277:180::-;12363:7;;-1:-1:-1;;;;;12363:7:0;203:10;-1:-1:-1;;;;;12347:23:0;;12339:32;;;;;;12382:7;:29;;-1:-1:-1;;;;;;12382:29:0;-1:-1:-1;;;;;12382:29:0;;;;;;;;12427:22;;2000:51:1;;;12427:22:0;;1988:2:1;1973:18;12427:22:0;1838:219:1;4228:164:0;4303:4;4320:42;203:10;4344:9;4355:6;4320:9;:42::i;12684:275::-;1387:6;;-1:-1:-1;;;;;1387:6:0;203:10;1387:22;1379:67;;;;-1:-1:-1;;;1379:67:0;;;;;;;:::i;:::-;12762:6:::1;12757:195;12778:5;:12;12774:1;:16;12757:195;;;12828:13;::::0;12816:8;;-1:-1:-1;;;;;12828:13:0;;::::1;::::0;12816:5;;12822:1;;12816:8;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;12816:25:0::1;;;:65;;;;-1:-1:-1::0;12865:15:0::1;::::0;12845:8;;-1:-1:-1;;;;;12865:15:0;;::::1;::::0;12845:5;;12851:1;;12845:8;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;12845:36:0::1;;;12816:65;12812:129;;;12921:4;12902:6;:16;12909:5;12915:1;12909:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;12902:16:0::1;-1:-1:-1::0;;;;;12902:16:0::1;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;12812:129;12792:3:::0;::::1;::::0;::::1;:::i;:::-;;;;12757:195;;11199:184:::0;11265:7;;-1:-1:-1;;;;;11265:7:0;203:10;-1:-1:-1;;;;;11249:23:0;;11241:32;;;;;;11284:20;11307:24;11325:4;11307:9;:24::i;:::-;11284:47;;11342:33;11359:15;11342:16;:33::i;10920:271::-;1387:6;;-1:-1:-1;;;;;1387:6:0;203:10;1387:22;1379:67;;;;-1:-1:-1;;;1379:67:0;;;;;;;:::i;:::-;10984:12:::1;::::0;::::1;;10983:13;10975:49;;;::::0;-1:-1:-1;;;10975:49:0;;7285:2:1;10975:49:0::1;::::0;::::1;7267:21:1::0;7324:2;7304:18;;;7297:30;-1:-1:-1;;;7343:18:1;;;7336:53;7406:18;;10975:49:0::1;7083:347:1::0;10975:49:0::1;11035:12;:19:::0;;-1:-1:-1;;11035:19:0::1;11050:4;11035:19;::::0;;11079:15:::1;11065:11;:29:::0;11121:16:::1;11105:13;:32:::0;;;11149:14:::1;:33:::0;10920:271::o;12573:101::-;12652:13;;12618:4;;12642:24;;-1:-1:-1;;;;;12652:13:0;12642:9;:24::i;12075:194::-;12156:7;;-1:-1:-1;;;;;12156:7:0;203:10;-1:-1:-1;;;;;12140:23:0;;12132:32;;;;;;12175:19;:27;;-1:-1:-1;;12175:27:0;;;;;;;;;;;;;;;12218:43;;12175:27;12241:19;;;;;1558:14:1;1551:22;1533:41;;12218:43:0;;1521:2:1;1506:18;12218:43:0;1393:187:1;10224:688:0;1387:6;;-1:-1:-1;;;;;1387:6:0;203:10;1387:22;1379:67;;;;-1:-1:-1;;;1379:67:0;;;;;;;:::i;:::-;10289:12:::1;::::0;::::1;;10288:13;10280:49;;;::::0;-1:-1:-1;;;10280:49:0;;7285:2:1;10280:49:0::1;::::0;::::1;7267:21:1::0;7324:2;7304:18;;;7297:30;-1:-1:-1;;;7343:18:1;;;7336:53;7406:18;;10280:49:0::1;7083:347:1::0;10280:49:0::1;10451:15;:34:::0;;-1:-1:-1;;;;;;10451:34:0::1;10397:42;10451:34:::0;;::::1;::::0;;;10496:63:::1;10513:4;10397:42:::0;2760:11:::1;10496:8;:63::i;:::-;10604:16;-1:-1:-1::0;;;;;10604:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10586:56:0::1;;10651:4;10658:16;-1:-1:-1::0;;;;;10658:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10586:96;::::0;-1:-1:-1;;;;;;10586:96:0::1;::::0;;;;;;-1:-1:-1;;;;;7921:15:1;;;10586:96:0::1;::::0;::::1;7903:34:1::0;7973:15;;7953:18;;;7946:43;7838:18;;10586:96:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10570:13;:112:::0;;-1:-1:-1;;;;;;10570:112:0::1;-1:-1:-1::0;;;;;10570:112:0;;::::1;;::::0;;10693:15:::1;::::0;::::1;:31;10732:21;10763:4;10769:24;10763:4:::0;10769:9:::1;:24::i;:::-;10794:1;10796::::0;10798:7:::1;1298::::0;1325:6;-1:-1:-1;;;;;1325:6:0;;1260:79;10798:7:::1;10693:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10693:129:0;;;-1:-1:-1;;;;;8359:15:1;;;10693:129:0::1;::::0;::::1;8341:34:1::0;8391:18;;;8384:34;;;;8434:18;;;8427:34;;;;8477:18;;;8470:34;8541:15;;;8520:19;;;8513:44;10806:15:0::1;8573:19:1::0;;;8566:35;8275:19;;10693:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10840:13:0::1;::::0;10871:15:::1;::::0;10833:71:::1;::::0;-1:-1:-1;;;10833:71:0;;-1:-1:-1;;;;;10871:15:0;;::::1;10833:71;::::0;::::1;9097:51:1::0;-1:-1:-1;;9164:18:1;;;9157:34;10840:13:0;::::1;::::0;-1:-1:-1;10833:29:0::1;::::0;9070:18:1;;10833:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5141:332::-:0;-1:-1:-1;;;;;5231:19:0;;5223:68;;;;-1:-1:-1;;;5223:68:0;;9654:2:1;5223:68:0;;;9636:21:1;9693:2;9673:18;;;9666:30;9732:34;9712:18;;;9705:62;-1:-1:-1;;;9783:18:1;;;9776:34;9827:19;;5223:68:0;9452:400:1;5223:68:0;-1:-1:-1;;;;;5310:21:0;;5302:68;;;;-1:-1:-1;;;5302:68:0;;10059:2:1;5302:68:0;;;10041:21:1;10098:2;10078:18;;;10071:30;10137:34;10117:18;;;10110:62;-1:-1:-1;;;10188:18:1;;;10181:32;10230:19;;5302:68:0;9857:398:1;5302:68:0;-1:-1:-1;;;;;5381:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5433:32;;160:25:1;;;5433:32:0;;133:18:1;5433:32:0;;;;;;;5141:332;;;:::o;5481:2694::-;-1:-1:-1;;;;;5567:12:0;;;;;;:6;:12;;;;;;;;5566:13;:28;;;;-1:-1:-1;;;;;;5584:10:0;;;;;;:6;:10;;;;;;;;5583:11;5566:28;:51;;;;-1:-1:-1;5606:10:0;5599:18;;;;:6;:18;;;;;;;;5598:19;5566:51;5558:60;;;;;;-1:-1:-1;;;;;5637:18:0;;5629:68;;;;-1:-1:-1;;;5629:68:0;;10462:2:1;5629:68:0;;;10444:21:1;10501:2;10481:18;;;10474:30;10540:34;10520:18;;;10513:62;-1:-1:-1;;;10591:18:1;;;10584:35;10636:19;;5629:68:0;10260:401:1;5629:68:0;-1:-1:-1;;;;;5716:16:0;;5708:64;;;;-1:-1:-1;;;5708:64:0;;10868:2:1;5708:64:0;;;10850:21:1;10907:2;10887:18;;;10880:30;10946:34;10926:18;;;10919:62;-1:-1:-1;;;10997:18:1;;;10990:33;11040:19;;5708:64:0;10666:399:1;5708:64:0;5800:1;5791:6;:10;5783:64;;;;-1:-1:-1;;;5783:64:0;;11272:2:1;5783:64:0;;;11254:21:1;11311:2;11291:18;;;11284:30;11350:34;11330:18;;;11323:62;-1:-1:-1;;;11401:18:1;;;11394:39;11450:19;;5783:64:0;11070:405:1;5783:64:0;5858:10;1325:6;;-1:-1:-1;;;;;5890:15:0;;;1325:6;;5890:15;;;;:32;;-1:-1:-1;1298:7:0;1325:6;-1:-1:-1;;;;;5909:13:0;;;1325:6;;5909:13;;5890:32;5887:2090;;;5950:13;;-1:-1:-1;;;;;5942:21:0;;;5950:13;;5942:21;:55;;;;-1:-1:-1;5981:15:0;;-1:-1:-1;;;;;5967:30:0;;;5981:15;;5967:30;;5942:55;:82;;;;-1:-1:-1;;;;;;6002:22:0;;;;;;:18;:22;;;;;;;;6001:23;5942:82;5939:948;;;6053:12;;;;6045:49;;;;-1:-1:-1;;;6045:49:0;;11682:2:1;6045:49:0;;;11664:21:1;11721:2;11701:18;;;11694:30;11760:26;11740:18;;;11733:54;11804:18;;6045:49:0;11480:348:1;6045:49:0;6136:11;;6117:15;:30;6113:53;;;-1:-1:-1;;;;;6149:10:0;;;;;;:6;:10;;;;;:17;;-1:-1:-1;;6149:17:0;6162:4;6149:17;;;6113:53;6218:15;6189:11;;6204:9;6189:25;;;;:::i;:::-;6188:45;6185:197;;;6303:14;;6276:22;6294:2;6276:9;:22::i;:::-;6267:31;;:6;:31;:::i;:::-;6266:51;;6258:103;;;;-1:-1:-1;;;6258:103:0;;12168:2:1;6258:103:0;;;12150:21:1;12207:2;12187:18;;;12180:30;12246:34;12226:18;;;12219:62;-1:-1:-1;;;12297:18:1;;;12290:37;12344:19;;6258:103:0;11966:403:1;6258:103:0;-1:-1:-1;;;;;6404:12:0;;;;;;:8;:12;;;;;:19;;;;;6400:95;;6463:12;;;;;;;;-1:-1:-1;6463:12:0;;;6470:4;6463:12;;;;;;;-1:-1:-1;;;;;6448:12:0;;;;:8;:12;;;;;;;:27;;;;;;;;;;-1:-1:-1;;6448:27:0;;;;;;;;;;6400:95;6546:15;6517:11;;6532:9;6517:25;;;;:::i;:::-;6516:45;6513:275;;;6604:13;;6594:6;:23;;6586:63;;;;-1:-1:-1;;;6586:63:0;;12576:2:1;6586:63:0;;;12558:21:1;12615:2;12595:18;;;12588:30;12654:29;12634:18;;;12627:57;12701:18;;6586:63:0;12374:351:1;6586:63:0;6699:30;:15;6718:10;6699:30;:::i;:::-;-1:-1:-1;;;;;6680:12:0;;;;;;:8;:12;;;;;:16;:49;6672:96;;;;-1:-1:-1;;;6672:96:0;;12932:2:1;6672:96:0;;;12914:21:1;12971:2;12951:18;;;12944:30;13010:34;12990:18;;;12983:62;-1:-1:-1;;;13061:18:1;;;13054:32;13103:19;;6672:96:0;12730:398:1;6672:96:0;-1:-1:-1;;;;;;6806:12:0;;;;;;:8;:12;;;;;6825:15;6806:34;;6867:4;5939:948;6905:7;;;;;;;6904:8;:24;;;;-1:-1:-1;6916:12:0;;;;6904:24;:49;;;;-1:-1:-1;6940:13:0;;-1:-1:-1;;;;;6932:21:0;;;6940:13;;6932:21;;6904:49;6901:1065;;;7003:30;:15;7022:10;7003:30;:::i;:::-;-1:-1:-1;;;;;6982:14:0;;;;;;:8;:14;;;;;:18;:51;6974:99;;;;-1:-1:-1;;;6974:99:0;;13335:2:1;6974:99:0;;;13317:21:1;13374:2;13354:18;;;13347:30;13413:34;13393:18;;;13386:62;-1:-1:-1;;;13464:18:1;;;13457:33;13507:19;;6974:99:0;13133:399:1;6974:99:0;7092:25;7120:24;7138:4;7120:9;:24::i;:::-;7092:52;-1:-1:-1;7166:24:0;;7163:567;;7218:19;;;;;;;7215:270;;;7320:8;;7303:13;;7332:3;;7320:8;7293:24;;-1:-1:-1;;;;;7303:13:0;7293:9;:24::i;:::-;:35;;;;:::i;:::-;7292:43;;;;:::i;:::-;7269:20;:66;7266:196;;;7419:8;;7402:13;;7431:3;;7419:8;7392:24;;-1:-1:-1;;;;;7402:13:0;7392:9;:24::i;:::-;:35;;;;:::i;:::-;7391:43;;;;:::i;:::-;7368:66;;7266:196;7507:15;7525:23;7546:2;7525:20;:23;:::i;:::-;7507:41;-1:-1:-1;7571:34:0;7507:41;7571:34;;:::i;:::-;;;7628:21;7638:10;7628:9;:21::i;:::-;7672:38;7689:20;7672:16;:38::i;:::-;7192:538;7163:567;7774:21;7817:22;;7814:105;;7864:35;7877:21;7864:12;:35::i;:::-;7945:5;7937:13;;6955:1011;;6901:1065;-1:-1:-1;;;;;8020:24:0;;7987:12;8020:24;;;:18;:24;;;;;;8002:4;;8020:24;;;:50;;-1:-1:-1;;;;;;8048:22:0;;;;;;:18;:22;;;;;;;;8020:50;8017:96;;;-1:-1:-1;8096:5:0;8017:96;8123:44;8138:4;8143:2;8146:6;8153:7;8161:5;8123:14;:44::i;:::-;5547:2628;;5481:2694;;;:::o;8818:86::-;8872:7;;:24;;-1:-1:-1;;;;;8872:7:0;;;;:24;;;;;8889:6;;8872:7;:24;:7;:24;8889:6;8872:7;:24;;;;;;;;;;;;;;;;;;;8322:480;3711:7;:14;;-1:-1:-1;;3711:14:0;;;;;8421:16:::1;::::0;;8435:1:::1;8421:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8421:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8421:16:0::1;8397:40;;8466:4;8448;8453:1;8448:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8448:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8492:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;8492:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8448:7;;8492:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8482:4;8487:1;8482:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8482:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;8557:15:::1;::::0;8525:62:::1;::::0;8542:4:::1;::::0;8557:15:::1;8575:11:::0;8525:8:::1;:62::i;:::-;8598:15;::::0;:196:::1;::::0;-1:-1:-1;;;8598:196:0;;-1:-1:-1;;;;;8598:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;8679:11;;8598:15:::1;::::0;8721:4;;8748::::1;::::0;8768:15:::1;::::0;8598:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;3748:7:0;:15;;-1:-1:-1;;3748:15:0;;;-1:-1:-1;;;;8322:480:0:o;8183:129::-;3711:7;:14;;-1:-1:-1;;3711:14:0;;;;;8250:52:::1;8268:4;8283:6;8291:10:::0;8250:9:::1;:52::i;:::-;-1:-1:-1::0;3748:7:0;:15;;-1:-1:-1;;3748:15:0;;;8183:129::o;8916:217::-;9032:8;9044:21;9052:7;9061:3;9044:7;:21::i;:::-;9031:34;;9076:49;9094:6;9102:9;9113:6;9121:3;9076:17;:49::i;:::-;9020:113;8916:217;;;;;:::o;9141:280::-;9204:4;;9244:149;;;;9274:3;9271:111;;;-1:-1:-1;9304:7:0;;9271:111;;;-1:-1:-1;9358:8:0;;9271:111;9410:3;9141:280;-1:-1:-1;;;9141:280:0:o;9429:372::-;9534:19;9555:9;9568:23;9579:6;9587:3;9568:10;:23::i;:::-;-1:-1:-1;;;;;9619:14:0;;;;;;:6;:14;;;;;;9533:58;;-1:-1:-1;9533:58:0;-1:-1:-1;9619:23:0;;9636:6;;9619:23;:::i;:::-;-1:-1:-1;;;;;9602:14:0;;;;;;;:6;:14;;;;;;:40;;;;9673:17;;;;;;;:34;;9693:14;;9673:34;:::i;:::-;-1:-1:-1;;;;;9653:17:0;;;;;;:6;:17;;;;;:54;9719:15;9729:4;9719:9;:15::i;:::-;9767:9;-1:-1:-1;;;;;9750:43:0;9759:6;-1:-1:-1;;;;;9750:43:0;;9778:14;9750:43;;;;160:25:1;;148:2;133:18;;14:177;9750:43:0;;;;;;;;9522:279;;9429:372;;;;:::o;9809:222::-;9878:4;;;9934:3;9914:16;9923:7;9914:6;:16;:::i;:::-;9913:24;;;;:::i;:::-;9901:36;-1:-1:-1;9948:19:0;9970:13;9901:36;9970:6;:13;:::i;:::-;9948:35;10018:4;;-1:-1:-1;9809:222:0;;-1:-1:-1;;;;9809:222:0:o;10039:109::-;10127:4;10112:21;;;;:6;:21;;;;;;:28;;10136:4;;10112:28;:::i;:::-;10103:4;10088:21;;;;:6;:21;;;;;:52;-1:-1:-1;10039:109:0:o;196:597:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;634:6;631:1;628:13;625:91;;;704:1;699:2;690:6;679:9;675:22;671:31;664:42;625:91;-1:-1:-1;777:2:1;756:15;-1:-1:-1;;752:29:1;737:45;;;;784:2;733:54;;196:597;-1:-1:-1;;;196:597:1:o;798:131::-;-1:-1:-1;;;;;873:31:1;;863:42;;853:70;;919:1;916;909:12;934:134;1002:20;;1031:31;1002:20;1031:31;:::i;:::-;934:134;;;:::o;1073:315::-;1141:6;1149;1202:2;1190:9;1181:7;1177:23;1173:32;1170:52;;;1218:1;1215;1208:12;1170:52;1257:9;1244:23;1276:31;1301:5;1276:31;:::i;:::-;1326:5;1378:2;1363:18;;;;1350:32;;-1:-1:-1;;;1073:315:1:o;1585:248::-;1653:6;1661;1714:2;1702:9;1693:7;1689:23;1685:32;1682:52;;;1730:1;1727;1720:12;1682:52;-1:-1:-1;;1753:23:1;;;1823:2;1808:18;;;1795:32;;-1:-1:-1;1585:248:1:o;2062:456::-;2139:6;2147;2155;2208:2;2196:9;2187:7;2183:23;2179:32;2176:52;;;2224:1;2221;2214:12;2176:52;2263:9;2250:23;2282:31;2307:5;2282:31;:::i;:::-;2332:5;-1:-1:-1;2389:2:1;2374:18;;2361:32;2402:33;2361:32;2402:33;:::i;:::-;2062:456;;2454:7;;-1:-1:-1;;;2508:2:1;2493:18;;;;2480:32;;2062:456::o;2712:127::-;2773:10;2768:3;2764:20;2761:1;2754:31;2804:4;2801:1;2794:15;2828:4;2825:1;2818:15;2844:1121;2928:6;2959:2;3002;2990:9;2981:7;2977:23;2973:32;2970:52;;;3018:1;3015;3008:12;2970:52;3058:9;3045:23;3087:18;3128:2;3120:6;3117:14;3114:34;;;3144:1;3141;3134:12;3114:34;3182:6;3171:9;3167:22;3157:32;;3227:7;3220:4;3216:2;3212:13;3208:27;3198:55;;3249:1;3246;3239:12;3198:55;3285:2;3272:16;3307:2;3303;3300:10;3297:36;;;3313:18;;:::i;:::-;3359:2;3356:1;3352:10;3391:2;3385:9;3454:2;3450:7;3445:2;3441;3437:11;3433:25;3425:6;3421:38;3509:6;3497:10;3494:22;3489:2;3477:10;3474:18;3471:46;3468:72;;;3520:18;;:::i;:::-;3556:2;3549:22;3606:18;;;3640:15;;;;-1:-1:-1;3682:11:1;;;3678:20;;;3710:19;;;3707:39;;;3742:1;3739;3732:12;3707:39;3766:11;;;;3786:148;3802:6;3797:3;3794:15;3786:148;;;3868:23;3887:3;3868:23;:::i;:::-;3856:36;;3819:12;;;;3912;;;;3786:148;;;3953:6;2844:1121;-1:-1:-1;;;;;;;;2844:1121:1:o;3970:247::-;4029:6;4082:2;4070:9;4061:7;4057:23;4053:32;4050:52;;;4098:1;4095;4088:12;4050:52;4137:9;4124:23;4156:31;4181:5;4156:31;:::i;4222:180::-;4281:6;4334:2;4322:9;4313:7;4309:23;4305:32;4302:52;;;4350:1;4347;4340:12;4302:52;-1:-1:-1;4373:23:1;;4222:180;-1:-1:-1;4222:180:1:o;4615:118::-;4701:5;4694:13;4687:21;4680:5;4677:32;4667:60;;4723:1;4720;4713:12;4738:241;4794:6;4847:2;4835:9;4826:7;4822:23;4818:32;4815:52;;;4863:1;4860;4853:12;4815:52;4902:9;4889:23;4921:28;4943:5;4921:28;:::i;4984:388::-;5052:6;5060;5113:2;5101:9;5092:7;5088:23;5084:32;5081:52;;;5129:1;5126;5119:12;5081:52;5168:9;5155:23;5187:31;5212:5;5187:31;:::i;:::-;5237:5;-1:-1:-1;5294:2:1;5279:18;;5266:32;5307:33;5266:32;5307:33;:::i;:::-;5359:7;5349:17;;;4984:388;;;;;:::o;5630:127::-;5691:10;5686:3;5682:20;5679:1;5672:31;5722:4;5719:1;5712:15;5746:4;5743:1;5736:15;5762:125;5802:4;5830:1;5827;5824:8;5821:34;;;5835:18;;:::i;:::-;-1:-1:-1;5872:9:1;;5762:125::o;5892:127::-;5953:10;5948:3;5944:20;5941:1;5934:31;5984:4;5981:1;5974:15;6008:4;6005:1;5998:15;6024:135;6063:3;-1:-1:-1;;6084:17:1;;6081:43;;;6104:18;;:::i;:::-;-1:-1:-1;6151:1:1;6140:13;;6024:135::o;6506:356::-;6708:2;6690:21;;;6727:18;;;6720:30;6786:34;6781:2;6766:18;;6759:62;6853:2;6838:18;;6506:356::o;7435:251::-;7505:6;7558:2;7546:9;7537:7;7533:23;7529:32;7526:52;;;7574:1;7571;7564:12;7526:52;7606:9;7600:16;7625:31;7650:5;7625:31;:::i;8612:306::-;8700:6;8708;8716;8769:2;8757:9;8748:7;8744:23;8740:32;8737:52;;;8785:1;8782;8775:12;8737:52;8814:9;8808:16;8798:26;;8864:2;8853:9;8849:18;8843:25;8833:35;;8908:2;8897:9;8893:18;8887:25;8877:35;;8612:306;;;;;:::o;9202:245::-;9269:6;9322:2;9310:9;9301:7;9297:23;9293:32;9290:52;;;9338:1;9335;9328:12;9290:52;9370:9;9364:16;9389:28;9411:5;9389:28;:::i;11833:128::-;11873:3;11904:1;11900:6;11897:1;11894:13;11891:39;;;11910:18;;:::i;:::-;-1:-1:-1;11946:9:1;;11833:128::o;13537:168::-;13577:7;13643:1;13639;13635:6;13631:14;13628:1;13625:21;13620:1;13613:9;13606:17;13602:45;13599:71;;;13650:18;;:::i;:::-;-1:-1:-1;13690:9:1;;13537:168::o;13710:217::-;13750:1;13776;13766:132;;13820:10;13815:3;13811:20;13808:1;13801:31;13855:4;13852:1;13845:15;13883:4;13880:1;13873:15;13766:132;-1:-1:-1;13912:9:1;;13710:217::o;13932:980::-;14194:4;14242:3;14231:9;14227:19;14273:6;14262:9;14255:25;14299:2;14337:6;14332:2;14321:9;14317:18;14310:34;14380:3;14375:2;14364:9;14360:18;14353:31;14404:6;14439;14433:13;14470:6;14462;14455:22;14508:3;14497:9;14493:19;14486:26;;14547:2;14539:6;14535:15;14521:29;;14568:1;14578:195;14592:6;14589:1;14586:13;14578:195;;;14657:13;;-1:-1:-1;;;;;14653:39:1;14641:52;;14748:15;;;;14713:12;;;;14689:1;14607:9;14578:195;;;-1:-1:-1;;;;;;;14829:32:1;;;;14824:2;14809:18;;14802:60;-1:-1:-1;;;14893:3:1;14878:19;14871:35;14790:3;13932:980;-1:-1:-1;;;13932:980:1:o

Swarm Source

ipfs://1c15ddce3c444b4797d03c04ffac93b1012cf60a13a3d283dcb06749014575f1
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.