ETH Price: $3,149.74 (+5.76%)

Token

Inlock token (ILK)
 

Overview

Max Total Supply

4,400,000,000 ILK

Holders

2,860 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
0 ILK

Value
$0.00
0x14a9f2c036094a9dc42639876faa2dc9f8158c92
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

INLOCK is a lending platform enabling cryptocurrency holders to manage short-term liquidity problems by taking out a fiat loan using their existing crypto assets as collateral.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-07-20
*/

pragma solidity 0.4.24;
/*
    Owner
    owned.sol
    1.0.1
*/

contract Owned {
    /* Variables */
    address public owner = msg.sender;
    /* Constructor */
    constructor(address _owner) public {
        if ( _owner == 0x00 ) {
            _owner = msg.sender;
        }
        owner = _owner;
    }
    /* Externals */
    function replaceOwner(address _owner) external returns(bool) {
        require( isOwner() );
        owner = _owner;
        return true;
    }
    /* Internals */
    function isOwner() internal view returns(bool) {
        return owner == msg.sender;
    }
    /* Modifiers */
    modifier forOwner {
        require( isOwner() );
        _;
    }
}
/*
    Safe mathematical operations
    safeMath.sol
    1.0.0
*/

library SafeMath {
    /* Internals */
    function add(uint256 a, uint256 b) internal pure returns(uint256 c) {
        c = a + b;
        assert( c >= a );
        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns(uint256 c) {
        c = a - b;
        assert( c <= a );
        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns(uint256 c) {
        c = a * b;
        assert( c == 0 || c / a == b );
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns(uint256) {
        return a / b;
    }
    function pow(uint256 a, uint256 b) internal pure returns(uint256 c) {
        c = a ** b;
        assert( c % a == 0 );
        return a ** b;
    }
}
contract TokenDB {}
contract Ico {}
/*
    Token Proxy
    token.sol
    1.0.2
*/

contract Token is Owned {
    /* Declarations */
    using SafeMath for uint256;
    /* Variables */
    string  public name = "Inlock token";
    string  public symbol = "ILK";
    uint8   public decimals = 8;
    uint256 public totalSupply = 44e16;
    address public libAddress;
    TokenDB public db;
    Ico public ico;
    /* Constructor */
    constructor(address _owner, address _libAddress, address _dbAddress, address _icoAddress) Owned(_owner) public {
        libAddress = _libAddress;
        db = TokenDB(_dbAddress);
        ico = Ico(_icoAddress);
        emit Mint(_icoAddress, totalSupply);
    }
    /* Fallback */
    function () public { revert(); }
    /* Externals */
    function changeLibAddress(address _libAddress) external forOwner {
        libAddress = _libAddress;
    }
    function changeDBAddress(address _dbAddress) external forOwner {
        db = TokenDB(_dbAddress);
    }
    function changeIcoAddress(address _icoAddress) external forOwner {
        ico = Ico(_icoAddress);
    }
    function approve(address _spender, uint256 _value) external returns (bool _success) {
        address _trg = libAddress;
        assembly {
            let m := mload(0x40)
            calldatacopy(m, 0, calldatasize)
            let success := delegatecall(gas, _trg, m, calldatasize, m, 0x20)
            switch success case 0 {
                revert(0, 0)
            } default {
                return(m, 0x20)
            }
        }
    }
    function transfer(address _to, uint256 _amount) external returns (bool _success) {
        address _trg = libAddress;
        assembly {
            let m := mload(0x40)
            calldatacopy(m, 0, calldatasize)
            let success := delegatecall(gas, _trg, m, calldatasize, m, 0x20)
            switch success case 0 {
                revert(0, 0)
            } default {
                return(m, 0x20)
            }
        }
    }
    function bulkTransfer(address[] _to, uint256[] _amount) external returns (bool _success) {
        address _trg = libAddress;
        assembly {
            let m := mload(0x40)
            calldatacopy(m, 0, calldatasize)
            let success := delegatecall(gas, _trg, m, calldatasize, m, 0x20)
            switch success case 0 {
                revert(0, 0)
            } default {
                return(m, 0x20)
            }
        }
    }
    function transferFrom(address _from, address _to, uint256 _amount) external returns (bool _success) {
        address _trg = libAddress;
        assembly {
            let m := mload(0x40)
            calldatacopy(m, 0, calldatasize)
            let success := delegatecall(gas, _trg, m, calldatasize, m, 0x20)
            switch success case 0 {
                revert(0, 0)
            } default {
                return(m, 0x20)
            }
        }
    }
    /* Constants */
    function allowance(address _owner, address _spender) public view returns (uint256 _remaining) {
        address _trg = libAddress;
        assembly {
            let m := mload(0x40)
            calldatacopy(m, 0, calldatasize)
            let success := delegatecall(gas, _trg, m, calldatasize, m, 0x20)
            switch success case 0 {
                revert(0, 0)
            } default {
                return(m, 0x20)
            }
        }
    }
    function balanceOf(address _owner) public view returns (uint256 _balance) {
        address _trg = libAddress;
        assembly {
            let m := mload(0x40)
            calldatacopy(m, 0, calldatasize)
            let success := delegatecall(gas, _trg, m, calldatasize, m, 0x20)
            switch success case 0 {
                revert(0, 0)
            } default {
                return(m, 0x20)
            }
        }
    }
    /* Events */
    event AllowanceUsed(address indexed _spender, address indexed _owner, uint256 indexed _value);
    event Mint(address indexed _addr, uint256 indexed _value);
    event Approval(address indexed _owner, address indexed _spender, uint _value);
    event Transfer(address indexed _from, address indexed _to, uint _value);
}

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":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address[]"},{"name":"_amount","type":"uint256[]"}],"name":"bulkTransfer","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":"_libAddress","type":"address"}],"name":"changeLibAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"_success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"libAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_dbAddress","type":"address"}],"name":"changeDBAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"db","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ico","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","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":"_owner","type":"address"}],"name":"replaceOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"_success","type":"bool"}],"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":"_icoAddress","type":"address"}],"name":"changeIcoAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_owner","type":"address"},{"name":"_libAddress","type":"address"},{"name":"_dbAddress","type":"address"},{"name":"_icoAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_spender","type":"address"},{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_value","type":"uint256"}],"name":"AllowanceUsed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_addr","type":"address"},{"indexed":true,"name":"_value","type":"uint256"}],"name":"Mint","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":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"}]

