Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 351 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 11515806 | 1893 days ago | IN | 0 ETH | 0.00277222 | ||||
| Transfer | 11515586 | 1893 days ago | IN | 0 ETH | 0.0044209 | ||||
| Transfer | 11086271 | 1959 days ago | IN | 0 ETH | 0.00046579 | ||||
| Transfer | 11085172 | 1959 days ago | IN | 0 ETH | 0.00136646 | ||||
| Transfer | 11065639 | 1962 days ago | IN | 0 ETH | 0.0027589 | ||||
| Transfer | 11021619 | 1969 days ago | IN | 0 ETH | 0.00231527 | ||||
| Transfer | 11021295 | 1969 days ago | IN | 0 ETH | 0.00417851 | ||||
| Transfer | 11021266 | 1969 days ago | IN | 0 ETH | 0.00369637 | ||||
| Transfer | 11021225 | 1969 days ago | IN | 0 ETH | 0.00568333 | ||||
| Transfer | 10165938 | 2101 days ago | IN | 0 ETH | 0.00171014 | ||||
| Transfer | 10147831 | 2104 days ago | IN | 0 ETH | 0.00248354 | ||||
| Transfer | 10139018 | 2105 days ago | IN | 0 ETH | 0.00080608 | ||||
| Transfer | 9790224 | 2159 days ago | IN | 0 ETH | 0.0004019 | ||||
| Transfer | 9722268 | 2170 days ago | IN | 0 ETH | 0.00040178 | ||||
| Transfer | 9562473 | 2194 days ago | IN | 0 ETH | 0.00008035 | ||||
| Transfer | 9448046 | 2212 days ago | IN | 0 ETH | 0.00071762 | ||||
| Transfer | 9413296 | 2217 days ago | IN | 0 ETH | 0.00027589 | ||||
| Transfer | 9032474 | 2282 days ago | IN | 0 ETH | 0.00038242 | ||||
| Transfer | 9032435 | 2282 days ago | IN | 0 ETH | 0.00022983 | ||||
| Transfer | 9032414 | 2282 days ago | IN | 0 ETH | 0.00053306 | ||||
| Transfer | 9014585 | 2285 days ago | IN | 0 ETH | 0.00025242 | ||||
| Transfer | 9014583 | 2285 days ago | IN | 0 ETH | 0.00023242 | ||||
| Transfer | 9014576 | 2285 days ago | IN | 0 ETH | 0.00023242 | ||||
| Transfer | 8987049 | 2290 days ago | IN | 0 ETH | 0.00197232 | ||||
| Transfer | 8986205 | 2290 days ago | IN | 0 ETH | 0.00053242 |
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| - | 7758772 | 2483 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
SharkCoinToken
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 2019-07-16
*/
pragma solidity 0.4.18;
// File: contracts/ownership/Ownable.sol
/**
* @title Ownable
* @dev The Ownable contract has an owner address, and provides basic authorization control
* functions, this simplifies the implementation of "user permissions".
*/
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) public onlyOwner {
require(newOwner != address(0));
OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
}
// File: contracts/math/SafeMath.sol
/**
* @title SafeMath
* @dev Math operations with safety checks that throw on error
*/
library SafeMath {
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
assert(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;
}
}
// File: contracts/token/ERC20Basic.sol
/**
* @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) public view returns (uint256);
function transfer(address to, uint256 value) public returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
}
// File: contracts/token/BasicToken.sol
/**
* @title Basic token
* @dev Basic version of StandardToken, with no allowances.
*/
contract BasicToken is ERC20Basic {
using SafeMath for uint256;
mapping(address => uint256) balances;
/**
* @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) public returns (bool) {
require(_to != address(0));
require(_value <= balances[msg.sender]);
// SafeMath.sub will throw if there is not enough balance.
balances[msg.sender] = balances[msg.sender].sub(_value);
balances[_to] = balances[_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) public view returns (uint256 balance) {
return balances[_owner];
}
}
// File: contracts/token/ERC20.sol
/**
* @title ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/20
*/
contract ERC20 is ERC20Basic {
function allowance(address owner, address spender) public view returns (uint256);
function transferFrom(address from, address to, uint256 value) public returns (bool);
function approve(address spender, uint256 value) public returns (bool);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
// File: contracts/token/StandardToken.sol
/**
* @title Standard ERC20 token
*
* @dev Implementation of the basic standard token.
* @dev https://github.com/ethereum/EIPs/issues/20
* @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
*/
contract StandardToken is ERC20, BasicToken {
mapping (address => mapping (address => uint256)) internal allowed;
/**
* @dev Transfer tokens from one address to another
* @param _from address The address which you want to send tokens from
* @param _to address The address which you want to transfer to
* @param _value uint256 the amount of tokens to be transferred
*/
function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
require(_to != address(0));
require(_value <= balances[_from]);
require(_value <= allowed[_from][msg.sender]);
balances[_from] = balances[_from].sub(_value);
balances[_to] = balances[_to].add(_value);
allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
Transfer(_from, _to, _value);
return true;
}
/**
* @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
*
* Beware that changing an allowance with this method brings the risk that someone may use both the old
* and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
* race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
* @param _spender The address which will spend the funds.
* @param _value The amount of tokens to be spent.
*/
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
/**
* @dev Function to check the amount of tokens that an owner allowed to a spender.
* @param _owner address The address which owns the funds.
* @param _spender address The address which will spend the funds.
* @return A uint256 specifying the amount of tokens still available for the spender.
*/
function allowance(address _owner, address _spender) public view returns (uint256) {
return allowed[_owner][_spender];
}
/**
* @dev Increase the amount of tokens that an owner allowed to a spender.
*
* approve should be called when allowed[_spender] == 0. To increment
* allowed value is better to use this function to avoid 2 calls (and wait until
* the first transaction is mined)
* From MonolithDAO Token.sol
* @param _spender The address which will spend the funds.
* @param _addedValue The amount of tokens to increase the allowance by.
*/
function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
/**
* @dev Decrease the amount of tokens that an owner allowed to a spender.
*
* approve should be called when allowed[_spender] == 0. To decrement
* allowed value is better to use this function to avoid 2 calls (and wait until
* the first transaction is mined)
* From MonolithDAO Token.sol
* @param _spender The address which will spend the funds.
* @param _subtractedValue The amount of tokens to decrease the allowance by.
*/
function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
uint oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
}
// File: contracts/MintableToken.sol
contract MintableToken is StandardToken, Ownable {
event Mint(address indexed to, uint256 amount);
event MintFinished();
bool public mintingFinished = false;
address public saleAgent;
modifier notLocked() {
require(msg.sender == owner || msg.sender == saleAgent || mintingFinished);
_;
}
function setSaleAgent(address newSaleAgnet) public {
require(msg.sender == saleAgent || msg.sender == owner);
saleAgent = newSaleAgnet;
}
function mint(address _to, uint256 _amount) public returns (bool) {
require(msg.sender == saleAgent && !mintingFinished);
totalSupply = totalSupply.add(_amount);
balances[_to] = balances[_to].add(_amount);
Mint(_to, _amount);
return true;
}
/**
* @dev Function to stop minting new tokens.
* @return True if the operation was successful.
*/
function finishMinting() public returns (bool) {
require((msg.sender == saleAgent || msg.sender == owner) && !mintingFinished);
mintingFinished = true;
MintFinished();
return true;
}
function transfer(address _to, uint256 _value) public notLocked returns (bool) {
return super.transfer(_to, _value);
}
function transferFrom(address from, address to, uint256 value) public notLocked returns (bool) {
return super.transferFrom(from, to, value);
}
}
// File: contracts/SharkCoinToken.sol
contract SharkCoinToken is MintableToken {
string public constant name = "SharkCoin";
string public constant symbol = "SC";
uint32 public constant decimals = 18;
}
// File: contracts/PercentRateProvider.sol
contract PercentRateProvider is Ownable {
uint public percentRate = 100;
function setPercentRate(uint newPercentRate) public onlyOwner {
percentRate = newPercentRate;
}
}
// File: contracts/CommonSale.sol
contract CommonSale is PercentRateProvider {
using SafeMath for uint;
address public wallet;
address public directMintAgent;
uint public price;
uint public start;
uint public minInvestedLimit;
SharkCoinToken public token;
uint public hardcap;
uint public invested;
modifier isUnderHardcap() {
require(invested < hardcap);
_;
}
function setHardcap(uint newHardcap) public onlyOwner {
hardcap = newHardcap;
}
modifier onlyDirectMintAgentOrOwner() {
require(directMintAgent == msg.sender || owner == msg.sender);
_;
}
modifier minInvestLimited(uint value) {
require(value >= minInvestedLimit);
_;
}
function setStart(uint newStart) public onlyOwner {
start = newStart;
}
function setMinInvestedLimit(uint newMinInvestedLimit) public onlyOwner {
minInvestedLimit = newMinInvestedLimit;
}
function setDirectMintAgent(address newDirectMintAgent) public onlyOwner {
directMintAgent = newDirectMintAgent;
}
function setWallet(address newWallet) public onlyOwner {
wallet = newWallet;
}
function setPrice(uint newPrice) public onlyOwner {
price = newPrice;
}
function setToken(address newToken) public onlyOwner {
token = SharkCoinToken(newToken);
}
function calculateTokens(uint _invested) internal returns(uint);
function mintTokensExternal(address to, uint tokens) public onlyDirectMintAgentOrOwner {
mintTokens(to, tokens);
}
function mintTokens(address to, uint tokens) internal {
token.mint(this, tokens);
token.transfer(to, tokens);
}
function endSaleDate() public view returns(uint);
function mintTokensByETHExternal(address to, uint _invested) public onlyDirectMintAgentOrOwner returns(uint) {
return mintTokensByETH(to, _invested);
}
function mintTokensByETH(address to, uint _invested) internal isUnderHardcap returns(uint) {
invested = invested.add(_invested);
uint tokens = calculateTokens(_invested);
mintTokens(to, tokens);
return tokens;
}
function fallback() internal minInvestLimited(msg.value) returns(uint) {
require(now >= start && now < endSaleDate());
wallet.transfer(msg.value);
return mintTokensByETH(msg.sender, msg.value);
}
function () public payable {
fallback();
}
}
// File: contracts/InputAddressFeature.sol
contract InputAddressFeature {
function bytesToAddress(bytes source) internal pure returns(address) {
uint result;
uint mul = 1;
for(uint i = 20; i > 0; i--) {
result += uint8(source[i-1])*mul;
mul = mul*256;
}
return address(result);
}
function getInputAddress() internal pure returns(address) {
if(msg.data.length == 20) {
return bytesToAddress(bytes(msg.data));
}
return address(0);
}
}
// File: contracts/ReferersRewardFeature.sol
contract ReferersRewardFeature is InputAddressFeature, CommonSale {
uint public refererPercent;
uint public referalsMinInvestLimit;
function setReferalsMinInvestLimit(uint newRefereralsMinInvestLimit) public onlyOwner {
referalsMinInvestLimit = newRefereralsMinInvestLimit;
}
function setRefererPercent(uint newRefererPercent) public onlyOwner {
refererPercent = newRefererPercent;
}
function fallback() internal returns(uint) {
uint tokens = super.fallback();
if(msg.value >= referalsMinInvestLimit) {
address referer = getInputAddress();
if(referer != address(0)) {
require(referer != address(token) && referer != msg.sender && referer != address(this));
mintTokens(referer, tokens.mul(refererPercent).div(percentRate));
}
}
return tokens;
}
}
// File: contracts/RetrieveTokensFeature.sol
contract RetrieveTokensFeature is Ownable {
function retrieveTokens(address to, address anotherToken) public onlyOwner {
ERC20 alienToken = ERC20(anotherToken);
alienToken.transfer(to, alienToken.balanceOf(this));
}
}
// File: contracts/ValueBonusFeature.sol
contract ValueBonusFeature is PercentRateProvider {
using SafeMath for uint;
struct ValueBonus {
uint from;
uint bonus;
}
ValueBonus[] public valueBonuses;
function addValueBonus(uint from, uint bonus) public onlyOwner {
valueBonuses.push(ValueBonus(from, bonus));
}
function getValueBonusTokens(uint tokens, uint _invested) public view returns(uint) {
uint valueBonus = getValueBonus(_invested);
if(valueBonus == 0) {
return 0;
}
return tokens.mul(valueBonus).div(percentRate);
}
function getValueBonus(uint value) public view returns(uint) {
uint bonus = 0;
for(uint i = 0; i < valueBonuses.length; i++) {
if(value >= valueBonuses[i].from) {
bonus = valueBonuses[i].bonus;
} else {
return bonus;
}
}
return bonus;
}
}
// File: contracts/SharkCoin.sol
contract SharkCoinCommonSale is ValueBonusFeature, RetrieveTokensFeature, ReferersRewardFeature {
}
// File: contracts/StagedCrowdsale.sol
contract StagedCrowdsale is Ownable {
using SafeMath for uint;
struct Milestone {
uint period;
uint bonus;
}
uint public totalPeriod;
Milestone[] public milestones;
function milestonesCount() public view returns(uint) {
return milestones.length;
}
function addMilestone(uint period, uint bonus) public onlyOwner {
require(period > 0);
milestones.push(Milestone(period, bonus));
totalPeriod = totalPeriod.add(period);
}
function removeMilestone(uint8 number) public onlyOwner {
require(number < milestones.length);
Milestone storage milestone = milestones[number];
totalPeriod = totalPeriod.sub(milestone.period);
delete milestones[number];
for (uint i = number; i < milestones.length - 1; i++) {
milestones[i] = milestones[i+1];
}
milestones.length--;
}
function changeMilestone(uint8 number, uint period, uint bonus) public onlyOwner {
require(number < milestones.length);
Milestone storage milestone = milestones[number];
totalPeriod = totalPeriod.sub(milestone.period);
milestone.period = period;
milestone.bonus = bonus;
totalPeriod = totalPeriod.add(period);
}
function insertMilestone(uint8 numberAfter, uint period, uint bonus) public onlyOwner {
require(numberAfter < milestones.length);
totalPeriod = totalPeriod.add(period);
milestones.length++;
for (uint i = milestones.length - 2; i > numberAfter; i--) {
milestones[i + 1] = milestones[i];
}
milestones[numberAfter + 1] = Milestone(period, bonus);
}
function clearMilestones() public onlyOwner {
require(milestones.length > 0);
for (uint i = 0; i < milestones.length; i++) {
delete milestones[i];
}
milestones.length -= milestones.length;
totalPeriod = 0;
}
function lastSaleDate(uint start) public view returns(uint) {
return start + totalPeriod * 1 days;
}
function currentMilestone(uint start) public view returns(uint) {
uint previousDate = start;
for(uint i=0; i < milestones.length; i++) {
if(now >= previousDate && now < previousDate + milestones[i].period * 1 days) {
return i;
}
previousDate = previousDate.add(milestones[i].period * 1 days);
}
revert();
}
}
// File: contracts/Mainsale.sol
contract Mainsale is StagedCrowdsale, SharkCoinCommonSale {
address public foundersTokensWallet;
address public marketingTokensWallet;
address public bountyTokensWallet;
uint public foundersTokensPercent;
uint public marketingTokensPercent;
uint public bountyTokensPercent;
function setFoundersTokensPercent(uint newFoundersTokensPercent) public onlyOwner {
foundersTokensPercent = newFoundersTokensPercent;
}
function setMarketingTokensPercent(uint newMarketingTokensPercent) public onlyOwner {
marketingTokensPercent = newMarketingTokensPercent;
}
function setBountyTokensPercent(uint newBountyTokensPercent) public onlyOwner {
bountyTokensPercent = newBountyTokensPercent;
}
function setFoundersTokensWallet(address newFoundersTokensWallet) public onlyOwner {
foundersTokensWallet = newFoundersTokensWallet;
}
function setMarketingTokensWallet(address newMarketingTokensWallet) public onlyOwner {
marketingTokensWallet = newMarketingTokensWallet;
}
function setBountyTokensWallet(address newBountyTokensWallet) public onlyOwner {
bountyTokensWallet = newBountyTokensWallet;
}
function calculateTokens(uint _invested) internal returns(uint) {
uint milestoneIndex = currentMilestone(start);
Milestone storage milestone = milestones[milestoneIndex];
uint tokens = _invested.mul(price).div(1 ether);
uint valueBonusTokens = getValueBonusTokens(tokens, _invested);
if(milestone.bonus > 0) {
tokens = tokens.add(tokens.mul(milestone.bonus).div(percentRate));
}
return tokens.add(valueBonusTokens);
}
function finish() public onlyOwner {
uint summaryTokensPercent = bountyTokensPercent.add(foundersTokensPercent).add(marketingTokensPercent);
uint mintedTokens = token.totalSupply();
uint allTokens = mintedTokens.mul(percentRate).div(percentRate.sub(summaryTokensPercent));
uint foundersTokens = allTokens.mul(foundersTokensPercent).div(percentRate);
uint marketingTokens = allTokens.mul(marketingTokensPercent).div(percentRate);
uint bountyTokens = allTokens.mul(bountyTokensPercent).div(percentRate);
mintTokens(foundersTokensWallet, foundersTokens);
mintTokens(marketingTokensWallet, marketingTokens);
mintTokens(bountyTokensWallet, bountyTokens);
token.finishMinting();
}
function endSaleDate() public view returns(uint) {
return lastSaleDate(start);
}
}
// File: contracts/Presale.sol
contract Presale is SharkCoinCommonSale {
Mainsale public mainsale;
uint public period;
function calculateTokens(uint _invested) internal returns(uint) {
uint tokens = _invested.mul(price).div(1 ether);
return tokens.add(getValueBonusTokens(tokens, _invested));
}
function setPeriod(uint newPeriod) public onlyOwner {
period = newPeriod;
}
function setMainsale(address newMainsale) public onlyOwner {
mainsale = Mainsale(newMainsale);
}
function finish() public onlyOwner {
token.setSaleAgent(mainsale);
}
function endSaleDate() public view returns(uint) {
return start.add(period * 1 days);
}
}
// File: contracts/Configurator.sol
contract Configurator is Ownable {
SharkCoinToken public token;
Presale public presale;
Mainsale public mainsale;
function deploy() public onlyOwner {
//owner = 0x5a4217a1caf4f0c1c8f59db1b374c88e258c9cab;
token = new SharkCoinToken();
presale = new Presale();
presale.setWallet(0xAC7f92d7073C60CdcC67b694342238bD2A0e29F1);
presale.setStart(1557705600);
presale.setPeriod(150);
presale.setPrice(160000000000000000000);
presale.setHardcap(125000000000000000000000);
token.setSaleAgent(presale);
commonConfigure(presale, token);
mainsale = new Mainsale();
mainsale.addMilestone(7, 0);
mainsale.addMilestone(7, 0);
mainsale.addMilestone(7, 0);
mainsale.addMilestone(100, 0);
mainsale.setPrice(160000000000000000000);
mainsale.setWallet(0xAC7f92d7073C60CdcC67b694342238bD2A0e29F1);
mainsale.setFoundersTokensWallet(0xFECbF90D53aA62c59a6bdA76f99f9Df0Ae3625b6);
mainsale.setMarketingTokensWallet(0xc6cbEA0af791615121dfF72F2ED7494ff683dBDD);
mainsale.setBountyTokensWallet(0xda7E67Fa9A0b2AF5a32cb8B9231F9435C16ccCac);
mainsale.setStart(1568937600);
mainsale.setHardcap(125000000000000000000000);
mainsale.setFoundersTokensPercent(10);
mainsale.setMarketingTokensPercent(13);
mainsale.setBountyTokensPercent(3);
commonConfigure(mainsale, token);
presale.setMainsale(mainsale);
token.transferOwnership(owner);
presale.transferOwnership(owner);
mainsale.transferOwnership(owner);
}
function commonConfigure(address saleAddress, address _token) internal {
SharkCoinCommonSale sale =SharkCoinCommonSale(saleAddress);
sale.addValueBonus(1000000000000000000, 1);
sale.addValueBonus(5000000000000000000, 2);
sale.addValueBonus(10000000000000000000,3);
sale.addValueBonus(40000000000000000000, 5);
sale.setReferalsMinInvestLimit(1000000000000000);
sale.setRefererPercent(2);
sale.setMinInvestedLimit(1000000000000000);
sale.setToken(_token);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"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":false,"inputs":[{"name":"newSaleAgnet","type":"address"}],"name":"setSaleAgent","outputs":[],"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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","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":false,"inputs":[],"name":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[],"name":"saleAgent","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","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"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","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":"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"}]Contract Creation Code
606060405260038054600160a860020a03191633600160a060020a0316179055610cb38061002e6000396000f3006060604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b811461010057806306fdde0314610127578063095ea7b3146101b157806314133a7c146101d357806318160ddd146101f457806323b872dd14610219578063313ce5671461024157806340c10f191461026d578063661884631461028f57806370a08231146102b15780637d64bcb4146102d05780638da5cb5b146102e357806395d89b4114610312578063a9059cbb14610325578063b1d6a2f014610347578063d73dd6231461035a578063dd62ed3e1461037c578063f2fde38b146103a1575b600080fd5b341561010b57600080fd5b6101136103c0565b604051901515815260200160405180910390f35b341561013257600080fd5b61013a6103d0565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561017657808201518382015260200161015e565b50505050905090810190601f1680156101a35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101bc57600080fd5b610113600160a060020a0360043516602435610407565b34156101de57600080fd5b6101f2600160a060020a0360043516610473565b005b34156101ff57600080fd5b6102076104d8565b60405190815260200160405180910390f35b341561022457600080fd5b610113600160a060020a03600435811690602435166044356104de565b341561024c57600080fd5b61025461053e565b60405163ffffffff909116815260200160405180910390f35b341561027857600080fd5b610113600160a060020a0360043516602435610543565b341561029a57600080fd5b610113600160a060020a0360043516602435610612565b34156102bc57600080fd5b610207600160a060020a036004351661070c565b34156102db57600080fd5b610113610727565b34156102ee57600080fd5b6102f66107cc565b604051600160a060020a03909116815260200160405180910390f35b341561031d57600080fd5b61013a6107db565b341561033057600080fd5b610113600160a060020a0360043516602435610812565b341561035257600080fd5b6102f6610870565b341561036557600080fd5b610113600160a060020a036004351660243561087f565b341561038757600080fd5b610207600160a060020a0360043581169060243516610923565b34156103ac57600080fd5b6101f2600160a060020a036004351661094e565b60035460a060020a900460ff1681565b60408051908101604052600981527f536861726b436f696e0000000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60045433600160a060020a039081169116148061049e575060035433600160a060020a039081169116145b15156104a957600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005481565b60035460009033600160a060020a039081169116148061050c575060045433600160a060020a039081169116145b80610520575060035460a060020a900460ff165b151561052b57600080fd5b6105368484846109e9565b949350505050565b601281565b60045460009033600160a060020a03908116911614801561056e575060035460a060020a900460ff16155b151561057957600080fd5b60005461058c908363ffffffff610b6b16565b6000908155600160a060020a0384168152600160205260409020546105b7908363ffffffff610b6b16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a250600192915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561066f57600160a060020a0333811660009081526002602090815260408083209388168352929052908120556106a6565b61067f818463ffffffff610b7a16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b60045460009033600160a060020a0390811691161480610755575060035433600160a060020a039081169116145b801561076b575060035460a060020a900460ff16155b151561077657600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b600354600160a060020a031681565b60408051908101604052600281527f5343000000000000000000000000000000000000000000000000000000000000602082015281565b60035460009033600160a060020a0390811691161480610840575060045433600160a060020a039081169116145b80610854575060035460a060020a900460ff165b151561085f57600080fd5b6108698383610b8c565b9392505050565b600454600160a060020a031681565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120546108b7908363ffffffff610b6b16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a0390811691161461096957600080fd5b600160a060020a038116151561097e57600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a0383161515610a0057600080fd5b600160a060020a038416600090815260016020526040902054821115610a2557600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522054821115610a5857600080fd5b600160a060020a038416600090815260016020526040902054610a81908363ffffffff610b7a16565b600160a060020a038086166000908152600160205260408082209390935590851681522054610ab6908363ffffffff610b6b16565b600160a060020a03808516600090815260016020908152604080832094909455878316825260028152838220339093168252919091522054610afe908363ffffffff610b7a16565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60008282018381101561086957fe5b600082821115610b8657fe5b50900390565b6000600160a060020a0383161515610ba357600080fd5b600160a060020a033316600090815260016020526040902054821115610bc857600080fd5b600160a060020a033316600090815260016020526040902054610bf1908363ffffffff610b7a16565b600160a060020a033381166000908152600160205260408082209390935590851681522054610c26908363ffffffff610b6b16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a3506001929150505600a165627a7a72305820f781bb64fe7c56b82b3e6ae903582ee71f9ac9cde14d58fcd392f73e2185be530029
Deployed Bytecode
0x6060604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b811461010057806306fdde0314610127578063095ea7b3146101b157806314133a7c146101d357806318160ddd146101f457806323b872dd14610219578063313ce5671461024157806340c10f191461026d578063661884631461028f57806370a08231146102b15780637d64bcb4146102d05780638da5cb5b146102e357806395d89b4114610312578063a9059cbb14610325578063b1d6a2f014610347578063d73dd6231461035a578063dd62ed3e1461037c578063f2fde38b146103a1575b600080fd5b341561010b57600080fd5b6101136103c0565b604051901515815260200160405180910390f35b341561013257600080fd5b61013a6103d0565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561017657808201518382015260200161015e565b50505050905090810190601f1680156101a35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101bc57600080fd5b610113600160a060020a0360043516602435610407565b34156101de57600080fd5b6101f2600160a060020a0360043516610473565b005b34156101ff57600080fd5b6102076104d8565b60405190815260200160405180910390f35b341561022457600080fd5b610113600160a060020a03600435811690602435166044356104de565b341561024c57600080fd5b61025461053e565b60405163ffffffff909116815260200160405180910390f35b341561027857600080fd5b610113600160a060020a0360043516602435610543565b341561029a57600080fd5b610113600160a060020a0360043516602435610612565b34156102bc57600080fd5b610207600160a060020a036004351661070c565b34156102db57600080fd5b610113610727565b34156102ee57600080fd5b6102f66107cc565b604051600160a060020a03909116815260200160405180910390f35b341561031d57600080fd5b61013a6107db565b341561033057600080fd5b610113600160a060020a0360043516602435610812565b341561035257600080fd5b6102f6610870565b341561036557600080fd5b610113600160a060020a036004351660243561087f565b341561038757600080fd5b610207600160a060020a0360043581169060243516610923565b34156103ac57600080fd5b6101f2600160a060020a036004351661094e565b60035460a060020a900460ff1681565b60408051908101604052600981527f536861726b436f696e0000000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60045433600160a060020a039081169116148061049e575060035433600160a060020a039081169116145b15156104a957600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005481565b60035460009033600160a060020a039081169116148061050c575060045433600160a060020a039081169116145b80610520575060035460a060020a900460ff165b151561052b57600080fd5b6105368484846109e9565b949350505050565b601281565b60045460009033600160a060020a03908116911614801561056e575060035460a060020a900460ff16155b151561057957600080fd5b60005461058c908363ffffffff610b6b16565b6000908155600160a060020a0384168152600160205260409020546105b7908363ffffffff610b6b16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a250600192915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561066f57600160a060020a0333811660009081526002602090815260408083209388168352929052908120556106a6565b61067f818463ffffffff610b7a16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b60045460009033600160a060020a0390811691161480610755575060035433600160a060020a039081169116145b801561076b575060035460a060020a900460ff16155b151561077657600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b600354600160a060020a031681565b60408051908101604052600281527f5343000000000000000000000000000000000000000000000000000000000000602082015281565b60035460009033600160a060020a0390811691161480610840575060045433600160a060020a039081169116145b80610854575060035460a060020a900460ff165b151561085f57600080fd5b6108698383610b8c565b9392505050565b600454600160a060020a031681565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120546108b7908363ffffffff610b6b16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a0390811691161461096957600080fd5b600160a060020a038116151561097e57600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a0383161515610a0057600080fd5b600160a060020a038416600090815260016020526040902054821115610a2557600080fd5b600160a060020a0380851660009081526002602090815260408083203390941683529290522054821115610a5857600080fd5b600160a060020a038416600090815260016020526040902054610a81908363ffffffff610b7a16565b600160a060020a038086166000908152600160205260408082209390935590851681522054610ab6908363ffffffff610b6b16565b600160a060020a03808516600090815260016020908152604080832094909455878316825260028152838220339093168252919091522054610afe908363ffffffff610b7a16565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60008282018381101561086957fe5b600082821115610b8657fe5b50900390565b6000600160a060020a0383161515610ba357600080fd5b600160a060020a033316600090815260016020526040902054821115610bc857600080fd5b600160a060020a033316600090815260016020526040902054610bf1908363ffffffff610b7a16565b600160a060020a033381166000908152600160205260408082209390935590851681522054610c26908363ffffffff610b6b16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a3506001929150505600a165627a7a72305820f781bb64fe7c56b82b3e6ae903582ee71f9ac9cde14d58fcd392f73e2185be530029
Deployed Bytecode Sourcemap
9567:181:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8285:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9615:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;71:3;;;64:6;52:2;45:3;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5847:187:0;;;;;;;;;;;;-1:-1:-1;;;;;5847:187:0;;;;;8480:150;;;;;;;;;;;;-1:-1:-1;;;;;8480:150:0;;;;;2172:26;;;;;;;;;;;;;;;;;;;;;;;;;;;9367:150;;;;;;;;;;-1:-1:-1;;;;;9367:150:0;;;;;;;;;;;;9706:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8636:268;;;;;;;;;;;;-1:-1:-1;;;;;8636:268:0;;;;;7693:407;;;;;;;;;;;;-1:-1:-1;;;;;7693:407:0;;;;;3423:109;;;;;;;;;;;;-1:-1:-1;;;;;3423:109:0;;;9024:205;;;;;;;;;;;;288:20;;;;;;;;;;;;;;;-1:-1:-1;;;;;288:20:0;;;;;;;;;;;;;;;9663:36;;;;;;;;;;;;9235:126;;;;;;;;;;;;-1:-1:-1;;;;;9235:126:0;;;;;8327:24;;;;;;;;;;;;6958:261;;;;;;;;;;;;-1:-1:-1;;;;;6958:261:0;;;;;6361:128;;;;;;;;;;-1:-1:-1;;;;;6361:128:0;;;;;;;;;;912:173;;;;;;;;;;;;-1:-1:-1;;;;;912:173:0;;;8285:35;;;-1:-1:-1;;;8285:35:0;;;;;:::o;9615:41::-;;;;;;;;;;;;;;;;;;:::o;5847:187::-;-1:-1:-1;;;;;5935:10:0;5927:19;;5914:4;5927:19;;;-1:-1:-1;5927:19:0;;;;;;;;:29;;;;;;;;;;;;;:38;;;5914:4;;5927:29;:19;5972:38;;5927;;5972;;;;;;;;;;;;;-1:-1:-1;6024:4:0;5847:187;;;;:::o;8480:150::-;8560:9;;8546:10;-1:-1:-1;;;;;8546:23:0;;;8560:9;;8546:23;;:46;;-1:-1:-1;8587:5:0;;8573:10;-1:-1:-1;;;;;8573:19:0;;;8587:5;;8573:19;8546:46;8538:55;;;;;;;;8600:9;:24;;-1:-1:-1;;8600:24:0;-1:-1:-1;;;;;8600:24:0;;;;;;;;;;8480:150::o;2172:26::-;;;;:::o;9367:150::-;8408:5;;9456:4;;8394:10;-1:-1:-1;;;;;8394:19:0;;;8408:5;;8394:19;;:46;;-1:-1:-1;8431:9:0;;8417:10;-1:-1:-1;;;;;8417:23:0;;;8431:9;;8417:23;8394:46;:65;;;-1:-1:-1;8444:15:0;;-1:-1:-1;;;8444:15:0;;;;8394:65;8386:74;;;;;;;;9476:35;9495:4;9501:2;9505:5;9476:18;:35::i;:::-;9469:42;9367:150;-1:-1:-1;;;;9367:150:0:o;9706:36::-;9740:2;9706:36;:::o;8636:268::-;8731:9;;8696:4;;8717:10;-1:-1:-1;;;;;8717:23:0;;;8731:9;;8717:23;:43;;;;-1:-1:-1;8745:15:0;;-1:-1:-1;;;8745:15:0;;;;8744:16;8717:43;8709:52;;;;;;;;8782:11;;:24;;8798:7;8782:24;:15;:24;:::i;:::-;8768:11;:38;;;-1:-1:-1;;;;;8829:13:0;;;;-1:-1:-1;8829:13:0;;;;;;:26;;8847:7;8829:17;:26::i;:::-;-1:-1:-1;;;;;8813:13:0;;;;;;-1:-1:-1;8813:13:0;;;;;;;:42;;;;:13;8862:18;;8872:7;;8862:18;;;;;;;;;;;;;-1:-1:-1;8894:4:0;8636:268;;;;:::o;7693:407::-;-1:-1:-1;;;;;7813:10:0;7805:19;;7776:4;7805:19;;;-1:-1:-1;7805:19:0;;;;;;;;:29;;;;;;;;;;;;7845:27;;;7841:168;;;-1:-1:-1;;;;;7891:10:0;7883:19;;7915:1;7883:19;;;-1:-1:-1;7883:19:0;;;;;;;;:29;;;;;;;;;;;:33;7841:168;;;7971:30;:8;7984:16;7971:30;:12;:30;:::i;:::-;-1:-1:-1;;;;;7947:10:0;7939:19;;;;;;-1:-1:-1;7939:19:0;;;;;;;;:29;;;;;;;;;:62;7841:168;-1:-1:-1;;;;;8024:10:0;8015:61;;8046:19;;;;-1:-1:-1;8046:19:0;;;;;;;;8015:61;;;8046:29;;;;;;;;;;;;8015:61;;;;;;;;;;;;;;;-1:-1:-1;8090:4:0;;7693:407;-1:-1:-1;;;7693:407:0:o;3423:109::-;-1:-1:-1;;;;;3510:16:0;3479:15;3510:16;;;-1:-1:-1;3510:16:0;;;;;;;3423:109::o;9024:205::-;9101:9;;9065:4;;9087:10;-1:-1:-1;;;;;9087:23:0;;;9101:9;;9087:23;;:46;;-1:-1:-1;9128:5:0;;9114:10;-1:-1:-1;;;;;9114:19:0;;;9128:5;;9114:19;9087:46;9086:68;;;;-1:-1:-1;9139:15:0;;-1:-1:-1;;;9139:15:0;;;;9138:16;9086:68;9078:77;;;;;;;;9162:15;:22;;-1:-1:-1;;9162:22:0;-1:-1:-1;;;9162:22:0;;;9191:14;;;;;;;;;;-1:-1:-1;9219:4:0;9024:205;:::o;288:20::-;;;-1:-1:-1;;;;;288:20:0;;:::o;9663:36::-;;;;;;;;;;;;;;;;;;:::o;9235:126::-;8408:5;;9308:4;;8394:10;-1:-1:-1;;;;;8394:19:0;;;8408:5;;8394:19;;:46;;-1:-1:-1;8431:9:0;;8417:10;-1:-1:-1;;;;;8417:23:0;;;8431:9;;8417:23;8394:46;:65;;;-1:-1:-1;8444:15:0;;-1:-1:-1;;;8444:15:0;;;;8394:65;8386:74;;;;;;;;9328:27;9343:3;9348:6;9328:14;:27::i;:::-;9321:34;9235:126;-1:-1:-1;;;9235:126:0:o;8327:24::-;;;-1:-1:-1;;;;;8327:24:0;;:::o;6958:261::-;-1:-1:-1;;;;;7089:10:0;7081:19;;7036:4;7081:19;;;-1:-1:-1;7081:19:0;;;;;;;;:29;;;;;;;;;;;;:46;;7115:11;7081:33;:46::i;:::-;-1:-1:-1;;;;;7057:10:0;7049:19;;;;;;-1:-1:-1;7049:19:0;;;;;;;;:29;;;;;;;;;;;;;;:78;;;:29;;:19;;7134:61;;7049:78;7134:61;;;;;;;;;;;;;-1:-1:-1;7209:4:0;6958:261;;;;:::o;6361:128::-;-1:-1:-1;;;;;6458:15:0;;;6435:7;6458:15;;;-1:-1:-1;6458:15:0;;;;;;;;:25;;;;;;;;;;;;;6361:128::o;912:173::-;723:5;;709:10;-1:-1:-1;;;;;709:19:0;;;723:5;;709:19;701:28;;;;;;-1:-1:-1;;;;;989:22:0;;;;981:31;;;;;;1040:5;;-1:-1:-1;;;;;1019:37:0;;;;1040:5;1019:37;;;;;;;;;;1063:5;:16;;-1:-1:-1;;1063:16:0;-1:-1:-1;;;;;1063:16:0;;;;;;;;;;912:173::o;4763:449::-;4845:4;-1:-1:-1;;;;;4866:17:0;;;;4858:26;;;;;;-1:-1:-1;;;;;4909:15:0;;;;;;-1:-1:-1;4909:15:0;;;;;;4899:25;;;4891:34;;;;;;-1:-1:-1;;;;;4950:14:0;;;;;;;-1:-1:-1;4950:14:0;;;;;;;;4965:10;4950:26;;;;;;;;;;4940:36;;;4932:45;;;;;;-1:-1:-1;;;;;5004:15:0;;;;;;-1:-1:-1;5004:15:0;;;;;;:27;;5024:6;5004:19;:27::i;:::-;-1:-1:-1;;;;;4986:15:0;;;;;;;-1:-1:-1;4986:15:0;;;;;;:45;;;;5054:13;;;;;;;:25;;5072:6;5054:17;:25::i;:::-;-1:-1:-1;;;;;5038:13:0;;;;;;;-1:-1:-1;5038:13:0;;;;;;;;:41;;;;5115:14;;;;;-1:-1:-1;5115:14:0;;;;;5130:10;5115:26;;;;;;;;;;;:38;;5146:6;5115:30;:38::i;:::-;-1:-1:-1;;;;;5086:14:0;;;;;;;-1:-1:-1;5086:14:0;;;;;;;;5101:10;5086:26;;;;;;;;;;;:67;;;;5160:28;;;;;;5181:6;;5160:28;;;;;;;;;;;;;-1:-1:-1;5202:4:0;4763:449;;;;;:::o;1831:133::-;1889:7;1917:5;;;1936:6;;;;1929:14;;;1712:113;1770:7;1793:6;;;;1786:14;;;;-1:-1:-1;1814:5:0;;;1712:113::o;2826:388::-;2889:4;-1:-1:-1;;;;;2910:17:0;;;;2902:26;;;;;;2962:10;-1:-1:-1;;;;;2953:20:0;;;;;-1:-1:-1;2953:20:0;;;;;;2943:30;;;2935:39;;;;;;3079:10;-1:-1:-1;;;;;3070:20:0;;;;;-1:-1:-1;3070:20:0;;;;;;:32;;3095:6;3070:24;:32::i;:::-;-1:-1:-1;;;;;3056:10:0;3047:20;;;;;;-1:-1:-1;3047:20:0;;;;;;:55;;;;3125:13;;;;;;;:25;;3143:6;3125:17;:25::i;:::-;-1:-1:-1;;;;;3109:13:0;;;;;;;-1:-1:-1;3109:13:0;;;;;;;:41;;;;:13;3166:10;3157:33;;;;;;3183:6;;3157:33;;;;;;;;;;;;;-1:-1:-1;3204:4:0;2826:388;;;;:::o
Swarm Source
bzzr://f781bb64fe7c56b82b3e6ae903582ee71f9ac9cde14d58fcd392f73e2185be53
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 ]
[ 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.