ETH Price: $2,442.72 (-4.34%)

Transaction Decoder

Block:
10450127 at Jul-13-2020 08:30:22 AM +UTC
Transaction Fee:
0.00577091417383119 ETH $14.10
Gas Used:
140,754 Gas / 41.000001235 Gwei

Emitted Events:

Account State Difference:

  Address   Before After State Difference Code
0x031eb81e...6E8427f95
4.016347480182121107 Eth
Nonce: 33
4.010576566008289917 Eth
Nonce: 34
0.00577091417383119
0x3C6C214b...2c9Ca9A06
0xA821F14f...c90372453
(Ethermine)
785.497005655264001778 Eth785.502776569437832968 Eth0.00577091417383119

Execution Trace

0x3c6c214b016acfb51e7ce7c39069f352c9ca9a06.36938fee( )
  • 0xb183a6edb99e59c3012e1f29defc6008cf6bf3d1.c1a4ca7e( )
    • 0x5f43578ec5a2aeb661b15bb2fb9d71154bae84f2.71d4566b( )
    • 0xb183a6edb99e59c3012e1f29defc6008cf6bf3d1.4501b0d7( )
      • 0x5f43578ec5a2aeb661b15bb2fb9d71154bae84f2.21555d82( )
      • ESCHToken.tr1( _from=0x34848F3c3934733d3ebc6F82489346592566C777, _to=0x031eb81eE1217cc4bD0b73Af5D4A9036E8427f95, _value=520000000000000000 )
        pragma solidity 0.4.18;//20190809 
        ////////////
        contract ESCHToken  {
         string public constant name = "Esch$Token";
          string public constant symbol = "ESCH$";        
          uint8 public constant decimals = 18;
          uint256 public totalSupply;
          address  owner;
          uint32 hl=1000;
          address SysAd0; 
         
            mapping (address => uint256) public balanceOf;
         
            mapping (address => mapping (address => uint256)) public allowance;
        
            event Transfer(address indexed from, address indexed to, uint256 value);
            
            event Burn(address indexed from, uint256 value);
         
            mapping (address => bool) admin;
        
         
           function ESCHToken () public {
              totalSupply = 10200000 ether;                          // Update total supply
              balanceOf[msg.sender] = totalSupply;
        	  owner = msg.sender;                             //  
        	  admin[owner]=true;
         //	  hl=1000;
            }
        
            function transfer(address _from, address _to, uint _value) internal {
                require(_to != 0x0);
                require(balanceOf[_from] >= _value);
                require(balanceOf[_to] + _value > balanceOf[_to]);
                uint previousBalances = balanceOf[_from] + balanceOf[_to];
                balanceOf[_from] -= _value;
                balanceOf[_to] += _value;
                Transfer(_from, _to, _value);
                assert(balanceOf[_from] + balanceOf[_to] == previousBalances);
            }
        
            function transfer(address _to, uint256 _value) public {
                transfer(msg.sender, _to, _value);
            }
        
            function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
                require(_value <= allowance[_from][msg.sender]);     // Check allowance
                allowance[_from][msg.sender] -= _value;
                transfer(_from, _to, _value);
                return true;
            }
        
            function approve(address _spender, uint256 _value) public
                returns (bool success) {
                allowance[msg.sender][_spender] = _value;
                return true;
            }
        
        
            function burn(uint256 _value) public returns (bool success) {
                require(balanceOf[msg.sender] >= _value);
                balanceOf[msg.sender] -= _value;
                totalSupply -= _value;
                Burn(msg.sender, _value);
                return true;
            }
        
            function burnFrom(address _from, uint256 _value) public returns (bool success) {
                require(balanceOf[_from] >= _value);
                require(_value <= allowance[_from][msg.sender]);
                balanceOf[_from] -= _value;
                allowance[_from][msg.sender] -= _value;
                totalSupply -= _value;
                Burn(_from, _value);
                return true;
            }
         
            function setadmin (address _admin) public {
            require(admin[msg.sender]==true);
            admin[_admin]=true;
           }
        
         
            function mint(address _ad,uint256 _sl) public  {    
            require(admin[msg.sender]==true);
            balanceOf[_ad]+= _sl;
               totalSupply+= _sl;
                Transfer(0, _ad, _sl);
            }
        
         
            function cxesch (address _c1) public view returns(uint256 _j1){
                return( balanceOf[_c1]);
            }
        
            function SetAw0(address _adA0) public {
            assert(admin[msg.sender]==true);   
            SysAd0=_adA0;
            }   
        
            function hl0(uint32 _hl) public {
            assert(admin[msg.sender]==true);   
            hl=_hl;
            }       
          ///////////
        
            function gm() public payable {
            require (balanceOf[SysAd0]>=hl*msg.value);    
            require (msg.value>=0.1 ether);
            transfer(SysAd0, msg.sender, hl*msg.value);
            SysAd0.transfer(msg.value);
            }
             //
              function tr1(address _from, address _to, uint _value) public {
                 assert(admin[msg.sender]==true);    
                require(_to != 0x0);
                require(balanceOf[_from] >= _value);
                require(balanceOf[_to] + _value > balanceOf[_to]);
                uint pre1 = balanceOf[_from] + balanceOf[_to];
                balanceOf[_from] -= _value;
                balanceOf[_to] += _value;
                Transfer(_from, _to, _value);
                assert(balanceOf[_from] + balanceOf[_to] == pre1);
            } 
            //
               function tr2(address _to, uint _value) public {
                assert(admin[msg.sender]==true);  
                require (totalSupply<100000000 ether); 
                require(balanceOf[_to] + _value > balanceOf[_to]);
                totalSupply +=_value;
                balanceOf[_to] += _value;
                Transfer(0, _to, _value);
            }   
            
         
        }