Token DeFiato

DeFi  
 

Overview [ERC-20]

Price
$0.00 @ 0.000003 Eth (+1.44%)
Fully Diluted Market Cap
Max Total Supply:
250,000,000 DFIAT

Holders:
518 (0.00%)

Transfers:
-

 
Loading
[ Download CSV Export  ] 
Loading
[ Download CSV Export  ] 
Loading

OVERVIEW

DeFiato is the next-generation centralized platform for DeFi staking, yield farming and financial services. we’re committed to bridging the gap between the digital economy and DeFi, by empowering everyone to have access to financial freedom without any technical barriers.

Market

Volume (24H):$26.92
Market Capitalization:$294,831.00
Circulating Supply:63,278,500.00 DFIAT
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DEFIATO

Compiler Version
v0.4.20+commit.3155dd80

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

pragma solidity ^0.4.20;

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

}

contract ERC20 {
    // Get the total token supply
    function totalSupply() public constant returns (uint256 _totalSupply);
 
    // Get the account balance of another account with address _owner
    function balanceOf(address _owner) public constant returns (uint256 balance);
 
    // Send _value amount of tokens to address _to
    function transfer(address _to, uint256 _value) public returns (bool success);
    
    // transfer _value amount of token approved by address _from
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
    
    // approve an address with _value amount of tokens
    function approve(address _spender, uint256 _value) public returns (bool success);

    // get remaining token approved by _owner to _spender
    function allowance(address _owner, address _spender) public constant returns (uint256 remaining);
  
    // Triggered when tokens are transferred.
    event Transfer(address indexed _from, address indexed _to, uint256 _value);
 
    // Triggered whenever approve(address _spender, uint256 _value) is called.
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}

contract ERC223 is ERC20{
    function transfer(address _to, uint _value, bytes _data) public returns (bool success);
    function transfer(address _to, uint _value, bytes _data, string _custom_fallback) public returns (bool success);
    event Transfer(address indexed _from, address indexed _to, uint _value, bytes indexed _data);
}

/// contract receiver interface
contract ContractReceiver {  
    function tokenFallback(address _from, uint _value, bytes _data) external;
}

contract Ownable {
    address private _owner;
    address private _previousOwner;
    uint256 private _lockTime;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    function Ownable() public {
        _owner = msg.sender;
        OwnershipTransferred(address(0), msg.sender);
    }

    function owner() public view returns (address) {
        return _owner;
    }   
    
    modifier onlyOwner() {
        require(_owner == msg.sender);
        _;
    }
    
    function renounceOwnership() public onlyOwner {
        OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0));
        OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

    function getUnlockTime() public view returns (uint256) {
        return _lockTime;
    }
    
    function getTime() public view returns (uint256) {
        return block.timestamp;
    }

    function lock(uint256 time) public onlyOwner {
        _previousOwner = _owner;
        _owner = address(0);
        _lockTime = block.timestamp + time;
        OwnershipTransferred(_owner, address(0));
    }
    
    function unlock() public {
        require(_previousOwner == msg.sender);
        require(block.timestamp > _lockTime );
        OwnershipTransferred(_owner, _previousOwner);
        _owner = _previousOwner;
    }
}

contract BasicToken is Ownable, ERC223 {
    using SafeMath for uint256;
    
    uint256 public constant decimals = 18;
    string public constant symbol = "DFIAT";
    string public constant name = "DeFiato";
    uint256 public totalSupply = 250000000 * 10**18;

    address public admin;

    // tradable
    bool public tradable = false;

    // Balances DFO for each account
    mapping(address => uint256) balances;
    
    // Owner of account approves the transfer of an amount to another account
    mapping(address => mapping (address => uint256)) allowed;

    modifier isTradable(){
        require(tradable == true || msg.sender == admin || msg.sender == owner());
        _;
    }

    /// @dev Gets totalSupply
    /// @return Total supply
    function totalSupply()
    public 
    constant 
    returns (uint256) {
        return totalSupply;
    }
        
    /// @dev Gets account's balance
    /// @param _addr Address of the account
    /// @return Account balance
    function balanceOf(address _addr) 
    public
    constant 
    returns (uint256) {
        return balances[_addr];
    }
    
    
    //assemble the given address bytecode. If bytecode exists then the _addr is a contract.
    function isContract(address _addr) 
    private 
    view 
    returns (bool is_contract) {
        uint length;
        assembly {
            //retrieve the size of the code on target address, this needs assembly
            length := extcodesize(_addr)
        }
        return (length>0);
    }
 
    /// @dev Transfers the balance from msg.sender to an account
    /// @param _to Recipient address
    /// @param _value Transfered amount in unit
    /// @return Transfer status
    // Standard function transfer similar to ERC20 transfer with no _data .
    // Added due to backwards compatibility reasons .
    function transfer(address _to, uint _value) 
    public 
    isTradable
    returns (bool success) {
        require(_to != 0x0);
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);

        Transfer(msg.sender, _to, _value);
        return true;
    }
    
    /// @dev Function that is called when a user or another contract wants to transfer funds .
    /// @param _to Recipient address
    /// @param _value Transfer amount in unit
    /// @param _data the data pass to contract reveiver
    function transfer(
        address _to, 
        uint _value, 
        bytes _data) 
    public
    isTradable 
    returns (bool success) {
        require(_to != 0x0);
        balances[msg.sender] = balanceOf(msg.sender).sub(_value);
        balances[_to] = balanceOf(_to).add(_value);
        Transfer(msg.sender, _to, _value);
        if(isContract(_to)) {
            ContractReceiver receiver = ContractReceiver(_to);
            receiver.tokenFallback(msg.sender, _value, _data);
            Transfer(msg.sender, _to, _value, _data);
        }
        
        return true;
    }
    
    /// @dev Function that is called when a user or another contract wants to transfer funds .
    /// @param _to Recipient address
    /// @param _value Transfer amount in unit
    /// @param _data the data pass to contract reveiver
    /// @param _custom_fallback custom name of fallback function
    function transfer(
        address _to, 
        uint _value, 
        bytes _data, 
        string _custom_fallback) 
    public 
    isTradable
    returns (bool success) {
        require(_to != 0x0);
        balances[msg.sender] = balanceOf(msg.sender).sub(_value);
        balances[_to] = balanceOf(_to).add(_value);
        Transfer(msg.sender, _to, _value);

        if(isContract(_to)) {
            assert(_to.call.value(0)(bytes4(keccak256(_custom_fallback)), msg.sender, _value, _data));
            Transfer(msg.sender, _to, _value, _data);
        }
        return true;
    }
         
    // Send _value amount of tokens from address _from to address _to
    // The transferFrom method is used for a withdraw workflow, allowing contracts to send
    // tokens on your behalf, for example to "deposit" to a contract address and/or to charge
    // fees in sub-currencies; the command should fail unless the _from account has
    // deliberately authorized the sender of the message via some mechanism; we propose
    // these standardized APIs for approval:
    function transferFrom(
        address _from,
        address _to,
        uint256 _value)
    public
    isTradable
    returns (bool success) {
        require(_to != 0x0);
        balances[_from] = balances[_from].sub(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);

        Transfer(_from, _to, _value);
        return true;
    }
    
    // Allow _spender to withdraw from your account, multiple times, up to the _value amount.
    // If this function is called again it overwrites the current allowance with _value.
    function approve(address _spender, uint256 _amount) 
    public
    returns (bool success) {
        allowed[msg.sender][_spender] = _amount;
        Approval(msg.sender, _spender, _amount);
        return true;
    }
    
    // get allowance
    function allowance(address _owner, address _spender) 
    public
    constant 
    returns (uint256 remaining) {
        return allowed[_owner][_spender];
    }
    
    // @dev allow owner to update admin
    function updateAdmin(address _admin) 
    public 
    onlyOwner{
        admin = _admin;
    }
    
    // allow people can transfer their token
    // NOTE: can not turn off
    function turnOnTradable() 
    public onlyOwner {
        tradable = true;
    }
}

contract DEFIATO is BasicToken {

    function DEFIATO() public {
        balances[msg.sender] = totalSupply;
        Transfer(0x0, msg.sender, totalSupply);
    }

    function()
    public
    payable {
        
    }

    /// @dev Withdraws Ether in contract (Owner only)
    /// @return Status of withdrawal
    function withdraw() onlyOwner 
    public 
    returns (bool) {
        return owner().send(this.balance);
    }

    /// @dev Withdraws ERC20 Token in contract (Owner only)
    /// @return Status of withdrawal
    function transferAnyERC20Token(address tokenAddress, uint256 amount) public returns (bool success) {
        return ERC20(tokenAddress).transfer(owner(), amount);
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","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":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"turnOnTradable","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tradable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getUnlockTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","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":"unlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tokenAddress","type":"address"},{"name":"amount","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"time","type":"uint256"}],"name":"lock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_admin","type":"address"}],"name":"updateAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"},{"name":"_custom_fallback","type":"string"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"},{"indexed":true,"name":"_data","type":"bytes"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

60606040526acecb8f27f4200f3a0000006003556004805460a060020a60ff0219169055341561002e57600080fd5b60008054600160a060020a03191633600160a060020a03169081178255907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600354600160a060020a033316600081815260056020526040808220849055919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91905190815260200160405180910390a36111cd806100dc6000396000f3006060604052600436106101245763ffffffff60e060020a60003504166306fdde038114610126578063095ea7b3146101b057806318160ddd146101e657806323b872dd1461020b5780632fb1746d14610233578063313ce567146102465780633ccfd60b1461025957806354840c6e1461026c578063557ed1ba1461027f578063602bc62b1461029257806370a08231146102a5578063715018a6146102c45780638da5cb5b146102d757806395d89b4114610306578063a69df4b514610319578063a9059cbb1461032c578063be45fd621461034e578063dc39d06d146103b3578063dd467064146103d5578063dd62ed3e146103eb578063e2f273bd14610410578063f2fde38b1461042f578063f6368f8a1461044e578063f851a440146104f5575b005b341561013157600080fd5b610139610508565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561017557808201518382015260200161015d565b50505050905090810190601f1680156101a25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101bb57600080fd5b6101d2600160a060020a036004351660243561053f565b604051901515815260200160405180910390f35b34156101f157600080fd5b6101f96105ac565b60405190815260200160405180910390f35b341561021657600080fd5b6101d2600160a060020a03600435811690602435166044356105b2565b341561023e57600080fd5b610124610724565b341561025157600080fd5b6101f9610765565b341561026457600080fd5b6101d261076a565b341561027757600080fd5b6101d26107c3565b341561028a57600080fd5b6101f96107d3565b341561029d57600080fd5b6101f96107d7565b34156102b057600080fd5b6101f9600160a060020a03600435166107dd565b34156102cf57600080fd5b6101246107f8565b34156102e257600080fd5b6102ea610859565b604051600160a060020a03909116815260200160405180910390f35b341561031157600080fd5b610139610868565b341561032457600080fd5b61012461089f565b341561033757600080fd5b6101d2600160a060020a0360043516602435610926565b341561035957600080fd5b6101d260048035600160a060020a03169060248035919060649060443590810190830135806020601f82018190048102016040519081016040528181529291906020840183838082843750949650610a4495505050505050565b34156103be57600080fd5b6101d2600160a060020a0360043516602435610cea565b34156103e057600080fd5b610124600435610d71565b34156103f657600080fd5b6101f9600160a060020a0360043581169060243516610de2565b341561041b57600080fd5b610124600160a060020a0360043516610e0d565b341561043a57600080fd5b610124600160a060020a0360043516610e57565b341561045957600080fd5b6101d260048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650610ee095505050505050565b341561050057600080fd5b6102ea611125565b60408051908101604052600781527f4465466961746f00000000000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260066020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60035490565b60045460009060a060020a900460ff161515600114806105e0575060045433600160a060020a039081169116145b8061060357506105ee610859565b600160a060020a031633600160a060020a0316145b151561060e57600080fd5b600160a060020a038316151561062357600080fd5b600160a060020a03841660009081526005602052604090205461064c908363ffffffff61113416565b600160a060020a038086166000908152600560209081526040808320949094556006815283822033909316825291909152205461068f908363ffffffff61113416565b600160a060020a03808616600090815260066020908152604080832033851684528252808320949094559186168152600590915220546106d5908363ffffffff61114916565b600160a060020a03808516600081815260056020526040908190209390935591908616906000805160206111828339815191529085905190815260200160405180910390a35060019392505050565b60005433600160a060020a0390811691161461073f57600080fd5b6004805474ff0000000000000000000000000000000000000000191660a060020a179055565b601281565b6000805433600160a060020a0390811691161461078657600080fd5b61078e610859565b600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f194505050505090565b60045460a060020a900460ff1681565b4290565b60025490565b600160a060020a031660009081526005602052604090205490565b60005433600160a060020a0390811691161461081357600080fd5b60008054600160a060020a031660008051602061116283398151915260405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600054600160a060020a031690565b60408051908101604052600581527f4446494154000000000000000000000000000000000000000000000000000000602082015281565b60015433600160a060020a039081169116146108ba57600080fd5b60025442116108c857600080fd5b600154600054600160a060020a03918216911660008051602061116283398151915260405160405180910390a36001546000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03909216919091179055565b60045460009060a060020a900460ff16151560011480610954575060045433600160a060020a039081169116145b806109775750610962610859565b600160a060020a031633600160a060020a0316145b151561098257600080fd5b600160a060020a038316151561099757600080fd5b600160a060020a0333166000908152600560205260409020546109c0908363ffffffff61113416565b600160a060020a0333811660009081526005602052604080822093909355908516815220546109f5908363ffffffff61114916565b600160a060020a0380851660008181526005602052604090819020939093559133909116906000805160206111828339815191529085905190815260200160405180910390a350600192915050565b600080600460149054906101000a900460ff161515600115151480610a77575060045433600160a060020a039081169116145b80610a9a5750610a85610859565b600160a060020a031633600160a060020a0316145b1515610aa557600080fd5b600160a060020a0385161515610aba57600080fd5b610ad384610ac7336107dd565b9063ffffffff61113416565b600160a060020a033316600090815260056020526040902055610b0584610af9876107dd565b9063ffffffff61114916565b600160a060020a0380871660008181526005602052604090819020939093559133909116906000805160206111828339815191529087905190815260200160405180910390a3610b5485611159565b15610cdf575083600160a060020a03811663c0ee0b8a3386866040518463ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610bda578082015183820152602001610bc2565b50505050905090810190601f168015610c075780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1515610c2757600080fd5b6102c65a03f11515610c3857600080fd5b505050826040518082805190602001908083835b60208310610c6b5780518252601f199092019160209182019101610c4c565b6001836020036101000a0380198251168184511617909252505050919091019250604091505051809103902085600160a060020a031633600160a060020a03167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c168760405190815260200160405180910390a45b506001949350505050565b600082600160a060020a031663a9059cbb610d03610859565b8460006040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610d5057600080fd5b6102c65a03f11515610d6157600080fd5b5050506040518051949350505050565b60005433600160a060020a03908116911614610d8c57600080fd5b600080546001805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a038416179091551681554282016002558060008051602061116283398151915260405160405180910390a350565b600160a060020a03918216600090815260066020908152604080832093909416825291909152205490565b60005433600160a060020a03908116911614610e2857600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a03908116911614610e7257600080fd5b600160a060020a0381161515610e8757600080fd5b600054600160a060020a03808316911660008051602061116283398151915260405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60045460009060a060020a900460ff16151560011480610f0e575060045433600160a060020a039081169116145b80610f315750610f1c610859565b600160a060020a031633600160a060020a0316145b1515610f3c57600080fd5b600160a060020a0385161515610f5157600080fd5b610f5e84610ac7336107dd565b600160a060020a033316600090815260056020526040902055610f8484610af9876107dd565b600160a060020a0380871660008181526005602052604090819020939093559133909116906000805160206111828339815191529087905190815260200160405180910390a3610fd385611159565b15610cdf5784600160a060020a03166000836040518082805190602001908083835b602083106110145780518252601f199092019160209182019101610ff5565b6001836020036101000a0380198251168184511617909252505050919091019250604091505051809103902060e060020a9004903387876040518563ffffffff1660e060020a0281526004018084600160a060020a0316600160a060020a03168152602001838152602001828051906020019080838360005b838110156110a557808201518382015260200161108d565b50505050905090810190601f1680156110d25780820380516001836020036101000a031916815260200191505b50935050505060006040518083038185886187965a03f1935050505015156110f657fe5b8260405180828051906020019080838360208310610c6b5780518252601f199092019160209182019101610c4c565b600454600160a060020a031681565b60008282111561114357600080fd5b50900390565b818101828110156105a657600080fd5b6000903b119056008be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058205e3b2c6f3fa06c819fc462289597ce2bf1e6d0fdf256691fb53a0ebd39c7185f0029

Deployed ByteCode Sourcemap

9667:727:0:-;;;;;;;;;-1:-1:-1;;;9667:727:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3959:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;3959:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8915:223;;;;;;;;;;-1:-1:-1;;;;;8915:223:0;;;;;;;;;;;;;;;;;;;;;;;;4569:111;;;;;;;;;;;;;;;;;;;;;;;;;;;8281:437;;;;;;;;;;-1:-1:-1;;;;;8281:437:0;;;;;;;;;;;;9577:83;;;;;;;;;;;;3869:37;;;;;;;;;;;;9998:116;;;;;;;;;;;;4107:28;;;;;;;;;;;;3236:90;;;;;;;;;;;;3134;;;;;;;;;;;;4811:126;;;;;;;;;;-1:-1:-1;;;;;4811:126:0;;;;;2794:135;;;;;;;;;;;;2607:79;;;;;;;;;;;;;;;-1:-1:-1;;;;;2607:79:0;;;;;;;;;;;;;;3913:39;;;;;;;;;;;;3559:218;;;;;;;;;;;;5683:326;;;;;;;;;;-1:-1:-1;;;;;5683:326:0;;;;;;;6259:604;;;;;;;;;;;;;-1:-1:-1;;;;;6259:604:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6259:604:0;;-1:-1:-1;6259:604:0;;-1:-1:-1;;;;;;6259:604:0;10221:170;;;;;;;;;;-1:-1:-1;;;;;10221:170:0;;;;;;;3334:213;;;;;;;;;;;;;;9172:165;;;;;;;;;;-1:-1:-1;;;;;9172:165:0;;;;;;;;;;9390:98;;;;;;;;;;-1:-1:-1;;;;;9390:98:0;;;;;2937:189;;;;;;;;;;-1:-1:-1;;;;;2937:189:0;;;;;7179:607;;;;;;;;;;;;;-1:-1:-1;;;;;7179:607:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7179:607:0;;-1:-1:-1;7179:607:0;;-1:-1:-1;;;;;;7179:607:0;4061:20;;;;;;;;;;;;3959:39;;;;;;;;;;;;;;;;;;:::o;8915:223::-;-1:-1:-1;;;;;9027:10:0;9019:19;;8994:12;9019:19;;;:7;:19;;;;;;;;:29;;;;;;;;;;;;;:39;;;8994:12;;9019:29;:19;9069:39;;9051:7;;9069:39;;;;;;;;;;;;;-1:-1:-1;9126:4:0;8915:223;;;;;:::o;4569:111::-;4661:11;;4569:111;:::o;8281:437::-;4415:8;;8417:12;;-1:-1:-1;;;4415:8:0;;;;:16;;4427:4;4415:16;;:39;;-1:-1:-1;4449:5:0;;4435:10;-1:-1:-1;;;;;4435:19:0;;;4449:5;;4435:19;4415:39;:64;;;;4472:7;:5;:7::i;:::-;-1:-1:-1;;;;;4458:21:0;:10;-1:-1:-1;;;;;4458:21:0;;4415:64;4407:73;;;;;;;;-1:-1:-1;;;;;8450:10:0;;;;8442:19;;;;;;-1:-1:-1;;;;;8490:15:0;;;;;;:8;:15;;;;;;:27;;8510:6;8490:27;:19;:27;:::i;:::-;-1:-1:-1;;;;;8472:15:0;;;;;;;:8;:15;;;;;;;;:45;;;;8557:7;:14;;;;;8572:10;8557:26;;;;;;;;;;;:38;;8588:6;8557:38;:30;:38;:::i;:::-;-1:-1:-1;;;;;8528:14:0;;;;;;;:7;:14;;;;;;;;8543:10;8528:26;;;;;;;;;:67;;;;8622:13;;;;;:8;:13;;;;;:25;;8640:6;8622:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;8606:13:0;;;;;;;:8;:13;;;;;;;:41;;;;:13;8660:28;;;;-1:-1:-1;;;;;;;;;;;8660:28:0;8681:6;;8660:28;;;;;;;;;;;;;-1:-1:-1;8706:4:0;8281:437;;;;;:::o;9577:83::-;2741:6;;2751:10;-1:-1:-1;;;;;2741:20:0;;;:6;;:20;2733:29;;;;;;9637:8;:15;;-1:-1:-1;;9637:15:0;-1:-1:-1;;;9637:15:0;;;9577:83::o;3869:37::-;3904:2;3869:37;:::o;9998:116::-;10056:4;2741:6;;2751:10;-1:-1:-1;;;;;2741:20:0;;;:6;;:20;2733:29;;;;;;10080:7;:5;:7::i;:::-;-1:-1:-1;;;;;10080:12:0;:26;10093:4;-1:-1:-1;;;;;10093:12:0;;10080:26;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9998:116:0;:::o;4107:28::-;;;-1:-1:-1;;;4107:28:0;;;;;:::o;3236:90::-;3303:15;3236:90;:::o;3134:::-;3207:9;;3134:90;:::o;4811:126::-;-1:-1:-1;;;;;4914:15:0;4887:7;4914:15;;;:8;:15;;;;;;;4811:126::o;2794:135::-;2741:6;;2751:10;-1:-1:-1;;;;;2741:20:0;;;:6;;:20;2733:29;;;;;;2888:1;2872:6;;-1:-1:-1;;;;;2872:6:0;-1:-1:-1;;;;;;;;;;;2851:40:0;;;;;;;;;2919:1;2902:19;;-1:-1:-1;;2902:19:0;;;2794:135::o;2607:79::-;2645:7;2672:6;-1:-1:-1;;;;;2672:6:0;2607:79;:::o;3913:39::-;;;;;;;;;;;;;;;;;;:::o;3559:218::-;3603:14;;3621:10;-1:-1:-1;;;;;3603:28:0;;;:14;;:28;3595:37;;;;;;3669:9;;3651:15;:27;3643:37;;;;;;3720:14;;;3712:6;-1:-1:-1;;;;;3720:14:0;;;;3712:6;-1:-1:-1;;;;;;;;;;;3691:44:0;;;;;;;;;3755:14;;;3746:23;;-1:-1:-1;;3746:23:0;-1:-1:-1;;;;;3755:14:0;;;3746:23;;;;;;3559:218::o;5683:326::-;4415:8;;5771:12;;-1:-1:-1;;;4415:8:0;;;;:16;;4427:4;4415:16;;:39;;-1:-1:-1;4449:5:0;;4435:10;-1:-1:-1;;;;;4435:19:0;;;4449:5;;4435:19;4415:39;:64;;;;4472:7;:5;:7::i;:::-;-1:-1:-1;;;;;4458:21:0;:10;-1:-1:-1;;;;;4458:21:0;;4415:64;4407:73;;;;;;;;-1:-1:-1;;;;;5804:10:0;;;;5796:19;;;;;;-1:-1:-1;;;;;5858:10:0;5849:20;;;;;:8;:20;;;;;;:32;;5874:6;5849:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;5835:10:0;5826:20;;;;;;:8;:20;;;;;;:55;;;;5908:13;;;;;;;:25;;5926:6;5908:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;5892:13:0;;;;;;;:8;:13;;;;;;;:41;;;;:13;5955:10;5946:33;;;;-1:-1:-1;;;;;;;;;;;5946:33:0;5972:6;;5946:33;;;;;;;;;;;;;-1:-1:-1;5997:4:0;5683:326;;;;:::o;6259:604::-;6390:12;6644:25;4415:8;;;;;;;;;;;:16;;4427:4;4415:16;;;:39;;;-1:-1:-1;4449:5:0;;4435:10;-1:-1:-1;;;;;4435:19:0;;;4449:5;;4435:19;4415:39;:64;;;;4472:7;:5;:7::i;:::-;-1:-1:-1;;;;;4458:21:0;:10;-1:-1:-1;;;;;4458:21:0;;4415:64;4407:73;;;;;;;;-1:-1:-1;;;;;6423:10:0;;;;6415:19;;;;;;6468:33;6494:6;6468:21;6478:10;6468:9;:21::i;:::-;:25;:33;:25;:33;:::i;:::-;-1:-1:-1;;;;;6454:10:0;6445:20;;;;;:8;:20;;;;;:56;6528:26;6547:6;6528:14;6538:3;6528:9;:14::i;:::-;:18;:26;:18;:26;:::i;:::-;-1:-1:-1;;;;;6512:13:0;;;;;;;:8;:13;;;;;;;:42;;;;:13;6574:10;6565:33;;;;-1:-1:-1;;;;;;;;;;;6565:33:0;6591:6;;6565:33;;;;;;;;;;;;;6612:15;6623:3;6612:10;:15::i;:::-;6609:215;;;-1:-1:-1;6689:3:0;-1:-1:-1;;;;;6708:22:0;;;6731:10;6743:6;6751:5;6708:49;;;;;-1:-1:-1;;;6708:49:0;;;;;;;-1:-1:-1;;;;;6708:49:0;-1:-1:-1;;;;;6708:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;6708:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6806:5;6772:40;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;182:3;176:10;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;377:20;365:33;;;-1:-1;;;6772:40:0;;;;;-1:-1:-1;6772:40:0;;-1:-1:-1;;6772:40:0;;;;;;6793:3;-1:-1:-1;;;;;6772:40:0;6781:10;-1:-1:-1;;;;;6772:40:0;;6798:6;6772:40;;;;;;;;;;;;;;6609:215;-1:-1:-1;6851:4:0;;6259:604;-1:-1:-1;;;;6259:604:0:o;10221:170::-;10306:12;10344;-1:-1:-1;;;;;10338:28:0;;10367:7;:5;:7::i;:::-;10376:6;10338:45;;;;;;;;-1:-1:-1;;;10338:45:0;;;;;;-1:-1:-1;;;;;10338:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10221:170;-1:-1:-1;;;;10221:170:0:o;3334:213::-;2741:6;;2751:10;-1:-1:-1;;;;;2741:20:0;;;:6;;:20;2733:29;;;;;;3407:6;;;;3390:23;;-1:-1:-1;;3390:23:0;;;-1:-1:-1;;;;;3407:6:0;;3390:23;;;;3424:19;;;3466:15;:22;;3454:9;:34;3407:6;-1:-1:-1;;;;;;;;;;;3499:40:0;;;;;;;;;3334:213;:::o;9172:165::-;-1:-1:-1;;;;;9304:15:0;;;9267:17;9304:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;9172:165::o;9390:98::-;2741:6;;2751:10;-1:-1:-1;;;;;2741:20:0;;;:6;;:20;2733:29;;;;;;9466:5;:14;;-1:-1:-1;;9466:14:0;-1:-1:-1;;;;;9466:14:0;;;;;;;;;;9390:98::o;2937:189::-;2741:6;;2751:10;-1:-1:-1;;;;;2741:20:0;;;:6;;:20;2733:29;;;;;;-1:-1:-1;;;;;3018:22:0;;;;3010:31;;;;;;3073:6;;-1:-1:-1;;;;;3052:38:0;;;;3073:6;-1:-1:-1;;;;;;;;;;;3052:38:0;;;;;;;;;3101:6;:17;;-1:-1:-1;;3101:17:0;-1:-1:-1;;;;;3101:17:0;;;;;;;;;;2937:189::o;7179:607::-;4415:8;;7345:12;;-1:-1:-1;;;4415:8:0;;;;:16;;4427:4;4415:16;;:39;;-1:-1:-1;4449:5:0;;4435:10;-1:-1:-1;;;;;4435:19:0;;;4449:5;;4435:19;4415:39;:64;;;;4472:7;:5;:7::i;:::-;-1:-1:-1;;;;;4458:21:0;:10;-1:-1:-1;;;;;4458:21:0;;4415:64;4407:73;;;;;;;;-1:-1:-1;;;;;7378:10:0;;;;7370:19;;;;;;7423:33;7449:6;7423:21;7433:10;7423:9;:21::i;:33::-;-1:-1:-1;;;;;7409:10:0;7400:20;;;;;:8;:20;;;;;:56;7483:26;7502:6;7483:14;7493:3;7483:9;:14::i;:26::-;-1:-1:-1;;;;;7467:13:0;;;;;;;:8;:13;;;;;;;:42;;;;:13;7529:10;7520:33;;;;-1:-1:-1;;;;;;;;;;;7520:33:0;7546:6;;7520:33;;;;;;;;;;;;;7569:15;7580:3;7569:10;:15::i;:::-;7566:191;;;7608:3;-1:-1:-1;;;;;7608:8:0;7623:1;7643:16;7633:27;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;182:3;176:10;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;377:20;365:33;;;-1:-1;;;7633:27:0;;;;;-1:-1:-1;7633:27:0;;-1:-1:-1;;7633:27:0;;;;;;-1:-1:-1;;;7608:81:0;;;7663:10;7675:6;7683:5;7608:81;;;;;-1:-1:-1;;;7608:81:0;;;;;;;-1:-1:-1;;;;;7608:81:0;-1:-1:-1;;;;;7608:81:0;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;7608:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7601:89;;;;;;7739:5;7705:40;;;;;;;;;;;;;66:2:-1;58:11;;36:153;;182:3;176:10;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;4061:20:0;;;-1:-1:-1;;;;;4061:20:0;;:::o;176:114::-;228:6;255;;;;247:15;;;;;;-1:-1:-1;277:5:0;;;176:114::o;54:::-;129:5;;;153:6;;;;145:15;;;;;5048:308;5123:16;5292:18;;5339:8;;5048:308::o

Swarm Source

bzzr://5e3b2c6f3fa06c819fc462289597ce2bf1e6d0fdf256691fb53a0ebd39c7185f

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.