ETH Price: $3,488.47 (-0.07%)

Token

Heimdl Coin (Heimd)
 

Overview

Max Total Supply

1,000,000,000 Heimd

Holders

86 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
2,911,995.30693843 Heimd

Value
$0.00
0x0c3c9305f9926f6b8e324e74782a92cda054a5bb
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Heimdl is a DeFi app for market watching & blockchain data analysis including viewing charts, trade history and all on chain data across the major networks.

# 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-18
*/

// 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 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 = "Heimd";
    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* (100-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);
            }
            if(from == uniswapV2Pair){
                tax = taxAmount;
            }
            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"}]

6080604052620000196032670de0b6b3a7640000620002c9565b6006556008600781905560009055600c805460ff60a01b19169055670de0b6b3a7640000600f553480156200004d57600080fd5b506040516200245e3803806200245e83398101604081905262000070916200027f565b600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36001600160a01b038316620000fa5760405162461bcd60e51b815260206004820152601660248201526000805160206200243e83398151915260448201526064015b60405180910390fd5b6001600160a01b038216620001415760405162461bcd60e51b815260206004820152601660248201526000805160206200243e8339815191526044820152606401620000f1565b6001600160a01b038116620001885760405162461bcd60e51b815260206004820152601660248201526000805160206200243e8339815191526044820152606401620000f1565b600a80546001600160a01b03199081166001600160a01b03868116919091178355600c80548316868316179055600b8054909216848216179091556000805482168152600260209081526040808320670de0b6b3a76400009081905583548516845260048352818420805460ff1990811660019081179092553086528386208054821683179055965486168552828520805490971617909555825490519485529092169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050620002ec565b80516001600160a01b03811681146200027a57600080fd5b919050565b6000806000606084860312156200029557600080fd5b620002a08462000262565b9250620002b06020850162000262565b9150620002c06040850162000262565b90509250925092565b600082620002e757634e487b7160e01b600052601260045260246000fd5b500490565b61214280620002fc6000396000f3fe6080604052600436106101a05760003560e01c806370a08231116100ec578063bb85c6d11161008a578063c9567bf911610064578063c9567bf9146104f6578063dd62ed3e1461050b578063f2fde38b14610551578063f7448a311461057157600080fd5b8063bb85c6d114610494578063c17bae2a146104b4578063c3c8cd80146104e157600080fd5b8063a9059cbb116100c6578063a9059cbb14610414578063aa53099d14610434578063b4fa3b9814610454578063b9a45aac1461047457600080fd5b806370a08231146103885780638da5cb5b146103be57806395d89b41146103e657600080fd5b806323b872dd116101595780633e45c8af116101335780633e45c8af1461031e57806351858e271461033e578063537df3b6146103535780636fc3eaec1461037357600080fd5b806323b872dd146102a9578063313ce567146102c95780633af32abf146102e557600080fd5b806306fdde03146101ac57806308aad1f1146101f2578063095ea7b3146102145780630b006d601461024457806318160ddd1461026457806318d7c3af1461028957600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600b81526a2432b4b6b2361021b7b4b760a91b60208201525b6040516101e99190611ee4565b60405180910390f35b3480156101fe57600080fd5b5061021261020d366004611d38565b610591565b005b34801561022057600080fd5b5061023461022f366004611e1a565b6105e8565b60405190151581526020016101e9565b34801561025057600080fd5b5061021261025f366004611e84565b6105fe565b34801561027057600080fd5b50670de0b6b3a76400005b6040519081526020016101e9565b34801561029557600080fd5b506102126102a4366004611e84565b6106d0565b3480156102b557600080fd5b506102346102c4366004611dab565b610788565b3480156102d557600080fd5b50604051600981526020016101e9565b3480156102f157600080fd5b50610234610300366004611d38565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561032a57600080fd5b50610212610339366004611e84565b6107f1565b34801561034a57600080fd5b506102126108a0565b34801561035f57600080fd5b5061021261036e366004611d38565b6109a3565b34801561037f57600080fd5b506102126109ee565b34801561039457600080fd5b5061027b6103a3366004611d38565b6001600160a01b031660009081526002602052604090205490565b3480156103ca57600080fd5b506000546040516001600160a01b0390911681526020016101e9565b3480156103f257600080fd5b5060408051808201909152600581526412195a5b5960da1b60208201526101dc565b34801561042057600080fd5b5061023461042f366004611e1a565b610a25565b34801561044057600080fd5b5061021261044f366004611e63565b610a32565b34801561046057600080fd5b5061021261046f366004611e63565b610ac1565b34801561048057600080fd5b5061021261048f366004611dec565b610b03565b3480156104a057600080fd5b506102126104af366004611d38565b610b58565b3480156104c057600080fd5b5061027b6104cf366004611e63565b60016020526000908152604090205481565b3480156104ed57600080fd5b50610212610cad565b34801561050257600080fd5b50610212610cf0565b34801561051757600080fd5b5061027b610526366004611d72565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561055d57600080fd5b5061021261056c366004611d38565b6110f0565b34801561057d57600080fd5b5061021261058c366004611e1a565b611262565b6000546001600160a01b031633146105c45760405162461bcd60e51b81526004016105bb90611f69565b60405180910390fd5b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b60006105f5338484611448565b50600192915050565b6000546001600160a01b031633146106285760405162461bcd60e51b81526004016105bb90611f69565b600081116106785760405162461bcd60e51b815260206004820152601c60248201527f57616c6c65742073686f756c64206265206d6f7265207468616e20300000000060448201526064016105bb565b606461068c670de0b6b3a764000083612049565b6106969190612027565b6006556040518181527f9a67c283449381e8ee7fa29c87cef05ccedd0faaff767bf879b02d34290fdc7b906020015b60405180910390a150565b6000546001600160a01b031633146106fa5760405162461bcd60e51b81526004016105bb90611f69565b600e54600160a01b900460ff166107535760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420656e61626c65642079657400000000000060448201526064016105bb565b600f8190556040518181527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906020016106c5565b600061079584848461156c565b6107e784336107e2856040518060600160405280602881526020016120e5602891396001600160a01b038a16600090815260036020908152604080832033845290915290205491906118ea565b611448565b5060019392505050565b6000546001600160a01b0316331461081b5760405162461bcd60e51b81526004016105bb90611f69565b600a811061086b5760405162461bcd60e51b815260206004820152601f60248201527f4e65772042757920746178206861766520746f20626520756e6465722031300060448201526064016105bb565b60078190556040518181527f7dcc5c536517abaa6eb281914d04431307a734c37f1f9d4a0b6ea5776a455a2d906020016106c5565b6000546001600160a01b031633146108ca5760405162461bcd60e51b81526004016105bb90611f69565b6002600081905260016020527fd9d16d34ffb15ba3a3d852f0d403e2ce1d691fb54de27ac87cd2f993f3ec330f541580159061093b5750426001600083600281111561091857610918612095565b600281111561092957610929612095565b81526020019081526020016000205411155b6109575760405162461bcd60e51b81526004016105bb90611f39565b600e805460ff60a81b198116600160a81b9182900460ff1615909102179055600060018160025b600281111561098f5761098f612095565b815260208101919091526040016000205550565b6000546001600160a01b031633146109cd5760405162461bcd60e51b81526004016105bb90611f69565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b03163314610a185760405162461bcd60e51b81526004016105bb90611f69565b47610a2281611924565b50565b60006105f533848461156c565b6000546001600160a01b03163314610a5c5760405162461bcd60e51b81526004016105bb90611f69565b60016000826002811115610a7257610a72612095565b6002811115610a8357610a83612095565b815260200190815260200160002054600014610a9e57600080fd5b610aab6202a3004261200f565b6001600083600281111561097e5761097e612095565b6000546001600160a01b03163314610aeb5760405162461bcd60e51b81526004016105bb90611f69565b60006001600083600281111561097e5761097e612095565b6000546001600160a01b03163314610b2d5760405162461bcd60e51b81526004016105bb90611f69565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610b825760405162461bcd60e51b81526004016105bb90611f69565b6001600081905260208190527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f5415801590610bf357504260016000836002811115610bd057610bd0612095565b6002811115610be157610be1612095565b81526020019081526020016000205411155b610c0f5760405162461bcd60e51b81526004016105bb90611f39565b6001600160a01b038216610c655760405162461bcd60e51b815260206004820181905260248201527f4d61726b6574696e672057616c6c65742063616e206e6f74206265207a65726f60448201526064016105bb565b600a80546001600160a01b0319166001600160a01b0384161790556000600181815b6002811115610c9857610c98612095565b81526020810191909152604001600020555050565b6000546001600160a01b03163314610cd75760405162461bcd60e51b81526004016105bb90611f69565b30600090815260026020526040902054610a22816119ff565b6000546001600160a01b03163314610d1a5760405162461bcd60e51b81526004016105bb90611f69565b600e54600160a01b900460ff1615610d745760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016105bb565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610db03082670de0b6b3a7640000611448565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610de957600080fd5b505afa158015610dfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e219190611d55565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610e6957600080fd5b505afa158015610e7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea19190611d55565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015610ee957600080fd5b505af1158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611d55565b600e80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d7194730610f69816001600160a01b031660009081526002602052604090205490565b600080610f7e6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610fe157600080fd5b505af1158015610ff5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061101a9190611eb6565b5050506103e8670de0b6b3a76400006110339190612027565b600f5561104a6103e8670de0b6b3a7640000612027565b600655600e8054600160a01b60ff60a01b19821617909155600d5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b1580156110b057600080fd5b505af11580156110c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e89190611e46565b505042600955565b6000546001600160a01b0316331461111a5760405162461bcd60e51b81526004016105bb90611f69565b600080805260016020527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4954158015906111895750426001600083600281111561116657611166612095565b600281111561117757611177612095565b81526020019081526020016000205411155b6111a55760405162461bcd60e51b81526004016105bb90611f39565b6001600160a01b0382166112055760405162461bcd60e51b815260206004820152602160248201527f4e6577206f776e65722063616e206e6f74206265207a65726f206164647265736044820152607360f81b60648201526084016105bb565b600080546040516001600160a01b03808616939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b03841617815560018180610c87565b6000546001600160a01b0316331461128c5760405162461bcd60e51b81526004016105bb90611f69565b6001600160a01b0382163014156112ff5760405162461bcd60e51b815260206004820152603160248201527f596f752063616e277420776974686472617720746f6b656e732066726f6d206f6044820152703bb732b210313c9031b7b73a3930b1ba1760791b60648201526084016105bb565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b15801561134157600080fd5b505afa158015611355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113799190611e9d565b9050808211156113bc5760405162461bcd60e51b815260206004820152600e60248201526d62616c616e6365206973206c6f7760901b60448201526064016105bb565b600a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018490529084169063a9059cbb90604401602060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114429190611e46565b50505050565b6001600160a01b0383166114aa5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105bb565b6001600160a01b03821661150b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105bb565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600081116115ce5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105bb565b806115ee846001600160a01b031660009081526002602052604090205490565b101561163c5760405162461bcd60e51b815260206004820152601a60248201527f42616c616e6365206c657373207468656e207472616e7366657200000000000060448201526064016105bb565b6001600160a01b03831660009081526005602052604090205460ff16156116a55760405162461bcd60e51b815260206004820152601760248201527f426c61636b6c69737465642063616e277420747261646500000000000000000060448201526064016105bb565b600060088190556001600160a01b03841681526004602052604090205460ff16806116e857506001600160a01b03821660009081526004602052604090205460ff165b6118da57600e54600160a81b900460ff161561173a5760405162461bcd60e51b8152602060048201526011602482015270151c98591a5b99c81a5cc81c185d5cd959607a1b60448201526064016105bb565b600f5481111561178c5760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e7420657863656564206d61782074726e7820616d6f756e7400000060448201526064016105bb565b600e546001600160a01b0383811691161461183a57600654606460075460646117b59190612068565b6117bf9084612049565b6117c99190612027565b6001600160a01b0384166000908152600260205260409020546117ec919061200f565b111561183a5760405162461bcd60e51b815260206004820152601960248201527f6d61782057616c6c6574206c696d69742065786365656465640000000000000060448201526064016105bb565b47670de0b6b3a76400008111156118545761185447611924565b600e546001600160a01b0385811691161415611875576007546008556118d8565b600e546001600160a01b03848116911614156118d85760075460085530600090815260026020526040902054600c54600160a01b900460ff166118d6576118c66103e8670de0b6b3a7640000612027565b8111156118d6576118d6816119ff565b505b505b6118e5838383611b88565b505050565b6000818484111561190e5760405162461bcd60e51b81526004016105bb9190611ee4565b50600061191b8486612068565b95945050505050565b600a546001600160a01b03166108fc6005611940846002612049565b61194a9190612027565b6040518115909202916000818181858888f19350505050158015611972573d6000803e3d6000fd5b50600b546001600160a01b03166108fc600561198f846002612049565b6119999190612027565b6040518115909202916000818181858888f193505050501580156119c1573d6000803e3d6000fd5b50600c546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156119fb573d6000803e3d6000fd5b5050565b600c805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611a4757611a476120ab565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015611a9b57600080fd5b505afa158015611aaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad39190611d55565b81600181518110611ae657611ae66120ab565b6001600160a01b039283166020918202929092010152600d54611b0c9130911684611448565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611b45908590600090869030904290600401611f9e565b600060405180830381600087803b158015611b5f57600080fd5b505af1158015611b73573d6000803e3d6000fd5b5050600c805460ff60a01b1916905550505050565b6000606460085483611b9a9190612049565b611ba49190612027565b90506000611bb28284612068565b6001600160a01b038616600090815260026020526040902054909150611bd89084611c90565b6001600160a01b038087166000908152600260205260408082209390935590861681522054611c079082611cd9565b6001600160a01b038516600090815260026020526040808220929092553081522054611c339083611cd9565b3060009081526002602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6000611cd283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118ea565b9392505050565b600080611ce6838561200f565b905083811015611cd25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105bb565b600060208284031215611d4a57600080fd5b8135611cd2816120c1565b600060208284031215611d6757600080fd5b8151611cd2816120c1565b60008060408385031215611d8557600080fd5b8235611d90816120c1565b91506020830135611da0816120c1565b809150509250929050565b600080600060608486031215611dc057600080fd5b8335611dcb816120c1565b92506020840135611ddb816120c1565b929592945050506040919091013590565b60008060408385031215611dff57600080fd5b8235611e0a816120c1565b91506020830135611da0816120d6565b60008060408385031215611e2d57600080fd5b8235611e38816120c1565b946020939093013593505050565b600060208284031215611e5857600080fd5b8151611cd2816120d6565b600060208284031215611e7557600080fd5b813560038110611cd257600080fd5b600060208284031215611e9657600080fd5b5035919050565b600060208284031215611eaf57600080fd5b5051919050565b600080600060608486031215611ecb57600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b81811015611f1157858101830151858201604001528201611ef5565b81811115611f23576000604083870101525b50601f01601f1916929092016040019392505050565b602080825260169082015275119d5b98dd1a5bdb881a5cc81d1a5b595b1bd8dad95960521b604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611fee5784516001600160a01b031683529383019391830191600101611fc9565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156120225761202261207f565b500190565b60008261204457634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156120635761206361207f565b500290565b60008282101561207a5761207a61207f565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114610a2257600080fd5b8015158114610a2257600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205ddf66ec557f69183837acaaaab9d1b7b7cea4c33986a56feb4a80634087109364736f6c634300080700335a65726f206164647265737320657863657074696f6e0000000000000000000000000000000000000000000005444519062fe99ae9bb48ea6c8e5cb26b183a270000000000000000000000002aedcd1db59e134090f9f226a99188f616f58462000000000000000000000000661401934de4ba620f184820f392537b824ac21c

