ETH Price: $3,279.21 (+0.86%)
Gas: 2 Gwei

Token

Neuromachine Eternal (NRM)
 

Overview

Max Total Supply

4,660,833,333.02 NRM

Holders

11,651

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
43,875 NRM

Value
$0.00
0xefab8cfdcc14fb38e10583f92e154f0826a6d197
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:
NRM

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-05-12
*/

pragma solidity 0.5.8;

// ----------------------------------------------------------------------------
// NRM token main contract (2019)
//
// Symbol       : NRM
// Name         : Neuromachine Eternal
// Total supply : 4.958.333.333 (burnable)
// Decimals     : 18
//
// Telegram @SergeyKalich
// ----------------------------------------------------------------------------

library SafeMath {
    function add(uint a, uint b) internal pure returns (uint c) { c = a + b; require(c >= a); }
    function sub(uint a, uint b) internal pure returns (uint c) { require(b <= a); c = a - b; }
    function mul(uint a, uint b) internal pure returns (uint c) { c = a * b; require(a == 0 || c / a == b); }
    function div(uint a, uint b) internal pure returns (uint c) { require(b > 0); c = a / b; }
}

// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
// ----------------------------------------------------------------------------

contract ERC20Interface {
    function totalSupply() public view returns (uint);
    function balanceOf(address tokenOwner) public view returns (uint balance);
    function allowance(address tokenOwner, address spender) public view returns (uint remaining);
    function transfer(address to, uint tokens) public returns (bool success);
    function approve(address spender, uint tokens) public returns (bool success);
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

    event Transfer(address indexed from, address indexed to, uint tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

// ----------------------------------------------------------------------------
// Contract function to receive approval and execute function in one call
// ----------------------------------------------------------------------------
contract ApproveAndCallFallBack {
    function receiveApproval(address from, uint tokens, address token, bytes memory data) public;
}

// ----------------------------------------------------------------------------
// Owned contract
// ----------------------------------------------------------------------------
contract Owned {
    address public owner;
    address public newOwner;

    event OwnershipTransferred(address indexed from, address indexed to);

    constructor() public {
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address transferOwner) public onlyOwner {
        require(transferOwner != newOwner);
        newOwner = transferOwner;
    }

    function acceptOwnership() public {
        require(msg.sender == newOwner);
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
        newOwner = address(0);
    }
}

// ----------------------------------------------------------------------------
// NRM ERC20 Token - Neuromachine token contract
// ----------------------------------------------------------------------------
contract NRM is ERC20Interface, Owned {
    using SafeMath for uint;

    bool public running = true;
    string public symbol;
    string public name;
    uint8 public decimals;
    uint _totalSupply;

    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;

    address FreezeAddress = address(7);
    uint FreezeTokens;
    uint FreezeTokensReleaseTime = 1580169600;

    // ------------------------------------------------------------------------
    // Contract init. Set symbol, name, decimals and initial fixed supply
    // ------------------------------------------------------------------------
    constructor() public {
        symbol = "NRM";
        name = "Neuromachine Eternal";
        decimals = 18;
        _totalSupply = 4958333333 * 10**uint(decimals);
        balances[owner] = _totalSupply;
        emit Transfer(address(0), owner, _totalSupply);

    // ------------------------------------------------------------------------
    // Freeze team tokens until January 28, 2020
    // ------------------------------------------------------------------------
        FreezeTokens = _totalSupply.mul(30).div(100);
        balances[owner] = balances[owner].sub(FreezeTokens);
        balances[FreezeAddress] = balances[FreezeAddress].add(FreezeTokens);
        emit Transfer(owner, FreezeAddress, FreezeTokens);
    }

    // ------------------------------------------------------------------------
    // Unfreeze team tokens after January 28, 2020
    // ------------------------------------------------------------------------
    function unfreezeTeamTokens(address unFreezeAddress) public onlyOwner returns (bool success) {
        require(now >= FreezeTokensReleaseTime);
        balances[FreezeAddress] = balances[FreezeAddress].sub(FreezeTokens);
        balances[unFreezeAddress] = balances[unFreezeAddress].add(FreezeTokens);
        emit Transfer(FreezeAddress, unFreezeAddress, FreezeTokens);
        return true;
    }

    // ------------------------------------------------------------------------
    // Start-stop contract functions:
    // transfer, approve, transferFrom, approveAndCall
    // ------------------------------------------------------------------------
    modifier isRunning {
        require(running);
        _;
    }

    function startStop () public onlyOwner returns (bool success) {
        if (running) { running = false; } else { running = true; }
        return true;
    }

    // ------------------------------------------------------------------------
    // Total supply
    // ------------------------------------------------------------------------
    function totalSupply() public view returns (uint) {
        return _totalSupply;
    }

    // ------------------------------------------------------------------------
    // Get the token balance for account `tokenOwner`
    // ------------------------------------------------------------------------
    function balanceOf(address tokenOwner) public view returns (uint balance) {
        return balances[tokenOwner];
    }

    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // ------------------------------------------------------------------------
    function transfer(address to, uint tokens) public isRunning returns (bool success) {
        require(tokens <= balances[msg.sender]);
        require(to != address(0));
        balances[msg.sender] = balances[msg.sender].sub(tokens);
        balances[to] = balances[to].add(tokens);
        emit Transfer(msg.sender, to, tokens);
        return true;
    }

    // ------------------------------------------------------------------------
    // Token owner can approve for `spender` to transferFrom(...) `tokens`
    // from the token owner's account
    //
    // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
    // recommends that there are no checks for the approval double-spend attack
    // as this should be implemented in user interfaces
    // ------------------------------------------------------------------------
    function approve(address spender, uint tokens) public isRunning returns (bool success) {
        _approve(msg.sender, spender, tokens);
        return true;
    }

    // ------------------------------------------------------------------------
    // Increase the amount of tokens that an owner allowed to a spender.
    // ------------------------------------------------------------------------
    function increaseAllowance(address spender, uint addedTokens) public isRunning returns (bool success) {
        _approve(msg.sender, spender, allowed[msg.sender][spender].add(addedTokens));
        return true;
    }

    // ------------------------------------------------------------------------
    // Decrease the amount of tokens that an owner allowed to a spender.
    // ------------------------------------------------------------------------
    function decreaseAllowance(address spender, uint subtractedTokens) public isRunning returns (bool success) {
        _approve(msg.sender, spender, allowed[msg.sender][spender].sub(subtractedTokens));
        return true;
    }

    // ------------------------------------------------------------------------
    // Token owner can approve for `spender` to transferFrom(...) `tokens`
    // from the token owner's account. The `spender` contract function
    // `receiveApproval(...)` is then executed
    // ------------------------------------------------------------------------
    function approveAndCall(address spender, uint tokens, bytes memory data) public isRunning returns (bool success) {
        _approve(msg.sender, spender, tokens);
        ApproveAndCallFallBack(spender).receiveApproval(msg.sender, tokens, address(this), data);
        return true;
    }

    // ------------------------------------------------------------------------
    // Approve an address to spend another addresses' tokens.
    // ------------------------------------------------------------------------
    function _approve(address owner, address spender, uint256 value) internal {
        require(owner != address(0));
        require(spender != address(0));
        allowed[owner][spender] = value;
        emit Approval(owner, spender, value);
    }

    // ------------------------------------------------------------------------
    // Transfer `tokens` from the `from` account to the `to` account
    // ------------------------------------------------------------------------
    function transferFrom(address from, address to, uint tokens) public isRunning returns (bool success) {
        require(to != address(0));
        balances[from] = balances[from].sub(tokens);
        _approve(from, msg.sender, allowed[from][msg.sender].sub(tokens));
        balances[to] = balances[to].add(tokens);
        emit Transfer(from, to, tokens);
        return true;
    }

    // ------------------------------------------------------------------------
    // Returns the amount of tokens approved by the owner that can be
    // transferred to the spender's account
    // ------------------------------------------------------------------------
    function allowance(address tokenOwner, address spender) public view returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }

    // ------------------------------------------------------------------------
    // Owner can transfer out any accidentally sent ERC20 tokens
    // ------------------------------------------------------------------------
    function transferAnyERC20Token(address tokenAddress, uint tokens) public onlyOwner returns (bool success) {
        return ERC20Interface(tokenAddress).transfer(owner, tokens);
    }

    // ------------------------------------------------------------------------
    // Tokens burn
    // ------------------------------------------------------------------------
    function burnTokens(uint tokens) public returns (bool success) {
        require(tokens <= balances[msg.sender]);
        balances[msg.sender] = balances[msg.sender].sub(tokens);
        _totalSupply = _totalSupply.sub(tokens);
        emit Transfer(msg.sender, address(0), tokens);
        return true;
    }

    // ------------------------------------------------------------------------
    // Tokens multisend from owner only by owner
    // ------------------------------------------------------------------------
    function multisend(address[] memory to, uint[] memory values) public onlyOwner returns (uint) {
        require(to.length == values.length);
        require(to.length < 100);
        uint sum;
        for (uint j; j < values.length; j++) {
            sum += values[j];
        }
        balances[owner] = balances[owner].sub(sum);
        for (uint i; i < to.length; i++) {
            balances[to[i]] = balances[to[i]].add(values[i]);
            emit Transfer(owner, to[i], values[i]);
        }
        return(to.length);
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"unFreezeAddress","type":"address"}],"name":"unfreezeTeamTokens","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedTokens","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tokens","type":"uint256"}],"name":"burnTokens","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"startStop","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedTokens","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address[]"},{"name":"values","type":"uint256[]"}],"name":"multisend","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"},{"name":"data","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"running","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokenAddress","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"transferOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]

