ETH Price: $3,769.76 (+0.70%)

Transaction Decoder

Block:
21779097 at Feb-05-2025 08:27:59 AM +UTC
Transaction Fee:
0.000580140241994439 ETH $2.19
Gas Used:
443,727 Gas / 1.307426057 Gwei

Emitted Events:

4 WETH9.Deposit( dst=FlashWallet, wad=2160565872830612700 )
5 WETH9.Transfer( src=FlashWallet, dst=0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6, wad=1296339523698367621 )
6 InjectiveToken.Transfer( from=0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6, to=FlashWallet, value=243952873087343221429 )
7 InjectiveToken.Approval( owner=0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6, spender=[Receiver] ZeroEx, value=115792089237316195423570985008687907853269984665640563795945800036401507064126 )
8 ZeroEx.0xac75f773e3a92f1a02b12134d65e1f47f8a14eabe4eaf1e24624918e6a8b269f( 0xac75f773e3a92f1a02b12134d65e1f47f8a14eabe4eaf1e24624918e6a8b269f, 8a8d5b7536fced5bebfe5cab8272924491a6ac1d7a709785965446178488332e, 000000000000000000000000ff8ba4d1fc3762f6154cc942ccf30049a2a0cec6, 00000000000000000000000022f9dcf4647084d6c31b2765f6910cd85c178c18, 000000000000000000000000e28b3b32b6c345a34ff64674606124dd5aceca30, 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 00000000000000000000000000000000000000000000000d3986b58e230b5ab5, 00000000000000000000000000000000000000000000000011fd85edb2571c85 )
9 InjectiveToken.Transfer( from=0x6c063a6E8Cd45869b5Eb75291E65a3de298f3AA8, to=FlashWallet, value=102003795711201828071 )
10 WETH9.Transfer( src=FlashWallet, dst=0x6c063a6E8Cd45869b5Eb75291E65a3de298f3AA8, wad=540141468207653150 )
11 0x6c063a6e8cd45869b5eb75291e65a3de298f3aa8.0xc42079f94a6350d7e6235f29174924f928cc2ac818eb64fed8004e115fbcca67( 0xc42079f94a6350d7e6235f29174924f928cc2ac818eb64fed8004e115fbcca67, 0x000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564, 0x00000000000000000000000022f9dcf4647084d6c31b2765f6910cd85c178c18, 000000000000000000000000000000000000000000000000077ef7cdb4f9a11e, fffffffffffffffffffffffffffffffffffffffffffffffa7869b83d6c4d2319, 000000000000000000000000000000000000000dbda47493d0994d55964591db, 00000000000000000000000000000000000000000000007e5464392ef550b25c, 000000000000000000000000000000000000000000000000000000000000ccb9 )
12 FlashWallet.0xe59e71a14fe90157eedc866c4f8c767d3943d6b6b2e8cd64dddcc92ab4c55af8( 0xe59e71a14fe90157eedc866c4f8c767d3943d6b6b2e8cd64dddcc92ab4c55af8, 00000000000000000000000000000012556e6973776170563300000000000000, 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 000000000000000000000000e28b3b32b6c345a34ff64674606124dd5aceca30, 000000000000000000000000000000000000000000000000077ef7cdb4f9a11e, 000000000000000000000000000000000000000000000005879647c293b2dce7 )
13 WETH9.Transfer( src=FlashWallet, dst=UniswapV2Pair, wad=324084880924591929 )
14 InjectiveToken.Transfer( from=UniswapV2Pair, to=FlashWallet, value=48973136482581014298 )
15 UniswapV2Pair.Sync( reserve0=104007452317251478981, reserve1=15714952903152950755778 )
16 UniswapV2Pair.Swap( sender=UniswapV2Router02, amount0In=324084880924591929, amount1In=0, amount0Out=0, amount1Out=48973136482581014298, to=FlashWallet )
17 FlashWallet.0xe59e71a14fe90157eedc866c4f8c767d3943d6b6b2e8cd64dddcc92ab4c55af8( 0xe59e71a14fe90157eedc866c4f8c767d3943d6b6b2e8cd64dddcc92ab4c55af8, 0000000000000000000000000000000253757368695377617000000000000000, 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 000000000000000000000000e28b3b32b6c345a34ff64674606124dd5aceca30, 000000000000000000000000000000000000000000000000047f617b6c95c739, 000000000000000000000000000000000000000000000002a7a38828fcf6e71a )
18 InjectiveToken.Transfer( from=FlashWallet, to=0x382fFCe2287252F930E1C8DC9328dac5BF282bA1, value=3949297999351368225 )
19 InjectiveToken.Transfer( from=FlashWallet, to=0xaD01C20d5886137e056775af56915de824c8fCe5, value=394929799935136822 )
20 InjectiveToken.Transfer( from=FlashWallet, to=[Sender] 0xddbebf284a0b6a68c063626ac9475939c731c758, value=390585577481839558751 )
21 ZeroEx.0x0f6672f78a59ba8e5e5b5d38df3ebc67f3c792e2c9259b8d97d7f00dd78ba1b3( 0x0f6672f78a59ba8e5e5b5d38df3ebc67f3c792e2c9259b8d97d7f00dd78ba1b3, 0x000000000000000000000000ddbebf284a0b6a68c063626ac9475939c731c758, 000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee, 000000000000000000000000e28b3b32b6c345a34ff64674606124dd5aceca30, 0000000000000000000000000000000000000000000000001dfbdf36d3e684dc, 0000000000000000000000000000000000000000000000152c76b94f03dbc05f )

Account State Difference:

  Address   Before After State Difference Code
0x6c063a6E...e298f3AA8
(Uniswap V3: INJ 2)
(beaverbuild)
5.147941689175732506 Eth5.147986061875732506 Eth0.0000443727
0xC02aaA39...83C756Cc2 2,781,086.221318698859284786 Eth2,781,088.381884571689897486 Eth2.1605658728306127
0xDDBebf28...9C731c758
2.177178550472611873 Eth
Nonce: 48
0.016032537400004734 Eth
Nonce: 49
2.161146013072607139
0xDef1C0de...027b25EfF
(0x: Exchange Proxy)
0xe28b3B32...d5Aceca30
0xFb3cD0B8...7931E2820

Execution Trace

ETH 2.1605658728306127 ZeroEx.415565b0( )
  • ETH 2.1605658728306127 TransformERC20Feature.transformERC20( inputToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, outputToken=0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30, inputTokenAmount=2160565872830612700, minOutputTokenAmount=390585572135850317473, transformations= ) => ( outputTokenAmount=390585577481839558751 )
    • InjectiveToken.balanceOf( account=0xDDBebf284a0b6a68c063626aC9475939C731c758 ) => ( 0 )
    • ETH 2.1605658728306127 FlashWallet.CALL( )
    • FlashWallet.executeDelegateCall( target=0xb2bc06a4EfB20FC6553a69Dbfa49B7bE938034A7, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C75800000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000040000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE0000000000000000000000000000000000000000000000001DFBDF36D3E684DC ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
      • WethTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:taker, type:address, order:2, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:data, type:bytes, order:3, indexed:false, value:0x000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE0000000000000000000000000000000000000000000000001DFBDF36D3E684DC, valueString:0x000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE0000000000000000000000000000000000000000000000001DFBDF36D3E684DC}] ) => ( success=System.Byte[] )
        • ETH 2.1605658728306127 WETH9.CALL( )
        • FlashWallet.executeDelegateCall( target=0x2Fd08C1F9FC8406C1D7E3A799A13883a7E7949f0, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000006A000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000001DFBDF36D3E684DC000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004C00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001A000000000000000000000000000000012556E6973776170563300000000000000000000000000000000000000000000000000000000000000077EF7CDB4F9A11E0000000000000000000000000000000000000000000000055D1E926842772C6C000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA300000000000000000000000000000000000000000000000000000000000000000000000000253757368695377617000000000000000000000000000000000000000000000000000000000000000047F617B6C95C73B00000000000000000000000000000000000000000000000337AC1004759E8908000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A0000000000000000000000000D9E1CE17F2641F24AE83637AB66A2CCA9C378B9F00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC200000000000000000000000000000000000000000000000D3F2B334C3D8E5BA0000000000000000000000000000000000000000000000000120532F3A3B44519000000000000000000000000FF8BA4D1FC3762F6154CC942CCF30049A2A0CEC60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C7580000000067A3214E000000000000000000000000000000000000000067A320F40000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001C2F52E04D4B611505EF1632328DE00C295637946D31BFF615CBBC76C62B88BF5C3647EDBD478E26EE52419C8C8065F28686F969AD3812D54A17B5C7CF27B3D94200000000000000000000000000000000000000000000000011FD85EDB2571C85 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
          • FillQuoteTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:recipient, type:address, order:2, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000001DFBDF36D3E684DC000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004C00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001A000000000000000000000000000000012556E6973776170563300000000000000000000000000000000000000000000000000000000000000077EF7CDB4F9A11E0000000000000000000000000000000000000000000000055D1E926842772C6C000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA300000000000000000000000000000000000000000000000000000000000000000000000000253757368695377617000000000000000000000000000000000000000000000000000000000000000047F617B6C95C73B00000000000000000000000000000000000000000000000337AC1004759E8908000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A0000000000000000000000000D9E1CE17F2641F24AE83637AB66A2CCA9C378B9F00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC200000000000000000000000000000000000000000000000D3F2B334C3D8E5BA0000000000000000000000000000000000000000000000000120532F3A3B44519000000000000000000000000FF8BA4D1FC3762F6154CC942CCF30049A2A0CEC60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C7580000000067A3214E000000000000000000000000000000000000000067A320F40000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001C2F52E04D4B611505EF1632328DE00C295637946D31BFF615CBBC76C62B88BF5C3647EDBD478E26EE52419C8C8065F28686F969AD3812D54A17B5C7CF27B3D94200000000000000000000000000000000000000000000000011FD85EDB2571C85, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000580000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000001DFBDF36D3E684DC000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004C00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001A000000000000000000000000000000012556E6973776170563300000000000000000000000000000000000000000000000000000000000000077EF7CDB4F9A11E0000000000000000000000000000000000000000000000055D1E926842772C6C000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000C0000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA300000000000000000000000000000000000000000000000000000000000000000000000000253757368695377617000000000000000000000000000000000000000000000000000000000000000047F617B6C95C73B00000000000000000000000000000000000000000000000337AC1004759E8908000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000A0000000000000000000000000D9E1CE17F2641F24AE83637AB66A2CCA9C378B9F00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC200000000000000000000000000000000000000000000000D3F2B334C3D8E5BA0000000000000000000000000000000000000000000000000120532F3A3B44519000000000000000000000000FF8BA4D1FC3762F6154CC942CCF30049A2A0CEC60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C7580000000067A3214E000000000000000000000000000000000000000067A320F40000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001C2F52E04D4B611505EF1632328DE00C295637946D31BFF615CBBC76C62B88BF5C3647EDBD478E26EE52419C8C8065F28686F969AD3812D54A17B5C7CF27B3D94200000000000000000000000000000000000000000000000011FD85EDB2571C85}] ) => ( magicBytes=System.Byte[] )
            • WETH9.balanceOf( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18 ) => ( 2160565872830612700 )
            • WETH9.allowance( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18, 0xDef1C0ded9bec7F1a1670819833240f027b25EfF ) => ( 115792089237316195423570985008687907853269984665640564039457584007913129639935 )
            • ZeroEx.dac748d4( )
              • OtcOrdersFeature.fillOtcOrder( order=[{name:makerToken, type:address, order:1, indexed:false, value:0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30, valueString:0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30}, {name:takerToken, type:address, order:2, indexed:false, value:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, valueString:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2}, {name:makerAmount, type:uint128, order:3, indexed:false, value:244359461209155460000, valueString:244359461209155460000}, {name:takerAmount, type:uint128, order:4, indexed:false, value:1298500089571198233, valueString:1298500089571198233}, {name:maker, type:address, order:5, indexed:false, value:0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6, valueString:0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6}, {name:taker, type:address, order:6, indexed:false, value:0x0000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000}, {name:txOrigin, type:address, order:7, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:expiryAndNonce, type:uint256, order:8, indexed:false, value:10914273871141625282943564309547888830488105001463646338985482199284, valueString:10914273871141625282943564309547888830488105001463646338985482199284}], makerSignature=[{name:signatureType, type:uint8, order:1, indexed:false, value:3, valueString:3}, {name:v, type:uint8, order:2, indexed:false, value:28, valueString:28}, {name:r, type:bytes32, order:3, indexed:false, value:2F52E04D4B611505EF1632328DE00C295637946D31BFF615CBBC76C62B88BF5C, valueString:2F52E04D4B611505EF1632328DE00C295637946D31BFF615CBBC76C62B88BF5C}, {name:s, type:bytes32, order:4, indexed:false, value:3647EDBD478E26EE52419C8C8065F28686F969AD3812D54A17B5C7CF27B3D942, valueString:3647EDBD478E26EE52419C8C8065F28686F969AD3812D54A17B5C7CF27B3D942}], takerTokenFillAmount=1296339523698367621 ) => ( takerTokenFilledAmount=1296339523698367621, makerTokenFilledAmount=243952873087343221429 )
                • Null: 0x000...001.98457637( )
                • WETH9.transferFrom( src=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, dst=0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6, wad=1296339523698367621 ) => ( True )
                • InjectiveToken.transferFrom( sender=0xff8Ba4D1fC3762f6154cc942CCF30049A2A0cEC6, recipient=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, amount=243952873087343221429 ) => ( True )
                • EthereumBridgeAdapter.trade( order=[{name:source, type:bytes32, order:1, indexed:false, value:00000000000000000000000000000012556E6973776170563300000000000000, valueString:00000000000000000000000000000012556E6973776170563300000000000000}, {name:takerTokenAmount, type:uint256, order:2, indexed:false, value:540141468207653150, valueString:540141468207653150}, {name:makerTokenAmount, type:uint256, order:3, indexed:false, value:98943681839865736300, valueString:98943681839865736300}, {name:bridgeData, type:bytes, order:4, indexed:false, value:0x000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000000000000000000000, valueString:0x000000000000000000000000E592427A0AECE92DE3EDEE1F18E0157C0586156400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002BC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000000000000000000000}], sellToken=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, buyToken=0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30, sellAmount=540141468207653150 ) => ( boughtAmount=102003795711201828071 )
                  • WETH9.allowance( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18, 0xE592427A0AEce92De3Edee1F18E0157C05861564 ) => ( 115792089237316195423570985008687907853269984665640564039457584007913129639935 )
                  • SwapRouter.exactInput( params=[{name:path, type:bytes, order:1, indexed:false, value:0xC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA30, valueString:0xC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000BB8E28B3B32B6C345A34FF64674606124DD5ACECA30}, {name:recipient, type:address, order:2, indexed:false, value:0x22F9dCF4647084d6C31b2765F6910cd85C178C18, valueString:0x22F9dCF4647084d6C31b2765F6910cd85C178C18}, {name:deadline, type:uint256, order:3, indexed:false, value:1738744079, valueString:1738744079}, {name:amountIn, type:uint256, order:4, indexed:false, value:540141468207653150, valueString:540141468207653150}, {name:amountOutMinimum, type:uint256, order:5, indexed:false, value:1, valueString:1}] ) => ( amountOut=102003795711201828071 )
                    • Uniswap V3: INJ 2.128acb08( )
                    • EthereumBridgeAdapter.trade( order=[{name:source, type:bytes32, order:1, indexed:false, value:0000000000000000000000000000000253757368695377617000000000000000, valueString:0000000000000000000000000000000253757368695377617000000000000000}, {name:takerTokenAmount, type:uint256, order:2, indexed:false, value:324084880924591931, valueString:324084880924591931}, {name:makerTokenAmount, type:uint256, order:3, indexed:false, value:59351831200548161800, valueString:59351831200548161800}, {name:bridgeData, type:bytes, order:4, indexed:false, value:0x000000000000000000000000D9E1CE17F2641F24AE83637AB66A2CCA9C378B9F00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30, valueString:0x000000000000000000000000D9E1CE17F2641F24AE83637AB66A2CCA9C378B9F00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30}], sellToken=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, buyToken=0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30, sellAmount=324084880924591929 ) => ( boughtAmount=48973136482581014298 )
                      • WETH9.allowance( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18, 0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F ) => ( 115792089237316195423570985008687907853269984665640564039457584007913129639935 )
                      • UniswapV2Router02.swapExactTokensForTokens( amountIn=324084880924591929, amountOutMin=1, path=[0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, 0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30], to=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, deadline=1738744079 ) => ( amounts=[324084880924591929, 48973136482581014298] )
                        • UniswapV2Pair.STATICCALL( )
                        • WETH9.transferFrom( src=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, dst=0xFb3cD0B8A5371fe93ef92E3988D30Df7931E2820, wad=324084880924591929 ) => ( True )
                        • UniswapV2Pair.swap( amount0Out=0, amount1Out=48973136482581014298, to=0x22F9dCF4647084d6C31b2765F6910cd85C178C18, data=0x )
                        • FlashWallet.executeDelegateCall( target=0x8146cbBE327364b13d0699f2CED39C637f92501a, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000036CEB99B2B7FCA21000000000000000000000000382FFCE2287252F930E1C8DC9328DAC5BF282BA1 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
                          • AffiliateFeeTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:recipient, type:address, order:2, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000036CEB99B2B7FCA21000000000000000000000000382FFCE2287252F930E1C8DC9328DAC5BF282BA1, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA3000000000000000000000000000000000000000000000000036CEB99B2B7FCA21000000000000000000000000382FFCE2287252F930E1C8DC9328DAC5BF282BA1}] ) => ( success=System.Byte[] )
                            • InjectiveToken.transfer( recipient=0x382fFCe2287252F930E1C8DC9328dac5BF282bA1, amount=3949297999351368225 ) => ( True )
                            • FlashWallet.executeDelegateCall( target=0x8146cbBE327364b13d0699f2CED39C637f92501a, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000A000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000000000000000000000000000057B128F84599436000000000000000000000000AD01C20D5886137E056775AF56915DE824C8FCE5 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
                              • AffiliateFeeTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:recipient, type:address, order:2, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:data, type:bytes, order:3, indexed:false, value:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000000000000000000000000000057B128F84599436000000000000000000000000AD01C20D5886137E056775AF56915DE824C8FCE5, valueString:0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000E28B3B32B6C345A34FF64674606124DD5ACECA30000000000000000000000000000000000000000000000000057B128F84599436000000000000000000000000AD01C20D5886137E056775AF56915DE824C8FCE5}] ) => ( success=System.Byte[] )
                                • InjectiveToken.transfer( recipient=0xaD01C20d5886137e056775af56915de824c8fCe5, amount=394929799935136822 ) => ( True )
                                • FlashWallet.executeDelegateCall( target=0xEa500D073652336A58846ada15C25F2C6D2d241f, callData=0x832B24BB0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C758000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000E00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000A00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE0000000000000000000000000000000000000000000000000000000000000000 ) => ( resultData=0x13C9929E00000000000000000000000000000000000000000000000000000000 )
                                  • PayTakerTransformer.transform( context=[{name:sender, type:address, order:1, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:recipient, type:address, order:2, indexed:false, value:0xDDBebf284a0b6a68c063626aC9475939C731c758, valueString:0xDDBebf284a0b6a68c063626aC9475939C731c758}, {name:data, type:bytes, order:3, indexed:false, value:0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000A00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE0000000000000000000000000000000000000000000000000000000000000000, valueString:0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000A00000000000000000000000000000000000000000000000000000000000000002000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2000000000000000000000000EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE0000000000000000000000000000000000000000000000000000000000000000}] ) => ( success=System.Byte[] )
                                    • WETH9.balanceOf( 0x22F9dCF4647084d6C31b2765F6910cd85C178C18 ) => ( 0 )
                                    • InjectiveToken.balanceOf( account=0x22F9dCF4647084d6C31b2765F6910cd85C178C18 ) => ( 390585577481839558751 )
                                    • FlashWallet.executeCall( target=0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30, callData=0xA9059CBB000000000000000000000000DDBEBF284A0B6A68C063626AC9475939C731C7580000000000000000000000000000000000000000000000152C76B94F03DBC05F, value=0 ) => ( resultData=0x0000000000000000000000000000000000000000000000000000000000000001 )
                                      • InjectiveToken.transfer( recipient=0xDDBebf284a0b6a68c063626aC9475939C731c758, amount=390585577481839558751 ) => ( True )
                                      • InjectiveToken.balanceOf( account=0xDDBebf284a0b6a68c063626aC9475939C731c758 ) => ( 390585577481839558751 )
                                        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: 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 3 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 4 of 14: InjectiveToken
                                        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;
                                        //
                                        /*
                                        * @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 GSN 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.
                                        */
                                        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                                        File 5 of 14: UniswapV2Pair
                                        1
                                        2
                                        3
                                        4
                                        5
                                        6
                                        7
                                        8
                                        9
                                        10
                                        11
                                        12
                                        13
                                        14
                                        15
                                        16
                                        // File: contracts/uniswapv2/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 migrator() 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 6 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 7 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 8 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 9 of 14: OtcOrdersFeature
                                        1
                                        2
                                        3
                                        4
                                        5
                                        6
                                        7
                                        8
                                        9
                                        10
                                        11
                                        12
                                        13
                                        14
                                        15
                                        16
                                        // SPDX-License-Identifier: Apache-2.0
                                        /*
                                        Copyright 2021 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/IEtherTokenV06.sol";
                                        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                                        File 10 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 11 of 14: SwapRouter
                                        1
                                        2
                                        3
                                        4
                                        5
                                        6
                                        7
                                        8
                                        9
                                        10
                                        11
                                        12
                                        13
                                        14
                                        15
                                        16
                                        // SPDX-License-Identifier: GPL-2.0-or-later
                                        pragma solidity =0.7.6;
                                        pragma abicoder v2;
                                        import '@uniswap/v3-core/contracts/libraries/SafeCast.sol';
                                        import '@uniswap/v3-core/contracts/libraries/TickMath.sol';
                                        import '@uniswap/v3-core/contracts/interfaces/IUniswapV3Pool.sol';
                                        import './interfaces/ISwapRouter.sol';
                                        import './base/PeripheryImmutableState.sol';
                                        import './base/PeripheryValidation.sol';
                                        import './base/PeripheryPaymentsWithFee.sol';
                                        import './base/Multicall.sol';
                                        import './base/SelfPermit.sol';
                                        import './libraries/Path.sol';
                                        import './libraries/PoolAddress.sol';
                                        import './libraries/CallbackValidation.sol';
                                        import './interfaces/external/IWETH9.sol';
                                        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                                        File 12 of 14: UniswapV2Router02
                                        1
                                        2
                                        3
                                        4
                                        5
                                        6
                                        7
                                        8
                                        9
                                        10
                                        11
                                        12
                                        13
                                        14
                                        15
                                        16
                                        // File: contracts/uniswapv2/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 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: 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