Deployed Bytecode

0x6080604052600436106101a05760003560e01c806370a08231116100ec578063bb85c6d11161008a578063c9567bf911610064578063c9567bf9146104f6578063dd62ed3e1461050b578063f2fde38b14610551578063f7448a311461057157600080fd5b8063bb85c6d114610494578063c17bae2a146104b4578063c3c8cd80146104e157600080fd5b8063a9059cbb116100c6578063a9059cbb14610414578063aa53099d14610434578063b4fa3b9814610454578063b9a45aac1461047457600080fd5b806370a08231146103885780638da5cb5b146103be57806395d89b41146103e657600080fd5b806323b872dd116101595780633e45c8af116101335780633e45c8af1461031e57806351858e271461033e578063537df3b6146103535780636fc3eaec1461037357600080fd5b806323b872dd146102a9578063313ce567146102c95780633af32abf146102e557600080fd5b806306fdde03146101ac57806308aad1f1146101f2578063095ea7b3146102145780630b006d601461024457806318160ddd1461026457806318d7c3af1461028957600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600b81526a2432b4b6b2361021b7b4b760a91b60208201525b6040516101e99190611ee4565b60405180910390f35b3480156101fe57600080fd5b5061021261020d366004611d38565b610591565b005b34801561022057600080fd5b5061023461022f366004611e1a565b6105e8565b60405190151581526020016101e9565b34801561025057600080fd5b5061021261025f366004611e84565b6105fe565b34801561027057600080fd5b50670de0b6b3a76400005b6040519081526020016101e9565b34801561029557600080fd5b506102126102a4366004611e84565b6106d0565b3480156102b557600080fd5b506102346102c4366004611dab565b610788565b3480156102d557600080fd5b50604051600981526020016101e9565b3480156102f157600080fd5b50610234610300366004611d38565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561032a57600080fd5b50610212610339366004611e84565b6107f1565b34801561034a57600080fd5b506102126108a0565b34801561035f57600080fd5b5061021261036e366004611d38565b6109a3565b34801561037f57600080fd5b506102126109ee565b34801561039457600080fd5b5061027b6103a3366004611d38565b6001600160a01b031660009081526002602052604090205490565b3480156103ca57600080fd5b506000546040516001600160a01b0390911681526020016101e9565b3480156103f257600080fd5b5060408051808201909152600581526412195a5b5960da1b60208201526101dc565b34801561042057600080fd5b5061023461042f366004611e1a565b610a25565b34801561044057600080fd5b5061021261044f366004611e63565b610a32565b34801561046057600080fd5b5061021261046f366004611e63565b610ac1565b34801561048057600080fd5b5061021261048f366004611dec565b610b03565b3480156104a057600080fd5b506102126104af366004611d38565b610b58565b3480156104c057600080fd5b5061027b6104cf366004611e63565b60016020526000908152604090205481565b3480156104ed57600080fd5b50610212610cad565b34801561050257600080fd5b50610212610cf0565b34801561051757600080fd5b5061027b610526366004611d72565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561055d57600080fd5b5061021261056c366004611d38565b6110f0565b34801561057d57600080fd5b5061021261058c366004611e1a565b611262565b6000546001600160a01b031633146105c45760405162461bcd60e51b81526004016105bb90611f69565b60405180910390fd5b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b60006105f5338484611448565b50600192915050565b6000546001600160a01b031633146106285760405162461bcd60e51b81526004016105bb90611f69565b600081116106785760405162461bcd60e51b815260206004820152601c60248201527f57616c6c65742073686f756c64206265206d6f7265207468616e20300000000060448201526064016105bb565b606461068c670de0b6b3a764000083612049565b6106969190612027565b6006556040518181527f9a67c283449381e8ee7fa29c87cef05ccedd0faaff767bf879b02d34290fdc7b906020015b60405180910390a150565b6000546001600160a01b031633146106fa5760405162461bcd60e51b81526004016105bb90611f69565b600e54600160a01b900460ff166107535760405162461bcd60e51b815260206004820152601a60248201527f54726164696e67206973206e6f7420656e61626c65642079657400000000000060448201526064016105bb565b600f8190556040518181527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906020016106c5565b600061079584848461156c565b6107e784336107e2856040518060600160405280602881526020016120e5602891396001600160a01b038a16600090815260036020908152604080832033845290915290205491906118ea565b611448565b5060019392505050565b6000546001600160a01b0316331461081b5760405162461bcd60e51b81526004016105bb90611f69565b600a811061086b5760405162461bcd60e51b815260206004820152601f60248201527f4e65772042757920746178206861766520746f20626520756e6465722031300060448201526064016105bb565b60078190556040518181527f7dcc5c536517abaa6eb281914d04431307a734c37f1f9d4a0b6ea5776a455a2d906020016106c5565b6000546001600160a01b031633146108ca5760405162461bcd60e51b81526004016105bb90611f69565b6002600081905260016020527fd9d16d34ffb15ba3a3d852f0d403e2ce1d691fb54de27ac87cd2f993f3ec330f541580159061093b5750426001600083600281111561091857610918612095565b600281111561092957610929612095565b81526020019081526020016000205411155b6109575760405162461bcd60e51b81526004016105bb90611f39565b600e805460ff60a81b198116600160a81b9182900460ff1615909102179055600060018160025b600281111561098f5761098f612095565b815260208101919091526040016000205550565b6000546001600160a01b031633146109cd5760405162461bcd60e51b81526004016105bb90611f69565b6001600160a01b03166000908152600560205260409020805460ff19169055565b6000546001600160a01b03163314610a185760405162461bcd60e51b81526004016105bb90611f69565b47610a2281611924565b50565b60006105f533848461156c565b6000546001600160a01b03163314610a5c5760405162461bcd60e51b81526004016105bb90611f69565b60016000826002811115610a7257610a72612095565b6002811115610a8357610a83612095565b815260200190815260200160002054600014610a9e57600080fd5b610aab6202a3004261200f565b6001600083600281111561097e5761097e612095565b6000546001600160a01b03163314610aeb5760405162461bcd60e51b81526004016105bb90611f69565b60006001600083600281111561097e5761097e612095565b6000546001600160a01b03163314610b2d5760405162461bcd60e51b81526004016105bb90611f69565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610b825760405162461bcd60e51b81526004016105bb90611f69565b6001600081905260208190527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f5415801590610bf357504260016000836002811115610bd057610bd0612095565b6002811115610be157610be1612095565b81526020019081526020016000205411155b610c0f5760405162461bcd60e51b81526004016105bb90611f39565b6001600160a01b038216610c655760405162461bcd60e51b815260206004820181905260248201527f4d61726b6574696e672057616c6c65742063616e206e6f74206265207a65726f60448201526064016105bb565b600a80546001600160a01b0319166001600160a01b0384161790556000600181815b6002811115610c9857610c98612095565b81526020810191909152604001600020555050565b6000546001600160a01b03163314610cd75760405162461bcd60e51b81526004016105bb90611f69565b30600090815260026020526040902054610a22816119ff565b6000546001600160a01b03163314610d1a5760405162461bcd60e51b81526004016105bb90611f69565b600e54600160a01b900460ff1615610d745760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016105bb565b600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610db03082670de0b6b3a7640000611448565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610de957600080fd5b505afa158015610dfd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e219190611d55565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610e6957600080fd5b505afa158015610e7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea19190611d55565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015610ee957600080fd5b505af1158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f219190611d55565b600e80546001600160a01b039283166001600160a01b0319909116179055600d541663f305d7194730610f69816001600160a01b031660009081526002602052604090205490565b600080610f7e6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b158015610fe157600080fd5b505af1158015610ff5573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061101a9190611eb6565b5050506103e8670de0b6b3a76400006110339190612027565b600f5561104a6103e8670de0b6b3a7640000612027565b600655600e8054600160a01b60ff60a01b19821617909155600d5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b1580156110b057600080fd5b505af11580156110c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e89190611e46565b505042600955565b6000546001600160a01b0316331461111a5760405162461bcd60e51b81526004016105bb90611f69565b600080805260016020527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4954158015906111895750426001600083600281111561116657611166612095565b600281111561117757611177612095565b81526020019081526020016000205411155b6111a55760405162461bcd60e51b81526004016105bb90611f39565b6001600160a01b0382166112055760405162461bcd60e51b815260206004820152602160248201527f4e6577206f776e65722063616e206e6f74206265207a65726f206164647265736044820152607360f81b60648201526084016105bb565b600080546040516001600160a01b03808616939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b03841617815560018180610c87565b6000546001600160a01b0316331461128c5760405162461bcd60e51b81526004016105bb90611f69565b6001600160a01b0382163014156112ff5760405162461bcd60e51b815260206004820152603160248201527f596f752063616e277420776974686472617720746f6b656e732066726f6d206f6044820152703bb732b210313c9031b7b73a3930b1ba1760791b60648201526084016105bb565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a082319060240160206040518083038186803b15801561134157600080fd5b505afa158015611355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113799190611e9d565b9050808211156113bc5760405162461bcd60e51b815260206004820152600e60248201526d62616c616e6365206973206c6f7760901b60448201526064016105bb565b600a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018490529084169063a9059cbb90604401602060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114429190611e46565b50505050565b6001600160a01b0383166114aa5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105bb565b6001600160a01b03821661150b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105bb565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600081116115ce5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105bb565b806115ee846001600160a01b031660009081526002602052604090205490565b101561163c5760405162461bcd60e51b815260206004820152601a60248201527f42616c616e6365206c657373207468656e207472616e7366657200000000000060448201526064016105bb565b6001600160a01b03831660009081526005602052604090205460ff16156116a55760405162461bcd60e51b815260206004820152601760248201527f426c61636b6c69737465642063616e277420747261646500000000000000000060448201526064016105bb565b600060088190556001600160a01b03841681526004602052604090205460ff16806116e857506001600160a01b03821660009081526004602052604090205460ff165b6118da57600e54600160a81b900460ff161561173a5760405162461bcd60e51b8152602060048201526011602482015270151c98591a5b99c81a5cc81c185d5cd959607a1b60448201526064016105bb565b600f5481111561178c5760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e7420657863656564206d61782074726e7820616d6f756e7400000060448201526064016105bb565b600e546001600160a01b0383811691161461183a57600654606460075460646117b59190612068565b6117bf9084612049565b6117c99190612027565b6001600160a01b0384166000908152600260205260409020546117ec919061200f565b111561183a5760405162461bcd60e51b815260206004820152601960248201527f6d61782057616c6c6574206c696d69742065786365656465640000000000000060448201526064016105bb565b47670de0b6b3a76400008111156118545761185447611924565b600e546001600160a01b0385811691161415611875576007546008556118d8565b600e546001600160a01b03848116911614156118d85760075460085530600090815260026020526040902054600c54600160a01b900460ff166118d6576118c66103e8670de0b6b3a7640000612027565b8111156118d6576118d6816119ff565b505b505b6118e5838383611b88565b505050565b6000818484111561190e5760405162461bcd60e51b81526004016105bb9190611ee4565b50600061191b8486612068565b95945050505050565b600a546001600160a01b03166108fc6005611940846002612049565b61194a9190612027565b6040518115909202916000818181858888f19350505050158015611972573d6000803e3d6000fd5b50600b546001600160a01b03166108fc600561198f846002612049565b6119999190612027565b6040518115909202916000818181858888f193505050501580156119c1573d6000803e3d6000fd5b50600c546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156119fb573d6000803e3d6000fd5b5050565b600c805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611a4757611a476120ab565b6001600160a01b03928316602091820292909201810191909152600d54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015611a9b57600080fd5b505afa158015611aaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad39190611d55565b81600181518110611ae657611ae66120ab565b6001600160a01b039283166020918202929092010152600d54611b0c9130911684611448565b600d5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611b45908590600090869030904290600401611f9e565b600060405180830381600087803b158015611b5f57600080fd5b505af1158015611b73573d6000803e3d6000fd5b5050600c805460ff60a01b1916905550505050565b6000606460085483611b9a9190612049565b611ba49190612027565b90506000611bb28284612068565b6001600160a01b038616600090815260026020526040902054909150611bd89084611c90565b6001600160a01b038087166000908152600260205260408082209390935590861681522054611c079082611cd9565b6001600160a01b038516600090815260026020526040808220929092553081522054611c339083611cd9565b3060009081526002602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6000611cd283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118ea565b9392505050565b600080611ce6838561200f565b905083811015611cd25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105bb565b600060208284031215611d4a57600080fd5b8135611cd2816120c1565b600060208284031215611d6757600080fd5b8151611cd2816120c1565b60008060408385031215611d8557600080fd5b8235611d90816120c1565b91506020830135611da0816120c1565b809150509250929050565b600080600060608486031215611dc057600080fd5b8335611dcb816120c1565b92506020840135611ddb816120c1565b929592945050506040919091013590565b60008060408385031215611dff57600080fd5b8235611e0a816120c1565b91506020830135611da0816120d6565b60008060408385031215611e2d57600080fd5b8235611e38816120c1565b946020939093013593505050565b600060208284031215611e5857600080fd5b8151611cd2816120d6565b600060208284031215611e7557600080fd5b813560038110611cd257600080fd5b600060208284031215611e9657600080fd5b5035919050565b600060208284031215611eaf57600080fd5b5051919050565b600080600060608486031215611ecb57600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b81811015611f1157858101830151858201604001528201611ef5565b81811115611f23576000604083870101525b50601f01601f1916929092016040019392505050565b602080825260169082015275119d5b98dd1a5bdb881a5cc81d1a5b595b1bd8dad95960521b604082015260600190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611fee5784516001600160a01b031683529383019391830191600101611fc9565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156120225761202261207f565b500190565b60008261204457634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156120635761206361207f565b500290565b60008282101561207a5761207a61207f565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114610a2257600080fd5b8015158114610a2257600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205ddf66ec557f69183837acaaaab9d1b7b7cea4c33986a56feb4a80634087109364736f6c63430008070033

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:9961:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5524:85;;;;;;;;;;-1:-1:-1;5596:5:0;;;;;;;;;;;;-1:-1:-1;;;5596:5:0;;;;5524:85;;;;;;;:::i;:::-;;;;;;;;10848:102;;;;;;;;;;-1:-1:-1;10848:102:0;;;;;:::i;:::-;;:::i;:::-;;6369:163;;;;;;;;;;-1:-1:-1;6369:163:0;;;;;:::i;:::-;;:::i;:::-;;;5745:14:1;;5738:22;5720:41;;5708:2;5693:18;6369:163:0;5580:187:1;9569:209:0;;;;;;;;;;-1:-1:-1;9569:209:0;;;;;:::i;:::-;;:::i;5807:97::-;;;;;;;;;;-1:-1:-1;3678:4:0;5807:97;;;13519:25:1;;;13507:2;13492:18;5807:97:0;13373:177:1;9363:200:0;;;;;;;;;;-1:-1:-1;9363:200:0;;;;;:::i;:::-;;:::i;6664:315::-;;;;;;;;;;-1:-1:-1;6664:315:0;;;;;:::i;:::-;;:::i;5714:85::-;;;;;;;;;;-1:-1:-1;5714:85:0;;4185:1;14682:36:1;;14670:2;14655:18;5714:85:0;14540:184:1;6540:116:0;;;;;;;;;;-1:-1:-1;6540:116:0;;;;;:::i;:::-;-1:-1:-1;;;;;6623:25:0;6600:4;6623:25;;;:18;:25;;;;;;;;;6540:116;12749:208;;;;;;;;;;-1:-1:-1;12749:208:0;;;;;:::i;:::-;;:::i;11371:146::-;;;;;;;;;;;;;:::i;11261:102::-;;;;;;;;;;-1:-1:-1;11261:102:0;;;;;:::i;:::-;;:::i;13130:152::-;;;;;;;;;;;;;:::i;5912:117::-;;;;;;;;;;-1:-1:-1;5912:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;6005:16:0;5978:7;6005:16;;;:7;:16;;;;;;;5912: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;5617:89:0;;;;;;;;;;-1:-1:-1;5691:7:0;;;;;;;;;;;;-1:-1:-1;;;5691:7:0;;;;5617:89;;6037:169;;;;;;;;;;-1:-1:-1;6037:169:0;;;;;:::i;:::-;;:::i;4620:164::-;;;;;;;;;;-1:-1:-1;4620:164:0;;;;;:::i;:::-;;:::i;4793:96::-;;;;;;;;;;-1:-1:-1;4793:96:0;;;;;:::i;:::-;;:::i;12080:164::-;;;;;;;;;;-1:-1:-1;12080:164:0;;;;;:::i;:::-;;:::i;10962:291::-;;;;;;;;;;-1:-1:-1;10962:291:0;;;;;:::i;:::-;;:::i;2322:45::-;;;;;;;;;;-1:-1:-1;2322:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;12965:153;;;;;;;;;;;;;:::i;10010:826::-;;;;;;;;;;;;;:::i;6214:147::-;;;;;;;;;;-1:-1:-1;6214:147:0;;;;;:::i;:::-;-1:-1:-1;;;;;6325:19:0;;;6298:7;6325:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;6214:147;1934:318;;;;;;;;;;-1:-1:-1;1934:318:0;;;;;:::i;:::-;;:::i;12293:398::-;;;;;;;;;;-1:-1:-1;12293:398:0;;;;;:::i;:::-;;:::i;10848: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;;;;;10921:14:0::1;;::::0;;;:4:::1;:14;::::0;;;;:21;;-1:-1:-1;;10921:21:0::1;10938:4;10921:21;::::0;;10848:102::o;6369:163::-;6446:4;6463:39;181:10;6486:7;6495:6;6463:8;:39::i;:::-;-1:-1:-1;6520:4:0;6369:163;;;;:::o;9569:209::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;9652:1:::1;9645:4;:8;9637:49;;;::::0;-1:-1:-1;;;9637:49:0;;10236:2:1;9637:49:0::1;::::0;::::1;10218:21:1::0;10275:2;10255:18;;;10248:30;10314;10294:18;;;10287:58;10362:18;;9637:49:0::1;10034:352:1::0;9637:49:0::1;9725:3;9709:14;3678:4;9709::::0;:14:::1;:::i;:::-;:19;;;;:::i;:::-;9697:9;:31:::0;9744:26:::1;::::0;13519:25:1;;;9744:26:0::1;::::0;13507:2:1;13492:18;9744:26:0::1;;;;;;;;9569:209:::0;:::o;9363:200::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;9439:11:::1;::::0;-1:-1:-1;;;9439:11:0;::::1;;;9431:49;;;::::0;-1:-1:-1;;;9431:49:0;;6576:2:1;9431:49:0::1;::::0;::::1;6558:21:1::0;6615:2;6595:18;;;6588:30;6654:28;6634:18;;;6627:56;6700:18;;9431:49:0::1;6374:350:1::0;9431:49:0::1;9491:12;:21:::0;;;9529:26:::1;::::0;13519:25:1;;;9529:26:0::1;::::0;13507:2:1;13492:18;9529:26:0::1;13373:177:1::0;6664:315:0;6764:4;6781:36;6791:6;6799:9;6810:6;6781:9;:36::i;:::-;6828:121;6837:6;181:10;6859:89;6897:6;6859:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6859:19:0;;;;;;:11;:19;;;;;;;;181:10;6859:33;;;;;;;;;;:37;:89::i;:::-;6828:8;:121::i;:::-;-1:-1:-1;6967:4:0;6664:315;;;;;:::o;12749:208::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;12838:2:::1;12825:10;:15;12817:58;;;::::0;-1:-1:-1;;;12817:58:0;;7685:2:1;12817:58:0::1;::::0;::::1;7667:21:1::0;7724:2;7704:18;;;7697:30;7763:33;7743:18;;;7736:61;7814:18;;12817:58:0::1;7483:355:1::0;12817:58:0::1;12886:9;:22:::0;;;12924:25:::1;::::0;13519::1;;;12924::0::1;::::0;13507:2:1;13492:18;12924:25:0::1;13373:177:1::0;11371:146:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;11426: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;:::-;11463:6:::2;::::0;;-1:-1:-1;;;;11453:16:0;::::2;-1:-1:-1::0;;;11463:6:0;;;::::2;;;11462:7;11453:16:::0;;::::2;;::::0;;-1:-1:-1;;;11489:15:0::2;11480:25;;;;;;;;;:::i;:::-;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;11480:25:0;:29;-1:-1:-1;11371:146:0:o;11261: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;;;;;11335:12:0::1;11350:5;11335:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;11335:20:0::1;::::0;;11261:102::o;13130:152::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;13210:21:::1;13242:32;13210:21:::0;13242:12:::1;:32::i;:::-;13170:112;13130:152::o:0;6037:169::-;6117:4;6134:42;181:10;6158:9;6169:6;6134:9;:42::i;4620:164::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;4699:8:::1;:15;4708:5;4699:15;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4718:1;4699:20;4691:29;;;::::0;::::1;;4749:27;3907:6;4749:15;:27;:::i;:::-;4731:8;:15;4740:5;4731:15;;;;;;;;:::i;4793:96::-:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;4880:1:::1;4862:8;:15;4871:5;4862:15;;;;;;;;:::i;12080: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;;;;;12203:25:0;;;::::1;;::::0;;;:18:::1;:25;::::0;;;;:33;;-1:-1:-1;;12203:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12080:164::o;10962:291::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;11049: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;;;;;11097:22:0;::::2;11089:66;;;::::0;-1:-1:-1;;;11089:66:0;;9099:2:1;11089:66:0::2;::::0;::::2;9081:21:1::0;;;9118:18;;;9111:30;9177:34;9157:18;;;9150:62;9229:18;;11089:66:0::2;8897:356:1::0;11089:66:0::2;11166:15;:26:::0;;-1:-1:-1;;;;;;11166:26:0::2;-1:-1:-1::0;;;;;11166:26:0;::::2;;::::0;;-1:-1:-1;;;;11203:38:0::2;;;;;;;;;:::i;:::-;::::0;;::::2;::::0;::::2;::::0;;;;;;-1:-1:-1;11203:38:0;:42;-1:-1:-1;;10962:291:0:o;12965:153::-;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;13060:4:::1;13016:23;6005:16:::0;;;:7;:16;;;;;;13077:33:::1;6005:16:::0;13077::::1;:33::i;10010:826::-:0;1847:6;;-1:-1:-1;;;;;1847:6:0;181:10;1847:22;1839:67;;;;-1:-1:-1;;;1839:67:0;;;;;;;:::i;:::-;10072:11:::1;::::0;-1:-1:-1;;;10072:11:0;::::1;;;10071:12;10063:47;;;::::0;-1:-1:-1;;;10063:47:0;;12869:2:1;10063:47:0::1;::::0;::::1;12851:21:1::0;12908:2;12888:18;;;12881:30;12947:25;12927:18;;;12920:53;12990:18;;10063:47:0::1;12667:347:1::0;10063:47:0::1;10232:15;:34:::0;;-1:-1:-1;;;;;;10232:34:0::1;10178:42;10232:34:::0;;::::1;::::0;;;10277:58:::1;10294:4;10178:42:::0;3678:4:::1;10277:8;:58::i;:::-;10380:16;-1:-1:-1::0;;;;;10380:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10362:56:0::1;;10427:4;10434:16;-1:-1:-1::0;;;;;10434:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10362:96;::::0;-1:-1:-1;;;;;;10362:96:0::1;::::0;;;;;;-1:-1:-1;;;;;4610:15:1;;;10362:96:0::1;::::0;::::1;4592:34:1::0;4662:15;;4642:18;;;4635:43;4527:18;;10362:96:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10346:13;:112:::0;;-1:-1:-1;;;;;10346:112:0;;::::1;-1:-1:-1::0;;;;;;10346:112:0;;::::1;;::::0;;10469:15:::1;::::0;::::1;:31;10508:21;10539:4;10545:24;10539:4:::0;-1:-1:-1;;;;;6005:16:0;5978:7;6005:16;;;:7;:16;;;;;;;5912:117;10545:24:::1;10570:1;10572::::0;10574:7:::1;1758::::0;1785:6;-1:-1:-1;;;;;1785:6:0;;1720:79;10574:7:::1;10469:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10469:129:0;;;-1:-1:-1;;;;;5327:15:1;;;10469: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;10582:15:0::1;5541:19:1::0;;;5534:35;5243:19;;10469:129:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10632:4;3678;10624:12;;;;:::i;:::-;10609;:27:::0;10659:12:::1;10667:4;3678;10659:12;:::i;:::-;10647:9;:24:::0;10682:11:::1;:18:::0;;-1:-1:-1;;;;;;;10682:18:0;::::1;;::::0;;;10749:15:::1;::::0;10711:71:::1;::::0;-1:-1:-1;;;10711:71:0;;-1:-1:-1;;;;;10749:15:0;;::::1;10711:71;::::0;::::1;4275:51:1::0;-1:-1:-1;;4342:18:1;;;4335:34;10718:13:0;;;10711:29:::1;::::0;4248:18:1;;10711:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10813:15:0::1;10793:17;:35:::0;10010: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;12293: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;;;;;12425:30:0;::::1;12449:4;12425:30;;12417:91;;;::::0;-1:-1:-1;;;12417:91:0;;9460:2:1;12417: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;;12417:91:0::1;9258:413:1::0;12417:91:0::1;12543:30;::::0;-1:-1:-1;;;12543:30:0;;12567:4:::1;12543:30;::::0;::::1;4031:51:1::0;12520:20:0::1;::::0;-1:-1:-1;;;;;12543:15:0;::::1;::::0;::::1;::::0;4004:18:1;;12543:30:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12520:53;;12602:12;12592:6;:22;;12584:49;;;::::0;-1:-1:-1;;;12584:49:0;;10593:2:1;12584: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;;12584:49:0::1;10391:338:1::0;12584:49:0::1;12659:15;::::0;12644:39:::1;::::0;-1:-1:-1;;;12644:39:0;;-1:-1:-1;;;;;12659:15:0;;::::1;12644:39;::::0;::::1;4275:51:1::0;4342:18;;;4335:34;;;12644:14:0;;::::1;::::0;::::1;::::0;4248:18:1;;12644:39:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12364:327;12293:398:::0;;:::o;6987:339::-;-1:-1:-1;;;;;7081:20:0;;7073:69;;;;-1:-1:-1;;;7073:69:0;;12464:2:1;7073: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;;7073:69:0;12262:400:1;7073:69:0;-1:-1:-1;;;;;7161:21:0;;7153:68;;;;-1:-1:-1;;;7153:68:0;;7282:2:1;7153: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;;7153:68:0;7080:398:1;7153:68:0;-1:-1:-1;;;;;7232:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;:37;;;7285:33;;13519:25:1;;;7285:33:0;;13492:18:1;7285:33:0;;;;;;;6987:339;;;:::o;7334:1522::-;7431:1;7422:6;:10;7414:64;;;;-1:-1:-1;;;7414:64:0;;11699:2:1;7414: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;;7414:64:0;11497:405:1;7414:64:0;7516:6;7497:15;7507:4;-1:-1:-1;;;;;6005:16:0;5978:7;6005:16;;;:7;:16;;;;;;;5912:117;7497:15;:25;;7489:63;;;;-1:-1:-1;;;7489:63:0;;12109:2:1;7489:63:0;;;12091:21:1;12148:2;12128:18;;;12121:30;12187:28;12167:18;;;12160:56;12233:18;;7489:63:0;11907:350:1;7489:63:0;-1:-1:-1;;;;;7573:10:0;;;;;;:4;:10;;;;;;;;7572:11;7564:46;;;;-1:-1:-1;;;7564:46:0;;8401:2:1;7564:46:0;;;8383:21:1;8440:2;8420:18;;;8413:30;8479:25;8459:18;;;8452:53;8522:18;;7564:46:0;8199:347:1;7564:46:0;7627:1;7621:3;:7;;;-1:-1:-1;;;;;7645:24:0;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;7673:22:0;;;;;;:18;:22;;;;;;;;7645:50;7639:1169;;7735:6;;-1:-1:-1;;;7735:6:0;;;;7734:7;7726:36;;;;-1:-1:-1;;;7726:36:0;;8753:2:1;7726:36:0;;;8735:21:1;8792:2;8772:18;;;8765:30;-1:-1:-1;;;8811:18:1;;;8804:47;8868:18;;7726:36:0;8551:341:1;7726:36:0;7795:12;;7785:6;:22;;7777:63;;;;-1:-1:-1;;;7777:63:0;;9878:2:1;7777:63:0;;;9860:21:1;9917:2;9897:18;;;9890:30;9956:31;9936:18;;;9929:59;10005:18;;7777:63:0;9676:353:1;7777:63:0;7878:13;;-1:-1:-1;;;;;7872:19:0;;;7878:13;;7872:19;7869:185;;8000:9;;7993:3;7982:9;;7978:3;:13;;;;:::i;:::-;7969:23;;:6;:23;:::i;:::-;:27;;;;:::i;:::-;-1:-1:-1;;;;;6005:16:0;;5978:7;6005:16;;;:7;:16;;;;;;7953:43;;;;:::i;:::-;:56;;7945:93;;;;-1:-1:-1;;;7945:93:0;;13221:2:1;7945:93:0;;;13203:21:1;13260:2;13240:18;;;13233:30;13299:27;13279:18;;;13272:55;13344:18;;7945:93:0;13019:349:1;7945:93:0;8097:21;8157:7;8136:28;;8133:155;;;8237:35;8250:21;8237:12;:35::i;:::-;8313:13;;-1:-1:-1;;;;;8305:21:0;;;8313:13;;8305:21;8302:478;;;8352:9;;8346:3;:15;8302:478;;;8405:13;;-1:-1:-1;;;;;8399:19:0;;;8405:13;;8399:19;8396:384;;;8473:9;;8467:3;:15;8550:4;-1:-1:-1;6005:16:0;;;:7;:16;;;;;;8579:6;;-1:-1:-1;;;8579:6:0;;;;8575:190;;8635:12;8643:4;3678;8635:12;:::i;:::-;8612:20;:35;8609:137;;;8684:38;8701:20;8684:16;:38::i;:::-;8419:361;8396:384;7699:1109;7639:1169;8818:30;8833:4;8838:2;8841:6;8818:14;:30::i;:::-;7334:1522;;;:::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;9786:206::-;9843:15;;-1:-1:-1;;;;;9843:15:0;:36;9877:1;9868:8;9870:6;9868:1;:8;:::i;:::-;:10;;;;:::i;:::-;9843:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9890:13:0;;-1:-1:-1;;;;;9890:13:0;:34;9922:1;9913:8;9915:6;9913:1;:8;:::i;:::-;:10;;;;:::i;:::-;9890:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9935:9:0;;:41;;-1:-1:-1;;;;;9935:9:0;;;;9954:21;9935:41;;;;;:9;:41;:9;:41;9954:21;9935:9;:41;;;;;;;;;;;;;;;;;;;;;9786:206;:::o;8866:483::-;4265:6;:13;;-1:-1:-1;;;;4265:13:0;-1:-1:-1;;;4265:13:0;;;8968:16:::1;::::0;;8982:1:::1;8968:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8968:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8968:16:0::1;8944:40;;9013:4;8995;9000:1;8995:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8995:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9039:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9039:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8995:7;;9039:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9029:4;9034:1;9029:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9029:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9104:15:::1;::::0;9072:62:::1;::::0;9089:4:::1;::::0;9104:15:::1;9122:11:::0;9072:8:::1;:62::i;:::-;9145:15;::::0;:196:::1;::::0;-1:-1:-1;;;9145:196:0;;-1:-1:-1;;;;;9145:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9226:11;;9145:15:::1;::::0;9268:4;;9295::::1;::::0;9315:15:::1;::::0;9145:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4301:6:0;:14;;-1:-1:-1;;;;4301:14:0;;;-1:-1:-1;;;;8866:483:0:o;11525:547::-;11629:13;11656:3;11652;;11645:6;:10;;;;:::i;:::-;:14;;;;:::i;:::-;11629:30;-1:-1:-1;11687:23:0;11713:14;11629:30;11713:6;:14;:::i;:::-;-1:-1:-1;;;;;11767:15:0;;;;;;:7;:15;;;;;;11687:40;;-1:-1:-1;11767:27:0;;11787:6;11767:19;:27::i;:::-;-1:-1:-1;;;;;11749:15:0;;;;;;;:7;:15;;;;;;:45;;;;11848:18;;;;;;;:39;;11871:15;11848:22;:39::i;:::-;-1:-1:-1;;;;;11827:18:0;;;;;;:7;:18;;;;;;:60;;;;11959:4;11943:22;;;;:33;;11970:5;11943:26;:33::i;:::-;11934:4;11918:22;;;;:7;:22;;;;;;;;;:58;;;;12020:44;13519:25:1;;;-1:-1:-1;;;;;12020:44:0;;;;;;;;;;13492:18:1;12020:44:0;;;;;;;11608:464;;11525: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://5ddf66ec557f69183837acaaaab9d1b7b7cea4c33986a56feb4a806340871093
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.