608060405260018054600160a01b60ff02191674010000000000000000000000000000000000000000179055600880546001600160a01b0319166007179055635e2f7980600a553480156200005357600080fd5b50600080546001600160a01b031916331790556040805180820190915260038082527f4e524d00000000000000000000000000000000000000000000000000000000006020909201918252620000ac91600291620002db565b506040805180820190915260148082527f4e6575726f6d616368696e6520457465726e616c0000000000000000000000006020909201918252620000f391600391620002db565b5060048054601260ff19909116179081905560ff16600a0a6401278a2995026005819055600080546001600160a01b0390811682526006602090815260408084208590558354815195865290519216936000805160206200153f833981519152929081900390910190a362000194606462000180601e6005546200026960201b620011231790919060201c565b6200029360201b620011441790919060201c565b6009819055600080546001600160a01b0316815260066020908152604090912054620001cb92909162001076620002b4821b17901c565b600080546001600160a01b039081168252600660209081526040808420949094556009546008549092168352929091205462000213929091906200108b620002ca821b17901c565b600880546001600160a01b039081166000908152600660209081526040808320959095559254905460095485519081529451918316949216926000805160206200153f833981519152928290030190a362000380565b818102821580620002835750818382816200028057fe5b04145b6200028d57600080fd5b92915050565b6000808211620002a257600080fd5b818381620002ac57fe5b049392505050565b600082821115620002c457600080fd5b50900390565b818101828110156200028d57600080fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200031e57805160ff19168380011785556200034e565b828001600101855582156200034e579182015b828111156200034e57825182559160200191906001019062000331565b506200035c92915062000360565b5090565b6200037d91905b808211156200035c576000815560010162000367565b90565b6111af80620003906000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80638da5cb5b116100b8578063cae9ca511161007c578063cae9ca51146104c4578063d4ee1d901461057f578063d85bd52614610587578063dc39d06d1461058f578063dd62ed3e146105bb578063f2fde38b146105e957610142565b80638da5cb5b1461031957806395d89b411461033d578063a457c2d714610345578063a9059cbb14610371578063aad41a411461039d57610142565b8063313ce5671161010a578063313ce5671461027a57806339509351146102985780636d1b229d146102c457806370a08231146102e157806371098a351461030757806379ba50971461030f57610142565b806301d6e35b1461014757806306fdde0314610181578063095ea7b3146101fe57806318160ddd1461022a57806323b872dd14610244575b600080fd5b61016d6004803603602081101561015d57600080fd5b50356001600160a01b031661060f565b604080519115158252519081900360200190f35b6101896106f2565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c35781810151838201526020016101ab565b50505050905090810190601f1680156101f05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61016d6004803603604081101561021457600080fd5b506001600160a01b038135169060200135610780565b6102326107ae565b60408051918252519081900360200190f35b61016d6004803603606081101561025a57600080fd5b506001600160a01b038135811691602081013590911690604001356107b4565b6102826108cc565b6040805160ff9092168252519081900360200190f35b61016d600480360360408110156102ae57600080fd5b506001600160a01b0381351690602001356108d5565b61016d600480360360208110156102da57600080fd5b5035610929565b610232600480360360208110156102f757600080fd5b50356001600160a01b03166109b9565b61016d6109d4565b610317610a30565b005b610321610aab565b604080516001600160a01b039092168252519081900360200190f35b610189610aba565b61016d6004803603604081101561035b57600080fd5b506001600160a01b038135169060200135610b12565b61016d6004803603604081101561038757600080fd5b506001600160a01b038135169060200135610b66565b610232600480360360408110156103b357600080fd5b8101906020810181356401000000008111156103ce57600080fd5b8201836020820111156103e057600080fd5b8035906020019184602083028401116401000000008311171561040257600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561045257600080fd5b82018360208201111561046457600080fd5b8035906020019184602083028401116401000000008311171561048657600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610c4c945050505050565b61016d600480360360608110156104da57600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561050a57600080fd5b82018360208201111561051c57600080fd5b8035906020019184600183028401116401000000008311171561053e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e21945050505050565b610321610f33565b61016d610f42565b61016d600480360360408110156105a557600080fd5b506001600160a01b038135169060200135610f52565b610232600480360360408110156105d157600080fd5b506001600160a01b0381358116916020013516610ff7565b610317600480360360208110156105ff57600080fd5b50356001600160a01b0316611022565b600080546001600160a01b0316331461062757600080fd5b600a5442101561063657600080fd5b6009546008546001600160a01b03166000908152600660205260409020546106639163ffffffff61107616565b6008546001600160a01b0390811660009081526006602052604080822093909355600954918516815291909120546106a09163ffffffff61108b16565b6001600160a01b038084166000818152600660209081526040918290209490945560085460095482519081529151929493169260008051602061116483398151915292918290030190a3506001919050565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107785780601f1061074d57610100808354040283529160200191610778565b820191906000526020600020905b81548152906001019060200180831161075b57829003601f168201915b505050505081565b600154600090600160a01b900460ff1661079957600080fd5b6107a433848461109b565b5060015b92915050565b60055490565b600154600090600160a01b900460ff166107cd57600080fd5b6001600160a01b0383166107e057600080fd5b6001600160a01b038416600090815260066020526040902054610809908363ffffffff61107616565b6001600160a01b038516600090815260066020908152604080832093909355600781528282203380845291529190205461085491869161084f908663ffffffff61107616565b61109b565b6001600160a01b03831660009081526006602052604090205461087d908363ffffffff61108b16565b6001600160a01b03808516600081815260066020908152604091829020949094558051868152905191939288169260008051602061116483398151915292918290030190a35060019392505050565b60045460ff1681565b600154600090600160a01b900460ff166108ee57600080fd5b3360008181526007602090815260408083206001600160a01b03881684529091529020546107a49190859061084f908663ffffffff61108b16565b3360009081526006602052604081205482111561094557600080fd5b33600090815260066020526040902054610965908363ffffffff61107616565b33600090815260066020526040902055600554610988908363ffffffff61107616565b60055560408051838152905160009133916000805160206111648339815191529181900360200190a3506001919050565b6001600160a01b031660009081526006602052604090205490565b600080546001600160a01b031633146109ec57600080fd5b600154600160a01b900460ff1615610a135760018054600160a01b60ff0219169055610a2a565b60018054600160a01b60ff021916600160a01b1790555b50600190565b6001546001600160a01b03163314610a4757600080fd5b600154600080546040516001600160a01b0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156107785780601f1061074d57610100808354040283529160200191610778565b600154600090600160a01b900460ff16610b2b57600080fd5b3360008181526007602090815260408083206001600160a01b03881684529091529020546107a49190859061084f908663ffffffff61107616565b600154600090600160a01b900460ff16610b7f57600080fd5b33600090815260066020526040902054821115610b9b57600080fd5b6001600160a01b038316610bae57600080fd5b33600090815260066020526040902054610bce908363ffffffff61107616565b33600090815260066020526040808220929092556001600160a01b03851681522054610c00908363ffffffff61108b16565b6001600160a01b0384166000818152600660209081526040918290209390935580518581529051919233926000805160206111648339815191529281900390910190a350600192915050565b600080546001600160a01b03163314610c6457600080fd5b8151835114610c7257600080fd5b6064835110610c8057600080fd5b6000805b8351811015610cb257838181518110610c9957fe5b6020026020010151820191508080600101915050610c84565b50600080546001600160a01b0316815260066020526040902054610cdc908263ffffffff61107616565b600080546001600160a01b03168152600660205260408120919091555b8451811015610e1757610d60848281518110610d1157fe5b602002602001015160066000888581518110610d2957fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461108b90919063ffffffff16565b60066000878481518110610d7057fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550848181518110610da857fe5b60200260200101516001600160a01b03166000809054906101000a90046001600160a01b03166001600160a01b0316600080516020611164833981519152868481518110610df257fe5b60200260200101516040518082815260200191505060405180910390a3600101610cf9565b5050915192915050565b600154600090600160a01b900460ff16610e3a57600080fd5b610e4533858561109b565b604051600160e01b638f4ffcb102815233600482018181526024830186905230604484018190526080606485019081528651608486015286516001600160a01b038a1695638f4ffcb195948a94938a939192909160a490910190602085019080838360005b83811015610ec2578181015183820152602001610eaa565b50505050905090810190601f168015610eef5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610f1157600080fd5b505af1158015610f25573d6000803e3d6000fd5b506001979650505050505050565b6001546001600160a01b031681565b600154600160a01b900460ff1681565b600080546001600160a01b03163314610f6a57600080fd5b6000805460408051600160e01b63a9059cbb0281526001600160a01b0392831660048201526024810186905290519186169263a9059cbb926044808401936020939083900390910190829087803b158015610fc457600080fd5b505af1158015610fd8573d6000803e3d6000fd5b505050506040513d6020811015610fee57600080fd5b50519392505050565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6000546001600160a01b0316331461103957600080fd5b6001546001600160a01b038281169116141561105457600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b60008282111561108557600080fd5b50900390565b818101828110156107a857600080fd5b6001600160a01b0383166110ae57600080fd5b6001600160a01b0382166110c157600080fd5b6001600160a01b03808416600081815260076020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b81810282158061113b57508183828161113857fe5b04145b6107a857600080fd5b600080821161115257600080fd5b81838161115b57fe5b04939250505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820dd3cbdea223d143e0152ef625ee6a85041d8a0a0ee4621a3596124bf83c0ec4f0029ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101425760003560e01c80638da5cb5b116100b8578063cae9ca511161007c578063cae9ca51146104c4578063d4ee1d901461057f578063d85bd52614610587578063dc39d06d1461058f578063dd62ed3e146105bb578063f2fde38b146105e957610142565b80638da5cb5b1461031957806395d89b411461033d578063a457c2d714610345578063a9059cbb14610371578063aad41a411461039d57610142565b8063313ce5671161010a578063313ce5671461027a57806339509351146102985780636d1b229d146102c457806370a08231146102e157806371098a351461030757806379ba50971461030f57610142565b806301d6e35b1461014757806306fdde0314610181578063095ea7b3146101fe57806318160ddd1461022a57806323b872dd14610244575b600080fd5b61016d6004803603602081101561015d57600080fd5b50356001600160a01b031661060f565b604080519115158252519081900360200190f35b6101896106f2565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c35781810151838201526020016101ab565b50505050905090810190601f1680156101f05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61016d6004803603604081101561021457600080fd5b506001600160a01b038135169060200135610780565b6102326107ae565b60408051918252519081900360200190f35b61016d6004803603606081101561025a57600080fd5b506001600160a01b038135811691602081013590911690604001356107b4565b6102826108cc565b6040805160ff9092168252519081900360200190f35b61016d600480360360408110156102ae57600080fd5b506001600160a01b0381351690602001356108d5565b61016d600480360360208110156102da57600080fd5b5035610929565b610232600480360360208110156102f757600080fd5b50356001600160a01b03166109b9565b61016d6109d4565b610317610a30565b005b610321610aab565b604080516001600160a01b039092168252519081900360200190f35b610189610aba565b61016d6004803603604081101561035b57600080fd5b506001600160a01b038135169060200135610b12565b61016d6004803603604081101561038757600080fd5b506001600160a01b038135169060200135610b66565b610232600480360360408110156103b357600080fd5b8101906020810181356401000000008111156103ce57600080fd5b8201836020820111156103e057600080fd5b8035906020019184602083028401116401000000008311171561040257600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561045257600080fd5b82018360208201111561046457600080fd5b8035906020019184602083028401116401000000008311171561048657600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610c4c945050505050565b61016d600480360360608110156104da57600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561050a57600080fd5b82018360208201111561051c57600080fd5b8035906020019184600183028401116401000000008311171561053e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e21945050505050565b610321610f33565b61016d610f42565b61016d600480360360408110156105a557600080fd5b506001600160a01b038135169060200135610f52565b610232600480360360408110156105d157600080fd5b506001600160a01b0381358116916020013516610ff7565b610317600480360360208110156105ff57600080fd5b50356001600160a01b0316611022565b600080546001600160a01b0316331461062757600080fd5b600a5442101561063657600080fd5b6009546008546001600160a01b03166000908152600660205260409020546106639163ffffffff61107616565b6008546001600160a01b0390811660009081526006602052604080822093909355600954918516815291909120546106a09163ffffffff61108b16565b6001600160a01b038084166000818152600660209081526040918290209490945560085460095482519081529151929493169260008051602061116483398151915292918290030190a3506001919050565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107785780601f1061074d57610100808354040283529160200191610778565b820191906000526020600020905b81548152906001019060200180831161075b57829003601f168201915b505050505081565b600154600090600160a01b900460ff1661079957600080fd5b6107a433848461109b565b5060015b92915050565b60055490565b600154600090600160a01b900460ff166107cd57600080fd5b6001600160a01b0383166107e057600080fd5b6001600160a01b038416600090815260066020526040902054610809908363ffffffff61107616565b6001600160a01b038516600090815260066020908152604080832093909355600781528282203380845291529190205461085491869161084f908663ffffffff61107616565b61109b565b6001600160a01b03831660009081526006602052604090205461087d908363ffffffff61108b16565b6001600160a01b03808516600081815260066020908152604091829020949094558051868152905191939288169260008051602061116483398151915292918290030190a35060019392505050565b60045460ff1681565b600154600090600160a01b900460ff166108ee57600080fd5b3360008181526007602090815260408083206001600160a01b03881684529091529020546107a49190859061084f908663ffffffff61108b16565b3360009081526006602052604081205482111561094557600080fd5b33600090815260066020526040902054610965908363ffffffff61107616565b33600090815260066020526040902055600554610988908363ffffffff61107616565b60055560408051838152905160009133916000805160206111648339815191529181900360200190a3506001919050565b6001600160a01b031660009081526006602052604090205490565b600080546001600160a01b031633146109ec57600080fd5b600154600160a01b900460ff1615610a135760018054600160a01b60ff0219169055610a2a565b60018054600160a01b60ff021916600160a01b1790555b50600190565b6001546001600160a01b03163314610a4757600080fd5b600154600080546040516001600160a01b0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6000546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156107785780601f1061074d57610100808354040283529160200191610778565b600154600090600160a01b900460ff16610b2b57600080fd5b3360008181526007602090815260408083206001600160a01b03881684529091529020546107a49190859061084f908663ffffffff61107616565b600154600090600160a01b900460ff16610b7f57600080fd5b33600090815260066020526040902054821115610b9b57600080fd5b6001600160a01b038316610bae57600080fd5b33600090815260066020526040902054610bce908363ffffffff61107616565b33600090815260066020526040808220929092556001600160a01b03851681522054610c00908363ffffffff61108b16565b6001600160a01b0384166000818152600660209081526040918290209390935580518581529051919233926000805160206111648339815191529281900390910190a350600192915050565b600080546001600160a01b03163314610c6457600080fd5b8151835114610c7257600080fd5b6064835110610c8057600080fd5b6000805b8351811015610cb257838181518110610c9957fe5b6020026020010151820191508080600101915050610c84565b50600080546001600160a01b0316815260066020526040902054610cdc908263ffffffff61107616565b600080546001600160a01b03168152600660205260408120919091555b8451811015610e1757610d60848281518110610d1157fe5b602002602001015160066000888581518110610d2957fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205461108b90919063ffffffff16565b60066000878481518110610d7057fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550848181518110610da857fe5b60200260200101516001600160a01b03166000809054906101000a90046001600160a01b03166001600160a01b0316600080516020611164833981519152868481518110610df257fe5b60200260200101516040518082815260200191505060405180910390a3600101610cf9565b5050915192915050565b600154600090600160a01b900460ff16610e3a57600080fd5b610e4533858561109b565b604051600160e01b638f4ffcb102815233600482018181526024830186905230604484018190526080606485019081528651608486015286516001600160a01b038a1695638f4ffcb195948a94938a939192909160a490910190602085019080838360005b83811015610ec2578181015183820152602001610eaa565b50505050905090810190601f168015610eef5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610f1157600080fd5b505af1158015610f25573d6000803e3d6000fd5b506001979650505050505050565b6001546001600160a01b031681565b600154600160a01b900460ff1681565b600080546001600160a01b03163314610f6a57600080fd5b6000805460408051600160e01b63a9059cbb0281526001600160a01b0392831660048201526024810186905290519186169263a9059cbb926044808401936020939083900390910190829087803b158015610fc457600080fd5b505af1158015610fd8573d6000803e3d6000fd5b505050506040513d6020811015610fee57600080fd5b50519392505050565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6000546001600160a01b0316331461103957600080fd5b6001546001600160a01b038281169116141561105457600080fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b60008282111561108557600080fd5b50900390565b818101828110156107a857600080fd5b6001600160a01b0383166110ae57600080fd5b6001600160a01b0382166110c157600080fd5b6001600160a01b03808416600081815260076020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b81810282158061113b57508183828161113857fe5b04145b6107a857600080fd5b600080821161115257600080fd5b81838161115b57fe5b04939250505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820dd3cbdea223d143e0152ef625ee6a85041d8a0a0ee4621a3596124bf83c0ec4f0029

