Sponsored:   LH-CRYPTO - 200 instruments (BTC, EUR, GOLD, OIL, SHARES). Leverage up to 1:500. OPEN ACCOUNT
Contract Overview
Balance: 0.028142895000001173 Ether
Ether Value: $4.38 (@ $155.53/ETH)
Transactions: 1359 txns
Misc:
Address Watch: Add To Watch List
Contract Creator: 0x4ece223a70f46056419957ebda1e31d5d79ff03aat txn 0x3f4342d9ca5cf6541aa83aca45171c5e9b6977bfe936efc51e4b9b2407b5a251
Token Balance:
 Latest 25 transactions from a total of 1359 transactions
(+1 PendingTxn)

TxHash Age From To Value [TxFee]
0x2b7723fb28066023559405e029907772671d0d4790c08a429e7183fba8991dd5(pending)0x3a1f8827a8edcb5d3981817acaa65261951bae29  IN  0xbee61423ef891d33c1ef322338ef85c536898d800.008400001 Ether(Pending)
0x8aa3dbd9771ea7fefac6e270bf690eb957393e24b21a8722f2eba86f1b437f4d7 hrs 19 mins ago0xffcb9dee17f31626b9489a4ef86c8c6b372ab291  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.0004384581
0x6be22621a1a449993ce8a4098d1c4d3fc179a099fa8953f1761765f303b1221b20 hrs 51 mins ago0x986c1603ea04f8f1958f85ee3566b9aed0addc02  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00043256
0x3a5a509c192a66488dfd441c86e3de152f4db4782e0ed7f1cd6ff6ffd3863bff20 hrs 54 mins ago0x986c1603ea04f8f1958f85ee3566b9aed0addc02  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00037256
0x84762ae67d3dbc7d9d55ce49a6ac869dc644331809945909c6ea5bde2651db3220 hrs 56 mins ago0x986c1603ea04f8f1958f85ee3566b9aed0addc02  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.007200001 Ether0.000879657
0x9d151a97d39ab49c17e7e1ca750f59a3969f11258ed1881eeae200ecd39e54955 days 13 hrs ago0x0a9562318ea285146170eb137ad9084aaae24e75  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00046538
0x3eaba4ebc1a95055b84a0966896b014e6216b76505ef9d067416d7a4d13f75035 days 13 hrs ago0x0a9562318ea285146170eb137ad9084aaae24e75  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00046538
0xc261e9001024ad130d034d74195912d9a31c4212ad30852b57eda6682aa6b0355 days 13 hrs ago0x0a9562318ea285146170eb137ad9084aaae24e75  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00046538
0xa33a66be0c303cc42c2175cf3578125d67c1fa422eab21324c0e8444c1bb76f95 days 13 hrs ago0x0a9562318ea285146170eb137ad9084aaae24e75  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00054038
0xd2dd2477843b6f7f55912fb66f4a3f07c7da537458160ce89e3044d1f4bae5007 days 7 hrs ago0x9a37a91beed8a067684b3ead82067a9ae275a0e0  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.001200001 Ether0.00082082
0x8081b3748ef471da97614be86bbe0542347d68232dac6cdbde2c9356436680c87 days 7 hrs ago0x06123b5be1ed7ee00233f076eb8e03075bde9a93  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00043256
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e459837 days 18 hrs ago0x9621daab4af549936ef1b4cc8909e29252780377  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.008400001 Ether0.0005947968
0x7781d75a71fe1977839e2553ba84316701744ad0bd941bc13c962449f706bb628 days 1 hr ago0x698c06a640eee355343731f4372cfec8cd7931a7  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.0000747758
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf11119 days 6 hrs ago0x9a37a91beed8a067684b3ead82067a9ae275a0e0  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.004200001 Ether0.00087528
0xbd2c190b149f20783309378a523ae5c814a0789402ad5188ab8a37417fc091289 days 17 hrs ago0x4ece223a70f46056419957ebda1e31d5d79ff03a  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.003720001 Ether0.000783783
0xee3fec2a746c1fc5d3db5b3ed0acbdab64913ef0c59ccb635fd06bb69d33e32f10 days 2 hrs ago0x31dd670d19a006221c119f3661c3cf29d2d0cf34  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.001200001 Ether0.000768544
0x5f5417ba855cbbc37393fe39de36ffab9dab378ec878621f869233e2abea00ba10 days 2 hrs ago0x56002bb4783e0cb7fff055683fb324ff5cd2df9f  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00055884
0x810aa90c42c03a73a260a116a8fc39b91ccd4a3b72552c2a3e6ec421e3bef1ad10 days 2 hrs ago0x31dd670d19a006221c119f3661c3cf29d2d0cf34  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.00037256
0xd165e5142d8861fbde5515656c8f95e07e9c3de49ac604d6de55ca1c6053443810 days 2 hrs ago0xafad64e0d8c666973ec5903823df44d68f877ae1  IN   0xbee61423ef891d33c1ef322338ef85c536898d800 Ether0.000372304
0x14bdf9c3baa55b88e674ef968bde1567c0f4369493682700f1acd8cf897e494c10 days 10 hrs ago0xafad64e0d8c666973ec5903823df44d68f877ae1  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.010020001 Ether0.000615615
0xec8a5663c53711594e007801335f09ca34fe2e8b39616057e64f991dc9b8737210 days 10 hrs ago0xafad64e0d8c666973ec5903823df44d68f877ae1  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.004800001 Ether0.000738933
0x09ecb8902abb916500f1fb8107432f026f0084e168a36a856e9d6ca385481f6810 days 10 hrs ago0xafad64e0d8c666973ec5903823df44d68f877ae1  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.004200001 Ether0.000779694
0xc076ec8cedb5839291a677c48ab3a28074fc90dc5c9a4d80b33a694811fc401d10 days 10 hrs ago0x9a37a91beed8a067684b3ead82067a9ae275a0e0  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.002400001 Ether0.000702732
0x6e21dc94d41d801ed33ad0c3349a9191e87aafd3d1fd5079bd7781fa07ee41d110 days 10 hrs ago0xafad64e0d8c666973ec5903823df44d68f877ae1  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.003900001 Ether0.0009285632
0x986a261f2e3f9eb06906e6f9b00f84fc929fca0a8b8ad2ff9f8aa13cbe78800b10 days 11 hrs ago0x31dd670d19a006221c119f3661c3cf29d2d0cf34  IN   0xbee61423ef891d33c1ef322338ef85c536898d800.000120001 Ether0.00082082
[ 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
0x84762ae67d3dbc7d9d55ce49a6ac869dc644331809945909c6ea5bde2651db32672904220 hrs 56 mins ago0xbee61423ef891d33c1ef322338ef85c536898d800x65fe52bc0e28a679513bc2781d2aebac0ee2795a0.0003 Ether
0x84762ae67d3dbc7d9d55ce49a6ac869dc644331809945909c6ea5bde2651db32672904220 hrs 56 mins ago0xbee61423ef891d33c1ef322338ef85c536898d800xeddb036a52a6d2c375e501be7c8c8cd45d07e7960.00036 Ether
0x84762ae67d3dbc7d9d55ce49a6ac869dc644331809945909c6ea5bde2651db32672904220 hrs 56 mins ago0xbee61423ef891d33c1ef322338ef85c536898d800x0a9562318ea285146170eb137ad9084aaae24e750.00576 Ether
0x84762ae67d3dbc7d9d55ce49a6ac869dc644331809945909c6ea5bde2651db32672904220 hrs 56 mins ago0xbee61423ef891d33c1ef322338ef85c536898d800x9a37a91beed8a067684b3ead82067a9ae275a0e00.00096 Ether
0xd2dd2477843b6f7f55912fb66f4a3f07c7da537458160ce89e3044d1f4bae50066896217 days 7 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xafad64e0d8c666973ec5903823df44d68f877ae10.00005 Ether
0xd2dd2477843b6f7f55912fb66f4a3f07c7da537458160ce89e3044d1f4bae50066896217 days 7 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xeddb036a52a6d2c375e501be7c8c8cd45d07e7960.00006 Ether
0xd2dd2477843b6f7f55912fb66f4a3f07c7da537458160ce89e3044d1f4bae50066896217 days 7 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x06123b5be1ed7ee00233f076eb8e03075bde9a930.00096 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x01bd1c8dbc93082e78201b7d4eec7ea55617d5eb0.0000875 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x01bd1c8dbc93082e78201b7d4eec7ea55617d5eb0.0000875 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x01bd1c8dbc93082e78201b7d4eec7ea55617d5eb0.0000875 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x9621daab4af549936ef1b4cc8909e292527803770.0000875 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xeddb036a52a6d2c375e501be7c8c8cd45d07e7960.00042 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x01bd1c8dbc93082e78201b7d4eec7ea55617d5eb0.00672 Ether
0x0a7790153d29ba86a273884f0a2a1e9b530af5257f5f65b3437e2b5980e4598366867487 days 18 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x9a37a91beed8a067684b3ead82067a9ae275a0e00.003828 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xafad64e0d8c666973ec5903823df44d68f877ae10.000035 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xc04eee3e73f888bb31ba18ba1b3c0f1c8d089aba0.000035 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xc04eee3e73f888bb31ba18ba1b3c0f1c8d089aba0.000035 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xafad64e0d8c666973ec5903823df44d68f877ae10.000035 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xafad64e0d8c666973ec5903823df44d68f877ae10.000035 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xeddb036a52a6d2c375e501be7c8c8cd45d07e7960.00021 Ether
0x39e1794f3cee1fd7bb3a0bce8347aa4b59f07565cd0848b1b40643fec0cf111166776069 days 6 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xafad64e0d8c666973ec5903823df44d68f877ae10.00336 Ether
0xbd2c190b149f20783309378a523ae5c814a0789402ad5188ab8a37417fc0912866748879 days 17 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x55796756cf0906ba65a7a3bb85041ade41d19e9d0.0000775 Ether
0xbd2c190b149f20783309378a523ae5c814a0789402ad5188ab8a37417fc0912866748879 days 17 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xafad64e0d8c666973ec5903823df44d68f877ae10.0000775 Ether
0xbd2c190b149f20783309378a523ae5c814a0789402ad5188ab8a37417fc0912866748879 days 17 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800xeddb036a52a6d2c375e501be7c8c8cd45d07e7960.000186 Ether
0xbd2c190b149f20783309378a523ae5c814a0789402ad5188ab8a37417fc0912866748879 days 17 hrs ago0xbee61423ef891d33c1ef322338ef85c536898d800x31dd670d19a006221c119f3661c3cf29d2d0cf340.002976 Ether
[ Download CSV Export  ] 
Contract Source Code Verified (Exact Match)
Contract Name: Market
Compiler Text: v0.4.25+commit.59dbf8f1
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.23;
/*
** WARNING:  THIS PRODUCT IS HIGHLY ADDICTIVE.  IF YOU HAVE AN ADDICTIVE NATURE.  DO NOT PLAY.
*/

/*    
* Author:  Konstantin G...
* Telegram: @bunnygame
* 
* email: [email protected]
* site : http://bunnycoin.co
* @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 owner;
    address ownerMoney;   
     
 

    /**
    * @dev The Ownable constructor sets the original `owner` of the contract to the sender
    * account.
    */    
    constructor() public {
        owner = msg.sender;
        ownerMoney = msg.sender;
    }

    /**
    * @dev Throws if called by any account other than the owner.
    */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

 

    function transferMoney(address _add) public  onlyOwner {
        if (_add != address(0)) {
            ownerMoney = _add;
        }
    }
    
 
    function transferOwner(address _add) public onlyOwner {
        if (_add != address(0)) {
            owner = _add;
        }
    } 
      
    function getOwnerMoney() public view onlyOwner returns(address) {
        return ownerMoney;
    } 
 
}

 


/**
 * @title Whitelist
 * @dev The Whitelist contract has a whitelist of addresses, and provides basic authorization control functions.
 * @dev This simplifies the implementation of "user permissions".
 */
contract Whitelist is Ownable {
    mapping(address => bool) public whitelist;
    event WhitelistedAddressAdded(address addr);
    event WhitelistedAddressRemoved(address addr);
 
  /**
   * @dev Throws if called by any account that's not whitelisted.
   */
    modifier onlyWhitelisted() {
        require(whitelist[msg.sender]);
        _;
    }

    constructor() public {
        addAddressToWhitelist(msg.sender);   
    }

  /**
   * @dev add an address to the whitelist
   * @param addr address
   * @return true if the address was added to the whitelist, false if the address was already in the whitelist
   */
    function addAddressToWhitelist(address addr) public onlyOwner returns(bool success) {
        if (!whitelist[addr]) {
            whitelist[addr] = true;
            emit WhitelistedAddressAdded(addr);
            success = true;
        }
    }

    function getInWhitelist(address addr) public view returns(bool) {
        return whitelist[addr];
    }

    /**
    * @dev add addresses to the whitelist
    * @param addrs addresses
    * @return true if at least one address was added to the whitelist,
    * false if all addresses were already in the whitelist
    */
    function addAddressesToWhitelist(address[] addrs) onlyOwner public returns(bool success) {
        for (uint256 i = 0; i < addrs.length; i++) {
            if (addAddressToWhitelist(addrs[i])) {
                success = true;
            }
        }
    }

    /**
    * @dev remove an address from the whitelist
    * @param addr address
    * @return true if the address was removed from the whitelist,
    * false if the address wasn't in the whitelist in the first place
    */
    function removeAddressFromWhitelist(address addr) onlyOwner public returns(bool success) {
        if (whitelist[addr]) {
            whitelist[addr] = false;
            emit WhitelistedAddressRemoved(addr);
            success = true;
        }
    }

    /**
    * @dev remove addresses from the whitelist
    * @param addrs addresses
    * @return true if at least one address was removed from the whitelist,
    * false if all addresses weren't in the whitelist in the first place
    */
    function removeAddressesFromWhitelist(address[] addrs) onlyOwner public returns(bool success) {
        for (uint256 i = 0; i < addrs.length; i++) {
            if (removeAddressFromWhitelist(addrs[i])) {
                success = true;
            }
        }
    }
}
/**
 * @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;
        }
        uint 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;
    }
  
}


contract StorageInterface { 
    function setBunnyCost(uint32 _bunnyID, uint _money) external;
    function getBunnyCost(uint32 _bunnyID) public view returns (uint money);
    function deleteBunnyCost(uint32 _bunnyID) external; 
    function isPauseSave() public  view returns(bool);
}




 
/// @title Interface new rabbits address
contract PublicInterface { 
    function transferFrom(address _from, address _to, uint32 _tokenId) public returns (bool);
    function ownerOf(uint32 _tokenId) public view returns (address owner);
    function isUIntPublic() public view returns(bool);// check pause
    function getRabbitMother( uint32 mother) public view returns(uint32[5]);
    function getRabbitMotherSumm(uint32 mother) public view returns(uint count);
}

contract Market  is Whitelist { 
           
    using SafeMath for uint256;
    
    event StopMarket(uint32 bunnyId);
    event StartMarket(uint32 bunnyId, uint money, uint timeStart, uint stepTimeSale);
    event BunnyBuy(uint32 bunnyId, uint money);  
    event Tournament(address who, uint bank, uint timeLeft, uint timeRange);
    
    event OwnBank(uint bankMoney, uint countInvestor, address lastOwner, uint addTime, uint stepTime);
    event MotherMoney(uint32 motherId, uint32 bunnyId, uint money);
     


    bool public pause = false; 
    
    
    uint public stepTimeSale = 1;
 

    uint public minPrice = 0.0001 ether;
    uint reallyPrice = 0.0001 ether;
    uint public rangePrice = 20;


    uint public minTimeBank = 12*60*60;
    uint public maxTimeBank = 13*60*60;
    uint public currentTimeBank = maxTimeBank;
    uint public rangeTimeBank = 2;


    uint public coefficientTimeStep = 5;
    uint public commission = 5;
    uint public commission_mom = 5;
    uint public percentBank = 10;

    // how many times have the bank been increased
 
    uint public added_to_the_bank = 0;

    uint public marketCount = 0; 
    uint public numberOfWins = 0;  
    uint public getMoneyCount = 0;

    string public advertising = "Your advertisement here!";
 
    // how many last sales to take into account in the contract before the formation of the price
  //  uint8 middlelast = 20;
     
     
 
    // the last cost of a sold seal
    uint public lastmoney = 0;   
    uint public totalClosedBID = 0;

    // how many a bunny
   // mapping (uint32 => uint) public bunnyCost;
    mapping (uint32 => uint) public timeCost;

    
    address public lastOwner;
    uint public bankMoney;
    uint public lastSaleTime;

    address public pubAddress;
    address public storageAddress;
    PublicInterface publicContract; 
    StorageInterface storageContract; 

 
 

    constructor() public { 
        transferContract(0x35Ea9df0B7E2E450B1D129a6F81276103b84F3dC); 
        transferStorage(0x8AC4Da82C4a1E0C1578558C5C685F8AE790dA5a3);
    }

    function setRangePrice(uint _rangePrice) public onlyWhitelisted {
        require(_rangePrice > 0);
        rangePrice = _rangePrice;
    }

    function setReallyPrice(uint _reallyPrice) public onlyWhitelisted {
        require(_reallyPrice > 0);
        reallyPrice = _reallyPrice;
    }

 


    function setStepTimeSale(uint _stepTimeSale) public onlyWhitelisted {
        require(_stepTimeSale > 0);
        stepTimeSale = _stepTimeSale;
    }

    function setRangeTimeBank(uint _rangeTimeBank) public onlyWhitelisted {
        require(_rangeTimeBank > 0);
        rangeTimeBank = _rangeTimeBank;
    }

    // minimum time step
    function setMinTimeBank(uint _minTimeBank) public onlyWhitelisted {
        require(_minTimeBank > 0);
        minTimeBank = _minTimeBank;
    }

    // minimum time step
    function setMaxTimeBank(uint _maxTimeBank) public onlyWhitelisted {
        require(_maxTimeBank > 0);
        maxTimeBank = _maxTimeBank;
    }

    // time increment change rate
    function setCoefficientTimeStep(uint _coefficientTimeStep) public onlyWhitelisted {
        require(_coefficientTimeStep > 0);
        coefficientTimeStep = _coefficientTimeStep;
    }

 

    function setPercentCommission(uint _commission) public onlyWhitelisted {
        require(_commission > 0);
        commission = _commission;
    }

    function setPercentBank(uint _percentBank) public onlyWhitelisted {
        require(_percentBank > 0);
        percentBank = _percentBank; 
    }
    /**
    * @dev change min price a bunny
     */
    function setMinPrice(uint _minPrice) public onlyWhitelisted {
        require(_minPrice > 0);
        minPrice = _minPrice;
        
    }

    function setCurrentTimeBank(uint _currentTimeBank) public onlyWhitelisted {
        require(_currentTimeBank > 0);
        currentTimeBank = _currentTimeBank;
    }
 
 
    /**
    * @dev We are selling rabbit for sale
    * @param _bunnyId - whose rabbit we exhibit 
    * @param _money - sale amount 
    */
  function startMarketOwner(uint32 _bunnyId, uint _money) public  onlyWhitelisted {
        require(checkContract());
        require(isPauseSave());
        require(currentPrice(_bunnyId) != _money);
        require(storageContract.isPauseSave());
          
      //  bunnyCost[_bunnyId] = _money;
        timeCost[_bunnyId] = block.timestamp;
        storageContract.setBunnyCost(_bunnyId, _money);
        emit StartMarket(_bunnyId, currentPrice(_bunnyId), block.timestamp, stepTimeSale);
        marketCount++;
    }
 
    /**
    * @dev Allows the current owner to transfer control of the contract to a newOwner.
    * @param _pubAddress  public address of the main contract
    */
    function transferContract(address _pubAddress) public onlyWhitelisted {
        require(_pubAddress != address(0)); 
        pubAddress = _pubAddress;
        publicContract = PublicInterface(_pubAddress);
    } 

    /**
    * @dev Allows the current owner to transfer control of the contract to a newOwner.
    * @param _storageAddress  public address of the main contract
    */
    function transferStorage(address _storageAddress) public onlyWhitelisted {
        require(_storageAddress != address(0)); 
        storageAddress = _storageAddress;
        storageContract = StorageInterface(_storageAddress);
    } 
 
    function setPause() public onlyWhitelisted {
        pause = !pause;
    }

    function isPauseSave() public  view returns(bool){
        return !pause;
    }

    /**
    * @dev get rabbit price
    */
    function currentPrice(uint32 _bunnyid) public view returns(uint) { 
        require(storageContract.isPauseSave());
        uint money = storageContract.getBunnyCost(_bunnyid);
        if (money > 0) {
            //commission_mom
            uint percOne = money.div(100);
            // commision
            
            uint commissionMoney = percOne.mul(commission);
            money = money.add(commissionMoney); 

            uint commissionMom = percOne.mul(commission_mom);
            money = money.add(commissionMom); 

            uint percBank = percOne.mul(percentBank);
            money = money.add(percBank); 

            return money;
        }
    } 

    function getReallyPrice() public view returns (uint) {
        return reallyPrice;
    }

    /**
    * @dev We are selling rabbit for sale
    * @param _bunnyId - whose rabbit we exhibit 
    * @param _money - sale amount 
    */
  function startMarket(uint32 _bunnyId, uint _money) public{
        require(checkContract());
        require(isPauseSave());
        require(currentPrice(_bunnyId) != _money);
        require(storageContract.isPauseSave());
        require(_money >= reallyPrice);

        require(publicContract.ownerOf(_bunnyId) == msg.sender);

        timeCost[_bunnyId] = block.timestamp;

        storageContract.setBunnyCost(_bunnyId, _money);
        
        emit StartMarket(_bunnyId, currentPrice(_bunnyId), block.timestamp, stepTimeSale);
        marketCount++;
    }

    /**
    * @dev remove from sale rabbit
    * @param _bunnyId - a rabbit that is removed from sale 
    */
    function stopMarket(uint32 _bunnyId) public returns(uint) {
        require(checkContract());
        require(isPauseSave());
        require(publicContract.ownerOf(_bunnyId) == msg.sender);
        require(storageContract.isPauseSave());

        storageContract.deleteBunnyCost(_bunnyId);
        emit StopMarket(_bunnyId);
        return marketCount--;
    }

    function timeBunny(uint32 _bunnyId) public view returns(bool can, uint timeleft) {
        uint _tmp = timeCost[_bunnyId].add(stepTimeSale);
        if (timeCost[_bunnyId] > 0 && block.timestamp >= _tmp) {
            can = true;
            timeleft = 0;
        } else { 
            can = false; 
            _tmp = _tmp.sub(block.timestamp);
            if (_tmp > 0) {
                timeleft = _tmp;
            } else {
                timeleft = 0;
            }
        } 
    }

    function transferFromBunny(uint32 _bunnyId) public {
        require(checkContract());
        publicContract.transferFrom(publicContract.ownerOf(_bunnyId), msg.sender, _bunnyId); 
    }


// https://rinkeby.etherscan.io/address/0xc7984712b3d0fac8e965dd17a995db5007fe08f2#writeContract
    /**
    * @dev Acquisition of a rabbit from another user
    * @param _bunnyId  Bunny
     */
    function buyBunny(uint32 _bunnyId) public payable {
        require(isPauseSave());
        require(checkContract());
        require(publicContract.ownerOf(_bunnyId) != msg.sender);
        require(storageContract.isPauseSave());
        lastmoney = currentPrice(_bunnyId);
        require(msg.value >= lastmoney && 0 != lastmoney);

        bool can;
        (can,) = timeBunny(_bunnyId);
        require(can); 
        // stop trading on the current rabbit
        totalClosedBID++;
        // Sending money to the old user 
        // is sent to the new owner of the bought rabbit
 
        checkTimeWin();
        sendMoney(publicContract.ownerOf(_bunnyId), lastmoney);

        publicContract.transferFrom(publicContract.ownerOf(_bunnyId), msg.sender, _bunnyId); 
        sendMoneyMother(_bunnyId);
        stopMarket(_bunnyId);
        changeReallyPrice();
        changeReallyTime();
        lastOwner = msg.sender; 
        lastSaleTime = block.timestamp; 
        emit OwnBank(bankMoney, added_to_the_bank, lastOwner, lastSaleTime, currentTimeBank);
        emit BunnyBuy(_bunnyId, lastmoney);
    }  

    
    function changeReallyTime() internal {
        if (rangeTimeBank > 0) {
            uint tmp = added_to_the_bank.div(rangeTimeBank);
            tmp = maxTimeBank.sub(tmp);

            if (currentTimeBank > minTimeBank) { 
                currentTimeBank = tmp;
            }
        } 
    }
 
    function changeReallyPrice() internal {
        if (added_to_the_bank > 0 && rangePrice > 0) {
            uint tmp = added_to_the_bank.div(rangePrice);
            reallyPrice = minPrice.mul(tmp);  
        } 
    }
  

     
    function sendMoneyMother(uint32 _bunnyId) internal {
        uint money = storageContract.getBunnyCost(_bunnyId);
        if (money > 0) { 
            uint procentOne = (money.div(100)); 
            // commission_mom
            uint32[5] memory mother;
            mother = publicContract.getRabbitMother(_bunnyId);
            uint motherCount = publicContract.getRabbitMotherSumm(_bunnyId);
            if (motherCount > 0) {
                uint motherMoney = (procentOne*commission_mom).div(motherCount);
                    for (uint m = 0; m < 5; m++) {
                        if (mother[m] != 0) {
                            publicContract.ownerOf(mother[m]).transfer(motherMoney);
                            emit MotherMoney(mother[m], _bunnyId, motherMoney);
                        }
                    }
                } 
        }
    }


    /**
    * @param _to to whom money is sent
    * @param _money the amount of money is being distributed at the moment
     */
    function sendMoney(address _to, uint256 _money) internal { 
        if (_money > 0) { 
            uint procentOne = (_money/100); 
            _to.transfer(procentOne * (100-(commission+percentBank+commission_mom)));
            addBank(procentOne*percentBank);
            ownerMoney.transfer(procentOne*commission);  
        }
    }



    function checkTimeWin() internal {
        if (lastSaleTime + currentTimeBank < block.timestamp) {
            win(); 
        }
        lastSaleTime = block.timestamp;
    }

    
    function win() internal {
        // ####### WIN ##############
        // send money
        if (address(this).balance > 0 && address(this).balance >= bankMoney && lastOwner != address(0)) { 
            advertising = "";
            added_to_the_bank = 0;
            reallyPrice = minPrice;
            currentTimeBank = maxTimeBank;

            lastOwner.transfer(bankMoney);
            numberOfWins = numberOfWins.add(1); 
            emit Tournament (lastOwner, bankMoney, lastSaleTime, block.timestamp);
            bankMoney = 0;
        }
    }    
    
    
    /**
    * @dev add money of bank
    */
    function addCountInvestors(uint countInvestors) public onlyWhitelisted  { 
        added_to_the_bank = countInvestors;
    }

        /**
    * @dev add money of bank
    */
    function addBank(uint _money) internal { 
        bankMoney = bankMoney.add(_money);
        added_to_the_bank = added_to_the_bank.add(1);
    }
     
 
    function ownerOf(uint32 _bunnyId) public  view returns(address) {
        return publicContract.ownerOf(_bunnyId);
    } 
    
    /**
    * Check
     */
    function checkContract() public view returns(bool) {
        return publicContract.isUIntPublic(); 
    }

    function buyAdvert(string _text)  public payable { 
        require(msg.value > (reallyPrice*2));
        require(checkContract());
        advertising = _text;
        addBank(msg.value); 
    }
 
    /**
    * Only if the user has violated the advertising rules
     */
    function noAdvert() public onlyWhitelisted {
        advertising = "";
    } 
 
    /**
    * Only unforeseen situations
     */
    function getMoney(uint _value) public onlyWhitelisted {
        require(address(this).balance >= _value); 
        ownerMoney.transfer(_value);
        // for public, no scam
        getMoneyCount = getMoneyCount.add(_value);
    }
    /**
    * For convenience in the client interface
     */
    function getProperty() public view 
    returns(
            uint tmp_currentTimeBank,
            uint tmp_stepTimeSale,
            uint tmp_minPrice,
            uint tmp_reallyPrice,
            
            uint tmp_added_to_the_bank,
            uint tmp_marketCount, 
            uint tmp_numberOfWins,
            uint tmp_getMoneyCount,
            uint tmp_lastmoney,   
            uint tmp_totalClosedBID,
            uint tmp_bankMoney,
            uint tmp_lastSaleTime
            )
            {
                tmp_currentTimeBank = currentTimeBank;
                tmp_stepTimeSale = stepTimeSale;
                tmp_minPrice = minPrice;
                tmp_reallyPrice = reallyPrice;
                tmp_added_to_the_bank = added_to_the_bank;
                tmp_marketCount = marketCount; 
                tmp_numberOfWins = numberOfWins;
                tmp_getMoneyCount = getMoneyCount;

                tmp_lastmoney = lastmoney;   
                tmp_totalClosedBID = totalClosedBID;
                tmp_bankMoney = bankMoney;
                tmp_lastSaleTime = lastSaleTime;
    }

}

    Contract ABI  
