ETH Price: $3,606.91 (+5.24%)

Transaction Decoder

Block:
20909128 at Oct-06-2024 09:13:59 PM +UTC
Transaction Fee:
0.001970468418219504 ETH $7.11
Gas Used:
358,492 Gas / 5.496547812 Gwei

Emitted Events:

301 SimpleToken.Transfer( from=[Sender] 0x30cd29d9ecc7ea7e988b75d1ce8c79502acb109a, to=ERC20Router, value=1286305283432743961250 )
302 SimpleToken.Approval( owner=[Sender] 0x30cd29d9ecc7ea7e988b75d1ce8c79502acb109a, spender=[Receiver] ApprovalProxy, value=0 )
303 SimpleToken.Approval( owner=ERC20Router, spender=ZeroEx, value=1286305283432743961250 )
304 WETH9.Transfer( src=0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF, dst=ZeroEx, wad=380946818011880765 )
305 SimpleToken.Transfer( from=ERC20Router, to=0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF, value=1286305283432743961250 )
306 SimpleToken.Approval( owner=ERC20Router, spender=ZeroEx, value=0 )
307 0xac4b3dacb91461209ae9d41ec517c2b9cb1b7daf.0xc42079f94a6350d7e6235f29174924f928cc2ac818eb64fed8004e115fbcca67( 0xc42079f94a6350d7e6235f29174924f928cc2ac818eb64fed8004e115fbcca67, 0x000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff, 0x000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff, 000000000000000000000000000000000000000000000045bb12602504dc02a2, fffffffffffffffffffffffffffffffffffffffffffffffffab69ae32a1622c3, 000000000000000000000000000000000000000004679f81925b3788c057228b, 00000000000000000000000000000000000000000000016521bfd1c29cd5d624, fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec29a )
308 WETH9.Withdrawal( src=ZeroEx, wad=380946818011880765 )
309 GnosisSafeProxy.0x3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d1ad7c3d( 0x3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d1ad7c3d, 0x0000000000000000000000000000000000000068f116a894984e2db1123eb395, 000000000000000000000000000000000000000000000000004380663abb8000 )
310 ERC1967Proxy.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x00000000000000000000000021b97b91623b5b55fc01693450f2e1b517d730c5, 0x00000000000000000000000030cd29d9ecc7ea7e988b75d1ce8c79502acb109a, 0x000000000000000000000000000000000000000000000000000000000000032a )
311 Seaport.OrderFulfilled( orderHash=94D57FAAC1CB2E4D7F6B515FECF5814A7C632D6CA5F0993569B5C5BDB5D7D7DB, offerer=0x21b97b91623b5b55fc01693450f2e1b517d730c5, zone=SignedZoneV16, recipient=[Sender] 0x30cd29d9ecc7ea7e988b75d1ce8c79502acb109a, offer=, consideration= )

Account State Difference:

  Address   Before After State Difference Code
0x00000000...1123eB395
(Seaport 1.6)
0x21b97B91...517D730C5 0.96167269815466172 Eth1.31507269815466172 Eth0.3534
0x30cD29D9...02AcB109A
0.011279312823337586 Eth
Nonce: 199
0.010255662416998847 Eth
Nonce: 200
0.001023650406338739
0x4d224452...b5D594381
0x6fA303e7...331E2F27E 24.066362176328424204 Eth24.073962176328424204 Eth0.0076
0x790B2cF2...560d28371
(beaverbuild)
9.552098850437998619 Eth9.552116775037998619 Eth0.0000179246
0xA858DDc0...fcbA52Ef1
(Yuga Labs)
5.554492731464232279 Eth5.573492731464232279 Eth0.019
0xAc4b3Dac...9Cb1B7DAF
(Uniswap V3: APE 7)
0xC02aaA39...83C756Cc2 2,981,186.168576560384279278 Eth2,981,185.787629742372398513 Eth0.380946818011880765

Execution Trace

ApprovalProxy.transferAndMulticall( tokens=[0x4d224452801ACEd8B2F0aebE155379bb5D594381], amounts=[1286305283432743961250], targets=[0x4d224452801ACEd8B2F0aebE155379bb5D594381, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF, 0x0000000000000068F116a894984e2DB1123eB395], datas=[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], values=[0, 0, 380000000000000000], refundTo=0x30cD29D9eCC7eA7E988B75D1Ce8C79502AcB109A ) => ( 0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000E00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000549651CD5E9DD3D00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001 )
  • SimpleToken.transferFrom( sender=0x30cD29D9eCC7eA7E988B75D1Ce8C79502AcB109A, recipient=0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, amount=1286305283432743961250 ) => ( True )
  • ERC20Router.delegatecallMulticall( targets=[0x4d224452801ACEd8B2F0aebE155379bb5D594381, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF, 0x0000000000000068F116a894984e2DB1123eB395], datas=[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], values=[0, 0, 380000000000000000], refundTo=0x30cD29D9eCC7eA7E988B75D1Ce8C79502AcB109A ) => ( 0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000E00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000549651CD5E9DD3D00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001 )
    • Multicaller.aggregate( targets=[0x4d224452801ACEd8B2F0aebE155379bb5D594381, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF, 0x0000000000000068F116a894984e2DB1123eB395], data=[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], values=[0, 0, 380000000000000000], refundTo=0x30cD29D9eCC7eA7E988B75D1Ce8C79502AcB109A ) => ( [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE=, AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUllHNXp3T0=, AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE=] )
      • SimpleToken.approve( spender=0xDef1C0ded9bec7F1a1670819833240f027b25EfF, amount=1286305283432743961250 ) => ( True )
      • ZeroEx.803ba26d( )
        • UniswapV3Feature.sellTokenForEthToUniswapV3( encodedPath=0x4D224452801ACED8B2F0AEBE155379BB5D594381000BB8C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2, sellAmount=1286305283432743961250, minBuyAmount=377137349831761941, recipient=0x0000000000000000000000000000000000000000 ) => ( buyAmount=380946818011880765 )
          • Uniswap V3: APE 7.128acb08( )
            • WETH9.transfer( dst=0xDef1C0ded9bec7F1a1670819833240f027b25EfF, wad=380946818011880765 ) => ( True )
            • SimpleToken.balanceOf( account=0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF ) => ( 332576085136701664698421 )
            • ZeroEx.fa461e33( )
            • SimpleToken.balanceOf( account=0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF ) => ( 333862390420134408659671 )
            • WETH9.withdraw( wad=380946818011880765 )
              • ETH 0.380946818011880765 ZeroEx.CALL( )
              • ETH 0.380946818011880765 ERC20Router.CALL( )
              • ETH 0.38 Seaport.fulfillAdvancedOrder( [{name:parameters, type:tuple, order:1, indexed:false, value:[{name:offerer, type:address, order:1, indexed:false, value:0x21b97B91623B5b55fc01693450f2E1b517D730C5, valueString:0x21b97B91623B5b55fc01693450f2E1b517D730C5}, {name:zone, type:address, order:2, indexed:false, value:0x2D1A340cd83434243D090931AfABF95B7D3078b0, valueString:0x2D1A340cd83434243D090931AfABF95B7D3078b0}, {name:offer, type:tuple[], order:3, indexed:false}, {name:consideration, type:tuple[], order:4, indexed:false}, {name:orderType, type:uint8, order:5, indexed:false, value:2, valueString:2}, {name:startTime, type:uint256, order:6, indexed:false, value:1728248871, valueString:1728248871}, {name:endTime, type:uint256, order:7, indexed:false, value:1728853732, valueString:1728853732}, {name:zoneHash, type:bytes32, order:8, indexed:false, value:0000000000000000000000000000000000000000000000000000000000000000, valueString:0000000000000000000000000000000000000000000000000000000000000000}, {name:salt, type:uint256, order:9, indexed:false, value:6381935931778695877129139614811534891328257515162877831222474703405456523484, valueString:6381935931778695877129139614811534891328257515162877831222474703405456523484}, {name:conduitKey, type:bytes32, order:10, indexed:false, value:87328C9043E7BF343695554EAAF5A8892F7205E3000000000000000000000000, valueString:87328C9043E7BF343695554EAAF5A8892F7205E3000000000000000000000000}, {name:totalOriginalConsiderationItems, type:uint256, order:11, indexed:false, value:3, valueString:3}], valueString:[{name:offerer, type:address, order:1, indexed:false, value:0x21b97B91623B5b55fc01693450f2E1b517D730C5, valueString:0x21b97B91623B5b55fc01693450f2E1b517D730C5}, {name:zone, type:address, order:2, indexed:false, value:0x2D1A340cd83434243D090931AfABF95B7D3078b0, valueString:0x2D1A340cd83434243D090931AfABF95B7D3078b0}, {name:offer, type:tuple[], order:3, indexed:false}, {name:consideration, type:tuple[], order:4, indexed:false}, {name:orderType, type:uint8, order:5, indexed:false, value:2, valueString:2}, {name:startTime, type:uint256, order:6, indexed:false, value:1728248871, valueString:1728248871}, {name:endTime, type:uint256, order:7, indexed:false, value:1728853732, valueString:1728853732}, {name:zoneHash, type:bytes32, order:8, indexed:false, value:0000000000000000000000000000000000000000000000000000000000000000, valueString:0000000000000000000000000000000000000000000000000000000000000000}, {name:salt, type:uint256, order:9, indexed:false, value:6381935931778695877129139614811534891328257515162877831222474703405456523484, valueString:6381935931778695877129139614811534891328257515162877831222474703405456523484}, {name:conduitKey, type:bytes32, order:10, indexed:false, value:87328C9043E7BF343695554EAAF5A8892F7205E3000000000000000000000000, valueString:87328C9043E7BF343695554EAAF5A8892F7205E3000000000000000000000000}, {name:totalOriginalConsiderationItems, type:uint256, order:11, indexed:false, value:3, valueString:3}]}, {name:numerator, type:uint120, order:2, indexed:false, value:1, valueString:1}, {name:denominator, type:uint120, order:3, indexed:false, value:1, valueString:1}, {name:signature, type:bytes, order:4, indexed:false, value:0xA495693190D19360DDB5923D1348ED730FC7F941892619B66AF8686F9C776A5D19F696C7E8DFB53CA6E08C5968859CD0B0E1B7B138DE403891A9DAFF5E5A23631B, valueString:0xA495693190D19360DDB5923D1348ED730FC7F941892619B66AF8686F9C776A5D19F696C7E8DFB53CA6E08C5968859CD0B0E1B7B138DE403891A9DAFF5E5A23631B}, {name:extraData, type:bytes, order:5, indexed:false, value:0x000000000000000000000000000000000000000000000000006702FDB5D6DF9D9E6907B21EEF37CC365486B8E794752E67A4324AC6E607B5C6B524D035BA21A174FFCD3E75787BC153A0043D89D20B705C42CD353F663A9190DC0FCA91006803E2C208CC7E0EBDEF8948DAE876FBA31FD1E9C395BA5C12A2D205F8800DE3, valueString:0x000000000000000000000000000000000000000000000000006702FDB5D6DF9D9E6907B21EEF37CC365486B8E794752E67A4324AC6E607B5C6B524D035BA21A174FFCD3E75787BC153A0043D89D20B705C42CD353F663A9190DC0FCA91006803E2C208CC7E0EBDEF8948DAE876FBA31FD1E9C395BA5C12A2D205F8800DE3}], , fulfillerConduitKey=0000007B02230091A7ED01230072F7006A004D60A8D4E71D599B8104250F0000, recipient=0x30cD29D9eCC7eA7E988B75D1Ce8C79502AcB109A ) => ( fulfilled=True )
                • Null: 0x000...001.adcf790c( )
                • Null: 0x000...004.00000000( )
                • Null: 0x000...004.00000000( )
                • Null: 0x000...004.00000000( )
                • Null: 0x000...004.00000000( )
                • Null: 0x000...004.00000000( )
                • SignedZoneV16.authorizeOrder( )
                • ETH 0.3534 0x21b97b91623b5b55fc01693450f2e1b517d730c5.CALL( )
                • ETH 0.019 GnosisSafeProxy.CALL( )
                  • ETH 0.019 GnosisSafe.DELEGATECALL( )
                  • ETH 0.0076 0x6fa303e72bed54f515a513496f922bc331e2f27e.CALL( )
                  • Conduit.execute( transfers= ) => ( transfers= )
                    • ERC1967Proxy.23b872dd( )
                      • 0x49c3ef8dbb15fa870688c604389b86d387748bb1.23b872dd( )
                      • Null: 0x000...004.94d57faa( )
                      • SignedZoneV16.validateOrder( )
                        • Null: 0x000...001.308916bc( )
                        • ETH 0.000946818011880765 0x30cd29d9ecc7ea7e988b75d1ce8c79502acb109a.CALL( )
                          transferAndMulticall[ApprovalProxy (ln:37)]
                          File 1 of 13: ApprovalProxy
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.23;
                          import {Ownable} from "solady/src/auth/Ownable.sol";
                          import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
                          import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
                          import {IERC20Router} from "../src/types/interfaces/IERC20Router.sol";
                          contract ApprovalProxy is Ownable {
                          using SafeERC20 for IERC20;
                          error ArrayLengthsMismatch();
                          error ERC20TransferFromFailed();
                          error NativeTransferFailed();
                          event RouterUpdated(address newRouter);
                          address public router;
                          receive() external payable {}
                          constructor(address _owner, address _router) {
                          _initializeOwner(_owner);
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 2 of 13: ERC20Router
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.25;
                          import {Ownable} from "solady/src/auth/Ownable.sol";
                          import {Tstorish} from "tstorish/src/Tstorish.sol";
                          import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
                          import {IERC721} from "@openzeppelin/contracts/token/ERC721/IERC721.sol";
                          import {IERC1155} from "@openzeppelin/contracts/token/ERC1155/IERC1155.sol";
                          import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
                          import {IAllowanceTransfer} from "permit2-relay/src/interfaces/IAllowanceTransfer.sol";
                          import {ISignatureTransfer} from "permit2-relay/src/interfaces/ISignatureTransfer.sol";
                          import {IPermit2} from "permit2-relay/src/interfaces/IPermit2.sol";
                          import {RelayerWitness} from "./types/lib/RelayStructs.sol";
                          import {IMulticaller} from "./types/interfaces/IMulticaller.sol";
                          contract ERC20Router is Ownable, Tstorish {
                          using SafeERC20 for IERC20;
                          // --- Errors --- //
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 3 of 13: SimpleToken
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.10;
                          import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
                          contract SimpleToken is ERC20 {
                          constructor(
                          string memory name,
                          string memory symbol,
                          uint256 totalSupply_
                          ) ERC20(name, symbol) {
                          _mint(msg.sender, totalSupply_);
                          }
                          }
                          // SPDX-License-Identifier: MIT
                          // OpenZeppelin Contracts v4.4.1 (utils/Context.sol)
                          pragma solidity ^0.8.0;
                          /**
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 4 of 13: ZeroEx
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          /*
                          Copyright 2020 ZeroEx Intl.
                          Licensed under the Apache License, Version 2.0 (the "License");
                          you may not use this file except in compliance with the License.
                          You may obtain a copy of the License at
                          http://www.apache.org/licenses/LICENSE-2.0
                          Unless required by applicable law or agreed to in writing, software
                          distributed under the License is distributed on an "AS IS" BASIS,
                          WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
                          See the License for the specific language governing permissions and
                          limitations under the License.
                          */
                          pragma solidity ^0.6.5;
                          pragma experimental ABIEncoderV2;
                          import "@0x/contracts-utils/contracts/src/v06/LibBytesV06.sol";
                          import "./migrations/LibBootstrap.sol";
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 5 of 13: WETH9
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // Copyright (C) 2015, 2016, 2017 Dapphub
                          // This program is free software: you can redistribute it and/or modify
                          // it under the terms of the GNU General Public License as published by
                          // the Free Software Foundation, either version 3 of the License, or
                          // (at your option) any later version.
                          // This program is distributed in the hope that it will be useful,
                          // but WITHOUT ANY WARRANTY; without even the implied warranty of
                          // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
                          // GNU General Public License for more details.
                          // You should have received a copy of the GNU General Public License
                          // along with this program. If not, see <http://www.gnu.org/licenses/>.
                          pragma solidity ^0.4.18;
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 6 of 13: GnosisSafeProxy
                          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.7.0 <0.9.0;
                          /// @title IProxy - Helper interface to access masterCopy of the Proxy on-chain
                          /// @author Richard Meissner - <richard@gnosis.io>
                          interface IProxy {
                          function masterCopy() external view returns (address);
                          }
                          /// @title GnosisSafeProxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.
                          /// @author Stefan George - <stefan@gnosis.io>
                          /// @author Richard Meissner - <richard@gnosis.io>
                          contract GnosisSafeProxy {
                          // singleton always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.
                          // To reduce deployment costs this variable is internal and needs to be retrieved via `getStorageAt`
                          address internal singleton;
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 7 of 13: ERC1967Proxy
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.0;
                          import "@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol";
                          import "@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol";
                          import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
                          import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
                          import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";
                          // Kept for backwards compatibility with older versions of Hardhat and Truffle plugins.
                          contract AdminUpgradeabilityProxy is TransparentUpgradeableProxy {
                          constructor(address logic, address admin, bytes memory data) payable TransparentUpgradeableProxy(logic, admin, data) {}
                          }
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.0;
                          import "./IBeacon.sol";
                          import "../Proxy.sol";
                          import "../ERC1967/ERC1967Upgrade.sol";
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 8 of 13: Seaport
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.24;
                          import { Consideration } from "./lib/Consideration.sol";
                          /**
                          * @title Seaport
                          * @custom:version 1.6
                          * @author 0age (0age.eth)
                          * @custom:coauthor d1ll0n (d1ll0n.eth)
                          * @custom:coauthor transmissions11 (t11s.eth)
                          * @custom:coauthor James Wenzel (emo.eth)
                          * @custom:coauthor Daniel Viau (snotrocket.eth)
                          * @custom:contributor Kartik (slokh.eth)
                          * @custom:contributor LeFevre (lefevre.eth)
                          * @custom:contributor Joseph Schiarizzi (CupOJoseph.eth)
                          * @custom:contributor Aspyn Palatnick (stuckinaboot.eth)
                          * @custom:contributor Stephan Min (stephanm.eth)
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 9 of 13: Multicaller
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.4;
                          /**
                          * @title Multicaller
                          * @author vectorized.eth
                          * @notice Contract that allows for efficient aggregation
                          * of multiple calls in a single transaction.
                          */
                          contract Multicaller {
                          // =============================================================
                          // ERRORS
                          // =============================================================
                          /**
                          * @dev The lengths of the input arrays are not the same.
                          */
                          error ArrayLengthsMismatch();
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 10 of 13: UniswapV3Feature
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: Apache-2.0
                          /*
                          Copyright 2023 ZeroEx Intl.
                          Licensed under the Apache License, Version 2.0 (the "License");
                          you may not use this file except in compliance with the License.
                          You may obtain a copy of the License at
                          http://www.apache.org/licenses/LICENSE-2.0
                          Unless required by applicable law or agreed to in writing, software
                          distributed under the License is distributed on an "AS IS" BASIS,
                          WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
                          See the License for the specific language governing permissions and
                          limitations under the License.
                          */
                          pragma solidity >=0.6.5 <0.9;
                          interface IERC20Token {
                          event Transfer(address indexed from, address indexed to, uint256 value);
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 11 of 13: SignedZoneV16
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.13;
                          import {ZoneParameters, Schema} from "../lib/ConsiderationStructs.sol";
                          interface ZoneInterfaceV16 {
                          function authorizeOrder(
                          ZoneParameters calldata zoneParameters
                          ) external returns (bytes4 authorizeOrderMagicValue);
                          function validateOrder(
                          ZoneParameters calldata zoneParameters
                          ) external returns (bytes4 validOrderMagicValue);
                          function getSeaportMetadata()
                          external
                          view
                          returns (
                          string memory name,
                          Schema[] memory schemas // map to Seaport Improvement Proposal IDs
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 12 of 13: GnosisSafe
                          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.7.0 <0.9.0;
                          import "./base/ModuleManager.sol";
                          import "./base/OwnerManager.sol";
                          import "./base/FallbackManager.sol";
                          import "./base/GuardManager.sol";
                          import "./common/EtherPaymentFallback.sol";
                          import "./common/Singleton.sol";
                          import "./common/SignatureDecoder.sol";
                          import "./common/SecuredTokenTransfer.sol";
                          import "./common/StorageAccessible.sol";
                          import "./interfaces/ISignatureValidator.sol";
                          import "./external/GnosisSafeMath.sol";
                          /// @title Gnosis Safe - A multisignature wallet with support for confirmations using signed messages based on ERC191.
                          /// @author Stefan George - <stefan@gnosis.io>
                          /// @author Richard Meissner - <richard@gnosis.io>
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                          File 13 of 13: Conduit
                          1
                          2
                          3
                          4
                          5
                          6
                          7
                          8
                          9
                          10
                          11
                          12
                          13
                          14
                          15
                          16
                          // SPDX-License-Identifier: MIT
                          pragma solidity 0.8.14;
                          import { ConduitInterface } from "../interfaces/ConduitInterface.sol";
                          import { ConduitItemType } from "./lib/ConduitEnums.sol";
                          import { TokenTransferrer } from "../lib/TokenTransferrer.sol";
                          import {
                          ConduitTransfer,
                          ConduitBatch1155Transfer
                          } from "./lib/ConduitStructs.sol";
                          import "./lib/ConduitConstants.sol";
                          /**
                          * @title Conduit
                          * @author 0age
                          * @notice This contract serves as an originator for "proxied" transfers. Each
                          * conduit is deployed and controlled by a "conduit controller" that can
                          * add and remove "channels" or contracts that can instruct the conduit
                          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX