ERC-20
Overview
Max Total Supply
200,000,000 RED
Holders
1,690
Market
Price
$0.00 @ 0.000000 ETH (-8.74%)
Onchain Market Cap
$204,428.00
Circulating Supply Market Cap
$132,897.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
2,412 REDValue
$2.47 ( ~0.000744245228042577 Eth) [0.0012%]Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
REDToken
Compiler Version
v0.4.18+commit.9cf6e910
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-01-07 */ pragma solidity ^0.4.18; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ function Ownable() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0)); OwnershipTransferred(owner, newOwner); owner = newOwner; } } /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { uint256 public totalSupply; function balanceOf(address who) public view returns (uint256); function transfer(address to, uint256 value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public view returns (uint256); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); } contract REDToken is ERC20, Ownable { using SafeMath for uint; /*----------------- Token Information -----------------*/ string public constant name = "Red Community Token"; string public constant symbol = "RED"; uint8 public decimals = 18; // (ERC20 API) Decimal precision, factor is 1e18 mapping (address => uint256) angels; // Angels accounts table (during locking period only) mapping (address => uint256) accounts; // User's accounts table mapping (address => mapping (address => uint256)) allowed; // User's allowances table /*----------------- ICO Information -----------------*/ uint256 public angelSupply; // Angels sale supply uint256 public earlyBirdsSupply; // Early birds supply uint256 public publicSupply; // Open round supply uint256 public foundationSupply; // Red Foundation/Community supply uint256 public redTeamSupply; // Red team supply uint256 public marketingSupply; // Marketing & strategic supply uint256 public angelAmountRemaining; // Amount of private angels tokens remaining at a given time uint256 public icoStartsAt; // Crowdsale ending timestamp uint256 public icoEndsAt; // Crowdsale ending timestamp uint256 public redTeamLockingPeriod; // Locking period for Red team's supply uint256 public angelLockingPeriod; // Locking period for Angel's supply address public crowdfundAddress; // Crowdfunding contract address address public redTeamAddress; // Red team address address public foundationAddress; // Foundation address address public marketingAddress; // Private equity address bool public unlock20Done = false; // Allows the 20% unlocking for angels only once enum icoStages { Ready, // Initial state on contract's creation EarlyBirds, // Early birds state PublicSale, // Public crowdsale state Done // Ending state after ICO } icoStages stage; // Crowdfunding current state /*----------------- Events -----------------*/ event EarlyBirdsFinalized(uint tokensRemaining); // Event called when early birds round is done event CrowdfundFinalized(uint tokensRemaining); // Event called when crowdfund is done /*----------------- Modifiers -----------------*/ modifier nonZeroAddress(address _to) { // Ensures an address is provided require(_to != 0x0); _; } modifier nonZeroAmount(uint _amount) { // Ensures a non-zero amount require(_amount > 0); _; } modifier nonZeroValue() { // Ensures a non-zero value is passed require(msg.value > 0); _; } modifier onlyDuringCrowdfund(){ // Ensures actions can only happen after crowdfund ends require((now >= icoStartsAt) && (now < icoEndsAt)); _; } modifier notBeforeCrowdfundEnds(){ // Ensures actions can only happen after crowdfund ends require(now >= icoEndsAt); _; } modifier checkRedTeamLockingPeriod() { // Ensures locking period is over require(now >= redTeamLockingPeriod); _; } modifier checkAngelsLockingPeriod() { // Ensures locking period is over require(now >= angelLockingPeriod); _; } modifier onlyCrowdfund() { // Ensures only crowdfund can call the function require(msg.sender == crowdfundAddress); _; } /*----------------- ERC20 API -----------------*/ // ------------------------------------------------- // Transfers amount to address // ------------------------------------------------- function transfer(address _to, uint256 _amount) public notBeforeCrowdfundEnds returns (bool success) { require(accounts[msg.sender] >= _amount); // check amount of balance can be tranfered addToBalance(_to, _amount); decrementBalance(msg.sender, _amount); Transfer(msg.sender, _to, _amount); return true; } // ------------------------------------------------- // Transfers from one address to another (need allowance to be called first) // ------------------------------------------------- function transferFrom(address _from, address _to, uint256 _amount) public notBeforeCrowdfundEnds returns (bool success) { require(allowance(_from, msg.sender) >= _amount); decrementBalance(_from, _amount); addToBalance(_to, _amount); allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_amount); Transfer(_from, _to, _amount); return true; } // ------------------------------------------------- // Approves another address a certain amount of RED // ------------------------------------------------- function approve(address _spender, uint256 _value) public returns (bool success) { require((_value == 0) || (allowance(msg.sender, _spender) == 0)); allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); return true; } // ------------------------------------------------- // Gets an address's RED allowance // ------------------------------------------------- function allowance(address _owner, address _spender) public constant returns (uint256 remaining) { return allowed[_owner][_spender]; } // ------------------------------------------------- // Gets the RED balance of any address // ------------------------------------------------- function balanceOf(address _owner) public constant returns (uint256 balance) { return accounts[_owner] + angels[_owner]; } /*----------------- Token API -----------------*/ // ------------------------------------------------- // Contract's constructor // ------------------------------------------------- function REDToken() public { totalSupply = 200000000 * 1e18; // 100% - 200 million total RED with 18 decimals angelSupply = 20000000 * 1e18; // 10% - 20 million RED for private angels sale earlyBirdsSupply = 48000000 * 1e18; // 24% - 48 million RED for early-bird sale publicSupply = 12000000 * 1e18; // 6% - 12 million RED for the public crowdsale redTeamSupply = 30000000 * 1e18; // 15% - 30 million RED for Red team foundationSupply = 70000000 * 1e18; // 35% - 70 million RED for foundation/incentivising efforts marketingSupply = 20000000 * 1e18; // 10% - 20 million RED for covering marketing and strategic expenses angelAmountRemaining = angelSupply; // Decreased over the course of the private angel sale redTeamAddress = 0x31aa507c140E012d0DcAf041d482e04F36323B03; // Red Team address foundationAddress = 0x93e3AF42939C163Ee4146F63646Fb4C286CDbFeC; // Foundation/Community address marketingAddress = 0x0; // Marketing/Strategic address icoStartsAt = 1515398400; // Jan 8th 2018, 16:00, GMT+8 icoEndsAt = 1517385600; // Jan 31th 2018, 16:00, GMT+8 angelLockingPeriod = icoEndsAt.add(90 days); // 3 months locking period redTeamLockingPeriod = icoEndsAt.add(365 days); // 12 months locking period addToBalance(foundationAddress, foundationSupply); stage = icoStages.Ready; // Initializes state } // ------------------------------------------------- // Opens early birds sale // ------------------------------------------------- function startCrowdfund() external onlyCrowdfund onlyDuringCrowdfund returns(bool) { require(stage == icoStages.Ready); stage = icoStages.EarlyBirds; addToBalance(crowdfundAddress, earlyBirdsSupply); return true; } // ------------------------------------------------- // Returns TRUE if early birds round is currently going on // ------------------------------------------------- function isEarlyBirdsStage() external view returns(bool) { return (stage == icoStages.EarlyBirds); } // ------------------------------------------------- // Sets the crowdfund address, can only be done once // ------------------------------------------------- function setCrowdfundAddress(address _crowdfundAddress) external onlyOwner nonZeroAddress(_crowdfundAddress) { require(crowdfundAddress == 0x0); crowdfundAddress = _crowdfundAddress; } // ------------------------------------------------- // Function for the Crowdfund to transfer tokens // ------------------------------------------------- function transferFromCrowdfund(address _to, uint256 _amount) external onlyCrowdfund nonZeroAmount(_amount) nonZeroAddress(_to) returns (bool success) { require(balanceOf(crowdfundAddress) >= _amount); decrementBalance(crowdfundAddress, _amount); addToBalance(_to, _amount); Transfer(0x0, _to, _amount); return true; } // ------------------------------------------------- // Releases Red team supply after locking period is passed // ------------------------------------------------- function releaseRedTeamTokens() external checkRedTeamLockingPeriod onlyOwner returns(bool success) { require(redTeamSupply > 0); addToBalance(redTeamAddress, redTeamSupply); Transfer(0x0, redTeamAddress, redTeamSupply); redTeamSupply = 0; return true; } // ------------------------------------------------- // Releases Marketing & strategic supply // ------------------------------------------------- function releaseMarketingTokens() external onlyOwner returns(bool success) { require(marketingSupply > 0); addToBalance(marketingAddress, marketingSupply); Transfer(0x0, marketingAddress, marketingSupply); marketingSupply = 0; return true; } // ------------------------------------------------- // Finalizes early birds round. If some RED are left, let them overflow to the crowdfund // ------------------------------------------------- function finalizeEarlyBirds() external onlyOwner returns (bool success) { require(stage == icoStages.EarlyBirds); uint256 amount = balanceOf(crowdfundAddress); addToBalance(crowdfundAddress, publicSupply); stage = icoStages.PublicSale; EarlyBirdsFinalized(amount); // event log return true; } // ------------------------------------------------- // Finalizes crowdfund. If there are leftover RED, let them overflow to foundation // ------------------------------------------------- function finalizeCrowdfund() external onlyCrowdfund { require(stage == icoStages.PublicSale); uint256 amount = balanceOf(crowdfundAddress); if (amount > 0) { accounts[crowdfundAddress] = 0; addToBalance(foundationAddress, amount); Transfer(crowdfundAddress, foundationAddress, amount); } stage = icoStages.Done; CrowdfundFinalized(amount); // event log } // ------------------------------------------------- // Changes Red Team wallet // ------------------------------------------------- function changeRedTeamAddress(address _wallet) external onlyOwner { redTeamAddress = _wallet; } // ------------------------------------------------- // Changes Marketing&Strategic wallet // ------------------------------------------------- function changeMarketingAddress(address _wallet) external onlyOwner { marketingAddress = _wallet; } // ------------------------------------------------- // Function to unlock 20% RED to private angels investors // ------------------------------------------------- function partialUnlockAngelsAccounts(address[] _batchOfAddresses) external onlyOwner notBeforeCrowdfundEnds returns (bool success) { require(unlock20Done == false); uint256 amount; address holder; for (uint256 i = 0; i < _batchOfAddresses.length; i++) { holder = _batchOfAddresses[i]; amount = angels[holder].mul(20).div(100); angels[holder] = angels[holder].sub(amount); addToBalance(holder, amount); } unlock20Done = true; return true; } // ------------------------------------------------- // Function to unlock all remaining RED to private angels investors (after 3 months) // ------------------------------------------------- function fullUnlockAngelsAccounts(address[] _batchOfAddresses) external onlyOwner checkAngelsLockingPeriod returns (bool success) { uint256 amount; address holder; for (uint256 i = 0; i < _batchOfAddresses.length; i++) { holder = _batchOfAddresses[i]; amount = angels[holder]; angels[holder] = 0; addToBalance(holder, amount); } return true; } // ------------------------------------------------- // Function to reserve RED to private angels investors (initially locked) // the amount of RED is in Wei // ------------------------------------------------- function deliverAngelsREDAccounts(address[] _batchOfAddresses, uint[] _amountOfRED) external onlyOwner onlyDuringCrowdfund returns (bool success) { for (uint256 i = 0; i < _batchOfAddresses.length; i++) { deliverAngelsREDBalance(_batchOfAddresses[i], _amountOfRED[i]); } return true; } /*----------------- Helper functions -----------------*/ // ------------------------------------------------- // If one address has contributed more than once, // the contributions will be aggregated // ------------------------------------------------- function deliverAngelsREDBalance(address _accountHolder, uint _amountOfBoughtRED) internal onlyOwner { require(angelAmountRemaining > 0); angels[_accountHolder] = angels[_accountHolder].add(_amountOfBoughtRED); Transfer(0x0, _accountHolder, _amountOfBoughtRED); angelAmountRemaining = angelAmountRemaining.sub(_amountOfBoughtRED); } // ------------------------------------------------- // Adds to balance // ------------------------------------------------- function addToBalance(address _address, uint _amount) internal { accounts[_address] = accounts[_address].add(_amount); } // ------------------------------------------------- // Removes from balance // ------------------------------------------------- function decrementBalance(address _address, uint _amount) internal { accounts[_address] = accounts[_address].sub(_amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_wallet","type":"address"}],"name":"changeMarketingAddress","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":true,"inputs":[],"name":"icoStartsAt","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"redTeamSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_batchOfAddresses","type":"address[]"},{"name":"_amountOfRED","type":"uint256[]"}],"name":"deliverAngelsREDAccounts","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_batchOfAddresses","type":"address[]"}],"name":"partialUnlockAngelsAccounts","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"angelAmountRemaining","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"publicSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"icoEndsAt","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"marketingSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"crowdfundAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"redTeamAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_batchOfAddresses","type":"address[]"}],"name":"fullUnlockAngelsAccounts","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"foundationSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFromCrowdfund","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"angelLockingPeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"releaseRedTeamTokens","outputs":[{"name":"success","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":"redTeamLockingPeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"unlock20Done","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"startCrowdfund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_crowdfundAddress","type":"address"}],"name":"setCrowdfundAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"marketingAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"earlyBirdsSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalizeCrowdfund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finalizeEarlyBirds","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"angelSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isEarlyBirdsStage","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"releaseMarketingTokens","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_wallet","type":"address"}],"name":"changeRedTeamAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"foundationAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokensRemaining","type":"uint256"}],"name":"EarlyBirdsFinalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokensRemaining","type":"uint256"}],"name":"CrowdfundFinalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]
Contract Creation Code
6060604052600180547412000000000000000000000000000000000000000060a060020a60ff02199182161790915560138054909116905534156200004357600080fd5b60018054600160a060020a033316600160a060020a0319918216179091556aa56fa5b99019a5c80000006000556a108b2a2c2802909400000060058190556a27b46536c66c8e300000006006556a09ed194db19b238c0000006007556a18d0bf423c03d8de0000006009556a39e7139a8c08fa06000000600855600a819055600b556011805482167331aa507c140e012d0dcaf041d482e04f36323b031790556012805482167393e3af42939c163ee4146f63646fb4c286cdbfec179055601380549091169055635a532500600c55635a717780600d81905562000139906276a700640100000000620014146200019f82021704565b600f55600d546200015d906301e13380640100000000620014146200019f82021704565b600e556012546008546200018991600160a060020a031690640100000000620012de620001b682021704565b6013805460a860020a60ff021916905562000209565b600082820183811015620001af57fe5b9392505050565b600160a060020a038216600090815260036020526040902054620001e99082640100000000620014146200019f82021704565b600160a060020a0390921660009081526003602052604090209190915550565b61146f80620002196000396000f3006060604052600436106101ed5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663048dec3881146101f257806306fdde0314610213578063095ea7b31461029d57806313e5d8b6146102d357806318160ddd146102f857806323b872dd1461030b5780632448fe2f146103335780632b82714f14610346578063313ce567146103705780633acc271214610399578063402a1533146103b75780635e84d723146103ca5780636218fd8b146103dd578063624bb58f146103f057806370a082311461040357806372f74af81461042257806380f8d6881461045157806382d419f51461046457806382e6d3d6146104825780638ae8c1f3146104955780638b5406af146104b75780638c0bae5b146104ca5780638da5cb5b146104dd5780638dd21b0f146104f057806395d89b4114610503578063967743a8146105165780639a593b9a146105295780639f4f48081461053c578063a5ece9411461055b578063a9059cbb1461056e578063b27b075514610590578063b6c88977146105a3578063b798b129146105b6578063d7fb5ef5146105c9578063dbbd4865146105dc578063dc31adee146105ef578063dd62ed3e14610602578063f2fde38b14610627578063f77aa0ad14610646578063fcf07c6b14610665575b600080fd5b34156101fd57600080fd5b610211600160a060020a0360043516610678565b005b341561021e57600080fd5b6102266106c2565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561026257808201518382015260200161024a565b50505050905090810190601f16801561028f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102a857600080fd5b6102bf600160a060020a03600435166024356106f9565b604051901515815260200160405180910390f35b34156102de57600080fd5b6102e6610783565b60405190815260200160405180910390f35b341561030357600080fd5b6102e6610789565b341561031657600080fd5b6102bf600160a060020a036004358116906024351660443561078f565b341561033e57600080fd5b6102e661085d565b341561035157600080fd5b6102bf6024600480358281019290820135918135918201910135610863565b341561037b57600080fd5b6103836108fa565b60405160ff909116815260200160405180910390f35b34156103a457600080fd5b6102bf600480356024810191013561090a565b34156103c257600080fd5b6102e6610a50565b34156103d557600080fd5b6102e6610a56565b34156103e857600080fd5b6102e6610a5c565b34156103fb57600080fd5b6102e6610a62565b341561040e57600080fd5b6102e6600160a060020a0360043516610a68565b341561042d57600080fd5b610435610a90565b604051600160a060020a03909116815260200160405180910390f35b341561045c57600080fd5b610435610a9f565b341561046f57600080fd5b6102bf6004803560248101910135610aae565b341561048d57600080fd5b6102e6610b39565b34156104a057600080fd5b6102bf600160a060020a0360043516602435610b3f565b34156104c257600080fd5b6102e6610bfb565b34156104d557600080fd5b6102bf610c01565b34156104e857600080fd5b610435610c98565b34156104fb57600080fd5b6102e6610ca7565b341561050e57600080fd5b610226610cad565b341561052157600080fd5b6102bf610ce4565b341561053457600080fd5b6102bf610cf4565b341561054757600080fd5b610211600160a060020a0360043516610d98565b341561056657600080fd5b610435610e0f565b341561057957600080fd5b6102bf600160a060020a0360043516602435610e1e565b341561059b57600080fd5b6102e6610ea8565b34156105ae57600080fd5b610211610eae565b34156105c157600080fd5b6102bf610fdd565b34156105d457600080fd5b6102e66110c6565b34156105e757600080fd5b6102bf6110cc565b34156105fa57600080fd5b6102bf6110ee565b341561060d57600080fd5b6102e6600160a060020a0360043581169060243516611176565b341561063257600080fd5b610211600160a060020a03600435166111a1565b341561065157600080fd5b610211600160a060020a036004351661123c565b341561067057600080fd5b610435611286565b60015433600160a060020a0390811691161461069357600080fd5b6013805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60408051908101604052601381527f52656420436f6d6d756e69747920546f6b656e00000000000000000000000000602082015281565b600081158061070f575061070d3384611176565b155b151561071a57600080fd5b600160a060020a03338116600081815260046020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b600c5481565b60005481565b600d546000904210156107a157600080fd5b816107ac8533611176565b10156107b757600080fd5b6107c18483611295565b6107cb83836112de565b600160a060020a0380851660009081526004602090815260408083203390941683529290522054610802908363ffffffff61130716565b600160a060020a03808616600081815260046020908152604080832033861684529091529081902093909355908516916000805160206114248339815191529085905190815260200160405180910390a35060019392505050565b60095481565b600154600090819033600160a060020a0390811691161461088357600080fd5b600c5442101580156108965750600d5442105b15156108a157600080fd5b5060005b848110156108ee576108e68686838181106108bc57fe5b90506020020135600160a060020a031685858481811015156108da57fe5b90506020020135611319565b6001016108a5565b50600195945050505050565b60015460a060020a900460ff1681565b60015460009081908190819033600160a060020a0390811691161461092e57600080fd5b600d5442101561093d57600080fd5b60135460a060020a900460ff161561095457600080fd5b5060005b84811015610a1f5785858281811061096c57fe5b90506020020135600160a060020a031691506109c860646109bc60146002600087600160a060020a0316600160a060020a03168152602001908152602001600020546113c790919063ffffffff16565b9063ffffffff6113fd16565b600160a060020a0383166000908152600260205260409020549093506109f4908463ffffffff61130716565b600160a060020a038316600090815260026020526040902055610a1782846112de565b600101610958565b6013805474ff0000000000000000000000000000000000000000191660a060020a1790556001935050505092915050565b600b5481565b60075481565b600d5481565b600a5481565b600160a060020a03166000908152600260209081526040808320546003909252909120540190565b601054600160a060020a031681565b601154600160a060020a031681565b60015460009081908190819033600160a060020a03908116911614610ad257600080fd5b600f54421015610ae157600080fd5b5060005b848110156108ee57858582818110610af957fe5b60209081029290920135600160a060020a031660008181526002909352604083208054939055919450909250610b31905082846112de565b600101610ae5565b60085481565b60105460009033600160a060020a03908116911614610b5d57600080fd5b8160008111610b6b57600080fd5b83600160a060020a0381161515610b8157600080fd5b6010548490610b9890600160a060020a0316610a68565b1015610ba357600080fd5b601054610bb990600160a060020a031685611295565b610bc385856112de565b84600160a060020a031660006000805160206114248339815191528660405190815260200160405180910390a3506001949350505050565b600f5481565b600e54600090421015610c1357600080fd5b60015433600160a060020a03908116911614610c2e57600080fd5b60095460009011610c3e57600080fd5b601154600954610c5791600160a060020a0316906112de565b601154600954600160a060020a03909116906000906000805160206114248339815191529060405190815260200160405180910390a3506000600955600190565b600154600160a060020a031681565b600e5481565b60408051908101604052600381527f5245440000000000000000000000000000000000000000000000000000000000602082015281565b60135460a060020a900460ff1681565b60105460009033600160a060020a03908116911614610d1257600080fd5b600c544210158015610d255750600d5442105b1515610d3057600080fd5b600060135460a860020a900460ff166003811115610d4a57fe5b14610d5457600080fd5b6013805475ff000000000000000000000000000000000000000000191660a860020a179055601054600654610d9291600160a060020a0316906112de565b50600190565b60015433600160a060020a03908116911614610db357600080fd5b80600160a060020a0381161515610dc957600080fd5b601054600160a060020a031615610ddf57600080fd5b506010805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b601354600160a060020a031681565b600d54600090421015610e3057600080fd5b600160a060020a03331660009081526003602052604090205482901015610e5657600080fd5b610e6083836112de565b610e6a3383611295565b82600160a060020a031633600160a060020a03166000805160206114248339815191528460405190815260200160405180910390a350600192915050565b60065481565b60105460009033600160a060020a03908116911614610ecc57600080fd5b600260135460a860020a900460ff166003811115610ee657fe5b14610ef057600080fd5b601054610f0590600160a060020a0316610a68565b90506000811115610f7057601054600160a060020a03908116600090815260036020526040812055601254610f3b9116826112de565b601254601054600160a060020a0391821691166000805160206114248339815191528360405190815260200160405180910390a35b6013805475ff000000000000000000000000000000000000000000191675030000000000000000000000000000000000000000001790557f35ff217d4f104e308e4be44a10590a96e26a9b45e5908ebc9c13498904343f938160405190815260200160405180910390a150565b600154600090819033600160a060020a03908116911614610ffd57600080fd5b600160135460a860020a900460ff16600381111561101757fe5b1461102157600080fd5b60105461103690600160a060020a0316610a68565b60105460075491925061105491600160a060020a03909116906112de565b6013805475ff000000000000000000000000000000000000000000191675020000000000000000000000000000000000000000001790557f0c4d6bdff8d101bac655226cb6358667ddade3009648cf5c4c396dce70001db38160405190815260200160405180910390a1600191505090565b60055481565b6000600160135460a860020a900460ff1660038111156110e857fe5b14905090565b60015460009033600160a060020a0390811691161461110c57600080fd5b600a546000901161111c57600080fd5b601354600a5461113591600160a060020a0316906112de565b601354600a54600160a060020a03909116906000906000805160206114248339815191529060405190815260200160405180910390a3506000600a55600190565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205490565b60015433600160a060020a039081169116146111bc57600080fd5b600160a060020a03811615156111d157600080fd5b600154600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60015433600160a060020a0390811691161461125757600080fd5b6011805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b601254600160a060020a031681565b600160a060020a0382166000908152600360205260409020546112be908263ffffffff61130716565b600160a060020a0390921660009081526003602052604090209190915550565b600160a060020a0382166000908152600360205260409020546112be908263ffffffff61141416565b60008282111561131357fe5b50900390565b60015433600160a060020a0390811691161461133457600080fd5b600b546000901161134457600080fd5b600160a060020a03821660009081526002602052604090205461136d908263ffffffff61141416565b600160a060020a0383166000818152600260205260408082209390935590916000805160206114248339815191529084905190815260200160405180910390a3600b546113c0908263ffffffff61130716565b600b555050565b6000808315156113da57600091506113f6565b508282028284828115156113ea57fe5b04146113f257fe5b8091505b5092915050565b600080828481151561140b57fe5b04949350505050565b6000828201838110156113f257fe00ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582052ffc228227c3d1a81ff21cb70452dda679c8ef07a0651d8e8b0ff96e8e9eefa0029
Deployed Bytecode
0x6060604052600436106101ed5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663048dec3881146101f257806306fdde0314610213578063095ea7b31461029d57806313e5d8b6146102d357806318160ddd146102f857806323b872dd1461030b5780632448fe2f146103335780632b82714f14610346578063313ce567146103705780633acc271214610399578063402a1533146103b75780635e84d723146103ca5780636218fd8b146103dd578063624bb58f146103f057806370a082311461040357806372f74af81461042257806380f8d6881461045157806382d419f51461046457806382e6d3d6146104825780638ae8c1f3146104955780638b5406af146104b75780638c0bae5b146104ca5780638da5cb5b146104dd5780638dd21b0f146104f057806395d89b4114610503578063967743a8146105165780639a593b9a146105295780639f4f48081461053c578063a5ece9411461055b578063a9059cbb1461056e578063b27b075514610590578063b6c88977146105a3578063b798b129146105b6578063d7fb5ef5146105c9578063dbbd4865146105dc578063dc31adee146105ef578063dd62ed3e14610602578063f2fde38b14610627578063f77aa0ad14610646578063fcf07c6b14610665575b600080fd5b34156101fd57600080fd5b610211600160a060020a0360043516610678565b005b341561021e57600080fd5b6102266106c2565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561026257808201518382015260200161024a565b50505050905090810190601f16801561028f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102a857600080fd5b6102bf600160a060020a03600435166024356106f9565b604051901515815260200160405180910390f35b34156102de57600080fd5b6102e6610783565b60405190815260200160405180910390f35b341561030357600080fd5b6102e6610789565b341561031657600080fd5b6102bf600160a060020a036004358116906024351660443561078f565b341561033e57600080fd5b6102e661085d565b341561035157600080fd5b6102bf6024600480358281019290820135918135918201910135610863565b341561037b57600080fd5b6103836108fa565b60405160ff909116815260200160405180910390f35b34156103a457600080fd5b6102bf600480356024810191013561090a565b34156103c257600080fd5b6102e6610a50565b34156103d557600080fd5b6102e6610a56565b34156103e857600080fd5b6102e6610a5c565b34156103fb57600080fd5b6102e6610a62565b341561040e57600080fd5b6102e6600160a060020a0360043516610a68565b341561042d57600080fd5b610435610a90565b604051600160a060020a03909116815260200160405180910390f35b341561045c57600080fd5b610435610a9f565b341561046f57600080fd5b6102bf6004803560248101910135610aae565b341561048d57600080fd5b6102e6610b39565b34156104a057600080fd5b6102bf600160a060020a0360043516602435610b3f565b34156104c257600080fd5b6102e6610bfb565b34156104d557600080fd5b6102bf610c01565b34156104e857600080fd5b610435610c98565b34156104fb57600080fd5b6102e6610ca7565b341561050e57600080fd5b610226610cad565b341561052157600080fd5b6102bf610ce4565b341561053457600080fd5b6102bf610cf4565b341561054757600080fd5b610211600160a060020a0360043516610d98565b341561056657600080fd5b610435610e0f565b341561057957600080fd5b6102bf600160a060020a0360043516602435610e1e565b341561059b57600080fd5b6102e6610ea8565b34156105ae57600080fd5b610211610eae565b34156105c157600080fd5b6102bf610fdd565b34156105d457600080fd5b6102e66110c6565b34156105e757600080fd5b6102bf6110cc565b34156105fa57600080fd5b6102bf6110ee565b341561060d57600080fd5b6102e6600160a060020a0360043581169060243516611176565b341561063257600080fd5b610211600160a060020a03600435166111a1565b341561065157600080fd5b610211600160a060020a036004351661123c565b341561067057600080fd5b610435611286565b60015433600160a060020a0390811691161461069357600080fd5b6013805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60408051908101604052601381527f52656420436f6d6d756e69747920546f6b656e00000000000000000000000000602082015281565b600081158061070f575061070d3384611176565b155b151561071a57600080fd5b600160a060020a03338116600081815260046020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b600c5481565b60005481565b600d546000904210156107a157600080fd5b816107ac8533611176565b10156107b757600080fd5b6107c18483611295565b6107cb83836112de565b600160a060020a0380851660009081526004602090815260408083203390941683529290522054610802908363ffffffff61130716565b600160a060020a03808616600081815260046020908152604080832033861684529091529081902093909355908516916000805160206114248339815191529085905190815260200160405180910390a35060019392505050565b60095481565b600154600090819033600160a060020a0390811691161461088357600080fd5b600c5442101580156108965750600d5442105b15156108a157600080fd5b5060005b848110156108ee576108e68686838181106108bc57fe5b90506020020135600160a060020a031685858481811015156108da57fe5b90506020020135611319565b6001016108a5565b50600195945050505050565b60015460a060020a900460ff1681565b60015460009081908190819033600160a060020a0390811691161461092e57600080fd5b600d5442101561093d57600080fd5b60135460a060020a900460ff161561095457600080fd5b5060005b84811015610a1f5785858281811061096c57fe5b90506020020135600160a060020a031691506109c860646109bc60146002600087600160a060020a0316600160a060020a03168152602001908152602001600020546113c790919063ffffffff16565b9063ffffffff6113fd16565b600160a060020a0383166000908152600260205260409020549093506109f4908463ffffffff61130716565b600160a060020a038316600090815260026020526040902055610a1782846112de565b600101610958565b6013805474ff0000000000000000000000000000000000000000191660a060020a1790556001935050505092915050565b600b5481565b60075481565b600d5481565b600a5481565b600160a060020a03166000908152600260209081526040808320546003909252909120540190565b601054600160a060020a031681565b601154600160a060020a031681565b60015460009081908190819033600160a060020a03908116911614610ad257600080fd5b600f54421015610ae157600080fd5b5060005b848110156108ee57858582818110610af957fe5b60209081029290920135600160a060020a031660008181526002909352604083208054939055919450909250610b31905082846112de565b600101610ae5565b60085481565b60105460009033600160a060020a03908116911614610b5d57600080fd5b8160008111610b6b57600080fd5b83600160a060020a0381161515610b8157600080fd5b6010548490610b9890600160a060020a0316610a68565b1015610ba357600080fd5b601054610bb990600160a060020a031685611295565b610bc385856112de565b84600160a060020a031660006000805160206114248339815191528660405190815260200160405180910390a3506001949350505050565b600f5481565b600e54600090421015610c1357600080fd5b60015433600160a060020a03908116911614610c2e57600080fd5b60095460009011610c3e57600080fd5b601154600954610c5791600160a060020a0316906112de565b601154600954600160a060020a03909116906000906000805160206114248339815191529060405190815260200160405180910390a3506000600955600190565b600154600160a060020a031681565b600e5481565b60408051908101604052600381527f5245440000000000000000000000000000000000000000000000000000000000602082015281565b60135460a060020a900460ff1681565b60105460009033600160a060020a03908116911614610d1257600080fd5b600c544210158015610d255750600d5442105b1515610d3057600080fd5b600060135460a860020a900460ff166003811115610d4a57fe5b14610d5457600080fd5b6013805475ff000000000000000000000000000000000000000000191660a860020a179055601054600654610d9291600160a060020a0316906112de565b50600190565b60015433600160a060020a03908116911614610db357600080fd5b80600160a060020a0381161515610dc957600080fd5b601054600160a060020a031615610ddf57600080fd5b506010805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b601354600160a060020a031681565b600d54600090421015610e3057600080fd5b600160a060020a03331660009081526003602052604090205482901015610e5657600080fd5b610e6083836112de565b610e6a3383611295565b82600160a060020a031633600160a060020a03166000805160206114248339815191528460405190815260200160405180910390a350600192915050565b60065481565b60105460009033600160a060020a03908116911614610ecc57600080fd5b600260135460a860020a900460ff166003811115610ee657fe5b14610ef057600080fd5b601054610f0590600160a060020a0316610a68565b90506000811115610f7057601054600160a060020a03908116600090815260036020526040812055601254610f3b9116826112de565b601254601054600160a060020a0391821691166000805160206114248339815191528360405190815260200160405180910390a35b6013805475ff000000000000000000000000000000000000000000191675030000000000000000000000000000000000000000001790557f35ff217d4f104e308e4be44a10590a96e26a9b45e5908ebc9c13498904343f938160405190815260200160405180910390a150565b600154600090819033600160a060020a03908116911614610ffd57600080fd5b600160135460a860020a900460ff16600381111561101757fe5b1461102157600080fd5b60105461103690600160a060020a0316610a68565b60105460075491925061105491600160a060020a03909116906112de565b6013805475ff000000000000000000000000000000000000000000191675020000000000000000000000000000000000000000001790557f0c4d6bdff8d101bac655226cb6358667ddade3009648cf5c4c396dce70001db38160405190815260200160405180910390a1600191505090565b60055481565b6000600160135460a860020a900460ff1660038111156110e857fe5b14905090565b60015460009033600160a060020a0390811691161461110c57600080fd5b600a546000901161111c57600080fd5b601354600a5461113591600160a060020a0316906112de565b601354600a54600160a060020a03909116906000906000805160206114248339815191529060405190815260200160405180910390a3506000600a55600190565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205490565b60015433600160a060020a039081169116146111bc57600080fd5b600160a060020a03811615156111d157600080fd5b600154600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60015433600160a060020a0390811691161461125757600080fd5b6011805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b601254600160a060020a031681565b600160a060020a0382166000908152600360205260409020546112be908263ffffffff61130716565b600160a060020a0390921660009081526003602052604090209190915550565b600160a060020a0382166000908152600360205260409020546112be908263ffffffff61141416565b60008282111561131357fe5b50900390565b60015433600160a060020a0390811691161461133457600080fd5b600b546000901161134457600080fd5b600160a060020a03821660009081526002602052604090205461136d908263ffffffff61141416565b600160a060020a0383166000818152600260205260408082209390935590916000805160206114248339815191529084905190815260200160405180910390a3600b546113c0908263ffffffff61130716565b600b555050565b6000808315156113da57600091506113f6565b508282028284828115156113ea57fe5b04146113f257fe5b8091505b5092915050565b600080828481151561140b57fe5b04949350505050565b6000828201838110156113f257fe00ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582052ffc228227c3d1a81ff21cb70452dda679c8ef07a0651d8e8b0ff96e8e9eefa0029
Swarm Source
bzzr://52ffc228227c3d1a81ff21cb70452dda679c8ef07a0651d8e8b0ff96e8e9eefa
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.