60008054600160a060020a0319163317905560c0604052600c60808190527f496e6c6f636b20746f6b656e000000000000000000000000000000000000000060a09081526100509160019190610170565b506040805180820190915260038082527f494c4b0000000000000000000000000000000000000000000000000000000000602090920191825261009591600291610170565b506003805460ff1916600817905567061b31ab352c00006004553480156100bb57600080fd5b5060405160808061088e833981016040908152815160208301519183015160609093015190929083600160a060020a03811615156100f65750335b60008054600160a060020a0319908116600160a060020a039384161782556005805482168785161790556006805482168685161790556007805490911692841692831790556004546040519092917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688591a35050505061020b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101b157805160ff19168380011785556101de565b828001600101855582156101de579182015b828111156101de5782518255916020019190600101906101c3565b506101ea9291506101ee565b5090565b61020891905b808211156101ea57600081556001016101f4565b90565b6106748061021a6000396000f3006080604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010d578063095ea7b314610197578063153a1f3e146101cf57806318160ddd146101fb5780631e1d696a1461022257806323b872dd1461024557806329fd50eb1461026f578063313ce567146102a057806334247b9b146102cb5780634d655aff146102ec5780635d4522011461030157806370a08231146103165780638da5cb5b1461033757806395d89b411461034c578063a39a45b714610361578063a9059cbb14610197578063dd62ed3e14610382578063ded05da5146103a9575b34801561010757600080fd5b50600080fd5b34801561011957600080fd5b506101226103ca565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015c578181015183820152602001610144565b50505050905090810190601f1680156101895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a357600080fd5b506101bb600160a060020a0360043516602435610457565b604080519115158252519081900360200190f35b3480156101db57600080fd5b506101bb6024600480358281019290820135918135918201910135610457565b34801561020757600080fd5b50610210610487565b60408051918252519081900360200190f35b34801561022e57600080fd5b50610243600160a060020a036004351661048d565b005b34801561025157600080fd5b506101bb600160a060020a0360043581169060243516604435610457565b34801561027b57600080fd5b506102846104cf565b60408051600160a060020a039092168252519081900360200190f35b3480156102ac57600080fd5b506102b56104de565b6040805160ff9092168252519081900360200190f35b3480156102d757600080fd5b50610243600160a060020a03600435166104e7565b3480156102f857600080fd5b50610284610529565b34801561030d57600080fd5b50610284610538565b34801561032257600080fd5b50610210600160a060020a0360043516610457565b34801561034357600080fd5b50610284610547565b34801561035857600080fd5b50610122610556565b34801561036d57600080fd5b506101bb600160a060020a03600435166105ae565b34801561038e57600080fd5b50610210600160a060020a0360043581169060243516610457565b3480156103b557600080fd5b50610243600160a060020a03600435166105f5565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561044f5780601f106104245761010080835404028352916020019161044f565b820191906000526020600020905b81548152906001019060200180831161043257829003601f168201915b505050505081565b600554604051600091600160a060020a031690368382376020813683855af480801561048257602083f35b600080fd5b60045481565b610495610637565b15156104a057600080fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031681565b60035460ff1681565b6104ef610637565b15156104fa57600080fd5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600654600160a060020a031681565b600754600160a060020a031681565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f8101849004840282018401909252818152929183018282801561044f5780601f106104245761010080835404028352916020019161044f565b60006105b8610637565b15156105c357600080fd5b5060008054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff199091161790556001919050565b6105fd610637565b151561060857600080fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314905600a165627a7a72305820f5a02cbb35c97de54cf8c4514e8cbed138ea69e09d3b736eadd503311e5404590029000000000000000000000000da8c0c6311ab6e43aa1c14967ad7abc6035b9596000000000000000000000000d10167921822fb5a6637f1b7a153fac7ea896cff000000000000000000000000ee467b4e21d501f301537c63b494e3f25a1ba5ce000000000000000000000000578fa4ab3b27a94fe97bd52167f1b02da20d31e8

Deployed Bytecode

0x6080604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010d578063095ea7b314610197578063153a1f3e146101cf57806318160ddd146101fb5780631e1d696a1461022257806323b872dd1461024557806329fd50eb1461026f578063313ce567146102a057806334247b9b146102cb5780634d655aff146102ec5780635d4522011461030157806370a08231146103165780638da5cb5b1461033757806395d89b411461034c578063a39a45b714610361578063a9059cbb14610197578063dd62ed3e14610382578063ded05da5146103a9575b34801561010757600080fd5b50600080fd5b34801561011957600080fd5b506101226103ca565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015c578181015183820152602001610144565b50505050905090810190601f1680156101895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101a357600080fd5b506101bb600160a060020a0360043516602435610457565b604080519115158252519081900360200190f35b3480156101db57600080fd5b506101bb6024600480358281019290820135918135918201910135610457565b34801561020757600080fd5b50610210610487565b60408051918252519081900360200190f35b34801561022e57600080fd5b50610243600160a060020a036004351661048d565b005b34801561025157600080fd5b506101bb600160a060020a0360043581169060243516604435610457565b34801561027b57600080fd5b506102846104cf565b60408051600160a060020a039092168252519081900360200190f35b3480156102ac57600080fd5b506102b56104de565b6040805160ff9092168252519081900360200190f35b3480156102d757600080fd5b50610243600160a060020a03600435166104e7565b3480156102f857600080fd5b50610284610529565b34801561030d57600080fd5b50610284610538565b34801561032257600080fd5b50610210600160a060020a0360043516610457565b34801561034357600080fd5b50610284610547565b34801561035857600080fd5b50610122610556565b34801561036d57600080fd5b506101bb600160a060020a03600435166105ae565b34801561038e57600080fd5b50610210600160a060020a0360043581169060243516610457565b3480156103b557600080fd5b50610243600160a060020a03600435166105f5565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561044f5780601f106104245761010080835404028352916020019161044f565b820191906000526020600020905b81548152906001019060200180831161043257829003601f168201915b505050505081565b600554604051600091600160a060020a031690368382376020813683855af480801561048257602083f35b600080fd5b60045481565b610495610637565b15156104a057600080fd5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600554600160a060020a031681565b60035460ff1681565b6104ef610637565b15156104fa57600080fd5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600654600160a060020a031681565b600754600160a060020a031681565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f8101849004840282018401909252818152929183018282801561044f5780601f106104245761010080835404028352916020019161044f565b60006105b8610637565b15156105c357600080fd5b5060008054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff199091161790556001919050565b6105fd610637565b151561060857600080fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600054600160a060020a03163314905600a165627a7a72305820f5a02cbb35c97de54cf8c4514e8cbed138ea69e09d3b736eadd503311e5404590029

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

000000000000000000000000da8c0c6311ab6e43aa1c14967ad7abc6035b9596000000000000000000000000d10167921822fb5a6637f1b7a153fac7ea896cff000000000000000000000000ee467b4e21d501f301537c63b494e3f25a1ba5ce000000000000000000000000578fa4ab3b27a94fe97bd52167f1b02da20d31e8

-----Decoded View---------------
Arg [0] : _owner (address): 0xda8c0c6311ab6E43aa1C14967ad7aBc6035B9596
Arg [1] : _libAddress (address): 0xD10167921822Fb5a6637f1B7a153fac7ea896cFf
Arg [2] : _dbAddress (address): 0xeE467B4e21d501f301537C63B494E3F25A1bA5cE
Arg [3] : _icoAddress (address): 0x578FA4ab3B27A94fe97Bd52167F1B02dA20D31e8

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000da8c0c6311ab6e43aa1c14967ad7abc6035b9596
Arg [1] : 000000000000000000000000d10167921822fb5a6637f1b7a153fac7ea896cff
Arg [2] : 000000000000000000000000ee467b4e21d501f301537c63b494e3f25a1ba5ce
Arg [3] : 000000000000000000000000578fa4ab3b27a94fe97bd52167f1b02da20d31e8


Swarm Source

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