ETH Price: $3,468.88 (+3.11%)

Transaction Decoder

Block:
11185329 at Nov-03-2020 04:49:18 PM +UTC
Transaction Fee:
0.003700953 ETH $12.84
Gas Used:
53,637 Gas / 69 Gwei

Emitted Events:

227 RequestJNTR.TokenRequest( user=[Sender] 0x343a3c7f789335c9ea60932d34be258f643678d9, amount=5000000000000000 )

Account State Difference:

  Address   Before After State Difference Code
0x0f540ac2...AEC93C847 1.433707604151154722 Eth1.438707604151154722 Eth0.005
0x343a3C7F...F643678d9
0.01624611400269687 Eth
Nonce: 314
0.00754516100269687 Eth
Nonce: 315
0.008700953
(Babel Pool)
17,019.587084106028946489 Eth17,019.590785059028946489 Eth0.003700953
0xe1d01334...b830aA3D4

Execution Trace

ETH 0.005 RequestJNTR.CALL( )
  • ETH 0.005 0x0f540ac274a95699c945014105c751baec93c847.CALL( )
    1
    {"Ownable.sol":{"content":"// SPDX-License-Identifier: No License (None)\r\npragma solidity ^0.6.9;\r\n\r\n/**\r\n * @title Ownable\r\n * @dev The
        Ownable contract has an owner address, and provides basic authorization control\r\n * functions, this simplifies the implementation of \"user
        permissions\".\r\n *\r\n * Source https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-solidity/v2.1.3/contracts/ownership/Ownable.sol\r\n *
        This contract is copied here and renamed from the original to avoid clashes in the compiled artifacts\r\n * when the user imports a zos-lib
        contract (that transitively causes this contract to be compiled and added to the\r\n * build/artifacts folder) as well as the vanilla Ownable
        implementation from an openzeppelin version.\r\n */\r\ncontract Ownable {\r\n address private _owner;\r\n\r\n event OwnershipTransferred
        (address indexed previousOwner, address indexed newOwner);\r\n\r\n /**\r\n * @dev The Ownable constructor sets the original `owner` of the
        contract to the sender\r\n * account.\r\n */\r\n constructor () internal {\r\n _owner = msg.sender;\r\n emit
        OwnershipTransferred(address(0), _owner);\r\n }\r\n\r\n /**\r\n * @return the address of the owner.\r\n */\r\n function owner()
        public view returns (address) {\r\n return _owner;\r\n }\r\n\r\n /**\r\n * @dev Throws if called by any account other than the
        owner.\r\n */\r\n modifier onlyOwner() {\r\n require(isOwner(),\"Not Owner\");\r\n _;\r\n }\r\n\r\n /**\r\n *
        @return true if `msg.sender` is the owner of the contract.\r\n */\r\n function isOwner() public view returns (bool) {\r\n return msg
        .sender == _owner;\r\n }\r\n\r\n /**\r\n * @dev Allows the current owner to relinquish control of the contract.\r\n * @notice
        Renouncing to ownership will leave the contract without an owner.\r\n * It will not be possible to call the functions with the `onlyOwner`\r\n
         * modifier anymore.\r\n */\r\n function renounceOwnership() public onlyOwner {\r\n emit OwnershipTransferred(_owner, address(0
        ));\r\n _owner = address(0);\r\n }\r\n\r\n /**\r\n * @dev Allows the current owner to transfer control of the contract to a
        newOwner.\r\n * @param newOwner The address to transfer ownership to.\r\n */\r\n function transferOwnership(address newOwner) public
        onlyOwner {\r\n _transferOwnership(newOwner);\r\n }\r\n\r\n /**\r\n * @dev Transfers control of the contract to a newOwner.\r\n
         * @param newOwner The address to transfer ownership to.\r\n */\r\n function _transferOwnership(address newOwner) internal {\r\n
        require(newOwner != address(0),\"Zero address not allowed\");\r\n emit OwnershipTransferred(_owner, newOwner);\r\n _owner = newOwner
        ;\r\n }\r\n}"},"RequestJNTR.sol":{"content":"// SPDX-License-Identifier: No License (None)\r\npragma solidity ^0.6.9;\r\n\r\nimport \"./Ownable
        .sol\";\r\n\r\ncontract RequestJNTR is Ownable {\r\n mapping(address =\u003e bool) public isReceived; // user =\u003e isReceived\r\n uint256
        public fee;\r\n address payable public system; // system address mey change fee amount and receive fee\r\n event TokenRequest(address
        indexed user, uint256 amount);\r\n\r\n modifier onlySystem() {\r\n require(msg.sender == system, \"Caller is not the system\");\r\n
         _;\r\n }\r\n\r\n constructor (address payable _system, uint256 _fee) public {\r\n system = _system;\r\n fee = _fee;\r\n
        }\r\n\r\n function setFee(uint256 _fee) external onlySystem returns(bool) {\r\n fee = _fee;\r\n return true;\r\n }\r\n\r\n
        function setSystem(address payable _system) external onlyOwner returns(bool) {\r\n system = _system;\r\n return true;\r\n
        }\r\n\r\n function tokenRequest() public payable {\r\n require(fee \u003c= msg.value, \"Not enough value\");\r\n require
        (!isReceived[msg.sender], \"You already requested tokens\");\r\n isReceived[msg.sender] = true;\r\n system.transfer(msg.value);\r\n
         emit TokenRequest(msg.sender, msg.value);\r\n }\r\n}"}}
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX