InstaFlashInterface

flashLoan

function flashLoan(address[] tokens, uint256[] amts, uint256 route, bytes data, bytes extraData) external

InstaFlashReceiverInterface

executeOperation

function executeOperation(address[] assets, uint256[] amounts, uint256[] premiums, address initiator, bytes _data) external returns (bool)

VaultT1Migrator

X32

uint256 X32

ETH_ADDRESS

address ETH_ADDRESS

VAULT_T1_FACTORY_OLD

contract IFluidVaultFactory VAULT_T1_FACTORY_OLD

VAULT_T1_FACTORY_NEW

contract IFluidVaultFactory VAULT_T1_FACTORY_NEW

FLA

contract InstaFlashInterface FLA

WETH

contract IWETH9 WETH

FlashloanConfig

struct FlashloanConfig {
  uint256 amount;
  uint256 route;
}

flashloanConfig

mapping(address => struct VaultT1Migrator.FlashloanConfig) flashloanConfig

FluidVaultT1Migrator__InvalidOperation

error FluidVaultT1Migrator__InvalidOperation()

FluidVaultT1Migrator__NotAllowed

error FluidVaultT1Migrator__NotAllowed()

Migrated

event Migrated(uint256 vaultId, address owner, uint256 nft, uint256 collateral, uint256 debt)

Withdraw

event Withdraw(address to, address token, uint256 amount)

SetFlashloanConfig

event SetFlashloanConfig(address token, uint256 route, uint256 amount)

constructor

constructor(address owner_, address fla_, address weth_, address oldFactory_, address newFactory_) public

setFlashloanConfig

function setFlashloanConfig(address token_, uint256 route_, uint256 amount_) public

spell

function spell(address[] targets_, bytes[] calldatas_) public

withdraw

function withdraw(address to_, address[] tokens_, uint256[] amounts_) public

MigratorParams

struct MigratorParams {
  uint256 nftId;
  address owner;
  address supply;
  address borrow;
  uint256 vaultId;
  address vaultFrom;
  address vaultTo;
  uint256 supplyAmount;
  uint256 borrowAmount;
  int256 withdrawAmount;
  int256 paybackAmount;
  uint256 route;
}

onERC721Received

function onERC721Received(address operator, address from, uint256 tokenId, bytes data) external returns (bytes4)

executeOperation

function executeOperation(address[] assets, uint256[] amounts, uint256[] premiums, address initiator, bytes _data) external returns (bool)

vaultByNftId

function vaultByNftId(uint256 nftId_) public view returns (uint256 vaultId_, address vault_)

vaultConfig

function vaultConfig(address vault_) public view returns (address supply_, address borrow_)

calculateStorageSlotUintMapping

function calculateStorageSlotUintMapping(uint256 slot_, uint256 key_) public pure returns (bytes32)

getVaultAddress

function getVaultAddress(address vaultFactory_, uint256 vaultId_) public pure returns (address vault_)

receive

receive() external payable