Transaction Hash:
Block:
12378450 at May-06-2021 03:49:50 AM +UTC
Transaction Fee:
0.195399405 ETH
$524.60
Gas Used:
5,281,065 Gas / 37 Gwei
Emitted Events:
13 |
UniswapV3Factory.PoolCreated( token0=ParsiqToken, token1=WETH9, fee=10000, tickSpacing=200, pool=0xa34f0d0314db32f41e1194816d56d55d1f7ca7b5 )
|
14 |
0xa34f0d0314db32f41e1194816d56d55d1f7ca7b5.0x98636036cb66a9c19a37435efc1e90142190214e8abeb821bdba3f2990dd4c95( 0x98636036cb66a9c19a37435efc1e90142190214e8abeb821bdba3f2990dd4c95, 000000000000000000000000000000000000000005ef5ba06ed435ef26859e34, fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed9e6 )
|
15 |
UniswapV2Pair.Transfer( from=[Sender] 0xf23dc120e1f216b7275ba71a71fef2354e349f78, to=UniswapV2Pair, value=420828641768447382382 )
|
16 |
UniswapV2Pair.Transfer( from=UniswapV2Pair, to=0x0000000000000000000000000000000000000000, value=420828641768447382382 )
|
17 |
ParsiqToken.Transfer( from=UniswapV2Pair, to=[Receiver] V3Migrator, value=30271666618802496311723 )
|
18 |
WETH9.Transfer( src=UniswapV2Pair, dst=[Receiver] V3Migrator, wad=16270851512648992325 )
|
19 |
UniswapV2Pair.Sync( reserve0=960733260249295515213552, reserve1=516388754462235333038 )
|
20 |
UniswapV2Pair.Burn( sender=[Receiver] V3Migrator, amount0=30271666618802496311723, amount1=16270851512648992325, to=[Receiver] V3Migrator )
|
21 |
ParsiqToken.Approval( owner=[Receiver] V3Migrator, spender=NonfungiblePositionManager, value=30271666618802496311723 )
|
22 |
WETH9.Approval( src=[Receiver] V3Migrator, guy=NonfungiblePositionManager, wad=16270851512648992325 )
|
23 |
ParsiqToken.Transfer( from=[Receiver] V3Migrator, to=0xa34f0d0314db32f41e1194816d56d55d1f7ca7b5, value=30271666618802496311712 )
|
24 |
ParsiqToken.Approval( owner=[Receiver] V3Migrator, spender=NonfungiblePositionManager, value=11 )
|
25 |
WETH9.Transfer( src=[Receiver] V3Migrator, dst=0xa34f0d0314db32f41e1194816d56d55d1f7ca7b5, wad=10261518420158181362 )
|
26 |
0xa34f0d0314db32f41e1194816d56d55d1f7ca7b5.0x7a53080ba414158be7ec69b987b5fb7d07dee101fe85488f0853ae16239d0bde( 0x7a53080ba414158be7ec69b987b5fb7d07dee101fe85488f0853ae16239d0bde, 0x000000000000000000000000c36442b4a4522e871399cd717abdd847ab11fe88, 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec780, 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef980, 000000000000000000000000c36442b4a4522e871399cd717abdd847ab11fe88, 0000000000000000000000000000000000000000000000725c3a228920ff1598, 00000000000000000000000000000000000000000000066907c413a324ff91a0, 0000000000000000000000000000000000000000000000008e683ca2a1a7eff2 )
|
27 |
NonfungiblePositionManager.Transfer( from=0x0000000000000000000000000000000000000000, to=[Sender] 0xf23dc120e1f216b7275ba71a71fef2354e349f78, tokenId=2352 )
|
28 |
NonfungiblePositionManager.IncreaseLiquidity( tokenId=2352, liquidity=2109574486575386924440, amount0=30271666618802496311712, amount1=10261518420158181362 )
|
29 |
ParsiqToken.Approval( owner=[Receiver] V3Migrator, spender=NonfungiblePositionManager, value=0 )
|
30 |
ParsiqToken.Transfer( from=[Receiver] V3Migrator, to=[Sender] 0xf23dc120e1f216b7275ba71a71fef2354e349f78, value=11 )
|
31 |
WETH9.Approval( src=[Receiver] V3Migrator, guy=NonfungiblePositionManager, wad=0 )
|
32 |
WETH9.Withdrawal( src=[Receiver] V3Migrator, wad=6009333092490810963 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x1F98431c...6ea31F984 | (Uniswap V3: Factory) | ||||
0x362bc847...8a43ed7D2 | |||||
0x52bc44d5...b7d7bE3b5
Miner
| (Nanopool) | 2,903.771814564121029801 Eth | 2,903.967213969121029801 Eth | 0.195399405 | |
0x64CaC8fa...9f162b0D1 | |||||
0xA34F0D03...D1F7Ca7b5 | (Uniswap V3: PRQ) |
0 Eth
Nonce: 0
|
0 Eth
Nonce: 1
| ||
0xC02aaA39...83C756Cc2 | 6,764,047.357182285381945647 Eth | 6,764,041.347849192891134684 Eth | 6.009333092490810963 | ||
0xC36442b4...7Ab11FE88 | |||||
0xf23dc120...54E349F78 |
7.032836069600222375 Eth
Nonce: 121
|
12.846769757091033338 Eth
Nonce: 122
| 5.813933687490810963 |
Execution Trace
V3Migrator.multicall( data=[E+rVYgAAAAAAAAAAAAAAADYryEejqWN9OvZiTuyFNhikPtfSAAAAAAAAAAAAAAAAwCqqObIj/o0KDlxPJ+rZCDx1bMIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnEAAAAAAAAAAAAAAAAAAAAAAAAAAABe9boG7UNe8mhZ40, 1E8r8gAAAAAAAAAAAAAAAGTKyPok9DfOypDiCnokpgnxYrDRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAW0CusCu5rk24AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAAAAAAAAAAAAAAAADYryEejqWN9OvZiTuyFNhikPtfSAAAAAAAAAAAAAAAAwCqqObIj/o0KDlxPJ+rZCDx1bMIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnEP///////////////////////////////////////seA///////////////////////////////////////++YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmDTP0GefSIhiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI2x9KbwNS12AAAAAAAAAAAAAAAA8j3BIOHyFrcnW6cacf7yNU40n3gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYJNrqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB] ) => ( results=[AAAAAAAAAAAAAAAAo08NAxTbMvQeEZSBbVbVXR98p7U=, ] )
V3Migrator.createAndInitializePoolIfNecessary( token0=0x362bc847A3a9637d3af6624EeC853618a43ed7D2, token1=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, fee=10000, sqrtPriceX96=1836791014809681988115865140 ) => ( pool=0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5 )
-
UniswapV3Factory.getPool( 0x362bc847A3a9637d3af6624EeC853618a43ed7D2, 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, 10000 ) => ( 0x0000000000000000000000000000000000000000 )
UniswapV3Factory.createPool( tokenA=0x362bc847A3a9637d3af6624EeC853618a43ed7D2, tokenB=0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, fee=10000 ) => ( pool=0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5 )
Uniswap V3: PRQ.61016060( )
-
UniswapV3Factory.STATICCALL( )
-
-
Uniswap V3: PRQ.f637731d( )
-
V3Migrator.migrate( params=[{name:pair, type:address, order:1, indexed:false, value:0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1, valueString:0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1}, {name:liquidityToMigrate, type:uint256, order:2, indexed:false, value:420828641768447382382, valueString:420828641768447382382}, {name:percentageToMigrate, type:uint8, order:3, indexed:false, value:100, valueString:100}, {name:token0, type:address, order:4, indexed:false, value:0x362bc847A3a9637d3af6624EeC853618a43ed7D2, valueString:0x362bc847A3a9637d3af6624EeC853618a43ed7D2}, {name:token1, type:address, order:5, indexed:false, value:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, valueString:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2}, {name:fee, type:uint24, order:6, indexed:false, value:10000, valueString:10000}, {name:tickLower, type:int24, order:7, indexed:false, value:-80000, valueString:-80000}, {name:tickUpper, type:int24, order:8, indexed:false, value:-67200, valueString:-67200}, {name:amount0Min, type:uint256, order:9, indexed:false, value:30120308285708483830152, valueString:30120308285708483830152}, {name:amount1Min, type:uint256, order:10, indexed:false, value:10210210828057390454, valueString:10210210828057390454}, {name:recipient, type:address, order:11, indexed:false, value:0xf23dc120e1f216B7275BA71A71fEF2354E349F78, valueString:0xf23dc120e1f216B7275BA71A71fEF2354E349F78}, {name:deadline, type:uint256, order:12, indexed:false, value:1620274088, valueString:1620274088}, {name:refundAsETH, type:bool, order:13, indexed:false, value:true, valueString:True}] )
-
UniswapV2Pair.transferFrom( from=0xf23dc120e1f216B7275BA71A71fEF2354E349F78, to=0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1, value=420828641768447382382 ) => ( True )
UniswapV2Pair.burn( to=0xA5644E29708357803b5A882D272c41cC0dF92B34 ) => ( amount0=30271666618802496311723, amount1=16270851512648992325 )
-
ParsiqToken.balanceOf( account=0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1 ) => ( 991004926868098011525275 )
-
WETH9.balanceOf( 0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1 ) => ( 532659605974884325363 )
-
UniswapV2Factory.STATICCALL( )
-
ParsiqToken.transfer( recipient=0xA5644E29708357803b5A882D272c41cC0dF92B34, amount=30271666618802496311723 ) => ( True )
-
WETH9.transfer( dst=0xA5644E29708357803b5A882D272c41cC0dF92B34, wad=16270851512648992325 ) => ( True )
-
ParsiqToken.balanceOf( account=0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1 ) => ( 960733260249295515213552 )
-
WETH9.balanceOf( 0x64CaC8fa24F437cECA90e20A7a24a609f162b0D1 ) => ( 516388754462235333038 )
-
-
ParsiqToken.approve( spender=0xC36442b4a4522E871399CD717aBDD847Ab11FE88, amount=30271666618802496311723 ) => ( True )
-
WETH9.approve( guy=0xC36442b4a4522E871399CD717aBDD847Ab11FE88, wad=16270851512648992325 ) => ( True )
NonfungiblePositionManager.mint( params=[{name:token0, type:address, order:1, indexed:false, value:0x362bc847A3a9637d3af6624EeC853618a43ed7D2, valueString:0x362bc847A3a9637d3af6624EeC853618a43ed7D2}, {name:token1, type:address, order:2, indexed:false, value:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, valueString:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2}, {name:fee, type:uint24, order:3, indexed:false, value:10000, valueString:10000}, {name:tickLower, type:int24, order:4, indexed:false, value:-80000, valueString:-80000}, {name:tickUpper, type:int24, order:5, indexed:false, value:-67200, valueString:-67200}, {name:amount0Desired, type:uint256, order:6, indexed:false, value:30271666618802496311723, valueString:30271666618802496311723}, {name:amount1Desired, type:uint256, order:7, indexed:false, value:16270851512648992325, valueString:16270851512648992325}, {name:amount0Min, type:uint256, order:8, indexed:false, value:30120308285708483830152, valueString:30120308285708483830152}, {name:amount1Min, type:uint256, order:9, indexed:false, value:10210210828057390454, valueString:10210210828057390454}, {name:recipient, type:address, order:10, indexed:false, value:0xf23dc120e1f216B7275BA71A71fEF2354E349F78, valueString:0xf23dc120e1f216B7275BA71A71fEF2354E349F78}, {name:deadline, type:uint256, order:11, indexed:false, value:1620274088, valueString:1620274088}] ) => ( tokenId=2352, liquidity=2109574486575386924440, amount0=30271666618802496311712, amount1=10261518420158181362 )
-
Uniswap V3: PRQ.STATICCALL( )
Uniswap V3: PRQ.3c8a7d8d( )
-
ParsiqToken.balanceOf( account=0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5 ) => ( 0 )
-
WETH9.balanceOf( 0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5 ) => ( 0 )
NonfungiblePositionManager.uniswapV3MintCallback( amount0Owed=30271666618802496311712, amount1Owed=10261518420158181362, data=0x000000000000000000000000362BC847A3A9637D3AF6624EEC853618A43ED7D2000000000000000000000000C02AAA39B223FE8D0A0E5C4F27EAD9083C756CC20000000000000000000000000000000000000000000000000000000000002710000000000000000000000000A5644E29708357803B5A882D272C41CC0DF92B34 )
-
ParsiqToken.transferFrom( sender=0xA5644E29708357803b5A882D272c41cC0dF92B34, recipient=0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5, amount=30271666618802496311712 ) => ( True )
-
WETH9.transferFrom( src=0xA5644E29708357803b5A882D272c41cC0dF92B34, dst=0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5, wad=10261518420158181362 ) => ( True )
-
-
ParsiqToken.balanceOf( account=0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5 ) => ( 30271666618802496311712 )
-
WETH9.balanceOf( 0xA34F0D0314db32f41e1194816d56d55D1F7Ca7b5 ) => ( 10261518420158181362 )
-
-
Uniswap V3: PRQ.514ea4bf( )
-
-
ParsiqToken.approve( spender=0xC36442b4a4522E871399CD717aBDD847Ab11FE88, amount=0 ) => ( True )
-
ParsiqToken.transfer( recipient=0xf23dc120e1f216B7275BA71A71fEF2354E349F78, amount=11 ) => ( True )
-
WETH9.approve( guy=0xC36442b4a4522E871399CD717aBDD847Ab11FE88, wad=0 ) => ( True )
WETH9.withdraw( wad=6009333092490810963 )
- ETH 6.009333092490810963
V3Migrator.CALL( )
- ETH 6.009333092490810963
- ETH 6.009333092490810963
0xf23dc120e1f216b7275ba71a71fef2354e349f78.CALL( )
-
multicall[Multicall (ln:444)]
delegatecall[Multicall (ln:447)]
revert[Multicall (ln:450)]
revert[Multicall (ln:454)]
decode[Multicall (ln:454)]
File 1 of 7: V3Migrator
File 2 of 7: UniswapV3Factory
File 3 of 7: UniswapV2Pair
File 4 of 7: ParsiqToken
File 5 of 7: WETH9
File 6 of 7: NonfungiblePositionManager
File 7 of 7: UniswapV2Factory
12345678910111213141516// SPDX-License-Identifier: GPL-2.0-or-laterpragma solidity =0.7.6;pragma abicoder v2;import '@uniswap/v3-core/contracts/libraries/LowGasSafeMath.sol';import '@uniswap/v2-core/contracts/interfaces/IUniswapV2Pair.sol';import './interfaces/INonfungiblePositionManager.sol';import './libraries/TransferHelper.sol';import './interfaces/IV3Migrator.sol';import './base/PeripheryImmutableState.sol';import './base/Multicall.sol';import './base/SelfPermit.sol';import './interfaces/external/IWETH9.sol';import './base/PoolInitializer.sol';/// @title Uniswap V3 Migratorcontract V3Migrator is IV3Migrator, PeripheryImmutableState, PoolInitializer, Multicall, SelfPermit {using LowGasSafeMath for uint256;
File 2 of 7: UniswapV3Factory
12345678910111213141516// SPDX-License-Identifier: BUSL-1.1pragma solidity =0.7.6;import './interfaces/IUniswapV3Factory.sol';import './UniswapV3PoolDeployer.sol';import './NoDelegateCall.sol';import './UniswapV3Pool.sol';/// @title Canonical Uniswap V3 factory/// @notice Deploys Uniswap V3 pools and manages ownership and control over pool protocol feescontract UniswapV3Factory is IUniswapV3Factory, UniswapV3PoolDeployer, NoDelegateCall {/// @inheritdoc IUniswapV3Factoryaddress public override owner;/// @inheritdoc IUniswapV3Factorymapping(uint24 => int24) public override feeAmountTickSpacing;/// @inheritdoc IUniswapV3Factorymapping(address => mapping(address => mapping(uint24 => address))) public override getPool;constructor() {
File 3 of 7: UniswapV2Pair
12345678910111213141516// File: contracts/interfaces/IUniswapV2Pair.solpragma 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);
File 4 of 7: ParsiqToken
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.6.12;/*** @dev Wrappers over Solidity's arithmetic operations with added overflow* checks.** Arithmetic operations in Solidity wrap on overflow. This can easily result* in bugs, because programmers usually assume that an overflow raises an* error, which is the standard behavior in high level programming languages.* `SafeMath` restores this intuition by reverting the transaction when an* operation overflows.** Using this library instead of the unchecked operations eliminates an entire* class of bugs, so it's recommended to use it always.*/
File 5 of 7: WETH9
12345678910111213141516// 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;
File 6 of 7: NonfungiblePositionManager
12345678910111213141516// SPDX-License-Identifier: GPL-2.0-or-laterpragma solidity =0.7.6;pragma abicoder v2;import '@uniswap/v3-core/contracts/interfaces/IUniswapV3Pool.sol';import '@uniswap/v3-core/contracts/libraries/FixedPoint128.sol';import '@uniswap/v3-core/contracts/libraries/FullMath.sol';import './interfaces/INonfungiblePositionManager.sol';import './interfaces/INonfungibleTokenPositionDescriptor.sol';import './libraries/PositionKey.sol';import './libraries/PoolAddress.sol';import './base/LiquidityManagement.sol';import './base/PeripheryImmutableState.sol';import './base/Multicall.sol';import './base/ERC721Permit.sol';import './base/PeripheryValidation.sol';import './base/SelfPermit.sol';
File 7 of 7: UniswapV2Factory
12345678910111213141516pragma solidity =0.5.16;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;