Latest 3 txns

TxHash Age From To Value [TxFee]
0x81dda3be00e2c9d9f81cc5ec7185694a96acaf4d05bc58c7717ee7bc491e64c830 days 6 hrs ago0x08a9feaefa545787f8e2d8c9c3f5e7343261d620  IN   0x25f4a9eed8f91b0a5ab6abc1c635ea54a3f98f6e0 Ether0.000021951
0xe58c7fe9e7e82fb5aaf94198ff97adf43a59333bc9646f4379cd2f756bdc2ca530 days 8 hrs ago0x08a9feaefa545787f8e2d8c9c3f5e7343261d620  IN   0x25f4a9eed8f91b0a5ab6abc1c635ea54a3f98f6e0 Ether0.000021951
0x605c2535ec4085cedcd0004251f1f0a435d06a43c15f9ff3f60dc38e264137bd30 days 11 hrs ago0x08a9feaefa545787f8e2d8c9c3f5e7343261d620  IN    Contract Creation0 Ether0.001667106
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Contract Source Code Verified (Exact Match)
Contract Name: master
Compiler Version: v0.4.25+commit.59dbf8f1
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.25;

//2019.01.18
//master4.0測試版


contract owned {

    address public manager;

    constructor() public{
        manager = msg.sender;
    }
 
    modifier onlymanager{
        require(msg.sender == manager);
        _;
    }

    function transferownership(address _new_manager) public onlymanager {
        manager = _new_manager;
    }
}

///ERC20 interface
interface ERC20_interface {
  function decimals() external view returns(uint8);
  function totalSupply() external view returns (uint256);
  function balanceOf(address who) external view returns (uint256);
  
  function transfer(address to, uint256 value) external returns(bool);
  function transferFrom(address _from, address _to, uint256 _value) external returns (bool success) ;
}

///ERC223 interface
/*
interface ERC223_interface {
  function approveAndCall(address _spender, uint256 _value, bytes _extraData)
  external returns (bool success);
}
*/

