ETH Price: $2,989.87 (+7.91%)

Transaction Decoder

Block:
21778368 at Feb-05-2025 06:00:47 AM +UTC
Transaction Fee:
0.000925926685922602 ETH $2.77
Gas Used:
565,318 Gas / 1.637886439 Gwei

Account State Difference:

  Address   Before After State Difference Code
(beaverbuild)
17.53974464916384255 Eth17.53980118096384255 Eth0.0000565318
0xde9BEbd6...d1334f914
0.009883562316599319 Eth
Nonce: 141
0.008957635630676717 Eth
Nonce: 142
0.000925926685922602

Execution Trace

ETH 0.005378927513572827 ZeroEx.415565b0( )
  • ETH 0.005378927513572827 TransformERC20Feature.transformERC20( inputToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, outputToken=0xF527d24391C767B86b8e91385e1cE9C54D230A2B, inputTokenAmount=5378927513572827, minOutputTokenAmount=101358859802265188834160, transformations= )
    • TsuzukiInu.balanceOf( account=0xde9BEbd605020B4ccC31BBc83f54569d1334f914 ) => ( 3374223101502532953481232 )
    • ETH 0.005378927513572827 FlashWallet.CALL( )
    • FlashWallet.executeDelegateCall( target=0xb2bc06a4EfB20FC6553a69Dbfa49B7bE938034A7, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DE9BEBD605020B4CCC31BBC83F54569D1334F914000000000000000000000000DE9BEBD605020B4CCC31BBC83F54569D1334F91400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000131C1B27B815DB ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
      • WethTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xde9BEbd605020B4ccC31BBc83f54569d1334f914, valueString:0xde9BEbd605020B4ccC31BBc83f54569d1334f914}, {name:taker, type:address, order:2, indexed:false, value:0xde9BEbd605020B4ccC31BBc83f54569d1334f914, valueString:0xde9BEbd605020B4ccC31BBc83f54569d1334f914}, {name:data, type:bytes, order:3, indexed:false, value:0x000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000131C1B27B815DB, valueString:0x000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE00000000000000000000000000000000000000000000000000131C1B27B815DB}] ) => ( success=System.Byte[] )
        • ETH 0.005378927513572827 WETH9.CALL( )
        • FlashWallet.executeDelegateCall( target=0x2Fd08C1F9FC8406C1D7E3A799A13883a7E7949f0, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DE9BEBD605020B4CCC31BBC83F54569D1334F914000000000000000000000000DE9BEBD605020B4CCC31BBC83F54569D1334F914000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000004C000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000042000000000000000000000000000000000000000000000000000131C1B27B815DB0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000002556E69737761705632000000000000000000000000000000000000000000000000000000000000000012A1CDAD2048830000000000000000000000000000000000000000000012792E59294EF36FBDE0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A0000000000000000000000000F164FC0EC4E93095B804A4795BBE1E041497B92A00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B000000000000000000000000000000025368696261537761700000000000000000000000000000000000000000000000000000000000000000007A4D7A97CD5900000000000000000000000000000000000000000000033A9B80367FB16E4AA3000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000003F7724180AA6B939894B5CA4314783B0B36B32900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
          • FillQuoteTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xde9BEbd605020B4ccC31BBc83f54569d1334f914, valueString:0xde9BEbd605020B4ccC31BBc83f54569d1334f914}, {name:recipient, type:address, order:2, indexed:false, value:0xde9BEbd605020B4ccC31BBc83f54569d1334f914, valueString:0xde9BEbd605020B4ccC31BBc83f54569d1334f914}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000042000000000000000000000000000000000000000000000000000131C1B27B815DB0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000002556E69737761705632000000000000000000000000000000000000000000000000000000000000000012A1CDAD2048830000000000000000000000000000000000000000000012792E59294EF36FBDE0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A0000000000000000000000000F164FC0EC4E93095B804A4795BBE1E041497B92A00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B000000000000000000000000000000025368696261537761700000000000000000000000000000000000000000000000000000000000000000007A4D7A97CD5900000000000000000000000000000000000000000000033A9B80367FB16E4AA3000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000003F7724180AA6B939894B5CA4314783B0B36B32900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000480000000000000000000000000000000000000000000000000000000000000042000000000000000000000000000000000000000000000000000131C1B27B815DB0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000002556E69737761705632000000000000000000000000000000000000000000000000000000000000000012A1CDAD2048830000000000000000000000000000000000000000000012792E59294EF36FBDE0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A0000000000000000000000000F164FC0EC4E93095B804A4795BBE1E041497B92A00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B000000000000000000000000000000025368696261537761700000000000000000000000000000000000000000000000000000000000000000007A4D7A97CD5900000000000000000000000000000000000000000000033A9B80367FB16E4AA3000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000003F7724180AA6B939894B5CA4314783B0B36B32900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000}] ) => ( magicBytes=System.Byte[] )
            • WETH9.balanceOf( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18 ) => ( 5378927513572827 )
            • EthereumBridgeAdapter.trade( order=[{name:source, type:bytes32, order:1, indexed:false, value:00000000000000000000000000000002556E6973776170563200000000000000, valueString:00000000000000000000000000000002556E6973776170563200000000000000}, {name:takerTokenAmount, type:uint256, order:2, indexed:false, value:5244454325733507, valueString:5244454325733507}, {name:makerTokenAmount, type:uint256, order:3, indexed:false, value:87237992470590209900000, valueString:87237992470590209900000}, {name:bridgeData, type:bytes, order:4, indexed:false, value:0x000000000000000000000000F164FC0EC4E93095B804A4795BBE1E041497B92A00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B, valueString:0x000000000000000000000000F164FC0EC4E93095B804A4795BBE1E041497B92A00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B}], sellToken=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, buyToken=0xF527d24391C767B86b8e91385e1cE9C54D230A2B, sellAmount=5244454325733507 ) => ( boughtAmount=89936074711948667845190 )
              • WETH9.allowance( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18, 0xf164fC0Ec4E93095b804a4795bBe1e041497b92a ) => ( 115792089237316195423570985008687907853269984665640564039457584007913129639935 )
              • UniswapV2Router01.swapExactTokensForTokens( amountIn=5244454325733507, amountOutMin=1, path=[0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, 0xF527d24391C767B86b8e91385e1cE9C54D230A2B], to=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, deadline=1738735247 ) => ( amounts=[5244454325733507, 89936074711948667845190] )
                • UniswapV2Pair.STATICCALL( )
                • WETH9.transferFrom( src=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, dst=0x6E6D348260DEccaaa03FaAa7160f81968E9728C3, wad=5244454325733507 ) => ( True )
                • UniswapV2Pair.swap( amount0Out=0, amount1Out=89936074711948667845190, to=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, data=0x )
                • EthereumBridgeAdapter.trade( order=[{name:source, type:bytes32, order:1, indexed:false, value:0000000000000000000000000000000253686962615377617000000000000000, valueString:0000000000000000000000000000000253686962615377617000000000000000}, {name:takerTokenAmount, type:uint256, order:2, indexed:false, value:134473187839321, valueString:134473187839321}, {name:makerTokenAmount, type:uint256, order:3, indexed:false, value:15248215620679052970659, valueString:15248215620679052970659}, {name:bridgeData, type:bytes, order:4, indexed:false, value:0x00000000000000000000000003F7724180AA6B939894B5CA4314783B0B36B32900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B, valueString:0x00000000000000000000000003F7724180AA6B939894B5CA4314783B0B36B32900000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B}], sellToken=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, buyToken=0xF527d24391C767B86b8e91385e1cE9C54D230A2B, sellAmount=134473187839320 ) => ( boughtAmount=15719809918225810454117 )
                  • WETH9.allowance( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18, 0x03f7724180AA6b939894B5Ca4314783B0b36b329 ) => ( 115792089237316195423570985008687907853269984665640564039457584007913129639935 )
                  • UniswapV2Router02.swapExactTokensForTokens( amountIn=134473187839320, amountOutMin=1, path=[0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, 0xF527d24391C767B86b8e91385e1cE9C54D230A2B], to=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, deadline=1738735247 ) => ( amounts=[134473187839320, 15719809918225810454117] )
                    • UniswapV2Pair.STATICCALL( )
                    • WETH9.transferFrom( src=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, dst=0x4fd5c94415485697863f9C19D004F4089A496982, wad=134473187839320 ) => ( True )
                    • UniswapV2Pair.swap( amount0Out=0, amount1Out=15719809918225810454117, to=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, data=0x )
                    • FlashWallet.executeDelegateCall( target=0x8146cbBE327364b13d0699f2CED39C637f92501a, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DE9BEBD605020B4CCC31BBC83F54569D1334F914000000000000000000000000DE9BEBD605020B4CCC31BBC83F54569D1334F914000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B0000000000000000000000000000000000000000000000378ED188A3589EFF80000000000000000000000000382FFCE2287252F930E1C8DC9328DAC5BF282BA1 )
                      • AffiliateFeeTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xde9BEbd605020B4ccC31BBc83f54569d1334f914, valueString:0xde9BEbd605020B4ccC31BBc83f54569d1334f914}, {name:recipient, type:address, order:2, indexed:false, value:0xde9BEbd605020B4ccC31BBc83f54569d1334f914, valueString:0xde9BEbd605020B4ccC31BBc83f54569d1334f914}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B0000000000000000000000000000000000000000000000378ED188A3589EFF80000000000000000000000000382FFCE2287252F930E1C8DC9328DAC5BF282BA1, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000F527D24391C767B86B8E91385E1CE9C54D230A2B0000000000000000000000000000000000000000000000378ED188A3589EFF80000000000000000000000000382FFCE2287252F930E1C8DC9328DAC5BF282BA1}] )
                        • TsuzukiInu.transfer( recipient=0x382fFCe2287252F930E1C8DC9328dac5BF282bA1, amount=1024862080912691494784 )
                          • UniswapV2Router02.STATICCALL( )
                            transformERC20[TransformERC20Feature (ln:182)]
                            File 1 of 14: 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 2 of 14: 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 3 of 14: TsuzukiInu
                            1
                            2
                            3
                            4
                            5
                            6
                            7
                            8
                            9
                            10
                            11
                            12
                            13
                            14
                            15
                            16
                            /**
                            */
                            pragma solidity ^0.8.4;
                            // SPDX-License-Identifier: UNLICENSED
                            abstract contract Context {
                            function _msgSender() internal view virtual returns (address) {
                            return msg.sender;
                            }
                            }
                            interface IERC20 {
                            function totalSupply() external view returns (uint256);
                            function balanceOf(address account) external view returns (uint256);
                            function transfer(address recipient, uint256 amount) external returns (bool);
                            function allowance(address owner, address spender) external view returns (uint256);
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                            File 4 of 14: 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 14: 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 6 of 14: 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 14: 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 8 of 14: EthereumBridgeAdapter
                            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 "./AbstractBridgeAdapter.sol";
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                            File 9 of 14: UniswapV2Router01
                            1
                            2
                            3
                            4
                            5
                            6
                            7
                            8
                            9
                            10
                            11
                            12
                            13
                            14
                            15
                            16
                            // File: @uniswap/v2-core/contracts/interfaces/IUniswapV2Factory.sol
                            pragma solidity >=0.5.0;
                            interface IUniswapV2Factory {
                            event PairCreated(address indexed token0, address indexed token1, address pair, uint);
                            function feeTo() external view returns (address);
                            function feeToSetter() external view returns (address);
                            function getPair(address tokenA, address tokenB) external view returns (address pair);
                            function allPairs(uint) external view returns (address pair);
                            function allPairsLength() external view returns (uint);
                            function createPair(address tokenA, address tokenB) external returns (address pair);
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                            File 10 of 14: UniswapV2Pair
                            1
                            2
                            3
                            4
                            5
                            6
                            7
                            8
                            9
                            10
                            11
                            12
                            13
                            14
                            15
                            16
                            // File: contracts/interfaces/IUniswapV2Pair.sol
                            pragma solidity >=0.5.0;
                            interface IUniswapV2Pair {
                            event Approval(address indexed owner, address indexed spender, uint value);
                            event Transfer(address indexed from, address indexed to, uint value);
                            function name() external pure returns (string memory);
                            function symbol() external pure returns (string memory);
                            function decimals() external pure returns (uint8);
                            function totalSupply() external view returns (uint);
                            function balanceOf(address owner) external view returns (uint);
                            function allowance(address owner, address spender) external view returns (uint);
                            function approve(address spender, uint value) external returns (bool);
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                            File 11 of 14: UniswapV2Router02
                            1
                            2
                            3
                            4
                            5
                            6
                            7
                            8
                            9
                            10
                            11
                            12
                            13
                            14
                            15
                            16
                            // SPDX-License-Identifier: MIT
                            pragma solidity =0.6.12;
                            import './libraries/UniswapV2Library.sol';
                            import './libraries/SafeMath.sol';
                            import './libraries/TransferHelper.sol';
                            import './interfaces/IUniswapV2Router02.sol';
                            import './interfaces/IUniswapV2Factory.sol';
                            import './interfaces/IERC20.sol';
                            import './interfaces/IWETH.sol';
                            contract UniswapV2Router02 is IUniswapV2Router02 {
                            using SafeMathUniswap for uint;
                            address public immutable override factory;
                            address public immutable override WETH;
                            modifier ensure(uint deadline) {
                            require(deadline >= block.timestamp, 'UniswapV2Router: EXPIRED');
                            _;
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                            File 12 of 14: UniswapV2Pair
                            1
                            2
                            3
                            4
                            5
                            6
                            7
                            8
                            9
                            10
                            11
                            12
                            13
                            14
                            15
                            16
                            // SPDX-License-Identifier: MIT
                            pragma solidity =0.6.12;
                            import './UniswapV2ERC20.sol';
                            import './libraries/Math.sol';
                            import './libraries/UQ112x112.sol';
                            import './interfaces/IERC20.sol';
                            import './interfaces/IUniswapV2Factory.sol';
                            import './interfaces/IUniswapV2Callee.sol';
                            interface IMigrator {
                            // Return the desired amount of liquidity token that the migrator wants.
                            function desiredLiquidity() external view returns (uint256);
                            }
                            contract UniswapV2Pair is UniswapV2ERC20 {
                            using SafeMathUniswap for uint;
                            using UQ112x112 for uint224;
                            uint public constant MINIMUM_LIQUIDITY = 10**3;
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                            File 13 of 14: 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 14 of 14: UniswapV2Router02
                            1
                            2
                            3
                            4
                            5
                            6
                            7
                            8
                            9
                            10
                            11
                            12
                            13
                            14
                            15
                            16
                            pragma solidity =0.6.6;
                            interface IUniswapV2Factory {
                            event PairCreated(address indexed token0, address indexed token1, address pair, uint);
                            function feeTo() external view returns (address);
                            function feeToSetter() external view returns (address);
                            function getPair(address tokenA, address tokenB) external view returns (address pair);
                            function allPairs(uint) external view returns (address pair);
                            function allPairsLength() external view returns (uint);
                            function createPair(address tokenA, address tokenB) external returns (address pair);
                            function setFeeTo(address) external;
                            function setFeeToSetter(address) external;
                            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX