Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
IGSBCToken
Compiler Version
v0.4.21+commit.dfe3193c
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2019-03-08
*/
pragma solidity ^0.4.21;
contract Token {
/// @return total amount of tokens
function totalSupply() public constant returns (uint supply);
/// @param _owner The address from which the balance will be retrieved
/// @return The balance
function balanceOf(address _owner) public constant returns (uint balance);
/// @notice send `_value` token to `_to` from `msg.sender`
/// @param _to The address of the recipient
/// @param _value The amount of token to be transferred
/// @return Whether the transfer was successful or not
function transfer(address _to, uint _value) public returns (bool success);
/// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
/// @param _from The address of the sender
/// @param _to The address of the recipient
/// @param _value The amount of token to be transferred
/// @return Whether the transfer was successful or not
function transferFrom(address _from, address _to, uint _value) public returns (bool success);
/// @notice `msg.sender` approves `_addr` to spend `_value` tokens
/// @param _spender The address of the account able to transfer the tokens
/// @param _value The amount of wei to be approved for transfer
/// @return Whether the approval was successful or not
function approve(address _spender, uint _value) public returns (bool success);
/// @param _owner The address of the account owning tokens
/// @param _spender The address of the account able to transfer the tokens
/// @return Amount of remaining tokens allowed to spent
function allowance(address _owner, address _spender) public constant returns (uint remaining);
event Transfer(address indexed _from, address indexed _to, uint _value);
event Approval(address indexed _owner, address indexed _spender, uint _value);
}
contract RegularToken is Token {
function transfer(address _to, uint _value) public returns (bool) {
//Default assumes totalSupply can't be over max (2^256 - 1).
if (balances[msg.sender] >= _value && balances[_to] + _value >= balances[_to]) {
balances[msg.sender] -= _value;
balances[_to] += _value;
emit Transfer(msg.sender, _to, _value);
return true;
} else { return false; }
}
function transferFrom(address _from, address _to, uint _value) public returns (bool) {
if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value >= balances[_to]) {
balances[_to] += _value;
balances[_from] -= _value;
allowed[_from][msg.sender] -= _value;
emit Transfer(_from, _to, _value);
return true;
} else { return false; }
}
function balanceOf(address _owner) public constant returns (uint) {
return balances[_owner];
}
function approve(address _spender, uint _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
}
function allowance(address _owner, address _spender) public constant returns (uint) {
return allowed[_owner][_spender];
}
mapping (address => uint) balances;
mapping (address => mapping (address => uint)) allowed;
uint public totalSupply;
}
contract UnboundedRegularToken is RegularToken {
uint constant MAX_UINT = 2**256 - 1;
/// @dev ERC20 transferFrom, modified such that an allowance of MAX_UINT represents an unlimited amount.
/// @param _from Address to transfer from.
/// @param _to Address to transfer to.
/// @param _value Amount to transfer.
/// @return Success of transfer.
function transferFrom(address _from, address _to, uint _value)
public returns (bool)
{
uint allowance = allowed[_from][msg.sender];
if (balances[_from] >= _value
&& allowance >= _value
&& balances[_to] + _value >= balances[_to]
) {
balances[_to] += _value;
balances[_from] -= _value;
if (allowance < MAX_UINT) {
allowed[_from][msg.sender] -= _value;
}
emit Transfer(_from, _to, _value);
return true;
} else {
return false;
}
}
}
contract ApprovalReceiver {
function receiveApproval(address _from, uint _value, address _tokenContract, bytes _extraData) public;
}
contract TransferReceiver {
function receiveTransfer(address _from, uint _value, address _tokenContract, bytes _extraData) public;
}
contract IGSBCToken is UnboundedRegularToken {
uint public totalSupply = 50*10**16;
uint8 constant public decimals = 8;
string constant public name = "Bit diamond";
string constant public symbol = "IGSBC";
address public owner;
mapping (address => uint) public freezes;
/* This notifies clients about the amount burnt */
event Burn(address indexed from, uint value);
/* This notifies clients about the amount frozen */
event Freeze(address indexed from, uint value);
/* This notifies clients about the amount unfrozen */
event Unfreeze(address indexed from, uint value);
function IGSBCToken() public {
balances[msg.sender] = totalSupply;
owner = msg.sender;
emit Transfer(address(0), msg.sender, totalSupply);
}
function totalSupply() public constant returns (uint){
return totalSupply;
}
function burn(uint _value) public returns (bool success) {
if (balances[msg.sender] >= _value && totalSupply - _value <= totalSupply){
balances[msg.sender] -= _value; // Subtract from the sender
totalSupply -= _value;
emit Burn(msg.sender, _value);
return true;
}else {
return false;
}
}
function freeze(uint _value) public returns (bool success) {
if (balances[msg.sender] >= _value &&
freezes[msg.sender] + _value >= freezes[msg.sender]){
balances[msg.sender] -= _value; // Subtract from the sender
freezes[msg.sender] += _value; // Updates totalSupply
emit Freeze(msg.sender, _value);
return true;
}else {
return false;
}
}
function unfreeze(uint _value) public returns (bool success) {
if (freezes[msg.sender] >= _value &&
balances[msg.sender] + _value >= balances[msg.sender]){
freezes[msg.sender] -= _value;
balances[msg.sender] += _value;
emit Unfreeze(msg.sender, _value);
return true;
}else {
return false;
}
}
function transferAndCall(address _to, uint _value, bytes _extraData) public returns (bool success) {
if(transfer(_to,_value)){
TransferReceiver(_to).receiveTransfer(msg.sender, _value, this, _extraData);
return true;
}
else {
return false;
}
}
function approveAndCall(address _spender, uint _value, bytes _extraData) public returns (bool success) {
if(approve(_spender,_value)){
ApprovalReceiver(_spender).receiveApproval(msg.sender, _value, this, _extraData) ;
return true;
}
else {
return false;
}
}
// transfer balance to owner
function withdrawEther(uint amount) public {
if(msg.sender == owner){
owner.transfer(amount);
}
}
// can accept ether
function() public payable {
}
}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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"freezes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":"","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":"amount","type":"uint256"}],"name":"withdrawEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"transferAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"unfreeze","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","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":"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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"freeze","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":"","type":"uint256"}],"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":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Freeze","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Unfreeze","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"}]Contract Creation Code
60606040526706f05b59d3b20000600355341561001b57600080fd5b600354600160a060020a03331660008181526020819052604080822084905560048054600160a060020a03191684179055919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91905190815260200160405180910390a3610b71806100916000396000f3006060604052600436106100d75763ffffffff60e060020a60003504166306fdde0381146100d9578063095ea7b314610163578063120426821461019957806318160ddd146101ca57806323b872dd146101dd578063313ce567146102055780633bed33ce1461022e5780634000aea01461024457806342966c68146102a95780636623fc46146102bf57806370a08231146102d55780638da5cb5b146102f457806395d89b4114610323578063a9059cbb14610336578063cae9ca5114610358578063d7a78db8146103bd578063dd62ed3e146103d3575b005b34156100e457600080fd5b6100ec6103f8565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610128578082015183820152602001610110565b50505050905090810190601f1680156101555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561016e57600080fd5b610185600160a060020a036004351660243561042f565b604051901515815260200160405180910390f35b34156101a457600080fd5b6101b8600160a060020a0360043516610498565b60405190815260200160405180910390f35b34156101d557600080fd5b6101b86104aa565b34156101e857600080fd5b610185600160a060020a03600435811690602435166044356104b0565b341561021057600080fd5b6102186105e0565b60405160ff909116815260200160405180910390f35b341561023957600080fd5b6100d76004356105e5565b341561024f57600080fd5b61018560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063295505050505050565b34156102b457600080fd5b61018560043561074d565b34156102ca57600080fd5b6101856004356107ed565b34156102e057600080fd5b6101b8600160a060020a03600435166108a0565b34156102ff57600080fd5b6103076108bb565b604051600160a060020a03909116815260200160405180910390f35b341561032e57600080fd5b6100ec6108ca565b341561034157600080fd5b610185600160a060020a0360043516602435610901565b341561036357600080fd5b61018560048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c095505050505050565b34156103c857600080fd5b610185600435610a68565b34156103de57600080fd5b6101b8600160a060020a0360043581169060243516610b1a565b60408051908101604052600b81527f426974206469616d6f6e64000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260016020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a392915050565b60056020526000908152604090205481565b60035490565b600160a060020a03808416600081815260016020908152604080832033909516835293815283822054928252819052918220548390108015906104f35750828110155b80156105195750600160a060020a03841660009081526020819052604090205483810110155b156105d357600160a060020a038085166000908152602081905260408082208054870190559187168152208054849003905560001981101561058357600160a060020a03808616600090815260016020908152604080832033909416835292905220805484900390555b83600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405190815260200160405180910390a3600191506105d8565b600091505b509392505050565b600881565b60045433600160a060020a039081169116141561062f57600454600160a060020a031681156108fc0282604051600060405180830381858888f19350505050151561062f57600080fd5b50565b600061063e8484610901565b156107425783600160a060020a031663b8b7b899338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156106db5780820151838201526020016106c3565b50505050905090810190601f1680156107085780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561072957600080fd5b5af1151561073657600080fd5b50505060019050610746565b5060005b9392505050565b600160a060020a03331660009081526020819052604081205482901080159061077a575060035482810311155b156107e457600160a060020a03331660008181526020819052604090819020805485900390556003805485900390557fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59084905190815260200160405180910390a25060016107e8565b5060005b919050565b600160a060020a0333166000908152600560205260408120548290108015906108305750600160a060020a03331660009081526020819052604090205482810110155b156107e457600160a060020a03331660008181526005602090815260408083208054879003905590829052908190208054850190557f2cfce4af01bcb9d6cf6c84ee1b7c491100b8695368264146a94d71e10a63083f9084905190815260200160405180910390a25060016107e8565b600160a060020a031660009081526020819052604090205490565b600454600160a060020a031681565b60408051908101604052600581527f4947534243000000000000000000000000000000000000000000000000000000602082015281565b600160a060020a0333166000908152602081905260408120548290108015906109445750600160a060020a03831660009081526020819052604090205482810110155b156109b657600160a060020a033381166000818152602081905260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060016109ba565b5060005b92915050565b60006109cc848461042f565b156107425783600160a060020a0316638f4ffcb1338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a031681526020018060200182810382528381815181526020019150805190602001908083836000838110156106db5780820151838201526020016106c3565b600160a060020a033316600090815260208190526040812054829010801590610aab5750600160a060020a03331660009081526005602052604090205482810110155b156107e457600160a060020a033316600081815260208181526040808320805487900390556005909152908190208054850190557ff97a274face0b5517365ad396b1fdba6f68bd3135ef603e44272adba3af5a1e09084905190815260200160405180910390a25060016107e8565b600160a060020a039182166000908152600160209081526040808320939094168252919091522054905600a165627a7a72305820d8e9df5f01b7c262b871b7defae1923bafea71c3b972cb5d5bc06ec58db037d00029
Deployed Bytecode
0x6060604052600436106100d75763ffffffff60e060020a60003504166306fdde0381146100d9578063095ea7b314610163578063120426821461019957806318160ddd146101ca57806323b872dd146101dd578063313ce567146102055780633bed33ce1461022e5780634000aea01461024457806342966c68146102a95780636623fc46146102bf57806370a08231146102d55780638da5cb5b146102f457806395d89b4114610323578063a9059cbb14610336578063cae9ca5114610358578063d7a78db8146103bd578063dd62ed3e146103d3575b005b34156100e457600080fd5b6100ec6103f8565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610128578082015183820152602001610110565b50505050905090810190601f1680156101555780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561016e57600080fd5b610185600160a060020a036004351660243561042f565b604051901515815260200160405180910390f35b34156101a457600080fd5b6101b8600160a060020a0360043516610498565b60405190815260200160405180910390f35b34156101d557600080fd5b6101b86104aa565b34156101e857600080fd5b610185600160a060020a03600435811690602435166044356104b0565b341561021057600080fd5b6102186105e0565b60405160ff909116815260200160405180910390f35b341561023957600080fd5b6100d76004356105e5565b341561024f57600080fd5b61018560048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061063295505050505050565b34156102b457600080fd5b61018560043561074d565b34156102ca57600080fd5b6101856004356107ed565b34156102e057600080fd5b6101b8600160a060020a03600435166108a0565b34156102ff57600080fd5b6103076108bb565b604051600160a060020a03909116815260200160405180910390f35b341561032e57600080fd5b6100ec6108ca565b341561034157600080fd5b610185600160a060020a0360043516602435610901565b341561036357600080fd5b61018560048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506109c095505050505050565b34156103c857600080fd5b610185600435610a68565b34156103de57600080fd5b6101b8600160a060020a0360043581169060243516610b1a565b60408051908101604052600b81527f426974206469616d6f6e64000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260016020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a392915050565b60056020526000908152604090205481565b60035490565b600160a060020a03808416600081815260016020908152604080832033909516835293815283822054928252819052918220548390108015906104f35750828110155b80156105195750600160a060020a03841660009081526020819052604090205483810110155b156105d357600160a060020a038085166000908152602081905260408082208054870190559187168152208054849003905560001981101561058357600160a060020a03808616600090815260016020908152604080832033909416835292905220805484900390555b83600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405190815260200160405180910390a3600191506105d8565b600091505b509392505050565b600881565b60045433600160a060020a039081169116141561062f57600454600160a060020a031681156108fc0282604051600060405180830381858888f19350505050151561062f57600080fd5b50565b600061063e8484610901565b156107425783600160a060020a031663b8b7b899338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156106db5780820151838201526020016106c3565b50505050905090810190601f1680156107085780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b151561072957600080fd5b5af1151561073657600080fd5b50505060019050610746565b5060005b9392505050565b600160a060020a03331660009081526020819052604081205482901080159061077a575060035482810311155b156107e457600160a060020a03331660008181526020819052604090819020805485900390556003805485900390557fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59084905190815260200160405180910390a25060016107e8565b5060005b919050565b600160a060020a0333166000908152600560205260408120548290108015906108305750600160a060020a03331660009081526020819052604090205482810110155b156107e457600160a060020a03331660008181526005602090815260408083208054879003905590829052908190208054850190557f2cfce4af01bcb9d6cf6c84ee1b7c491100b8695368264146a94d71e10a63083f9084905190815260200160405180910390a25060016107e8565b600160a060020a031660009081526020819052604090205490565b600454600160a060020a031681565b60408051908101604052600581527f4947534243000000000000000000000000000000000000000000000000000000602082015281565b600160a060020a0333166000908152602081905260408120548290108015906109445750600160a060020a03831660009081526020819052604090205482810110155b156109b657600160a060020a033381166000818152602081905260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060016109ba565b5060005b92915050565b60006109cc848461042f565b156107425783600160a060020a0316638f4ffcb1338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a031681526020018060200182810382528381815181526020019150805190602001908083836000838110156106db5780820151838201526020016106c3565b600160a060020a033316600090815260208190526040812054829010801590610aab5750600160a060020a03331660009081526005602052604090205482810110155b156107e457600160a060020a033316600081815260208181526040808320805487900390556005909152908190208054850190557ff97a274face0b5517365ad396b1fdba6f68bd3135ef603e44272adba3af5a1e09084905190815260200160405180910390a25060016107e8565b600160a060020a039182166000908152600160209081526040808320939094168252919091522054905600a165627a7a72305820d8e9df5f01b7c262b871b7defae1923bafea71c3b972cb5d5bc06ec58db037d00029
Swarm Source
bzzr://d8e9df5f01b7c262b871b7defae1923bafea71c3b972cb5d5bc06ec58db037d0
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 32 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.