ETH Price: $2,416.75 (-1.06%)

Transaction Decoder

Block:
11884156 at Feb-19-2021 12:46:03 AM +UTC
Transaction Fee:
0.008929095 ETH $21.58
Gas Used:
85,039 Gas / 105 Gwei

Emitted Events:

162 PROCASH.set_transfer( user=[Sender] 0xcce433badb23b695cae3013ea459c1fe407c133a, referrer=0xb9b13675f3e52098370a966524b73e7288af2588, amount=198063600000000000, time=1613695563 )
163 PROCASH.set_transfer( user=[Sender] 0xcce433badb23b695cae3013ea459c1fe407c133a, referrer=0xd48dbd4c28425a94cee4fc33c150231b897ca8d2, amount=359224450000000000, time=1613695563 )
164 PROCASH.set_transfer( user=[Sender] 0xcce433badb23b695cae3013ea459c1fe407c133a, referrer=0xcd610157c882f2338e5f54c1dd2fa77132b77f39, amount=292826100000000000, time=1613695563 )
165 PROCASH.set_transfer( user=[Sender] 0xcce433badb23b695cae3013ea459c1fe407c133a, referrer=0x3a72269ddf57cd8dd0c07c33fcbae41e3d072001, amount=310706540000000000, time=1613695563 )

Account State Difference:

  Address   Before After State Difference Code
0x3A72269d...E3d072001 0 Eth0.31070654 Eth0.31070654
0xb9B13675...288Af2588 0.003375363167521472 Eth0.201438963167521472 Eth0.1980636
0xbAa37930...4539A7a44 1.552812334545494014 Eth0.391991644545494014 Eth1.16082069
0xCcE433BA...E407C133a
0.489286303497327933 Eth
Nonce: 262
0.480357208497327933 Eth
Nonce: 263
0.008929095
0xcD610157...132B77F39 0 Eth0.2928261 Eth0.2928261
0xD48dBd4c...B897cA8d2 1.09565580052 Eth1.45488025052 Eth0.35922445
(Ethermine)
1,280.516942440635088178 Eth1,280.525871535635088178 Eth0.008929095

Execution Trace

PROCASH.pay_now( valor=[2864, 760, 638, 766], monto=[198063600000000000, 359224450000000000, 292826100000000000, 310706540000000000] )
  • ETH 0.1980636 0xb9b13675f3e52098370a966524b73e7288af2588.CALL( )
  • ETH 0.35922445 0xd48dbd4c28425a94cee4fc33c150231b897ca8d2.CALL( )
  • ETH 0.2928261 0xcd610157c882f2338e5f54c1dd2fa77132b77f39.CALL( )
  • ETH 0.31070654 0x3a72269ddf57cd8dd0c07c33fcbae41e3d072001.CALL( )
    pragma solidity  >= 0.5.0< 0.7.0;
    
    contract PROCASH {
        
        address owner;
        address  payable donde;
        uint[] ident;
        mapping(uint => username)  usuarios;
        
        struct username{
               uint id;
               string name;
               address payable dir;
        }
    
        modifier valida_user(uint _id){
    	    require(usuarios[_id].id != _id);
    	    _;
    	}
    	
      	constructor() public{
      	    owner = msg.sender;
        }
      	
      	event RegisterUserEvent(address indexed _dire, string  indexed name , uint time);
      	event Recarga_pay(address indexed user, uint indexed amount, uint time);
        event set_transfer(address indexed user,address indexed referrer,uint indexed amount, uint time);
      
        function fondos_contract(uint256 amount) public payable{
                require(msg.value == amount);
                emit Recarga_pay(msg.sender, amount, now);
        }
        
       	function Register(uint _id, address payable dire,  string memory _name ) payable public valida_user(_id){
    	     	ident.push(_id);
    			usuarios[_id] = username({
    			    id: _id,
    				name: _name,
    				dir: dire
     			});
        	    emit  RegisterUserEvent( dire , _name ,  now );
    	}
    	
    	
    	function update_register(uint _id, address payable dire,  string memory _name) public payable{
    	      require(owner == msg.sender);
    	      	usuarios[_id] = username({
    			    id: _id,
    			    name: _name,
    				dir: dire
     			});
    	       
    	}
    	
    	
    	function pay_now(uint[] memory valor, uint256[] memory monto) public payable {
    	    uint i;
    	    uint256 pagar;
    
          for ( i = 0; i < valor.length ; i++)
             {
                donde  = usuarios[valor[i]].dir;
                pagar  =    monto[i];
                 pagar_cuenta(donde, pagar);
             } 
        
        }
        
        function pagar_cuenta(address payable _dire, uint256 _monto)  payable public {
                 require(owner == msg.sender);
                _dire.transfer(_monto);
                 emit set_transfer(msg.sender, _dire, _monto, now ); 
        }
        
        function total_register() public view returns(uint){
             require(owner == msg.sender);
             return ident.length;
        } 
        
        function mi_user(uint  valor) public view returns(string memory) {
             return usuarios[valor].name;
        }
     
        function mi_wallet(uint  valor) public view returns(address payable) {
             return usuarios[valor].dir;
        }
        
    }