ERC-20
Source Code
Overview
Max Total Supply
1,000,000 YMT
Holders
0
Transfers
-
0 (0%)
Market
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Name:
YourMomToken
Compiler Version
v0.4.18+commit.9cf6e910
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2017-12-28
*/
pragma solidity ^0.4.16; //YourMomToken
contract owned { //Defines contract Owner
address public owner;
//Events
event TransferOwnership (address indexed _owner, address indexed _newOwner); //Notifies about the ownership transfer
//Constrctor function
function owned() public {
owner = msg.sender;
}
function transferOwnership(address newOwner) onlyOwner() public {
TransferOwnership (owner, newOwner);
owner = newOwner;
}
//Modifiers
modifier onlyOwner {
require(msg.sender == owner);
_;
}
modifier onlyPayloadSize(uint size) { //Mitigates ERC20 Short Address Attack
assert(msg.data.length >= size + 4);
_;
}
}
contract YourMomToken is owned {
mapping (address => uint256) public balanceOf; //This creates an array with all balances
mapping (address => mapping (address => uint256)) public allowance; //This creates an array of arrays with adress->adress=value
uint256 public totalSupply;
string public name;
string public symbol;
uint8 public decimals;
//Events
event Transfer(address indexed from, address indexed to, uint256 value); //Declaring the event function to help clients like the Ethereum Wallet keep track of activities happening in the contract
event Approval(address indexed _owner, address indexed _spender, uint _value); //Notifies clients about the Approval
event Burn(address indexed from, uint256 value); //This notifies clients about the amount burnt
//Constructor function
function YourMomToken(string tokenName, string tokenSymbol, uint256 initialSupplyInEther) public {
name = tokenName; //Set the name for display purposes
symbol = tokenSymbol; //Set the symbol for display purposes
decimals = 18; //Amount of decimals for display purposes
totalSupply = initialSupplyInEther * 10**18; //Defines the initial supply as the total supply (in wei)
balanceOf[msg.sender] = totalSupply; //Give the creator all initial tokens
}
//Call functions
function name() public constant returns (string) { return name; }
function symbol() public constant returns (string) { return symbol; }
function decimals() public constant returns (uint8) { return decimals; }
function totalSupply() public constant returns (uint256) { return totalSupply; }
function balanceOf(address _owner) public constant returns (uint256 balance) { return balanceOf[_owner]; }
function allowance(address _owner, address _spender) public constant returns (uint256 remaining) { return allowance[_owner][_spender]; }
function transfer(address _to, uint256 _value) onlyPayloadSize (2 * 32) public returns (bool success) { //Transfer _value tokens from msg.sender to '_to'
_transfer(msg.sender, _to, _value); //Call the _transfer function (internal). Calling it it's cleaner than write two identical functions for 'transfer' and 'transferFrom'
return true;
}
function transferFrom(address _from, address _to, uint256 _value) onlyPayloadSize (3 * 32) public returns (bool success) { //Transfer tokens from other address
require(_value <= allowance[_from][msg.sender]); //Check allowance array, if '_from' has authorized 'msg.sender' spend <= _value
_transfer(_from, _to, _value); //Send '_value' tokens to '_to' in behalf of '_from'
allowance[_from][msg.sender] -= _value; //Reduce msg.sender's allowance to spend '_from's tokens in '_value'
return true;
}
function _transfer(address _from, address _to, uint _value) internal returns (bool success) {
require(_to != 0x0); //Prevent transfer to 0x0 address. Use burn() instead
require(balanceOf[_from] >= _value); //Check if the sender has enough
require(balanceOf[_to] + _value >= balanceOf[_to]); //Check for overflows
require(_value != 0); //Prevents a transaction of '0' to be executed
require(_from != _to); //Prevents sending a transaction to yourself
balanceOf[_from] -= _value; //Subtract from the sender
balanceOf[_to] += _value; //Add the same to the recipient
Transfer(_from, _to, _value); //Notify anyone listening that this transfer took place
return true;
}
function approve(address _spender, uint256 _value) public returns (bool success) { //Set allowance for other address
require((_value == 0) || (allowance[msg.sender][_spender] == 0)); //Mitigates the approve/transfer attack (race condition)
require(_value != allowance[msg.sender][_spender]); //Prevents setting allowance for the already setted value
allowance[msg.sender][_spender] = _value; //Set allowance array
Approval(msg.sender, _spender, _value); //Call the Approval event
return true;
}
function burn(uint256 _value) public returns (bool success) { //Function to destroy tokens
require(balanceOf[msg.sender] >= _value); //Check if the targeted balance has enough
require(_value != 0); //Prevents a transaction of '0' to be executed
balanceOf[msg.sender] -= _value; //Subtract from the targeted balance
totalSupply -= _value; //Update totalSupply
Burn(msg.sender, _value); //Call the Event to notice about the burn
return true;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"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":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":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":"_to","type":"address"},{"name":"_value","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":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"tokenName","type":"string"},{"name":"tokenSymbol","type":"string"},{"name":"initialSupplyInEther","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"TransferOwnership","type":"event"}]Contract Creation Code
6060604052341561000f57600080fd5b60405161098e38038061098e8339810160405280805182019190602001805182019190602001805160008054600160a060020a03191633600160a060020a03161790559150600490508380516100699291602001906100bb565b50600582805161007d9291602001906100bb565b506006805460ff19166012179055670de0b6b3a7640000026003819055600160a060020a033316600090815260016020526040902055506101569050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100fc57805160ff1916838001178555610129565b82800160010185558215610129579182015b8281111561012957825182559160200191906001019061010e565b50610135929150610139565b5090565b61015391905b80821115610135576000815560010161013f565b90565b610829806101656000396000f3006060604052600436106100b95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100be578063095ea7b31461014857806318160ddd1461017e57806323b872dd146101a3578063313ce567146101cb57806342966c68146101f457806370a082311461020a5780638da5cb5b1461022957806395d89b4114610258578063a9059cbb1461026b578063dd62ed3e1461028d578063f2fde38b146102b2575b600080fd5b34156100c957600080fd5b6100d16102d3565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561010d5780820151838201526020016100f5565b50505050905090810190601f16801561013a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561015357600080fd5b61016a600160a060020a036004351660243561037b565b604051901515815260200160405180910390f35b341561018957600080fd5b610191610453565b60405190815260200160405180910390f35b34156101ae57600080fd5b61016a600160a060020a0360043581169060243516604435610459565b34156101d657600080fd5b6101de6104e0565b60405160ff909116815260200160405180910390f35b34156101ff57600080fd5b61016a6004356104e9565b341561021557600080fd5b610191600160a060020a0360043516610580565b341561023457600080fd5b61023c61059b565b604051600160a060020a03909116815260200160405180910390f35b341561026357600080fd5b6100d16105aa565b341561027657600080fd5b61016a600160a060020a036004351660243561061d565b341561029857600080fd5b610191600160a060020a0360043581169060243516610642565b34156102bd57600080fd5b6102d1600160a060020a036004351661066d565b005b6102db6107eb565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103715780601f1061034657610100808354040283529160200191610371565b820191906000526020600020905b81548152906001019060200180831161035457829003601f168201915b5050505050905090565b60008115806103ad5750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b15156103b857600080fd5b600160a060020a033381166000908152600260209081526040808320938716835292905220548214156103ea57600080fd5b600160a060020a03338116600081815260026020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60035490565b60006060606436101561046857fe5b600160a060020a038086166000908152600260209081526040808320339094168352929052205483111561049b57600080fd5b6104a68585856106f3565b50600160a060020a038086166000908152600260209081526040808320339094168352929052208054849003905560019150509392505050565b60065460ff1690565b600160a060020a0333166000908152600160205260408120548290101561050f57600080fd5b81151561051b57600080fd5b600160a060020a03331660008181526001602052604090819020805485900390556003805485900390557fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59084905190815260200160405180910390a2506001919050565b600160a060020a031660009081526001602052604090205490565b600054600160a060020a031681565b6105b26107eb565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103715780601f1061034657610100808354040283529160200191610371565b60006040604436101561062c57fe5b6106373385856106f3565b506001949350505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60005433600160a060020a0390811691161461068857600080fd5b600054600160a060020a0380831691167f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a038316151561070a57600080fd5b600160a060020a0384166000908152600160205260409020548290101561073057600080fd5b600160a060020a038316600090815260016020526040902054828101101561075757600080fd5b81151561076357600080fd5b600160a060020a03848116908416141561077c57600080fd5b600160a060020a038085166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b602060405190810160405260008152905600a165627a7a72305820ac8a52f5508b15e27d5f9656035c8bd5d30e59dbbe12dd9d49de432d5746a7510029000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000f4240000000000000000000000000000000000000000000000000000000000000000c596f75724d6f6d546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003594d540000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6060604052600436106100b95763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100be578063095ea7b31461014857806318160ddd1461017e57806323b872dd146101a3578063313ce567146101cb57806342966c68146101f457806370a082311461020a5780638da5cb5b1461022957806395d89b4114610258578063a9059cbb1461026b578063dd62ed3e1461028d578063f2fde38b146102b2575b600080fd5b34156100c957600080fd5b6100d16102d3565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561010d5780820151838201526020016100f5565b50505050905090810190601f16801561013a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561015357600080fd5b61016a600160a060020a036004351660243561037b565b604051901515815260200160405180910390f35b341561018957600080fd5b610191610453565b60405190815260200160405180910390f35b34156101ae57600080fd5b61016a600160a060020a0360043581169060243516604435610459565b34156101d657600080fd5b6101de6104e0565b60405160ff909116815260200160405180910390f35b34156101ff57600080fd5b61016a6004356104e9565b341561021557600080fd5b610191600160a060020a0360043516610580565b341561023457600080fd5b61023c61059b565b604051600160a060020a03909116815260200160405180910390f35b341561026357600080fd5b6100d16105aa565b341561027657600080fd5b61016a600160a060020a036004351660243561061d565b341561029857600080fd5b610191600160a060020a0360043581169060243516610642565b34156102bd57600080fd5b6102d1600160a060020a036004351661066d565b005b6102db6107eb565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103715780601f1061034657610100808354040283529160200191610371565b820191906000526020600020905b81548152906001019060200180831161035457829003601f168201915b5050505050905090565b60008115806103ad5750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b15156103b857600080fd5b600160a060020a033381166000908152600260209081526040808320938716835292905220548214156103ea57600080fd5b600160a060020a03338116600081815260026020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60035490565b60006060606436101561046857fe5b600160a060020a038086166000908152600260209081526040808320339094168352929052205483111561049b57600080fd5b6104a68585856106f3565b50600160a060020a038086166000908152600260209081526040808320339094168352929052208054849003905560019150509392505050565b60065460ff1690565b600160a060020a0333166000908152600160205260408120548290101561050f57600080fd5b81151561051b57600080fd5b600160a060020a03331660008181526001602052604090819020805485900390556003805485900390557fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59084905190815260200160405180910390a2506001919050565b600160a060020a031660009081526001602052604090205490565b600054600160a060020a031681565b6105b26107eb565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103715780601f1061034657610100808354040283529160200191610371565b60006040604436101561062c57fe5b6106373385856106f3565b506001949350505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60005433600160a060020a0390811691161461068857600080fd5b600054600160a060020a0380831691167f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a038316151561070a57600080fd5b600160a060020a0384166000908152600160205260409020548290101561073057600080fd5b600160a060020a038316600090815260016020526040902054828101101561075757600080fd5b81151561076357600080fd5b600160a060020a03848116908416141561077c57600080fd5b600160a060020a038085166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b602060405190810160405260008152905600a165627a7a72305820ac8a52f5508b15e27d5f9656035c8bd5d30e59dbbe12dd9d49de432d5746a7510029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000f4240000000000000000000000000000000000000000000000000000000000000000c596f75724d6f6d546f6b656e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003594d540000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : tokenName (string): YourMomToken
Arg [1] : tokenSymbol (string): YMT
Arg [2] : initialSupplyInEther (uint256): 1000000
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 00000000000000000000000000000000000000000000000000000000000f4240
Arg [3] : 000000000000000000000000000000000000000000000000000000000000000c
Arg [4] : 596f75724d6f6d546f6b656e0000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [6] : 594d540000000000000000000000000000000000000000000000000000000000
Swarm Source
bzzr://ac8a52f5508b15e27d5f9656035c8bd5d30e59dbbe12dd9d49de432d5746a751
Loading...
Loading
Loading...
Loading
[ 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.
Add Token to MetaMask (Web3)