ETH Price: $3,160.89 (+6.29%)

Transaction Decoder

Block:
20754545 at Sep-15-2024 07:33:11 AM +UTC
Transaction Fee:
0.0004101604 ETH $1.30
Gas Used:
315,508 Gas / 1.3 Gwei

Emitted Events:

290 Ondo.Approval( owner=[Sender] 0x00e298b0e01121b7d5ec6b2722553a33cf796e2c, spender=[Receiver] ApprovalProxy, amount=0 )
291 Ondo.Transfer( from=[Sender] 0x00e298b0e01121b7d5ec6b2722553a33cf796e2c, to=ERC20Router, amount=36096840000000000000 )
292 Ondo.Approval( owner=ERC20Router, spender=ZeroEx, amount=36096840000000000000 )
293 Ondo.Approval( owner=ERC20Router, spender=ZeroEx, amount=0 )
294 Ondo.Transfer( from=ERC20Router, to=FlashWallet, amount=36096840000000000000 )
295 WETH9.Transfer( src=UniswapV3Pool, dst=FlashWallet, wad=9594610509559388 )
296 Ondo.Transfer( from=FlashWallet, to=UniswapV3Pool, amount=36096840000000000000 )
297 UniswapV3Pool.Swap( sender=0xE592427A...C05861564, recipient=FlashWallet, amount0=-9594610509559388, amount1=36096840000000000000, sqrtPriceX96=4852307757916773644926621748814, liquidity=494973939646560032405908, tick=82301 )
298 FlashWallet.0xe59e71a14fe90157eedc866c4f8c767d3943d6b6b2e8cd64dddcc92ab4c55af8( 0xe59e71a14fe90157eedc866c4f8c767d3943d6b6b2e8cd64dddcc92ab4c55af8, 00000000000000000000000000000012556e6973776170563300000000000000, 000000000000000000000000faba6f8e4a5e8ab82f62fe7c39859fa577269be3, 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 000000000000000000000000000000000000000000000001f4f1bcbb121c8000, 0000000000000000000000000000000000000000000000000022163f572e365c )
299 WETH9.Withdrawal( src=FlashWallet, wad=9594610509559388 )
300 ZeroEx.0x0f6672f78a59ba8e5e5b5d38df3ebc67f3c792e2c9259b8d97d7f00dd78ba1b3( 0x0f6672f78a59ba8e5e5b5d38df3ebc67f3c792e2c9259b8d97d7f00dd78ba1b3, 0x000000000000000000000000a1bea5fe917450041748dbbbe7e9ac57a4bbebab, 000000000000000000000000faba6f8e4a5e8ab82f62fe7c39859fa577269be3, 000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee, 000000000000000000000000000000000000000000000001f4f1bcbb121c8000, 00000000000000000000000000000000000000000000000000220949f8676d75 )

Account State Difference:

  Address   Before After State Difference Code
0x00e298b0...3cF796E2C
0.000877727812997313 Eth
Nonce: 16
0.000467567412997313 Eth
Nonce: 17
0.0004101604
(Titan Builder)
11.990968951990950237 Eth11.990973104638149985 Eth0.000004152647199748
0x7b1E5D98...CFaBc3cC7
(Uniswap V3: ONDO)
0xaD01C20d...824c8fCe5 0.415515817233400176 Eth0.415530065230006871 Eth0.000014247996606695
0xC02aaA39...83C756Cc2 2,932,661.811275847497997008 Eth2,932,661.80168123698843762 Eth0.009594610509559388
0xf70da978...8dfA3dbEF
(Relay: Solver)
498.309825053423494835 Eth498.319405415936447528 Eth0.009580362512952693
0xfAbA6f8e...577269BE3

Execution Trace

ApprovalProxy.transferAndMulticall( tokens=[0xfAbA6f8e4a5E8Ab82F62fe7C39859FA577269BE3], amounts=[36096840000000000000], targets=[0xfAbA6f8e4a5E8Ab82F62fe7C39859FA577269BE3, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF], datas=[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], values=[0, 0], refundTo=0xf70da97812CB96acDF810712Aa562db8dfA3dbEF ) => ( 0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000220949F8676D75 )
  • Ondo.transferFrom( src=0x00e298b0e01121b7D5Ec6b2722553A33cF796E2C, dst=0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, rawAmount=36096840000000000000 ) => ( True )
  • ERC20Router.delegatecallMulticall( targets=[0xfAbA6f8e4a5E8Ab82F62fe7C39859FA577269BE3, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF], datas=[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], values=[0, 0], refundTo=0xf70da97812CB96acDF810712Aa562db8dfA3dbEF ) => ( 0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000220949F8676D75 )
    • Multicaller.aggregate( targets=[0xfAbA6f8e4a5E8Ab82F62fe7C39859FA577269BE3, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF], data=[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], values=[0, 0], refundTo=0xf70da97812CB96acDF810712Aa562db8dfA3dbEF ) => ( [AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE=, AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIJSfhnbXU=] )
      • Ondo.approve( spender=0xDef1C0ded9bec7F1a1670819833240f027b25EfF, rawAmount=36096840000000000000 ) => ( True )
      • ZeroEx.415565b0( )
        • TransformERC20Feature.transformERC20( inputToken=0xfAbA6f8e4a5E8Ab82F62fe7C39859FA577269BE3, outputToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, inputTokenAmount=36096840000000000000, minOutputTokenAmount=9484416407857079, transformations= ) => ( outputTokenAmount=9580362512952693 )
          • Ondo.transferFrom( src=0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, dst=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, rawAmount=36096840000000000000 ) => ( True )
          • FlashWallet.executeDelegateCall( target=0x2Fd08C1F9FC8406C1D7E3A799A13883a7E7949f0, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FABA6F8E4A5E8AB82F62FE7C39859FA577269BE3000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC200000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002E0000000000000000000000000000000000000000000000001F4F1BCBB121C8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000012556E6973776170563300000000000000000000000000000000000000000000000000000000000001F4F1BCBB121C80000000000000000000000000000000000000000000000000000021BEFC25AB309E000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BFABA6F8E4A5E8AB82F62FE7C39859FA577269BE3000BB8C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
            • FillQuoteTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:recipient, type:address, order:2, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FABA6F8E4A5E8AB82F62FE7C39859FA577269BE3000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC200000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002E0000000000000000000000000000000000000000000000001F4F1BCBB121C8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000012556E6973776170563300000000000000000000000000000000000000000000000000000000000001F4F1BCBB121C80000000000000000000000000000000000000000000000000000021BEFC25AB309E000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BFABA6F8E4A5E8AB82F62FE7C39859FA577269BE3000BB8C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FABA6F8E4A5E8AB82F62FE7C39859FA577269BE3000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC200000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000320000000000000000000000000000000000000000000000000000000000000032000000000000000000000000000000000000000000000000000000000000002E0000000000000000000000000000000000000000000000001F4F1BCBB121C8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000012556E6973776170563300000000000000000000000000000000000000000000000000000000000001F4F1BCBB121C80000000000000000000000000000000000000000000000000000021BEFC25AB309E000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BFABA6F8E4A5E8AB82F62FE7C39859FA577269BE3000BB8C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000}] ) => ( magicBytes=System.Byte[] )
            • FlashWallet.executeDelegateCall( target=0xb2bc06a4EfB20FC6553a69Dbfa49B7bE938034A7, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
              • WethTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:taker, type:address, order:2, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:data, type:bytes, order:3, indexed:false, value:0x000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF, valueString:0x000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}] ) => ( success=System.Byte[] )
              • FlashWallet.executeDelegateCall( target=0x8146cbBE327364b13d0699f2CED39C637f92501a, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000000CF55EC6C8E7000000000000000000000000AD01C20D5886137E056775AF56915DE824C8FCE5 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
                • AffiliateFeeTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:recipient, type:address, order:2, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000000CF55EC6C8E7000000000000000000000000AD01C20D5886137E056775AF56915DE824C8FCE5, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000000CF55EC6C8E7000000000000000000000000AD01C20D5886137E056775AF56915DE824C8FCE5}] ) => ( success=System.Byte[] )
                • FlashWallet.executeDelegateCall( target=0xEa500D073652336A58846ada15C25F2C6D2d241f, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB000000000000000000000000A1BEA5FE917450041748DBBBE7E9AC57A4BBEBAB000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000C00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000FABA6F8E4A5E8AB82F62FE7C39859FA577269BE30000000000000000000000000000000000000000000000000000000000000000 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
                  • PayTakerTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:recipient, type:address, order:2, indexed:false, value:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, valueString:0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB}, {name:data, type:bytes, order:3, indexed:false, value:0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000FABA6F8E4A5E8AB82F62FE7C39859FA577269BE30000000000000000000000000000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001000000000000000000000000FABA6F8E4A5E8AB82F62FE7C39859FA577269BE30000000000000000000000000000000000000000000000000000000000000000}] ) => ( success=System.Byte[] )
                  • FlashWallet.executeCall( target=0xA1BEa5fe917450041748Dbbbe7E9AC57A4bBEBaB, callData=0x, value=9580362512952693 ) => ( resultData=0x )
                    • ETH 0.009580362512952693 ERC20Router.CALL( )
                    • ETH 0.009580362512952693 Relay: Solver.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: Ondo
                      1
                      2
                      3
                      4
                      5
                      6
                      7
                      8
                      9
                      10
                      11
                      12
                      13
                      14
                      15
                      16
                      // SPDX-License-Identifier: AGPL-3.0
                      pragma solidity 0.8.3;
                      /*
                      * @dev Provides information about the current execution context, including the
                      * sender of the transaction and its data. While these are generally available
                      * via msg.sender and msg.data, they should not be accessed in such a direct
                      * manner, since when dealing with meta-transactions the account sending and
                      * paying for execution may not be the actual sender (as far as an application
                      * is concerned).
                      *
                      * This contract is only required for intermediate, library-like contracts.
                      */
                      abstract contract Context {
                      function _msgSender() internal view virtual returns (address) {
                      return msg.sender;
                      }
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                      File 3 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 4 of 13: FlashWallet
                      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: UniswapV3Pool
                      1
                      2
                      3
                      4
                      5
                      6
                      7
                      8
                      9
                      10
                      11
                      12
                      13
                      14
                      15
                      16
                      // SPDX-License-Identifier: BUSL-1.1
                      pragma solidity =0.7.6;
                      import './interfaces/IUniswapV3Pool.sol';
                      import './NoDelegateCall.sol';
                      import './libraries/LowGasSafeMath.sol';
                      import './libraries/SafeCast.sol';
                      import './libraries/Tick.sol';
                      import './libraries/TickBitmap.sol';
                      import './libraries/Position.sol';
                      import './libraries/Oracle.sol';
                      import './libraries/FullMath.sol';
                      import './libraries/FixedPoint128.sol';
                      import './libraries/TransferHelper.sol';
                      import './libraries/TickMath.sol';
                      import './libraries/LiquidityMath.sol';
                      import './libraries/SqrtPriceMath.sol';
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                      File 6 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 7 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 8 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 9 of 13: TransformERC20Feature
                      1
                      2
                      3
                      4
                      5
                      6
                      7
                      8
                      9
                      10
                      11
                      12
                      13
                      14
                      15
                      16
                      // SPDX-License-Identifier: Apache-2.0
                      /*
                      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-erc20/contracts/src/v06/IERC20TokenV06.sol";
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                      File 10 of 13: FillQuoteTransformer
                      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;
                      pragma experimental ABIEncoderV2;
                      import "@0x/contracts-utils/contracts/src/v06/errors/LibRichErrorsV06.sol";
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                      File 11 of 13: WethTransformer
                      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/errors/LibRichErrorsV06.sol";
                      import "@0x/contracts-utils/contracts/src/v06/LibSafeMathV06.sol";
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                      File 12 of 13: AffiliateFeeTransformer
                      1
                      2
                      3
                      4
                      5
                      6
                      7
                      8
                      9
                      10
                      11
                      12
                      13
                      14
                      15
                      16
                      // SPDX-License-Identifier: Apache-2.0
                      /*
                      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/errors/LibRichErrorsV06.sol";
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                      File 13 of 13: PayTakerTransformer
                      1
                      2
                      3
                      4
                      5
                      6
                      7
                      8
                      9
                      10
                      11
                      12
                      13
                      14
                      15
                      16
                      // SPDX-License-Identifier: Apache-2.0
                      /*
                      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/errors/LibRichErrorsV06.sol";
                      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX