Overview
Max Total Supply
363,967,645 XDCE
Holders
6,251 (0.00%)
Transfers
-
0
Market
Price
$0.03 @ 0.000015 ETH (+0.23%)
Onchain Market Cap
-
Circulating Supply Market Cap
$632,435,633.00
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Name:
Coin
Compiler Version
v0.4.19+commit.c4cbbb05
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2018-01-26
*/
pragma solidity ^0.4.4;
/**
* @title ERC20 interface
* see https://github.com/ethereum/EIPs/issues/20
*/
contract ERC20 {
uint public totalSupply;
uint public decimals;
function balanceOf(address who) constant returns (uint);
function allowance(address owner, address spender) constant returns (uint);
function transfer(address to, uint value) returns (bool ok);
function transferFrom(address from, address to, uint value) returns (bool ok);
function approve(address spender, uint value) returns (bool ok);
event Transfer(address indexed from, address indexed to, uint value);
event Approval(address indexed owner, address indexed spender, uint value);
}
/**
* @title Ownable
* The Ownable contract has an owner address, and provides basic authorization control
* functions, this simplifies the implementation of "user permissions".
*/
contract Ownable {
/* Current Owner */
address public owner;
/* New owner which can be set in future */
address public newOwner;
/* event to indicate finally ownership has been succesfully transferred and accepted */
event OwnershipTransferred(address indexed _from, address indexed _to);
/**
* The Ownable constructor sets the original `owner` of the contract to the sender account.
*/
function Ownable() {
owner = msg.sender;
}
/**
* Throws if called by any account other than the owner.
*/
modifier onlyOwner {
require(msg.sender == owner);
_;
}
/**
* 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 {
require(_newOwner != address(0));
newOwner = _newOwner;
}
/**
* Allows the new owner toaccept ownership
*/
function acceptOwnership() {
require(msg.sender == newOwner);
OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
}
/*
*This library is used to do mathematics safely
*/
contract SafeMathLib {
function safeMul(uint a, uint b) returns (uint) {
uint c = a * b;
assert(a == 0 || c / a == b);
return c;
}
function safeSub(uint a, uint b) returns (uint) {
assert(b <= a);
return a - b;
}
function safeAdd(uint a, uint b) returns (uint) {
uint c = a + b;
assert(c>=a);
return c;
}
}
/**
* Upgrade agent interface inspired by Lunyr.
* Taken and inspired from https://tokenmarket.net
*
* Upgrade agent transfers tokens to a new version of a token contract.
* Upgrade agent can be set on a token by the upgrade master.
*
* Steps are
* - Upgradeabletoken.upgradeMaster calls UpgradeableToken.setUpgradeAgent()
* - Individual token holders can now call UpgradeableToken.upgrade()
* -> This results to call UpgradeAgent.upgradeFrom() that issues new tokens
* -> UpgradeableToken.upgrade() reduces the original total supply based on amount of upgraded tokens
*
* Upgrade agent itself can be the token contract, or just a middle man contract doing the heavy lifting.
*/
contract UpgradeAgent {
uint public originalSupply;
/** Interface marker */
function isUpgradeAgent() public constant returns (bool) {
return true;
}
/**
* Upgrade amount of tokens to a new version.
*
* Only callable by UpgradeableToken.
*
* @param _tokenHolder Address that wants to upgrade its tokens
* @param _amount Number of tokens to upgrade. The address may consider to hold back some amount of tokens in the old version.
*/
function upgradeFrom(address _tokenHolder, uint256 _amount) external;
}
/**
* Standard ERC20 token with Short Hand Attack and approve() race condition mitigation.
*
* Based on code by FirstBlood:
* https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
*/
contract StandardToken is ERC20, SafeMathLib {
/* Actual balances of token holders */
mapping(address => uint) balances;
/* approve() allowances */
mapping (address => mapping (address => uint)) allowed;
function transfer(address _to, uint _value) returns (bool success) {
// SafMaths will automatically handle the overflow checks
balances[msg.sender] = safeSub(balances[msg.sender],_value);
balances[_to] = safeAdd(balances[_to],_value);
Transfer(msg.sender, _to, _value);
return true;
}
function transferFrom(address _from, address _to, uint _value) returns (bool success) {
uint _allowance = allowed[_from][msg.sender];
// Check is not needed because safeSub(_allowance, _value) will already throw if this condition is not met
balances[_to] = safeAdd(balances[_to],_value);
balances[_from] = safeSub(balances[_from],_value);
allowed[_from][msg.sender] = safeSub(_allowance,_value);
Transfer(_from, _to, _value);
return true;
}
function balanceOf(address _owner) constant returns (uint balance) {
return balances[_owner];
}
function approve(address _spender, uint _value) returns (bool success) {
// To change the approve amount you first have to reduce the addresses`
// allowance to zero by calling `approve(_spender, 0)` if it is not
// already 0 to mitigate the race condition described here:
// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
require(!((_value != 0) && (allowed[msg.sender][_spender] != 0)));
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
function allowance(address _owner, address _spender) constant returns (uint remaining) {
return allowed[_owner][_spender];
}
}
/**
* A token upgrade mechanism where users can opt-in amount of tokens to the next smart contract revision.
* First envisioned by Golem and Lunyr projects.
* Taken and inspired from https://tokenmarket.net
*/
contract XinfinUpgradeableToken is StandardToken {
/** Contract / person who can set the upgrade path. This can be the same as team multisig wallet, as what it is with its default value. */
address public upgradeMaster;
/** The next contract where the tokens will be migrated. */
UpgradeAgent public upgradeAgent;
/** How many tokens we have upgraded by now. */
uint256 public totalUpgraded;
/**
* Upgrade states.
*
* - NotAllowed: The child contract has not reached a condition where the upgrade can bgun
* - WaitingForAgent: Token allows upgrade, but we don't have a new agent yet
* - ReadyToUpgrade: The agent is set, but not a single token has been upgraded yet
* - Upgrading: Upgrade agent is set and the balance holders can upgrade their tokens
*
*/
enum UpgradeState {Unknown, NotAllowed, WaitingForAgent, ReadyToUpgrade, Upgrading}
/**
* Somebody has upgraded some of his tokens.
*/
event Upgrade(address indexed _from, address indexed _to, uint256 _value);
/**
* New upgrade agent available.
*/
event UpgradeAgentSet(address agent);
/**
* Do not allow construction without upgrade master set.
*/
function XinfinUpgradeableToken(address _upgradeMaster) {
upgradeMaster = _upgradeMaster;
}
/**
* Allow the token holder to upgrade some of their tokens to a new contract.
*/
function upgrade(uint256 value) public {
UpgradeState state = getUpgradeState();
require(state == UpgradeState.ReadyToUpgrade || state == UpgradeState.Upgrading);
// Validate input value.
require(value != 0);
balances[msg.sender] = safeSub(balances[msg.sender], value);
// Take tokens out from circulation
totalSupply = safeSub(totalSupply, value);
totalUpgraded = safeAdd(totalUpgraded, value);
// Upgrade agent reissues the tokens
upgradeAgent.upgradeFrom(msg.sender, value);
Upgrade(msg.sender, upgradeAgent, value);
}
/**
* Set an upgrade agent that handles
*/
function setUpgradeAgent(address agent) external {
// The token is not yet in a state that we could think upgrading
require(canUpgrade());
require(agent != 0x0);
// Only a master can designate the next agent
require(msg.sender == upgradeMaster);
// Upgrade has already begun for an agent
require(getUpgradeState() != UpgradeState.Upgrading);
upgradeAgent = UpgradeAgent(agent);
// Bad interface
require(upgradeAgent.isUpgradeAgent());
// Make sure that token supplies match in source and target
require(upgradeAgent.originalSupply() == totalSupply);
UpgradeAgentSet(upgradeAgent);
}
/**
* Get the state of the token upgrade.
*/
function getUpgradeState() public constant returns(UpgradeState) {
if(!canUpgrade()) return UpgradeState.NotAllowed;
else if(address(upgradeAgent) == 0x00) return UpgradeState.WaitingForAgent;
else if(totalUpgraded == 0) return UpgradeState.ReadyToUpgrade;
else return UpgradeState.Upgrading;
}
/**
* Change the upgrade master.
*
* This allows us to set a new owner for the upgrade mechanism.
*/
function setUpgradeMaster(address master) public {
require(master != 0x0);
require(msg.sender == upgradeMaster);
upgradeMaster = master;
}
/**
* Child contract can enable to provide the condition when the upgrade can begun.
*/
function canUpgrade() public constant returns(bool) {
return true;
}
}
/**
* Define interface for releasing the token transfer after a successful crowdsale.
* Taken and inspired from https://tokenmarket.net
*/
contract ReleasableToken is ERC20, Ownable {
/* The finalizer contract that allows unlift the transfer limits on this token */
address public releaseAgent;
/** A crowdsale contract can release us to the wild if ICO success. If false we are are in transfer lock up period.*/
bool public released = false;
/** Map of agents that are allowed to transfer tokens regardless of the lock down period. These are crowdsale contracts and possible the team multisig itself. */
mapping (address => bool) public transferAgents;
/**
* Limit token transfer until the crowdsale is over.
*
*/
modifier canTransfer(address _sender) {
if(!released) {
require(transferAgents[_sender]);
}
_;
}
/**
* Set the contract that can call release and make the token transferable.
*/
function setReleaseAgent(address addr) onlyOwner inReleaseState(false) public {
// We don't do interface check here as we might want to a normal wallet address to act as a release agent
releaseAgent = addr;
}
/**
* Owner can allow a particular address (a crowdsale contract) to transfer tokens despite the lock up period.
*/
function setTransferAgent(address addr, bool state) onlyOwner inReleaseState(false) public {
transferAgents[addr] = state;
}
/**
* One way function to release the tokens to the wild.
*
* Can be called only from the release agent that is the final ICO contract. It is only called if the crowdsale has been success (first milestone reached).
*/
function releaseTokenTransfer() public onlyReleaseAgent {
released = true;
}
/** The function can be called only before or after the tokens have been releasesd */
modifier inReleaseState(bool releaseState) {
require(releaseState == released);
_;
}
/** The function can be called only by a whitelisted release agent. */
modifier onlyReleaseAgent() {
require(msg.sender == releaseAgent);
_;
}
function transfer(address _to, uint _value) canTransfer(msg.sender) returns (bool success) {
// Call StandardToken.transfer()
return super.transfer(_to, _value);
}
function transferFrom(address _from, address _to, uint _value) canTransfer(_from) returns (bool success) {
// Call StandardToken.transferFrom()
return super.transferFrom(_from, _to, _value);
}
}
contract Coin is XinfinUpgradeableToken, ReleasableToken {
event UpdatedTokenInformation(string newName, string newSymbol);
/* name of the token */
string public name = "XinFin XDCE";
/* symbol of the token */
string public symbol = "XDCE";
/* token decimals to handle fractions */
uint public decimals = 18;
//Crowdsale running
bool public isCrowdsaleOpen=false;
/* initial token supply */
uint public totalSupply = 15000000000 * (10 ** decimals);
uint public onSaleTokens = 10000000000 * (10 ** decimals);
uint tokensForPublicSale = 0;
address contractAddress;
uint256 pricePerToken = 7518796992481; //1 Eth = 133000 XDCE
uint minETH = 0 * 10**decimals; // 0 ether
uint maxETH = 15 * 10**decimals; // 15 ether
function Coin() XinfinUpgradeableToken(msg.sender) {
owner = msg.sender;
contractAddress = address(this);
//tokens are kept in contract address rather than owner
balances[contractAddress] = totalSupply;
}
/* function to update token name and symbol */
function updateTokenInformation(string _name, string _symbol) onlyOwner {
name = _name;
symbol = _symbol;
UpdatedTokenInformation(name, symbol);
}
function sendTokensToOwner(uint _tokens) onlyOwner returns (bool ok){
require(balances[contractAddress] >= _tokens);
balances[contractAddress] = safeSub(balances[contractAddress],_tokens);
balances[owner] = safeAdd(balances[owner],_tokens);
return true;
}
/* single address */
function sendTokensToInvestors(address _investor, uint _tokens) onlyOwner returns (bool ok){
require(balances[contractAddress] >= _tokens);
onSaleTokens = safeSub(onSaleTokens, _tokens);
balances[contractAddress] = safeSub(balances[contractAddress],_tokens);
balances[_investor] = safeAdd(balances[_investor],_tokens);
return true;
}
/* A dispense feature to allocate some addresses with Xinfin tokens
* calculation done using token count
* Can be called only by owner
*/
function dispenseTokensToInvestorAddressesByValue(address[] _addresses, uint[] _value) onlyOwner returns (bool ok){
require(_addresses.length == _value.length);
for(uint256 i=0; i<_addresses.length; i++){
onSaleTokens = safeSub(onSaleTokens, _value[i]);
balances[_addresses[i]] = safeAdd(balances[_addresses[i]], _value[i]);
balances[contractAddress] = safeSub(balances[contractAddress], _value[i]);
}
return true;
}
function startCrowdSale() onlyOwner {
isCrowdsaleOpen=true;
}
function stopCrowdSale() onlyOwner {
isCrowdsaleOpen=false;
}
function setPublicSaleParams(uint _tokensForPublicSale, uint _min, uint _max, bool _crowdsaleStatus ) onlyOwner {
require(_tokensForPublicSale != 0);
require(_tokensForPublicSale <= onSaleTokens);
tokensForPublicSale = _tokensForPublicSale;
isCrowdsaleOpen=_crowdsaleStatus;
require(_min >= 0);
require(_max > 0);
minETH = _min;
maxETH = _max;
}
function setTotalTokensForPublicSale(uint _value) onlyOwner{
require(_value != 0);
tokensForPublicSale = _value;
}
function increaseSupply(uint value) onlyOwner returns (bool) {
totalSupply = safeAdd(totalSupply, value);
balances[contractAddress] = safeAdd(balances[contractAddress], value);
Transfer(0x0, contractAddress, value);
return true;
}
function decreaseSupply(uint value) onlyOwner returns (bool) {
balances[contractAddress] = safeSub(balances[contractAddress], value);
totalSupply = safeSub(totalSupply, value);
Transfer(contractAddress, 0x0, value);
return true;
}
function setMinAndMaxEthersForPublicSale(uint _min, uint _max) onlyOwner{
require(_min >= 0);
require(_max > 0);
minETH = _min;
maxETH = _max;
}
function updateTokenPrice(uint _value) onlyOwner{
require(_value != 0);
pricePerToken = _value;
}
function updateOnSaleSupply(uint _newSupply) onlyOwner{
require(_newSupply != 0);
onSaleTokens = _newSupply;
}
function buyTokens() public payable returns(uint tokenAmount) {
uint _tokenAmount;
uint multiplier = (10 ** decimals);
uint weiAmount = msg.value;
require(isCrowdsaleOpen);
//require(whitelistedAddress[msg.sender]);
require(weiAmount >= minETH);
require(weiAmount <= maxETH);
_tokenAmount = safeMul(weiAmount,multiplier) / pricePerToken;
require(_tokenAmount > 0);
//safe sub will automatically handle overflows
tokensForPublicSale = safeSub(tokensForPublicSale, _tokenAmount);
onSaleTokens = safeSub(onSaleTokens, _tokenAmount);
balances[contractAddress] = safeSub(balances[contractAddress],_tokenAmount);
//assign tokens
balances[msg.sender] = safeAdd(balances[msg.sender], _tokenAmount);
//send money to the owner
require(owner.send(weiAmount));
return _tokenAmount;
}
// There is no need for vesting. It will be done manually by manually releasing tokens to certain addresses
function() payable {
buyTokens();
}
function destroyToken() public onlyOwner {
selfdestruct(msg.sender);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"name":"updateTokenInformation","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"state","type":"bool"}],"name":"setTransferAgent","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokensForPublicSale","type":"uint256"},{"name":"_min","type":"uint256"},{"name":"_max","type":"uint256"},{"name":"_crowdsaleStatus","type":"bool"}],"name":"setPublicSaleParams","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setTotalTokensForPublicSale","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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"setReleaseAgent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"destroyToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_min","type":"uint256"},{"name":"_max","type":"uint256"}],"name":"setMinAndMaxEthersForPublicSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"upgrade","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isCrowdsaleOpen","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"upgradeAgent","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"releaseTokenTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"upgradeMaster","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"updateTokenPrice","outputs":[],"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":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getUpgradeState","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"transferAgents","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_investor","type":"address"},{"name":"_tokens","type":"uint256"}],"name":"sendTokensToInvestors","outputs":[{"name":"ok","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":true,"inputs":[],"name":"released","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"canUpgrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"decreaseSupply","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeSub","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","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":false,"inputs":[{"name":"value","type":"uint256"}],"name":"increaseSupply","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"stopCrowdSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalUpgraded","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addresses","type":"address[]"},{"name":"_value","type":"uint256[]"}],"name":"dispenseTokensToInvestorAddressesByValue","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeMul","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"buyTokens","outputs":[{"name":"tokenAmount","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"releaseAgent","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"agent","type":"address"}],"name":"setUpgradeAgent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newSupply","type":"uint256"}],"name":"updateOnSaleSupply","outputs":[],"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":true,"inputs":[],"name":"onSaleTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeAdd","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokens","type":"uint256"}],"name":"sendTokensToOwner","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"startCrowdSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"master","type":"address"}],"name":"setUpgradeMaster","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newName","type":"string"},{"indexed":false,"name":"newSymbol","type":"string"}],"name":"UpdatedTokenInformation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","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":"Upgrade","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"agent","type":"address"}],"name":"UpgradeAgentSet","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
60606040526000600960146101000a81548160ff0219169083151502179055506040805190810160405280600b81526020017f58696e46696e2058444345000000000000000000000000000000000000000000815250600b90805190602001906200006c929190620002a2565b506040805190810160405280600481526020017f5844434500000000000000000000000000000000000000000000000000000000815250600c9080519060200190620000ba929190620002a2565b506012600d556000600e60006101000a81548160ff021916908315150217905550600d54600a0a64037e11d60002600f55600d54600a0a6402540be4000260105560006011556506d69b394fe1601355600d54600a0a600002601455600d54600a0a600f0260155534156200012e57600080fd5b3380600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555030601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f5460026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000351565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002e557805160ff191683800117855562000316565b8280016001018555821562000316579182015b8281111562000315578251825591602001919060010190620002f8565b5b50905062000325919062000329565b5090565b6200034e91905b808211156200034a57600081600090555060010162000330565b5090565b90565b61378f80620003616000396000f30060606040526004361061023b576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063025f9bc11461024657806302f652a3146102e657806306fdde031461032a578063095ea7b3146103b857806310001fdd1461041257806317eef4cd1461045257806318160ddd1461047557806323b872dd1461049e57806329ff4f53146105175780632e4eaa1514610550578063313ce567146105655780633a789ffb1461058e57806345977d03146105ba5780635a3320ff146105dd5780635de4ccb01461060a5780635f412d4f1461065f578063600440cb14610674578063676c0d77146106c957806370a08231146106ec57806379ba5097146107395780638444b3911461074e578063867c285714610785578063870488f9146107d65780638da5cb5b1461083057806395d89b411461088557806396132521146109135780639738968c1461094057806398e52f9a1461096d578063a293d1e8146109a8578063a9059cbb146109e8578063b921e16314610a42578063c67c6eab14610a7d578063c752ff6214610a92578063cfae2c6514610abb578063d05c78da14610b6d578063d0febe4c14610bad578063d1f276d314610bcb578063d4ee1d9014610c20578063d7e7088a14610c75578063da23d18b14610cae578063dd62ed3e14610cd1578063df90061b14610d3d578063e6cb901314610d66578063f12ddd2b14610da6578063f2b45ac114610de1578063f2fde38b14610df6578063ffeb7d7514610e2f575b610243610e68565b50005b341561025157600080fd5b6102e4600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506110c9565b005b34156102f157600080fd5b610328600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035151590602001909190505061129c565b005b341561033557600080fd5b61033d611377565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561037d578082015181840152602081019050610362565b50505050905090810190601f1680156103aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103c357600080fd5b6103f8600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611415565b604051808215151515815260200191505060405180910390f35b341561041d57600080fd5b610450600480803590602001909190803590602001909190803590602001909190803515159060200190919050506115a0565b005b341561045d57600080fd5b6104736004808035906020019091905050611671565b005b341561048057600080fd5b6104886116e7565b6040518082815260200191505060405180910390f35b34156104a957600080fd5b6104fd600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506116ed565b604051808215151515815260200191505060405180910390f35b341561052257600080fd5b61054e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611774565b005b341561055b57600080fd5b610563611838565b005b341561057057600080fd5b6105786118ad565b6040518082815260200191505060405180910390f35b341561059957600080fd5b6105b860048080359060200190919080359060200190919050506118b3565b005b34156105c557600080fd5b6105db6004808035906020019091905050611940565b005b34156105e857600080fd5b6105f0611bb4565b604051808215151515815260200191505060405180910390f35b341561061557600080fd5b61061d611bc7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561066a57600080fd5b610672611bed565b005b341561067f57600080fd5b610687611c66565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106d457600080fd5b6106ea6004808035906020019091905050611c8c565b005b34156106f757600080fd5b610723600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611d02565b6040518082815260200191505060405180910390f35b341561074457600080fd5b61074c611d4b565b005b341561075957600080fd5b610761611eaa565b6040518082600481111561077157fe5b60ff16815260200191505060405180910390f35b341561079057600080fd5b6107bc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611f29565b604051808215151515815260200191505060405180910390f35b34156107e157600080fd5b610816600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611f49565b604051808215151515815260200191505060405180910390f35b341561083b57600080fd5b61084361218f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561089057600080fd5b6108986121b5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d85780820151818401526020810190506108bd565b50505050905090810190601f1680156109055780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561091e57600080fd5b610926612253565b604051808215151515815260200191505060405180910390f35b341561094b57600080fd5b610953612266565b604051808215151515815260200191505060405180910390f35b341561097857600080fd5b61098e600480803590602001909190505061226f565b604051808215151515815260200191505060405180910390f35b34156109b357600080fd5b6109d2600480803590602001909190803590602001909190505061242a565b6040518082815260200191505060405180910390f35b34156109f357600080fd5b610a28600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612443565b604051808215151515815260200191505060405180910390f35b3415610a4d57600080fd5b610a6360048080359060200190919050506124c8565b604051808215151515815260200191505060405180910390f35b3415610a8857600080fd5b610a90612683565b005b3415610a9d57600080fd5b610aa56126fc565b6040518082815260200191505060405180910390f35b3415610ac657600080fd5b610b5360048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050612702565b604051808215151515815260200191505060405180910390f35b3415610b7857600080fd5b610b976004808035906020019091908035906020019091905050612978565b6040518082815260200191505060405180910390f35b610bb5610e68565b6040518082815260200191505060405180910390f35b3415610bd657600080fd5b610bde6129ab565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c2b57600080fd5b610c336129d1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c8057600080fd5b610cac600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506129f7565b005b3415610cb957600080fd5b610ccf6004808035906020019091905050612ced565b005b3415610cdc57600080fd5b610d27600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612d63565b6040518082815260200191505060405180910390f35b3415610d4857600080fd5b610d50612dea565b6040518082815260200191505060405180910390f35b3415610d7157600080fd5b610d906004808035906020019091908035906020019091905050612df0565b6040518082815260200191505060405180910390f35b3415610db157600080fd5b610dc76004808035906020019091905050612e0e565b604051808215151515815260200191505060405180910390f35b3415610dec57600080fd5b610df4613085565b005b3415610e0157600080fd5b610e2d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506130fe565b005b3415610e3a57600080fd5b610e66600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506131da565b005b600080600080600d54600a0a9150349050600e60009054906101000a900460ff161515610e9457600080fd5b6014548110151515610ea557600080fd5b6015548111151515610eb657600080fd5b601354610ec38284612978565b811515610ecc57fe5b049250600083111515610ede57600080fd5b610eea6011548461242a565b601181905550610efc6010548461242a565b601081905550610f6d60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061101b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612df0565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015156110c057600080fd5b82935050505090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561112557600080fd5b81600b908051906020019061113b9291906136be565b5080600c90805190602001906111529291906136be565b507fd131ab1e6f279deea74e13a18477e13e2107deb6dc8ae955648948be5841fb46600b600c6040518080602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156112055780601f106111da57610100808354040283529160200191611205565b820191906000526020600020905b8154815290600101906020018083116111e857829003601f168201915b50508381038252848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156112885780601f1061125d57610100808354040283529160200191611288565b820191906000526020600020905b81548152906001019060200180831161126b57829003601f168201915b505094505050505060405180910390a15050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112f857600080fd5b6000600960149054906101000a900460ff16151581151514151561131b57600080fd5b81600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b600b8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561140d5780601f106113e25761010080835404028352916020019161140d565b820191906000526020600020905b8154815290600101906020018083116113f057829003601f168201915b505050505081565b60008082141580156114a457506000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1515156114b057600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156115fc57600080fd5b6000841415151561160c57600080fd5b601054841115151561161d57600080fd5b8360118190555080600e60006101000a81548160ff0219169083151502179055506000831015151561164e57600080fd5b60008211151561165d57600080fd5b826014819055508160158190555050505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116cd57600080fd5b600081141515156116dd57600080fd5b8060118190555050565b600f5481565b600083600960149054906101000a900460ff16151561175f57600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561175e57600080fd5b5b61176a8585856132a0565b9150509392505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117d057600080fd5b6000600960149054906101000a900460ff1615158115151415156117f357600080fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561189457600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b600d5481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561190f57600080fd5b6000821015151561191f57600080fd5b60008111151561192e57600080fd5b81601481905550806015819055505050565b600061194a611eaa565b90506003600481111561195957fe5b81600481111561196557fe5b1480611986575060048081111561197857fe5b81600481111561198457fe5b145b151561199157600080fd5b600082141515156119a157600080fd5b6119ea600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a396000548361242a565b600081905550611a4b60065483612df0565b600681905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663753e88e533846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515611b1557600080fd5b6102c65a03f11515611b2657600080fd5b505050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac846040518082815260200191505060405180910390a35050565b600e60009054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c4957600080fd5b6001600960146101000a81548160ff021916908315150217905550565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611ce857600080fd5b60008114151515611cf857600080fd5b8060138190555050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611da757600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000611eb4612266565b1515611ec35760019050611f26565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611f0d5760029050611f26565b60006006541415611f215760039050611f26565b600490505b90565b600a6020528060005260406000206000915054906101000a900460ff1681565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fa757600080fd5b8160026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561201757600080fd5b6120236010548361242a565b60108190555061209460026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612142600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561224b5780601f106122205761010080835404028352916020019161224b565b820191906000526020600020905b81548152906001019060200180831161222e57829003601f168201915b505050505081565b600960149054906101000a900460ff1681565b60006001905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122cd57600080fd5b61233860026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506123a9600f548361242a565b600f819055506000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600082821115151561243857fe5b818303905092915050565b600033600960149054906101000a900460ff1615156124b557600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156124b457600080fd5b5b6124bf8484613535565b91505092915050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561252657600080fd5b612532600f5483612df0565b600f819055506125a360026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156126df57600080fd5b6000600e60006101000a81548160ff021916908315150217905550565b60065481565b600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561276157600080fd5b8251845114151561277157600080fd5b600090505b835181101561296d576127a2601054848381518110151561279357fe5b9060200190602002015161242a565b60108190555061281f6002600086848151811015156127bd57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054848381518110151561281057fe5b90602001906020020151612df0565b60026000868481518110151561283157fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506128fb60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484838151811015156128ec57fe5b9060200190602002015161242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050612776565b600191505092915050565b60008082840290506000841480612999575082848281151561299657fe5b04145b15156129a157fe5b8091505092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6129ff612266565b1515612a0a57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515612a3057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a8c57600080fd5b600480811115612a9857fe5b612aa0611eaa565b6004811115612aab57fe5b14151515612ab857600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166361d3d7a66000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515612b8757600080fd5b6102c65a03f11515612b9857600080fd5b505050604051805190501515612bad57600080fd5b600054600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634b2ba0dd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515612c3e57600080fd5b6102c65a03f11515612c4f57600080fd5b50505060405180519050141515612c6557600080fd5b7f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d4957600080fd5b60008114151515612d5957600080fd5b8060108190555050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60105481565b6000808284019050838110151515612e0457fe5b8091505092915050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612e6c57600080fd5b8160026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612edc57600080fd5b612f4760026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061301760026000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b60026000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060019050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156130e157600080fd5b6001600e60006101000a81548160ff021916908315150217905550565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561315a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561319657600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008173ffffffffffffffffffffffffffffffffffffffff161415151561320057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561325c57600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905061336b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612df0565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506133f7600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461242a565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613444818461242a565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b6000613580600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061360c600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106136ff57805160ff191683800117855561372d565b8280016001018555821561372d579182015b8281111561372c578251825591602001919060010190613711565b5b50905061373a919061373e565b5090565b61376091905b8082111561375c576000816000905550600101613744565b5090565b905600a165627a7a723058204025b5b49266cfddc318349d4a8fbe2cbc4aa18b97d236cf02c86442ecb0472c0029
Deployed Bytecode
0x60606040526004361061023b576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063025f9bc11461024657806302f652a3146102e657806306fdde031461032a578063095ea7b3146103b857806310001fdd1461041257806317eef4cd1461045257806318160ddd1461047557806323b872dd1461049e57806329ff4f53146105175780632e4eaa1514610550578063313ce567146105655780633a789ffb1461058e57806345977d03146105ba5780635a3320ff146105dd5780635de4ccb01461060a5780635f412d4f1461065f578063600440cb14610674578063676c0d77146106c957806370a08231146106ec57806379ba5097146107395780638444b3911461074e578063867c285714610785578063870488f9146107d65780638da5cb5b1461083057806395d89b411461088557806396132521146109135780639738968c1461094057806398e52f9a1461096d578063a293d1e8146109a8578063a9059cbb146109e8578063b921e16314610a42578063c67c6eab14610a7d578063c752ff6214610a92578063cfae2c6514610abb578063d05c78da14610b6d578063d0febe4c14610bad578063d1f276d314610bcb578063d4ee1d9014610c20578063d7e7088a14610c75578063da23d18b14610cae578063dd62ed3e14610cd1578063df90061b14610d3d578063e6cb901314610d66578063f12ddd2b14610da6578063f2b45ac114610de1578063f2fde38b14610df6578063ffeb7d7514610e2f575b610243610e68565b50005b341561025157600080fd5b6102e4600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919050506110c9565b005b34156102f157600080fd5b610328600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035151590602001909190505061129c565b005b341561033557600080fd5b61033d611377565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561037d578082015181840152602081019050610362565b50505050905090810190601f1680156103aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156103c357600080fd5b6103f8600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611415565b604051808215151515815260200191505060405180910390f35b341561041d57600080fd5b610450600480803590602001909190803590602001909190803590602001909190803515159060200190919050506115a0565b005b341561045d57600080fd5b6104736004808035906020019091905050611671565b005b341561048057600080fd5b6104886116e7565b6040518082815260200191505060405180910390f35b34156104a957600080fd5b6104fd600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506116ed565b604051808215151515815260200191505060405180910390f35b341561052257600080fd5b61054e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611774565b005b341561055b57600080fd5b610563611838565b005b341561057057600080fd5b6105786118ad565b6040518082815260200191505060405180910390f35b341561059957600080fd5b6105b860048080359060200190919080359060200190919050506118b3565b005b34156105c557600080fd5b6105db6004808035906020019091905050611940565b005b34156105e857600080fd5b6105f0611bb4565b604051808215151515815260200191505060405180910390f35b341561061557600080fd5b61061d611bc7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561066a57600080fd5b610672611bed565b005b341561067f57600080fd5b610687611c66565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156106d457600080fd5b6106ea6004808035906020019091905050611c8c565b005b34156106f757600080fd5b610723600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611d02565b6040518082815260200191505060405180910390f35b341561074457600080fd5b61074c611d4b565b005b341561075957600080fd5b610761611eaa565b6040518082600481111561077157fe5b60ff16815260200191505060405180910390f35b341561079057600080fd5b6107bc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611f29565b604051808215151515815260200191505060405180910390f35b34156107e157600080fd5b610816600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611f49565b604051808215151515815260200191505060405180910390f35b341561083b57600080fd5b61084361218f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561089057600080fd5b6108986121b5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d85780820151818401526020810190506108bd565b50505050905090810190601f1680156109055780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561091e57600080fd5b610926612253565b604051808215151515815260200191505060405180910390f35b341561094b57600080fd5b610953612266565b604051808215151515815260200191505060405180910390f35b341561097857600080fd5b61098e600480803590602001909190505061226f565b604051808215151515815260200191505060405180910390f35b34156109b357600080fd5b6109d2600480803590602001909190803590602001909190505061242a565b6040518082815260200191505060405180910390f35b34156109f357600080fd5b610a28600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050612443565b604051808215151515815260200191505060405180910390f35b3415610a4d57600080fd5b610a6360048080359060200190919050506124c8565b604051808215151515815260200191505060405180910390f35b3415610a8857600080fd5b610a90612683565b005b3415610a9d57600080fd5b610aa56126fc565b6040518082815260200191505060405180910390f35b3415610ac657600080fd5b610b5360048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050612702565b604051808215151515815260200191505060405180910390f35b3415610b7857600080fd5b610b976004808035906020019091908035906020019091905050612978565b6040518082815260200191505060405180910390f35b610bb5610e68565b6040518082815260200191505060405180910390f35b3415610bd657600080fd5b610bde6129ab565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c2b57600080fd5b610c336129d1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c8057600080fd5b610cac600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506129f7565b005b3415610cb957600080fd5b610ccf6004808035906020019091905050612ced565b005b3415610cdc57600080fd5b610d27600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612d63565b6040518082815260200191505060405180910390f35b3415610d4857600080fd5b610d50612dea565b6040518082815260200191505060405180910390f35b3415610d7157600080fd5b610d906004808035906020019091908035906020019091905050612df0565b6040518082815260200191505060405180910390f35b3415610db157600080fd5b610dc76004808035906020019091905050612e0e565b604051808215151515815260200191505060405180910390f35b3415610dec57600080fd5b610df4613085565b005b3415610e0157600080fd5b610e2d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506130fe565b005b3415610e3a57600080fd5b610e66600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506131da565b005b600080600080600d54600a0a9150349050600e60009054906101000a900460ff161515610e9457600080fd5b6014548110151515610ea557600080fd5b6015548111151515610eb657600080fd5b601354610ec38284612978565b811515610ecc57fe5b049250600083111515610ede57600080fd5b610eea6011548461242a565b601181905550610efc6010548461242a565b601081905550610f6d60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061101b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612df0565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015156110c057600080fd5b82935050505090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561112557600080fd5b81600b908051906020019061113b9291906136be565b5080600c90805190602001906111529291906136be565b507fd131ab1e6f279deea74e13a18477e13e2107deb6dc8ae955648948be5841fb46600b600c6040518080602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156112055780601f106111da57610100808354040283529160200191611205565b820191906000526020600020905b8154815290600101906020018083116111e857829003601f168201915b50508381038252848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156112885780601f1061125d57610100808354040283529160200191611288565b820191906000526020600020905b81548152906001019060200180831161126b57829003601f168201915b505094505050505060405180910390a15050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112f857600080fd5b6000600960149054906101000a900460ff16151581151514151561131b57600080fd5b81600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b600b8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561140d5780601f106113e25761010080835404028352916020019161140d565b820191906000526020600020905b8154815290600101906020018083116113f057829003601f168201915b505050505081565b60008082141580156114a457506000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b1515156114b057600080fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156115fc57600080fd5b6000841415151561160c57600080fd5b601054841115151561161d57600080fd5b8360118190555080600e60006101000a81548160ff0219169083151502179055506000831015151561164e57600080fd5b60008211151561165d57600080fd5b826014819055508160158190555050505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116cd57600080fd5b600081141515156116dd57600080fd5b8060118190555050565b600f5481565b600083600960149054906101000a900460ff16151561175f57600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561175e57600080fd5b5b61176a8585856132a0565b9150509392505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117d057600080fd5b6000600960149054906101000a900460ff1615158115151415156117f357600080fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561189457600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b600d5481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561190f57600080fd5b6000821015151561191f57600080fd5b60008111151561192e57600080fd5b81601481905550806015819055505050565b600061194a611eaa565b90506003600481111561195957fe5b81600481111561196557fe5b1480611986575060048081111561197857fe5b81600481111561198457fe5b145b151561199157600080fd5b600082141515156119a157600080fd5b6119ea600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a396000548361242a565b600081905550611a4b60065483612df0565b600681905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663753e88e533846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515611b1557600080fd5b6102c65a03f11515611b2657600080fd5b505050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac846040518082815260200191505060405180910390a35050565b600e60009054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c4957600080fd5b6001600960146101000a81548160ff021916908315150217905550565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611ce857600080fd5b60008114151515611cf857600080fd5b8060138190555050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611da757600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000611eb4612266565b1515611ec35760019050611f26565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611f0d5760029050611f26565b60006006541415611f215760039050611f26565b600490505b90565b600a6020528060005260406000206000915054906101000a900460ff1681565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fa757600080fd5b8160026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561201757600080fd5b6120236010548361242a565b60108190555061209460026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612142600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561224b5780601f106122205761010080835404028352916020019161224b565b820191906000526020600020905b81548152906001019060200180831161222e57829003601f168201915b505050505081565b600960149054906101000a900460ff1681565b60006001905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156122cd57600080fd5b61233860026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506123a9600f548361242a565b600f819055506000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600082821115151561243857fe5b818303905092915050565b600033600960149054906101000a900460ff1615156124b557600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156124b457600080fd5b5b6124bf8484613535565b91505092915050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561252657600080fd5b612532600f5483612df0565b600f819055506125a360026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156126df57600080fd5b6000600e60006101000a81548160ff021916908315150217905550565b60065481565b600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561276157600080fd5b8251845114151561277157600080fd5b600090505b835181101561296d576127a2601054848381518110151561279357fe5b9060200190602002015161242a565b60108190555061281f6002600086848151811015156127bd57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054848381518110151561281057fe5b90602001906020020151612df0565b60026000868481518110151561283157fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506128fb60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484838151811015156128ec57fe5b9060200190602002015161242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508080600101915050612776565b600191505092915050565b60008082840290506000841480612999575082848281151561299657fe5b04145b15156129a157fe5b8091505092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6129ff612266565b1515612a0a57600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515612a3057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612a8c57600080fd5b600480811115612a9857fe5b612aa0611eaa565b6004811115612aab57fe5b14151515612ab857600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166361d3d7a66000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515612b8757600080fd5b6102c65a03f11515612b9857600080fd5b505050604051805190501515612bad57600080fd5b600054600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634b2ba0dd6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515612c3e57600080fd5b6102c65a03f11515612c4f57600080fd5b50505060405180519050141515612c6557600080fd5b7f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d4957600080fd5b60008114151515612d5957600080fd5b8060108190555050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60105481565b6000808284019050838110151515612e0457fe5b8091505092915050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612e6c57600080fd5b8160026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612edc57600080fd5b612f4760026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b60026000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061301760026000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b60026000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060019050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156130e157600080fd5b6001600e60006101000a81548160ff021916908315150217905550565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561315a57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561319657600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008173ffffffffffffffffffffffffffffffffffffffff161415151561320057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561325c57600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905061336b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484612df0565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506133f7600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461242a565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613444818461242a565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b6000613580600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361242a565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061360c600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483612df0565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106136ff57805160ff191683800117855561372d565b8280016001018555821561372d579182015b8281111561372c578251825591602001919060010190613711565b5b50905061373a919061373e565b5090565b61376091905b8082111561375c576000816000905550600101613744565b5090565b905600a165627a7a723058204025b5b49266cfddc318349d4a8fbe2cbc4aa18b97d236cf02c86442ecb0472c0029
Swarm Source
bzzr://4025b5b49266cfddc318349d4a8fbe2cbc4aa18b97d236cf02c86442ecb0472c
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.
Add Token to MetaMask (Web3)