///ERC721 interface
interface ERC721_interface{
     function balanceOf(address _owner) external view returns (uint256);
     function ownerOf(uint256 _tokenId) external view returns (address);
     function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes data) external payable;
     function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable;
     function transferFrom(address _from, address _to, uint256 _tokenId) external payable;
     function approve(address _approved, uint256 _tokenId) external payable;
     function setApprovalForAll(address _operator, bool _approved) external;
     function getApproved(uint256 _tokenId) external view returns (address);
     function isApprovedForAll(address _owner, address _operator) external view returns (bool);
 }
 
 ///slave interface
 interface slave{
    function transferMastership(address new_master) external ;
    function city_number() external view returns(uint16);
    
    function inquire_totdomains_amount() external view returns(uint16);
    function inquire_level(uint8 _id) external view returns(uint8);
    function inquire_building(uint8 _id, uint8 _index) external view returns(uint8);
    
    function domain_build(address _user, uint16 _id, uint8 _index, uint8 _building) external;
    function domain_reward(address _user, uint16 _id) external;
    function transfer_master(address _to, uint _id) external;
    function retrieve_domain(address _user, uint _id) external;
 }
 
 library SafeMath{
     function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a);

        return c;
    }
    
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);
        uint256 c = a - b;
        return c;
    }
    
     function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b);
        return c;
    }
    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0);
        uint256 c = a / b;
        return c;
    }
    
    
 }
 
 library SafeMath16{
     function add(uint16 a, uint16 b) internal pure returns (uint16) {
        uint16 c = a + b;
        require(c >= a);

        return c;
    }
    
    function sub(uint16 a, uint16 b) internal pure returns (uint16) {
        require(b <= a);
        uint16 c = a - b;
        return c;
    }
    
     function mul(uint16 a, uint16 b) internal pure returns (uint16) {
        if (a == 0) {
            return 0;
        }
        uint16 c = a * b;
        require(c / a == b);
        return c;
    }
    
    function div(uint16 a, uint16 b) internal pure returns (uint16) {
        require(b > 0);
        uint16 c = a / b;
        return c;
    }
 }
 
 contract master is owned {
     using SafeMath for uint;
     using SafeMath16 for uint16;
     
     uint random_seed;
     
     
     constructor() public{
        random_seed = uint((keccak256(abi.encodePacked(block.difficulty))));
     }
     
     mapping(uint16 => address) public owner_slave; //擁有的土地合約地址(編號 => 地址)
     
     address arina_contract = 0x2b09049cd57980778200eF4e35BF82bA7c57b36E;
     
     uint16 owner_slave_amount = 0; //擁有土地合約地址的數量
     
     uint payRoadETH_amount = 0.1 ether;
     uint buyLandETH_amount = 2 ether;
     uint payARINA_amount = 100*10**8;
     uint buyLandARINA_amount = 2000*10**8;
     
     uint probability = 20;
     uint lotto_number;
     mapping(address => uint) player_number;
     
     
     struct _info{
         uint16 city; //哪個區域
         uint16 domain; //區域內的id
         bool unmovable; //是否 "不可" 移動
         bool lotto; //可不可以抽樂透
     }
     
     mapping(address => _info) public player_info;
     
     
////manage function

    function set_slave_master(uint16 _index, address new_address) public onlymanager{
        address contract_address = owner_slave[_index];
        slave(contract_address).transferMastership(new_address);
    }
     
    function set_slave_address(uint16 _index, address _address) external onlymanager{
        require(_index == slave(_address).city_number());
        if(slave(_address).city_number() == 0x0){
            owner_slave[_index] = _address;
            owner_slave_amount = owner_slave_amount.add(1);
        }
        else{
            owner_slave[_index] = _address; 
        }
        
    }
    
////inquire function

    
    
    function inquire_slave_address(uint16 _index) public view returns(address){
        return owner_slave[_index];
    }
    
    function inquire_city_totdomains(uint16 _index) public view returns(uint16){
        address _address = inquire_slave_address(_index);
        return  slave(_address).inquire_totdomains_amount();
    }
    
    function inquire_location(address _address) public view returns(uint16, uint16){
        return (player_info[_address].city, player_info[_address].domain);
    }
    
    function inquire_unmovable(address _address) public view returns(bool){
        return (player_info[_address].unmovable);
    }
     
////game function
    
    function rollDice() external{
        
        require(owner_slave_amount >= 1);
        require(!player_info[msg.sender].unmovable);
        uint16 random = uint16((keccak256(abi.encodePacked(now, random_seed))));
        uint16 go_city = random % owner_slave_amount; 
        
        uint16 tot_domains = inquire_city_totdomains(go_city);
        uint16 go_domains_id = random % tot_domains; 
        
        player_info[msg.sender].city = go_city;
        player_info[msg.sender].domain = go_domains_id;
        player_info[msg.sender].unmovable = true;
    }
    
    function playLotto() public{
        require(player_info[msg.sender].lotto);
        
        uint random = uint((keccak256(abi.encodePacked(now, random_seed))));
        uint random2 = uint((keccak256(abi.encodePacked(random_seed, msg.sender))));
        random_seed = random_seed.add(1);
        
        lotto_number = random % probability;
        player_number[msg.sender] = random2 % probability;
        
        if(lotto_number == player_number[msg.sender]){
            msg.sender.transfer(address(this).balance);
        }
        
        player_info[msg.sender].lotto = false;
        
        //玩樂透,在用以太支付過路費後才能執行
    }

     
////pay and buy function

    function payRent_ETH() external payable{
        require(player_info[msg.sender].unmovable);
        require(msg.value == payRoadETH_amount);
        
        uint16 city = player_info[msg.sender].city; //所在土地編號
        uint16 domains_id = player_info[msg.sender].domain;  //所在土地id
        
        player_info[msg.sender].unmovable = false;

        uint payRent_ETH_50toOwner = msg.value.div(10).mul(5);
		uint payRent_ETH_10toTeam = msg.value.div(10);
		uint payRent_ETH_20toCity = msg.value.div(10).mul(2); 
		uint payRent_ETH_20toPool = msg.value.div(10).mul(2);
		uint pay = payRent_ETH_50toOwner + payRent_ETH_10toTeam + payRent_ETH_20toCity + payRent_ETH_20toPool;
		require(msg.value == pay);
		
		address city_address = owner_slave[city];
		address domain_owner = ERC721_interface(city_address).ownerOf(domains_id);
		
		if (domain_owner == 0x0){
		    manager.transfer(payRent_ETH_50toOwner); //轉給master contract owner
		}
		else{
		    domain_owner.transfer(payRent_ETH_50toOwner); //原土地擁有者
		}
		
        manager.transfer(payRent_ETH_10toTeam); //master contract owner
        city_address.transfer(payRent_ETH_20toCity); //注意slave合約要能接收

        //用ETH付過路費
        
        player_info[msg.sender].lotto = true;
        
    }
    
    function buyLand_ETH() external payable{
        require(msg.value == buyLandETH_amount); //用ETH購買土地

        uint16 city = player_info[msg.sender].city;
        uint16 domains_id = player_info[msg.sender].domain;
        
        address city_address = owner_slave[city];
        address domain_owner = ERC721_interface(city_address).ownerOf(domains_id);
        if(domain_owner == 0x0){
            manager.transfer(buyLandETH_amount);
        }
        else{
            (domain_owner).transfer(buyLandETH_amount); //把錢給原擁有者
        }
        
        
        slave(city_address).transfer_master(msg.sender, domains_id); //土地轉移
        //_to, _id
        player_info[msg.sender].unmovable = false;
        
    }
     
    function _payRent_ARINA(address _sender, uint _value) private{
        //已經檢查支付金額
        require(player_info[msg.sender].unmovable);
        uint16 city = player_info[msg.sender].city;
        uint16 domains_id = player_info[msg.sender].domain;
        
        address city_address = owner_slave[city];
		address domain_owner = ERC721_interface(city_address).ownerOf(domains_id);
        
        ERC20_interface arina = ERC20_interface(arina_contract);
        
        if(domain_owner == 0x0){
            require(arina.transferFrom(_sender, manager, _value));
        }
        else{
            require(arina.transferFrom(_sender, domain_owner, _value)); //把錢給原擁有者
        }
        
     
        player_info[msg.sender].unmovable = false;
        
        //用ARINA付過路費
    }

    function _buyLand_ARINA(address _sender, uint _value) private{ //用ARINA購買土地
        //已經檢查支付金額
        //空地才能執行
        
        uint16 city = player_info[msg.sender].city;
        uint16 domains_id = player_info[msg.sender].domain;
        
        address city_address = owner_slave[city];
		address domain_owner = ERC721_interface(city_address).ownerOf(domains_id);
        
        ERC20_interface arina = ERC20_interface(arina_contract);
        if(domain_owner == 0x0){
            require(arina.transferFrom(_sender, manager, _value));
        }
        else{
            require(arina.transferFrom(_sender, domain_owner, _value)); //把錢給原擁有者
        }
        
        slave(city_address).transfer_master(msg.sender, domains_id); //土地轉移
        //_to, _id
        
    }


////callback function
    
    function receiveApproval(address _sender, uint256 _value,
    address _tokenContract, bytes1 _extraData) external{
        
      require(_tokenContract == arina_contract);
      
      if (_extraData == 0x0){
          require(_value == payARINA_amount);
          _payRent_ARINA(_sender, _value);
          
      }
      else if(_extraData == 0x1){
          require(_value ==  buyLandARINA_amount);
          _buyLand_ARINA(_sender, _value);
      }
    }
    
 
 }

    Contract ABI  
[{"constant":true,"inputs":[{"name":"_index","type":"uint16"}],"name":"inquire_slave_address","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"manager","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_index","type":"uint16"},{"name":"_address","type":"address"}],"name":"set_slave_address","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"buyLand_ETH","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_index","type":"uint16"}],"name":"inquire_city_totdomains","outputs":[{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"inquire_unmovable","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"playLotto","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"rollDice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_index","type":"uint16"},{"name":"new_address","type":"address"}],"name":"set_slave_master","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_sender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_tokenContract","type":"address"},{"name":"_extraData","type":"bytes1"}],"name":"receiveApproval","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"payRent_ETH","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"inquire_location","outputs":[{"name":"","type":"uint16"},{"name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"player_info","outputs":[{"name":"city","type":"uint16"},{"name":"domain","type":"uint16"},{"name":"unmovable","type":"bool"},{"name":"lotto","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint16"}],"name":"owner_slave","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_new_manager","type":"address"}],"name":"transferownership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]

  Contract Creation Code Switch To Opcodes View
60806040526003805460a060020a61ffff0219600160a060020a0319909116732b09049cd57980778200ef4e35bf82ba7c57b36e1716905567016345785d8a0000600455671bc16d674ec800006005556402540be400600655642e90edd000600755601460085534801561007257600080fd5b5060008054600160a060020a03191633179055604080514460208083019190915282518083038201815291830192839052815191929182918401908083835b602083106100d05780518252601f1990920191602091820191016100b1565b5181516000196020949094036101000a939093019283169219169190911790526040519201829003909120600155505050611564806101106000396000f3006080604052600436106100c15763ffffffff60e060020a600035041663333e6f1281146100c6578063481c6a75146100fe5780636a21a816146101135780637207dfe31461013d57806377337612146101455780637a8a5f9b1461017857806382d549b6146101ad578063837e7cc6146101c25780639897cf4b146101d75780639ac08dfd146101ff5780639f6a694e1461024f578063a42199fb14610257578063c134d3d214610299578063d6a03c08146102e9578063e8b5b79614610305575b600080fd5b3480156100d257600080fd5b506100e261ffff60043516610326565b60408051600160a060020a039092168252519081900360200190f35b34801561010a57600080fd5b506100e2610345565b34801561011f57600080fd5b5061013b61ffff60043516600160a060020a0360243516610354565b005b61013b61051c565b34801561015157600080fd5b5061016161ffff6004351661070d565b6040805161ffff9092168252519081900360200190f35b34801561018457600080fd5b50610199600160a060020a036004351661078c565b604080519115158252519081900360200190f35b3480156101b957600080fd5b5061013b6107b2565b3480156101ce57600080fd5b5061013b61098b565b3480156101e357600080fd5b5061013b61ffff60043516600160a060020a0360243516610b01565b34801561020b57600080fd5b5061013b600160a060020a0360043581169060243590604435167fff0000000000000000000000000000000000000000000000000000000000000060643516610bad565b61013b610c75565b34801561026357600080fd5b50610278600160a060020a0360043516610f1d565b6040805161ffff938416815291909216602082015281519081900390910190f35b3480156102a557600080fd5b506102ba600160a060020a0360043516610f47565b6040805161ffff9586168152939094166020840152901515828401521515606082015290519081900360800190f35b3480156102f557600080fd5b506100e261ffff60043516610f81565b34801561031157600080fd5b5061013b600160a060020a0360043516610f9c565b61ffff16600090815260026020526040902054600160a060020a031690565b600054600160a060020a031681565b600054600160a060020a0316331461036b57600080fd5b80600160a060020a031663b436d8f66040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156103a957600080fd5b505af11580156103bd573d6000803e3d6000fd5b505050506040513d60208110156103d357600080fd5b505161ffff8381169116146103e757600080fd5b80600160a060020a031663b436d8f66040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561042557600080fd5b505af1158015610439573d6000803e3d6000fd5b505050506040513d602081101561044f57600080fd5b505161ffff1615156104de5761ffff8281166000908152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790556003546104bd9174010000000000000000000000000000000000000000909104166001610fe2565b600360146101000a81548161ffff021916908361ffff160217905550610518565b61ffff82166000908152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5050565b6000806000806005543414151561053257600080fd5b336000908152600b602090815260408083205461ffff8082168086526002855283862054845160e160020a6331a9108f02815262010000909404909216600484018190529351909950929750600160a060020a031695508593636352211e9360248084019491939192918390030190829087803b1580156105b257600080fd5b505af11580156105c6573d6000803e3d6000fd5b505050506040513d60208110156105dc57600080fd5b50519050600160a060020a03811615156106315760008054600554604051600160a060020a039092169281156108fc029290818181858888f1935050505015801561062b573d6000803e3d6000fd5b5061066a565b600554604051600160a060020a0383169180156108fc02916000818181858888f19350505050158015610668573d6000803e3d6000fd5b505b604080517f32b34cc200000000000000000000000000000000000000000000000000000000815233600482015261ffff851660248201529051600160a060020a038416916332b34cc291604480830192600092919082900301818387803b1580156106d457600080fd5b505af11580156106e8573d6000803e3d6000fd5b5050336000908152600b60205260409020805464ff0000000019169055505050505050565b60008061071983610326565b905080600160a060020a031663301b7a866040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561075957600080fd5b505af115801561076d573d6000803e3d6000fd5b505050506040513d602081101561078357600080fd5b50519392505050565b600160a060020a03166000908152600b6020526040902054640100000000900460ff1690565b336000908152600b6020526040812054819065010000000000900460ff1615156107db57600080fd5b4260015460405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083106108345780518252601f199092019160209182019101610815565b51815160209384036101000a60001901801990921691161790526040805192909401829003822060015483830152336c0100000000000000000000000002838601528451808403603401815260549093019485905282519098509195509293508392850191508083835b602083106108bd5780518252601f19909201916020918201910161089e565b5181516020939093036101000a60001901801990911692169190911790526040519201829003909120600180549195506108fc94509092509050611006565b6001556008548281151561090c57fe5b066009556008548181151561091d57fe5b336000908152600a6020526040902091900690819055600954141561096b576040513390303180156108fc02916000818181858888f19350505050158015610969573d6000803e3d6000fd5b505b5050336000908152600b60205260409020805465ff000000000019169055565b6000806000806001600360149054906101000a900461ffff1661ffff16101515156109b557600080fd5b336000908152600b6020526040902054640100000000900460ff16156109da57600080fd5b4260015460405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310610a335780518252601f199092019160209182019101610a14565b5181516020939093036101000a6000190180199091169216919091179052604051920182900390912060035490975074010000000000000000000000000000000000000000900461ffff90811693508716915050811515610a9057fe5b069250610a9c8361070d565b91508161ffff168461ffff16811515610ab157fe5b336000908152600b60205260409020805464010000000061ffff1990911661ffff9788161763ffff000019166201000094909306909616929092021764ff00000000191693909317909255505050565b60008054600160a060020a03163314610b1957600080fd5b5061ffff82166000908152600260205260408082205481517fc3f59687000000000000000000000000000000000000000000000000000000008152600160a060020a03858116600483015292519290911692839263c3f5968792602480820193929182900301818387803b158015610b9057600080fd5b505af1158015610ba4573d6000803e3d6000fd5b50505050505050565b600354600160a060020a03838116911614610bc757600080fd5b7fff0000000000000000000000000000000000000000000000000000000000000081161515610c0d576006548314610bfe57600080fd5b610c088484611018565b610c6f565b7f01000000000000000000000000000000000000000000000000000000000000007fff0000000000000000000000000000000000000000000000000000000000000082161415610c6f576007548314610c6557600080fd5b610c6f8484611264565b50505050565b336000908152600b602052604081205481908190819081908190819081908190640100000000900460ff161515610cab57600080fd5b6004543414610cb957600080fd5b336000908152600b60205260409020805464ff0000000019811690915561ffff8082169a5062010000909104169750610d0a6005610cfe34600a63ffffffff6114e716565b9063ffffffff61150a16565b9650610d1d34600a63ffffffff6114e716565b9550610d356002610cfe34600a63ffffffff6114e716565b9450610d4d6002610cfe34600a63ffffffff6114e716565b9350868601850184019250348314610d6457600080fd5b61ffff808a16600090815260026020908152604080832054815160e160020a6331a9108f028152948d1660048601529051600160a060020a0390911695508593636352211e9360248083019493928390030190829087803b158015610dc857600080fd5b505af1158015610ddc573d6000803e3d6000fd5b505050506040513d6020811015610df257600080fd5b50519050600160a060020a0381161515610e455760008054604051600160a060020a039091169189156108fc02918a91818181858888f19350505050158015610e3f573d6000803e3d6000fd5b50610e7d565b604051600160a060020a0382169088156108fc029089906000818181858888f19350505050158015610e7b573d6000803e3d6000fd5b505b60008054604051600160a060020a039091169188156108fc02918991818181858888f19350505050158015610eb6573d6000803e3d6000fd5b50604051600160a060020a0383169086156108fc029087906000818181858888f19350505050158015610eed573d6000803e3d6000fd5b5050336000908152600b60205260409020805465ff00000000001916650100000000001790555050505050505050565b600160a060020a03166000908152600b602052604090205461ffff80821692620100009092041690565b600b6020526000908152604090205461ffff808216916201000081049091169060ff64010000000082048116916501000000000090041684565b600260205260009081526040902054600160a060020a031681565b600054600160a060020a03163314610fb357600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082820161ffff8085169082161015610ffb57600080fd5b8091505b5092915050565b600082820183811015610ffb57600080fd5b336000908152600b60205260408120548190819081908190640100000000900460ff16151561104657600080fd5b336000908152600b602090815260408083205461ffff8082168086526002855283862054845160e160020a6331a9108f02815262010000909404909216600484018190529351909a50929850600160a060020a031696508693636352211e9360248084019491939192918390030190829087803b1580156110c657600080fd5b505af11580156110da573d6000803e3d6000fd5b505050506040513d60208110156110f057600080fd5b5051600354909250600160a060020a039081169150821615156111ab57600080546040805160e060020a6323b872dd028152600160a060020a038b811660048301529283166024820152604481018a90529051918416926323b872dd926064808401936020939083900390910190829087803b15801561116f57600080fd5b505af1158015611183573d6000803e3d6000fd5b505050506040513d602081101561119957600080fd5b505115156111a657600080fd5b611240565b6040805160e060020a6323b872dd028152600160a060020a0389811660048301528481166024830152604482018990529151918316916323b872dd916064808201926020929091908290030181600087803b15801561120957600080fd5b505af115801561121d573d6000803e3d6000fd5b505050506040513d602081101561123357600080fd5b5051151561124057600080fd5b5050336000908152600b60205260409020805464ff00000000191690555050505050565b336000908152600b602090815260408083205461ffff8082168086526002855283862054845160e160020a6331a9108f0281526201000090940490921660048401819052935190959394600160a060020a03909216939283928592636352211e92602480820193929182900301818787803b1580156112e257600080fd5b505af11580156112f6573d6000803e3d6000fd5b505050506040513d602081101561130c57600080fd5b5051600354909250600160a060020a039081169150821615156113c757600080546040805160e060020a6323b872dd028152600160a060020a038b811660048301529283166024820152604481018a90529051918416926323b872dd926064808401936020939083900390910190829087803b15801561138b57600080fd5b505af115801561139f573d6000803e3d6000fd5b505050506040513d60208110156113b557600080fd5b505115156113c257600080fd5b61145c565b6040805160e060020a6323b872dd028152600160a060020a0389811660048301528481166024830152604482018990529151918316916323b872dd916064808201926020929091908290030181600087803b15801561142557600080fd5b505af1158015611439573d6000803e3d6000fd5b505050506040513d602081101561144f57600080fd5b5051151561145c57600080fd5b604080517f32b34cc200000000000000000000000000000000000000000000000000000000815233600482015261ffff861660248201529051600160a060020a038516916332b34cc291604480830192600092919082900301818387803b1580156114c657600080fd5b505af11580156114da573d6000803e3d6000fd5b5050505050505050505050565b6000808083116114f657600080fd5b828481151561150157fe5b04949350505050565b60008083151561151d5760009150610fff565b5082820282848281151561152d57fe5b0414610ffb57600080fd00a165627a7a72305820a10f4e080b2901c0e607aece1be2d649a6fec040698269a27bbf4c90186e5c8d0029

   Swarm Source:
bzzr://a10f4e080b2901c0e607aece1be2d649a6fec040698269a27bbf4c90186e5c8d

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward