ETH Price: $4,274.00 (+6.57%)

Transaction Decoder

Block:
9620397 at Mar-06-2020 10:26:23 PM +UTC
Transaction Fee:
0.0000314196 ETH $0.13
Gas Used:
314,196 Gas / 0.1 Gwei

Emitted Events:

25 SNT.Approval( _owner=[Sender] 0x497d8fc650696f8ff3d3c3797270e0d1db3cc10d, _spender=UsernameRegistrar, _amount=10000000000000000000 )
26 SNT.Transfer( _from=[Sender] 0x497d8fc650696f8ff3d3c3797270e0d1db3cc10d, _to=UsernameRegistrar, _amount=10000000000000000000 )
27 ENS.NewOwner( node=5F7791D31CA0493E9CA7C9CA16695ECD9D5044768674D14D31AB5D8277518FFF, label=FA3A77118769D20D1B1A14005B6D5F23AEC803430C24946F02FF3E86FE877193, owner=UsernameRegistrar )
28 ENS.NewResolver( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, resolver=PublicResolver )
29 PublicResolver.AddrChanged( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, a=[Sender] 0x497d8fc650696f8ff3d3c3797270e0d1db3cc10d )
30 PublicResolver.PubkeyChanged( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, x=088629008D564BF222D98C1A97945B59EE6E5184D292A48CF70452C87093F25F, y=151733361160698AE74CC9DE945D56127592C8042BF1727BB74CE18766A18A2E )
31 ENS.Transfer( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, owner=[Sender] 0x497d8fc650696f8ff3d3c3797270e0d1db3cc10d )
32 UsernameRegistrar.UsernameOwner( nameHash=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, owner=[Sender] 0x497d8fc650696f8ff3d3c3797270e0d1db3cc10d )

Account State Difference:

  Address   Before After State Difference Code
0x31415926...173C1259b
(ENS: Eth Name Service)
0x497D8fC6...1Db3cC10d
0.9934881688 Eth
Nonce: 63
0.9934567492 Eth
Nonce: 64
0.0000314196
0x5FfC0143...35B744cc4
0x744d70FD...3DF805B9E
(Uleypool)
0.785481310442653796 Eth0.785512730042653796 Eth0.0000314196
0xDB5ac1a5...E046DEF49

Execution Trace

SNT.approveAndCall( _spender=0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49, _amount=10000000000000000000, _extraData=0xB82FEDBBFA3A77118769D20D1B1A14005B6D5F23AEC803430C24946F02FF3E86FE877193000000000000000000000000497D8FC650696F8FF3D3C3797270E0D1DB3CC10D088629008D564BF222D98C1A97945B59EE6E5184D292A48CF70452C87093F25F151733361160698AE74CC9DE945D56127592C8042BF1727BB74CE18766A18A2E ) => ( success=True )
  • SNTPlaceHolder.onApprove( _from=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d, 0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49, 10000000000000000000 ) => ( True )
  • UsernameRegistrar.receiveApproval( _from=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d, _amount=10000000000000000000, _token=0x744d70FDBE2Ba4CF95131626614a1763DF805B9E, _data=0xB82FEDBBFA3A77118769D20D1B1A14005B6D5F23AEC803430C24946F02FF3E86FE877193000000000000000000000000497D8FC650696F8FF3D3C3797270E0D1DB3CC10D088629008D564BF222D98C1A97945B59EE6E5184D292A48CF70452C87093F25F151733361160698AE74CC9DE945D56127592C8042BF1727BB74CE18766A18A2E )
    • ENS.owner( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B ) => ( 0x0000000000000000000000000000000000000000 )
    • SNT.allowance( _owner=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d, _spender=0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49 ) => ( remaining=10000000000000000000 )
    • SNT.transferFrom( _from=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d, _to=0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49, _amount=10000000000000000000 ) => ( success=True )
      • SNTPlaceHolder.onTransfer( _from=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d, 0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49, 10000000000000000000 ) => ( True )
      • ENS.setSubnodeOwner( node=5F7791D31CA0493E9CA7C9CA16695ECD9D5044768674D14D31AB5D8277518FFF, label=FA3A77118769D20D1B1A14005B6D5F23AEC803430C24946F02FF3E86FE877193, owner=0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49 )
      • ENS.setResolver( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, resolver=0x5FfC014343cd971B7eb70732021E26C35B744cc4 )
      • PublicResolver.setAddr( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, addr=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d )
        • ENS.owner( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B ) => ( 0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49 )
        • PublicResolver.setPubkey( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, x=088629008D564BF222D98C1A97945B59EE6E5184D292A48CF70452C87093F25F, y=151733361160698AE74CC9DE945D56127592C8042BF1727BB74CE18766A18A2E )
          • ENS.owner( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B ) => ( 0xDB5ac1a559b02E12F29fC0eC0e37Be8E046DEF49 )
          • ENS.setOwner( node=829ED1F7939C064723B998275F685E6557079D725BB5BBB706B0D8A2F7F0901B, owner=0x497D8fC650696F8Ff3D3C3797270e0d1Db3cC10d )
            File 1 of 5: SNT
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            pragma solidity ^0.4.11;
            /// @dev `Owned` is a base level contract that assigns an `owner` that can be
            /// later changed
            contract Owned {
            /// @dev `owner` is the only address that can call a function with this
            /// modifier
            modifier onlyOwner() {
            require(msg.sender == owner);
            _;
            }
            address public owner;
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 2 of 5: UsernameRegistrar
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            pragma solidity ^0.4.24;
            /**
            * @title MerkleProof
            * @dev Merkle proof verification based on
            * https://github.com/ameensol/merkle-tree-solidity/blob/master/src/MerkleProof.sol
            */
            library MerkleProof {
            /**
            * @dev Verifies a Merkle proof proving the existence of a leaf in a Merkle tree. Assumes that each pair of leaves
            * and each pair of pre-images are sorted.
            * @param _proof Merkle proof containing sibling hashes on the branch from the leaf to the root of the Merkle tree
            * @param _root Merkle root
            * @param _leaf Leaf of Merkle tree
            */
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 3 of 5: ENS
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            ;;; ---------------------------------------------------------------------------
            ;;; @title The Ethereum Name Service registry.
            ;;; @author Daniel Ellison <daniel@syrinx.net>
            (seq
            ;; --------------------------------------------------------------------------
            ;; Constant definitions.
            ;; Memory layout.
            (def 'node-bytes 0x00)
            (def 'label-bytes 0x20)
            (def 'call-result 0x40)
            ;; Struct: Record
            (def 'resolver 0x00) ; address
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 4 of 5: PublicResolver
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            pragma solidity ^0.4.0;
            contract AbstractENS {
            function owner(bytes32 node) constant returns(address);
            function resolver(bytes32 node) constant returns(address);
            function ttl(bytes32 node) constant returns(uint64);
            function setOwner(bytes32 node, address owner);
            function setSubnodeOwner(bytes32 node, bytes32 label, address owner);
            function setResolver(bytes32 node, address resolver);
            function setTTL(bytes32 node, uint64 ttl);
            // Logged when the owner of a node assigns a new owner to a subnode.
            event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner);
            // Logged when the owner of a node transfers ownership to a new account.
            event Transfer(bytes32 indexed node, address owner);
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 5 of 5: SNTPlaceHolder
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            pragma solidity ^0.4.11;
            /// @dev `Owned` is a base level contract that assigns an `owner` that can be
            /// later changed
            contract Owned {
            /// @dev `owner` is the only address that can call a function with this
            /// modifier
            modifier onlyOwner() {
            require(msg.sender == owner);
            _;
            }
            address public owner;
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX