Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Source Code
Overview
Max Total Supply
14,100 GGC
Holders
118
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Balance
645 GGCValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Name:
GGCToken
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2018-09-28
*/
pragma solidity ^0.4.24;
contract ERC20Interface {
function totalSupply() public view returns (uint256);
function balanceOf(address tokenOwner) public view returns (uint256 balance);
function allowance(address tokenOwner, address spender) public view returns (uint256 remaining);
function transfer(address to, uint256 tokens) public returns (bool success);
function approve(address spender, uint256 tokens) public returns (bool success);
function transferFrom(address from, address to, uint256 tokens) public returns (bool success);
event Transfer(address indexed from, address indexed to, uint256 tokens);
event Approval(address indexed tokenOwner, address indexed spender, uint256 tokens);
}
// ----------------------------------------------------------------------------
// Safe maths
// ----------------------------------------------------------------------------
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
c = a + b;
require(c >= a);
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256 c) {
require(b <= a);
c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
if (a == 0) {
return 0;
}
c = a * b;
require(c / a == b);
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256 c) {
require(b != 0);
c = a / b;
return c;
}
}
contract GGCToken is ERC20Interface{
using SafeMath for uint256;
using SafeMath for uint8;
// ------------------------------------------------------------------------
// Events
// ------------------------------------------------------------------------
//typeNo WL 1, ACL 2, BL 3, FeeL 4, TransConL 5, GGCPool 6, GGEPool 7
event ListLog(address addr, uint8 indexed typeNo, bool active);
event Trans(address indexed fromAddr, address indexed toAddr, uint256 transAmount, uint256 ggcAmount, uint256 ggeAmount, uint64 time);
event OwnershipTransferred(address indexed _from, address indexed _to);
event Deposit(address indexed sender, uint value);
string public symbol;
string public name;
uint8 public decimals;
uint8 public ggcFee;
uint8 public ggeFee;
uint8 public maxFee;
uint256 public _totalSupply;
bool public feeLocked;
bool public transContractLocked;
address public owner;
address public ggcPoolAddr;
address public ggePoolAddr;
address private ownerContract = address(0x0);
mapping(address => uint256) balances;
mapping(address => mapping(address => uint256)) allowed;
mapping(address => bool) public whiteList;
mapping(address => bool) public allowContractList;
mapping(address => bool) public blackList;
constructor() public {
symbol = "GGC";
name = "GramGold Coin";
owner = msg.sender;
decimals = 8;
ggcFee = 2;
ggeFee = 1;
maxFee = 3;
_totalSupply = 600 * 10**uint256(decimals);
balances[owner] = _totalSupply;
ggcPoolAddr = address(0x0);
ggePoolAddr = address(0x0);
feeLocked = false;
transContractLocked = true;
whiteList[owner] = true;
emit ListLog(owner, 1, true);
emit Transfer(address(0x0), owner, _totalSupply);
}
/**
* @dev Allow current contract owner transfer ownership to other address
*/
function AssignGGCOwner(address _ownerContract)
public
onlyOwner
notNull(_ownerContract)
{
uint256 remainTokens = balances[owner];
ownerContract = _ownerContract;
balances[owner] = 0;
balances[ownerContract] = balances[ownerContract].add(remainTokens);
whiteList[ownerContract] = true;
emit ListLog(ownerContract, 1, true);
emit Transfer(owner, ownerContract, remainTokens);
emit OwnershipTransferred(owner, ownerContract);
owner = ownerContract;
}
/**
* @dev Check if the address is a wallet or a contract
*/
function isContract(address _addr)
private
view
returns (bool)
{
if(allowContractList[_addr] || !transContractLocked){
return false;
}
uint256 codeLength = 0;
assembly {
codeLength := extcodesize(_addr)
}
return (codeLength > 0);
}
/**
* @dev transfer _value from msg.sender to receiver
* Both sender and receiver pays a transaction fees
* The transaction fees will be transferred into GGCPool and GGEPool
*/
function transfer(address _to, uint256 _value)
public
notNull(_to)
returns (bool success)
{
uint256 ggcFeeFrom;
uint256 ggeFeeFrom;
uint256 ggcFeeTo;
uint256 ggeFeeTo;
if (feeLocked) {
ggcFeeFrom = 0;
ggeFeeFrom = 0;
ggcFeeTo = 0;
ggeFeeTo = 0;
}else{
(ggcFeeFrom, ggeFeeFrom) = feesCal(msg.sender, _value);
(ggcFeeTo, ggeFeeTo) = feesCal(_to, _value);
}
require(balances[msg.sender] >= _value.add(ggcFeeFrom).add(ggeFeeFrom));
success = _transfer(msg.sender, _to, _value.sub(ggcFeeTo).sub(ggeFeeTo));
require(success);
success = _transfer(msg.sender, ggcPoolAddr, ggcFeeFrom.add(ggcFeeTo));
require(success);
success = _transfer(msg.sender, ggePoolAddr, ggeFeeFrom.add(ggeFeeTo));
require(success);
balances[msg.sender] = balances[msg.sender].sub(_value.add(ggcFeeFrom).add(ggeFeeFrom));
balances[_to] = balances[_to].add(_value.sub(ggcFeeTo).sub(ggeFeeTo));
balances[ggcPoolAddr] = balances[ggcPoolAddr].add(ggcFeeFrom).add(ggcFeeTo);
balances[ggePoolAddr] = balances[ggePoolAddr].add(ggeFeeFrom).add(ggeFeeTo);
emit Trans(msg.sender, _to, _value, ggcFeeFrom.add(ggcFeeTo), ggeFeeFrom.add(ggeFeeTo), uint64(now));
return true;
}
/**
* @dev transfer _value from contract owner to receiver
* Both contract owner and receiver pay transaction fees
* The transaction fees will be transferred into GGCPool and GGEPool
*/
function transferFrom(address _from, address _to, uint256 _value)
public
notNull(_to)
returns (bool success)
{
uint256 ggcFeeFrom;
uint256 ggeFeeFrom;
uint256 ggcFeeTo;
uint256 ggeFeeTo;
if (feeLocked) {
ggcFeeFrom = 0;
ggeFeeFrom = 0;
ggcFeeTo = 0;
ggeFeeTo = 0;
}else{
(ggcFeeFrom, ggeFeeFrom) = feesCal(_from, _value);
(ggcFeeTo, ggeFeeTo) = feesCal(_to, _value);
}
require(balances[_from] >= _value.add(ggcFeeFrom).add(ggeFeeFrom));
require(allowed[_from][msg.sender] >= _value.add(ggcFeeFrom).add(ggeFeeFrom));
success = _transfer(_from, _to, _value.sub(ggcFeeTo).sub(ggeFeeTo));
require(success);
success = _transfer(_from, ggcPoolAddr, ggcFeeFrom.add(ggcFeeTo));
require(success);
success = _transfer(_from, ggePoolAddr, ggeFeeFrom.add(ggeFeeTo));
require(success);
balances[_from] = balances[_from].sub(_value.add(ggcFeeFrom).add(ggeFeeFrom));
balances[_to] = balances[_to].add(_value.sub(ggcFeeTo).sub(ggeFeeTo));
balances[ggcPoolAddr] = balances[ggcPoolAddr].add(ggcFeeFrom).add(ggcFeeTo);
balances[ggePoolAddr] = balances[ggePoolAddr].add(ggeFeeFrom).add(ggeFeeTo);
emit Trans(_from, _to, _value, ggcFeeFrom.add(ggcFeeTo), ggeFeeFrom.add(ggeFeeTo), uint64(now));
return true;
}
/**
* @dev calculate transaction fee base on address and value.
* Check whiteList
*/
function feesCal(address _addr, uint256 _value)
public
view
notNull(_addr)
returns (uint256 _ggcFee, uint256 _ggeFee)
{
if(whiteList[_addr]){
return (0, 0);
}else{
_ggcFee = _value.mul(ggcFee).div(1000).div(2);
_ggeFee = _value.mul(ggeFee).div(1000).div(2);
return (_ggcFee, _ggeFee);
}
}
/**
* @dev both transfer and transferfrom are dispatched here
* Check blackList
*/
function _transfer(address _from, address _to, uint256 _value)
internal
notNull(_from)
notNull(_to)
returns (bool)
{
require(!blackList[_from]);
require(!blackList[_to]);
require(!isContract(_to));
emit Transfer(_from, _to, _value);
return true;
}
/**
* @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
* @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 success)
{
if ((_value != 0) && (allowed[msg.sender][_spender] != 0)) {
return false;
}
allowed[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
return true;
}
/**
* @dev Function to check the amount of tokens that an owner allowed to a spender.
* @param _tokenOwner 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 _tokenOwner, address _spender)
public
view
returns (uint256 remaining)
{
return allowed[_tokenOwner][_spender];
}
function()
payable
{
if (msg.value > 0)
emit Deposit(msg.sender, msg.value);
}
/**
* @dev Reject all ERC223 compatible tokens
* @param from_ address The address that is transferring the tokens
* @param value_ uint256 the amount of the specified token
* @param data_ Bytes The data passed from the caller.
*/
function tokenFallback(address from_, uint256 value_, bytes data_)
external
{
from_;
value_;
data_;
revert();
}
// ------------------------------------------------------------------------
// Modifiers
// ------------------------------------------------------------------------
modifier onlyOwner {
require(msg.sender == owner);
_;
}
modifier notNull(address _address) {
require(_address != address(0x0));
_;
}
// ------------------------------------------------------------------------
// onlyOwner API
// ------------------------------------------------------------------------
function setGGCAddress(address _addr)
public
notNull(_addr)
onlyOwner
{
if(ggcPoolAddr == address(0x0)){
ggcPoolAddr = _addr;
}else{
ggcPoolAddr = owner;
}
emit ListLog(ggcPoolAddr, 6, false);
}
function setGGEAddress(address _addr)
public
notNull(_addr)
onlyOwner
{
if(ggePoolAddr == address(0x0)){
ggePoolAddr = _addr;
}else{
ggePoolAddr = owner;
}
emit ListLog(ggePoolAddr, 7, false);
}
function setGGCFee(uint8 _val)
public
onlyOwner
{
require(ggeFee.add(_val) <= maxFee);
ggcFee = _val;
}
function setGGEFee(uint8 _val)
public
onlyOwner
{
require(ggcFee.add(_val) <= maxFee);
ggeFee = _val;
}
function addBlacklist(address _addr) public notNull(_addr) onlyOwner {
blackList[_addr] = true;
emit ListLog(_addr, 3, true);
}
function delBlackList(address _addr) public notNull(_addr) onlyOwner {
delete blackList[_addr];
emit ListLog(_addr, 3, false);
}
function setFeeLocked(bool _lock)
public
onlyOwner
{
feeLocked = _lock;
emit ListLog(address(0x0), 4, _lock);
}
function setTransContractLocked(bool _lock)
public
onlyOwner
{
transContractLocked = _lock;
emit ListLog(address(0x0), 5, _lock);
}
function transferAnyERC20Token(address _tokenAddress, uint256 _tokens)
public
onlyOwner
returns (bool success)
{
return ERC20Interface(_tokenAddress).transfer(owner, _tokens);
}
function reclaimEther(address _addr)
external
onlyOwner
{
assert(_addr.send(this.balance));
}
function mintToken(address _targetAddr, uint256 _mintedAmount)
public
onlyOwner
{
balances[_targetAddr] = balances[_targetAddr].add(_mintedAmount);
_totalSupply = _totalSupply.add(_mintedAmount);
emit Transfer(address(0x0), _targetAddr, _mintedAmount);
}
function burnToken(uint256 _burnedAmount)
public
onlyOwner
{
require(balances[owner] >= _burnedAmount);
balances[owner] = balances[owner].sub(_burnedAmount);
_totalSupply = _totalSupply.sub(_burnedAmount);
emit Transfer(owner, address(0x0), _burnedAmount);
}
function addWhiteList(address _addr)
public
notNull(_addr)
onlyOwner
{
whiteList[_addr] = true;
emit ListLog(_addr, 1, true);
}
function delWhiteList(address _addr)
public
notNull(_addr)
onlyOwner
{
delete whiteList[_addr];
emit ListLog(_addr, 1, false);
}
function addAllowContractList(address _addr)
public
notNull(_addr)
onlyOwner
{
allowContractList[_addr] = true;
emit ListLog(_addr, 2, true);
}
function delAllowContractList(address _addr)
public
notNull(_addr)
onlyOwner
{
delete allowContractList[_addr];
emit ListLog(_addr, 2, false);
}
function increaseApproval(address _spender, uint256 _addedValue)
public
notNull(_spender)
onlyOwner returns (bool)
{
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
function decreaseApproval(address _spender, uint256 _subtractedValue)
public
notNull(_spender)
onlyOwner returns (bool)
{
uint256 oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
function changeName(string _name, string _symbol)
public
onlyOwner
{
name = _name;
symbol = _symbol;
}
// ------------------------------------------------------------------------
// Public view API
// ------------------------------------------------------------------------
function balanceOf(address _tokenOwner)
public
view
returns (uint256 balance)
{
return balances[_tokenOwner];
}
function totalSupply()
public
view
returns (uint256)
{
return _totalSupply.sub(balances[address(0x0)]);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"maxFee","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_val","type":"uint8"}],"name":"setGGCFee","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":"_addr","type":"address"}],"name":"delAllowContractList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ggePoolAddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ggcPoolAddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ggcFee","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delBlackList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"allowContractList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whiteList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"_totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_val","type":"uint8"}],"name":"setGGEFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"blackList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addAllowContractList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_lock","type":"bool"}],"name":"setTransContractLocked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delWhiteList","outputs":[],"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":false,"inputs":[{"name":"_addr","type":"address"}],"name":"setGGEAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_targetAddr","type":"address"},{"name":"_mintedAmount","type":"uint256"}],"name":"mintToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_burnedAmount","type":"uint256"}],"name":"burnToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"setGGCAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"name":"changeName","outputs":[],"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":"_ownerContract","type":"address"}],"name":"AssignGGCOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"reclaimEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addBlacklist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"},{"name":"_value","type":"uint256"}],"name":"feesCal","outputs":[{"name":"_ggcFee","type":"uint256"},{"name":"_ggeFee","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transContractLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from_","type":"address"},{"name":"value_","type":"uint256"},{"name":"data_","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"nonpayable","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":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_tokens","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenOwner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addWhiteList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_lock","type":"bool"}],"name":"setFeeLocked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ggeFee","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":true,"name":"typeNo","type":"uint8"},{"indexed":false,"name":"active","type":"bool"}],"name":"ListLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"fromAddr","type":"address"},{"indexed":true,"name":"toAddr","type":"address"},{"indexed":false,"name":"transAmount","type":"uint256"},{"indexed":false,"name":"ggcAmount","type":"uint256"},{"indexed":false,"name":"ggeAmount","type":"uint256"},{"indexed":false,"name":"time","type":"uint64"}],"name":"Trans","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":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]Contract Creation Code
608060405260078054600160a060020a03191690553480156200002157600080fd5b506040805180820190915260038082527f4747430000000000000000000000000000000000000000000000000000000000602090920191825262000068916000916200020d565b5060408051808201909152600d8082527f4772616d476f6c6420436f696e000000000000000000000000000000000000006020909201918252620000af916001916200020d565b50600480546201000060b060020a03191633620100009081029190911780835560028054600860ff19918216811761ff0019166102001762ff00001916851763ff00000019166303000000179283905560ff909216600a90810a610258026003819055600160a060020a039486900485166000908152602094855260408082209290925560058054600160a060020a0319908116909155600680549091169055875461010061ffff19909116178089558790048616815291845290819020805490921660019081179092559454855194900490921683528201819052825190927fb2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610928290030190a26004546003546040805191825251600160a060020a036201000090930492909216916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a3620002b2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200025057805160ff191683800117855562000280565b8280016001018555821562000280579182015b828111156200028057825182559160200191906001019062000263565b506200028e92915062000292565b5090565b620002af91905b808211156200028e576000815560010162000299565b90565b61219f80620002c26000396000f30060806040526004361061020e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301f59d168114610250578063059407281461027b57806306fdde031461029657806307b3996214610320578063095ea7b3146103415780630a792802146103795780630fbff868146103aa57806318160ddd146103bf5780631db3314a146103e6578063217987ad146103fb57806323b872dd1461041c5780632945aa3c14610446578063313ce56714610467578063372c12b11461047c5780633eaaf86b1461049d57806347c1b5cf146104b25780634838d165146104cd57806352ffff99146104ee578063532399d91461050f578063605e5ee114610529578063661884631461054a57806369bc513a1461056e57806370a082311461058f57806377e40491146105b057806379c65068146105c55780637b47ec1a146105e957806380f3f0941461060157806386575e40146106225780638da5cb5b146106b957806395d89b41146106ce578063986e7ed3146106e35780639a6a30a4146107045780639cfe42da14610725578063a109b8bd14610746578063a9059cbb14610783578063c0c6b4f1146107a7578063c0ee0b8a146107bc578063d73dd623146107ed578063dc39d06d14610811578063dd62ed3e14610835578063e7cd4a041461085c578063eb3b0ab31461087d578063f109921f14610897575b600034111561024e5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561025c57600080fd5b506102656108ac565b6040805160ff9092168252519081900360200190f35b34801561028757600080fd5b5061024e60ff600435166108bc565b3480156102a257600080fd5b506102ab61092a565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102e55781810151838201526020016102cd565b50505050905090810190601f1680156103125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032c57600080fd5b5061024e600160a060020a03600435166109b7565b34801561034d57600080fd5b50610365600160a060020a0360043516602435610a39565b604080519115158252519081900360200190f35b34801561038557600080fd5b5061038e610ae1565b60408051600160a060020a039092168252519081900360200190f35b3480156103b657600080fd5b5061038e610af0565b3480156103cb57600080fd5b506103d4610aff565b60408051918252519081900360200190f35b3480156103f257600080fd5b50610265610b43565b34801561040757600080fd5b5061024e600160a060020a0360043516610b51565b34801561042857600080fd5b50610365600160a060020a0360043581169060243516604435610bd3565b34801561045257600080fd5b50610365600160a060020a0360043516610f01565b34801561047357600080fd5b50610265610f16565b34801561048857600080fd5b50610365600160a060020a0360043516610f1f565b3480156104a957600080fd5b506103d4610f34565b3480156104be57600080fd5b5061024e60ff60043516610f3a565b3480156104d957600080fd5b50610365600160a060020a0360043516610fa9565b3480156104fa57600080fd5b5061024e600160a060020a0360043516610fbe565b34801561051b57600080fd5b5061024e6004351515611044565b34801561053557600080fd5b5061024e600160a060020a03600435166110a9565b34801561055657600080fd5b50610365600160a060020a036004351660243561112b565b34801561057a57600080fd5b5061024e600160a060020a0360043516611254565b34801561059b57600080fd5b506103d4600160a060020a0360043516611338565b3480156105bc57600080fd5b50610365611353565b3480156105d157600080fd5b5061024e600160a060020a036004351660243561135c565b3480156105f557600080fd5b5061024e600435611404565b34801561060d57600080fd5b5061024e600160a060020a03600435166114e5565b34801561062e57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261024e94369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506115c99650505050505050565b3480156106c557600080fd5b5061038e611612565b3480156106da57600080fd5b506102ab611627565b3480156106ef57600080fd5b5061024e600160a060020a0360043516611682565b34801561071057600080fd5b5061024e600160a060020a0360043516611840565b34801561073157600080fd5b5061024e600160a060020a036004351661188d565b34801561075257600080fd5b5061076a600160a060020a0360043516602435611913565b6040805192835260208301919091528051918290030190f35b34801561078f57600080fd5b50610365600160a060020a03600435166024356119b7565b3480156107b357600080fd5b50610365611c41565b3480156107c857600080fd5b5061024e60048035600160a060020a0316906024803591604435918201910135611c4f565b3480156107f957600080fd5b50610365600160a060020a0360043516602435611c54565b34801561081d57600080fd5b50610365600160a060020a0360043516602435611d23565b34801561084157600080fd5b506103d4600160a060020a0360043581169060243516611dec565b34801561086857600080fd5b5061024e600160a060020a0360043516611e17565b34801561088957600080fd5b5061024e6004351515611e9e565b3480156108a357600080fd5b50610265611ef8565b6002546301000000900460ff1681565b600454620100009004600160a060020a031633146108d957600080fd5b60025460ff630100000082048116916109039162010000909104811690841663ffffffff611f0716565b111561090e57600080fd5b6002805460ff9092166101000261ff0019909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b505050505081565b80600160a060020a03811615156109cd57600080fd5b600454620100009004600160a060020a031633146109ea57600080fd5b600160a060020a0382166000818152600b60209081526040808320805460ff19169055805193845290830191909152805160029260008051602061215483398151915292908290030190a25050565b60008115801590610a6c5750336000908152600960209081526040808320600160a060020a038716845290915290205415155b15610a7957506000610adb565b336000818152600960209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b600654600160a060020a031681565b600554600160a060020a031681565b600080805260086020527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c754600354610b3d9163ffffffff611f1716565b90505b90565b600254610100900460ff1681565b80600160a060020a0381161515610b6757600080fd5b600454620100009004600160a060020a03163314610b8457600080fd5b600160a060020a0382166000818152600c60209081526040808320805460ff19169055805193845290830191909152805160039260008051602061215483398151915292908290030190a25050565b60008080808086600160a060020a0381161515610bef57600080fd5b60045460ff1615610c0f5760009450600093506000925060009150610c2e565b610c198988611913565b9095509350610c288888611913565b90935091505b610c4e84610c42898863ffffffff611f0716565b9063ffffffff611f0716565b600160a060020a038a166000908152600860205260409020541015610c7257600080fd5b610c8684610c42898863ffffffff611f0716565b600160a060020a038a1660009081526009602090815260408083203384529091529020541015610cb557600080fd5b610cdf8989610cda85610cce8c8963ffffffff611f1716565b9063ffffffff611f1716565b611f2c565b9550851515610ced57600080fd5b600554610d0f908a90600160a060020a0316610cda888763ffffffff611f0716565b9550851515610d1d57600080fd5b600654610d3f908a90600160a060020a0316610cda878663ffffffff611f0716565b9550851515610d4d57600080fd5b610d89610d6485610c428a8963ffffffff611f0716565b600160a060020a038b166000908152600860205260409020549063ffffffff611f1716565b600160a060020a038a16600090815260086020526040902055610dde610db983610cce8a8763ffffffff611f1716565b600160a060020a038a166000908152600860205260409020549063ffffffff611f0716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054610e1c908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054610e5d908390610c42908763ffffffff611f0716565b600654600160a060020a03908116600090815260086020526040902091909155888116908a167f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89610eb5898863ffffffff611f0716565b610ec5898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a350600198975050505050505050565b600b6020526000908152604090205460ff1681565b60025460ff1681565b600a6020526000908152604090205460ff1681565b60035481565b600454620100009004600160a060020a03163314610f5757600080fd5b60025460ff63010000008204811691610f8091610100909104811690841663ffffffff611f0716565b1115610f8b57600080fd5b6002805460ff909216620100000262ff000019909216919091179055565b600c6020526000908152604090205460ff1681565b80600160a060020a0381161515610fd457600080fd5b600454620100009004600160a060020a03163314610ff157600080fd5b600160a060020a0382166000818152600b6020908152604091829020805460ff19166001908117909155825193845290830152805160029260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a0316331461106157600080fd5b6004805461ff0019166101008315159081029190911790915560408051600081526020810192909252805160059260008051602061215483398151915292908290030190a250565b80600160a060020a03811615156110bf57600080fd5b600454620100009004600160a060020a031633146110dc57600080fd5b600160a060020a0382166000818152600a60209081526040808320805460ff19169055805193845290830191909152805160019260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561114457600080fd5b600454620100009004600160a060020a0316331461116157600080fd5b336000908152600960209081526040808320600160a060020a03891684529091529020549150818411156111b857336000908152600960209081526040808320600160a060020a03891684529091528120556111ed565b6111c8828563ffffffff611f1716565b336000908152600960209081526040808320600160a060020a038a1684529091529020555b336000818152600960209081526040808320600160a060020a038a168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a3506001949350505050565b80600160a060020a038116151561126a57600080fd5b600454620100009004600160a060020a0316331461128757600080fd5b600654600160a060020a031615156112c6576006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790556112fd565b6004546006805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60065460408051600160a060020a03909216825260006020830152805160079260008051602061215483398151915292908290030190a25050565b600160a060020a031660009081526008602052604090205490565b60045460ff1681565b600454620100009004600160a060020a0316331461137957600080fd5b600160a060020a0382166000908152600860205260409020546113a2908263ffffffff611f0716565b600160a060020a0383166000908152600860205260409020556003546113ce908263ffffffff611f0716565b600355604080518281529051600160a060020a038416916000916000805160206121348339815191529181900360200190a35050565b600454620100009004600160a060020a0316331461142157600080fd5b600454620100009004600160a060020a031660009081526008602052604090205481111561144e57600080fd5b600454620100009004600160a060020a03166000908152600860205260409020546114799082611f17565b600454620100009004600160a060020a03166000908152600860205260409020556003546114a79082611f17565b600355600454604080518381529051600092620100009004600160a060020a031691600080516020612134833981519152919081900360200190a350565b80600160a060020a03811615156114fb57600080fd5b600454620100009004600160a060020a0316331461151857600080fd5b600554600160a060020a03161515611557576005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03841617905561158e565b6004546005805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60055460408051600160a060020a03909216825260006020830152805160069260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a031633146115e657600080fd5b81516115f990600190602085019061209b565b50805161160d90600090602084019061209b565b505050565b600454620100009004600160a060020a031681565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b600454600090620100009004600160a060020a031633146116a257600080fd5b81600160a060020a03811615156116b857600080fd5b600454620100009004600160a060020a0390811660009081526008602052604080822080546007805473ffffffffffffffffffffffffffffffffffffffff191689871617815591849055905490931682529020549092506117199083611f07565b60078054600160a060020a03908116600090815260086020908152604080832095909555835483168252600a815290849020805460ff19166001908117909155925484519216825281018290528251919260008051602061215483398151915292918290030190a2600754600454604080518581529051600160a060020a039384169362010000909304909216916000805160206121348339815191529181900360200190a3600754600454604051600160a060020a039283169262010000909204909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350506007546004805475ffffffffffffffffffffffffffffffffffffffff00001916600160a060020a03909216620100000291909117905550565b600454620100009004600160a060020a0316331461185d57600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f19350505050151561188a57fe5b50565b80600160a060020a03811615156118a357600080fd5b600454620100009004600160a060020a031633146118c057600080fd5b600160a060020a0382166000818152600c6020908152604091829020805460ff19166001908117909155825193845290830152805160039260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561192c57600080fd5b600160a060020a0385166000908152600a602052604090205460ff161561195957600092508291506119af565b60028054611987919061197b906103e89082908990610100900460ff16611ffe565b9063ffffffff61202a16565b600280549194506119ac9161197b906103e8908290899062010000900460ff16611ffe565b91505b509250929050565b60008080808086600160a060020a03811615156119d357600080fd5b60045460ff16156119f35760009450600093506000925060009150611a12565b6119fd3388611913565b9095509350611a0c8888611913565b90935091505b611a2684610c42898863ffffffff611f0716565b336000908152600860205260409020541015611a4157600080fd5b611a5a3389610cda85610cce8c8963ffffffff611f1716565b9550851515611a6857600080fd5b600554611a8a903390600160a060020a0316610cda888763ffffffff611f0716565b9550851515611a9857600080fd5b600654611aba903390600160a060020a0316610cda878663ffffffff611f0716565b9550851515611ac857600080fd5b611afb611adf85610c428a8963ffffffff611f0716565b336000908152600860205260409020549063ffffffff611f1716565b33600090815260086020526040902055611b22610db983610cce8a8763ffffffff611f1716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054611b60908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054611ba1908390610c42908763ffffffff611f0716565b600654600160a060020a039081166000908152600860205260409020919091558816337f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89611bf6898863ffffffff611f0716565b611c06898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a3506001979650505050505050565b600454610100900460ff1681565b600080fd5b600082600160a060020a0381161515611c6c57600080fd5b600454620100009004600160a060020a03163314611c8957600080fd5b336000908152600960209081526040808320600160a060020a0388168452909152902054611cbd908463ffffffff611f0716565b336000818152600960209081526040808320600160a060020a038a168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a35060019392505050565b600454600090620100009004600160a060020a03163314611d4357600080fd5b60048054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a036201000090930483169381019390935260248301859052519085169163a9059cbb9160448083019260209291908290030181600087803b158015611db957600080fd5b505af1158015611dcd573d6000803e3d6000fd5b505050506040513d6020811015611de357600080fd5b50519392505050565b600160a060020a03918216600090815260096020908152604080832093909416825291909152205490565b80600160a060020a0381161515611e2d57600080fd5b600454620100009004600160a060020a03163314611e4a57600080fd5b600160a060020a0382166000818152600a6020908152604091829020805460ff1916600190811790915582519384529083018190528151909260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a03163314611ebb57600080fd5b6004805460ff191682151590811782556040805160008152602081019290925280516000805160206121548339815191529281900390910190a250565b60025462010000900460ff1681565b81810182811015610adb57600080fd5b600082821115611f2657600080fd5b50900390565b600083600160a060020a0381161515611f4457600080fd5b83600160a060020a0381161515611f5a57600080fd5b600160a060020a0386166000908152600c602052604090205460ff1615611f8057600080fd5b600160a060020a0385166000908152600c602052604090205460ff1615611fa657600080fd5b611faf8561204b565b15611fb957600080fd5b84600160a060020a031686600160a060020a0316600080516020612134833981519152866040518082815260200191505060405180910390a350600195945050505050565b600082151561200f57506000610adb565b5081810281838281151561201f57fe5b0414610adb57600080fd5b600081151561203857600080fd5b818381151561204357fe5b049392505050565b600160a060020a0381166000908152600b6020526040812054819060ff168061207c5750600454610100900460ff16155b1561208a5760009150612095565b50506000813b908111905b50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106120dc57805160ff1916838001178555612109565b82800160010185558215612109579182015b828111156121095782518255916020019190600101906120ee565b50612115929150612119565b5090565b610b4091905b80821115612115576000815560010161211f5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efb2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610a165627a7a72305820043ece17aedfb6ed493545d4d3039e8949a45d3d1c8da726aad986dbceb657bc0029
Deployed Bytecode
0x60806040526004361061020e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301f59d168114610250578063059407281461027b57806306fdde031461029657806307b3996214610320578063095ea7b3146103415780630a792802146103795780630fbff868146103aa57806318160ddd146103bf5780631db3314a146103e6578063217987ad146103fb57806323b872dd1461041c5780632945aa3c14610446578063313ce56714610467578063372c12b11461047c5780633eaaf86b1461049d57806347c1b5cf146104b25780634838d165146104cd57806352ffff99146104ee578063532399d91461050f578063605e5ee114610529578063661884631461054a57806369bc513a1461056e57806370a082311461058f57806377e40491146105b057806379c65068146105c55780637b47ec1a146105e957806380f3f0941461060157806386575e40146106225780638da5cb5b146106b957806395d89b41146106ce578063986e7ed3146106e35780639a6a30a4146107045780639cfe42da14610725578063a109b8bd14610746578063a9059cbb14610783578063c0c6b4f1146107a7578063c0ee0b8a146107bc578063d73dd623146107ed578063dc39d06d14610811578063dd62ed3e14610835578063e7cd4a041461085c578063eb3b0ab31461087d578063f109921f14610897575b600034111561024e5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561025c57600080fd5b506102656108ac565b6040805160ff9092168252519081900360200190f35b34801561028757600080fd5b5061024e60ff600435166108bc565b3480156102a257600080fd5b506102ab61092a565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102e55781810151838201526020016102cd565b50505050905090810190601f1680156103125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032c57600080fd5b5061024e600160a060020a03600435166109b7565b34801561034d57600080fd5b50610365600160a060020a0360043516602435610a39565b604080519115158252519081900360200190f35b34801561038557600080fd5b5061038e610ae1565b60408051600160a060020a039092168252519081900360200190f35b3480156103b657600080fd5b5061038e610af0565b3480156103cb57600080fd5b506103d4610aff565b60408051918252519081900360200190f35b3480156103f257600080fd5b50610265610b43565b34801561040757600080fd5b5061024e600160a060020a0360043516610b51565b34801561042857600080fd5b50610365600160a060020a0360043581169060243516604435610bd3565b34801561045257600080fd5b50610365600160a060020a0360043516610f01565b34801561047357600080fd5b50610265610f16565b34801561048857600080fd5b50610365600160a060020a0360043516610f1f565b3480156104a957600080fd5b506103d4610f34565b3480156104be57600080fd5b5061024e60ff60043516610f3a565b3480156104d957600080fd5b50610365600160a060020a0360043516610fa9565b3480156104fa57600080fd5b5061024e600160a060020a0360043516610fbe565b34801561051b57600080fd5b5061024e6004351515611044565b34801561053557600080fd5b5061024e600160a060020a03600435166110a9565b34801561055657600080fd5b50610365600160a060020a036004351660243561112b565b34801561057a57600080fd5b5061024e600160a060020a0360043516611254565b34801561059b57600080fd5b506103d4600160a060020a0360043516611338565b3480156105bc57600080fd5b50610365611353565b3480156105d157600080fd5b5061024e600160a060020a036004351660243561135c565b3480156105f557600080fd5b5061024e600435611404565b34801561060d57600080fd5b5061024e600160a060020a03600435166114e5565b34801561062e57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261024e94369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506115c99650505050505050565b3480156106c557600080fd5b5061038e611612565b3480156106da57600080fd5b506102ab611627565b3480156106ef57600080fd5b5061024e600160a060020a0360043516611682565b34801561071057600080fd5b5061024e600160a060020a0360043516611840565b34801561073157600080fd5b5061024e600160a060020a036004351661188d565b34801561075257600080fd5b5061076a600160a060020a0360043516602435611913565b6040805192835260208301919091528051918290030190f35b34801561078f57600080fd5b50610365600160a060020a03600435166024356119b7565b3480156107b357600080fd5b50610365611c41565b3480156107c857600080fd5b5061024e60048035600160a060020a0316906024803591604435918201910135611c4f565b3480156107f957600080fd5b50610365600160a060020a0360043516602435611c54565b34801561081d57600080fd5b50610365600160a060020a0360043516602435611d23565b34801561084157600080fd5b506103d4600160a060020a0360043581169060243516611dec565b34801561086857600080fd5b5061024e600160a060020a0360043516611e17565b34801561088957600080fd5b5061024e6004351515611e9e565b3480156108a357600080fd5b50610265611ef8565b6002546301000000900460ff1681565b600454620100009004600160a060020a031633146108d957600080fd5b60025460ff630100000082048116916109039162010000909104811690841663ffffffff611f0716565b111561090e57600080fd5b6002805460ff9092166101000261ff0019909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b505050505081565b80600160a060020a03811615156109cd57600080fd5b600454620100009004600160a060020a031633146109ea57600080fd5b600160a060020a0382166000818152600b60209081526040808320805460ff19169055805193845290830191909152805160029260008051602061215483398151915292908290030190a25050565b60008115801590610a6c5750336000908152600960209081526040808320600160a060020a038716845290915290205415155b15610a7957506000610adb565b336000818152600960209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b600654600160a060020a031681565b600554600160a060020a031681565b600080805260086020527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c754600354610b3d9163ffffffff611f1716565b90505b90565b600254610100900460ff1681565b80600160a060020a0381161515610b6757600080fd5b600454620100009004600160a060020a03163314610b8457600080fd5b600160a060020a0382166000818152600c60209081526040808320805460ff19169055805193845290830191909152805160039260008051602061215483398151915292908290030190a25050565b60008080808086600160a060020a0381161515610bef57600080fd5b60045460ff1615610c0f5760009450600093506000925060009150610c2e565b610c198988611913565b9095509350610c288888611913565b90935091505b610c4e84610c42898863ffffffff611f0716565b9063ffffffff611f0716565b600160a060020a038a166000908152600860205260409020541015610c7257600080fd5b610c8684610c42898863ffffffff611f0716565b600160a060020a038a1660009081526009602090815260408083203384529091529020541015610cb557600080fd5b610cdf8989610cda85610cce8c8963ffffffff611f1716565b9063ffffffff611f1716565b611f2c565b9550851515610ced57600080fd5b600554610d0f908a90600160a060020a0316610cda888763ffffffff611f0716565b9550851515610d1d57600080fd5b600654610d3f908a90600160a060020a0316610cda878663ffffffff611f0716565b9550851515610d4d57600080fd5b610d89610d6485610c428a8963ffffffff611f0716565b600160a060020a038b166000908152600860205260409020549063ffffffff611f1716565b600160a060020a038a16600090815260086020526040902055610dde610db983610cce8a8763ffffffff611f1716565b600160a060020a038a166000908152600860205260409020549063ffffffff611f0716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054610e1c908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054610e5d908390610c42908763ffffffff611f0716565b600654600160a060020a03908116600090815260086020526040902091909155888116908a167f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89610eb5898863ffffffff611f0716565b610ec5898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a350600198975050505050505050565b600b6020526000908152604090205460ff1681565b60025460ff1681565b600a6020526000908152604090205460ff1681565b60035481565b600454620100009004600160a060020a03163314610f5757600080fd5b60025460ff63010000008204811691610f8091610100909104811690841663ffffffff611f0716565b1115610f8b57600080fd5b6002805460ff909216620100000262ff000019909216919091179055565b600c6020526000908152604090205460ff1681565b80600160a060020a0381161515610fd457600080fd5b600454620100009004600160a060020a03163314610ff157600080fd5b600160a060020a0382166000818152600b6020908152604091829020805460ff19166001908117909155825193845290830152805160029260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a0316331461106157600080fd5b6004805461ff0019166101008315159081029190911790915560408051600081526020810192909252805160059260008051602061215483398151915292908290030190a250565b80600160a060020a03811615156110bf57600080fd5b600454620100009004600160a060020a031633146110dc57600080fd5b600160a060020a0382166000818152600a60209081526040808320805460ff19169055805193845290830191909152805160019260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561114457600080fd5b600454620100009004600160a060020a0316331461116157600080fd5b336000908152600960209081526040808320600160a060020a03891684529091529020549150818411156111b857336000908152600960209081526040808320600160a060020a03891684529091528120556111ed565b6111c8828563ffffffff611f1716565b336000908152600960209081526040808320600160a060020a038a1684529091529020555b336000818152600960209081526040808320600160a060020a038a168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a3506001949350505050565b80600160a060020a038116151561126a57600080fd5b600454620100009004600160a060020a0316331461128757600080fd5b600654600160a060020a031615156112c6576006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790556112fd565b6004546006805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60065460408051600160a060020a03909216825260006020830152805160079260008051602061215483398151915292908290030190a25050565b600160a060020a031660009081526008602052604090205490565b60045460ff1681565b600454620100009004600160a060020a0316331461137957600080fd5b600160a060020a0382166000908152600860205260409020546113a2908263ffffffff611f0716565b600160a060020a0383166000908152600860205260409020556003546113ce908263ffffffff611f0716565b600355604080518281529051600160a060020a038416916000916000805160206121348339815191529181900360200190a35050565b600454620100009004600160a060020a0316331461142157600080fd5b600454620100009004600160a060020a031660009081526008602052604090205481111561144e57600080fd5b600454620100009004600160a060020a03166000908152600860205260409020546114799082611f17565b600454620100009004600160a060020a03166000908152600860205260409020556003546114a79082611f17565b600355600454604080518381529051600092620100009004600160a060020a031691600080516020612134833981519152919081900360200190a350565b80600160a060020a03811615156114fb57600080fd5b600454620100009004600160a060020a0316331461151857600080fd5b600554600160a060020a03161515611557576005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03841617905561158e565b6004546005805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60055460408051600160a060020a03909216825260006020830152805160069260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a031633146115e657600080fd5b81516115f990600190602085019061209b565b50805161160d90600090602084019061209b565b505050565b600454620100009004600160a060020a031681565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b600454600090620100009004600160a060020a031633146116a257600080fd5b81600160a060020a03811615156116b857600080fd5b600454620100009004600160a060020a0390811660009081526008602052604080822080546007805473ffffffffffffffffffffffffffffffffffffffff191689871617815591849055905490931682529020549092506117199083611f07565b60078054600160a060020a03908116600090815260086020908152604080832095909555835483168252600a815290849020805460ff19166001908117909155925484519216825281018290528251919260008051602061215483398151915292918290030190a2600754600454604080518581529051600160a060020a039384169362010000909304909216916000805160206121348339815191529181900360200190a3600754600454604051600160a060020a039283169262010000909204909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350506007546004805475ffffffffffffffffffffffffffffffffffffffff00001916600160a060020a03909216620100000291909117905550565b600454620100009004600160a060020a0316331461185d57600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f19350505050151561188a57fe5b50565b80600160a060020a03811615156118a357600080fd5b600454620100009004600160a060020a031633146118c057600080fd5b600160a060020a0382166000818152600c6020908152604091829020805460ff19166001908117909155825193845290830152805160039260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561192c57600080fd5b600160a060020a0385166000908152600a602052604090205460ff161561195957600092508291506119af565b60028054611987919061197b906103e89082908990610100900460ff16611ffe565b9063ffffffff61202a16565b600280549194506119ac9161197b906103e8908290899062010000900460ff16611ffe565b91505b509250929050565b60008080808086600160a060020a03811615156119d357600080fd5b60045460ff16156119f35760009450600093506000925060009150611a12565b6119fd3388611913565b9095509350611a0c8888611913565b90935091505b611a2684610c42898863ffffffff611f0716565b336000908152600860205260409020541015611a4157600080fd5b611a5a3389610cda85610cce8c8963ffffffff611f1716565b9550851515611a6857600080fd5b600554611a8a903390600160a060020a0316610cda888763ffffffff611f0716565b9550851515611a9857600080fd5b600654611aba903390600160a060020a0316610cda878663ffffffff611f0716565b9550851515611ac857600080fd5b611afb611adf85610c428a8963ffffffff611f0716565b336000908152600860205260409020549063ffffffff611f1716565b33600090815260086020526040902055611b22610db983610cce8a8763ffffffff611f1716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054611b60908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054611ba1908390610c42908763ffffffff611f0716565b600654600160a060020a039081166000908152600860205260409020919091558816337f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89611bf6898863ffffffff611f0716565b611c06898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a3506001979650505050505050565b600454610100900460ff1681565b600080fd5b600082600160a060020a0381161515611c6c57600080fd5b600454620100009004600160a060020a03163314611c8957600080fd5b336000908152600960209081526040808320600160a060020a0388168452909152902054611cbd908463ffffffff611f0716565b336000818152600960209081526040808320600160a060020a038a168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a35060019392505050565b600454600090620100009004600160a060020a03163314611d4357600080fd5b60048054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a036201000090930483169381019390935260248301859052519085169163a9059cbb9160448083019260209291908290030181600087803b158015611db957600080fd5b505af1158015611dcd573d6000803e3d6000fd5b505050506040513d6020811015611de357600080fd5b50519392505050565b600160a060020a03918216600090815260096020908152604080832093909416825291909152205490565b80600160a060020a0381161515611e2d57600080fd5b600454620100009004600160a060020a03163314611e4a57600080fd5b600160a060020a0382166000818152600a6020908152604091829020805460ff1916600190811790915582519384529083018190528151909260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a03163314611ebb57600080fd5b6004805460ff191682151590811782556040805160008152602081019290925280516000805160206121548339815191529281900390910190a250565b60025462010000900460ff1681565b81810182811015610adb57600080fd5b600082821115611f2657600080fd5b50900390565b600083600160a060020a0381161515611f4457600080fd5b83600160a060020a0381161515611f5a57600080fd5b600160a060020a0386166000908152600c602052604090205460ff1615611f8057600080fd5b600160a060020a0385166000908152600c602052604090205460ff1615611fa657600080fd5b611faf8561204b565b15611fb957600080fd5b84600160a060020a031686600160a060020a0316600080516020612134833981519152866040518082815260200191505060405180910390a350600195945050505050565b600082151561200f57506000610adb565b5081810281838281151561201f57fe5b0414610adb57600080fd5b600081151561203857600080fd5b818381151561204357fe5b049392505050565b600160a060020a0381166000908152600b6020526040812054819060ff168061207c5750600454610100900460ff16155b1561208a5760009150612095565b50506000813b908111905b50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106120dc57805160ff1916838001178555612109565b82800160010185558215612109579182015b828111156121095782518255916020019190600101906120ee565b50612115929150612119565b5090565b610b4091905b80821115612115576000815560010161211f5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efb2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610a165627a7a72305820043ece17aedfb6ed493545d4d3039e8949a45d3d1c8da726aad986dbceb657bc0029
Swarm Source
bzzr://043ece17aedfb6ed493545d4d3039e8949a45d3d1c8da726aad986dbceb657bc
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)