Deployed Bytecode Sourcemap

3231:9273:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3231:9273:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4864:403;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4864:403:0;-1:-1:-1;;;;;4864:403:0;;:::i;:::-;;;;;;;;;;;;;;;;;;3368:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;3368:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7509:165;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7509:165:0;;;;;;;;:::i;5957:88::-;;;:::i;:::-;;;;;;;;;;;;;;;;9990:389;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9990:389:0;;;;;;;;;;;;;;;;;:::i;3393:21::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7918:219;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7918:219:0;;;;;;;;:::i;11422:315::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11422:315:0;;:::i;6270:120::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6270:120:0;-1:-1:-1;;;;;6270:120:0;;:::i;5606:160::-;;;:::i;2816:196::-;;;:::i;:::-;;2365:20;;;:::i;:::-;;;;-1:-1:-1;;;;;2365:20:0;;;;;;;;;;;;;;3341;;;:::i;8381:229::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8381:229:0;;;;;;;;:::i;6632:363::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;6632:363:0;;;;;;;;:::i;11957:544::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11957:544:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;11957:544:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;11957:544:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;11957:544:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;11957:544:0;;;;;;;;-1:-1:-1;11957:544:0;;-1:-1:-1;;21:11;5:28;;2:2;;;46:1;43;36:12;2:2;11957:544:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;11957:544:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;11957:544:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;11957:544:0;;-1:-1:-1;11957:544:0;;-1:-1:-1;;;;;11957:544:0:i;8976:290::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;8976:290:0;;;;;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;8976:290:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;8976:290:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;8976:290:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;8976:290:0;;-1:-1:-1;8976:290:0;;-1:-1:-1;;;;;8976:290:0:i;2392:23::-;;;:::i;3308:26::-;;;:::i;11048:184::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;11048:184:0;;;;;;;;:::i;10665:147::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;10665:147:0;;;;;;;;;;:::i;2653:155::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2653:155:0;-1:-1:-1;;;;;2653:155:0;;:::i;4864:403::-;4943:12;2619:5;;-1:-1:-1;;;;;2619:5:0;2605:10;:19;2597:28;;;;;;4983:23;;4976:3;:30;;4968:39;;;;;;5072:12;;5053:13;;-1:-1:-1;;;;;5053:13:0;5044:23;;;;:8;:23;;;;;;:41;;;:27;:41;:::i;:::-;5027:13;;-1:-1:-1;;;;;5027:13:0;;;5018:23;;;;:8;:23;;;;;;:67;;;;5154:12;;5124:25;;;;;;;;;;:43;;;:29;:43;:::i;:::-;-1:-1:-1;;;;;5096:25:0;;;;;;;:8;:25;;;;;;;;;:71;;;;5192:13;;5224:12;;5183:54;;;;;;;5096:25;;5192:13;;;-1:-1:-1;;;;;;;;;;;5183:54:0;;;;;;;;-1:-1:-1;5255:4:0;4864:403;;;:::o;3368:18::-;;;;;;;;;;;;;;;-1:-1:-1;;3368:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7509:165::-;5570:7;;7582:12;;-1:-1:-1;;;5570:7:0;;;;5562:16;;;;;;7607:37;7616:10;7628:7;7637:6;7607:8;:37::i;:::-;-1:-1:-1;7662:4:0;5589:1;7509:165;;;;:::o;5957:88::-;6025:12;;5957:88;:::o;9990:389::-;5570:7;;10077:12;;-1:-1:-1;;;5570:7:0;;;;5562:16;;;;;;-1:-1:-1;;;;;10110:16:0;;10102:25;;;;;;-1:-1:-1;;;;;10155:14:0;;;;;;:8;:14;;;;;;:26;;10174:6;10155:26;:18;:26;:::i;:::-;-1:-1:-1;;;;;10138:14:0;;;;;;:8;:14;;;;;;;;:43;;;;10219:7;:13;;;;;10207:10;10219:25;;;;;;;;;10192:65;;10147:4;;10219:37;;10249:6;10219:37;:29;:37;:::i;:::-;10192:8;:65::i;:::-;-1:-1:-1;;;;;10283:12:0;;;;;;:8;:12;;;;;;:24;;10300:6;10283:24;:16;:24;:::i;:::-;-1:-1:-1;;;;;10268:12:0;;;;;;;:8;:12;;;;;;;;;:39;;;;10323:26;;;;;;;10268:12;;10323:26;;;;-1:-1:-1;;;;;;;;;;;10323:26:0;;;;;;;;-1:-1:-1;10367:4:0;9990:389;;;;;:::o;3393:21::-;;;;;;:::o;7918:219::-;5570:7;;8006:12;;-1:-1:-1;;;5570:7:0;;;;5562:16;;;;;;8040:10;8061:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;8061:28:0;;;;;;;;;;8031:76;;8040:10;8052:7;;8061:45;;8094:11;8061:45;:32;:45;:::i;11422:315::-;11523:10;11471:12;11514:20;;;:8;:20;;;;;;11504:30;;;11496:39;;;;;;11578:10;11569:20;;;;:8;:20;;;;;;:32;;11594:6;11569:32;:24;:32;:::i;:::-;11555:10;11546:20;;;;:8;:20;;;;;:55;11627:12;;:24;;11644:6;11627:24;:16;:24;:::i;:::-;11612:12;:39;11667:40;;;;;;;;11696:1;;11676:10;;-1:-1:-1;;;;;;;;;;;11667:40:0;;;;;;;;-1:-1:-1;11725:4:0;11422:315;;;:::o;6270:120::-;-1:-1:-1;;;;;6362:20:0;6330:12;6362:20;;;:8;:20;;;;;;;6270:120::o;5606:160::-;5654:12;2619:5;;-1:-1:-1;;;;;2619:5:0;2605:10;:19;2597:28;;;;;;5683:7;;-1:-1:-1;;;5683:7:0;;;;5679:58;;;5694:7;:15;;-1:-1:-1;;;;;;5694:15:0;;;5679:58;;;5730:4;5720:14;;-1:-1:-1;;;;;;5720:14:0;-1:-1:-1;;;5720:14:0;;;5679:58;-1:-1:-1;5754:4:0;5606:160;:::o;2816:196::-;2883:8;;-1:-1:-1;;;;;2883:8:0;2869:10;:22;2861:31;;;;;;2936:8;;;2929:5;;2908:37;;-1:-1:-1;;;;;2936:8:0;;;;2929:5;;;;2908:37;;;2964:8;;;;2956:16;;-1:-1:-1;;;;;;2956:16:0;;;-1:-1:-1;;;;;2964:8:0;;2956:16;;;;2983:21;;;2816:196::o;2365:20::-;;;-1:-1:-1;;;;;2365:20:0;;:::o;3341:::-;;;;;;;;;;;;;;-1:-1:-1;;3341:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8381:229;5570:7;;8474:12;;-1:-1:-1;;;5570:7:0;;;;5562:16;;;;;;8508:10;8529:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;8529:28:0;;;;;;;;;;8499:81;;8508:10;8520:7;;8529:50;;8562:16;8529:50;:32;:50;:::i;6632:363::-;5570:7;;6701:12;;-1:-1:-1;;;5570:7:0;;;;5562:16;;;;;;6753:10;6744:20;;;;:8;:20;;;;;;6734:30;;;6726:39;;;;;;-1:-1:-1;;;;;6784:16:0;;6776:25;;;;;;6844:10;6835:20;;;;:8;:20;;;;;;:32;;6860:6;6835:32;:24;:32;:::i;:::-;6821:10;6812:20;;;;:8;:20;;;;;;:55;;;;-1:-1:-1;;;;;6893:12:0;;;;;;:24;;6910:6;6893:24;:16;:24;:::i;:::-;-1:-1:-1;;;;;6878:12:0;;;;;;:8;:12;;;;;;;;;:39;;;;6933:32;;;;;;;6878:12;;6942:10;;-1:-1:-1;;;;;;;;;;;6933:32:0;;;;;;;;;-1:-1:-1;6983:4:0;6632:363;;;;:::o;11957:544::-;12045:4;2619:5;;-1:-1:-1;;;;;2619:5:0;2605:10;:19;2597:28;;;;;;12083:6;:13;12070:2;:9;:26;12062:35;;;;;;12128:3;12116:2;:9;:15;12108:24;;;;;;12143:8;12167:6;12162:80;12179:6;:13;12175:1;:17;12162:80;;;12221:6;12228:1;12221:9;;;;;;;;;;;;;;12214:16;;;;12194:3;;;;;;;12162:80;;;-1:-1:-1;12270:15:0;12279:5;;-1:-1:-1;;;;;12279:5:0;12270:15;;:8;:15;;;;;;:24;;12290:3;12270:24;:19;:24;:::i;:::-;12252:15;12261:5;;-1:-1:-1;;;;;12261:5:0;12252:15;;:8;:15;;;;;:42;;;;12305:161;12322:2;:9;12318:1;:13;12305:161;;;12371:30;12391:6;12398:1;12391:9;;;;;;;;;;;;;;12371:8;:15;12380:2;12383:1;12380:5;;;;;;;;;;;;;;-1:-1:-1;;;;;12371:15:0;-1:-1:-1;;;;;12371:15:0;;;;;;;;;;;;;:19;;:30;;;;:::i;:::-;12353:8;:15;12362:2;12365:1;12362:5;;;;;;;;;;;;;;-1:-1:-1;;;;;12353:15:0;-1:-1:-1;;;;;12353:15:0;;;;;;;;;;;;:48;;;;12437:2;12440:1;12437:5;;;;;;;;;;;;;;-1:-1:-1;;;;;12421:33:0;12430:5;;;;;;;;;-1:-1:-1;;;;;12430:5:0;-1:-1:-1;;;;;12421:33:0;-1:-1:-1;;;;;;;;;;;12444:6:0;12451:1;12444:9;;;;;;;;;;;;;;12421:33;;;;;;;;;;;;;;;;;;12333:3;;12305:161;;;-1:-1:-1;;12483:9:0;;;11957:544;-1:-1:-1;;11957:544:0:o;8976:290::-;5570:7;;9075:12;;-1:-1:-1;;;5570:7:0;;;;5562:16;;;;;;9100:37;9109:10;9121:7;9130:6;9100:8;:37::i;:::-;9148:88;;-1:-1:-1;;;;;9148:88:0;;9196:10;9148:88;;;;;;;;;;;;9224:4;9148:88;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9148:47:0;;;;;9196:10;9208:6;;9224:4;9231;;9148:88;;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;9148:88:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9148:88:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;9254:4:0;;8976:290;-1:-1:-1;;;;;;;8976:290:0:o;2392:23::-;;;-1:-1:-1;;;;;2392:23:0;;:::o;3308:26::-;;;-1:-1:-1;;;3308:26:0;;;;;:::o;11048:184::-;11140:12;2619:5;;-1:-1:-1;;;;;2619:5:0;2605:10;:19;2597:28;;;;;;11210:5;;;11172:52;;;-1:-1:-1;;;;;11172:52:0;;-1:-1:-1;;;;;11210:5:0;;;11172:52;;;;;;;;;;;;:37;;;;;;:52;;;;;;;;;;;;;;;;;:37;:52;;;5:2:-1;;;;30:1;27;20:12;5:2;11172:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11172:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11172:52:0;;11048:184;-1:-1:-1;;;11048:184:0:o;10665:147::-;-1:-1:-1;;;;;10776:19:0;;;10742:14;10776:19;;;:7;:19;;;;;;;;:28;;;;;;;;;;;;;10665:147::o;2653:155::-;2619:5;;-1:-1:-1;;;;;2619:5:0;2605:10;:19;2597:28;;;;;;2756:8;;-1:-1:-1;;;;;2739:25:0;;;2756:8;;2739:25;;2731:34;;;;;;2776:8;:24;;-1:-1:-1;;;;;;2776:24:0;-1:-1:-1;;;;;2776:24:0;;;;;;;;;;2653:155::o;510:91::-;562:6;585:1;580;:6;;572:15;;;;;;-1:-1:-1;593:5:0;;;510:91::o;413:::-;479:5;;;494:6;;;;486:15;;;;;9499:251;-1:-1:-1;;;;;9592:19:0;;9584:28;;;;;;-1:-1:-1;;;;;9631:21:0;;9623:30;;;;;;-1:-1:-1;;;;;9664:14:0;;;;;;;:7;:14;;;;;;;;:23;;;;;;;;;;;;;:31;;;9711;;;;;;;;;;;;;;;;;9499:251;;;:::o;607:105::-;673:5;;;688:6;;;:20;;;707:1;702;698;:5;;;;;;:10;688:20;680:29;;;;;718:90;770:6;792:1;788;:5;780:14;;;;;;804:1;800;:5;;;;;;;718:90;-1:-1:-1;;;718:90:0:o

Swarm Source

bzzr://dd3cbdea223d143e0152ef625ee6a85041d8a0a0ee4621a3596124bf83c0ec4f
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.