ETH Price: $1,994.34 (-3.33%)

Transaction Decoder

Block:
16102417 at Dec-03-2022 06:11:59 AM +UTC
Transaction Fee:
0.00220678416 ETH $4.40
Gas Used:
215,928 Gas / 10.22 Gwei

Emitted Events:

160 GenArt721CoreV3_Explorations.Approval( owner=0x17abeac1c5e5ac1545d800190b7121e925394fd2, approved=0x00000000...000000000, tokenId=8301 )
161 GenArt721CoreV3_Explorations.Transfer( from=0x17abeac1c5e5ac1545d800190b7121e925394fd2, to=[Sender] 0x90dc9b5321bc16def1cd97f259f29e28230c8fdd, tokenId=8301 )
162 ERC1967Proxy.0x61cbb2a3dee0b6064c2e681aadd61677fb4ef319f0b547508d495626f5a62f64( 0x61cbb2a3dee0b6064c2e681aadd61677fb4ef319f0b547508d495626f5a62f64, 0x00000000000000000000000017abeac1c5e5ac1545d800190b7121e925394fd2, 0x00000000000000000000000090dc9b5321bc16def1cd97f259f29e28230c8fdd, 0000000000000000000000000000000000000000000000000000000000000080, 6a268cfb049a33caab8d4ccdbdc70e12729a86071ec4a6450ad0fa8a4831b179, 00000000000000000000000000000000000000000000000000000000000002a0, e16ebf884b69e3d02c794580ce8c566f52524518c4a64e7ca691a8625d03006c, 00000000000000000000000017abeac1c5e5ac1545d800190b7121e925394fd2, 0000000000000000000000000000000000000000000000000000000000000001, 00000000000000000000000000000000006411739da1c40b106f8511de5d1fac, 000000000000000000000000942bc2d3e7a589fe5bd4a5c6ef9727dfd82f5c8a, 000000000000000000000000000000000000000000000000000000000000206d, 0000000000000000000000000000000000000000000000000000000000000001, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000ad5f57690a00000, 000000000000000000000000000000000000000000000000000000006388a714, 000000000000000000000000000000000000000000000000000000006391e193, 00000000000000000000000000000000000000000000000000000000000001a0, 00000000000000000000000000000000f9e907449c13be234749aa6bf98fa04f, 0000000000000000000000000000000000000000000000000000000000000200, 0000000000000000000000000000000000000000000000000000000000000001, 000000000000000000000000000000000000000000000000000000000000000a, 0000000000000000000000006c093fe8bc59e1e0cae2ec10f0b717d3d182056b, 0000000000000000000000000000000000000000000000000000000000000000, 00000000000000000000000090dc9b5321bc16def1cd97f259f29e28230c8fdd, 0000000000000000000000000000000000000000000000000000000000000000, 00000000000000000000000000000000006411739da1c40b106f8511de5d1fac, 000000000000000000000000942bc2d3e7a589fe5bd4a5c6ef9727dfd82f5c8a, 000000000000000000000000000000000000000000000000000000000000206d, 0000000000000000000000000000000000000000000000000000000000000001, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000ad5f57690a00000, 00000000000000000000000000000000000000000000000000000000638ad8a1, 00000000000000000000000000000000000000000000000000000000638af4c1, 00000000000000000000000000000000000000000000000000000000000001a0, 0000000000000000000000000000000086938bef2d411e22c5f4a44a9620c775, 00000000000000000000000000000000000000000000000000000000000001c0, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000 )

Account State Difference:

  Address   Before After State Difference Code
0x00000000...830B95127
(Blur.io: Marketplace)
0x17abEAc1...925394fD2 0.022317638947828095 Eth0.802336838947828095 Eth0.7800192
0x6C093Fe8...3D182056B 221.917583065280938871 Eth221.918363865280938871 Eth0.0007808
0x90DC9b53...8230C8fdd
0.839295348639266862 Eth
Nonce: 145
0.056288564479266862 Eth
Nonce: 146
0.78300678416
0x942BC2d3...Fd82F5C8a
(Fee Recipient: 0xF0...C61)
20.609079544873813193 Eth20.609085560668487657 Eth0.000006015794674464

Execution Trace

ETH 0.7808 ERC1967Proxy.9a1fc3a7( )
  • ETH 0.7808 BlurExchange.execute( sell=[{name:order, type:tuple, order:1, indexed:false, value:[{name:trader, type:address, order:1, indexed:false, value:0x17abEAc1C5E5AC1545D800190B7121E925394fD2, valueString:0x17abEAc1C5E5AC1545D800190B7121E925394fD2}, {name:side, type:uint8, order:2, indexed:false, value:1, valueString:1}, {name:matchingPolicy, type:address, order:3, indexed:false, value:0x00000000006411739DA1c40B106F8511de5D1FAC, valueString:0x00000000006411739DA1c40B106F8511de5D1FAC}, {name:collection, type:address, order:4, indexed:false, value:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, valueString:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a}, {name:tokenId, type:uint256, order:5, indexed:false, value:8301, valueString:8301}, {name:amount, type:uint256, order:6, indexed:false, value:1, valueString:1}, {name:paymentToken, type:address, order:7, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:price, type:uint256, order:8, indexed:false, value:780800000000000000, valueString:780800000000000000}, {name:listingTime, type:uint256, order:9, indexed:false, value:1669900052, valueString:1669900052}, {name:expirationTime, type:uint256, order:10, indexed:false, value:1670504851, valueString:1670504851}, {name:fees, type:tuple[], order:11, indexed:false}, {name:salt, type:uint256, order:12, indexed:false, value:332187723531168472745270608364789801039, valueString:332187723531168472745270608364789801039}, {name:extraParams, type:bytes, order:13, indexed:false, value:0x, valueString:0x}], valueString:[{name:trader, type:address, order:1, indexed:false, value:0x17abEAc1C5E5AC1545D800190B7121E925394fD2, valueString:0x17abEAc1C5E5AC1545D800190B7121E925394fD2}, {name:side, type:uint8, order:2, indexed:false, value:1, valueString:1}, {name:matchingPolicy, type:address, order:3, indexed:false, value:0x00000000006411739DA1c40B106F8511de5D1FAC, valueString:0x00000000006411739DA1c40B106F8511de5D1FAC}, {name:collection, type:address, order:4, indexed:false, value:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, valueString:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a}, {name:tokenId, type:uint256, order:5, indexed:false, value:8301, valueString:8301}, {name:amount, type:uint256, order:6, indexed:false, value:1, valueString:1}, {name:paymentToken, type:address, order:7, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:price, type:uint256, order:8, indexed:false, value:780800000000000000, valueString:780800000000000000}, {name:listingTime, type:uint256, order:9, indexed:false, value:1669900052, valueString:1669900052}, {name:expirationTime, type:uint256, order:10, indexed:false, value:1670504851, valueString:1670504851}, {name:fees, type:tuple[], order:11, indexed:false}, {name:salt, type:uint256, order:12, indexed:false, value:332187723531168472745270608364789801039, valueString:332187723531168472745270608364789801039}, {name:extraParams, type:bytes, order:13, indexed:false, value:0x, valueString:0x}]}, {name:v, type:uint8, order:2, indexed:false, value:27, valueString:27}, {name:r, type:bytes32, order:3, indexed:false, value:D0949BE951769AD9F8E4A0E15F270ED5CCD021AB8CF17B63DB442B73DB83CAAC, valueString:D0949BE951769AD9F8E4A0E15F270ED5CCD021AB8CF17B63DB442B73DB83CAAC}, {name:s, type:bytes32, order:4, indexed:false, value:1059DDEF6C4DDC2CC75EAC606C966122258D081716C270DC5EEE877AE954C4E5, valueString:1059DDEF6C4DDC2CC75EAC606C966122258D081716C270DC5EEE877AE954C4E5}, {name:extraSignature, type:bytes, order:5, indexed:false, value:0x, valueString:0x}, {name:signatureVersion, type:uint8, order:6, indexed:false, value:0, valueString:0}, {name:blockNumber, type:uint256, order:7, indexed:false, value:16102374, valueString:16102374}], buy=[{name:order, type:tuple, order:1, indexed:false, value:[{name:trader, type:address, order:1, indexed:false, value:0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd, valueString:0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd}, {name:side, type:uint8, order:2, indexed:false, value:0, valueString:0}, {name:matchingPolicy, type:address, order:3, indexed:false, value:0x00000000006411739DA1c40B106F8511de5D1FAC, valueString:0x00000000006411739DA1c40B106F8511de5D1FAC}, {name:collection, type:address, order:4, indexed:false, value:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, valueString:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a}, {name:tokenId, type:uint256, order:5, indexed:false, value:8301, valueString:8301}, {name:amount, type:uint256, order:6, indexed:false, value:1, valueString:1}, {name:paymentToken, type:address, order:7, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:price, type:uint256, order:8, indexed:false, value:780800000000000000, valueString:780800000000000000}, {name:listingTime, type:uint256, order:9, indexed:false, value:1670043809, valueString:1670043809}, {name:expirationTime, type:uint256, order:10, indexed:false, value:1670051009, valueString:1670051009}, {name:fees, type:tuple[], order:11, indexed:false}, {name:salt, type:uint256, order:12, indexed:false, value:178882657277854643054553212707389097845, valueString:178882657277854643054553212707389097845}, {name:extraParams, type:bytes, order:13, indexed:false, value:0x, valueString:0x}], valueString:[{name:trader, type:address, order:1, indexed:false, value:0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd, valueString:0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd}, {name:side, type:uint8, order:2, indexed:false, value:0, valueString:0}, {name:matchingPolicy, type:address, order:3, indexed:false, value:0x00000000006411739DA1c40B106F8511de5D1FAC, valueString:0x00000000006411739DA1c40B106F8511de5D1FAC}, {name:collection, type:address, order:4, indexed:false, value:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, valueString:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a}, {name:tokenId, type:uint256, order:5, indexed:false, value:8301, valueString:8301}, {name:amount, type:uint256, order:6, indexed:false, value:1, valueString:1}, {name:paymentToken, type:address, order:7, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:price, type:uint256, order:8, indexed:false, value:780800000000000000, valueString:780800000000000000}, {name:listingTime, type:uint256, order:9, indexed:false, value:1670043809, valueString:1670043809}, {name:expirationTime, type:uint256, order:10, indexed:false, value:1670051009, valueString:1670051009}, {name:fees, type:tuple[], order:11, indexed:false}, {name:salt, type:uint256, order:12, indexed:false, value:178882657277854643054553212707389097845, valueString:178882657277854643054553212707389097845}, {name:extraParams, type:bytes, order:13, indexed:false, value:0x, valueString:0x}]}, {name:v, type:uint8, order:2, indexed:false, value:0, valueString:0}, {name:r, type:bytes32, order:3, indexed:false, value:0000000000000000000000000000000000000000000000000000000000000000, valueString:0000000000000000000000000000000000000000000000000000000000000000}, {name:s, type:bytes32, order:4, indexed:false, value:0000000000000000000000000000000000000000000000000000000000000000, valueString:0000000000000000000000000000000000000000000000000000000000000000}, {name:extraSignature, type:bytes, order:5, indexed:false, value:0x, valueString:0x}, {name:signatureVersion, type:uint8, order:6, indexed:false, value:0, valueString:0}, {name:blockNumber, type:uint256, order:7, indexed:false, value:16102374, valueString:16102374}] )
    • Null: 0x000...001.4fa08841( )
    • PolicyManager.isPolicyWhitelisted( policy=0x00000000006411739DA1c40B106F8511de5D1FAC ) => ( True )
    • StandardPolicyERC721.canMatchMakerAsk( makerAsk=[{name:trader, type:address, order:1, indexed:false, value:0x17abEAc1C5E5AC1545D800190B7121E925394fD2, valueString:0x17abEAc1C5E5AC1545D800190B7121E925394fD2}, {name:side, type:uint8, order:2, indexed:false, value:1, valueString:1}, {name:matchingPolicy, type:address, order:3, indexed:false, value:0x00000000006411739DA1c40B106F8511de5D1FAC, valueString:0x00000000006411739DA1c40B106F8511de5D1FAC}, {name:collection, type:address, order:4, indexed:false, value:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, valueString:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a}, {name:tokenId, type:uint256, order:5, indexed:false, value:8301, valueString:8301}, {name:amount, type:uint256, order:6, indexed:false, value:1, valueString:1}, {name:paymentToken, type:address, order:7, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:price, type:uint256, order:8, indexed:false, value:780800000000000000, valueString:780800000000000000}, {name:listingTime, type:uint256, order:9, indexed:false, value:1669900052, valueString:1669900052}, {name:expirationTime, type:uint256, order:10, indexed:false, value:1670504851, valueString:1670504851}, {name:fees, type:tuple[], order:11, indexed:false}, {name:salt, type:uint256, order:12, indexed:false, value:332187723531168472745270608364789801039, valueString:332187723531168472745270608364789801039}, {name:extraParams, type:bytes, order:13, indexed:false, value:0x, valueString:0x}], takerBid=[{name:trader, type:address, order:1, indexed:false, value:0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd, valueString:0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd}, {name:side, type:uint8, order:2, indexed:false, value:0, valueString:0}, {name:matchingPolicy, type:address, order:3, indexed:false, value:0x00000000006411739DA1c40B106F8511de5D1FAC, valueString:0x00000000006411739DA1c40B106F8511de5D1FAC}, {name:collection, type:address, order:4, indexed:false, value:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, valueString:0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a}, {name:tokenId, type:uint256, order:5, indexed:false, value:8301, valueString:8301}, {name:amount, type:uint256, order:6, indexed:false, value:1, valueString:1}, {name:paymentToken, type:address, order:7, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:price, type:uint256, order:8, indexed:false, value:780800000000000000, valueString:780800000000000000}, {name:listingTime, type:uint256, order:9, indexed:false, value:1670043809, valueString:1670043809}, {name:expirationTime, type:uint256, order:10, indexed:false, value:1670051009, valueString:1670051009}, {name:fees, type:tuple[], order:11, indexed:false}, {name:salt, type:uint256, order:12, indexed:false, value:178882657277854643054553212707389097845, valueString:178882657277854643054553212707389097845}, {name:extraParams, type:bytes, order:13, indexed:false, value:0x, valueString:0x}] ) => ( True, 780800000000000000, 8301, 1, 0 )
    • ETH 0.0007808 0x6c093fe8bc59e1e0cae2ec10f0b717d3d182056b.CALL( )
    • ETH 0.7800192 0x17abeac1c5e5ac1545d800190b7121e925394fd2.CALL( )
    • ExecutionDelegate.transferERC721( collection=0x942BC2d3e7a589FE5bd4A5C6eF9727DFd82F5C8a, from=0x17abEAc1C5E5AC1545D800190B7121E925394fD2, to=0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd, tokenId=8301 )
      • GenArt721CoreV3_Explorations.safeTransferFrom( from=0x17abEAc1C5E5AC1545D800190B7121E925394fD2, to=0x90DC9b5321Bc16DEf1cD97F259F29E28230C8fdd, tokenId=8301 )
        execute[BlurExchange (ln:101)]
        File 1 of 6: ERC1967Proxy
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        // OpenZeppelin Contracts v4.4.1 (proxy/ERC1967/ERC1967Proxy.sol)
        pragma solidity 0.8.17;
        // OpenZeppelin Contracts v4.4.1 (proxy/Proxy.sol)
        /**
        * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM
        * instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to
        * be specified by overriding the virtual {_implementation} function.
        *
        * Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a
        * different contract through the {_delegate} function.
        *
        * The success and return data of the delegated call will be returned back to the caller of the proxy.
        */
        abstract contract Proxy {
        /**
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 2 of 6: GenArt721CoreV3_Explorations
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: LGPL-3.0-only
        pragma solidity 0.8.17;
        // Created By: Art Blocks Inc.
        import "../interfaces/0.8.x/IRandomizerV2.sol";
        import "../interfaces/0.8.x/IAdminACLV0.sol";
        import "../interfaces/0.8.x/IGenArt721CoreContractV3.sol";
        import "../interfaces/0.8.x/IManifold.sol";
        import "@openzeppelin-4.7/contracts/utils/Strings.sol";
        import "@openzeppelin-4.7/contracts/access/Ownable.sol";
        import "../libs/0.8.x/ERC721_PackedHashSeed.sol";
        import "../libs/0.8.x/BytecodeStorage.sol";
        import "../libs/0.8.x/Bytes32Strings.sol";
        /**
        * @title Art Blocks ERC-721 core contract, V3_Explorations.
        * @author Art Blocks Inc.
        * @notice Privileged Roles and Ownership:
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 3 of 6: BlurExchange
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity 0.8.17;
        import "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
        import "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol";
        import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
        import "./lib/ReentrancyGuarded.sol";
        import "./lib/EIP712.sol";
        import "./lib/MerkleVerifier.sol";
        import "./interfaces/IBlurExchange.sol";
        import "./interfaces/IExecutionDelegate.sol";
        import "./interfaces/IPolicyManager.sol";
        import "./interfaces/IMatchingPolicy.sol";
        import {
        Side,
        SignatureVersion,
        AssetType,
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 4 of 6: PolicyManager
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity 0.8.17;
        import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
        import {EnumerableSet} from "@openzeppelin/contracts/utils/structs/EnumerableSet.sol";
        import {IPolicyManager} from "./interfaces/IPolicyManager.sol";
        /**
        * @title PolicyManager
        * @dev Manages the policy whitelist for the Blur exchange
        */
        contract PolicyManager is IPolicyManager, Ownable {
        using EnumerableSet for EnumerableSet.AddressSet;
        EnumerableSet.AddressSet private _whitelistedPolicies;
        event PolicyRemoved(address indexed policy);
        event PolicyWhitelisted(address indexed policy);
        /**
        * @notice Add matching policy
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 5 of 6: StandardPolicyERC721
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity 0.8.17;
        import {Order, AssetType} from "../lib/OrderStructs.sol";
        import {IMatchingPolicy} from "../interfaces/IMatchingPolicy.sol";
        /**
        * @title StandardPolicyERC721
        * @dev Policy for matching orders at a fixed price for a specific ERC721 tokenId
        */
        contract StandardPolicyERC721 is IMatchingPolicy {
        function canMatchMakerAsk(Order calldata makerAsk, Order calldata takerBid)
        external
        pure
        override
        returns (
        bool,
        uint256,
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

        File 6 of 6: ExecutionDelegate
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        // SPDX-License-Identifier: MIT
        pragma solidity 0.8.17;
        import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
        import "@openzeppelin/contracts/token/ERC721/IERC721.sol";
        import "@openzeppelin/contracts/token/ERC1155/IERC1155.sol";
        import "@openzeppelin/contracts/access/Ownable.sol";
        import "@openzeppelin/contracts/utils/Address.sol";
        import {IExecutionDelegate} from "./interfaces/IExecutionDelegate.sol";
        /**
        * @title ExecutionDelegate
        * @dev Proxy contract to manage user token approvals
        */
        contract ExecutionDelegate is IExecutionDelegate, Ownable {
        using Address for address;
        mapping(address => bool) public contracts;
        mapping(address => bool) public revokedApproval;
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX