Sponsored Link:  Download the Monaco app for Android and iOS on Aug 31 - www.mona.co
Contract Overview
ETH Balance: 0 Ether
ETH USD Value: $0
No Of Transactions: 4 txns
  Latest 4 txns

TxHash Age From To Value [TxFee]
0xa04ee280272142a594862ea4aead315864d3e3fd889afbeb0188d24bbbc8f417220 days 19 hrs ago0x5de92686587b10cd47e03b71f2e2350606fcaf14  IN   0xc5a1443d41ea9a694a8ebd999b9bced08cf4ca900 Ether0.000575375396
0x002a1a8fedb4fb2a493029d6d24c98833ca11cbac666b93e57dad2dcebc97d83220 days 19 hrs ago0x5de92686587b10cd47e03b71f2e2350606fcaf14  IN   0xc5a1443d41ea9a694a8ebd999b9bced08cf4ca900 Ether0.000871073031
0xacbb60c13db0b93fa21ed4ddd9eb3b921f876ce1edd321d43a1c159d2fa7bfe9220 days 19 hrs ago0x5de92686587b10cd47e03b71f2e2350606fcaf14  IN   0xc5a1443d41ea9a694a8ebd999b9bced08cf4ca900 Ether0.001051831585
0xbfe44f56d77f2b9d8c1dc5b47288e5f93166899acc187b09340762291f7fde0a220 days 19 hrs ago0x5de92686587b10cd47e03b71f2e2350606fcaf14  IN    Contract Creation0 Ether0.022814297484
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Warning: The compiled contract might be susceptible to DelegateCallReturnValue (low-severity), ECRecoverMalformedInput (medium-severity), SkipEmptyStringLiteral (low-severity), ConstantOptimizerSubtraction (low-severity) Solidity compiler bugs.

Contract Source Code Verified
Contract Name: EtherollToken
Compiler Version: v0.4.8+commit.60cc1668
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
pragma solidity ^0.4.2;

/* 
`* is owned
*/
contract owned {

    address public owner;

    function owned() {
        owner = msg.sender;
    }

    modifier onlyOwner {
        if (msg.sender != owner) throw;
        _;
    }

    function ownerTransferOwnership(address newOwner)
        onlyOwner
    {
        owner = newOwner;
    }

}

/* 
* safe math
*/
contract DSSafeAddSub {

    function safeToAdd(uint a, uint b) internal returns (bool) {
        return (a + b >= a);
    }
    
    function safeAdd(uint a, uint b) internal returns (uint) {
        if (!safeToAdd(a, b)) throw;
        return a + b;
    }

    function safeToSubtract(uint a, uint b) internal returns (bool) {
        return (b <= a);
    }

    function safeSub(uint a, uint b) internal returns (uint) {
        if (!safeToSubtract(a, b)) throw;
        return a - b;
    } 

}


/**
 *
 * @title  EtherollToken
 * 
 * The official token powering etheroll.
 * EtherollToken is a ERC.20 standard token with some custom functionality
 *
 */ 


contract EtherollToken is owned, DSSafeAddSub {

    /* check address */
    modifier onlyBy(address _account) {
        if (msg.sender != _account) throw;
        _;
    }    

    /* vars */
    string public standard = 'Token 1.0';
    string public name = "DICE";
    string public symbol = "ROL";
    uint8 public decimals = 16;
    uint public totalSupply = 250000000000000000000000; 

    address public priviledgedAddress;  
    bool public tokensFrozen;
    uint public crowdfundDeadline = now + 2 * 1 weeks;       
    uint public nextFreeze = now + 12 * 1 weeks;
    uint public nextThaw = now + 13 * 1 weeks;
   

    /* map balances */
    mapping (address => uint) public balanceOf;
    mapping (address => mapping (address => uint)) public allowance;  

    /* events */
    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
    event LogTokensFrozen(bool indexed Frozen);    

    /*
    *  @notice sends all tokens to msg.sender on init    
    */  
    function EtherollToken(){
        /* send creator all initial tokens 25,000,000 */
        balanceOf[msg.sender] = 250000000000000000000000;
        /* tokens are not frozen */  
        tokensFrozen = false;                                      

    }  

    /*
    *  @notice public function    
    *  @param _to address to send tokens to   
    *  @param _value number of tokens to transfer 
    *  @returns boolean success         
    */     
    function transfer(address _to, uint _value) public
        returns (bool success)    
    {
        if(tokensFrozen && msg.sender != priviledgedAddress) return false;  /* transfer only by priviledgedAddress during crowdfund or reward phases */
        if (balanceOf[msg.sender] < _value) return false;                   /* check if the sender has enough */
        if (balanceOf[_to] + _value < balanceOf[_to]) return false;         /* check for overflows */              
        balanceOf[msg.sender] -=  _value;                                   /* subtract from the sender */
        balanceOf[_to] += _value;                                           /* add the same to the recipient */
        Transfer(msg.sender, _to, _value);                                  /* notify anyone listening that this transfer took place */
        return true;
    }      

    /*
    *  @notice public function    
    *  @param _from address to send tokens from 
    *  @param _to address to send tokens to   
    *  @param _value number of tokens to transfer     
    *  @returns boolean success      
    *  another contract attempts to spend tokens on your behalf
    */       
    function transferFrom(address _from, address _to, uint _value) public
        returns (bool success) 
    {                
        if(tokensFrozen && msg.sender != priviledgedAddress) return false;  /* transfer only by priviledgedAddress during crowdfund or reward phases */
        if (balanceOf[_from] < _value) return false;                        /* check if the sender has enough */
        if (balanceOf[_to] + _value < balanceOf[_to]) return false;         /* check for overflows */                
        if (_value > allowance[_from][msg.sender]) return false;            /* check allowance */
        balanceOf[_from] -= _value;                                         /* subtract from the sender */
        balanceOf[_to] += _value;                                           /* add the same to the recipient */
        allowance[_from][msg.sender] -= _value;                             /* reduce allowance */
        Transfer(_from, _to, _value);                                       /* notify anyone listening that this transfer took place */
        return true;
    }        
 
    /*
    *  @notice public function    
    *  @param _spender address being granted approval to spend on behalf of msg.sender
    *  @param _value number of tokens granted approval for _spender to spend on behalf of msg.sender    
    *  @returns boolean success      
    *  approves another contract to spend some tokens on your behalf
    */      
    function approve(address _spender, uint _value) public
        returns (bool success)
    {
        /* set allowance for _spender on behalf of msg.sender */
        allowance[msg.sender][_spender] = _value;

        /* log event about transaction */
        Approval(msg.sender, _spender, _value);        
        return true;
    } 
  
    /*
    *  @notice address restricted function 
    *  crowdfund contract calls this to burn its unsold coins 
    */     
    function priviledgedAddressBurnUnsoldCoins() public
        /* only crowdfund contract can call this */
        onlyBy(priviledgedAddress)
    {
        /* totalSupply should equal total tokens in circulation */
        totalSupply = safeSub(totalSupply, balanceOf[priviledgedAddress]); 
        /* burns unsold tokens from crowdfund address */
        balanceOf[priviledgedAddress] = 0;
    }

    /*
    *  @notice public function 
    *  locks/unlocks tokens on a recurring cycle
    */         
    function updateTokenStatus() public
    {
        
        /* locks tokens during initial crowdfund period */
        if(now < crowdfundDeadline){                       
            tokensFrozen = true;         
            LogTokensFrozen(tokensFrozen);  
        }  

        /* locks tokens */
        if(now >= nextFreeze){          
            tokensFrozen = true;
            LogTokensFrozen(tokensFrozen);  
        }

        /* unlocks tokens */
        if(now >= nextThaw){         
            tokensFrozen = false;
            nextFreeze = now + 12 * 1 weeks;
            nextThaw = now + 13 * 1 weeks;              
            LogTokensFrozen(tokensFrozen);  
        }        
      
    }                              

    /*
    *  @notice owner restricted function
    *  @param _newPriviledgedAddress the address
    *  only this address can burn unsold tokens
    *  transfer tokens only by priviledgedAddress during crowdfund or reward phases
    */      
    function ownerSetPriviledgedAddress(address _newPriviledgedAddress) public 
        onlyOwner
    {
        priviledgedAddress = _newPriviledgedAddress;
    }   
                    
    
}

  Contract ABI  
[{"constant":false,"inputs":[{"name":"_newPriviledgedAddress","type":"address"}],"name":"ownerSetPriviledgedAddress","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"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,"type":"function"},{"constant":false,"inputs":[],"name":"updateTokenStatus","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"tokensFrozen","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"nextThaw","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"priviledgedAddressBurnUnsoldCoins","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"crowdfundDeadline","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"nextFreeze","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"priviledgedAddress","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"ownerTransferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"Frozen","type":"bool"}],"name":"LogTokensFrozen","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60a0604052600960608190527f546f6b656e20312e30000000000000000000000000000000000000000000000060809081526001805460008290527f546f6b656e20312e300000000000000000000000000000000000000000000012825590927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf66020600284871615610100026000190190941693909304601f0192909204820192909190620000da565b82800160010185558215620000da579182015b82811115620000da578251825591602001919060010190620000bd565b5b50620000fe9291505b80821115620000fa5760008155600101620000e4565b5090565b50506040805180820190915260048082527f444943450000000000000000000000000000000000000000000000000000000060209283019081526002805460008290528251600860ff1990911617825590937f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace60018316156101000260001901909216859004601f010481019291620001c2565b82800160010185558215620001c2579182015b82811115620001c2578251825591602001919060010190620001a5565b5b50620001e69291505b80821115620000fa5760008155600101620000e4565b5090565b5050604060405190810160405280600381526020017f524f4c000000000000000000000000000000000000000000000000000000000081525060039080519060200190828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200026c57805160ff19168380011785556200029c565b828001600101855582156200029c579182015b828111156200029c5782518255916020019190600101906200027f565b5b50620002c09291505b80821115620000fa5760008155600101620000e4565b5090565b50506004805460ff191660101790556934f086f3b33b684000006005556212750042908101600755626ebe0081016008556277f880016009553462000000575b5b60008054600160a060020a03191633600160a060020a03161790555b600160a060020a0333166000908152600a602052604090206934f086f3b33b6840000090556006805460a060020a60ff02191690555b5b610c3680620003646000396000f300606060405236156100f65763ffffffff60e060020a600035041663040ea2f481146100fb57806306fdde0314610116578063095ea7b3146101a357806318160ddd146101d357806323b872dd146101f257806325ffba04146102285780632efa79d314610237578063313ce5671461025857806358e879f31461027b5780635a3b7e421461029a5780636410c41a1461032757806370a08231146103365780638480021c146103615780638b64574b146103805780638da5cb5b1461039f578063937c0cdf146103c857806395d89b41146103f1578063a09cca931461047e578063a9059cbb14610499578063dd62ed3e146104c9575b610000565b3461000057610114600160a060020a03600435166104fa565b005b3461000057610123610542565b604080516020808252835181830152835191928392908301918501908083838215610169575b80518252602083111561016957601f199092019160209182019101610149565b505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576101bf600160a060020a03600435166024356105cd565b604080519115158252519081900360200190f35b34610000576101e0610638565b60408051918252519081900360200190f35b34610000576101bf600160a060020a036004358116906024351660443561063e565b604080519115158252519081900360200190f35b346100005761011461078b565b005b34610000576101bf61089f565b604080519115158252519081900360200190f35b34610000576102656108af565b6040805160ff9092168252519081900360200190f35b34610000576101e06108b8565b60408051918252519081900360200190f35b34610000576101236108be565b604080516020808252835181830152835191928392908301918501908083838215610169575b80518252602083111561016957601f199092019160209182019101610149565b505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b346100005761011461094b565b005b34610000576101e0600160a060020a03600435166109b2565b60408051918252519081900360200190f35b34610000576101e06109c4565b60408051918252519081900360200190f35b34610000576101e06109ca565b60408051918252519081900360200190f35b34610000576103ac6109d0565b60408051600160a060020a039092168252519081900360200190f35b34610000576103ac6109df565b60408051600160a060020a039092168252519081900360200190f35b34610000576101236109ee565b604080516020808252835181830152835191928392908301918501908083838215610169575b80518252602083111561016957601f199092019160209182019101610149565b505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3461000057610114600160a060020a0360043516610a7c565b005b34610000576101bf600160a060020a0360043516602435610ac4565b604080519115158252519081900360200190f35b34610000576101e0600160a060020a0360043581169060243516610bc0565b60408051918252519081900360200190f35b60005433600160a060020a0390811691161461051557610000565b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105c55780601f1061059a576101008083540402835291602001916105c5565b820191906000526020600020905b8154815290600101906020018083116105a857829003601f168201915b505050505081565b600160a060020a033381166000818152600b6020908152604080832094871680845294825280832086905580518681529051929493927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60055481565b60065460009060a060020a900460ff168015610669575060065433600160a060020a03908116911614155b1561067657506000610784565b600160a060020a0384166000908152600a60205260409020548290101561069f57506000610784565b600160a060020a0383166000908152600a602052604090205482810110156106c957506000610784565b600160a060020a038085166000908152600b6020908152604080832033909416835292905220548211156106ff57506000610784565b600160a060020a038085166000818152600a6020908152604080832080548890039055878516808452818420805489019055848452600b83528184203390961684529482529182902080548790039055815186815291517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060015b9392505050565b6007544210156107e1576006805460a060020a60ff02191660a060020a90811791829055604051910460ff161515907fd3ae281451496b0a8d978ad222f5465aa683499b2ca2698ec1686a413e717f0790600090a25b6008544210610836576006805460a060020a60ff02191660a060020a90811791829055604051910460ff161515907fd3ae281451496b0a8d978ad222f5465aa683499b2ca2698ec1686a413e717f0790600090a25b600954421061089c576006805460a060020a60ff02191690819055626ebe00429081016008556277f8800160095560405160a060020a90910460ff161515907fd3ae281451496b0a8d978ad222f5465aa683499b2ca2698ec1686a413e717f0790600090a25b5b565b60065460a060020a900460ff1681565b60045460ff1681565b60095481565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105c55780601f1061059a576101008083540402835291602001916105c5565b820191906000526020600020905b8154815290600101906020018083116105a857829003601f168201915b505050505081565b600654600160a060020a03908116903316811461096757610000565b600554600654600160a060020a03166000908152600a602052604090205461098f9190610bdd565b600555600654600160a060020a03166000908152600a60205260408120555b5b50565b600a6020526000908152604090205481565b60075481565b60085481565b600054600160a060020a031681565b600654600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105c55780601f1061059a576101008083540402835291602001916105c5565b820191906000526020600020905b8154815290600101906020018083116105a857829003601f168201915b505050505081565b60005433600160a060020a03908116911614610a9757610000565b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b60065460009060a060020a900460ff168015610aef575060065433600160a060020a03908116911614155b15610afc57506000610632565b600160a060020a0333166000908152600a602052604090205482901015610b2557506000610632565b600160a060020a0383166000908152600a60205260409020548281011015610b4f57506000610632565b600160a060020a033381166000818152600a6020908152604080832080548890039055938716808352918490208054870190558351868152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35060015b92915050565b600b60209081526000928352604080842090915290825290205481565b6000610be98383610bff565b1515610bf457610000565b508082035b92915050565b818111155b929150505600a165627a7a72305820437a367cded753a84cfeb998ad796a71a581398d9fd01bb0a80cf8d809f6ea0e0029

   Swarm Source:
bzzr://437a367cded753a84cfeb998ad796a71a581398d9fd01bb0a80cf8d809f6ea0e
View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.