Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Transfer | 4848351 | 2986 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
EtheeraToken
Compiler Version
v0.4.19+commit.c4cbbb05
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2018-01-03
*/
/**
* Developer Team:
* Hira Siddiqui
* connect on: https://www.linkedin.com/in/hira-siddiqui-96b60a74/
*
* Mujtaba Idrees
* connect on: https://www.linkedin.com/in/mujtabaidrees94/
**/
pragma solidity ^0.4.11;
/**
* @title Crowdsale
* @dev Crowdsale is a base contract for managing a token crowdsale.
* Crowdsales have a start and end timestamps, where investors can make
* token purchases and the crowdsale will assign them tokens based
* on a token per ETH rate. Funds collected are forwarded to a wallet
* as they arrive.
*/
library SafeMath {
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a * b;
assert(a == 0 || c / a == b);
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
assert(b > 0); // Solidity automatically throws when dividing by 0
uint256 c = a / b;
assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
assert(b <= a);
return a - b;
}
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
assert(c >= a);
return c;
}
}
contract Ownable {
address public owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev The Ownable constructor sets the original `owner` of the contract to the sender
* account.
*/
function Ownable() public {
owner = msg.sender;
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
require(msg.sender == owner);
_;
}
/**
* @dev Allows the current owner to transfer control of the contract to a newOwner.
* @param newOwner The address to transfer ownership to.
*/
function transferOwnership(address newOwner) onlyOwner public {
require(newOwner != address(0));
OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
}
/**
* @title ERC20Basic
* @dev Simpler version of ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/179
*/
contract ERC20Basic {
uint256 public totalSupply;
function balanceOf(address who) constant internal returns (uint256);
function transfer(address to, uint256 value) internal returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
}
/**
* @title Basic token
* @dev Basic version of StandardToken, with no allowances.
*/
contract BasicToken is ERC20Basic {
using SafeMath for uint256;
mapping(address => uint256) tokenBalances;
/**
* @dev transfer token for a specified address
* @param _to The address to transfer to.
* @param _value The amount to be transferred.
*/
function transfer(address _to, uint256 _value) internal returns (bool) {
require(tokenBalances[msg.sender]>=_value);
tokenBalances[msg.sender] = tokenBalances[msg.sender].sub(_value);
tokenBalances[_to] = tokenBalances[_to].add(_value);
Transfer(msg.sender, _to, _value);
return true;
}
/**
* @dev Gets the balance of the specified address.
* @param _owner The address to query the the balance of.
* @return An uint256 representing the amount owned by the passed address.
*/
function balanceOf(address _owner) constant internal returns (uint256 balance) {
return tokenBalances[_owner];
}
}
contract EtheeraToken is BasicToken,Ownable {
using SafeMath for uint256;
//TODO: Change the name and the symbol
string public constant name = "ETHEERA";
string public constant symbol = "ETA";
uint256 public constant decimals = 18;
uint256 public constant INITIAL_SUPPLY = 300000000;
event Debug(string message, address addr, uint256 number);
/**
* @dev Contructor that gives msg.sender all of existing tokens.
*/
function EtheeraToken(address wallet) public {
owner = msg.sender;
totalSupply = INITIAL_SUPPLY;
tokenBalances[wallet] = INITIAL_SUPPLY * 10 ** 18; //Since we divided the token into 10^18 parts
}
function mint(address wallet, address buyer, uint256 tokenAmount) public onlyOwner {
require(tokenBalances[wallet] >= tokenAmount); // checks if it has enough to sell
tokenBalances[buyer] = tokenBalances[buyer].add(tokenAmount); // adds the amount to buyer's balance
tokenBalances[wallet] = tokenBalances[wallet].sub(tokenAmount); // subtracts amount from seller's balance
Transfer(wallet, buyer, tokenAmount);
}
function showMyTokenBalance(address addr) public view onlyOwner returns (uint tokenBalance) {
tokenBalance = tokenBalances[addr];
return tokenBalance;
}
function showMyEtherBalance(address addr) public view onlyOwner returns (uint etherBalance) {
etherBalance = addr.balance;
}
}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":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","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":"addr","type":"address"}],"name":"showMyTokenBalance","outputs":[{"name":"tokenBalance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"showMyEtherBalance","outputs":[{"name":"etherBalance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"wallet","type":"address"},{"name":"buyer","type":"address"},{"name":"tokenAmount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"wallet","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"message","type":"string"},{"indexed":false,"name":"addr","type":"address"},{"indexed":false,"name":"number","type":"uint256"}],"name":"Debug","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"}]Contract Creation Code
6060604052341561000f57600080fd5b6040516020806105a38339810160405280805160028054600160a060020a03338116600160a060020a031992831681179092169091179091556311e1a3006000908155911681526001602052604090206af8277896582678ac000000905550506105258061007e6000396000f3006060604052600436106100a35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100a857806318160ddd146101325780632ff2e9dc14610157578063313ce5671461016a5780638da5cb5b1461017d5780638fe47625146101ac57806395d89b41146101cb578063bd51654b146101de578063c6c3bbe6146101fd578063f2fde38b14610227575b600080fd5b34156100b357600080fd5b6100bb610246565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100f75780820151838201526020016100df565b50505050905090810190601f1680156101245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561013d57600080fd5b61014561027d565b60405190815260200160405180910390f35b341561016257600080fd5b610145610283565b341561017557600080fd5b61014561028b565b341561018857600080fd5b610190610290565b604051600160a060020a03909116815260200160405180910390f35b34156101b757600080fd5b610145600160a060020a036004351661029f565b34156101d657600080fd5b6100bb6102d9565b34156101e957600080fd5b610145600160a060020a0360043516610310565b341561020857600080fd5b610225600160a060020a036004358116906024351660443561033c565b005b341561023257600080fd5b610225600160a060020a0360043516610436565b60408051908101604052600781527f4554484545524100000000000000000000000000000000000000000000000000602082015281565b60005481565b6311e1a30081565b601281565b600254600160a060020a031681565b60025460009033600160a060020a039081169116146102bd57600080fd5b50600160a060020a031660009081526001602052604090205490565b60408051908101604052600381527f4554410000000000000000000000000000000000000000000000000000000000602082015281565b60025460009033600160a060020a0390811691161461032e57600080fd5b50600160a060020a03163190565b60025433600160a060020a0390811691161461035757600080fd5b600160a060020a0383166000908152600160205260409020548190101561037d57600080fd5b600160a060020a0382166000908152600160205260409020546103a6908263ffffffff6104d116565b600160a060020a0380841660009081526001602052604080822093909355908516815220546103db908263ffffffff6104e716565b600160a060020a038085166000818152600160205260409081902093909355908416917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a3505050565b60025433600160a060020a0390811691161461045157600080fd5b600160a060020a038116151561046657600080fd5b600254600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000828201838110156104e057fe5b9392505050565b6000828211156104f357fe5b509003905600a165627a7a72305820b64d97dd4e7b82a3b59ecba2bb476f310bc8cba54903addccefff874c796d8860029000000000000000000000000de54d403b16a3ebc9ed7860e3af94417889e19d7
Deployed Bytecode
0x6060604052600436106100a35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100a857806318160ddd146101325780632ff2e9dc14610157578063313ce5671461016a5780638da5cb5b1461017d5780638fe47625146101ac57806395d89b41146101cb578063bd51654b146101de578063c6c3bbe6146101fd578063f2fde38b14610227575b600080fd5b34156100b357600080fd5b6100bb610246565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100f75780820151838201526020016100df565b50505050905090810190601f1680156101245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561013d57600080fd5b61014561027d565b60405190815260200160405180910390f35b341561016257600080fd5b610145610283565b341561017557600080fd5b61014561028b565b341561018857600080fd5b610190610290565b604051600160a060020a03909116815260200160405180910390f35b34156101b757600080fd5b610145600160a060020a036004351661029f565b34156101d657600080fd5b6100bb6102d9565b34156101e957600080fd5b610145600160a060020a0360043516610310565b341561020857600080fd5b610225600160a060020a036004358116906024351660443561033c565b005b341561023257600080fd5b610225600160a060020a0360043516610436565b60408051908101604052600781527f4554484545524100000000000000000000000000000000000000000000000000602082015281565b60005481565b6311e1a30081565b601281565b600254600160a060020a031681565b60025460009033600160a060020a039081169116146102bd57600080fd5b50600160a060020a031660009081526001602052604090205490565b60408051908101604052600381527f4554410000000000000000000000000000000000000000000000000000000000602082015281565b60025460009033600160a060020a0390811691161461032e57600080fd5b50600160a060020a03163190565b60025433600160a060020a0390811691161461035757600080fd5b600160a060020a0383166000908152600160205260409020548190101561037d57600080fd5b600160a060020a0382166000908152600160205260409020546103a6908263ffffffff6104d116565b600160a060020a0380841660009081526001602052604080822093909355908516815220546103db908263ffffffff6104e716565b600160a060020a038085166000818152600160205260409081902093909355908416917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a3505050565b60025433600160a060020a0390811691161461045157600080fd5b600160a060020a038116151561046657600080fd5b600254600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000828201838110156104e057fe5b9392505050565b6000828211156104f357fe5b509003905600a165627a7a72305820b64d97dd4e7b82a3b59ecba2bb476f310bc8cba54903addccefff874c796d8860029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000de54d403b16a3ebc9ed7860e3af94417889e19d7
-----Decoded View---------------
Arg [0] : wallet (address): 0xde54d403B16a3EBC9Ed7860E3AF94417889E19D7
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000de54d403b16a3ebc9ed7860e3af94417889e19d7
Swarm Source
bzzr://b64d97dd4e7b82a3b59ecba2bb476f310bc8cba54903addccefff874c796d886
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.