Sponsored Link:   Revain - How to find moon tokens to invest? See what crypto experts are saying. Read reviews!
Contract Overview
Balance: 6.017019169553893719 Ether
Ether Value: $3,415.68 (@ $567.67/ETH)
Transactions: 5817 txns
Token Contract: POWL (POWL)
 Latest 25 txns from a total Of 5817 transactions (+1 PendingTxn)
View All

TxHash Age From To Value [TxFee]
0xd6fcf8f97adb5125c6596f73f96014cb083e55deb6a6c50fc7c1068120d286e5(pending)0xaa1b2239d2468500cde775093440aec120155043  IN  0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether(pending)
0x838e2bae9e96761d911cfc3b484c50d705ea1acc5d6c04223e285a0ac4de8ea14 days 8 hrs ago0x18cb68edecd281c76e55fcaeb611495572376de7  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000742764
0x9339a033b263c115171504fbeced7bf74fe470f77c0afab9743f4e3f758101245 days 16 hrs ago0x5f1088110edcba27fc206cdcc326b413b5867361  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000349536
0x5dff7ebf13fa2124f17f4a08a5344851883f0d5f1ee9210e4b01f8906933c1485 days 16 hrs ago0x5f1088110edcba27fc206cdcc326b413b5867361  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.00038512
0xda1afc9cfc5b7f6b87298193c8a3911b3bd96eb6150774e6eefd2283bc8843b26 days 18 hrs ago0x37b1d27e2b53cae2f902daf1fe9404d43f0686c3  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.0001922448
0xeef7727496dd8daa30574643959d921fb246586edbd8ad2d6e81fa4d5a023dd88 days 10 hrs ago0xd85a1905c84c8e8da601698f5f1e5b94c6603ada  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000660416
0xc42ee3fbd9be703cbd0077bb9815a41e1d793b27fbc1546a5c036cad11ac5dc79 days 2 hrs ago0xbe4596f1190fcf298cf595d5f9c766ed1d48863b  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000524304
0xbeab06d9ca5a63ad42e9bdb80621a4041410c644f42c7167051f5082985e6e739 days 20 hrs ago0xc3b1aeb18c5cea3f0947987c23299cbbfd8882cc  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000349536
0xdfe65dd7b4d45b03b0ef97d41afbe3542bc4a6d3380a4bbbbd647ce7a08a05739 days 21 hrs ago0xc3b1aeb18c5cea3f0947987c23299cbbfd8882cc  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000432684
0xda18911a2dcad01f54d86a4e0d347e010e4a5c8a70ae0fb2489b446d98f46d8e9 days 23 hrs ago0xc3b1aeb18c5cea3f0947987c23299cbbfd8882cc  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.00043692
0x93c11c38a078e4ad8a7b4e0d307cfafd4ff58b185c44f8e031ca3875cf990ec010 days 17 hrs ago0xdea1c8e9e617a84506c9fdd2dc3548c45d06c009  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000393228
0xedbaacb7225e92efdc9187852a1dccea86379b84742528e11ed7534101b0d07a10 days 22 hrs ago0xf4ce5ee6e96a7165c09d52adf59d6a53a1cbb238  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000349536
0x3864e00834d16092e9562962a97d1fdebc3ada1fb5ec8c1e755beeefa151ec1413 days 7 hrs ago0xd7e6323edaf169f2068749e83b51c6323a8ce124  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000660416
0x51aa91d0880c1e0c3c38c430a050cb2dfd1355292a54dd361774e957c5c8473f13 days 7 hrs ago0xd7e6323edaf169f2068749e83b51c6323a8ce124  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000660416
0xb2c65f48df6a1736dcb185b378361f64d288f1ee3019743f309f9c7ce2766d7613 days 18 hrs ago0x18cb68edecd281c76e55fcaeb611495572376de7  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000336532
0xaff124385482ed5db56847e4466aa439ff897310a554c657c708bf0b77b6897513 days 18 hrs ago0x18cb68edecd281c76e55fcaeb611495572376de7  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000262152
0x5a5f2e74f2add59e58a479647064a1cae97682dba3ed8859eb77172742df595c14 days 18 hrs ago0xf96b5ff95c512922a4997eda728e68c6d22b45e5  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000131076
0xb813a92181cbf05aba55821b920454b479af7ade9e7f9ad83113a902a17bc83d14 days 19 hrs ago0xf96b5ff95c512922a4997eda728e68c6d22b45e5  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.00014442
0x8fbfeb56135b99c4a0200b00365ac3dcdd7283787a0a330b9fa40a0f4b967d5917 days 5 hrs ago0x39144a4325150c64a6db12ec2b2b7ffad519b44b  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.00041276
0xe1dd6703fb1938873cbfdbe0613b6c7ca3af7ea0e4eb9f8e76a078dbe754050017 days 18 hrs ago0xf7ae0db228be0996c3acbf73f582ea7b2636675c  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000131076
0xa0e41b26b25105a9674e290d6f0abf50d36a8330403d1e13a069c202228b17c517 days 19 hrs ago0x925476687d605fe866bd756f8cba02d4a789f1fa  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000091792
0x1929af1a52aa7e89b5302708869d14386ffb1ea944e5eaf88354336e760f160417 days 19 hrs ago0x925476687d605fe866bd756f8cba02d4a789f1fa  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000174768
0x0133d0f739f24223787cbfdb56f2611bfe46eadb194e796f4c1bf98c33cf08de17 days 19 hrs ago0x925476687d605fe866bd756f8cba02d4a789f1fa  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000192816
0xc2ebc5c4668867d4eefe99d7c9a859922e662a4bd1c095bdeb636e439c179eba18 days 7 hrs ago0xe193a6985132dcde10ed960a14457228c37e7ce1  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0 Ether0.000384096
0x6b2f7104268c4430b4ece8ffd0261f6d987caa8d19eae2c2d961536334c41b6118 days 8 hrs ago0xe193a6985132dcde10ed960a14457228c37e7ce1  IN   0x34ba9c7402e1df11709c7983008b5a49d59e963f0.0001 Ether0.00048926
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here to View More View All
ParentTxHash Block Age From To Value
0x838e2bae9e96761d911cfc3b484c50d705ea1acc5d6c04223e285a0ac4de8ea156621684 days 8 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x18cb68edecd281c76e55fcaeb611495572376de70.181855424573105914 Ether
0x9339a033b263c115171504fbeced7bf74fe470f77c0afab9743f4e3f7581012456548695 days 16 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x5f1088110edcba27fc206cdcc326b413b58673610.127161660841203704 Ether
0xda1afc9cfc5b7f6b87298193c8a3911b3bd96eb6150774e6eefd2283bc8843b256485716 days 18 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x37b1d27e2b53cae2f902daf1fe9404d43f0686c30.010833346711466329 Ether
0xc42ee3fbd9be703cbd0077bb9815a41e1d793b27fbc1546a5c036cad11ac5dc756354899 days 2 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xbe4596f1190fcf298cf595d5f9c766ed1d48863b0.020092868618154946 Ether
0xbeab06d9ca5a63ad42e9bdb80621a4041410c644f42c7167051f5082985e6e7356311469 days 20 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xc3b1aeb18c5cea3f0947987c23299cbbfd8882cc0.014932300516546135 Ether
0xda18911a2dcad01f54d86a4e0d347e010e4a5c8a70ae0fb2489b446d98f46d8e56304539 days 23 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xc3b1aeb18c5cea3f0947987c23299cbbfd8882cc0.000048488195455088 Ether
0x93c11c38a078e4ad8a7b4e0d307cfafd4ff58b185c44f8e031ca3875cf990ec0562625010 days 17 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xdea1c8e9e617a84506c9fdd2dc3548c45d06c0090.002575310761019153 Ether
0xedbaacb7225e92efdc9187852a1dccea86379b84742528e11ed7534101b0d07a562500310 days 22 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xf4ce5ee6e96a7165c09d52adf59d6a53a1cbb2380.095609299654503653 Ether
0xaff124385482ed5db56847e4466aa439ff897310a554c657c708bf0b77b68975560888913 days 18 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x18cb68edecd281c76e55fcaeb611495572376de70.01240316126431066 Ether
0x5a5f2e74f2add59e58a479647064a1cae97682dba3ed8859eb77172742df595c560313814 days 18 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xf96b5ff95c512922a4997eda728e68c6d22b45e50.006748973354411215 Ether
0xe1dd6703fb1938873cbfdbe0613b6c7ca3af7ea0e4eb9f8e76a078dbe7540500558598817 days 18 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xf7ae0db228be0996c3acbf73f582ea7b2636675c0.001239194336517602 Ether
0x1929af1a52aa7e89b5302708869d14386ffb1ea944e5eaf88354336e760f1604558574917 days 19 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x925476687d605fe866bd756f8cba02d4a789f1fa0.009285579767267602 Ether
0x51f9552f063e0e27f1e4ed4d1f907b8625d63448d2c50524bed03f323f254a2f558098818 days 15 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x8b69a4ea25121c0d97a2d3f7bbfc297eed721ae90.021030616263171336 Ether
0x759f191daff78a53d2918bb7325ee120373eb12f3d7c59a200b585dcada59d40557641019 days 10 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x5c035bb4cb7dacbfee076a5e61aa39a10da2e9560.000000004724334071 Ether
0xa424cecb989d465d151781d5d7844865a2904942e90e731c127a5d5d66cc94d4557532419 days 15 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x5f1088110edcba27fc206cdcc326b413b58673610.001515786930016971 Ether
0x3456c59d876fb12c326f300a7434a2ecb332cd18598f5d467077d33079ce77fb557194320 days 5 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x6bfc6c828faf30d893d54b448b4c9e4de678e2c90.034909746527486834 Ether
0xd5941e2fa507db70e92fd641004300c0a7565960496942e81db91cca0d4341ec557063020 days 10 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x38c6c0c64289683669061158f67b9676cdee4d3f0.042200837569540449 Ether
0xa8a4d2a74ba118e697bb2ec90621698178718b5f678dc2bcdc51ab024097d40e556816820 days 20 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xc3b1aeb18c5cea3f0947987c23299cbbfd8882cc0.027660389321267972 Ether
0x132ffedb07c970fa59a6b63ed3aa96d697cfccefc6d4b57b14be30845714ec0d556786720 days 22 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x9d7817596adc591689f8f5fa2ec0bd6fbbe9f87e0.007518229851740869 Ether
0xce1d0bc3363dbbdd235ec86b5cba54f10d5683989c13ce890fc641de6e65e2fc556428621 days 12 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x1b2e0d8109fc58d4825d5e51432ed57a385c2c000.003298508622184073 Ether
0x977698c93031a0a0add98cd661adf6e63435738dd35eb09622156058776d0cee556362221 days 15 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xd079f70a23f61fa6696ec55c2fdda1a93a99bcd30.023702709722507024 Ether
0x1004c042b49fe1c6ecc5c4e60063f7d35a15989f8bc21b1549459f10bd7380b3556174321 days 23 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xc6163685cc538b38adc3e44ed1288fb31863cf830.003917645417985178 Ether
0x32da05f17d3b95e228b51b28f86e20fd2a52929b9f4365453b5468e1866622c7556133022 days 1 hr ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0x7ff4b024e9418cffd16497069d81251319350cbb0.000538671313231621 Ether
0x620b768ca01d19e5ebf715bab21f261f5a8a423c6bc3f85849118495961958a8556040422 days 5 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xf6135aa4ebe6378bdd980bacee309622de91dcfb0.007790329783581206 Ether
0x2d9b36a6021751e6ab55d25294c48463398f4385cb8808db6b54778e404bc9c1556035222 days 5 hrs ago0x34ba9c7402e1df11709c7983008b5a49d59e963f0xf6135aa4ebe6378bdd980bacee309622de91dcfb0.000543905981424673 Ether
[ Download CSV Export  ] 
Contract Source Code Verified (Exact match)
Contract Name: Hourglass
Compiler Version: v0.4.20+commit.3155dd80
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.20;

/*
* Team JUST presents..
* ====================================*
*  _____   ______          ___        *
* |  __ \ / __ \ \        / / |       *
* | |__) | |  | \ \  /\  / /| |       *
* |  ___/| |  | |\ \/  \/ / | |       *
* | |    | |__| | \  /\  /  | |____   *
* |_|     \____/   \/  \/   |______|  *
* ====================================*
* -> What?
* This source code is copy of Proof of Weak Hands (POWH3D)
* Only difference is that, you will receive 20% dividends.
* Call us copycats coz we love cats :)
*/

contract Hourglass {
    /*=================================
    =            MODIFIERS            =
    =================================*/
    // only people with tokens
    modifier onlyBagholders() {
        require(myTokens() > 0);
        _;
    }
    
    // only people with profits
    modifier onlyStronghands() {
        require(myDividends(true) > 0);
        _;
    }
    
    // administrators can:
    // -> change the name of the contract
    // -> change the name of the token
    // -> change the PoS difficulty (How many tokens it costs to hold a masternode, in case it gets crazy high later)
    // they CANNOT:
    // -> take funds
    // -> disable withdrawals
    // -> kill the contract
    // -> change the price of tokens
    modifier onlyAdministrator(){
        address _customerAddress = msg.sender;
        require(administrators[keccak256(_customerAddress)]);
        _;
    }
    
    
    // ensures that the first tokens in the contract will be equally distributed
    // meaning, no divine dump will be ever possible
    // result: healthy longevity.
    modifier antiEarlyWhale(uint256 _amountOfEthereum){
        address _customerAddress = msg.sender;
        
        // are we still in the vulnerable phase?
        // if so, enact anti early whale protocol 
        if( onlyAmbassadors && ((totalEthereumBalance() - _amountOfEthereum) <= ambassadorQuota_ )){
            require(
                // is the customer in the ambassador list?
                ambassadors_[_customerAddress] == true &&
                
                // does the customer purchase exceed the max ambassador quota?
                (ambassadorAccumulatedQuota_[_customerAddress] + _amountOfEthereum) <= ambassadorMaxPurchase_
                
            );
            
            // updated the accumulated quota    
            ambassadorAccumulatedQuota_[_customerAddress] = SafeMath.add(ambassadorAccumulatedQuota_[_customerAddress], _amountOfEthereum);
        
            // execute
            _;
        } else {
            // in case the ether count drops low, the ambassador phase won't reinitiate
            onlyAmbassadors = false;
            _;    
        }
        
    }
    
    
    /*==============================
    =            EVENTS            =
    ==============================*/
    event onTokenPurchase(
        address indexed customerAddress,
        uint256 incomingEthereum,
        uint256 tokensMinted,
        address indexed referredBy
    );
    
    event onTokenSell(
        address indexed customerAddress,
        uint256 tokensBurned,
        uint256 ethereumEarned
    );
    
    event onReinvestment(
        address indexed customerAddress,
        uint256 ethereumReinvested,
        uint256 tokensMinted
    );
    
    event onWithdraw(
        address indexed customerAddress,
        uint256 ethereumWithdrawn
    );
    
    // ERC20
    event Transfer(
        address indexed from,
        address indexed to,
        uint256 tokens
    );
    
    
    /*=====================================
    =            CONFIGURABLES            =
    =====================================*/
    string public name = "POWL";
    string public symbol = "POWL";
    uint8 constant public decimals = 18;
    uint8 constant internal dividendFee_ = 20;
    uint256 constant internal tokenPriceInitial_ = 0.0000001 ether;
    uint256 constant internal tokenPriceIncremental_ = 0.00000001 ether;
    uint256 constant internal magnitude = 2**64;
    
    // proof of stake (defaults at 100 tokens)
    uint256 public stakingRequirement = 100e18;
    
    // ambassador program
    mapping(address => bool) internal ambassadors_;
    uint256 constant internal ambassadorMaxPurchase_ = 1 ether;
    uint256 constant internal ambassadorQuota_ = 20 ether;
    
    
    
   /*================================
    =            DATASETS            =
    ================================*/
    // amount of shares for each address (scaled number)
    mapping(address => uint256) internal tokenBalanceLedger_;
    mapping(address => uint256) internal referralBalance_;
    mapping(address => int256) internal payoutsTo_;
    mapping(address => uint256) internal ambassadorAccumulatedQuota_;
    uint256 internal tokenSupply_ = 0;
    uint256 internal profitPerShare_;
    
    // administrator list (see above on what they can do)
    mapping(bytes32 => bool) public administrators;
    
    // when this is set to true, only ambassadors can purchase tokens (this prevents a whale premine, it ensures a fairly distributed upper pyramid)
    bool public onlyAmbassadors = true;
    


    /*=======================================
    =            PUBLIC FUNCTIONS            =
    =======================================*/
    /*
    * -- APPLICATION ENTRY POINTS --  
    */
    function Hourglass()
        public
    {
        // add administrators here
        administrators[0x909b33773fe2c245e253e4d2403e3edd353517c30bc1a85b98d78b392e5fd2c1] = true;
        
        // add the ambassadors here.
        // rackoo - lead solidity dev & lead web dev. 
        ambassadors_[0xbe3569068562218c792cf25b98dbf1418aff2455] = true;
        
        // noncy - Aunt responsible for feeding us.
        ambassadors_[0x17b88dc23dacf6a905356a342a0d88f055a52f07] = true;
        
        //tipso - ctrl+c and ctrl+v expert
        ambassadors_[0xda335f08bec7d84018628c4c9e18c7ef076d8c30] = true;
        
        //powl chat - chat expert
        ambassadors_[0x99d63938007553c3ec9ce032cd94c3655360c197] = true;
        
        //pipper - shiller
        ambassadors_[0x3595072a72390aa733f9389d61e384b89122fff6] = true;
        
        //vai - Solidity newbie
        ambassadors_[0x575850eb0bad2ef3d153d60b6e768c7648c4daeb] = true;
        
        //sudpe - Developer
        ambassadors_[0x80622cb543e2ec10bf210756b0f5fa819a945409] = true; //ho
        
        
        //private dudes
        ambassadors_[0x8cba9adeb6db06980d9efa38ccf8c50ec1a44335] = true; //ml
        ambassadors_[0x8c77aab3bf3b55786cb168223b66fbcac1add480] = true; //of
        ambassadors_[0x54c7cd8969b8e64be047a9808e417e43e7336f00] = true; //kd
        ambassadors_[0xe9d3a8cd1a7738c52ea1dc5705b4a3cc7132a227] = true; //rr
        ambassadors_[0x6ca6ef7be51b9504fdcd98ef11908a41d9555dc9] = true; //ms
        ambassadors_[0x1af7a66440af07e8c31526f5b921e480792f3c5f] = true; //ol
        ambassadors_[0x798ce730e70f26624924011e1fac8a821d0ff0e7] = true; //we
        ambassadors_[0x059d0f67c2d4c18b09c2b91ff13a4648a19d68a2] = true; //nb
        ambassadors_[0x575850eb0bad2ef3d153d60b6e768c7648c4daeb] = true; //ho
        ambassadors_[0xe3de1731a6d018e2dcd0ad233c870c4aac8e0d54] = true; //pm
        ambassadors_[0x49b2bf937ca3f7029e2b1b1aa8445c8497da6464] = true; //tp
        ambassadors_[0xc99868aaa529ebc4c2d7f6e97efc0d883ddbbeec] = true; //sr
        ambassadors_[0x558d94edc943e0b4dd75001bc91750711e5c8239] = true; //lj
        ambassadors_[0xd87dd0cd32e1076c52d87175da74a98ece6794a0] = true; //mh
        ambassadors_[0xde24622f20c56cbf1a3ab75d078ebe42da7ed7b9] = true; //kb
        ambassadors_[0x65d24fffaeb0b49a5bfbaf0ad7c180d61d012312] = true; //ta
        
        

    }
    
     
    /**
     * Converts all incoming ethereum to tokens for the caller, and passes down the referral addy (if any)
     */
    function buy(address _referredBy)
        public
        payable
        returns(uint256)
    {
        purchaseTokens(msg.value, _referredBy);
    }
    
    /**
     * Fallback function to handle ethereum that was send straight to the contract
     * Unfortunately we cannot use a referral address this way.
     */
    function()
        payable
        public
    {
        purchaseTokens(msg.value, 0x0);
    }
    
    /**
     * Converts all of caller's dividends to tokens.
     */
    function reinvest()
        onlyStronghands()
        public
    {
        // fetch dividends
        uint256 _dividends = myDividends(false); // retrieve ref. bonus later in the code
        
        // pay out the dividends virtually
        address _customerAddress = msg.sender;
        payoutsTo_[_customerAddress] +=  (int256) (_dividends * magnitude);
        
        // retrieve ref. bonus
        _dividends += referralBalance_[_customerAddress];
        referralBalance_[_customerAddress] = 0;
        
        // dispatch a buy order with the virtualized "withdrawn dividends"
        uint256 _tokens = purchaseTokens(_dividends, 0x0);
        
        // fire event
        onReinvestment(_customerAddress, _dividends, _tokens);
    }
    
    /**
     * Alias of sell() and withdraw().
     */
    function exit()
        public
    {
        // get token count for caller & sell them all
        address _customerAddress = msg.sender;
        uint256 _tokens = tokenBalanceLedger_[_customerAddress];
        if(_tokens > 0) sell(_tokens);
        
        // lambo delivery service
        withdraw();
    }

    /**
     * Withdraws all of the callers earnings.
     */
    function withdraw()
        onlyStronghands()
        public
    {
        // setup data
        address _customerAddress = msg.sender;
        uint256 _dividends = myDividends(false); // get ref. bonus later in the code
        
        // update dividend tracker
        payoutsTo_[_customerAddress] +=  (int256) (_dividends * magnitude);
        
        // add ref. bonus
        _dividends += referralBalance_[_customerAddress];
        referralBalance_[_customerAddress] = 0;
        
        // lambo delivery service
        _customerAddress.transfer(_dividends);
        
        // fire event
        onWithdraw(_customerAddress, _dividends);
    }
    
    /**
     * Liquifies tokens to ethereum.
     */
    function sell(uint256 _amountOfTokens)
        onlyBagholders()
        public
    {
        // setup data
        address _customerAddress = msg.sender;
        // russian hackers BTFO
        require(_amountOfTokens <= tokenBalanceLedger_[_customerAddress]);
        uint256 _tokens = _amountOfTokens;
        uint256 _ethereum = tokensToEthereum_(_tokens);
        uint256 _dividends = SafeMath.div(_ethereum, dividendFee_);
        uint256 _taxedEthereum = SafeMath.sub(_ethereum, _dividends);
        
        // burn the sold tokens
        tokenSupply_ = SafeMath.sub(tokenSupply_, _tokens);
        tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _tokens);
        
        // update dividends tracker
        int256 _updatedPayouts = (int256) (profitPerShare_ * _tokens + (_taxedEthereum * magnitude));
        payoutsTo_[_customerAddress] -= _updatedPayouts;       
        
        // dividing by zero is a bad idea
        if (tokenSupply_ > 0) {
            // update the amount of dividends per token
            profitPerShare_ = SafeMath.add(profitPerShare_, (_dividends * magnitude) / tokenSupply_);
        }
        
        // fire event
        onTokenSell(_customerAddress, _tokens, _taxedEthereum);
    }
    
    
    /**
     * Transfer tokens from the caller to a new holder.
     * Remember, there's a 10% fee here as well.
     */
    function transfer(address _toAddress, uint256 _amountOfTokens)
        onlyBagholders()
        public
        returns(bool)
    {
        // setup
        address _customerAddress = msg.sender;
        
        // make sure we have the requested tokens
        // also disables transfers until ambassador phase is over
        // ( we dont want whale premines )
        require(!onlyAmbassadors && _amountOfTokens <= tokenBalanceLedger_[_customerAddress]);
        
        // withdraw all outstanding dividends first
        if(myDividends(true) > 0) withdraw();
        
        // liquify 10% of the tokens that are transfered
        // these are dispersed to shareholders
        uint256 _tokenFee = SafeMath.div(_amountOfTokens, dividendFee_);
        uint256 _taxedTokens = SafeMath.sub(_amountOfTokens, _tokenFee);
        uint256 _dividends = tokensToEthereum_(_tokenFee);
  
        // burn the fee tokens
        tokenSupply_ = SafeMath.sub(tokenSupply_, _tokenFee);

        // exchange tokens
        tokenBalanceLedger_[_customerAddress] = SafeMath.sub(tokenBalanceLedger_[_customerAddress], _amountOfTokens);
        tokenBalanceLedger_[_toAddress] = SafeMath.add(tokenBalanceLedger_[_toAddress], _taxedTokens);
        
        // update dividend trackers
        payoutsTo_[_customerAddress] -= (int256) (profitPerShare_ * _amountOfTokens);
        payoutsTo_[_toAddress] += (int256) (profitPerShare_ * _taxedTokens);
        
        // disperse dividends among holders
        profitPerShare_ = SafeMath.add(profitPerShare_, (_dividends * magnitude) / tokenSupply_);
        
        // fire event
        Transfer(_customerAddress, _toAddress, _taxedTokens);
        
        // ERC20
        return true;
       
    }
    
    /*----------  ADMINISTRATOR ONLY FUNCTIONS  ----------*/
    /**
     * In case the amassador quota is not met, the administrator can manually disable the ambassador phase.
     */
    function disableInitialStage()
        onlyAdministrator()
        public
    {
        onlyAmbassadors = false;
    }
    
    /**
     * In case one of us dies, we need to replace ourselves.
     */
    function setAdministrator(bytes32 _identifier, bool _status)
        onlyAdministrator()
        public
    {
        administrators[_identifier] = _status;
    }
    
    /**
     * Precautionary measures in case we need to adjust the masternode rate.
     */
    function setStakingRequirement(uint256 _amountOfTokens)
        onlyAdministrator()
        public
    {
        stakingRequirement = _amountOfTokens;
    }
    
    /**
     * If we want to rebrand, we can.
     */
    function setName(string _name)
        onlyAdministrator()
        public
    {
        name = _name;
    }
    
    /**
     * If we want to rebrand, we can.
     */
    function setSymbol(string _symbol)
        onlyAdministrator()
        public
    {
        symbol = _symbol;
    }

    
    /*----------  HELPERS AND CALCULATORS  ----------*/
    /**
     * Method to view the current Ethereum stored in the contract
     * Example: totalEthereumBalance()
     */
    function totalEthereumBalance()
        public
        view
        returns(uint)
    {
        return this.balance;
    }
    
    /**
     * Retrieve the total token supply.
     */
    function totalSupply()
        public
        view
        returns(uint256)
    {
        return tokenSupply_;
    }
    
    /**
     * Retrieve the tokens owned by the caller.
     */
    function myTokens()
        public
        view
        returns(uint256)
    {
        address _customerAddress = msg.sender;
        return balanceOf(_customerAddress);
    }
    
    /**
     * Retrieve the dividends owned by the caller.
     * If `_includeReferralBonus` is to to 1/true, the referral bonus will be included in the calculations.
     * The reason for this, is that in the frontend, we will want to get the total divs (global + ref)
     * But in the internal calculations, we want them separate. 
     */ 
    function myDividends(bool _includeReferralBonus) 
        public 
        view 
        returns(uint256)
    {
        address _customerAddress = msg.sender;
        return _includeReferralBonus ? dividendsOf(_customerAddress) + referralBalance_[_customerAddress] : dividendsOf(_customerAddress) ;
    }
    
    /**
     * Retrieve the token balance of any single address.
     */
    function balanceOf(address _customerAddress)
        view
        public
        returns(uint256)
    {
        return tokenBalanceLedger_[_customerAddress];
    }
    
    /**
     * Retrieve the dividend balance of any single address.
     */
    function dividendsOf(address _customerAddress)
        view
        public
        returns(uint256)
    {
        return (uint256) ((int256)(profitPerShare_ * tokenBalanceLedger_[_customerAddress]) - payoutsTo_[_customerAddress]) / magnitude;
    }
    
    /**
     * Return the buy price of 1 individual token.
     */
    function sellPrice() 
        public 
        view 
        returns(uint256)
    {
        // our calculation relies on the token supply, so we need supply. Doh.
        if(tokenSupply_ == 0){
            return tokenPriceInitial_ - tokenPriceIncremental_;
        } else {
            uint256 _ethereum = tokensToEthereum_(1e18);
            uint256 _dividends = SafeMath.div(_ethereum, dividendFee_  );
            uint256 _taxedEthereum = SafeMath.sub(_ethereum, _dividends);
            return _taxedEthereum;
        }
    }
    
    /**
     * Return the sell price of 1 individual token.
     */
    function buyPrice() 
        public 
        view 
        returns(uint256)
    {
        // our calculation relies on the token supply, so we need supply. Doh.
        if(tokenSupply_ == 0){
            return tokenPriceInitial_ + tokenPriceIncremental_;
        } else {
            uint256 _ethereum = tokensToEthereum_(1e18);
            uint256 _dividends = SafeMath.div(_ethereum, dividendFee_  );
            uint256 _taxedEthereum = SafeMath.add(_ethereum, _dividends);
            return _taxedEthereum;
        }
    }
    
    /**
     * Function for the frontend to dynamically retrieve the price scaling of buy orders.
     */
    function calculateTokensReceived(uint256 _ethereumToSpend) 
        public 
        view 
        returns(uint256)
    {
        uint256 _dividends = SafeMath.div(_ethereumToSpend, dividendFee_);
        uint256 _taxedEthereum = SafeMath.sub(_ethereumToSpend, _dividends);
        uint256 _amountOfTokens = ethereumToTokens_(_taxedEthereum);
        
        return _amountOfTokens;
    }
    
    /**
     * Function for the frontend to dynamically retrieve the price scaling of sell orders.
     */
    function calculateEthereumReceived(uint256 _tokensToSell) 
        public 
        view 
        returns(uint256)
    {
        require(_tokensToSell <= tokenSupply_);
        uint256 _ethereum = tokensToEthereum_(_tokensToSell);
        uint256 _dividends = SafeMath.div(_ethereum, dividendFee_);
        uint256 _taxedEthereum = SafeMath.sub(_ethereum, _dividends);
        return _taxedEthereum;
    }
    
    
    /*==========================================
    =            INTERNAL FUNCTIONS            =
    ==========================================*/
    function purchaseTokens(uint256 _incomingEthereum, address _referredBy)
        antiEarlyWhale(_incomingEthereum)
        internal
        returns(uint256)
    {
        // data setup
        address _customerAddress = msg.sender;
        uint256 _undividedDividends = SafeMath.div(_incomingEthereum, dividendFee_);
        uint256 _referralBonus = SafeMath.div(_undividedDividends, 3);
        uint256 _dividends = SafeMath.sub(_undividedDividends, _referralBonus);
        uint256 _taxedEthereum = SafeMath.sub(_incomingEthereum, _undividedDividends);
        uint256 _amountOfTokens = ethereumToTokens_(_taxedEthereum);
        uint256 _fee = _dividends * magnitude;
 
        // no point in continuing execution if OP is a poorfag russian hacker
        // prevents overflow in the case that the pyramid somehow magically starts being used by everyone in the world
        // (or hackers)
        // and yes we know that the safemath function automatically rules out the "greater then" equasion.
        require(_amountOfTokens > 0 && (SafeMath.add(_amountOfTokens,tokenSupply_) > tokenSupply_));
        
        // is the user referred by a masternode?
        if(
            // is this a referred purchase?
            _referredBy != 0x0000000000000000000000000000000000000000 &&

            // no cheating!
            _referredBy != _customerAddress &&
            
            // does the referrer have at least X whole tokens?
            // i.e is the referrer a godly chad masternode
            tokenBalanceLedger_[_referredBy] >= stakingRequirement
        ){
            // wealth redistribution
            referralBalance_[_referredBy] = SafeMath.add(referralBalance_[_referredBy], _referralBonus);
        } else {
            // no ref purchase
            // add the referral bonus back to the global dividends cake
            _dividends = SafeMath.add(_dividends, _referralBonus);
            _fee = _dividends * magnitude;
        }
        
        // we can't give people infinite ethereum
        if(tokenSupply_ > 0){
            
            // add tokens to the pool
            tokenSupply_ = SafeMath.add(tokenSupply_, _amountOfTokens);
 
            // take the amount of dividends gained through this transaction, and allocates them evenly to each shareholder
            profitPerShare_ += (_dividends * magnitude / (tokenSupply_));
            
            // calculate the amount of tokens the customer receives over his purchase 
            _fee = _fee - (_fee-(_amountOfTokens * (_dividends * magnitude / (tokenSupply_))));
        
        } else {
            // add tokens to the pool
            tokenSupply_ = _amountOfTokens;
        }
        
        // update circulating supply & the ledger address for the customer
        tokenBalanceLedger_[_customerAddress] = SafeMath.add(tokenBalanceLedger_[_customerAddress], _amountOfTokens);
        
        // Tells the contract that the buyer doesn't deserve dividends for the tokens before they owned them;
        //really i know you think you do but you don't
        int256 _updatedPayouts = (int256) ((profitPerShare_ * _amountOfTokens) - _fee);
        payoutsTo_[_customerAddress] += _updatedPayouts;
        
        // fire event
        onTokenPurchase(_customerAddress, _incomingEthereum, _amountOfTokens, _referredBy);
        
        return _amountOfTokens;
    }

    /**
     * Calculate Token price based on an amount of incoming ethereum
     * It's an algorithm, hopefully we gave you the whitepaper with it in scientific notation;
     * Some conversions occurred to prevent decimal errors or underflows / overflows in solidity code.
     */
    function ethereumToTokens_(uint256 _ethereum)
        internal
        view
        returns(uint256)
    {
        uint256 _tokenPriceInitial = tokenPriceInitial_ * 1e18;
        uint256 _tokensReceived = 
         (
            (
                // underflow attempts BTFO
                SafeMath.sub(
                    (sqrt
                        (
                            (_tokenPriceInitial**2)
                            +
                            (2*(tokenPriceIncremental_ * 1e18)*(_ethereum * 1e18))
                            +
                            (((tokenPriceIncremental_)**2)*(tokenSupply_**2))
                            +
                            (2*(tokenPriceIncremental_)*_tokenPriceInitial*tokenSupply_)
                        )
                    ), _tokenPriceInitial
                )
            )/(tokenPriceIncremental_)
        )-(tokenSupply_)
        ;
  
        return _tokensReceived;
    }
    
    /**
     * Calculate token sell value.
     * It's an algorithm, hopefully we gave you the whitepaper with it in scientific notation;
     * Some conversions occurred to prevent decimal errors or underflows / overflows in solidity code.
     */
     function tokensToEthereum_(uint256 _tokens)
        internal
        view
        returns(uint256)
    {

        uint256 tokens_ = (_tokens + 1e18);
        uint256 _tokenSupply = (tokenSupply_ + 1e18);
        uint256 _etherReceived =
        (
            // underflow attempts BTFO
            SafeMath.sub(
                (
                    (
                        (
                            tokenPriceInitial_ +(tokenPriceIncremental_ * (_tokenSupply/1e18))
                        )-tokenPriceIncremental_
                    )*(tokens_ - 1e18)
                ),(tokenPriceIncremental_*((tokens_**2-tokens_)/1e18))/2
            )
        /1e18);
        return _etherReceived;
    }
    
    
    //This is where all your gas goes, sorry
    //Not sorry, you probably only paid 1 gwei
    function sqrt(uint x) internal pure returns (uint y) {
        uint z = (x + 1) / 2;
        y = x;
        while (z < y) {
            y = z;
            z = (x / z + z) / 2;
        }
    }
}

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    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;
    }

    /**
    * @dev Integer division of two numbers, truncating the quotient.
    */
    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;
    }

    /**
    * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

    Contract ABI  
[{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"dividendsOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_ethereumToSpend","type":"uint256"}],"name":"calculateTokensReceived","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":true,"inputs":[{"name":"_tokensToSell","type":"uint256"}],"name":"calculateEthereumReceived","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"onlyAmbassadors","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":"bytes32"}],"name":"administrators","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sellPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakingRequirement","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_includeReferralBonus","type":"bool"}],"name":"myDividends","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalEthereumBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amountOfTokens","type":"uint256"}],"name":"setStakingRequirement","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_identifier","type":"bytes32"},{"name":"_status","type":"bool"}],"name":"setAdministrator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"myTokens","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":false,"inputs":[],"name":"disableInitialStage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_toAddress","type":"address"},{"name":"_amountOfTokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_symbol","type":"string"}],"name":"setSymbol","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"}],"name":"setName","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amountOfTokens","type":"uint256"}],"name":"sell","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_referredBy","type":"address"}],"name":"buy","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"reinvest","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"incomingEthereum","type":"uint256"},{"indexed":false,"name":"tokensMinted","type":"uint256"},{"indexed":true,"name":"referredBy","type":"address"}],"name":"onTokenPurchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"tokensBurned","type":"uint256"},{"indexed":false,"name":"ethereumEarned","type":"uint256"}],"name":"onTokenSell","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"ethereumReinvested","type":"uint256"},{"indexed":false,"name":"tokensMinted","type":"uint256"}],"name":"onReinvestment","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"ethereumWithdrawn","type":"uint256"}],"name":"onWithdraw","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"}]

  Contract Creation Code Switch To Opcodes View
606060405260408051908101604052600481527f504f574c00000000000000000000000000000000000000000000000000000000602082015260009080516200004d929160200190620004a2565b5060408051908101604052600481527f504f574c000000000000000000000000000000000000000000000000000000006020820152600190805162000097929160200190620004a2565b5068056bc75e2d631000006002556000600855600b805460ff191660011790553415620000c357600080fd5b7fb603c12666599ed4eafcda65461cce202db8b4128cc9a11c70e172933302da328054600160ff19918216811790925560036020527ff5efb8f4181abdf1707bf144e40a441b249f33d1b30786e7b17cabceee25325b80548216831790557fe64e3850b3f6c42677ec308d4fb09acf7166e9f7771e71287b4d171944671fd580548216831790557faf8f0529460938a523fa0e9075fcf90a87e978e9e6ce6124cc6903a9005f28f280548216831790557f482602eb56399c7315353825b39fcd5f2e1ef9908041b124ae824a24815c22c880548216831790557fe20a29ee72d0237521b5b7a1e7ff727f474e8f629d7d277ca5a35a97ef0edb3e80548216831790557f9324fad9c0371639d5c216f5403739128772035640ed53ca4b4800f33723b14680547f9ddb905a1d8eb942ceb13b751788297217c90e448d5719f9562dfb60314e4d1080548416851790557fe66e0d542205fd4f47a7d20a7b6e5eff6407b7ba1b44fd27e69d38e1944a980580548416851790557ff86962288dd651afae7e740b6a70f19c7f1f4629560b880b1cc0eee984a4aae880548416851790557f2b6b3ec62133e60923b3537afd2ee1a8f26048d8e7022b1005ca5f1fab8fe0d380548416851790557f45f77d413ecdcb0b83fd06380213cd2f212a72a04a12a7daf89fee8ad7f4b49280548416851790557f5d5a0b059982ab029026632c475d0f35a3c8d20bfe079da582d70f159168127180548416851790557fe79f6f419cdf34ec550dda355e74c94e2b39455985ec7085d22718d934039eff80548416851790557fc007776787bd205885c3b45532e9722620b8083df04b4a451afadf715cbf2dcd80548416851790557f02955a4d48dc36619f7caf374131c025888b728797d6ff0736bd0b5b0500a5b48054841685179055821683178216831790557f6d82d160d4d68f43a7121c04f0bab63878ccd111e0d819c1c8984340e6dd0ad280548216831790557f0a5517540f4ef8488de211789872f9d63d51891dd20c81521875925b8e61103780548216831790557fd1eeab85148c73b766809b3cc8c6140ae4a2fb8a47741b73c8fc2ee9f16a92de80548216831790557f45edbff5361c0471d35f7c663b32cf004270978f2b06a5b5a8403b8c42d1260380548216831790557f548cc3fc406154c1ea45b19cbf7f8ce35a93660905030ca5a4eff285eba0af7280548216831790557f6b84e33e0c81ab9d0c5c5840c9ef2d96d157ead262a7cc1be032087ed73265d680548216831790557365d24fffaeb0b49a5bfbaf0ad7c180d61d0123126000527f95323990bc9f646b880415189484e61424206c6772cf371576ffd942ba4d836b8054909116909117905562000547565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004e557805160ff191683800117855562000515565b8280016001018555821562000515579182015b8281111562000515578251825591602001919060010190620004f8565b506200052392915062000527565b5090565b6200054491905b808211156200052357600081556001016200052e565b90565b61166480620005576000396000f30060606040526004361061015d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166265318b811461016b57806306fdde031461019c57806310d0ffdd1461022657806318160ddd1461023c578063226093731461024f57806327defa1f14610265578063313ce5671461028c578063392efb52146102b55780633ccfd60b146102cb5780634b750334146102e057806356d399e8146102f3578063688abbf7146103065780636b2f46321461031e57806370a08231146103315780638328b610146103505780638620410b1461036657806389135ae914610379578063949e8acd1461039457806395d89b41146103a7578063a8e04f34146103ba578063a9059cbb146103cd578063b84c8246146103ef578063c47f002714610440578063e4849b3214610491578063e9fad8ee146104a7578063f088d547146104ba578063fdb5a03e146104ce575b6101683460006104e1565b50005b341561017657600080fd5b61018a600160a060020a0360043516610a85565b60405190815260200160405180910390f35b34156101a757600080fd5b6101af610abb565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101eb5780820151838201526020016101d3565b50505050905090810190601f1680156102185780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561023157600080fd5b61018a600435610b59565b341561024757600080fd5b61018a610b89565b341561025a57600080fd5b61018a600435610b90565b341561027057600080fd5b610278610bc9565b604051901515815260200160405180910390f35b341561029757600080fd5b61029f610bd2565b60405160ff909116815260200160405180910390f35b34156102c057600080fd5b610278600435610bd7565b34156102d657600080fd5b6102de610bec565b005b34156102eb57600080fd5b61018a610cb3565b34156102fe57600080fd5b61018a610d07565b341561031157600080fd5b61018a6004351515610d0d565b341561032957600080fd5b61018a610d50565b341561033c57600080fd5b61018a600160a060020a0360043516610d5e565b341561035b57600080fd5b6102de600435610d79565b341561037157600080fd5b61018a610dd0565b341561038457600080fd5b6102de6004356024351515610e18565b341561039f57600080fd5b61018a610e8a565b34156103b257600080fd5b6101af610e9d565b34156103c557600080fd5b6102de610f08565b34156103d857600080fd5b610278600160a060020a0360043516602435610f66565b34156103fa57600080fd5b6102de60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061111995505050505050565b341561044b57600080fd5b6102de60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061118295505050505050565b341561049c57600080fd5b6102de6004356111e6565b34156104b257600080fd5b6102de611339565b61018a600160a060020a0360043516611370565b34156104d957600080fd5b6102de61137c565b60008060008060008060008060008a6000339050600b60009054906101000a900460ff16801561052357506801158e460913d000008261051f610d50565b0311155b1561081757600160a060020a03811660009081526003602052604090205460ff16151560011480156105785750600160a060020a038116600090815260076020526040902054670de0b6b3a764000090830111155b151561058357600080fd5b600160a060020a0381166000908152600760205260409020546105a69083611432565b600160a060020a0382166000908152600760205260409020553399506105cd8d6014611448565b98506105da896003611448565b97506105e6898961145f565b96506105f28d8a61145f565b95506105fd86611471565b9450604060020a8702935060008511801561062257506008546106208682611432565b115b151561062d57600080fd5b600160a060020a038c1615801590610657575089600160a060020a03168c600160a060020a031614155b801561067d5750600254600160a060020a038d1660009081526004602052604090205410155b156106c357600160a060020a038c166000908152600560205260409020546106a59089611432565b600160a060020a038d166000908152600560205260409020556106d9565b6106cd8789611432565b9650604060020a870293505b60006008541115610733576106f060085486611432565b6008819055604060020a880281151561070557fe5b60098054929091049091019055600854604060020a880281151561072557fe5b048502840384039350610739565b60088590555b600160a060020a038a1660009081526004602052604090205461075c9086611432565b600460008c600160a060020a0316600160a060020a031681526020019081526020016000208190555083856009540203925082600660008c600160a060020a0316600160a060020a03168152602001908152602001600020600082825401925050819055508b600160a060020a03168a600160a060020a03167f022c0d992e4d873a3748436d960d5140c1f9721cf73f7ca5ec679d3d9f4fe2d58f8860405191825260208201526040908101905180910390a3849a50610a75565b600b805460ff1916905533995061082f8d6014611448565b985061083c896003611448565b9750610848898961145f565b96506108548d8a61145f565b955061085f86611471565b9450604060020a8702935060008511801561088457506008546108828682611432565b115b151561088f57600080fd5b600160a060020a038c16158015906108b9575089600160a060020a03168c600160a060020a031614155b80156108df5750600254600160a060020a038d1660009081526004602052604090205410155b1561092557600160a060020a038c166000908152600560205260409020546109079089611432565b600160a060020a038d1660009081526005602052604090205561093b565b61092f8789611432565b9650604060020a870293505b600060085411156109955761095260085486611432565b6008819055604060020a880281151561096757fe5b60098054929091049091019055600854604060020a880281151561098757fe5b04850284038403935061099b565b60088590555b600160a060020a038a166000908152600460205260409020546109be9086611432565b600460008c600160a060020a0316600160a060020a031681526020019081526020016000208190555083856009540203925082600660008c600160a060020a0316600160a060020a03168152602001908152602001600020600082825401925050819055508b600160a060020a03168a600160a060020a03167f022c0d992e4d873a3748436d960d5140c1f9721cf73f7ca5ec679d3d9f4fe2d58f8860405191825260208201526040908101905180910390a3849a505b5050505050505050505092915050565b600160a060020a0316600090815260066020908152604080832054600490925290912054600954604060020a9102919091030490565b60008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b515780601f10610b2657610100808354040283529160200191610b51565b820191906000526020600020905b815481529060010190602001808311610b3457829003601f168201915b505050505081565b6000808080610b69856014611448565b9250610b75858461145f565b9150610b8082611471565b95945050505050565b6008545b90565b6000806000806008548511151515610ba757600080fd5b610bb085611509565b9250610bbd836014611448565b9150610b80838361145f565b600b5460ff1681565b601281565b600a6020526000908152604090205460ff1681565b6000806000610bfb6001610d0d565b11610c0557600080fd5b339150610c126000610d0d565b600160a060020a03831660008181526006602090815260408083208054604060020a870201905560059091528082208054929055920192509082156108fc0290839051600060405180830381858888f193505050501515610c7257600080fd5b81600160a060020a03167fccad973dcd043c7d680389db4378bd6b9775db7124092e9e0422c9e46d7985dc8260405190815260200160405180910390a25050565b60008060008060085460001415610cd1576414f46b04009350610d01565b610ce2670de0b6b3a7640000611509565b9250610cef836014611448565b9150610cfb838361145f565b90508093505b50505090565b60025481565b60003382610d2357610d1e81610a85565b610d47565b600160a060020a038116600090815260056020526040902054610d4582610a85565b015b91505b50919050565b600160a060020a0330163190565b600160a060020a031660009081526004602052604090205490565b33600a600082604051600160a060020a03919091166c01000000000000000000000000028152601401604051908190039020815260208101919091526040016000205460ff161515610dca57600080fd5b50600255565b60008060008060085460001415610dee5764199c82cc009350610d01565b610dff670de0b6b3a7640000611509565b9250610e0c836014611448565b9150610cfb8383611432565b33600a600082604051600160a060020a03919091166c01000000000000000000000000028152601401604051908190039020815260208101919091526040016000205460ff161515610e6957600080fd5b506000918252600a6020526040909120805460ff1916911515919091179055565b600033610e9681610d5e565b91505b5090565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b515780601f10610b2657610100808354040283529160200191610b51565b33600a600082604051600160a060020a03919091166c01000000000000000000000000028152601401604051908190039020815260208101919091526040016000205460ff161515610f5957600080fd5b50600b805460ff19169055565b600080600080600080610f77610e8a565b11610f8157600080fd5b600b5433945060ff16158015610faf5750600160a060020a0384166000908152600460205260409020548611155b1515610fba57600080fd5b6000610fc66001610d0d565b1115610fd457610fd4610bec565b610fdf866014611448565b9250610feb868461145f565b9150610ff683611509565b90506110046008548461145f565b600855600160a060020a03841660009081526004602052604090205461102a908761145f565b600160a060020a0380861660009081526004602052604080822093909355908916815220546110599083611432565b600160a060020a0388811660008181526004602090815260408083209590955560098054948a16835260069091528482208054948c029094039093558254918152929092208054928502909201909155546008546110c89190604060020a84028115156110c257fe5b04611432565b600955600160a060020a038088169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060019695505050505050565b33600a600082604051600160a060020a03919091166c01000000000000000000000000028152601401604051908190039020815260208101919091526040016000205460ff16151561116a57600080fd5b600182805161117d9291602001906115aa565b505050565b33600a600082604051600160a060020a03919091166c01000000000000000000000000028152601401604051908190039020815260208101919091526040016000205460ff1615156111d357600080fd5b600082805161117d9291602001906115aa565b60008060008060008060006111f9610e8a565b1161120357600080fd5b33600160a060020a03811660009081526004602052604090205490965087111561122c57600080fd5b86945061123885611509565b9350611245846014611448565b9250611251848461145f565b915061125f6008548661145f565b600855600160a060020a038616600090815260046020526040902054611285908661145f565b600160a060020a03871660009081526004602090815260408083209390935560095460069091529181208054928802604060020a8602019283900390556008549192509011156112ec576112e8600954600854604060020a86028115156110c257fe5b6009555b85600160a060020a03167fc4823739c5787d2ca17e404aa47d5569ae71dfb49cbf21b3f6152ed238a31139868460405191825260208201526040908101905180910390a250505050505050565b33600160a060020a0381166000908152600460205260408120549081111561136457611364816111e6565b61136c610bec565b5050565b6000610d4a34836104e1565b60008060008061138c6001610d0d565b1161139657600080fd5b6113a06000610d0d565b33600160a060020a03811660009081526006602090815260408083208054604060020a870201905560059091528120805490829055909201945092506113e79084906104e1565b905081600160a060020a03167fbe339fc14b041c2b0e0f3dd2cd325d0c3668b78378001e53160eab3615326458848360405191825260208201526040908101905180910390a2505050565b60008282018381101561144157fe5b9392505050565b600080828481151561145657fe5b04949350505050565b60008282111561146b57fe5b50900390565b6008546000906c01431e0fae6d7217caa00000009082906402540be4006114f66114f0730380d4bd8a8678c1bb542c80deb4800000000000880268056bc75e2d631000006002860a02017005e0a1fd2712875988becaad0000000000850201780197d4df19d605767337e9f14d3eec8920e40000000000000001611575565b8561145f565b8115156114ff57fe5b0403949350505050565b600854600090670de0b6b3a76400008381019181019083906115626414f46b04008285046402540be40002018702600283670de0b6b3a763ffff1982890a8b900301046402540be4000281151561155c57fe5b0461145f565b81151561156b57fe5b0495945050505050565b80600260018201045b81811015610d4a57809150600281828581151561159757fe5b04018115156115a257fe5b04905061157e565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106115eb57805160ff1916838001178555611618565b82800160010185558215611618579182015b828111156116185782518255916020019190600101906115fd565b50610e9992610b8d9250905b80821115610e9957600081556001016116245600a165627a7a72305820eeb681dbf2f9c3dcf490e9a215f2d0b42d7b725d9b0e461e5bfbfe107ebb89820029

   Swarm Source:
bzzr://eeb681dbf2f9c3dcf490e9a215f2d0b42d7b725d9b0e461e5bfbfe107ebb8982

 

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.