ETH Price: $2,519.38 (-0.83%)

Token

Heimdl Coin (HEIM)
 

Overview

Max Total Supply

1,000,000,000 HEIM

Holders

192

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
9,466,654.913839157 HEIM

Value
$0.00
0x72393b99c496fdba294231167dc7e3c07180b66b
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:
HEIM

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.7;


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



}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _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 transferOwnership(address _address) external onlyOwner notLocked(Functions.changeOwnership){
        require(_address != address(0),"New owner can not be zero address");
        emit OwnershipTransferred(_owner, _address);
        _owner = _address;
        timelock[Functions.changeOwnership] = 0;
    }
    enum Functions {changeOwnership,changeMarketWallet,pause }
    mapping(Functions => uint256) public timelock;

    modifier notLocked(Functions _func) {
    require(
        timelock[_func] != 0 && timelock[_func] <= block.timestamp,
        "Function is timelocked"
    );
    _;
    }
}  

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 HEIM is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private balance;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    
    uint256 private constant _tTotal = 1e18; //1,000,000.000 000 000
    uint256 private  maxWallet = _tTotal/50; 
    uint256 private taxAmount = 8;
    uint256 private tax = 0;
    uint256 private tradingEnableTime;
    uint256 private constant _TIMELOCK = 2 days;
    address payable private marketingWallet;
    address payable private founderWallet;
    address payable private devWallet;
    string private constant _name = "Heimdl Coin";
    string private constant _symbol = "HEIM";
    uint8 private constant _decimals = 9;
    bool private inSwap = false;
    
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private paused;
    uint256 private _maxTxAmount = _tTotal;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    event MaxWalletPercUpdated(uint _maxWalletPerc);
    function unlockFunction(Functions _func) external onlyOwner {
        require(timelock[_func] == 0);
        timelock[_func] = block.timestamp + _TIMELOCK;
    } 

    function lockFunction(Functions _func) external onlyOwner {
        timelock[_func] = 0;
    }
    
    constructor (address payable _add1, address payable _add2,address payable _add3) { 
        require(_add1 != address(0),"Zero address exception");
        require(_add2 != address(0),"Zero address exception");
        require(_add3 != address(0),"Zero address exception");
        marketingWallet = _add1;
        devWallet = _add2;
        founderWallet = _add3;
        balance[owner()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[marketingWallet] = true;
        emit Transfer(address(0),owner(), _tTotal);
    }

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

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

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

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

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

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

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

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

    function isWhitelisted(address _addr) external view returns(bool){
        return _isExcludedFromFee[_addr];
    }

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(amount > 0, "Transfer amount must be greater than zero");
        require(balanceOf(from) >= amount,"Balance less then transfer");
        require(!bots[from],"Blacklisted can't trade");
        tax = 0;
        if (!(_isExcludedFromFee[from] || _isExcludedFromFee[to]) ) {            
            require(!paused,"Trading is paused");
            require(amount <= _maxTxAmount,"Amount exceed max trnx amount");

            if(to != uniswapV2Pair){   //can't have tokens over maxWallet 
            require(balanceOf(to) + amount*(1-(taxAmount/100)) <= maxWallet,"max Wallet limit exceeded");
            }
            uint256 contractETHBalance = address(this).balance;
            if(contractETHBalance > 1 ether) { // Minimum 1 eth before sending to marketing wallet
                sendETHToFee(address(this).balance);
            }
            else if(to == uniswapV2Pair){ // Only Swap taxes on a sell
                tax = taxAmount;
                uint256 contractTokenBalance = balanceOf(address(this));
                if(!inSwap){
                    if(contractTokenBalance > _tTotal/1000){ // 0.01%
                        swapTokensForEth(contractTokenBalance);
                    }
                }
            }
               
        }
        _tokenTransfer(from,to,amount);
    }


    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 changeMaxTrnx(uint256 amount) external onlyOwner{
        require(tradingOpen,"Trading is not enabled yet");
        _maxTxAmount = amount ;
        emit MaxTxAmountUpdated(amount);
    }
    function changeMaxWallet(uint256 perc) external onlyOwner{
        require(perc > 0, "Wallet should be more than 0");
        maxWallet = perc * _tTotal /100;
        emit MaxWalletPercUpdated(perc);
    }

    function sendETHToFee(uint256 amount) private {
        marketingWallet.transfer(2*amount/5);
        founderWallet.transfer(2*amount/5);
        devWallet.transfer(address(this).balance);        
    }
    
    
    function openTrading() 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);
        _maxTxAmount = _tTotal/1000;
        maxWallet = _tTotal/1000;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        tradingEnableTime = block.timestamp;
    }
    
    function blacklistBot(address _address) external onlyOwner{
            bots[_address] = true;
    }
    
    function changeMarketingWallet( address payable _address) external onlyOwner notLocked(Functions.changeMarketWallet){
        require(_address != address(0),"Marketing Wallet can not be zero");
        marketingWallet = _address;
        timelock[Functions.changeMarketWallet] = 0;
    }

    function removeFromBlacklist(address notbot) external onlyOwner{
        bots[notbot] = false;
    }

    function emergencyPause() external onlyOwner notLocked(Functions.pause){
        paused = !paused;
        timelock[Functions.pause] = 0;
    }

    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        
        uint256 tTeam = amount*tax/100;    // tax amount
        uint256 remainingAmount = amount - tTeam; // to Send
        balance[sender] = balance[sender].sub(amount); // deduct from sender
        balance[recipient] = balance[recipient].add(remainingAmount); // add to recipient
        balance[address(this)] = balance[address(this)].add(tTeam); // add team Take to address
        emit Transfer(sender, recipient, remainingAmount);
    }

    function whitelistAddress(address _addr,bool _bool) external onlyOwner{    //add or remove address from whitelist
        _isExcludedFromFee[_addr] = _bool;
    }

    receive() external payable {}
    
    function transferERC20(IERC20 token, uint256 amount) external onlyOwner{ //function to transfer stuck erc20 tokens
        require(token != IERC20(address(this)),"You can't withdraw tokens from owned by contract."); 
        uint256 erc20balance = token.balanceOf(address(this));
        require(amount <= erc20balance, "balance is low");
        token.transfer(marketingWallet, amount);
    }
    event buyTaxUpdated(uint256 _newTaxAmount);   
    function changeTax(uint256 _newBuyTax) external onlyOwner{
        require(_newBuyTax < 10,"New Buy tax have to be under 10");
        taxAmount = _newBuyTax;
        emit buyTaxUpdated(_newBuyTax);
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"_add1","type":"address"},{"internalType":"address payable","name":"_add2","type":"address"},{"internalType":"address payable","name":"_add3","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":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxWalletPerc","type":"uint256"}],"name":"MaxWalletPercUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_newTaxAmount","type":"uint256"}],"name":"buyTaxUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"blacklistBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_address","type":"address"}],"name":"changeMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"changeMaxTrnx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"perc","type":"uint256"}],"name":"changeMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuyTax","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"emergencyPause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"isWhitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum Ownable.Functions","name":"_func","type":"uint8"}],"name":"lockFunction","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"notbot","type":"address"}],"name":"removeFromBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"enum Ownable.Functions","name":"","type":"uint8"}],"name":"timelock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"enum Ownable.Functions","name":"_func","type":"uint8"}],"name":"unlockFunction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"},{"internalType":"bool","name":"_bool","type":"bool"}],"name":"whitelistAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000196032670de0b6b3a7640000620002c9565b6006556008600781905560009055600c805460ff60a01b19169055670de0b6b3a7640000600f553480156200004d57600080fd5b50604051620024403803806200244083398101604081905262000070916200027f565b600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36001600160a01b038316620000fa5760405162461bcd60e51b815260206004820152601660248201526000805160206200242083398151915260448201526064015b60405180910390fd5b6001600160a01b038216620001415760405162461bcd60e51b81526020600482015260166024820152600080516020620024208339815191526044820152606401620000f1565b6001600160a01b038116620001885760405162461bcd60e51b81526020600482015260166024820152600080516020620024208339815191526044820152606401620000f1565b600a80546001600160a01b03199081166001600160a01b03868116919091178355600c80548316868316179055600b8054909216848216179091556000805482168152600260209081526040808320670de0b6b3a76400009081905583548516845260048352818420805460ff1990811660019081179092553086528386208054821683179055965486168552828520805490971617909555825490519485529092169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050620002ec565b80516001600160a01b03811681146200027a57600080fd5b919050565b6000806000606084860312156200029557600080fd5b620002a08462000262565b9250620002b06020850162000262565b9150620002c06040850162000262565b90509250925092565b600082620002e757634e487b7160e01b600052601260045260246000fd5b500490565b61212480620002fc6000396000f3fe6080604052600436106101a05760003560e01c806370a08231116100ec578063bb85c6d11161008a578063c9567bf911610064578063c9567bf9146104f5578063dd62ed3e1461050a578063f2fde38b14610550578063f7448a311461057057600080fd5b8063bb85c6d114610493578063c17bae2a146104b3578063c3c8cd80146104e057600080fd5b8063a9059cbb116100c6578063a9059cbb14610413578063aa53099d14610433578063b4fa3b9814610453578063b9a45aac1461047357600080fd5b806370a08231146103885780638da5cb5b146103be57806395d89b41146103e657600080fd5b806323b872dd116101595780633e45c8af116101335780633e45c8af1461031e57806351858e271461033e578063537df3b6146103535780636fc3eaec1461037357600080fd5b806323b872dd146102a9578063313ce567146102c95780633af32abf146102e557600080fd5b806306fdde03146101ac57806308aad1f1146101f2578063095ea7b3146102145780630b006d601461024457806318160ddd1461026457806318d7c3af1461028957600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600b81526a2432b4b6b2361021b7b4b760a91b60208201525b6040516101e99190611ec6565b60405180910390f35b3480156101fe57600080fd5b5061021261020d366004611d1a565b610590565b005b34801561022057600080fd5b5061023461022f366004611dfc565b6105e7565b60405190151581526020016101e9565b34801561025057600080fd5b5061021261025f366004611e66565b6105fd565b34801561027057600080fd5b50670de0b6b3a76400005b6040519081526020016101e9565b34801561029557600080fd5b506102126102a4366004611e66565b6106cf565b3480156102b557600080fd5b506102346102c4366004611d8d565b610787565b3480156102d557600080fd5b50604051600981526020016101e9565b3480156102f157600080fd5b50610234610300366004611d1a565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561032a57600080fd5b50610212610339366004611e66565b6107f0565b34801561034a57600080fd5b5061021261089f565b34801561035f57600080fd5b5061021261036e366004611d1a565b6109a2565b34801561037f57600080fd5b506102126109ed565b34801561039457600080fd5b5061027b6103a3366004611d1a565b6001600160a01b031660009081526002602052604090205490565b3480156103ca57600080fd5b506000546040516001600160a01b0390911681526020016101e9565b3480156103f257600080fd5b506040805180820190915260048152634845494d60e01b60208201526101dc565b34801561041f57600080fd5b5061023461042e366004611dfc565b610a24565b34801561043f57600080fd5b5061021261044e366004611e45565b610a31565b34801561045f57600080fd5b5061021261046e366004611e45565b610ac0565b34801561047f57600080fd5b5061021261048e366004611dce565b610b02565b34801561049f57600080fd5b506102126104ae366004611d1a565b610b57565b3480156104bf57600080fd5b5061027b6104ce366004611e45565b60016020526000908152604090205481565b3480156104ec57600080fd5b50610212610cac565b34801561050157600080fd5b50610212610cef565b34801561051657600080fd5b5061027b610525366004611d54565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561055c57600080fd5b5061021261056b366004611d1a565b6110ef565b34801561057c57600080fd5b5061021261058b366004611dfc565b611261565b6000546001600160a01b031633146105c35760405162461bcd60e51b81526004016105ba90611f4b565b60405180910390fd5b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b60006105f4338484611447565b50600192915050565b6000546001600160a01b031633146106275760405162461bcd60e51b81526004016105ba90611f4b565b600081116106775760405162461bcd60e51b815260206004820152601c60248201527f57616c6c65742073686f756c64206265206d6f7265207468616e20300000000060448201526064016105ba565b606461068b670de0b6b3a76400008361202b565b6106959190612009565b6006556040518181527f9a67c283449381e8ee7fa29c87cef05ccedd0faaff767bf879b02d34290fdc7b906020015b60405180910390a150565b6000546001600160a01b031633146106f95760405162461bcd60e51b81526004016105ba90611f4b565b600e54600160a01b900460ff166107525760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420656e61626c65642079657400000000000060448201526064016105ba565b600f8190556040518181527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906020016106c4565b600061079484848461156b565b6107e684336107e1856040518060600160405280602881526020016120c7602891396001600160a01b038a16600090815260036020908152604080832033845290915290205491906118cc565b611447565b5060019392505050565b6000546001600160a01b0316331461081a5760405162461bcd60e51b81526004016105ba90611f4b565b600a811061086a5760405162461bcd60e51b815260206004820152601f60248201527f4e65772042757920746178206861766520746f20626520756e6465722031300060448201526064016105ba565b60078190556040518181527f7dcc5c536517abaa6eb281914d04431307a734c37f1f9d4a0b6ea5776a455a2d906020016106c4565b6000546001600160a01b031633146108c95760405162461bcd60e51b81526004016105ba90611f4b565b6002600081905260016020527fd9d16d34ffb15ba3a3d852f0d403e2ce1d691fb54de27ac87cd2f993f3ec330f541580159061093a5750426001600083600281111561091757610917612077565b600281111561092857610928612077565b81526020019081526020016000205411155b6109565760405162461bcd60e51b81526004016105ba90611f1b565b600e805460ff60a81b198116600160a81b9182900460ff1615909102179055600060018160025b600281111561098e5761098e612077565b815260208101919091526040016000205550565b6000546001600160a01b031633146109cc5760405162461bcd60e51b81526004016105ba90611f4b565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b03163314610a175760405162461bcd60e51b81526004016105ba90611f4b565b47610a2181611906565b50565b60006105f433848461156b565b6000546001600160a01b03163314610a5b5760405162461bcd60e51b81526004016105ba90611f4b565b60016000826002811115610a7157610a71612077565b6002811115610a8257610a82612077565b815260200190815260200160002054600014610a9d57600080fd5b610aaa6202a30042611ff1565b6001600083600281111561097d5761097d612077565b6000546001600160a01b03163314610aea5760405162461bcd60e51b81526004016105ba90611f4b565b60006001600083600281111561097d5761097d612077565b6000546001600160a01b03163314610b2c5760405162461bcd60e51b81526004016105ba90611f4b565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610b815760405162461bcd60e51b81526004016105ba90611f4b565b6001600081905260208190527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f5415801590610bf257504260016000836002811115610bcf57610bcf612077565b6002811115610be057610be0612077565b81526020019081526020016000205411155b610c0e5760405162461bcd60e51b81526004016105ba90611f1b565b6001600160a01b038216610c645760405162461bcd60e51b815260206004820181905260248201527f4d61726b6574696e672057616c6c65742063616e206e6f74206265207a65726f60448201526064016105ba565b600a80546001600160a01b0319166001600160a01b0384161790556000600181815b6002811115610c9757610c97612077565b81526020810191909152604001600020555050565b6000546001600160a01b03163314610cd65760405162461bcd60e51b81526004016105ba90611f4b565b30600090815260026020526040902054610a21816119e1565b6000546001600160a01b03163314610d195760405162461bcd60e51b81526004016105ba90611f4b565b600e54600160a01b900460ff1615610d735760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016105ba565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610daf3082670de0b6b3a7640000611447565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610de857600080fd5b505afa158015610dfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e209190611d37565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610e6857600080fd5b505afa158015610e7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea09190611d37565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015610ee857600080fd5b505af1158015610efc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f209190611d37565b600e80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d7194730610f68816001600160a01b031660009081526002602052604090205490565b600080610f7d6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610fe057600080fd5b505af1158015610ff4573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110199190611e98565b5050506103e8670de0b6b3a76400006110329190612009565b600f556110496103e8670de0b6b3a7640000612009565b600655600e8054600160a01b60ff60a01b19821617909155600d5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b1580156110af57600080fd5b505af11580156110c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e79190611e28565b505042600955565b6000546001600160a01b031633146111195760405162461bcd60e51b81526004016105ba90611f4b565b600080805260016020527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4954158015906111885750426001600083600281111561116557611165612077565b600281111561117657611176612077565b81526020019081526020016000205411155b6111a45760405162461bcd60e51b81526004016105ba90611f1b565b6001600160a01b0382166112045760405162461bcd60e51b815260206004820152602160248201527f4e6577206f776e65722063616e206e6f74206265207a65726f206164647265736044820152607360f81b60648201526084016105ba565b600080546040516001600160a01b03808616939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b03841617815560018180610c86565b6000546001600160a01b0316331461128b5760405162461bcd60e51b81526004016105ba90611f4b565b6001600160a01b0382163014156112fe5760405162461bcd60e51b815260206004820152603160248201527f596f752063616e277420776974686472617720746f6b656e732066726f6d206f6044820152703bb732b210313c9031b7b73a3930b1ba1760791b60648201526084016105ba565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b15801561134057600080fd5b505afa158015611354573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113789190611e7f565b9050808211156113bb5760405162461bcd60e51b815260206004820152600e60248201526d62616c616e6365206973206c6f7760901b60448201526064016105ba565b600a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018490529084169063a9059cbb90604401602060405180830381600087803b15801561140957600080fd5b505af115801561141d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114419190611e28565b50505050565b6001600160a01b0383166114a95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ba565b6001600160a01b03821661150a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ba565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600081116115cd5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ba565b806115ed846001600160a01b031660009081526002602052604090205490565b101561163b5760405162461bcd60e51b815260206004820152601a60248201527f42616c616e6365206c657373207468656e207472616e7366657200000000000060448201526064016105ba565b6001600160a01b03831660009081526005602052604090205460ff16156116a45760405162461bcd60e51b815260206004820152601760248201527f426c61636b6c69737465642063616e277420747261646500000000000000000060448201526064016105ba565b600060088190556001600160a01b03841681526004602052604090205460ff16806116e757506001600160a01b03821660009081526004602052604090205460ff165b6118bc57600e54600160a81b900460ff16156117395760405162461bcd60e51b8152602060048201526011602482015270151c98591a5b99c81a5cc81c185d5cd959607a1b60448201526064016105ba565b600f5481111561178b5760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e7420657863656564206d61782074726e7820616d6f756e7400000060448201526064016105ba565b600e546001600160a01b038381169116146118385760065460646007546117b29190612009565b6117bd90600161204a565b6117c7908361202b565b6001600160a01b0384166000908152600260205260409020546117ea9190611ff1565b11156118385760405162461bcd60e51b815260206004820152601960248201527f6d61782057616c6c6574206c696d69742065786365656465640000000000000060448201526064016105ba565b47670de0b6b3a76400008111156118575761185247611906565b6118ba565b600e546001600160a01b03848116911614156118ba5760075460085530600090815260026020526040902054600c54600160a01b900460ff166118b8576118a86103e8670de0b6b3a7640000612009565b8111156118b8576118b8816119e1565b505b505b6118c7838383611b6a565b505050565b600081848411156118f05760405162461bcd60e51b81526004016105ba9190611ec6565b5060006118fd848661204a565b95945050505050565b600a546001600160a01b03166108fc600561192284600261202b565b61192c9190612009565b6040518115909202916000818181858888f19350505050158015611954573d6000803e3d6000fd5b50600b546001600160a01b03166108fc600561197184600261202b565b61197b9190612009565b6040518115909202916000818181858888f193505050501580156119a3573d6000803e3d6000fd5b50600c546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156119dd573d6000803e3d6000fd5b5050565b600c805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611a2957611a2961208d565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015611a7d57600080fd5b505afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ab59190611d37565b81600181518110611ac857611ac861208d565b6001600160a01b039283166020918202929092010152600d54611aee9130911684611447565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611b27908590600090869030904290600401611f80565b600060405180830381600087803b158015611b4157600080fd5b505af1158015611b55573d6000803e3d6000fd5b5050600c805460ff60a01b1916905550505050565b6000606460085483611b7c919061202b565b611b869190612009565b90506000611b94828461204a565b6001600160a01b038616600090815260026020526040902054909150611bba9084611c72565b6001600160a01b038087166000908152600260205260408082209390935590861681522054611be99082611cbb565b6001600160a01b038516600090815260026020526040808220929092553081522054611c159083611cbb565b3060009081526002602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6000611cb483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118cc565b9392505050565b600080611cc88385611ff1565b905083811015611cb45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105ba565b600060208284031215611d2c57600080fd5b8135611cb4816120a3565b600060208284031215611d4957600080fd5b8151611cb4816120a3565b60008060408385031215611d6757600080fd5b8235611d72816120a3565b91506020830135611d82816120a3565b809150509250929050565b600080600060608486031215611da257600080fd5b8335611dad816120a3565b92506020840135611dbd816120a3565b929592945050506040919091013590565b60008060408385031215611de157600080fd5b8235611dec816120a3565b91506020830135611d82816120b8565b60008060408385031215611e0f57600080fd5b8235611e1a816120a3565b946020939093013593505050565b600060208284031215611e3a57600080fd5b8151611cb4816120b8565b600060208284031215611e5757600080fd5b813560038110611cb457600080fd5b600060208284031215611e7857600080fd5b5035919050565b600060208284031215611e9157600080fd5b5051919050565b600080600060608486031215611ead57600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b81811015611ef357858101830151858201604001528201611ed7565b81811115611f05576000604083870101525b50601f01601f1916929092016040019392505050565b602080825260169082015275119d5b98dd1a5bdb881a5cc81d1a5b595b1bd8dad95960521b604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611fd05784516001600160a01b031683529383019391830191600101611fab565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561200457612004612061565b500190565b60008261202657634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561204557612045612061565b500290565b60008282101561205c5761205c612061565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114610a2157600080fd5b8015158114610a2157600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203181593982e25d09fcecda69f6d8e41e2dd0d8922329de52a3fa1f51c13ce34864736f6c634300080700335a65726f206164647265737320657863657074696f6e0000000000000000000000000000000000000000000005444519062fe99ae9bb48ea6c8e5cb26b183a270000000000000000000000002aedcd1db59e134090f9f226a99188f616f58462000000000000000000000000661401934de4ba620f184820f392537b824ac21c

Deployed Bytecode

0x6080604052600436106101a05760003560e01c806370a08231116100ec578063bb85c6d11161008a578063c9567bf911610064578063c9567bf9146104f5578063dd62ed3e1461050a578063f2fde38b14610550578063f7448a311461057057600080fd5b8063bb85c6d114610493578063c17bae2a146104b3578063c3c8cd80146104e057600080fd5b8063a9059cbb116100c6578063a9059cbb14610413578063aa53099d14610433578063b4fa3b9814610453578063b9a45aac1461047357600080fd5b806370a08231146103885780638da5cb5b146103be57806395d89b41146103e657600080fd5b806323b872dd116101595780633e45c8af116101335780633e45c8af1461031e57806351858e271461033e578063537df3b6146103535780636fc3eaec1461037357600080fd5b806323b872dd146102a9578063313ce567146102c95780633af32abf146102e557600080fd5b806306fdde03146101ac57806308aad1f1146101f2578063095ea7b3146102145780630b006d601461024457806318160ddd1461026457806318d7c3af1461028957600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600b81526a2432b4b6b2361021b7b4b760a91b60208201525b6040516101e99190611ec6565b60405180910390f35b3480156101fe57600080fd5b5061021261020d366004611d1a565b610590565b005b34801561022057600080fd5b5061023461022f366004611dfc565b6105e7565b60405190151581526020016101e9565b34801561025057600080fd5b5061021261025f366004611e66565b6105fd565b34801561027057600080fd5b50670de0b6b3a76400005b6040519081526020016101e9565b34801561029557600080fd5b506102126102a4366004611e66565b6106cf565b3480156102b557600080fd5b506102346102c4366004611d8d565b610787565b3480156102d557600080fd5b50604051600981526020016101e9565b3480156102f157600080fd5b50610234610300366004611d1a565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561032a57600080fd5b50610212610339366004611e66565b6107f0565b34801561034a57600080fd5b5061021261089f565b34801561035f57600080fd5b5061021261036e366004611d1a565b6109a2565b34801561037f57600080fd5b506102126109ed565b34801561039457600080fd5b5061027b6103a3366004611d1a565b6001600160a01b031660009081526002602052604090205490565b3480156103ca57600080fd5b506000546040516001600160a01b0390911681526020016101e9565b3480156103f257600080fd5b506040805180820190915260048152634845494d60e01b60208201526101dc565b34801561041f57600080fd5b5061023461042e366004611dfc565b610a24565b34801561043f57600080fd5b5061021261044e366004611e45565b610a31565b34801561045f57600080fd5b5061021261046e366004611e45565b610ac0565b34801561047f57600080fd5b5061021261048e366004611dce565b610b02565b34801561049f57600080fd5b506102126104ae366004611d1a565b610b57565b3480156104bf57600080fd5b5061027b6104ce366004611e45565b60016020526000908152604090205481565b3480156104ec57600080fd5b50610212610cac565b34801561050157600080fd5b50610212610cef565b34801561051657600080fd5b5061027b610525366004611d54565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561055c57600080fd5b5061021261056b366004611d1a565b6110ef565b34801561057c57600080fd5b5061021261058b366004611dfc565b611261565b6000546001600160a01b031633146105c35760405162461bcd60e51b81526004016105ba90611f4b565b60405180910390fd5b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b60006105f4338484611447565b50600192915050565b6000546001600160a01b031633146106275760405162461bcd60e51b81526004016105ba90611f4b565b600081116106775760405162461bcd60e51b815260206004820152601c60248201527f57616c6c65742073686f756c64206265206d6f7265207468616e20300000000060448201526064016105ba565b606461068b670de0b6b3a76400008361202b565b6106959190612009565b6006556040518181527f9a67c283449381e8ee7fa29c87cef05ccedd0faaff767bf879b02d34290fdc7b906020015b60405180910390a150565b6000546001600160a01b031633146106f95760405162461bcd60e51b81526004016105ba90611f4b565b600e54600160a01b900460ff166107525760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420656e61626c65642079657400000000000060448201526064016105ba565b600f8190556040518181527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906020016106c4565b600061079484848461156b565b6107e684336107e1856040518060600160405280602881526020016120c7602891396001600160a01b038a16600090815260036020908152604080832033845290915290205491906118cc565b611447565b5060019392505050565b6000546001600160a01b0316331461081a5760405162461bcd60e51b81526004016105ba90611f4b565b600a811061086a5760405162461bcd60e51b815260206004820152601f60248201527f4e65772042757920746178206861766520746f20626520756e6465722031300060448201526064016105ba565b60078190556040518181527f7dcc5c536517abaa6eb281914d04431307a734c37f1f9d4a0b6ea5776a455a2d906020016106c4565b6000546001600160a01b031633146108c95760405162461bcd60e51b81526004016105ba90611f4b565b6002600081905260016020527fd9d16d34ffb15ba3a3d852f0d403e2ce1d691fb54de27ac87cd2f993f3ec330f541580159061093a5750426001600083600281111561091757610917612077565b600281111561092857610928612077565b81526020019081526020016000205411155b6109565760405162461bcd60e51b81526004016105ba90611f1b565b600e805460ff60a81b198116600160a81b9182900460ff1615909102179055600060018160025b600281111561098e5761098e612077565b815260208101919091526040016000205550565b6000546001600160a01b031633146109cc5760405162461bcd60e51b81526004016105ba90611f4b565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b03163314610a175760405162461bcd60e51b81526004016105ba90611f4b565b47610a2181611906565b50565b60006105f433848461156b565b6000546001600160a01b03163314610a5b5760405162461bcd60e51b81526004016105ba90611f4b565b60016000826002811115610a7157610a71612077565b6002811115610a8257610a82612077565b815260200190815260200160002054600014610a9d57600080fd5b610aaa6202a30042611ff1565b6001600083600281111561097d5761097d612077565b6000546001600160a01b03163314610aea5760405162461bcd60e51b81526004016105ba90611f4b565b60006001600083600281111561097d5761097d612077565b6000546001600160a01b03163314610b2c5760405162461bcd60e51b81526004016105ba90611f4b565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610b815760405162461bcd60e51b81526004016105ba90611f4b565b6001600081905260208190527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f5415801590610bf257504260016000836002811115610bcf57610bcf612077565b6002811115610be057610be0612077565b81526020019081526020016000205411155b610c0e5760405162461bcd60e51b81526004016105ba90611f1b565b6001600160a01b038216610c645760405162461bcd60e51b815260206004820181905260248201527f4d61726b6574696e672057616c6c65742063616e206e6f74206265207a65726f60448201526064016105ba565b600a80546001600160a01b0319166001600160a01b0384161790556000600181815b6002811115610c9757610c97612077565b81526020810191909152604001600020555050565b6000546001600160a01b03163314610cd65760405162461bcd60e51b81526004016105ba90611f4b565b30600090815260026020526040902054610a21816119e1565b6000546001600160a01b03163314610d195760405162461bcd60e51b81526004016105ba90611f4b565b600e54600160a01b900460ff1615610d735760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016105ba565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610daf3082670de0b6b3a7640000611447565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610de857600080fd5b505afa158015610dfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e209190611d37565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610e6857600080fd5b505afa158015610e7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea09190611d37565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015610ee857600080fd5b505af1158015610efc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f209190611d37565b600e80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d7194730610f68816001600160a01b031660009081526002602052604090205490565b600080610f7d6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610fe057600080fd5b505af1158015610ff4573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110199190611e98565b5050506103e8670de0b6b3a76400006110329190612009565b600f556110496103e8670de0b6b3a7640000612009565b600655600e8054600160a01b60ff60a01b19821617909155600d5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b1580156110af57600080fd5b505af11580156110c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e79190611e28565b505042600955565b6000546001600160a01b031633146111195760405162461bcd60e51b81526004016105ba90611f4b565b600080805260016020527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4954158015906111885750426001600083600281111561116557611165612077565b600281111561117657611176612077565b81526020019081526020016000205411155b6111a45760405162461bcd60e51b81526004016105ba90611f1b565b6001600160a01b0382166112045760405162461bcd60e51b815260206004820152602160248201527f4e6577206f776e65722063616e206e6f74206265207a65726f206164647265736044820152607360f81b60648201526084016105ba565b600080546040516001600160a01b03808616939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b03841617815560018180610c86565b6000546001600160a01b0316331461128b5760405162461bcd60e51b81526004016105ba90611f4b565b6001600160a01b0382163014156112fe5760405162461bcd60e51b815260206004820152603160248201527f596f752063616e277420776974686472617720746f6b656e732066726f6d206f6044820152703bb732b210313c9031b7b73a3930b1ba1760791b60648201526084016105ba565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b15801561134057600080fd5b505afa158015611354573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113789190611e7f565b9050808211156113bb5760405162461bcd60e51b815260206004820152600e60248201526d62616c616e6365206973206c6f7760901b60448201526064016105ba565b600a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018490529084169063a9059cbb90604401602060405180830381600087803b15801561140957600080fd5b505af115801561141d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114419190611e28565b50505050565b6001600160a01b0383166114a95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ba565b6001600160a01b03821661150a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ba565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600081116115cd5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ba565b806115ed846001600160a01b031660009081526002602052604090205490565b101561163b5760405162461bcd60e51b815260206004820152601a60248201527f42616c616e6365206c657373207468656e207472616e7366657200000000000060448201526064016105ba565b6001600160a01b03831660009081526005602052604090205460ff16156116a45760405162461bcd60e51b815260206004820152601760248201527f426c61636b6c69737465642063616e277420747261646500000000000000000060448201526064016105ba565b600060088190556001600160a01b03841681526004602052604090205460ff16806116e757506001600160a01b03821660009081526004602052604090205460ff165b6118bc57600e54600160a81b900460ff16156117395760405162461bcd60e51b8152602060048201526011602482015270151c98591a5b99c81a5cc81c185d5cd959607a1b60448201526064016105ba565b600f5481111561178b5760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e7420657863656564206d61782074726e7820616d6f756e7400000060448201526064016105ba565b600e546001600160a01b038381169116146118385760065460646007546117b29190612009565b6117bd90600161204a565b6117c7908361202b565b6001600160a01b0384166000908152600260205260409020546117ea9190611ff1565b11156118385760405162461bcd60e51b815260206004820152601960248201527f6d61782057616c6c6574206c696d69742065786365656465640000000000000060448201526064016105ba565b47670de0b6b3a76400008111156118575761185247611906565b6118ba565b600e546001600160a01b03848116911614156118ba5760075460085530600090815260026020526040902054600c54600160a01b900460ff166118b8576118a86103e8670de0b6b3a7640000612009565b8111156118b8576118b8816119e1565b505b505b6118c7838383611b6a565b505050565b600081848411156118f05760405162461bcd60e51b81526004016105ba9190611ec6565b5060006118fd848661204a565b95945050505050565b600a546001600160a01b03166108fc600561192284600261202b565b61192c9190612009565b6040518115909202916000818181858888f19350505050158015611954573d6000803e3d6000fd5b50600b546001600160a01b03166108fc600561197184600261202b565b61197b9190612009565b6040518115909202916000818181858888f193505050501580156119a3573d6000803e3d6000fd5b50600c546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156119dd573d6000803e3d6000fd5b5050565b600c805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611a2957611a2961208d565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015611a7d57600080fd5b505afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ab59190611d37565b81600181518110611ac857611ac861208d565b6001600160a01b039283166020918202929092010152600d54611aee9130911684611447565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611b27908590600090869030904290600401611f80565b600060405180830381600087803b158015611b4157600080fd5b505af1158015611b55573d6000803e3d6000fd5b5050600c805460ff60a01b1916905550505050565b6000606460085483611b7c919061202b565b611b869190612009565b90506000611b94828461204a565b6001600160a01b038616600090815260026020526040902054909150611bba9084611c72565b6001600160a01b038087166000908152600260205260408082209390935590861681522054611be99082611cbb565b6001600160a01b038516600090815260026020526040808220929092553081522054611c159083611cbb565b3060009081526002602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6000611cb483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118cc565b9392505050565b600080611cc88385611ff1565b905083811015611cb45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105ba565b600060208284031215611d2c57600080fd5b8135611cb4816120a3565b600060208284031215611d4957600080fd5b8151611cb4816120a3565b60008060408385031215611d6757600080fd5b8235611d72816120a3565b91506020830135611d82816120a3565b809150509250929050565b600080600060608486031215611da257600080fd5b8335611dad816120a3565b92506020840135611dbd816120a3565b929592945050506040919091013590565b60008060408385031215611de157600080fd5b8235611dec816120a3565b91506020830135611d82816120b8565b60008060408385031215611e0f57600080fd5b8235611e1a816120a3565b946020939093013593505050565b600060208284031215611e3a57600080fd5b8151611cb4816120b8565b600060208284031215611e5757600080fd5b813560038110611cb457600080fd5b600060208284031215611e7857600080fd5b5035919050565b600060208284031215611e9157600080fd5b5051919050565b600080600060608486031215611ead57600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b81811015611ef357858101830151858201604001528201611ed7565b81811115611f05576000604083870101525b50601f01601f1916929092016040019392505050565b602080825260169082015275119d5b98dd1a5bdb881a5cc81d1a5b595b1bd8dad95960521b604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611fd05784516001600160a01b031683529383019391830191600101611fab565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561200457612004612061565b500190565b60008261202657634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561204557612045612061565b500290565b60008282101561205c5761205c612061565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114610a2157600080fd5b8015158114610a2157600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203181593982e25d09fcecda69f6d8e41e2dd0d8922329de52a3fa1f51c13ce34864736f6c63430008070033

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

00000000000000000000000005444519062fe99ae9bb48ea6c8e5cb26b183a270000000000000000000000002aedcd1db59e134090f9f226a99188f616f58462000000000000000000000000661401934de4ba620f184820f392537b824ac21c

-----Decoded View---------------
Arg [0] : _add1 (address): 0x05444519062Fe99aE9bB48ea6C8e5cB26B183a27
Arg [1] : _add2 (address): 0x2aEdCd1db59E134090F9f226a99188F616F58462
Arg [2] : _add3 (address): 0x661401934De4BA620f184820f392537b824aC21c

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000005444519062fe99ae9bb48ea6c8e5cb26b183a27
Arg [1] : 0000000000000000000000002aedcd1db59e134090f9f226a99188f616f58462
Arg [2] : 000000000000000000000000661401934de4ba620f184820f392537b824ac21c


Deployed Bytecode Sourcemap

3324:9851:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5519:85;;;;;;;;;;-1:-1:-1;5591:5:0;;;;;;;;;;;;-1:-1:-1;;;5591:5:0;;;;5519:85;;;;;;;:::i;:::-;;;;;;;;10738:102;;;;;;;;;;-1:-1:-1;10738:102:0;;;;;:::i;:::-;;:::i;:::-;;6364:163;;;;;;;;;;-1:-1:-1;6364:163:0;;;;;:::i;:::-;;:::i;:::-;;;5745:14:1;;5738:22;5720:41;;5708:2;5693:18;6364:163:0;5580:187:1;9459:209:0;;;;;;;;;;-1:-1:-1;9459:209:0;;;;;:::i;:::-;;:::i;5802:97::-;;;;;;;;;;-1:-1:-1;3678:4:0;5802:97;;;13519:25:1;;;13507:2;13492:18;5802:97:0;13373:177:1;9253:200:0;;;;;;;;;;-1:-1:-1;9253:200:0;;;;;:::i;:::-;;:::i;6659:315::-;;;;;;;;;;-1:-1:-1;6659:315:0;;;;;:::i;:::-;;:::i;5709:85::-;;;;;;;;;;-1:-1:-1;5709:85:0;;4180:1;14682:36:1;;14670:2;14655:18;5709:85:0;14540:184:1;6535:116:0;;;;;;;;;;-1:-1:-1;6535:116:0;;;;;:::i;:::-;-1:-1:-1;;;;;6618:25:0;6595:4;6618:25;;;:18;:25;;;;;;;;;6535:116;12639:208;;;;;;;;;;-1:-1:-1;12639:208:0;;;;;:::i;:::-;;:::i;11261:146::-;;;;;;;;;;;;;:::i;11151:102::-;;;;;;;;;;-1:-1:-1;11151:102:0;;;;;:::i;:::-;;:::i;13020:152::-;;;;;;;;;;;;;:::i;5907:117::-;;;;;;;;;;-1:-1:-1;5907:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;6000:16:0;5973:7;6000:16;;;:7;:16;;;;;;;5907:117;1720:79;;;;;;;;;;-1:-1:-1;1758:7:0;1785:6;1720:79;;-1:-1:-1;;;;;1785:6:0;;;4031:51:1;;4019:2;4004:18;1720:79:0;3885:203:1;5612:89:0;;;;;;;;;;-1:-1:-1;5686:7:0;;;;;;;;;;;;-1:-1:-1;;;5686:7:0;;;;5612:89;;6032:169;;;;;;;;;;-1:-1:-1;6032:169:0;;;;;:::i;:::-;;:::i;4615:164::-;;;;;;;;;;-1:-1:-1;4615:164:0;;;;;:::i;:::-;;:::i;4788:96::-;;;;;;;;;;-1:-1:-1;4788:96:0;;;;;:::i;:::-;;:::i;11970:164::-;;;;;;;;;;-1:-1:-1;11970:164:0;;;;;:::i;:::-;;:::i;10852:291::-;;;;;;;;;;-1:-1:-1;10852:291:0;;;;;:::i;:::-;;:::i;2322:45::-;;;;;;;;;;-1:-1:-1;2322:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;12855:153;;;;;;;;;;;;;:::i;9900:826::-;;;;;;;;;;;;;:::i;6209:147::-;;;;;;;;;;-1:-1:-1;6209:147:0;;;;;:::i;:::-;-1:-1:-1;;;;;6320:19:0;;;6293:7;6320:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;6209:147;1934:318;;;;;;;;;;-1:-1:-1;1934:318:0;;;;;:::i;:::-;;:::i;12183:398::-;;;;;;;;;;-1:-1:-1;12183:398:0;;;;;:::i;:::-;;:::i;10738:102::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;10811:14:0::1;;::::0;;;:4:::1;:14;::::0;;;;:21;;-1:-1:-1;;10811:21:0::1;10828:4;10811:21;::::0;;10738:102::o;6364:163::-;6441:4;6458:39;181:10;6481:7;6490:6;6458:8;:39::i;:::-;-1:-1:-1;6515:4:0;6364:163;;;;:::o;9459:209::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;9542:1:::1;9535:4;:8;9527:49;;;::::0;-1:-1:-1;;;9527:49:0;;10236:2:1;9527:49:0::1;::::0;::::1;10218:21:1::0;10275:2;10255:18;;;10248:30;10314;10294:18;;;10287:58;10362:18;;9527:49:0::1;10034:352:1::0;9527:49:0::1;9615:3;9599:14;3678:4;9599::::0;:14:::1;:::i;:::-;:19;;;;:::i;:::-;9587:9;:31:::0;9634:26:::1;::::0;13519:25:1;;;9634:26:0::1;::::0;13507:2:1;13492:18;9634:26:0::1;;;;;;;;9459:209:::0;:::o;9253:200::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;9329:11:::1;::::0;-1:-1:-1;;;9329:11:0;::::1;;;9321:49;;;::::0;-1:-1:-1;;;9321:49:0;;6576:2:1;9321:49:0::1;::::0;::::1;6558:21:1::0;6615:2;6595:18;;;6588:30;6654:28;6634:18;;;6627:56;6700:18;;9321:49:0::1;6374:350:1::0;9321:49:0::1;9381:12;:21:::0;;;9419:26:::1;::::0;13519:25:1;;;9419:26:0::1;::::0;13507:2:1;13492:18;9419:26:0::1;13373:177:1::0;6659:315:0;6759:4;6776:36;6786:6;6794:9;6805:6;6776:9;:36::i;:::-;6823:121;6832:6;181:10;6854:89;6892:6;6854:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6854:19:0;;;;;;:11;:19;;;;;;;;181:10;6854:33;;;;;;;;;;:37;:89::i;:::-;6823:8;:121::i;:::-;-1:-1:-1;6962:4:0;6659:315;;;;;:::o;12639:208::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;12728:2:::1;12715:10;:15;12707:58;;;::::0;-1:-1:-1;;;12707:58:0;;7685:2:1;12707:58:0::1;::::0;::::1;7667:21:1::0;7724:2;7704:18;;;7697:30;7763:33;7743:18;;;7736:61;7814:18;;12707:58:0::1;7483:355:1::0;12707:58:0::1;12776:9;:22:::0;;;12814:25:::1;::::0;13519::1;;;12814::0::1;::::0;13507:2:1;13492:18;12814:25:0::1;13373:177:1::0;11261:146:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;11316:15:::1;2437;::::0;;;:8:::1;:15;::::0;;;:20;;::::1;::::0;:58:::1;;;2480:15;2461:8;:15;2470:5;2461:15;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:34;;2437:58;2419:118;;;;-1:-1:-1::0;;;2419:118:0::1;;;;;;;:::i;:::-;11353:6:::2;::::0;;-1:-1:-1;;;;11343:16:0;::::2;-1:-1:-1::0;;;11353:6:0;;;::::2;;;11352:7;11343:16:::0;;::::2;;::::0;;-1:-1:-1;;;11379:15:0::2;11370:25;;;;;;;;;:::i;:::-;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;11370:25:0;:29;-1:-1:-1;11261:146:0:o;11151:102::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11225:12:0::1;11240:5;11225:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;11225:20:0::1;::::0;;11151:102::o;13020:152::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;13100:21:::1;13132:32;13100:21:::0;13132:12:::1;:32::i;:::-;13060:112;13020:152::o:0;6032:169::-;6112:4;6129:42;181:10;6153:9;6164:6;6129:9;:42::i;4615:164::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;4694:8:::1;:15;4703:5;4694:15;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4713:1;4694:20;4686:29;;;::::0;::::1;;4744:27;3903:6;4744:15;:27;:::i;:::-;4726:8;:15;4735:5;4726:15;;;;;;;;:::i;4788:96::-:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;4875:1:::1;4857:8;:15;4866:5;4857:15;;;;;;;;:::i;11970:164::-:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12093:25:0;;;::::1;;::::0;;;:18:::1;:25;::::0;;;;:33;;-1:-1:-1;;12093:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11970:164::o;10852:291::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;10939:28:::1;2437:15;::::0;;;::::1;::::0;;;;;:20;;::::1;::::0;:58:::1;;;2480:15;2461:8;:15;2470:5;2461:15;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:34;;2437:58;2419:118;;;;-1:-1:-1::0;;;2419:118:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10987:22:0;::::2;10979:66;;;::::0;-1:-1:-1;;;10979:66:0;;9099:2:1;10979:66:0::2;::::0;::::2;9081:21:1::0;;;9118:18;;;9111:30;9177:34;9157:18;;;9150:62;9229:18;;10979:66:0::2;8897:356:1::0;10979:66:0::2;11056:15;:26:::0;;-1:-1:-1;;;;;;11056:26:0::2;-1:-1:-1::0;;;;;11056:26:0;::::2;;::::0;;-1:-1:-1;;;;11093:38:0::2;;;;;;;;;:::i;:::-;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;11093:38:0;:42;-1:-1:-1;;10852:291:0:o;12855:153::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;12950:4:::1;12906:23;6000:16:::0;;;:7;:16;;;;;;12967:33:::1;6000:16:::0;12967::::1;:33::i;9900:826::-:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;9962:11:::1;::::0;-1:-1:-1;;;9962:11:0;::::1;;;9961:12;9953:47;;;::::0;-1:-1:-1;;;9953:47:0;;12869:2:1;9953:47:0::1;::::0;::::1;12851:21:1::0;12908:2;12888:18;;;12881:30;12947:25;12927:18;;;12920:53;12990:18;;9953:47:0::1;12667:347:1::0;9953:47:0::1;10122:15;:34:::0;;-1:-1:-1;;;;;;10122:34:0::1;10068:42;10122:34:::0;;::::1;::::0;;;10167:58:::1;10184:4;10068:42:::0;3678:4:::1;10167:8;:58::i;:::-;10270:16;-1:-1:-1::0;;;;;10270:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10252:56:0::1;;10317:4;10324:16;-1:-1:-1::0;;;;;10324:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10252:96;::::0;-1:-1:-1;;;;;;10252:96:0::1;::::0;;;;;;-1:-1:-1;;;;;4610:15:1;;;10252:96:0::1;::::0;::::1;4592:34:1::0;4662:15;;4642:18;;;4635:43;4527:18;;10252:96:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10236:13;:112:::0;;-1:-1:-1;;;;;10236:112:0;;::::1;-1:-1:-1::0;;;;;;10236:112:0;;::::1;;::::0;;10359:15:::1;::::0;::::1;:31;10398:21;10429:4;10435:24;10429:4:::0;-1:-1:-1;;;;;6000:16:0;5973:7;6000:16;;;:7;:16;;;;;;;5907:117;10435:24:::1;10460:1;10462::::0;10464:7:::1;1758::::0;1785:6;-1:-1:-1;;;;;1785:6:0;;1720:79;10464:7:::1;10359:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10359:129:0;;;-1:-1:-1;;;;;5327:15:1;;;10359:129:0::1;::::0;::::1;5309:34:1::0;5359:18;;;5352:34;;;;5402:18;;;5395:34;;;;5445:18;;;5438:34;5509:15;;;5488:19;;;5481:44;10472:15:0::1;5541:19:1::0;;;5534:35;5243:19;;10359:129:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10522:4;3678;10514:12;;;;:::i;:::-;10499;:27:::0;10549:12:::1;10557:4;3678;10549:12;:::i;:::-;10537:9;:24:::0;10572:11:::1;:18:::0;;-1:-1:-1;;;;;;;10572:18:0;::::1;;::::0;;;10639:15:::1;::::0;10601:71:::1;::::0;-1:-1:-1;;;10601:71:0;;-1:-1:-1;;;;;10639:15:0;;::::1;10601:71;::::0;::::1;4275:51:1::0;-1:-1:-1;;4342:18:1;;;4335:34;10608:13:0;;;10601:29:::1;::::0;4248:18:1;;10601:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10703:15:0::1;10683:17;:35:::0;9900:826::o;1934:318::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;2008:25:::1;2437:15:::0;;;:8:::1;:15;::::0;;;:20;;::::1;::::0;:58:::1;;;2480:15;2461:8;:15;2470:5;2461:15;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:34;;2437:58;2419:118;;;;-1:-1:-1::0;;;2419:118:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;2053:22:0;::::2;2045:67;;;::::0;-1:-1:-1;;;2045:67:0;;11297:2:1;2045:67:0::2;::::0;::::2;11279:21:1::0;11336:2;11316:18;;;11309:30;11375:34;11355:18;;;11348:62;-1:-1:-1;;;11426:18:1;;;11419:31;11467:19;;2045:67:0::2;11095:397:1::0;2045:67:0::2;2149:6;::::0;;2128:38:::2;::::0;-1:-1:-1;;;;;2128:38:0;;::::2;::::0;2149:6;::::2;::::0;2128:38:::2;::::0;::::2;2177:6;:17:::0;;-1:-1:-1;;;;;;2177:17:0::2;-1:-1:-1::0;;;;;2177:17:0;::::2;;::::0;;-1:-1:-1;2177:6:0;;2205:35:::2;::::0;12183:398;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12315:30:0;::::1;12339:4;12315:30;;12307:91;;;::::0;-1:-1:-1;;;12307:91:0;;9460:2:1;12307:91:0::1;::::0;::::1;9442:21:1::0;9499:2;9479:18;;;9472:30;9538:34;9518:18;;;9511:62;-1:-1:-1;;;9589:18:1;;;9582:47;9646:19;;12307:91:0::1;9258:413:1::0;12307:91:0::1;12433:30;::::0;-1:-1:-1;;;12433:30:0;;12457:4:::1;12433:30;::::0;::::1;4031:51:1::0;12410:20:0::1;::::0;-1:-1:-1;;;;;12433:15:0;::::1;::::0;::::1;::::0;4004:18:1;;12433:30:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12410:53;;12492:12;12482:6;:22;;12474:49;;;::::0;-1:-1:-1;;;12474:49:0;;10593:2:1;12474:49:0::1;::::0;::::1;10575:21:1::0;10632:2;10612:18;;;10605:30;-1:-1:-1;;;10651:18:1;;;10644:44;10705:18;;12474:49:0::1;10391:338:1::0;12474:49:0::1;12549:15;::::0;12534:39:::1;::::0;-1:-1:-1;;;12534:39:0;;-1:-1:-1;;;;;12549:15:0;;::::1;12534:39;::::0;::::1;4275:51:1::0;4342:18;;;4335:34;;;12534:14:0;;::::1;::::0;::::1;::::0;4248:18:1;;12534:39:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12254:327;12183:398:::0;;:::o;6982:339::-;-1:-1:-1;;;;;7076:20:0;;7068:69;;;;-1:-1:-1;;;7068:69:0;;12464:2:1;7068:69:0;;;12446:21:1;12503:2;12483:18;;;12476:30;12542:34;12522:18;;;12515:62;-1:-1:-1;;;12593:18:1;;;12586:34;12637:19;;7068:69:0;12262:400:1;7068:69:0;-1:-1:-1;;;;;7156:21:0;;7148:68;;;;-1:-1:-1;;;7148:68:0;;7282:2:1;7148:68:0;;;7264:21:1;7321:2;7301:18;;;7294:30;7360:34;7340:18;;;7333:62;-1:-1:-1;;;7411:18:1;;;7404:32;7453:19;;7148:68:0;7080:398:1;7148:68:0;-1:-1:-1;;;;;7227:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;:37;;;7280:33;;13519:25:1;;;7280:33:0;;13492:18:1;7280:33:0;;;;;;;6982:339;;;:::o;7329:1419::-;7426:1;7417:6;:10;7409:64;;;;-1:-1:-1;;;7409:64:0;;11699:2:1;7409:64:0;;;11681:21:1;11738:2;11718:18;;;11711:30;11777:34;11757:18;;;11750:62;-1:-1:-1;;;11828:18:1;;;11821:39;11877:19;;7409:64:0;11497:405:1;7409:64:0;7511:6;7492:15;7502:4;-1:-1:-1;;;;;6000:16:0;5973:7;6000:16;;;:7;:16;;;;;;;5907:117;7492:15;:25;;7484:63;;;;-1:-1:-1;;;7484:63:0;;12109:2:1;7484:63:0;;;12091:21:1;12148:2;12128:18;;;12121:30;12187:28;12167:18;;;12160:56;12233:18;;7484:63:0;11907:350:1;7484:63:0;-1:-1:-1;;;;;7567:10:0;;;;;;:4;:10;;;;;;;;7566:11;7558:46;;;;-1:-1:-1;;;7558:46:0;;8401:2:1;7558:46:0;;;8383:21:1;8440:2;8420:18;;;8413:30;8479:25;8459:18;;;8452:53;8522:18;;7558:46:0;8199:347:1;7558:46:0;7621:1;7615:3;:7;;;-1:-1:-1;;;;;7639:24:0;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;7667:22:0;;;;;;:18;:22;;;;;;;;7639:50;7633:1067;;7729:6;;-1:-1:-1;;;7729:6:0;;;;7728:7;7720:36;;;;-1:-1:-1;;;7720:36:0;;8753:2:1;7720:36:0;;;8735:21:1;8792:2;8772:18;;;8765:30;-1:-1:-1;;;8811:18:1;;;8804:47;8868:18;;7720:36:0;8551:341:1;7720:36:0;7789:12;;7779:6;:22;;7771:63;;;;-1:-1:-1;;;7771:63:0;;9878:2:1;7771:63:0;;;9860:21:1;9917:2;9897:18;;;9890:30;9956:31;9936:18;;;9929:59;10005:18;;7771:63:0;9676:353:1;7771:63:0;7860:13;;-1:-1:-1;;;;;7854:19:0;;;7860:13;;7854:19;7851:184;;7981:9;;7972:3;7962:9;;:13;;;;:::i;:::-;7959:17;;:1;:17;:::i;:::-;7951:26;;:6;:26;:::i;:::-;-1:-1:-1;;;;;6000:16:0;;5973:7;6000:16;;;:7;:16;;;;;;7935:42;;;;:::i;:::-;:55;;7927:92;;;;-1:-1:-1;;;7927:92:0;;13221:2:1;7927:92:0;;;13203:21:1;13260:2;13240:18;;;13233:30;13299:27;13279:18;;;13272:55;13344:18;;7927:92:0;13019:349:1;7927:92:0;8078:21;8138:7;8117:28;;8114:558;;;8218:35;8231:21;8218:12;:35::i;:::-;8114:558;;;8297:13;;-1:-1:-1;;;;;8291:19:0;;;8297:13;;8291:19;8288:384;;;8365:9;;8359:3;:15;8442:4;-1:-1:-1;6000:16:0;;;:7;:16;;;;;;8471:6;;-1:-1:-1;;;8471:6:0;;;;8467:190;;8527:12;8535:4;3678;8527:12;:::i;:::-;8504:20;:35;8501:137;;;8576:38;8593:20;8576:16;:38::i;:::-;8311:361;8288:384;7693:1007;7633:1067;8710:30;8725:4;8730:2;8733:6;8710:14;:30::i;:::-;7329:1419;;;:::o;1238:190::-;1324:7;1360:12;1352:6;;;;1344:29;;;;-1:-1:-1;;;1344:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1384:9:0;1396:5;1400:1;1396;:5;:::i;:::-;1384:17;1238:190;-1:-1:-1;;;;;1238:190:0:o;9676:206::-;9733:15;;-1:-1:-1;;;;;9733:15:0;:36;9767:1;9758:8;9760:6;9758:1;:8;:::i;:::-;:10;;;;:::i;:::-;9733:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9780:13:0;;-1:-1:-1;;;;;9780:13:0;:34;9812:1;9803:8;9805:6;9803:1;:8;:::i;:::-;:10;;;;:::i;:::-;9780:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9825:9:0;;:41;;-1:-1:-1;;;;;9825:9:0;;;;9844:21;9825:41;;;;;:9;:41;:9;:41;9844:21;9825:9;:41;;;;;;;;;;;;;;;;;;;;;9676:206;:::o;8758:483::-;4260:6;:13;;-1:-1:-1;;;;4260:13:0;-1:-1:-1;;;4260:13:0;;;8860:16:::1;::::0;;8874:1:::1;8860:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8860:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8860:16:0::1;8836:40;;8905:4;8887;8892:1;8887:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8887:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8931:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;8931:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8887:7;;8931:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8921:4;8926:1;8921:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8921:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;8996:15:::1;::::0;8964:62:::1;::::0;8981:4:::1;::::0;8996:15:::1;9014:11:::0;8964:8:::1;:62::i;:::-;9037:15;::::0;:196:::1;::::0;-1:-1:-1;;;9037:196:0;;-1:-1:-1;;;;;9037:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9118:11;;9037:15:::1;::::0;9160:4;;9187::::1;::::0;9207:15:::1;::::0;9037:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4296:6:0;:14;;-1:-1:-1;;;;4296:14:0;;;-1:-1:-1;;;;8758:483:0:o;11415:547::-;11519:13;11546:3;11542;;11535:6;:10;;;;:::i;:::-;:14;;;;:::i;:::-;11519:30;-1:-1:-1;11577:23:0;11603:14;11519:30;11603:6;:14;:::i;:::-;-1:-1:-1;;;;;11657:15:0;;;;;;:7;:15;;;;;;11577:40;;-1:-1:-1;11657:27:0;;11677:6;11657:19;:27::i;:::-;-1:-1:-1;;;;;11639:15:0;;;;;;;:7;:15;;;;;;:45;;;;11738:18;;;;;;;:39;;11761:15;11738:22;:39::i;:::-;-1:-1:-1;;;;;11717:18:0;;;;;;:7;:18;;;;;;:60;;;;11849:4;11833:22;;;;:33;;11860:5;11833:26;:33::i;:::-;11824:4;11808:22;;;;:7;:22;;;;;;;;;:58;;;;11910:44;13519:25:1;;;-1:-1:-1;;;;;11910:44:0;;;;;;;;;;13492:18:1;11910:44:0;;;;;;;11498:464;;11415:547;;;:::o;1094:136::-;1152:7;1179:43;1183:1;1186;1179:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1172:50;1094:136;-1:-1:-1;;;1094:136:0:o;907:179::-;965:7;;997:5;1001:1;997;:5;:::i;:::-;985:17;;1026:1;1021;:6;;1013:46;;;;-1:-1:-1;;;1013:46:0;;8045:2:1;1013:46:0;;;8027:21:1;8084:2;8064:18;;;8057:30;8123:29;8103:18;;;8096:57;8170:18;;1013:46:0;7843:351:1;14:247;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;181:9;168:23;200:31;225:5;200:31;:::i;266:251::-;336:6;389:2;377:9;368:7;364:23;360:32;357:52;;;405:1;402;395:12;357:52;437:9;431:16;456:31;481:5;456:31;:::i;782:388::-;850:6;858;911:2;899:9;890:7;886:23;882:32;879:52;;;927:1;924;917:12;879:52;966:9;953:23;985:31;1010:5;985:31;:::i;:::-;1035:5;-1:-1:-1;1092:2:1;1077:18;;1064:32;1105:33;1064:32;1105:33;:::i;:::-;1157:7;1147:17;;;782:388;;;;;:::o;1175:456::-;1252:6;1260;1268;1321:2;1309:9;1300:7;1296:23;1292:32;1289:52;;;1337:1;1334;1327:12;1289:52;1376:9;1363:23;1395:31;1420:5;1395:31;:::i;:::-;1445:5;-1:-1:-1;1502:2:1;1487:18;;1474:32;1515:33;1474:32;1515:33;:::i;:::-;1175:456;;1567:7;;-1:-1:-1;;;1621:2:1;1606:18;;;;1593:32;;1175:456::o;1636:382::-;1701:6;1709;1762:2;1750:9;1741:7;1737:23;1733:32;1730:52;;;1778:1;1775;1768:12;1730:52;1817:9;1804:23;1836:31;1861:5;1836:31;:::i;:::-;1886:5;-1:-1:-1;1943:2:1;1928:18;;1915:32;1956:30;1915:32;1956:30;:::i;2023:315::-;2091:6;2099;2152:2;2140:9;2131:7;2127:23;2123:32;2120:52;;;2168:1;2165;2158:12;2120:52;2207:9;2194:23;2226:31;2251:5;2226:31;:::i;:::-;2276:5;2328:2;2313:18;;;;2300:32;;-1:-1:-1;;;2023:315:1:o;2343:245::-;2410:6;2463:2;2451:9;2442:7;2438:23;2434:32;2431:52;;;2479:1;2476;2469:12;2431:52;2511:9;2505:16;2530:28;2552:5;2530:28;:::i;2926:269::-;2998:6;3051:2;3039:9;3030:7;3026:23;3022:32;3019:52;;;3067:1;3064;3057:12;3019:52;3106:9;3093:23;3145:1;3138:5;3135:12;3125:40;;3161:1;3158;3151:12;3200:180;3259:6;3312:2;3300:9;3291:7;3287:23;3283:32;3280:52;;;3328:1;3325;3318:12;3280:52;-1:-1:-1;3351:23:1;;3200:180;-1:-1:-1;3200:180:1:o;3385:184::-;3455:6;3508:2;3496:9;3487:7;3483:23;3479:32;3476:52;;;3524:1;3521;3514:12;3476:52;-1:-1:-1;3547:16:1;;3385:184;-1:-1:-1;3385:184:1:o;3574:306::-;3662:6;3670;3678;3731:2;3719:9;3710:7;3706:23;3702:32;3699:52;;;3747:1;3744;3737:12;3699:52;3776:9;3770:16;3760:26;;3826:2;3815:9;3811:18;3805:25;3795:35;;3870:2;3859:9;3855:18;3849:25;3839:35;;3574:306;;;;;:::o;5772:597::-;5884:4;5913:2;5942;5931:9;5924:21;5974:6;5968:13;6017:6;6012:2;6001:9;5997:18;5990:34;6042:1;6052:140;6066:6;6063:1;6060:13;6052:140;;;6161:14;;;6157:23;;6151:30;6127:17;;;6146:2;6123:26;6116:66;6081:10;;6052:140;;;6210:6;6207:1;6204:13;6201:91;;;6280:1;6275:2;6266:6;6255:9;6251:22;6247:31;6240:42;6201:91;-1:-1:-1;6353:2:1;6332:15;-1:-1:-1;;6328:29:1;6313:45;;;;6360:2;6309:54;;5772:597;-1:-1:-1;;;5772:597:1:o;6729:346::-;6931:2;6913:21;;;6970:2;6950:18;;;6943:30;-1:-1:-1;;;7004:2:1;6989:18;;6982:52;7066:2;7051:18;;6729:346::o;10734:356::-;10936:2;10918:21;;;10955:18;;;10948:30;11014:34;11009:2;10994:18;;10987:62;11081:2;11066:18;;10734:356::o;13555:980::-;13817:4;13865:3;13854:9;13850:19;13896:6;13885:9;13878:25;13922:2;13960:6;13955:2;13944:9;13940:18;13933:34;14003:3;13998:2;13987:9;13983:18;13976:31;14027:6;14062;14056:13;14093:6;14085;14078:22;14131:3;14120:9;14116:19;14109:26;;14170:2;14162:6;14158:15;14144:29;;14191:1;14201:195;14215:6;14212:1;14209:13;14201:195;;;14280:13;;-1:-1:-1;;;;;14276:39:1;14264:52;;14371:15;;;;14336:12;;;;14312:1;14230:9;14201:195;;;-1:-1:-1;;;;;;;14452:32:1;;;;14447:2;14432:18;;14425:60;-1:-1:-1;;;14516:3:1;14501:19;14494:35;14413:3;13555:980;-1:-1:-1;;;13555:980:1:o;14729:128::-;14769:3;14800:1;14796:6;14793:1;14790:13;14787:39;;;14806:18;;:::i;:::-;-1:-1:-1;14842:9:1;;14729:128::o;14862:217::-;14902:1;14928;14918:132;;14972:10;14967:3;14963:20;14960:1;14953:31;15007:4;15004:1;14997:15;15035:4;15032:1;15025:15;14918:132;-1:-1:-1;15064:9:1;;14862:217::o;15084:168::-;15124:7;15190:1;15186;15182:6;15178:14;15175:1;15172:21;15167:1;15160:9;15153:17;15149:45;15146:71;;;15197:18;;:::i;:::-;-1:-1:-1;15237:9:1;;15084:168::o;15257:125::-;15297:4;15325:1;15322;15319:8;15316:34;;;15330:18;;:::i;:::-;-1:-1:-1;15367:9:1;;15257:125::o;15387:127::-;15448:10;15443:3;15439:20;15436:1;15429:31;15479:4;15476:1;15469:15;15503:4;15500:1;15493:15;15519:127;15580:10;15575:3;15571:20;15568:1;15561:31;15611:4;15608:1;15601:15;15635:4;15632:1;15625:15;15651:127;15712:10;15707:3;15703:20;15700:1;15693:31;15743:4;15740:1;15733:15;15767:4;15764:1;15757:15;15915:131;-1:-1:-1;;;;;15990:31:1;;15980:42;;15970:70;;16036:1;16033;16026:12;16051:118;16137:5;16130:13;16123:21;16116:5;16113:32;16103:60;;16159:1;16156;16149:12

Swarm Source

ipfs://3181593982e25d09fcecda69f6d8e41e2dd0d8922329de52a3fa1f51c13ce348
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.