[{"constant":false,"inputs":[{"name":"_storageAddress","type":"address"}],"name":"transferStorage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getProperty","outputs":[{"name":"tmp_currentTimeBank","type":"uint256"},{"name":"tmp_stepTimeSale","type":"uint256"},{"name":"tmp_minPrice","type":"uint256"},{"name":"tmp_reallyPrice","type":"uint256"},{"name":"tmp_added_to_the_bank","type":"uint256"},{"name":"tmp_marketCount","type":"uint256"},{"name":"tmp_numberOfWins","type":"uint256"},{"name":"tmp_getMoneyCount","type":"uint256"},{"name":"tmp_lastmoney","type":"uint256"},{"name":"tmp_totalClosedBID","type":"uint256"},{"name":"tmp_bankMoney","type":"uint256"},{"name":"tmp_lastSaleTime","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_stepTimeSale","type":"uint256"}],"name":"setStepTimeSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"added_to_the_bank","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentTimeBank","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_bunnyId","type":"uint32"}],"name":"ownerOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addrs","type":"address[]"}],"name":"removeAddressesFromWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeAddressFromWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_text","type":"string"}],"name":"buyAdvert","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_bunnyid","type":"uint32"}],"name":"currentPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"getMoney","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"getInWhitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"checkContract","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"percentBank","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_bunnyId","type":"uint32"}],"name":"transferFromBunny","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_pubAddress","type":"address"}],"name":"transferContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_coefficientTimeStep","type":"uint256"}],"name":"setCoefficientTimeStep","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_add","type":"address"}],"name":"transferOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"advertising","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_bunnyId","type":"uint32"},{"name":"_money","type":"uint256"}],"name":"startMarket","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_bunnyId","type":"uint32"},{"name":"_money","type":"uint256"}],"name":"startMarketOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"rangePrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_minPrice","type":"uint256"}],"name":"setMinPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reallyPrice","type":"uint256"}],"name":"setReallyPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOwnerMoney","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"noAdvert","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastmoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minTimeBank","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint32"}],"name":"timeCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isPauseSave","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rangeTimeBank","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addAddressToWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_maxTimeBank","type":"uint256"}],"name":"setMaxTimeBank","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"pause","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"storageAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_add","type":"address"}],"name":"transferMoney","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_currentTimeBank","type":"uint256"}],"name":"setCurrentTimeBank","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_commission","type":"uint256"}],"name":"setPercentCommission","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_bunnyId","type":"uint32"}],"name":"buyBunny","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"maxTimeBank","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"commission_mom","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_rangePrice","type":"uint256"}],"name":"setRangePrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_bunnyId","type":"uint32"}],"name":"timeBunny","outputs":[{"name":"can","type":"bool"},{"name":"timeleft","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_minTimeBank","type":"uint256"}],"name":"setMinTimeBank","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"bankMoney","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pubAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_rangeTimeBank","type":"uint256"}],"name":"setRangeTimeBank","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getMoneyCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getReallyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_percentBank","type":"uint256"}],"name":"setPercentBank","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"setPause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"countInvestors","type":"uint256"}],"name":"addCountInvestors","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"coefficientTimeStep","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"numberOfWins","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stepTimeSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"commission","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addrs","type":"address[]"}],"name":"addAddressesToWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"minPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"marketCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalClosedBID","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastSaleTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_bunnyId","type":"uint32"}],"name":"stopMarket","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"bunnyId","type":"uint32"}],"name":"StopMarket","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"bunnyId","type":"uint32"},{"indexed":false,"name":"money","type":"uint256"},{"indexed":false,"name":"timeStart","type":"uint256"},{"indexed":false,"name":"stepTimeSale","type":"uint256"}],"name":"StartMarket","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"bunnyId","type":"uint32"},{"indexed":false,"name":"money","type":"uint256"}],"name":"BunnyBuy","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"who","type":"address"},{"indexed":false,"name":"bank","type":"uint256"},{"indexed":false,"name":"timeLeft","type":"uint256"},{"indexed":false,"name":"timeRange","type":"uint256"}],"name":"Tournament","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"bankMoney","type":"uint256"},{"indexed":false,"name":"countInvestor","type":"uint256"},{"indexed":false,"name":"lastOwner","type":"address"},{"indexed":false,"name":"addTime","type":"uint256"},{"indexed":false,"name":"stepTime","type":"uint256"}],"name":"OwnBank","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"motherId","type":"uint32"},{"indexed":false,"name":"bunnyId","type":"uint32"},{"indexed":false,"name":"money","type":"uint256"}],"name":"MotherMoney","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"}],"name":"WhitelistedAddressAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"}],"name":"WhitelistedAddressRemoved","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60806040526000600360006101000a81548160ff0219169083151502179055506001600455655af3107a4000600555655af3107a4000600655601460075561a8c060085561b6d0600955600954600a556002600b556005600c556005600d556005600e55600a600f5560006010556000601155600060125560006013556040805190810160405280601881526020017f596f7572206164766572746973656d656e74206865726521000000000000000081525060149080519060200190620000c99291906200058d565b5060006015556000601655348015620000e157600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200017d33620001e0640100000000026401000000009004565b50620001ac7335ea9df0b7e2e450b1d129a6f81276103b84f3dc62000357640100000000026401000000009004565b620001da738ac4da82c4a1e0c1578558c5c685f8ae790da5a362000472640100000000026401000000009004565b6200063c565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156200023e57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151562000352576001600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fd1bba68c128cc3f427e5831b3c6f99f480b6efa6b9e80c757768f6124158cc3f82604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1600190505b919050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515620003b057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515620003ed57600080fd5b80601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515620004cb57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156200050857600080fd5b80601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620005d057805160ff191683800117855562000601565b8280016001018555821562000601579182015b8281111562000600578251825591602001919060010190620005e3565b5b50905062000610919062000614565b5090565b6200063991905b80821115620006355760008160009055506001016200061b565b5090565b90565b614632806200064c6000396000f3006080604052600436106102f6576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630553b805146102fb578063077510701461033e5780630d466ef9146103b657806315e1c65c146103e35780631f9b9f8e1461040e57806323b7ec3b1461043957806324953eaa146104ac578063286dd3f51461052a5780632a2bf9a414610585578063308c0065146105e15780633262fd9a14610628578063336968f114610655578063338116b0146106b0578063346a2f9e146106df57806337410ea61461070a57806347635dac1461073d5780634bf6e007146107805780634fb2e45d146107ad578063573328ef146107f057806359e4eec9146108805780635cf42ebb146108bd5780635e670265146108fa5780635ea8cd12146109255780635ebce33014610952578063625101d51461097f57806364b9ca08146109d65780636f00ad8a146109ed57806370cfadcb14610a1857806375365c8014610a435780637878b66a14610a8a578063792bbb5514610ab95780637b9417c814610ae4578063802a38aa14610b3f5780638456cb5914610b6c57806385aa92a714610b9b57806386ce983514610bf25780638a56ca4514610c35578063921a723714610c8c57806398fa758414610cb95780639b19251a14610ce6578063a210a67614610d41578063a3e4979714610d67578063a7da611f14610d92578063ad3cc19014610dbd578063aecc629914610dea578063b1d915da14610e3c578063b81e3b1914610e69578063b96528fd14610e94578063bf5b3b1814610eeb578063bf7540d214610f18578063ced9e50414610f43578063d06f0e6d14610f6e578063d431b1ac14610f9b578063d83735a014610fb2578063d83905d814610fdf578063d85f44501461100a578063e0fe7f5c14611035578063e148919114611060578063e2ec6ec31461108b578063e45be8eb14611109578063ec97908214611134578063f65045df1461115f578063f897c9981461118a578063fb6c2b6f146111b5575b600080fd5b34801561030757600080fd5b5061033c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111fc565b005b34801561034a57600080fd5b50610353611315565b604051808d81526020018c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019c5050505050505050505050505060405180910390f35b3480156103c257600080fd5b506103e160048036038101908080359060200190929190505050611371565b005b3480156103ef57600080fd5b506103f86113e2565b6040518082815260200191505060405180910390f35b34801561041a57600080fd5b506104236113e8565b6040518082815260200191505060405180910390f35b34801561044557600080fd5b5061046a600480360381019080803563ffffffff1690602001909291905050506113ee565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b857600080fd5b50610510600480360381019080803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192905050506114cf565b604051808215151515815260200191505060405180910390f35b34801561053657600080fd5b5061056b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611578565b604051808215151515815260200191505060405180910390f35b6105df600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506116ec565b005b3480156105ed57600080fd5b50610612600480360381019080803563ffffffff169060200190929190505050611735565b6040518082815260200191505060405180910390f35b34801561063457600080fd5b506106536004803603810190808035906020019092919050505061199a565b005b34801561066157600080fd5b50610696600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a9f565b604051808215151515815260200191505060405180910390f35b3480156106bc57600080fd5b506106c5611af5565b604051808215151515815260200191505060405180910390f35b3480156106eb57600080fd5b506106f4611bbd565b6040518082815260200191505060405180910390f35b34801561071657600080fd5b5061073b600480360381019080803563ffffffff169060200190929190505050611bc3565b005b34801561074957600080fd5b5061077e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611df1565b005b34801561078c57600080fd5b506107ab60048036038101908080359060200190929190505050611f0a565b005b3480156107b957600080fd5b506107ee600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f7b565b005b3480156107fc57600080fd5b50610805612050565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561084557808201518184015260208101905061082a565b50505050905090810190601f1680156108725780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561088c57600080fd5b506108bb600480360381019080803563ffffffff169060200190929190803590602001909291905050506120ee565b005b3480156108c957600080fd5b506108f8600480360381019080803563ffffffff16906020019092919080359060200190929190505050612475565b005b34801561090657600080fd5b5061090f612732565b6040518082815260200191505060405180910390f35b34801561093157600080fd5b5061095060048036038101908080359060200190929190505050612738565b005b34801561095e57600080fd5b5061097d600480360381019080803590602001909291905050506127a9565b005b34801561098b57600080fd5b5061099461281a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109e257600080fd5b506109eb61289f565b005b3480156109f957600080fd5b50610a02612920565b6040518082815260200191505060405180910390f35b348015610a2457600080fd5b50610a2d612926565b6040518082815260200191505060405180910390f35b348015610a4f57600080fd5b50610a74600480360381019080803563ffffffff16906020019092919050505061292c565b6040518082815260200191505060405180910390f35b348015610a9657600080fd5b50610a9f612944565b604051808215151515815260200191505060405180910390f35b348015610ac557600080fd5b50610ace61295c565b6040518082815260200191505060405180910390f35b348015610af057600080fd5b50610b25600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612962565b604051808215151515815260200191505060405180910390f35b348015610b4b57600080fd5b50610b6a60048036038101908080359060200190929190505050612ad7565b005b348015610b7857600080fd5b50610b81612b48565b604051808215151515815260200191505060405180910390f35b348015610ba757600080fd5b50610bb0612b5b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610bfe57600080fd5b50610c33600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612b81565b005b348015610c4157600080fd5b50610c4a612c57565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c9857600080fd5b50610cb760048036038101908080359060200190929190505050612c7d565b005b348015610cc557600080fd5b50610ce460048036038101908080359060200190929190505050612cee565b005b348015610cf257600080fd5b50610d27600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d5f565b604051808215151515815260200191505060405180910390f35b610d65600480360381019080803563ffffffff169060200190929190505050612d7f565b005b348015610d7357600080fd5b50610d7c61344c565b6040518082815260200191505060405180910390f35b348015610d9e57600080fd5b50610da7613452565b6040518082815260200191505060405180910390f35b348015610dc957600080fd5b50610de860048036038101908080359060200190929190505050613458565b005b348015610df657600080fd5b50610e1b600480360381019080803563ffffffff1690602001909291905050506134c9565b60405180831515151581526020018281526020019250505060405180910390f35b348015610e4857600080fd5b50610e676004803603810190808035906020019092919050505061357b565b005b348015610e7557600080fd5b50610e7e6135ec565b6040518082815260200191505060405180910390f35b348015610ea057600080fd5b50610ea96135f2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ef757600080fd5b50610f1660048036038101908080359060200190929190505050613618565b005b348015610f2457600080fd5b50610f2d613689565b6040518082815260200191505060405180910390f35b348015610f4f57600080fd5b50610f5861368f565b6040518082815260200191505060405180910390f35b348015610f7a57600080fd5b50610f9960048036038101908080359060200190929190505050613699565b005b348015610fa757600080fd5b50610fb061370a565b005b348015610fbe57600080fd5b50610fdd6004803603810190808035906020019092919050505061378e565b005b348015610feb57600080fd5b50610ff46137f0565b6040518082815260200191505060405180910390f35b34801561101657600080fd5b5061101f6137f6565b6040518082815260200191505060405180910390f35b34801561104157600080fd5b5061104a6137fc565b6040518082815260200191505060405180910390f35b34801561106c57600080fd5b50611075613802565b6040518082815260200191505060405180910390f35b34801561109757600080fd5b506110ef60048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050613808565b604051808215151515815260200191505060405180910390f35b34801561111557600080fd5b5061111e6138b1565b6040518082815260200191505060405180910390f35b34801561114057600080fd5b506111496138b7565b6040518082815260200191505060405180910390f35b34801561116b57600080fd5b506111746138bd565b6040518082815260200191505060405180910390f35b34801561119657600080fd5b5061119f6138c3565b6040518082815260200191505060405180910390f35b3480156111c157600080fd5b506111e6600480360381019080803563ffffffff1690602001909291905050506138c9565b6040518082815260200191505060405180910390f35b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561125457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561129057600080fd5b80601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600080600080600080600080600080600a549b506004549a50600554995060065498506010549750601154965060125495506013549450601554935060165492506019549150601a549050909192939495969798999a9b565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156113c957600080fd5b6000811115156113d857600080fd5b8060048190555050565b60105481565b600a5481565b6000601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b15801561148d57600080fd5b505af11580156114a1573d6000803e3d6000fd5b505050506040513d60208110156114b757600080fd5b81019080805190602001909291905050509050919050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561152d57600080fd5b600090505b82518110156115725761155b838281518110151561154c57fe5b90602001906020020151611578565b1561156557600191505b8080600101915050611532565b50919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156115d557600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116e7576000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ff1abf01a1043b7c244d128e8595cf0c1d10743b022b03a02dffd8ca3bf729f5a82604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1600190505b919050565b600260065402341115156116ff57600080fd5b611707611af5565b151561171257600080fd5b806014908051906020019061172892919061453e565b5061173234613bdf565b50565b600080600080600080601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637878b66a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156117c457600080fd5b505af11580156117d8573d6000803e3d6000fd5b505050506040513d60208110156117ee57600080fd5b8101908080519060200190929190505050151561180a57600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166365074690886040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b1580156118a757600080fd5b505af11580156118bb573d6000803e3d6000fd5b505050506040513d60208110156118d157600080fd5b81019080805190602001909291905050509450600085111561198f57611901606486613c1990919063ffffffff16565b9350611918600d5485613c3490919063ffffffff16565b925061192d8386613c6f90919063ffffffff16565b9450611944600e5485613c3490919063ffffffff16565b91506119598286613c6f90919063ffffffff16565b9450611970600f5485613c3490919063ffffffff16565b90506119858186613c6f90919063ffffffff16565b9450849550611990565b5b5050505050919050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156119f257600080fd5b803073ffffffffffffffffffffffffffffffffffffffff163110151515611a1857600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611a80573d6000803e3d6000fd5b50611a9681601354613c6f90919063ffffffff16565b60138190555050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637214d6c36040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015611b7d57600080fd5b505af1158015611b91573d6000803e3d6000fd5b505050506040513d6020811015611ba757600080fd5b8101908080519060200190929190505050905090565b600f5481565b611bcb611af5565b1515611bd657600080fd5b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166384269ed9601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b158015611cb157600080fd5b505af1158015611cc5573d6000803e3d6000fd5b505050506040513d6020811015611cdb57600080fd5b810190808051906020019092919050505033846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018263ffffffff1663ffffffff1681526020019350505050602060405180830381600087803b158015611db257600080fd5b505af1158015611dc6573d6000803e3d6000fd5b505050506040513d6020811015611ddc57600080fd5b81019080805190602001909291905050505050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e4957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611e8557600080fd5b80601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611f6257600080fd5b600081111515611f7157600080fd5b80600c8190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fd657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561204d57806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60148054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156120e65780601f106120bb576101008083540402835291602001916120e6565b820191906000526020600020905b8154815290600101906020018083116120c957829003601f168201915b505050505081565b6120f6611af5565b151561210157600080fd5b612109612944565b151561211457600080fd5b8061211e83611735565b1415151561212b57600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637878b66a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156121b157600080fd5b505af11580156121c5573d6000803e3d6000fd5b505050506040513d60208110156121db57600080fd5b810190808051906020019092919050505015156121f757600080fd5b600654811015151561220857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b1580156122bc57600080fd5b505af11580156122d0573d6000803e3d6000fd5b505050506040513d60208110156122e657600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1614151561231957600080fd5b42601760008463ffffffff1663ffffffff16815260200190815260200160002081905550601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318997b3f83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808363ffffffff1663ffffffff16815260200182815260200192505050600060405180830381600087803b1580156123e257600080fd5b505af11580156123f6573d6000803e3d6000fd5b505050507f569e13d801c403c622badd51a491366dab7cfa96e4c58e50bf32baa393b176008261242584611735565b42600454604051808563ffffffff1663ffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a16011600081548092919060010191905055505050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156124cd57600080fd5b6124d5611af5565b15156124e057600080fd5b6124e8612944565b15156124f357600080fd5b806124fd83611735565b1415151561250a57600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637878b66a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561259057600080fd5b505af11580156125a4573d6000803e3d6000fd5b505050506040513d60208110156125ba57600080fd5b810190808051906020019092919050505015156125d657600080fd5b42601760008463ffffffff1663ffffffff16815260200190815260200160002081905550601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318997b3f83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808363ffffffff1663ffffffff16815260200182815260200192505050600060405180830381600087803b15801561269f57600080fd5b505af11580156126b3573d6000803e3d6000fd5b505050507f569e13d801c403c622badd51a491366dab7cfa96e4c58e50bf32baa393b17600826126e284611735565b42600454604051808563ffffffff1663ffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a16011600081548092919060010191905055505050565b60075481565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561279057600080fd5b60008111151561279f57600080fd5b8060058190555050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561280157600080fd5b60008111151561281057600080fd5b8060068190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561287757600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156128f757600080fd5b60206040519081016040528060008152506014908051906020019061291d92919061453e565b50565b60155481565b60085481565b60176020528060005260406000206000915090505481565b6000600360009054906101000a900460ff1615905090565b600b5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156129bf57600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515612ad2576001600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fd1bba68c128cc3f427e5831b3c6f99f480b6efa6b9e80c757768f6124158cc3f82604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1600190505b919050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515612b2f57600080fd5b600081111515612b3e57600080fd5b8060098190555050565b600360009054906101000a900460ff1681565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612bdc57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515612c545780600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515612cd557600080fd5b600081111515612ce457600080fd5b80600a8190555050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515612d4657600080fd5b600081111515612d5557600080fd5b80600d8190555050565b60026020528060005260406000206000915054906101000a900460ff1681565b6000612d89612944565b1515612d9457600080fd5b612d9c611af5565b1515612da757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b158015612e5b57600080fd5b505af1158015612e6f573d6000803e3d6000fd5b505050506040513d6020811015612e8557600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1614151515612eb957600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637878b66a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015612f3f57600080fd5b505af1158015612f53573d6000803e3d6000fd5b505050506040513d6020811015612f6957600080fd5b81019080805190602001909291905050501515612f8557600080fd5b612f8e82611735565b6015819055506015543410158015612fa95750601554600014155b1515612fb457600080fd5b612fbd826134c9565b5080915050801515612fce57600080fd5b601660008154809291906001019190505550612fe8613c8d565b6130cb601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b15801561308857600080fd5b505af115801561309c573d6000803e3d6000fd5b505050506040513d60208110156130b257600080fd5b8101908080519060200190929190505050601554613cad565b601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166384269ed9601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b1580156131a657600080fd5b505af11580156131ba573d6000803e3d6000fd5b505050506040513d60208110156131d057600080fd5b810190808051906020019092919050505033856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018263ffffffff1663ffffffff1681526020019350505050602060405180830381600087803b1580156132a757600080fd5b505af11580156132bb573d6000803e3d6000fd5b505050506040513d60208110156132d157600080fd5b8101908080519060200190929190505050506132ec82613d9c565b6132f5826138c9565b506132fe61426b565b6133066142bd565b33601860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042601a819055507f493cc2351ea543bfa91fc2cfe57275db2524d5c87c59419132437329c64b5359601954601054601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601a54600a54604051808681526020018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390a17faa8b4456e402faf0f19bd69217f4f33657a1be47890a1c1130fba16e233d04c082601554604051808363ffffffff1663ffffffff1681526020018281526020019250505060405180910390a15050565b60095481565b600e5481565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156134b057600080fd5b6000811115156134bf57600080fd5b8060078190555050565b6000806000613502600454601760008763ffffffff1663ffffffff16815260200190815260200160002054613c6f90919063ffffffff16565b90506000601760008663ffffffff1663ffffffff168152602001908152602001600020541180156135335750804210155b15613545576001925060009150613575565b6000925061355c428261431190919063ffffffff16565b9050600081111561356f57809150613574565b600091505b5b50915091565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156135d357600080fd5b6000811115156135e257600080fd5b8060088190555050565b60195481565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561367057600080fd5b60008111151561367f57600080fd5b80600b8190555050565b60135481565b6000600654905090565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156136f157600080fd5b60008111151561370057600080fd5b80600f8190555050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561376257600080fd5b600360009054906101000a900460ff1615600360006101000a81548160ff021916908315150217905550565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156137e657600080fd5b8060108190555050565b600c5481565b60125481565b60045481565b600d5481565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561386657600080fd5b600090505b82518110156138ab57613894838281518110151561388557fe5b90602001906020020151612962565b1561389e57600191505b808060010191505061386b565b50919050565b60055481565b60115481565b60165481565b601a5481565b60006138d3611af5565b15156138de57600080fd5b6138e6612944565b15156138f157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b846040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b1580156139a557600080fd5b505af11580156139b9573d6000803e3d6000fd5b505050506040513d60208110156139cf57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff16141515613a0257600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637878b66a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015613a8857600080fd5b505af1158015613a9c573d6000803e3d6000fd5b505050506040513d6020811015613ab257600080fd5b81019080805190602001909291905050501515613ace57600080fd5b601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639a16be46836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050600060405180830381600087803b158015613b6b57600080fd5b505af1158015613b7f573d6000803e3d6000fd5b505050507ff58a4f70d4c7b287095adb658be31ce93550932214806e2535581c2c4d7f30bd82604051808263ffffffff1663ffffffff16815260200191505060405180910390a16011600081548092919060019003919050559050919050565b613bf481601954613c6f90919063ffffffff16565b601981905550613c106001601054613c6f90919063ffffffff16565b60108190555050565b6000808284811515613c2757fe5b0490508091505092915050565b6000806000841415613c495760009150613c68565b8284029050828482811515613c5a57fe5b04141515613c6457fe5b8091505b5092915050565b6000808284019050838110151515613c8357fe5b8091505092915050565b42600a54601a54011015613ca457613ca361432a565b5b42601a81905550565b600080821115613d9757606482811515613cc357fe5b0490508273ffffffffffffffffffffffffffffffffffffffff166108fc600e54600f54600d54010160640383029081150290604051600060405180830381858888f19350505050158015613d1b573d6000803e3d6000fd5b50613d29600f548202613bdf565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc600d5483029081150290604051600060405180830381858888f19350505050158015613d95573d6000803e3d6000fd5b505b505050565b600080613da76145be565b6000806000601e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166365074690886040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b158015613e4957600080fd5b505af1158015613e5d573d6000803e3d6000fd5b505050506040513d6020811015613e7357600080fd5b81019080805190602001909291905050509550600086111561426257613ea3606487613c1990919063ffffffff16565b9450601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663df4b2970886040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff16815260200191505060a060405180830381600087803b158015613f4257600080fd5b505af1158015613f56573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525060a0811015613f7b57600080fd5b81019080919050509350601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166327904ee0886040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b15801561402257600080fd5b505af1158015614036573d6000803e3d6000fd5b505050506040513d602081101561404c57600080fd5b8101908080519060200190929190505050925060008311156142615761407f83600e548702613c1990919063ffffffff16565b9150600090505b6005811015614260576000848260058110151561409f57fe5b602002015163ffffffff1614151561425357601d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b7ec3b85836005811015156140fd57fe5b60200201516040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808263ffffffff1663ffffffff168152602001915050602060405180830381600087803b15801561416057600080fd5b505af1158015614174573d6000803e3d6000fd5b505050506040513d602081101561418a57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156141e0573d6000803e3d6000fd5b507f0aca339aa043eea06010a733837f51ca2d4915dfbcf7a7f7966d5e1376d391f8848260058110151561421057fe5b60200201518884604051808463ffffffff1663ffffffff1681526020018363ffffffff1663ffffffff168152602001828152602001935050505060405180910390a15b8080600101915050614086565b5b5b50505050505050565b60008060105411801561428057506000600754115b156142ba5761429c600754601054613c1990919063ffffffff16565b90506142b381600554613c3490919063ffffffff16565b6006819055505b50565b600080600b54111561430e576142e0600b54601054613c1990919063ffffffff16565b90506142f78160095461431190919063ffffffff16565b9050600854600a54111561430d5780600a819055505b5b50565b600082821115151561431f57fe5b818303905092915050565b60003073ffffffffffffffffffffffffffffffffffffffff163111801561436a57506019543073ffffffffffffffffffffffffffffffffffffffff163110155b80156143c55750600073ffffffffffffffffffffffffffffffffffffffff16601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b1561453c576020604051908101604052806000815250601490805190602001906143f092919061453e565b506000601081905550600554600681905550600954600a81905550601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6019549081150290604051600060405180830381858888f19350505050158015614475573d6000803e3d6000fd5b5061448c6001601254613c6f90919063ffffffff16565b6012819055507fc252bbabd3f2d9e9985b6663f881e5ce0e49684902f06ac94c24cb9aaaa672e2601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601954601a5442604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a160006019819055505b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061457f57805160ff19168380011785556145ad565b828001600101855582156145ad579182015b828111156145ac578251825591602001919060010190614591565b5b5090506145ba91906145e1565b5090565b60a060405190810160405280600590602082028038833980820191505090505090565b61460391905b808211156145ff5760008160009055506001016145e7565b5090565b905600a165627a7a723058203bde59b06fcdaf134e80eab3fae1c5bde3180e6961b19a2a954ea7767be61a170029

   Swarm Source:
bzzr://3bde59b06fcdaf134e80eab3fae1c5bde3180e6961b19a2a954ea7767be61a17

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.