Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
DeFi
Overview
Max Total Supply
100,000,000 INST
Holders
3,794 (0.00%)
Market
Price
$3.46 @ 0.001128 ETH (-2.54%)
Onchain Market Cap
$346,000,000.00
Circulating Supply Market Cap
$136,700,004.00
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
InstaToken
Compiler Version
v0.7.3+commit.9bfce1f6
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
pragma solidity ^0.7.0; pragma experimental ABIEncoderV2; import { TokenDelegatorStorage, TokenEvents } from "./TokenInterfaces.sol"; contract InstaToken is TokenDelegatorStorage, TokenEvents { constructor( address account, address implementation_, uint initialSupply_, uint mintingAllowedAfter_, bool transferPaused_ ) { require(implementation_ != address(0), "TokenDelegator::constructor invalid address"); delegateTo( implementation_, abi.encodeWithSignature( "initialize(address,uint256,uint256,bool)", account, initialSupply_, mintingAllowedAfter_, transferPaused_ ) ); implementation = implementation_; emit NewImplementation(address(0), implementation); } /** * @notice Called by the admin to update the implementation of the delegator * @param implementation_ The address of the new implementation for delegation */ function _setImplementation(address implementation_) external isMaster { require(implementation_ != address(0), "TokenDelegator::_setImplementation: invalid implementation address"); address oldImplementation = implementation; implementation = implementation_; emit NewImplementation(oldImplementation, implementation); } /** * @notice Internal method to delegate execution to another contract * @dev It returns to the external caller whatever the implementation returns or forwards reverts * @param callee The contract to delegatecall * @param data The raw data to delegatecall */ function delegateTo(address callee, bytes memory data) internal { (bool success, bytes memory returnData) = callee.delegatecall(data); assembly { if eq(success, 0) { revert(add(returnData, 0x20), returndatasize()) } } } /** * @dev Delegates execution to an implementation contract. * It returns to the external caller whatever the implementation returns * or forwards reverts. */ fallback () external payable { // delegate all other functions to current implementation (bool success, ) = implementation.delegatecall(msg.data); assembly { let free_mem_ptr := mload(0x40) returndatacopy(free_mem_ptr, 0, returndatasize()) switch success case 0 { revert(free_mem_ptr, returndatasize()) } default { return(free_mem_ptr, returndatasize()) } } } }
pragma solidity ^0.7.0; pragma experimental ABIEncoderV2; interface IndexInterface { function master() external view returns (address); } contract TokenEvents { /// @notice An event thats emitted when an account changes its delegate event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate); /// @notice An event thats emitted when a delegate account's vote balance changes event DelegateVotesChanged(address indexed delegate, uint previousBalance, uint newBalance); /// @notice An event thats emitted when the minter changes event MinterChanged(address indexed oldMinter, address indexed newMinter); /// @notice The standard EIP-20 transfer event event Transfer(address indexed from, address indexed to, uint256 amount); /// @notice The standard EIP-20 approval event event Approval(address indexed owner, address indexed spender, uint256 amount); /// @notice Emitted when implementation is changed event NewImplementation(address oldImplementation, address newImplementation); /// @notice An event thats emitted when the token transfered is paused event TransferPaused(address indexed minter); /// @notice An event thats emitted when the token transfered is unpaused event TransferUnpaused(address indexed minter); /// @notice An event thats emitted when the token symbol is changed event ChangedSymbol(string oldSybmol, string newSybmol); /// @notice An event thats emitted when the token name is changed event ChangedName(string oldName, string newName); } contract TokenDelegatorStorage { /// @notice InstaIndex contract IndexInterface constant public instaIndex = IndexInterface(0x2971AdFa57b20E5a416aE5a708A8655A9c74f723); /// @notice Active brains of Token address public implementation; /// @notice EIP-20 token name for this token string public name = "Instadapp"; /// @notice EIP-20 token symbol for this token string public symbol = "INST"; /// @notice Total number of tokens in circulation uint public totalSupply; /// @notice EIP-20 token decimals for this token uint8 public constant decimals = 18; modifier isMaster() { require(instaIndex.master() == msg.sender, "Tkn::isMaster: msg.sender not master"); _; } } /** * @title Storage for Token Delegate * @notice For future upgrades, do not change TokenDelegateStorageV1. Create a new * contract which implements TokenDelegateStorageV1 and following the naming convention * TokenDelegateStorageVX. */ contract TokenDelegateStorageV1 is TokenDelegatorStorage { /// @notice The timestamp after which minting may occur uint public mintingAllowedAfter; /// @notice token transfer pause state bool public transferPaused; // Allowance amounts on behalf of others mapping (address => mapping (address => uint96)) internal allowances; // Official record of token balances for each account mapping (address => uint96) internal balances; /// @notice A record of each accounts delegate mapping (address => address) public delegates; /// @notice A checkpoint for marking number of votes from a given block struct Checkpoint { uint32 fromBlock; uint96 votes; } /// @notice A record of votes checkpoints for each account, by index mapping (address => mapping (uint32 => Checkpoint)) public checkpoints; /// @notice The number of checkpoints for each account mapping (address => uint32) public numCheckpoints; /// @notice A record of states for signing / validating signatures mapping (address => uint) public nonces; }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"implementation_","type":"address"},{"internalType":"uint256","name":"initialSupply_","type":"uint256"},{"internalType":"uint256","name":"mintingAllowedAfter_","type":"uint256"},{"internalType":"bool","name":"transferPaused_","type":"bool"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"oldName","type":"string"},{"indexed":false,"internalType":"string","name":"newName","type":"string"}],"name":"ChangedName","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"oldSybmol","type":"string"},{"indexed":false,"internalType":"string","name":"newSybmol","type":"string"}],"name":"ChangedSymbol","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"fromDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"toDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBalance","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldMinter","type":"address"},{"indexed":true,"internalType":"address","name":"newMinter","type":"address"}],"name":"MinterChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldImplementation","type":"address"},{"indexed":false,"internalType":"address","name":"newImplementation","type":"address"}],"name":"NewImplementation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"minter","type":"address"}],"name":"TransferPaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"minter","type":"address"}],"name":"TransferUnpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"implementation_","type":"address"}],"name":"_setImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"instaIndex","outputs":[{"internalType":"contract IndexInterface","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60c060405260096080819052680496e737461646170760bc1b60a090815261002a91600191906101da565b5060408051808201909152600480825263125394d560e21b6020909201918252610056916002916101da565b5034801561006357600080fd5b506040516109c13803806109c183398101604081905261008291610289565b6001600160a01b0384166100b15760405162461bcd60e51b81526004016100a890610362565b60405180910390fd5b6100ff84868585856040516024016100cc949392919061033a565b60408051601f198184030181529190526020810180516001600160e01b039081166334aef83760e01b1790915261016316565b600080546001600160a01b0319166001600160a01b03868116919091178083556040517fd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a936101519390921690610320565b60405180910390a150505050506103ad565b60006060836001600160a01b03168360405161017f91906102e7565b600060405180830381855af49150503d80600081146101ba576040519150601f19603f3d011682016040523d82523d6000602084013e6101bf565b606091505b509150915060008214156101d4573d60208201fd5b50505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061021b57805160ff1916838001178555610248565b82800160010185558215610248579182015b8281111561024857825182559160200191906001019061022d565b50610254929150610258565b5090565b5b808211156102545760008155600101610259565b80516001600160a01b038116811461028457600080fd5b919050565b600080600080600060a086880312156102a0578081fd5b6102a98661026d565b94506102b76020870161026d565b93506040860151925060608601519150608086015180151581146102d9578182fd5b809150509295509295909350565b60008251815b8181101561030757602081860181015185830152016102ed565b818111156103155782828501525b509190910192915050565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03949094168452602084019290925260408301521515606082015260800190565b6020808252602b908201527f546f6b656e44656c656761746f723a3a636f6e7374727563746f7220696e766160408201526a6c6964206164647265737360a81b606082015260800190565b610605806103bc6000396000f3fe6080604052600436106100705760003560e01c80635c60da1b1161004e5780635c60da1b1461015a57806395d89b411461017c578063a41098bf14610191578063bb913f41146101a657610070565b806306fdde03146100eb57806318160ddd14610116578063313ce56714610138575b600080546040516001600160a01b03909116906100909083903690610463565b600060405180830381855af49150503d80600081146100cb576040519150601f19603f3d011682016040523d82523d6000602084013e6100d0565b606091505b505090506040513d6000823e8180156100e7573d82f35b3d82fd5b3480156100f757600080fd5b506101006101c8565b60405161010d91906104a1565b60405180910390f35b34801561012257600080fd5b5061012b610255565b60405161010d91906105a0565b34801561014457600080fd5b5061014d61025b565b60405161010d91906105a9565b34801561016657600080fd5b5061016f610260565b60405161010d9190610473565b34801561018857600080fd5b5061010061026f565b34801561019d57600080fd5b5061016f6102c7565b3480156101b257600080fd5b506101c66101c1366004610424565b6102df565b005b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561024d5780601f106102225761010080835404028352916020019161024d565b820191906000526020600020905b81548152906001019060200180831161023057829003601f168201915b505050505081565b60035481565b601281565b6000546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f8101849004840282018401909252818152929183018282801561024d5780601f106102225761010080835404028352916020019161024d565b732971adfa57b20e5a416ae5a708a8655a9c74f72381565b336001600160a01b0316732971adfa57b20e5a416ae5a708a8655a9c74f7236001600160a01b031663ee97f7f36040518163ffffffff1660e01b815260040160206040518083038186803b15801561033657600080fd5b505afa15801561034a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036e9190610447565b6001600160a01b03161461039d5760405162461bcd60e51b81526004016103949061055c565b60405180910390fd5b6001600160a01b0381166103c35760405162461bcd60e51b8152600401610394906104f4565b600080546001600160a01b038381166001600160a01b031983161792839055604051918116927fd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a926104189285921690610487565b60405180910390a15050565b600060208284031215610435578081fd5b8135610440816105b7565b9392505050565b600060208284031215610458578081fd5b8151610440816105b7565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6000602080835283518082850152825b818110156104cd578581018301518582016040015282016104b1565b818111156104de5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526042908201527f546f6b656e44656c656761746f723a3a5f736574496d706c656d656e7461746960408201527f6f6e3a20696e76616c696420696d706c656d656e746174696f6e206164647265606082015261737360f01b608082015260a00190565b60208082526024908201527f546b6e3a3a69734d61737465723a206d73672e73656e646572206e6f74206d6160408201526339ba32b960e11b606082015260800190565b90815260200190565b60ff91909116815260200190565b6001600160a01b03811681146105cc57600080fd5b5056fea264697066735822122074bc32cb9e5d16037640c248eea0a737b9df31782067aff0720bf127027e861864736f6c63430007030033000000000000000000000000b1dc62ec38e6e3857a887210c38418e4a17da5b200000000000000000000000031de2088f38ed7f8a4231de03973814eda1f877300000000000000000000000000000000000000000052b7d2dcc80cd2e400000000000000000000000000000000000000000000000000000000000000659200800000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106100705760003560e01c80635c60da1b1161004e5780635c60da1b1461015a57806395d89b411461017c578063a41098bf14610191578063bb913f41146101a657610070565b806306fdde03146100eb57806318160ddd14610116578063313ce56714610138575b600080546040516001600160a01b03909116906100909083903690610463565b600060405180830381855af49150503d80600081146100cb576040519150601f19603f3d011682016040523d82523d6000602084013e6100d0565b606091505b505090506040513d6000823e8180156100e7573d82f35b3d82fd5b3480156100f757600080fd5b506101006101c8565b60405161010d91906104a1565b60405180910390f35b34801561012257600080fd5b5061012b610255565b60405161010d91906105a0565b34801561014457600080fd5b5061014d61025b565b60405161010d91906105a9565b34801561016657600080fd5b5061016f610260565b60405161010d9190610473565b34801561018857600080fd5b5061010061026f565b34801561019d57600080fd5b5061016f6102c7565b3480156101b257600080fd5b506101c66101c1366004610424565b6102df565b005b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561024d5780601f106102225761010080835404028352916020019161024d565b820191906000526020600020905b81548152906001019060200180831161023057829003601f168201915b505050505081565b60035481565b601281565b6000546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f8101849004840282018401909252818152929183018282801561024d5780601f106102225761010080835404028352916020019161024d565b732971adfa57b20e5a416ae5a708a8655a9c74f72381565b336001600160a01b0316732971adfa57b20e5a416ae5a708a8655a9c74f7236001600160a01b031663ee97f7f36040518163ffffffff1660e01b815260040160206040518083038186803b15801561033657600080fd5b505afa15801561034a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036e9190610447565b6001600160a01b03161461039d5760405162461bcd60e51b81526004016103949061055c565b60405180910390fd5b6001600160a01b0381166103c35760405162461bcd60e51b8152600401610394906104f4565b600080546001600160a01b038381166001600160a01b031983161792839055604051918116927fd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a926104189285921690610487565b60405180910390a15050565b600060208284031215610435578081fd5b8135610440816105b7565b9392505050565b600060208284031215610458578081fd5b8151610440816105b7565b6000828483379101908152919050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6000602080835283518082850152825b818110156104cd578581018301518582016040015282016104b1565b818111156104de5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526042908201527f546f6b656e44656c656761746f723a3a5f736574496d706c656d656e7461746960408201527f6f6e3a20696e76616c696420696d706c656d656e746174696f6e206164647265606082015261737360f01b608082015260a00190565b60208082526024908201527f546b6e3a3a69734d61737465723a206d73672e73656e646572206e6f74206d6160408201526339ba32b960e11b606082015260800190565b90815260200190565b60ff91909116815260200190565b6001600160a01b03811681146105cc57600080fd5b5056fea264697066735822122074bc32cb9e5d16037640c248eea0a737b9df31782067aff0720bf127027e861864736f6c63430007030033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000b1dc62ec38e6e3857a887210c38418e4a17da5b200000000000000000000000031de2088f38ed7f8a4231de03973814eda1f877300000000000000000000000000000000000000000052b7d2dcc80cd2e400000000000000000000000000000000000000000000000000000000000000659200800000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : account (address): 0xb1DC62EC38E6E3857a887210C38418E4A17Da5B2
Arg [1] : implementation_ (address): 0x31de2088f38ed7F8a4231dE03973814edA1f8773
Arg [2] : initialSupply_ (uint256): 100000000000000000000000000
Arg [3] : mintingAllowedAfter_ (uint256): 1704067200
Arg [4] : transferPaused_ (bool): False
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 000000000000000000000000b1dc62ec38e6e3857a887210c38418e4a17da5b2
Arg [1] : 00000000000000000000000031de2088f38ed7f8a4231de03973814eda1f8773
Arg [2] : 00000000000000000000000000000000000000000052b7d2dcc80cd2e4000000
Arg [3] : 0000000000000000000000000000000000000000000000000000000065920080
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000000
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.