From e2e1c444653f6cd24de41ed01ff0b8db3d5747fd Mon Sep 17 00:00:00 2001 From: idoh-spherex Date: Wed, 1 Nov 2023 14:28:47 +0200 Subject: [PATCH 1/6] Changed packages. --- package.json | 1 + scripts/fileImport.ts | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index ccdafb7..2f7bcea 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "typescript": "^5.2.2" }, "dependencies": { + "@spherex-xyz/contracts": "^1.0.6", "poolz-helper-v2": "^2.1.13" } } diff --git a/scripts/fileImport.ts b/scripts/fileImport.ts index 3d7cf0d..91635d9 100644 --- a/scripts/fileImport.ts +++ b/scripts/fileImport.ts @@ -4,10 +4,10 @@ import path from 'path'; async function downloadAndExtractZipAll() { try { - await downloadAndExtractZip('https://github.com/The-Poolz/LockDealNFT/archive/refs/heads/master.zip', 'contracts/'); + await downloadAndExtractZip('https://github.com/spherex-collab/LockDealNFT/archive/refs/heads/spherex.zip', 'contracts/'); await downloadAndExtractZip('https://github.com/The-Poolz/DelayVault/archive/refs/heads/master.zip', 'contracts/'); await downloadAndExtractZip( - 'https://github.com/The-Poolz/VaultManager/archive/refs/heads/master.zip', + 'https://github.com/spherex-collab/VaultManager/archive/refs/heads/spherex.zip', 'contracts/', ); cleanUpFolders('contracts/DelayVault'); From 9c6ef3675aab9563f9e944cd6cb92191fb9c39ef Mon Sep 17 00:00:00 2001 From: idoh-spherex Date: Wed, 1 Nov 2023 15:11:25 +0200 Subject: [PATCH 2/6] Changed packages. --- hardhat.config.ts | 25 +++++++++++++++++++++++++ package.json | 5 +++-- remappings.txt | 3 +++ test/DelayMigrator/Migrator.ts | 2 +- test/DelayVaultProvider/setupTests.ts | 2 +- 5 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 remappings.txt diff --git a/hardhat.config.ts b/hardhat.config.ts index 2ceb241..137927c 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -3,6 +3,16 @@ import "@truffle/dashboard-hardhat-plugin" import "hardhat-gas-reporter" import { HardhatUserConfig } from "hardhat/config" import "solidity-coverage" +import "hardhat-preprocessor"; +import * as fs from 'fs'; + +function getRemappings() { + return fs + .readFileSync("remappings.txt", "utf8") + .split("\n") + .filter(Boolean) // remove empty lines + .map((line) => line.trim().split("=")); + } const config: HardhatUserConfig = { defaultNetwork: "hardhat", @@ -41,6 +51,21 @@ const config: HardhatUserConfig = { noColors: true, outputFile: "gas-report.txt", }, + preprocess: { + eachLine: (hre) => ({ + transform: (line: string) => { + if (line.match(/^\s*import /i)) { + for (const [from, to] of getRemappings()) { + if (line.includes(from)) { + line = line.replace(from, to); + break; + } + } + } + return line; + }, + }), + }, } export default config diff --git a/package.json b/package.json index 2f7bcea..6d51548 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,6 @@ "@nomiclabs/hardhat-ethers": "^2.2.1", "@nomiclabs/hardhat-etherscan": "^3.1.2", "@nomiclabs/hardhat-waffle": "^2.0.6", - "@openzeppelin/contracts": "^4.9.3", "@poolzfinance/poolz-helper-v2": "^2.1.14", "@truffle/dashboard-hardhat-plugin": "^0.2.15", "@typechain/ethers-v5": "^10.1.0", @@ -37,6 +36,8 @@ }, "dependencies": { "@spherex-xyz/contracts": "^1.0.6", - "poolz-helper-v2": "^2.1.13" + "@spherex-xyz/openzeppelin-solidity": "^0.0.4", + "@spherex-xyz/poolz-helper-v2": "^0.0.2", + "hardhat-preprocessor": "^0.1.5" } } diff --git a/remappings.txt b/remappings.txt new file mode 100644 index 0000000..b5634a3 --- /dev/null +++ b/remappings.txt @@ -0,0 +1,3 @@ +@openzeppelin/=node_modules/@spherex-xyz/openzeppelin-solidity/ +@poolzfinance/poolz-helper-v2/=node_modules/@spherex-xyz/poolz-helper-v2/ +poolz-helper-v2/contracts/=node_modules/@spherex-xyz/poolz-helper-v2/contracts/ \ No newline at end of file diff --git a/test/DelayMigrator/Migrator.ts b/test/DelayMigrator/Migrator.ts index f21f848..fdead70 100644 --- a/test/DelayMigrator/Migrator.ts +++ b/test/DelayMigrator/Migrator.ts @@ -39,7 +39,7 @@ describe('DelayVault Migrator', function () { before('Download and unzip contracts', async () => { [user1, user2, user3, user4, user5] = await ethers.getSigners(); token = await deployed( - '@poolzfinance/poolz-helper-v2/contracts/token/ERC20Token.sol:ERC20Token', + 'ERC20Token', 'TestToken', 'TEST', ); diff --git a/test/DelayVaultProvider/setupTests.ts b/test/DelayVaultProvider/setupTests.ts index f82aac7..dec96ec 100644 --- a/test/DelayVaultProvider/setupTests.ts +++ b/test/DelayVaultProvider/setupTests.ts @@ -51,7 +51,7 @@ export class DelaySetup { this.mockProvider = await deployed('MockProvider', this.lockDealNFT.address, this.timedDealProvider.address); this.delayVault = await deployed('DelayVault'); this.token = await deployed( - '@poolzfinance/poolz-helper-v2/contracts/token/ERC20Token.sol:ERC20Token', + 'ERC20Token', 'Token', 'TKN', ); From 9d45c8654687b7beb88b259685fb6943bcfe39be Mon Sep 17 00:00:00 2001 From: idoh-spherex Date: Wed, 1 Nov 2023 16:22:17 +0200 Subject: [PATCH 3/6] integrated spherex. --- contracts/DelayVaultProvider.sol | 14 ++++++++------ contracts/DelayVaultState.sol | 16 +++++++++------- contracts/HoldersSum.sol | 20 +++++++++++--------- contracts/MigratorV1/DelayVaultMigrator.sol | 14 ++++++++------ 4 files changed, 36 insertions(+), 28 deletions(-) diff --git a/contracts/DelayVaultProvider.sol b/contracts/DelayVaultProvider.sol index f25ad2a..638b471 100644 --- a/contracts/DelayVaultProvider.sol +++ b/contracts/DelayVaultProvider.sol @@ -2,7 +2,9 @@ pragma solidity ^0.8.0; import "./DelayVaultState.sol"; -import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {SphereXProtected} from "@spherex-xyz/contracts/src/SphereXProtected.sol"; + contract DelayVaultProvider is DelayVaultState { constructor(address _token, IMigrator _migrator, ProviderData[] memory _providersData) { @@ -20,12 +22,12 @@ contract DelayVaultProvider is DelayVaultState { function registerPool( uint256 poolId, uint256[] calldata params - ) public override onlyProvider validProviderId(poolId) { + ) public override onlyProvider validProviderId(poolId) sphereXGuardPublic(0x952ef082, 0xe9a9fce2) { require(params.length == currentParamsTargetLenght(), "invalid params length"); _registerPool(poolId, params); } - function _registerPool(uint256 poolId, uint256[] calldata params) internal { + function _registerPool(uint256 poolId, uint256[] calldata params) internal sphereXGuardInternal(0x1854fc37) { uint256 amount = params[0]; address owner = lockDealNFT.ownerOf(poolId); _addHoldersSum(owner, amount, owner == msg.sender || msg.sender == address(migrator)); @@ -41,7 +43,7 @@ contract DelayVaultProvider is DelayVaultState { withdrawalAmount = poolIdToAmount[poolId]; } - function upgradeType(uint8 newType) public { + function upgradeType(uint8 newType) public sphereXGuardPublic(0x0aa2846a, 0x66b564bf) { uint8 oldType = userToType[msg.sender]; uint256 amount = getTotalAmount(msg.sender); require(amount > 0, "amount must be bigger than 0"); @@ -50,7 +52,7 @@ contract DelayVaultProvider is DelayVaultState { userToType[msg.sender] = newType; } - function createNewDelayVault(address owner, uint256[] calldata params) external returns (uint256 poolId) { + function createNewDelayVault(address owner, uint256[] calldata params) external sphereXGuardExternal(0x6ea2b58a) returns (uint256 poolId) { require(params.length == currentParamsTargetLenght(), "invalid params length"); uint256 amount = params[0]; IERC20(token).transferFrom(msg.sender, address(lockDealNFT), amount); @@ -62,7 +64,7 @@ contract DelayVaultProvider is DelayVaultState { address owner, uint256[] calldata params, bytes calldata signature - ) external returns (uint256 poolId) { + ) external sphereXGuardExternal(0x7055b37f) returns (uint256 poolId) { require(params.length == currentParamsTargetLenght(), "invalid params length"); poolId = lockDealNFT.safeMintAndTransfer(owner, token, msg.sender, params[0], this, signature); _registerPool(poolId, params); diff --git a/contracts/DelayVaultState.sol b/contracts/DelayVaultState.sol index 6b77b71..01539f0 100644 --- a/contracts/DelayVaultState.sol +++ b/contracts/DelayVaultState.sol @@ -4,12 +4,14 @@ pragma solidity ^0.8.0; import "./LockDealNFT/contracts/SimpleProviders/DealProvider/DealProviderState.sol"; import "./LockDealNFT/contracts/util/CalcUtils.sol"; import "./LastPoolOwnerState.sol"; -import "./HoldersSum.sol"; +import "./HoldersSum.sol"; +import {SphereXProtected} from "@spherex-xyz/contracts/src/SphereXProtected.sol"; + abstract contract DelayVaultState is DealProviderState, LastPoolOwnerState, HoldersSum { using CalcUtils for uint256; - function beforeTransfer(address from, address to, uint256 poolId) external override onlyNFT { + function beforeTransfer(address from, address to, uint256 poolId) external override onlyNFT sphereXGuardExternal(0x8a1f7191) { if (to == address(lockDealNFT)) // this means it will be withdraw or split lastPoolOwner[poolId] = from; //this is the only way to know the owner of the pool @@ -18,7 +20,7 @@ abstract contract DelayVaultState is DealProviderState, LastPoolOwnerState, Hold } } - function _handleTransfer(address from, address to, uint256 poolId) internal returns (uint256 amount) { + function _handleTransfer(address from, address to, uint256 poolId) internal sphereXGuardInternal(0xdb514809) returns (uint256 amount) { amount = poolIdToAmount[poolId]; _subHoldersSum(from, amount); _addHoldersSum(to, amount, false); @@ -42,7 +44,7 @@ abstract contract DelayVaultState is DealProviderState, LastPoolOwnerState, Hold } //This need to make a new pool without transfering the token, the pool data is taken from the settings - function withdraw(uint256 tokenId) external override onlyNFT returns (uint256 withdrawnAmount, bool isFinal) { + function withdraw(uint256 tokenId) external override onlyNFT sphereXGuardExternal(0x5623236b) returns (uint256 withdrawnAmount, bool isFinal) { address owner = lastPoolOwner[tokenId]; uint8 theType = userToType[owner]; uint256 amount = poolIdToAmount[tokenId]; @@ -53,7 +55,7 @@ abstract contract DelayVaultState is DealProviderState, LastPoolOwnerState, Hold _resetTypeIfEmpty(owner); } - function _createLockNFT(address owner, uint256 amount, uint8 theType, uint tokenId) internal { + function _createLockNFT(address owner, uint256 amount, uint8 theType, uint tokenId) internal sphereXGuardInternal(0xd4c9eab9) { ProviderData memory providerData = typeToProviderData[theType]; uint256 newPoolId = lockDealNFT.mintForProvider(owner, providerData.provider); lockDealNFT.cloneVaultId(newPoolId, tokenId); @@ -61,7 +63,7 @@ abstract contract DelayVaultState is DealProviderState, LastPoolOwnerState, Hold providerData.provider.registerPool(newPoolId, params); } - function split(uint256 oldPoolId, uint256 newPoolId, uint256 ratio) external override onlyNFT { + function split(uint256 oldPoolId, uint256 newPoolId, uint256 ratio) external override onlyNFT sphereXGuardExternal(0xcbb941a3) { address oldOwner = lastPoolOwner[oldPoolId]; address newOwner = lockDealNFT.ownerOf(newPoolId); uint256 amount = poolIdToAmount[oldPoolId].calcAmount(ratio); @@ -72,7 +74,7 @@ abstract contract DelayVaultState is DealProviderState, LastPoolOwnerState, Hold } } - function _resetTypeIfEmpty(address user) internal { + function _resetTypeIfEmpty(address user) internal sphereXGuardInternal(0x97e51398) { if (getTotalAmount(user) == 0) { userToType[user] = 0; //reset the type } diff --git a/contracts/HoldersSum.sol b/contracts/HoldersSum.sol index 326cc77..29aa0d1 100644 --- a/contracts/HoldersSum.sol +++ b/contracts/HoldersSum.sol @@ -5,9 +5,11 @@ import "./LockDealNFT/contracts/SimpleProviders/Provider/ProviderModifiers.sol"; import "./interfaces/IDelayVaultProvider.sol"; import "./interfaces/IDelayVaultV1.sol"; import "./interfaces/IMigrator.sol"; -import "hardhat/console.sol"; +import "hardhat/console.sol"; +import {SphereXProtected} from "@spherex-xyz/contracts/src/SphereXProtected.sol"; + -abstract contract HoldersSum is ProviderModifiers, IDelayVaultProvider { +abstract contract HoldersSum is ProviderModifiers, IDelayVaultProvider , SphereXProtected { //this is only the delta //the amount is the amount of the pool // params[0] = startTimeDelta (empty for DealProvider) @@ -34,19 +36,19 @@ abstract contract HoldersSum is ProviderModifiers, IDelayVaultProvider { } } - function _addHoldersSum(address user, uint256 amount, bool allowTypeUpgrade) internal { + function _addHoldersSum(address user, uint256 amount, bool allowTypeUpgrade) internal sphereXGuardInternal(0xdde5558d) { uint256 newAmount = userToAmount[user] + amount; _setHoldersSum(user, newAmount, allowTypeUpgrade); } - function _subHoldersSum(address user, uint256 amount) internal { + function _subHoldersSum(address user, uint256 amount) internal sphereXGuardInternal(0xd72f721e) { uint256 oldAmount = userToAmount[user]; require(oldAmount >= amount, "amount exceeded"); uint256 newAmount = oldAmount - amount; _setHoldersSum(user, newAmount, false); } - function _setHoldersSum(address user, uint256 newAmount, bool allowTypeUpgrade) internal { + function _setHoldersSum(address user, uint256 newAmount, bool allowTypeUpgrade) internal sphereXGuardInternal(0x45a31710) { uint8 newType = theTypeOf(migrator.getUserV1Amount(user) + newAmount); if (allowTypeUpgrade) { _upgradeUserTypeIfGreater(user, newType); @@ -59,19 +61,19 @@ abstract contract HoldersSum is ProviderModifiers, IDelayVaultProvider { emit VaultValueChanged(token, user, newAmount); } - function _upgradeUserTypeIfGreater(address user, uint8 newType) internal { + function _upgradeUserTypeIfGreater(address user, uint8 newType) internal sphereXGuardInternal(0x2a31dd12) { if (newType > userToType[user]) { userToType[user] = newType; } } - function _upgradeUserTypeIfMatchesV1(address user, uint8 newType, uint256 newAmount) internal { + function _upgradeUserTypeIfMatchesV1(address user, uint8 newType, uint256 newAmount) internal sphereXGuardInternal(0xf75ddc0b) { if (newAmount == 0) { userToType[user] = newType; } } - function _finilize(ProviderData[] memory _providersData) internal { + function _finilize(ProviderData[] memory _providersData) internal sphereXGuardInternal(0x84f3aeed) { typesCount = uint8(_providersData.length); uint256 limit = 0; for (uint8 i = 0; i < typesCount; ++i) { @@ -83,7 +85,7 @@ abstract contract HoldersSum is ProviderModifiers, IDelayVaultProvider { uint8 theType, uint256 lastLimit, ProviderData memory item - ) internal returns (uint256 limit) { + ) internal sphereXGuardInternal(0x6cc69126) returns (uint256 limit) { require(address(item.provider) != address(0x0), "invalid address"); require(item.provider.currentParamsTargetLenght() == item.params.length + 1, "invalid params length"); limit = item.limit; diff --git a/contracts/MigratorV1/DelayVaultMigrator.sol b/contracts/MigratorV1/DelayVaultMigrator.sol index f0c4d1c..898ceac 100644 --- a/contracts/MigratorV1/DelayVaultMigrator.sol +++ b/contracts/MigratorV1/DelayVaultMigrator.sol @@ -4,9 +4,11 @@ pragma solidity ^0.8.0; import "./DelayMigratorState.sol"; import "../interfaces/ILockDealV2.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import "@openzeppelin/contracts/utils/introspection/ERC165Checker.sol"; +import "@openzeppelin/contracts/utils/introspection/ERC165Checker.sol"; +import {SphereXProtected} from "@spherex-xyz/contracts/src/SphereXProtected.sol"; + -contract DelayVaultMigrator is DelayMigratorState, ILockDealV2 { +contract DelayVaultMigrator is DelayMigratorState, ILockDealV2 , SphereXProtected { constructor(ILockDealNFT _nft, IDelayVaultV1 _oldVault) { require(address(_oldVault) != address(0), "DelayVaultMigrator: Invalid old delay vault contract"); require(address(_nft) != address(0), "DelayVaultMigrator: Invalid lock deal nft contract"); @@ -14,7 +16,7 @@ contract DelayVaultMigrator is DelayMigratorState, ILockDealV2 { lockDealNFT = _nft; } - function finilize(IDelayVaultProvider _newVault) external { + function finilize(IDelayVaultProvider _newVault) external sphereXGuardExternal(0xec3bffb2) { require(owner != address(0), "DelayVaultMigrator: already initialized"); require(msg.sender == owner, "DelayVaultMigrator: not owner"); require( @@ -27,7 +29,7 @@ contract DelayVaultMigrator is DelayMigratorState, ILockDealV2 { } //this option is to get tokens from the DelayVaultV1 and deposit them to the DelayVaultV2 (LockDealNFT, v3) - function fullMigrate() external afterInit { + function fullMigrate() external afterInit sphereXGuardExternal(0x54267f8d) { require(oldVault.Allowance(token, msg.sender), "DelayVaultMigrator: not allowed"); uint256 amount = getUserV1Amount(msg.sender); oldVault.redeemTokensFromVault(token, msg.sender, amount); @@ -38,7 +40,7 @@ contract DelayVaultMigrator is DelayMigratorState, ILockDealV2 { } //this option is to get tokens from the DelayVaultV1 and deposit them to the LockDealNFT (v3) - function withdrawTokensFromV1Vault() external afterInit { + function withdrawTokensFromV1Vault() external afterInit sphereXGuardExternal(0x6f782b43) { require(oldVault.Allowance(token, msg.sender), "DelayVaultMigrator: not allowed"); uint256 amount = getUserV1Amount(msg.sender); oldVault.redeemTokensFromVault(token, msg.sender, amount); @@ -61,7 +63,7 @@ contract DelayVaultMigrator is DelayMigratorState, ILockDealV2 { uint256, //Until what time the pool will end uint256 _StartAmount, //Total amount of the tokens to sell in the pool address _Owner // Who the tokens belong to - ) external payable override afterInit { + ) external payable override afterInit sphereXGuardExternal(0xf0039a9c) { require(msg.sender == address(oldVault), "DelayVaultMigrator: not DelayVaultV1"); uint8 theType = newVault.theTypeOf(newVault.getTotalAmount(_Owner)); IDelayVaultProvider.ProviderData memory providerData = newVault.getTypeToProviderData(theType); From 1e2d279b3e7ee1fc97bb4be92b350551949135eb Mon Sep 17 00:00:00 2001 From: idoh-spherex Date: Wed, 1 Nov 2023 19:12:51 +0200 Subject: [PATCH 4/6] Fixed optimizer settings. --- code_id_mapping.json | 2084 ++++++++++++++++++++++++++++++++++++++++++ hardhat.config.ts | 21 +- inheritance_code.md | 309 +++++++ 3 files changed, 2400 insertions(+), 14 deletions(-) create mode 100644 code_id_mapping.json create mode 100644 inheritance_code.md diff --git a/code_id_mapping.json b/code_id_mapping.json new file mode 100644 index 0000000..68b773d --- /dev/null +++ b/code_id_mapping.json @@ -0,0 +1,2084 @@ +[ + { + "name": "DelayManageable::Pause", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0xd42fad51", + "visibility": "external", + "args": [], + "returns": [] + }, + { + "name": "DelayManageable::Unpause", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0x7097c7e7", + "visibility": "external", + "args": [], + "returns": [] + }, + { + "name": "DelayManageable::redeemTokensFromVault", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0xba7f8c12", + "visibility": "external", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayManageable::setLockedDealAddress", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0x35221700", + "visibility": "external", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "DelayManageable::setMaxDelay", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0x4ce3a4c8", + "visibility": "external", + "args": [ + "uint256" + ], + "returns": [] + }, + { + "name": "DelayManageable::setMinDelays", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0x80501f3e", + "visibility": "external", + "args": [ + "address", + "uint256[]", + "uint256[]", + "uint256[]", + "uint256[]" + ], + "returns": [] + }, + { + "name": "DelayManageable::setTokenStatusFilter", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", + "index": "0xf1f19b11", + "visibility": "external", + "args": [ + "address", + "bool" + ], + "returns": [] + }, + { + "name": "DelayVault::CreateVault", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayVault.sol", + "index": "0x1186d922", + "visibility": "external", + "args": [ + "address", + "uint256", + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayVault::Withdraw", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayVault.sol", + "index": "0x194d8101", + "visibility": "external", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "DelayVault::approveTokenRedemption", + "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayVault.sol", + "index": "0xadbad750", + "visibility": "external", + "args": [ + "address", + "bool" + ], + "returns": [] + }, + { + "name": "DelayVaultMigrator::CreateNewPool", + "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", + "index": "0xf0039a9c", + "visibility": "external", + "args": [ + "address", + "uint256", + "uint256", + "uint256", + "uint256", + "address" + ], + "returns": [] + }, + { + "name": "DelayVaultMigrator::finilize", + "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", + "index": "0xec3bffb2", + "visibility": "external", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "DelayVaultMigrator::fullMigrate", + "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", + "index": "0x54267f8d", + "visibility": "external", + "args": [], + "returns": [] + }, + { + "name": "DelayVaultMigrator::withdrawTokensFromV1Vault", + "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", + "index": "0x6f782b43", + "visibility": "external", + "args": [], + "returns": [] + }, + { + "name": "DelayVaultProvider::_registerPool", + "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", + "index": "0x1854fc37", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::createNewDelayVault", + "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", + "index": "0x6ea2b58a", + "visibility": "external", + "args": [ + "address", + "uint256[]" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "DelayVaultProvider::createNewDelayVaultWithSignature", + "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", + "index": "0x7055b37f", + "visibility": "external", + "args": [ + "address", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "DelayVaultProvider::registerPool", + "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", + "index": "0x952ef082", + "visibility": "public", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::upgradeType", + "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", + "index": "0x0aa2846a", + "visibility": "public", + "args": [ + "uint8" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_createLockNFT", + "file": "poolz_delay/code/contracts/DelayVaultState.sol", + "index": "0xd4c9eab9", + "visibility": "internal", + "args": [ + "address", + "uint256", + "uint8", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_handleTransfer", + "file": "poolz_delay/code/contracts/DelayVaultState.sol", + "index": "0xdb514809", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "DelayVaultProvider::_resetTypeIfEmpty", + "file": "poolz_delay/code/contracts/DelayVaultState.sol", + "index": "0x97e51398", + "visibility": "internal", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::beforeTransfer", + "file": "poolz_delay/code/contracts/DelayVaultState.sol", + "index": "0x8a1f7191", + "visibility": "external", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::split", + "file": "poolz_delay/code/contracts/DelayVaultState.sol", + "index": "0xcbb941a3", + "visibility": "external", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::withdraw", + "file": "poolz_delay/code/contracts/DelayVaultState.sol", + "index": "0x5623236b", + "visibility": "external", + "args": [ + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "DelayVaultProvider::_addHoldersSum", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0xdde5558d", + "visibility": "internal", + "args": [ + "address", + "uint256", + "bool" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_finilize", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0x84f3aeed", + "visibility": "internal", + "args": [ + "(address,uint256[],uint256)[]" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_setHoldersSum", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0x45a31710", + "visibility": "internal", + "args": [ + "address", + "uint256", + "bool" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_setTypeToProviderData", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0x6cc69126", + "visibility": "internal", + "args": [ + "uint8", + "uint256", + "(address,uint256[],uint256)" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "DelayVaultProvider::_subHoldersSum", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0xd72f721e", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_upgradeUserTypeIfGreater", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0x2a31dd12", + "visibility": "internal", + "args": [ + "address", + "uint8" + ], + "returns": [] + }, + { + "name": "DelayVaultProvider::_upgradeUserTypeIfMatchesV1", + "file": "poolz_delay/code/contracts/HoldersSum.sol", + "index": "0xf75ddc0b", + "visibility": "internal", + "args": [ + "address", + "uint8", + "uint256" + ], + "returns": [] + }, + { + "name": "BasicProvider::_withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", + "index": "0x2b279427", + "visibility": "internal", + "args": [ + "uint256", + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "DealProvider::createNewPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", + "index": "0x394c07d0", + "visibility": "public", + "args": [ + "address[]", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "DealProvider::registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", + "index": "0x65019c70", + "visibility": "public", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "DealProvider::withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", + "index": "0x3ff12ca0", + "visibility": "public", + "args": [ + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "DealProvider::withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", + "index": "0x08e30c21", + "visibility": "public", + "args": [ + "uint256", + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "BuilderInternal::_createFirstNFT", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/Builder/BuilderInternal.sol", + "index": "0x729ad9c0", + "visibility": "internal", + "args": [ + "address", + "address", + "address", + "uint256", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "BuilderInternal::_createNewNFT", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/Builder/BuilderInternal.sol", + "index": "0x8b3cee5c", + "visibility": "internal", + "args": [ + "address", + "uint256", + "(address,uint256)", + "uint256[]" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "BundleProvider::_createNewSubPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0xd6acf889", + "visibility": "internal", + "args": [ + "address", + "uint256[]" + ], + "returns": [] + }, + { + "name": "BundleProvider::_createNewSubPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0x09660ae3", + "visibility": "internal", + "args": [ + "address", + "uint256[]" + ], + "returns": [] + }, + { + "name": "BundleProvider::_registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0x87e2ad99", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "BundleProvider::createNewPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0x9f961e7f", + "visibility": "external", + "args": [ + "address[]", + "uint256[][]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "BundleProvider::registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0x3e6bf55e", + "visibility": "external", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "BundleProvider::split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0xc86f8550", + "visibility": "public", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "BundleProvider::withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", + "index": "0xcc2ffb80", + "visibility": "public", + "args": [ + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "CollateralProvider::_deposit", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0x319ea11c", + "visibility": "internal", + "args": [ + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "CollateralProvider::_registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0xe4d30ce6", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "CollateralProvider::_splitter", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0x7f1af138", + "visibility": "internal", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "CollateralProvider::handleRefund", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0x44998f32", + "visibility": "public", + "args": [ + "uint256", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "CollateralProvider::handleWithdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0x861fafc3", + "visibility": "public", + "args": [ + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "CollateralProvider::registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0xaaa30084", + "visibility": "public", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "CollateralProvider::split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", + "index": "0xd2c69b5a", + "visibility": "external", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "DealProvider::_registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/DealProvider/DealProvider.sol", + "index": "0xd897ab8a", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "DealProvider::_withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/DealProvider/DealProvider.sol", + "index": "0x2a52ec57", + "visibility": "internal", + "args": [ + "uint256", + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "DealProvider::split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/DealProvider/DealProvider.sol", + "index": "0x51ad9aed", + "visibility": "public", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_afterTokenTransfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0x5819ca77", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_approve", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0x95757b14", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_beforeTokenTransfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xc35d5877", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_burn", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0x19b59936", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_mint", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xb0c4814a", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_spendAllowance", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xd01ab9a6", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::_transfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xf0e797dd", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20::approve", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xb5efce87", + "visibility": "public", + "args": [ + "address", + "uint256" + ], + "returns": [ + "bool" + ] + }, + { + "name": "ERC20::decreaseAllowance", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xf5bde377", + "visibility": "public", + "args": [ + "address", + "uint256" + ], + "returns": [ + "bool" + ] + }, + { + "name": "ERC20::increaseAllowance", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0x4dab44b2", + "visibility": "public", + "args": [ + "address", + "uint256" + ], + "returns": [ + "bool" + ] + }, + { + "name": "ERC20::transfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0xaf122465", + "visibility": "public", + "args": [ + "address", + "uint256" + ], + "returns": [ + "bool" + ] + }, + { + "name": "ERC20::transferFrom", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", + "index": "0x31aeebe7", + "visibility": "public", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [ + "bool" + ] + }, + { + "name": "DelayManageable::ApproveAllowanceERC20", + "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/ERC20Helper.sol", + "index": "0xe8c2dd99", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayManageable::TransferInToken", + "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/ERC20Helper.sol", + "index": "0xf960e27f", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayManageable::TransferToken", + "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/ERC20Helper.sol", + "index": "0xbabff118", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC20Token::FreeTest", + "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/token/ERC20Token.sol", + "index": "0x22ee4c74", + "visibility": "public", + "args": [], + "returns": [] + }, + { + "name": "VaultControl::_deleteDefaultRoyalty", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", + "index": "0x4ab324c2", + "visibility": "internal", + "args": [], + "returns": [] + }, + { + "name": "VaultControl::_resetTokenRoyalty", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", + "index": "0xc0d6bcb6", + "visibility": "internal", + "args": [ + "uint256" + ], + "returns": [] + }, + { + "name": "VaultControl::_setDefaultRoyalty", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", + "index": "0x82c7097a", + "visibility": "internal", + "args": [ + "address", + "uint96" + ], + "returns": [] + }, + { + "name": "VaultControl::_setTokenRoyalty", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", + "index": "0xd847f8f6", + "visibility": "internal", + "args": [ + "uint256", + "address", + "uint96" + ], + "returns": [] + }, + { + "name": "LockDealNFT::__unsafe_increaseBalance", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x44f11aa2", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_afterTokenTransfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x464af8be", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_approve", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x2d28afc7", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "ERC721::_beforeTokenTransfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x7ede2a0a", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_burn", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x2fb0965d", + "visibility": "internal", + "args": [ + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_checkOnERC721Received", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0xf51728c8", + "visibility": "private", + "args": [ + "address", + "address", + "uint256", + "bytes" + ], + "returns": [ + "bool" + ] + }, + { + "name": "LockDealNFT::_mint", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x39c487b3", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_safeMint", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x257c05c4", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_safeMint", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x49874bcb", + "visibility": "internal", + "args": [ + "address", + "uint256", + "bytes" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_safeTransfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x094bb057", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256", + "bytes" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_setApprovalForAll", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0xa5a6e273", + "visibility": "internal", + "args": [ + "address", + "address", + "bool" + ], + "returns": [] + }, + { + "name": "LockDealNFTModifiers::_transfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0xb1ad8318", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::approve", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x297329f1", + "visibility": "public", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::safeTransferFrom", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0xb60a956e", + "visibility": "public", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::safeTransferFrom", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0x017ce98b", + "visibility": "public", + "args": [ + "address", + "address", + "uint256", + "bytes" + ], + "returns": [] + }, + { + "name": "LockDealNFT::setApprovalForAll", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0xd2a26733", + "visibility": "public", + "args": [ + "address", + "bool" + ], + "returns": [] + }, + { + "name": "LockDealNFTInternal::transferFrom", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", + "index": "0xf09dc450", + "visibility": "public", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_addTokenToAllTokensEnumeration", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", + "index": "0x9176a292", + "visibility": "private", + "args": [ + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_addTokenToOwnerEnumeration", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", + "index": "0x705efd27", + "visibility": "private", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_beforeTokenTransfer", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", + "index": "0xe9bdf21a", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_removeTokenFromAllTokensEnumeration", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", + "index": "0xc76d3c55", + "visibility": "private", + "args": [ + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_removeTokenFromOwnerEnumeration", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", + "index": "0xe4f33835", + "visibility": "private", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "BundleProvider::onERC721Received", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/utils/ERC721Holder.sol", + "index": "0x134b5dc3", + "visibility": "public", + "args": [ + "address", + "address", + "uint256", + "bytes" + ], + "returns": [ + "bytes4" + ] + }, + { + "name": "DelayManageable::setGovernorContract", + "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/GovManager.sol", + "index": "0xecf5f0e5", + "visibility": "external", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "LockDealNFT::approvePoolTransfers", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0x46314c85", + "visibility": "external", + "args": [ + "bool" + ], + "returns": [] + }, + { + "name": "LockDealNFT::cloneVaultId", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0x90aad81c", + "visibility": "external", + "args": [ + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::mintAndTransfer", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0xf27df696", + "visibility": "public", + "args": [ + "address", + "address", + "uint256", + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "LockDealNFT::mintForProvider", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0x2abf27c7", + "visibility": "external", + "args": [ + "address", + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "LockDealNFT::onERC721Received", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0xf7889b50", + "visibility": "external", + "args": [ + "address", + "address", + "uint256", + "bytes" + ], + "returns": [ + "bytes4" + ] + }, + { + "name": "LockDealNFT::safeMintAndTransfer", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0xd17162eb", + "visibility": "public", + "args": [ + "address", + "address", + "address", + "uint256", + "address", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "LockDealNFT::setApprovedContract", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0x6529f919", + "visibility": "external", + "args": [ + "address", + "bool" + ], + "returns": [] + }, + { + "name": "LockDealNFT::setBaseURI", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0x105f803f", + "visibility": "external", + "args": [ + "string" + ], + "returns": [] + }, + { + "name": "LockDealNFT::transferFrom", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0xfc7d9f6b", + "visibility": "public", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::updateAllMetadata", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", + "index": "0x589dadff", + "visibility": "external", + "args": [], + "returns": [] + }, + { + "name": "LockDealNFT::_handleReturn", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0x32cf2448", + "visibility": "internal", + "args": [ + "uint256", + "address", + "bool" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_mint", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0x1ea2d3dc", + "visibility": "internal", + "args": [ + "address", + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "LockDealNFT::_split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0x96da225d", + "visibility": "internal", + "args": [ + "uint256", + "address", + "bytes" + ], + "returns": [ + "bool" + ] + }, + { + "name": "LockDealNFT::_split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0xaa31460b", + "visibility": "private", + "args": [ + "uint256", + "address", + "uint256", + "address" + ], + "returns": [ + "bool" + ] + }, + { + "name": "LockDealNFT::_transfer", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0xb1864345", + "visibility": "internal", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealNFT::_withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0xb5e20586", + "visibility": "internal", + "args": [ + "address", + "uint256" + ], + "returns": [ + "bool" + ] + }, + { + "name": "LockDealNFT::_withdrawFromVault", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", + "index": "0x1d6d6d89", + "visibility": "internal", + "args": [ + "uint256", + "uint256", + "address" + ], + "returns": [] + }, + { + "name": "LockDealProvider::_registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", + "index": "0xce5ce0fd", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "LockDealProvider::_withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", + "index": "0xa0c6a1d4", + "visibility": "internal", + "args": [ + "uint256", + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "LockDealProvider::split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", + "index": "0x1b0498ed", + "visibility": "public", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "LockDealProvider::withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", + "index": "0xb6600ef5", + "visibility": "public", + "args": [ + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "MockProvider::createNewPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0xde90f28e", + "visibility": "public", + "args": [ + "address[]", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockProvider::createNewPoolWithTransfer", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0x874d474d", + "visibility": "public", + "args": [ + "address[]", + "uint256[]" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockProvider::handleRefund", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0x199e7e3d", + "visibility": "external", + "args": [ + "uint256", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "MockProvider::handleWithdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0xe0e26ca1", + "visibility": "external", + "args": [ + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "MockProvider::registerNewBundlePool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0xcc8fefd4", + "visibility": "public", + "args": [ + "address", + "address[]", + "uint256[][]" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockProvider::registerNewRefundPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0xd4f6a256", + "visibility": "external", + "args": [ + "address", + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockProvider::registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0x79f15fcc", + "visibility": "external", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "MockProvider::withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", + "index": "0x46be1be1", + "visibility": "public", + "args": [ + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "MockTransfer::beforeTransfer", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockTransfer.sol", + "index": "0x35ec591d", + "visibility": "external", + "args": [ + "address", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "MockVaultManager::_depositByToken", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", + "index": "0x76721734", + "visibility": "internal", + "args": [ + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockVaultManager::depositByToken", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", + "index": "0xbf98b25c", + "visibility": "public", + "args": [ + "address", + "uint256" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockVaultManager::safeDeposit", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", + "index": "0xc4f653f0", + "visibility": "external", + "args": [ + "address", + "uint256", + "address", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "MockVaultManager::setTransferStatus", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", + "index": "0xaac52c47", + "visibility": "external", + "args": [ + "bool" + ], + "returns": [] + }, + { + "name": "MockVaultManager::withdrawByVaultId", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", + "index": "0xac076c8e", + "visibility": "external", + "args": [ + "uint256", + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "DelayManageable::_transferOwnership", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/access/Ownable.sol", + "index": "0x20af8755", + "visibility": "internal", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "DelayManageable::renounceOwnership", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/access/Ownable.sol", + "index": "0xf684922c", + "visibility": "public", + "args": [], + "returns": [] + }, + { + "name": "DelayManageable::transferOwnership", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/access/Ownable.sol", + "index": "0xf4daba9e", + "visibility": "public", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "DelayManageable::_pause", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/Pausable.sol", + "index": "0x3d3095af", + "visibility": "internal", + "args": [], + "returns": [] + }, + { + "name": "DelayManageable::_unpause", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/Pausable.sol", + "index": "0xcd066b0e", + "visibility": "internal", + "args": [], + "returns": [] + }, + { + "name": "DelayManageable::_nonReentrantAfter", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/ReentrancyGuard.sol", + "index": "0xec1b642c", + "visibility": "private", + "args": [], + "returns": [] + }, + { + "name": "DelayManageable::_nonReentrantBefore", + "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/ReentrancyGuard.sol", + "index": "0x58d2bb1a", + "visibility": "private", + "args": [], + "returns": [] + }, + { + "name": "RefundProvider::_registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", + "index": "0x5ea5ccec", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "RefundProvider::createNewRefundPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", + "index": "0x1b5a4f7f", + "visibility": "external", + "args": [ + "address[]", + "uint256[]", + "bytes", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "RefundProvider::onERC721Received", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", + "index": "0xfe8d1ec4", + "visibility": "external", + "args": [ + "address", + "address", + "uint256", + "bytes" + ], + "returns": [ + "bytes4" + ] + }, + { + "name": "RefundProvider::registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", + "index": "0xab228ee1", + "visibility": "public", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "RefundProvider::split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", + "index": "0xf27cfa59", + "visibility": "external", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "RefundProvider::withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", + "index": "0xb87a92c4", + "visibility": "public", + "args": [ + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "SignCheck::_checkData", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/SignCheck.sol", + "index": "0x302e3fb8", + "visibility": "internal", + "args": [ + "address", + "bytes", + "bytes" + ], + "returns": [ + "bool" + ] + }, + { + "name": "SimpleBuilder::buildMassPools", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleBuilder/SimpleBuilder.sol", + "index": "0xc6a1f661", + "visibility": "external", + "args": [ + "address[]", + "((address,uint256)[],uint256)", + "uint256[]", + "bytes" + ], + "returns": [] + }, + { + "name": "SimpleRefundBuilder::_createCollateralProvider", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", + "index": "0xacc589dc", + "visibility": "internal", + "args": [ + "address", + "uint256", + "uint256", + "uint256", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "SimpleRefundBuilder::_createFirstNFT", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", + "index": "0x86853896", + "visibility": "internal", + "args": [ + "address", + "address", + "address", + "uint256", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "SimpleRefundBuilder::_finalizeFirstNFT", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", + "index": "0xc482d18b", + "visibility": "internal", + "args": [ + "uint256", + "address", + "uint256", + "uint256", + "uint256[]", + "bytes" + ], + "returns": [ + "uint256[]" + ] + }, + { + "name": "SimpleRefundBuilder::_userDataIterator", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", + "index": "0xd72c7a5a", + "visibility": "internal", + "args": [ + "address", + "(address,uint256)[]", + "uint256", + "uint256", + "uint256[]", + "uint256[]" + ], + "returns": [] + }, + { + "name": "SimpleRefundBuilder::buildMassPools", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", + "index": "0x65e0aea5", + "visibility": "public", + "args": [ + "address[]", + "((address,uint256)[],uint256)", + "uint256[][]", + "bytes", + "bytes" + ], + "returns": [] + }, + { + "name": "TimedDealProvider::_registerPool", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/TimedDealProvider/TimedDealProvider.sol", + "index": "0x96aa4b2f", + "visibility": "internal", + "args": [ + "uint256", + "uint256[]" + ], + "returns": [] + }, + { + "name": "TimedDealProvider::_withdraw", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/TimedDealProvider/TimedDealProvider.sol", + "index": "0x4400dac3", + "visibility": "internal", + "args": [ + "uint256", + "uint256" + ], + "returns": [ + "uint256", + "bool" + ] + }, + { + "name": "TimedDealProvider::split", + "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/TimedDealProvider/TimedDealProvider.sol", + "index": "0x2b6b4212", + "visibility": "public", + "args": [ + "uint256", + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "Vault::withdraw", + "file": "poolz_delay/code/contracts/VaultManager/contracts/Vault/Vault.sol", + "index": "0xc4f7cea1", + "visibility": "external", + "args": [ + "address", + "uint256" + ], + "returns": [] + }, + { + "name": "VaultControl::_createNewVault", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0x6667d688", + "visibility": "private", + "args": [ + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultControl::_setVaultRoyalty", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0xf1c98a1a", + "visibility": "private", + "args": [ + "uint256", + "address", + "address", + "uint96" + ], + "returns": [] + }, + { + "name": "VaultControl::createNewVault", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0x7d670cca", + "visibility": "external", + "args": [ + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultControl::createNewVault", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0xcc0082bd", + "visibility": "external", + "args": [ + "address", + "address", + "uint96" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultControl::createNewVault", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0xdcdb1d82", + "visibility": "external", + "args": [ + "address", + "uint256" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultControl::createNewVault", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0x621f0e3e", + "visibility": "external", + "args": [ + "address", + "uint256", + "address", + "uint96" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultControl::setActiveStatusForVaultId", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0x561abc7e", + "visibility": "external", + "args": [ + "uint256", + "bool", + "bool" + ], + "returns": [] + }, + { + "name": "VaultControl::setTradeStartTime", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0xff5b243b", + "visibility": "public", + "args": [ + "uint256", + "uint256" + ], + "returns": [] + }, + { + "name": "VaultControl::setTrustee", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0x4c72efed", + "visibility": "external", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "VaultControl::updateTrustee", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", + "index": "0x0e392b75", + "visibility": "external", + "args": [ + "address" + ], + "returns": [] + }, + { + "name": "VaultManager::_deposit", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", + "index": "0xaadbc972", + "visibility": "private", + "args": [ + "address", + "uint256", + "address" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultManager::depositByToken", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", + "index": "0xd411f8e2", + "visibility": "external", + "args": [ + "address", + "uint256" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultManager::safeDeposit", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", + "index": "0x2ac19d62", + "visibility": "external", + "args": [ + "address", + "uint256", + "address", + "bytes" + ], + "returns": [ + "uint256" + ] + }, + { + "name": "VaultManager::withdrawByVaultId", + "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", + "index": "0x063de67a", + "visibility": "external", + "args": [ + "uint256", + "address", + "uint256" + ], + "returns": [] + } +] diff --git a/hardhat.config.ts b/hardhat.config.ts index 137927c..4d194e7 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -17,21 +17,14 @@ function getRemappings() { const config: HardhatUserConfig = { defaultNetwork: "hardhat", solidity: { - compilers: [ - { - version: "0.8.0", - }, - { - version: "0.8.19", - }, - ], - settings: { - evmVersion: "istanbul", - optimizer: { - enabled: true, - runs: 200, - }, + version: '0.8.19', + settings: { + evmVersion: 'istanbul', + optimizer: { + enabled: true, + runs: 200, }, + }, }, networks: { hardhat: { diff --git a/inheritance_code.md b/inheritance_code.md new file mode 100644 index 0000000..b0af15b --- /dev/null +++ b/inheritance_code.md @@ -0,0 +1,309 @@ +```mermaid +flowchart LR +DelayData_9155f34c20d150eb8099ba38b446fce5[DelayData] + +DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc[DelayManageable]:::changed +Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc +GovManager_5e8b21506ea6eb66b3fd508aaa345322 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc +IDelayEvents_b3149be384dbc4c526296040a3c367b7 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc +DelayModifiers_c0b9e210c309772ef56dd0841591b4fd --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc +ERC20Helper_0e870a288adab9c346f2196fefe3657e --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc +ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc + +DelayModifiers_c0b9e210c309772ef56dd0841591b4fd[DelayModifiers] +DelayData_9155f34c20d150eb8099ba38b446fce5 --> DelayModifiers_c0b9e210c309772ef56dd0841591b4fd + +DelayVault_f5460123abdee90050d35f9e67380975[DelayVault]:::changed +DelayView_698a8eea354deecd2b8d6e8464f63177 --> DelayVault_f5460123abdee90050d35f9e67380975 + +DelayView_698a8eea354deecd2b8d6e8464f63177[DelayView] +DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc --> DelayView_698a8eea354deecd2b8d6e8464f63177 + +IDelayEvents_b3149be384dbc4c526296040a3c367b7[IDelayEvents] + +DelayVaultProvider_6df31d2fa90d1179b8c79bbe020c6c77[DelayVaultProvider]:::changed +DelayVaultState_b6a589413294ca29c600484295032793 --> DelayVaultProvider_6df31d2fa90d1179b8c79bbe020c6c77 + +DelayVaultState_b6a589413294ca29c600484295032793[DelayVaultState]:::changed +DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c --> DelayVaultState_b6a589413294ca29c600484295032793 +LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e --> DelayVaultState_b6a589413294ca29c600484295032793 +HoldersSum_45745195b9e0044863673f07462ecd5a --> DelayVaultState_b6a589413294ca29c600484295032793 + +HoldersSum_45745195b9e0044863673f07462ecd5a[HoldersSum]:::changed +ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> HoldersSum_45745195b9e0044863673f07462ecd5a +IDelayVaultProvider_29e63a33f6152478a4ac79e3268a95c4 --> HoldersSum_45745195b9e0044863673f07462ecd5a + +LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e[LastPoolOwnerState] +IBeforeTransfer_fc8cbc88375833aed07390338e647064 --> LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e + +BundleModifiers_50a136975702e1d9502ced217d55576d[BundleModifiers] +BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab --> BundleModifiers_50a136975702e1d9502ced217d55576d + +BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50[BundleProvider] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50 +BundleModifiers_50a136975702e1d9502ced217d55576d --> BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50 +ERC721Holder_4beda974380602ee388e3cc279acc07f --> BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50 + +BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab[BundleProviderState] +IProvider_cd7de875c175f10c05b0017e9965fc7e --> BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab +ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab +ERC165_177a1c81e843900c2e4cb067949baa43 --> BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab + +CollateralProvider_10691dc1cc6124a7a86743236751b4a5[CollateralProvider] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 +IFundsManager_f24b2f68c6c9d2699f36d0867967deda --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 +ERC721Holder_4beda974380602ee388e3cc279acc07f --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 +CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 + +CollateralState_5e24b4fc57b4ddd4c654a75c630a8038[CollateralState] +LockDealState_6021c104c7774472350f4ca705a56d78 --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 +IInnerWithdraw_ab0ba8ea27d05d721c38b8efeef11485 --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 +ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 + +RefundProvider_f55ca362ccc7e64cfed65ee50296a66c[RefundProvider] +RefundState_65f8ad6ac695fe5234d65f64f50e4ace --> RefundProvider_f55ca362ccc7e64cfed65ee50296a66c +IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7 --> RefundProvider_f55ca362ccc7e64cfed65ee50296a66c +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> RefundProvider_f55ca362ccc7e64cfed65ee50296a66c + +RefundState_65f8ad6ac695fe5234d65f64f50e4ace[RefundState] +ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> RefundState_65f8ad6ac695fe5234d65f64f50e4ace +IInnerWithdraw_ab0ba8ea27d05d721c38b8efeef11485 --> RefundState_65f8ad6ac695fe5234d65f64f50e4ace +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> RefundState_65f8ad6ac695fe5234d65f64f50e4ace + +BuilderInternal_0e5efd05c74f6124c77601e228beb7b3[BuilderInternal] +BuilderModifiers_e9f3e838923527a9f759edf2acb4f02e --> BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 + +BuilderModifiers_e9f3e838923527a9f759edf2acb4f02e[BuilderModifiers] +BuilderState_369e18b89b9812fda49310ae14da84f7 --> BuilderModifiers_e9f3e838923527a9f759edf2acb4f02e + +BuilderState_369e18b89b9812fda49310ae14da84f7[BuilderState] + +SimpleBuilder_dd2787ba36a584a5df4517387f4acf28[SimpleBuilder] +ERC721Holder_4beda974380602ee388e3cc279acc07f --> SimpleBuilder_dd2787ba36a584a5df4517387f4acf28 +BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 --> SimpleBuilder_dd2787ba36a584a5df4517387f4acf28 + +SimpleRefundBuilder_c0bb6561a8a86f6637420187fa67dc67[SimpleRefundBuilder] +ERC721Holder_4beda974380602ee388e3cc279acc07f --> SimpleRefundBuilder_c0bb6561a8a86f6637420187fa67dc67 +BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 --> SimpleRefundBuilder_c0bb6561a8a86f6637420187fa67dc67 + +ILockDealNFTEvents_c1d9056d7b295b56c8cf41c2122145be[ILockDealNFTEvents] + +LockDealNFT_e47b9e7cb7bd32c91d9160266a3d8299[LockDealNFT] +LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec --> LockDealNFT_e47b9e7cb7bd32c91d9160266a3d8299 +IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7 --> LockDealNFT_e47b9e7cb7bd32c91d9160266a3d8299 + +LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec[LockDealNFTInternal] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec +LockDealNFTModifiers_659a9616484580625172edf437d8f217 --> LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec + +LockDealNFTModifiers_659a9616484580625172edf437d8f217[LockDealNFTModifiers] +LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee --> LockDealNFTModifiers_659a9616484580625172edf437d8f217 + +LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee[LockDealNFTState] +ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee +ILockDealNFTEvents_c1d9056d7b295b56c8cf41c2122145be --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee +Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee +IERC4906_7050632951d929ba724f0037f9e7717e --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee +ILockDealNFT_3047e10119a81cd6b3b54cc1a6dfbf55 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee +IERC2981_75f84d241d040904f070b04ede15a0e2 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee + +DealProvider_947a0acc5d949314aefec0b89951bccc[DealProvider] +DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c --> DealProvider_947a0acc5d949314aefec0b89951bccc +BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b --> DealProvider_947a0acc5d949314aefec0b89951bccc + +DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c[DealProviderState] + +LockDealProvider_2c8eea3abf41e417e8cc7695941e7373[LockDealProvider] +BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b --> LockDealProvider_2c8eea3abf41e417e8cc7695941e7373 +LockDealState_6021c104c7774472350f4ca705a56d78 --> LockDealProvider_2c8eea3abf41e417e8cc7695941e7373 + +LockDealState_6021c104c7774472350f4ca705a56d78[LockDealState] + +BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b[BasicProvider] +ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b +ISimpleProvider_2c8c821200234d2ab0f67cdca7ed6ebf --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b +ERC165_177a1c81e843900c2e4cb067949baa43 --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b + +ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0[ProviderModifiers] +ProviderState_0611d0a7c620d7c9e9deae9fdd31db40 --> ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 + +ProviderState_0611d0a7c620d7c9e9deae9fdd31db40[ProviderState] +IProvider_cd7de875c175f10c05b0017e9965fc7e --> ProviderState_0611d0a7c620d7c9e9deae9fdd31db40 + +TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422[TimedDealProvider] +LockDealState_6021c104c7774472350f4ca705a56d78 --> TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422 +DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c --> TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422 +BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b --> TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422 + +IBeforeTransfer_fc8cbc88375833aed07390338e647064[IBeforeTransfer] + +IFundsManager_f24b2f68c6c9d2699f36d0867967deda[IFundsManager] + +IInnerWithdraw_ab0ba8ea27d05d721c38b8efeef11485[IInnerWithdraw] + +ILockDealNFT_3047e10119a81cd6b3b54cc1a6dfbf55[ILockDealNFT] +IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd --> ILockDealNFT_3047e10119a81cd6b3b54cc1a6dfbf55 + +IProvider_cd7de875c175f10c05b0017e9965fc7e[IProvider] + +ISimpleProvider_2c8c821200234d2ab0f67cdca7ed6ebf[ISimpleProvider] +IProvider_cd7de875c175f10c05b0017e9965fc7e --> ISimpleProvider_2c8c821200234d2ab0f67cdca7ed6ebf + +MockProvider_9b961c912c620c54e694c1a613217564[MockProvider] +IFundsManager_f24b2f68c6c9d2699f36d0867967deda --> MockProvider_9b961c912c620c54e694c1a613217564 +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> MockProvider_9b961c912c620c54e694c1a613217564 + +MockTransfer_58aa8ce7623e719021665bb42e05fb99[MockTransfer] +IBeforeTransfer_fc8cbc88375833aed07390338e647064 --> MockTransfer_58aa8ce7623e719021665bb42e05fb99 +DealProvider_947a0acc5d949314aefec0b89951bccc --> MockTransfer_58aa8ce7623e719021665bb42e05fb99 + +MockVaultManager_ccc71cd578d4d5555c11a3057448af39[MockVaultManager] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> MockVaultManager_ccc71cd578d4d5555c11a3057448af39 + +DelayMigratorState_b991984f094cafcbde2850e701c68b7f[DelayMigratorState] +IMigrator_e60a1da02e19e1dc00110c211c868725 --> DelayMigratorState_b991984f094cafcbde2850e701c68b7f + +DelayVaultMigrator_b6878dbb61f39821c5c34697f100809a[DelayVaultMigrator]:::changed +DelayMigratorState_b991984f094cafcbde2850e701c68b7f --> DelayVaultMigrator_b6878dbb61f39821c5c34697f100809a +ILockDealV2_c70ef79f7508da97d418c411affec316 --> DelayVaultMigrator_b6878dbb61f39821c5c34697f100809a + +IVault_a136653d18fd950f1568772a50c096a2[IVault] + +Vault_30a71139af369be4d4de80987ff1c9f9[Vault] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> Vault_30a71139af369be4d4de80987ff1c9f9 +IVault_a136653d18fd950f1568772a50c096a2 --> Vault_30a71139af369be4d4de80987ff1c9f9 +ERC20Helper_0e870a288adab9c346f2196fefe3657e --> Vault_30a71139af369be4d4de80987ff1c9f9 + +IVaultManager_33dfafa1b61e307292763635c0134220[IVaultManager] + +SignCheck_8eb3ab0b8d1abd52d4a885ddf354c62f[SignCheck] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> SignCheck_8eb3ab0b8d1abd52d4a885ddf354c62f + +VaultControl_52e356cacb735cae3767d1626fc8e9a4[VaultControl] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 +VaultView_3d9a067ceb7191469916c0c76ad3e973 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 +VaultManagerEvents_8e255d206b01ce0fda484fb5a0f4af08 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 +Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 +ERC2981_837d968019cd5e33f486f5869d25c3ca --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 + +VaultManager_d099f59d998476e47495534c838d4e87[VaultManager] +VaultControl_52e356cacb735cae3767d1626fc8e9a4 --> VaultManager_d099f59d998476e47495534c838d4e87 +SignCheck_8eb3ab0b8d1abd52d4a885ddf354c62f --> VaultManager_d099f59d998476e47495534c838d4e87 +ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225 --> VaultManager_d099f59d998476e47495534c838d4e87 + +VaultManagerEvents_8e255d206b01ce0fda484fb5a0f4af08[VaultManagerEvents] + +VaultState_db1b90a2d34071a0926226ee5dc6a5a8[VaultState] + +VaultView_3d9a067ceb7191469916c0c76ad3e973[VaultView] +VaultState_db1b90a2d34071a0926226ee5dc6a5a8 --> VaultView_3d9a067ceb7191469916c0c76ad3e973 +IVaultManager_33dfafa1b61e307292763635c0134220 --> VaultView_3d9a067ceb7191469916c0c76ad3e973 + +MockTrustee_58e4d9c1239acd6f520e0b90f32fd164[MockTrustee] + +IDelayVaultProvider_29e63a33f6152478a4ac79e3268a95c4[IDelayVaultProvider] +IProvider_cd7de875c175f10c05b0017e9965fc7e --> IDelayVaultProvider_29e63a33f6152478a4ac79e3268a95c4 + +IDelayVaultV1_5efea0143004e183d96271a2ea1faed5[IDelayVaultV1] + +ILockDealV2_c70ef79f7508da97d418c411affec316[ILockDealV2] + +IMigrator_e60a1da02e19e1dc00110c211c868725[IMigrator] + +ISphereXEngine_f482646d0f579a8400d8bd022e2dbc3c[ISphereXEngine] + +SphereXProtected_65b58846f76d41a538e58df9d3925b95[SphereXProtected] +SphereXProtectedBase_c93a6e30d8c3a1f95be46e0e3c4045c1 --> SphereXProtected_65b58846f76d41a538e58df9d3925b95 + +SphereXProtectedBase_c93a6e30d8c3a1f95be46e0e3c4045c1[SphereXProtectedBase] + +Ownable_6f1c1a7a333b8cdb6324af84c0a770c1[Ownable] +Context_9bc521564404bae8d4d098d6065dfb07 --> Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 + +IERC2981_75f84d241d040904f070b04ede15a0e2[IERC2981] +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> IERC2981_75f84d241d040904f070b04ede15a0e2 + +IERC4906_7050632951d929ba724f0037f9e7717e[IERC4906] +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> IERC4906_7050632951d929ba724f0037f9e7717e +IERC721_a429b489dff6845686f9ebdde7c21432 --> IERC4906_7050632951d929ba724f0037f9e7717e + +Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63[Pausable] +Context_9bc521564404bae8d4d098d6065dfb07 --> Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63 +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63 + +ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225[ReentrancyGuard] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225 + +ERC20_bacc8aac7a84088b0fd2f1700c189ee5[ERC20] +Context_9bc521564404bae8d4d098d6065dfb07 --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 +IERC20_a3d3c121ed2d01093a3bfa083f59dd0a --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 +IERC20Metadata_39bd892766396042893279b53af5d94c --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 + +IERC20_a3d3c121ed2d01093a3bfa083f59dd0a[IERC20] + +IERC20Metadata_39bd892766396042893279b53af5d94c[IERC20Metadata] +IERC20_a3d3c121ed2d01093a3bfa083f59dd0a --> IERC20Metadata_39bd892766396042893279b53af5d94c + +ERC721_64e9af5a70638b559e62e8502be9eff1[ERC721] +Context_9bc521564404bae8d4d098d6065dfb07 --> ERC721_64e9af5a70638b559e62e8502be9eff1 +ERC165_177a1c81e843900c2e4cb067949baa43 --> ERC721_64e9af5a70638b559e62e8502be9eff1 +IERC721_a429b489dff6845686f9ebdde7c21432 --> ERC721_64e9af5a70638b559e62e8502be9eff1 +IERC721Metadata_51d7a19a5298a604cf68da1f5a2e7ab7 --> ERC721_64e9af5a70638b559e62e8502be9eff1 +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC721_64e9af5a70638b559e62e8502be9eff1 + +IERC721_a429b489dff6845686f9ebdde7c21432[IERC721] +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> IERC721_a429b489dff6845686f9ebdde7c21432 + +IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7[IERC721Receiver] + +ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827[ERC721Enumerable] +ERC721_64e9af5a70638b559e62e8502be9eff1 --> ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827 +IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd --> ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827 + +IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd[IERC721Enumerable] +IERC721_a429b489dff6845686f9ebdde7c21432 --> IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd + +IERC721Metadata_51d7a19a5298a604cf68da1f5a2e7ab7[IERC721Metadata] +IERC721_a429b489dff6845686f9ebdde7c21432 --> IERC721Metadata_51d7a19a5298a604cf68da1f5a2e7ab7 + +ERC721Holder_4beda974380602ee388e3cc279acc07f[ERC721Holder] +IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7 --> ERC721Holder_4beda974380602ee388e3cc279acc07f +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC721Holder_4beda974380602ee388e3cc279acc07f + +ERC2981_837d968019cd5e33f486f5869d25c3ca[ERC2981] +IERC2981_75f84d241d040904f070b04ede15a0e2 --> ERC2981_837d968019cd5e33f486f5869d25c3ca +ERC165_177a1c81e843900c2e4cb067949baa43 --> ERC2981_837d968019cd5e33f486f5869d25c3ca +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC2981_837d968019cd5e33f486f5869d25c3ca + +Context_9bc521564404bae8d4d098d6065dfb07[Context] + +ERC165_177a1c81e843900c2e4cb067949baa43[ERC165] +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> ERC165_177a1c81e843900c2e4cb067949baa43 + +IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b[IERC165] + +ERC20Helper_0e870a288adab9c346f2196fefe3657e[ERC20Helper] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC20Helper_0e870a288adab9c346f2196fefe3657e + +GovManager_5e8b21506ea6eb66b3fd508aaa345322[GovManager] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> GovManager_5e8b21506ea6eb66b3fd508aaa345322 +Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> GovManager_5e8b21506ea6eb66b3fd508aaa345322 + +ILockedDealV2_313e2236856f188e5cac986cdaccb0d6[ILockedDealV2] + +IVaultManager_2474704c8ba20a41e09b5445f11872e8[IVaultManager] +IERC2981_75f84d241d040904f070b04ede15a0e2 --> IVaultManager_2474704c8ba20a41e09b5445f11872e8 + +ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb[ERC20Token] +SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb +ERC20_bacc8aac7a84088b0fd2f1700c189ee5 --> ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb +Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb + +classDef changed fill:blue +``` From fa5fc84460f4e0259bfa4e53f8ea45e12a672649 Mon Sep 17 00:00:00 2001 From: idoh-spherex Date: Sun, 5 Nov 2023 15:54:10 +0200 Subject: [PATCH 5/6] Fixed gitignore. --- .gitignore | 6 +- code_id_mapping.json | 2084 ------------------------------------------ inheritance_code.md | 309 ------- 3 files changed, 5 insertions(+), 2394 deletions(-) delete mode 100644 code_id_mapping.json delete mode 100644 inheritance_code.md diff --git a/.gitignore b/.gitignore index 713f2d1..3384898 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,8 @@ coverage coverage.json LockDealNFT* DelayVault -VaultManager* \ No newline at end of file +VaultManager* + +# SphereX +code_id_mapping.json +inheritance_code.md \ No newline at end of file diff --git a/code_id_mapping.json b/code_id_mapping.json deleted file mode 100644 index 68b773d..0000000 --- a/code_id_mapping.json +++ /dev/null @@ -1,2084 +0,0 @@ -[ - { - "name": "DelayManageable::Pause", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0xd42fad51", - "visibility": "external", - "args": [], - "returns": [] - }, - { - "name": "DelayManageable::Unpause", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0x7097c7e7", - "visibility": "external", - "args": [], - "returns": [] - }, - { - "name": "DelayManageable::redeemTokensFromVault", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0xba7f8c12", - "visibility": "external", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayManageable::setLockedDealAddress", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0x35221700", - "visibility": "external", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "DelayManageable::setMaxDelay", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0x4ce3a4c8", - "visibility": "external", - "args": [ - "uint256" - ], - "returns": [] - }, - { - "name": "DelayManageable::setMinDelays", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0x80501f3e", - "visibility": "external", - "args": [ - "address", - "uint256[]", - "uint256[]", - "uint256[]", - "uint256[]" - ], - "returns": [] - }, - { - "name": "DelayManageable::setTokenStatusFilter", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayManageable.sol", - "index": "0xf1f19b11", - "visibility": "external", - "args": [ - "address", - "bool" - ], - "returns": [] - }, - { - "name": "DelayVault::CreateVault", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayVault.sol", - "index": "0x1186d922", - "visibility": "external", - "args": [ - "address", - "uint256", - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayVault::Withdraw", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayVault.sol", - "index": "0x194d8101", - "visibility": "external", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "DelayVault::approveTokenRedemption", - "file": "poolz_delay/code/contracts/DelayVault/contracts/DelayVault.sol", - "index": "0xadbad750", - "visibility": "external", - "args": [ - "address", - "bool" - ], - "returns": [] - }, - { - "name": "DelayVaultMigrator::CreateNewPool", - "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", - "index": "0xf0039a9c", - "visibility": "external", - "args": [ - "address", - "uint256", - "uint256", - "uint256", - "uint256", - "address" - ], - "returns": [] - }, - { - "name": "DelayVaultMigrator::finilize", - "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", - "index": "0xec3bffb2", - "visibility": "external", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "DelayVaultMigrator::fullMigrate", - "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", - "index": "0x54267f8d", - "visibility": "external", - "args": [], - "returns": [] - }, - { - "name": "DelayVaultMigrator::withdrawTokensFromV1Vault", - "file": "poolz_delay/code/contracts/MigratorV1/DelayVaultMigrator.sol", - "index": "0x6f782b43", - "visibility": "external", - "args": [], - "returns": [] - }, - { - "name": "DelayVaultProvider::_registerPool", - "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", - "index": "0x1854fc37", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::createNewDelayVault", - "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", - "index": "0x6ea2b58a", - "visibility": "external", - "args": [ - "address", - "uint256[]" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "DelayVaultProvider::createNewDelayVaultWithSignature", - "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", - "index": "0x7055b37f", - "visibility": "external", - "args": [ - "address", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "DelayVaultProvider::registerPool", - "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", - "index": "0x952ef082", - "visibility": "public", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::upgradeType", - "file": "poolz_delay/code/contracts/DelayVaultProvider.sol", - "index": "0x0aa2846a", - "visibility": "public", - "args": [ - "uint8" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_createLockNFT", - "file": "poolz_delay/code/contracts/DelayVaultState.sol", - "index": "0xd4c9eab9", - "visibility": "internal", - "args": [ - "address", - "uint256", - "uint8", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_handleTransfer", - "file": "poolz_delay/code/contracts/DelayVaultState.sol", - "index": "0xdb514809", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "DelayVaultProvider::_resetTypeIfEmpty", - "file": "poolz_delay/code/contracts/DelayVaultState.sol", - "index": "0x97e51398", - "visibility": "internal", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::beforeTransfer", - "file": "poolz_delay/code/contracts/DelayVaultState.sol", - "index": "0x8a1f7191", - "visibility": "external", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::split", - "file": "poolz_delay/code/contracts/DelayVaultState.sol", - "index": "0xcbb941a3", - "visibility": "external", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::withdraw", - "file": "poolz_delay/code/contracts/DelayVaultState.sol", - "index": "0x5623236b", - "visibility": "external", - "args": [ - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "DelayVaultProvider::_addHoldersSum", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0xdde5558d", - "visibility": "internal", - "args": [ - "address", - "uint256", - "bool" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_finilize", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0x84f3aeed", - "visibility": "internal", - "args": [ - "(address,uint256[],uint256)[]" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_setHoldersSum", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0x45a31710", - "visibility": "internal", - "args": [ - "address", - "uint256", - "bool" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_setTypeToProviderData", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0x6cc69126", - "visibility": "internal", - "args": [ - "uint8", - "uint256", - "(address,uint256[],uint256)" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "DelayVaultProvider::_subHoldersSum", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0xd72f721e", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_upgradeUserTypeIfGreater", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0x2a31dd12", - "visibility": "internal", - "args": [ - "address", - "uint8" - ], - "returns": [] - }, - { - "name": "DelayVaultProvider::_upgradeUserTypeIfMatchesV1", - "file": "poolz_delay/code/contracts/HoldersSum.sol", - "index": "0xf75ddc0b", - "visibility": "internal", - "args": [ - "address", - "uint8", - "uint256" - ], - "returns": [] - }, - { - "name": "BasicProvider::_withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", - "index": "0x2b279427", - "visibility": "internal", - "args": [ - "uint256", - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "DealProvider::createNewPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", - "index": "0x394c07d0", - "visibility": "public", - "args": [ - "address[]", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "DealProvider::registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", - "index": "0x65019c70", - "visibility": "public", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "DealProvider::withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", - "index": "0x3ff12ca0", - "visibility": "public", - "args": [ - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "DealProvider::withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/Provider/BasicProvider.sol", - "index": "0x08e30c21", - "visibility": "public", - "args": [ - "uint256", - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "BuilderInternal::_createFirstNFT", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/Builder/BuilderInternal.sol", - "index": "0x729ad9c0", - "visibility": "internal", - "args": [ - "address", - "address", - "address", - "uint256", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "BuilderInternal::_createNewNFT", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/Builder/BuilderInternal.sol", - "index": "0x8b3cee5c", - "visibility": "internal", - "args": [ - "address", - "uint256", - "(address,uint256)", - "uint256[]" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "BundleProvider::_createNewSubPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0xd6acf889", - "visibility": "internal", - "args": [ - "address", - "uint256[]" - ], - "returns": [] - }, - { - "name": "BundleProvider::_createNewSubPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0x09660ae3", - "visibility": "internal", - "args": [ - "address", - "uint256[]" - ], - "returns": [] - }, - { - "name": "BundleProvider::_registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0x87e2ad99", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "BundleProvider::createNewPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0x9f961e7f", - "visibility": "external", - "args": [ - "address[]", - "uint256[][]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "BundleProvider::registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0x3e6bf55e", - "visibility": "external", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "BundleProvider::split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0xc86f8550", - "visibility": "public", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "BundleProvider::withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/BundleProvider/BundleProvider.sol", - "index": "0xcc2ffb80", - "visibility": "public", - "args": [ - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "CollateralProvider::_deposit", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0x319ea11c", - "visibility": "internal", - "args": [ - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "CollateralProvider::_registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0xe4d30ce6", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "CollateralProvider::_splitter", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0x7f1af138", - "visibility": "internal", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "CollateralProvider::handleRefund", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0x44998f32", - "visibility": "public", - "args": [ - "uint256", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "CollateralProvider::handleWithdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0x861fafc3", - "visibility": "public", - "args": [ - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "CollateralProvider::registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0xaaa30084", - "visibility": "public", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "CollateralProvider::split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/CollateralProvider/CollateralProvider.sol", - "index": "0xd2c69b5a", - "visibility": "external", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "DealProvider::_registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/DealProvider/DealProvider.sol", - "index": "0xd897ab8a", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "DealProvider::_withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/DealProvider/DealProvider.sol", - "index": "0x2a52ec57", - "visibility": "internal", - "args": [ - "uint256", - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "DealProvider::split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/DealProvider/DealProvider.sol", - "index": "0x51ad9aed", - "visibility": "public", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_afterTokenTransfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0x5819ca77", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_approve", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0x95757b14", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_beforeTokenTransfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xc35d5877", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_burn", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0x19b59936", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_mint", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xb0c4814a", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_spendAllowance", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xd01ab9a6", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::_transfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xf0e797dd", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20::approve", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xb5efce87", - "visibility": "public", - "args": [ - "address", - "uint256" - ], - "returns": [ - "bool" - ] - }, - { - "name": "ERC20::decreaseAllowance", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xf5bde377", - "visibility": "public", - "args": [ - "address", - "uint256" - ], - "returns": [ - "bool" - ] - }, - { - "name": "ERC20::increaseAllowance", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0x4dab44b2", - "visibility": "public", - "args": [ - "address", - "uint256" - ], - "returns": [ - "bool" - ] - }, - { - "name": "ERC20::transfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0xaf122465", - "visibility": "public", - "args": [ - "address", - "uint256" - ], - "returns": [ - "bool" - ] - }, - { - "name": "ERC20::transferFrom", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/ERC20.sol", - "index": "0x31aeebe7", - "visibility": "public", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [ - "bool" - ] - }, - { - "name": "DelayManageable::ApproveAllowanceERC20", - "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/ERC20Helper.sol", - "index": "0xe8c2dd99", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayManageable::TransferInToken", - "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/ERC20Helper.sol", - "index": "0xf960e27f", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayManageable::TransferToken", - "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/ERC20Helper.sol", - "index": "0xbabff118", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC20Token::FreeTest", - "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/token/ERC20Token.sol", - "index": "0x22ee4c74", - "visibility": "public", - "args": [], - "returns": [] - }, - { - "name": "VaultControl::_deleteDefaultRoyalty", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", - "index": "0x4ab324c2", - "visibility": "internal", - "args": [], - "returns": [] - }, - { - "name": "VaultControl::_resetTokenRoyalty", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", - "index": "0xc0d6bcb6", - "visibility": "internal", - "args": [ - "uint256" - ], - "returns": [] - }, - { - "name": "VaultControl::_setDefaultRoyalty", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", - "index": "0x82c7097a", - "visibility": "internal", - "args": [ - "address", - "uint96" - ], - "returns": [] - }, - { - "name": "VaultControl::_setTokenRoyalty", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/common/ERC2981.sol", - "index": "0xd847f8f6", - "visibility": "internal", - "args": [ - "uint256", - "address", - "uint96" - ], - "returns": [] - }, - { - "name": "LockDealNFT::__unsafe_increaseBalance", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x44f11aa2", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_afterTokenTransfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x464af8be", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_approve", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x2d28afc7", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "ERC721::_beforeTokenTransfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x7ede2a0a", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_burn", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x2fb0965d", - "visibility": "internal", - "args": [ - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_checkOnERC721Received", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0xf51728c8", - "visibility": "private", - "args": [ - "address", - "address", - "uint256", - "bytes" - ], - "returns": [ - "bool" - ] - }, - { - "name": "LockDealNFT::_mint", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x39c487b3", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_safeMint", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x257c05c4", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_safeMint", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x49874bcb", - "visibility": "internal", - "args": [ - "address", - "uint256", - "bytes" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_safeTransfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x094bb057", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256", - "bytes" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_setApprovalForAll", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0xa5a6e273", - "visibility": "internal", - "args": [ - "address", - "address", - "bool" - ], - "returns": [] - }, - { - "name": "LockDealNFTModifiers::_transfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0xb1ad8318", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::approve", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x297329f1", - "visibility": "public", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::safeTransferFrom", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0xb60a956e", - "visibility": "public", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::safeTransferFrom", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0x017ce98b", - "visibility": "public", - "args": [ - "address", - "address", - "uint256", - "bytes" - ], - "returns": [] - }, - { - "name": "LockDealNFT::setApprovalForAll", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0xd2a26733", - "visibility": "public", - "args": [ - "address", - "bool" - ], - "returns": [] - }, - { - "name": "LockDealNFTInternal::transferFrom", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/ERC721.sol", - "index": "0xf09dc450", - "visibility": "public", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_addTokenToAllTokensEnumeration", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", - "index": "0x9176a292", - "visibility": "private", - "args": [ - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_addTokenToOwnerEnumeration", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", - "index": "0x705efd27", - "visibility": "private", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_beforeTokenTransfer", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", - "index": "0xe9bdf21a", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_removeTokenFromAllTokensEnumeration", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", - "index": "0xc76d3c55", - "visibility": "private", - "args": [ - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_removeTokenFromOwnerEnumeration", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/extensions/ERC721Enumerable.sol", - "index": "0xe4f33835", - "visibility": "private", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "BundleProvider::onERC721Received", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/token/ERC721/utils/ERC721Holder.sol", - "index": "0x134b5dc3", - "visibility": "public", - "args": [ - "address", - "address", - "uint256", - "bytes" - ], - "returns": [ - "bytes4" - ] - }, - { - "name": "DelayManageable::setGovernorContract", - "file": "poolz_delay/code/node_modules/@spherex-xyz/poolz-helper-v2/contracts/GovManager.sol", - "index": "0xecf5f0e5", - "visibility": "external", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "LockDealNFT::approvePoolTransfers", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0x46314c85", - "visibility": "external", - "args": [ - "bool" - ], - "returns": [] - }, - { - "name": "LockDealNFT::cloneVaultId", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0x90aad81c", - "visibility": "external", - "args": [ - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::mintAndTransfer", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0xf27df696", - "visibility": "public", - "args": [ - "address", - "address", - "uint256", - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "LockDealNFT::mintForProvider", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0x2abf27c7", - "visibility": "external", - "args": [ - "address", - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "LockDealNFT::onERC721Received", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0xf7889b50", - "visibility": "external", - "args": [ - "address", - "address", - "uint256", - "bytes" - ], - "returns": [ - "bytes4" - ] - }, - { - "name": "LockDealNFT::safeMintAndTransfer", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0xd17162eb", - "visibility": "public", - "args": [ - "address", - "address", - "address", - "uint256", - "address", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "LockDealNFT::setApprovedContract", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0x6529f919", - "visibility": "external", - "args": [ - "address", - "bool" - ], - "returns": [] - }, - { - "name": "LockDealNFT::setBaseURI", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0x105f803f", - "visibility": "external", - "args": [ - "string" - ], - "returns": [] - }, - { - "name": "LockDealNFT::transferFrom", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0xfc7d9f6b", - "visibility": "public", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::updateAllMetadata", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFT.sol", - "index": "0x589dadff", - "visibility": "external", - "args": [], - "returns": [] - }, - { - "name": "LockDealNFT::_handleReturn", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0x32cf2448", - "visibility": "internal", - "args": [ - "uint256", - "address", - "bool" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_mint", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0x1ea2d3dc", - "visibility": "internal", - "args": [ - "address", - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "LockDealNFT::_split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0x96da225d", - "visibility": "internal", - "args": [ - "uint256", - "address", - "bytes" - ], - "returns": [ - "bool" - ] - }, - { - "name": "LockDealNFT::_split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0xaa31460b", - "visibility": "private", - "args": [ - "uint256", - "address", - "uint256", - "address" - ], - "returns": [ - "bool" - ] - }, - { - "name": "LockDealNFT::_transfer", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0xb1864345", - "visibility": "internal", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealNFT::_withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0xb5e20586", - "visibility": "internal", - "args": [ - "address", - "uint256" - ], - "returns": [ - "bool" - ] - }, - { - "name": "LockDealNFT::_withdrawFromVault", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/LockDealNFT/LockDealNFTInternal.sol", - "index": "0x1d6d6d89", - "visibility": "internal", - "args": [ - "uint256", - "uint256", - "address" - ], - "returns": [] - }, - { - "name": "LockDealProvider::_registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", - "index": "0xce5ce0fd", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "LockDealProvider::_withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", - "index": "0xa0c6a1d4", - "visibility": "internal", - "args": [ - "uint256", - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "LockDealProvider::split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", - "index": "0x1b0498ed", - "visibility": "public", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "LockDealProvider::withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/LockProvider/LockDealProvider.sol", - "index": "0xb6600ef5", - "visibility": "public", - "args": [ - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "MockProvider::createNewPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0xde90f28e", - "visibility": "public", - "args": [ - "address[]", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockProvider::createNewPoolWithTransfer", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0x874d474d", - "visibility": "public", - "args": [ - "address[]", - "uint256[]" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockProvider::handleRefund", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0x199e7e3d", - "visibility": "external", - "args": [ - "uint256", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "MockProvider::handleWithdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0xe0e26ca1", - "visibility": "external", - "args": [ - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "MockProvider::registerNewBundlePool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0xcc8fefd4", - "visibility": "public", - "args": [ - "address", - "address[]", - "uint256[][]" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockProvider::registerNewRefundPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0xd4f6a256", - "visibility": "external", - "args": [ - "address", - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockProvider::registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0x79f15fcc", - "visibility": "external", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "MockProvider::withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockProvider.sol", - "index": "0x46be1be1", - "visibility": "public", - "args": [ - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "MockTransfer::beforeTransfer", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockTransfer.sol", - "index": "0x35ec591d", - "visibility": "external", - "args": [ - "address", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "MockVaultManager::_depositByToken", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", - "index": "0x76721734", - "visibility": "internal", - "args": [ - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockVaultManager::depositByToken", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", - "index": "0xbf98b25c", - "visibility": "public", - "args": [ - "address", - "uint256" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockVaultManager::safeDeposit", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", - "index": "0xc4f653f0", - "visibility": "external", - "args": [ - "address", - "uint256", - "address", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "MockVaultManager::setTransferStatus", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", - "index": "0xaac52c47", - "visibility": "external", - "args": [ - "bool" - ], - "returns": [] - }, - { - "name": "MockVaultManager::withdrawByVaultId", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/mock/MockVaultManager.sol", - "index": "0xac076c8e", - "visibility": "external", - "args": [ - "uint256", - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "DelayManageable::_transferOwnership", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/access/Ownable.sol", - "index": "0x20af8755", - "visibility": "internal", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "DelayManageable::renounceOwnership", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/access/Ownable.sol", - "index": "0xf684922c", - "visibility": "public", - "args": [], - "returns": [] - }, - { - "name": "DelayManageable::transferOwnership", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/access/Ownable.sol", - "index": "0xf4daba9e", - "visibility": "public", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "DelayManageable::_pause", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/Pausable.sol", - "index": "0x3d3095af", - "visibility": "internal", - "args": [], - "returns": [] - }, - { - "name": "DelayManageable::_unpause", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/Pausable.sol", - "index": "0xcd066b0e", - "visibility": "internal", - "args": [], - "returns": [] - }, - { - "name": "DelayManageable::_nonReentrantAfter", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/ReentrancyGuard.sol", - "index": "0xec1b642c", - "visibility": "private", - "args": [], - "returns": [] - }, - { - "name": "DelayManageable::_nonReentrantBefore", - "file": "poolz_delay/code/node_modules/@spherex-xyz/openzeppelin-solidity/contracts/security/ReentrancyGuard.sol", - "index": "0x58d2bb1a", - "visibility": "private", - "args": [], - "returns": [] - }, - { - "name": "RefundProvider::_registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", - "index": "0x5ea5ccec", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "RefundProvider::createNewRefundPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", - "index": "0x1b5a4f7f", - "visibility": "external", - "args": [ - "address[]", - "uint256[]", - "bytes", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "RefundProvider::onERC721Received", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", - "index": "0xfe8d1ec4", - "visibility": "external", - "args": [ - "address", - "address", - "uint256", - "bytes" - ], - "returns": [ - "bytes4" - ] - }, - { - "name": "RefundProvider::registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", - "index": "0xab228ee1", - "visibility": "public", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "RefundProvider::split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", - "index": "0xf27cfa59", - "visibility": "external", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "RefundProvider::withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/AdvancedProviders/RefundProvider/RefundProvider.sol", - "index": "0xb87a92c4", - "visibility": "public", - "args": [ - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "SignCheck::_checkData", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/SignCheck.sol", - "index": "0x302e3fb8", - "visibility": "internal", - "args": [ - "address", - "bytes", - "bytes" - ], - "returns": [ - "bool" - ] - }, - { - "name": "SimpleBuilder::buildMassPools", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleBuilder/SimpleBuilder.sol", - "index": "0xc6a1f661", - "visibility": "external", - "args": [ - "address[]", - "((address,uint256)[],uint256)", - "uint256[]", - "bytes" - ], - "returns": [] - }, - { - "name": "SimpleRefundBuilder::_createCollateralProvider", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", - "index": "0xacc589dc", - "visibility": "internal", - "args": [ - "address", - "uint256", - "uint256", - "uint256", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "SimpleRefundBuilder::_createFirstNFT", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", - "index": "0x86853896", - "visibility": "internal", - "args": [ - "address", - "address", - "address", - "uint256", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "SimpleRefundBuilder::_finalizeFirstNFT", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", - "index": "0xc482d18b", - "visibility": "internal", - "args": [ - "uint256", - "address", - "uint256", - "uint256", - "uint256[]", - "bytes" - ], - "returns": [ - "uint256[]" - ] - }, - { - "name": "SimpleRefundBuilder::_userDataIterator", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", - "index": "0xd72c7a5a", - "visibility": "internal", - "args": [ - "address", - "(address,uint256)[]", - "uint256", - "uint256", - "uint256[]", - "uint256[]" - ], - "returns": [] - }, - { - "name": "SimpleRefundBuilder::buildMassPools", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/Builders/SimpleRefundBuilder/SimpleRefundBuilder.sol", - "index": "0x65e0aea5", - "visibility": "public", - "args": [ - "address[]", - "((address,uint256)[],uint256)", - "uint256[][]", - "bytes", - "bytes" - ], - "returns": [] - }, - { - "name": "TimedDealProvider::_registerPool", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/TimedDealProvider/TimedDealProvider.sol", - "index": "0x96aa4b2f", - "visibility": "internal", - "args": [ - "uint256", - "uint256[]" - ], - "returns": [] - }, - { - "name": "TimedDealProvider::_withdraw", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/TimedDealProvider/TimedDealProvider.sol", - "index": "0x4400dac3", - "visibility": "internal", - "args": [ - "uint256", - "uint256" - ], - "returns": [ - "uint256", - "bool" - ] - }, - { - "name": "TimedDealProvider::split", - "file": "poolz_delay/code/contracts/LockDealNFT/contracts/SimpleProviders/TimedDealProvider/TimedDealProvider.sol", - "index": "0x2b6b4212", - "visibility": "public", - "args": [ - "uint256", - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "Vault::withdraw", - "file": "poolz_delay/code/contracts/VaultManager/contracts/Vault/Vault.sol", - "index": "0xc4f7cea1", - "visibility": "external", - "args": [ - "address", - "uint256" - ], - "returns": [] - }, - { - "name": "VaultControl::_createNewVault", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0x6667d688", - "visibility": "private", - "args": [ - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultControl::_setVaultRoyalty", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0xf1c98a1a", - "visibility": "private", - "args": [ - "uint256", - "address", - "address", - "uint96" - ], - "returns": [] - }, - { - "name": "VaultControl::createNewVault", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0x7d670cca", - "visibility": "external", - "args": [ - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultControl::createNewVault", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0xcc0082bd", - "visibility": "external", - "args": [ - "address", - "address", - "uint96" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultControl::createNewVault", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0xdcdb1d82", - "visibility": "external", - "args": [ - "address", - "uint256" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultControl::createNewVault", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0x621f0e3e", - "visibility": "external", - "args": [ - "address", - "uint256", - "address", - "uint96" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultControl::setActiveStatusForVaultId", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0x561abc7e", - "visibility": "external", - "args": [ - "uint256", - "bool", - "bool" - ], - "returns": [] - }, - { - "name": "VaultControl::setTradeStartTime", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0xff5b243b", - "visibility": "public", - "args": [ - "uint256", - "uint256" - ], - "returns": [] - }, - { - "name": "VaultControl::setTrustee", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0x4c72efed", - "visibility": "external", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "VaultControl::updateTrustee", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultControl.sol", - "index": "0x0e392b75", - "visibility": "external", - "args": [ - "address" - ], - "returns": [] - }, - { - "name": "VaultManager::_deposit", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", - "index": "0xaadbc972", - "visibility": "private", - "args": [ - "address", - "uint256", - "address" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultManager::depositByToken", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", - "index": "0xd411f8e2", - "visibility": "external", - "args": [ - "address", - "uint256" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultManager::safeDeposit", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", - "index": "0x2ac19d62", - "visibility": "external", - "args": [ - "address", - "uint256", - "address", - "bytes" - ], - "returns": [ - "uint256" - ] - }, - { - "name": "VaultManager::withdrawByVaultId", - "file": "poolz_delay/code/contracts/VaultManager/contracts/VaultManager/VaultManager.sol", - "index": "0x063de67a", - "visibility": "external", - "args": [ - "uint256", - "address", - "uint256" - ], - "returns": [] - } -] diff --git a/inheritance_code.md b/inheritance_code.md deleted file mode 100644 index b0af15b..0000000 --- a/inheritance_code.md +++ /dev/null @@ -1,309 +0,0 @@ -```mermaid -flowchart LR -DelayData_9155f34c20d150eb8099ba38b446fce5[DelayData] - -DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc[DelayManageable]:::changed -Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc -GovManager_5e8b21506ea6eb66b3fd508aaa345322 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc -IDelayEvents_b3149be384dbc4c526296040a3c367b7 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc -DelayModifiers_c0b9e210c309772ef56dd0841591b4fd --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc -ERC20Helper_0e870a288adab9c346f2196fefe3657e --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc -ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225 --> DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc - -DelayModifiers_c0b9e210c309772ef56dd0841591b4fd[DelayModifiers] -DelayData_9155f34c20d150eb8099ba38b446fce5 --> DelayModifiers_c0b9e210c309772ef56dd0841591b4fd - -DelayVault_f5460123abdee90050d35f9e67380975[DelayVault]:::changed -DelayView_698a8eea354deecd2b8d6e8464f63177 --> DelayVault_f5460123abdee90050d35f9e67380975 - -DelayView_698a8eea354deecd2b8d6e8464f63177[DelayView] -DelayManageable_eb7b41a6a20f09b00682ec2e1ffe17bc --> DelayView_698a8eea354deecd2b8d6e8464f63177 - -IDelayEvents_b3149be384dbc4c526296040a3c367b7[IDelayEvents] - -DelayVaultProvider_6df31d2fa90d1179b8c79bbe020c6c77[DelayVaultProvider]:::changed -DelayVaultState_b6a589413294ca29c600484295032793 --> DelayVaultProvider_6df31d2fa90d1179b8c79bbe020c6c77 - -DelayVaultState_b6a589413294ca29c600484295032793[DelayVaultState]:::changed -DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c --> DelayVaultState_b6a589413294ca29c600484295032793 -LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e --> DelayVaultState_b6a589413294ca29c600484295032793 -HoldersSum_45745195b9e0044863673f07462ecd5a --> DelayVaultState_b6a589413294ca29c600484295032793 - -HoldersSum_45745195b9e0044863673f07462ecd5a[HoldersSum]:::changed -ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> HoldersSum_45745195b9e0044863673f07462ecd5a -IDelayVaultProvider_29e63a33f6152478a4ac79e3268a95c4 --> HoldersSum_45745195b9e0044863673f07462ecd5a - -LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e[LastPoolOwnerState] -IBeforeTransfer_fc8cbc88375833aed07390338e647064 --> LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> LastPoolOwnerState_4d49097e6dd36d0d03b3f12c71fb911e - -BundleModifiers_50a136975702e1d9502ced217d55576d[BundleModifiers] -BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab --> BundleModifiers_50a136975702e1d9502ced217d55576d - -BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50[BundleProvider] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50 -BundleModifiers_50a136975702e1d9502ced217d55576d --> BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50 -ERC721Holder_4beda974380602ee388e3cc279acc07f --> BundleProvider_81b0cbd6feca7ce5fed67ef190e1ae50 - -BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab[BundleProviderState] -IProvider_cd7de875c175f10c05b0017e9965fc7e --> BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab -ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab -ERC165_177a1c81e843900c2e4cb067949baa43 --> BundleProviderState_d950f0fcbaa89c09b6deb5bf3f3f12ab - -CollateralProvider_10691dc1cc6124a7a86743236751b4a5[CollateralProvider] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 -IFundsManager_f24b2f68c6c9d2699f36d0867967deda --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 -ERC721Holder_4beda974380602ee388e3cc279acc07f --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 -CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 --> CollateralProvider_10691dc1cc6124a7a86743236751b4a5 - -CollateralState_5e24b4fc57b4ddd4c654a75c630a8038[CollateralState] -LockDealState_6021c104c7774472350f4ca705a56d78 --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 -IInnerWithdraw_ab0ba8ea27d05d721c38b8efeef11485 --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 -ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> CollateralState_5e24b4fc57b4ddd4c654a75c630a8038 - -RefundProvider_f55ca362ccc7e64cfed65ee50296a66c[RefundProvider] -RefundState_65f8ad6ac695fe5234d65f64f50e4ace --> RefundProvider_f55ca362ccc7e64cfed65ee50296a66c -IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7 --> RefundProvider_f55ca362ccc7e64cfed65ee50296a66c -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> RefundProvider_f55ca362ccc7e64cfed65ee50296a66c - -RefundState_65f8ad6ac695fe5234d65f64f50e4ace[RefundState] -ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> RefundState_65f8ad6ac695fe5234d65f64f50e4ace -IInnerWithdraw_ab0ba8ea27d05d721c38b8efeef11485 --> RefundState_65f8ad6ac695fe5234d65f64f50e4ace -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> RefundState_65f8ad6ac695fe5234d65f64f50e4ace - -BuilderInternal_0e5efd05c74f6124c77601e228beb7b3[BuilderInternal] -BuilderModifiers_e9f3e838923527a9f759edf2acb4f02e --> BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 - -BuilderModifiers_e9f3e838923527a9f759edf2acb4f02e[BuilderModifiers] -BuilderState_369e18b89b9812fda49310ae14da84f7 --> BuilderModifiers_e9f3e838923527a9f759edf2acb4f02e - -BuilderState_369e18b89b9812fda49310ae14da84f7[BuilderState] - -SimpleBuilder_dd2787ba36a584a5df4517387f4acf28[SimpleBuilder] -ERC721Holder_4beda974380602ee388e3cc279acc07f --> SimpleBuilder_dd2787ba36a584a5df4517387f4acf28 -BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 --> SimpleBuilder_dd2787ba36a584a5df4517387f4acf28 - -SimpleRefundBuilder_c0bb6561a8a86f6637420187fa67dc67[SimpleRefundBuilder] -ERC721Holder_4beda974380602ee388e3cc279acc07f --> SimpleRefundBuilder_c0bb6561a8a86f6637420187fa67dc67 -BuilderInternal_0e5efd05c74f6124c77601e228beb7b3 --> SimpleRefundBuilder_c0bb6561a8a86f6637420187fa67dc67 - -ILockDealNFTEvents_c1d9056d7b295b56c8cf41c2122145be[ILockDealNFTEvents] - -LockDealNFT_e47b9e7cb7bd32c91d9160266a3d8299[LockDealNFT] -LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec --> LockDealNFT_e47b9e7cb7bd32c91d9160266a3d8299 -IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7 --> LockDealNFT_e47b9e7cb7bd32c91d9160266a3d8299 - -LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec[LockDealNFTInternal] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec -LockDealNFTModifiers_659a9616484580625172edf437d8f217 --> LockDealNFTInternal_097e281e418e0c46b07ece5fe92022ec - -LockDealNFTModifiers_659a9616484580625172edf437d8f217[LockDealNFTModifiers] -LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee --> LockDealNFTModifiers_659a9616484580625172edf437d8f217 - -LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee[LockDealNFTState] -ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee -ILockDealNFTEvents_c1d9056d7b295b56c8cf41c2122145be --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee -Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee -IERC4906_7050632951d929ba724f0037f9e7717e --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee -ILockDealNFT_3047e10119a81cd6b3b54cc1a6dfbf55 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee -IERC2981_75f84d241d040904f070b04ede15a0e2 --> LockDealNFTState_0039f66f65e99ed8fe855e568cb4e3ee - -DealProvider_947a0acc5d949314aefec0b89951bccc[DealProvider] -DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c --> DealProvider_947a0acc5d949314aefec0b89951bccc -BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b --> DealProvider_947a0acc5d949314aefec0b89951bccc - -DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c[DealProviderState] - -LockDealProvider_2c8eea3abf41e417e8cc7695941e7373[LockDealProvider] -BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b --> LockDealProvider_2c8eea3abf41e417e8cc7695941e7373 -LockDealState_6021c104c7774472350f4ca705a56d78 --> LockDealProvider_2c8eea3abf41e417e8cc7695941e7373 - -LockDealState_6021c104c7774472350f4ca705a56d78[LockDealState] - -BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b[BasicProvider] -ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b -ISimpleProvider_2c8c821200234d2ab0f67cdca7ed6ebf --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b -ERC165_177a1c81e843900c2e4cb067949baa43 --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b - -ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0[ProviderModifiers] -ProviderState_0611d0a7c620d7c9e9deae9fdd31db40 --> ProviderModifiers_c5a7598994e2a7fcf82ff1be81ba1db0 - -ProviderState_0611d0a7c620d7c9e9deae9fdd31db40[ProviderState] -IProvider_cd7de875c175f10c05b0017e9965fc7e --> ProviderState_0611d0a7c620d7c9e9deae9fdd31db40 - -TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422[TimedDealProvider] -LockDealState_6021c104c7774472350f4ca705a56d78 --> TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422 -DealProviderState_00d44198c82c22ee03a4dcd2f22eb54c --> TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422 -BasicProvider_b9a19633308c0ebe33b88f62ef5cce8b --> TimedDealProvider_0ca9bd1172e8bd8ca06365e933515422 - -IBeforeTransfer_fc8cbc88375833aed07390338e647064[IBeforeTransfer] - -IFundsManager_f24b2f68c6c9d2699f36d0867967deda[IFundsManager] - -IInnerWithdraw_ab0ba8ea27d05d721c38b8efeef11485[IInnerWithdraw] - -ILockDealNFT_3047e10119a81cd6b3b54cc1a6dfbf55[ILockDealNFT] -IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd --> ILockDealNFT_3047e10119a81cd6b3b54cc1a6dfbf55 - -IProvider_cd7de875c175f10c05b0017e9965fc7e[IProvider] - -ISimpleProvider_2c8c821200234d2ab0f67cdca7ed6ebf[ISimpleProvider] -IProvider_cd7de875c175f10c05b0017e9965fc7e --> ISimpleProvider_2c8c821200234d2ab0f67cdca7ed6ebf - -MockProvider_9b961c912c620c54e694c1a613217564[MockProvider] -IFundsManager_f24b2f68c6c9d2699f36d0867967deda --> MockProvider_9b961c912c620c54e694c1a613217564 -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> MockProvider_9b961c912c620c54e694c1a613217564 - -MockTransfer_58aa8ce7623e719021665bb42e05fb99[MockTransfer] -IBeforeTransfer_fc8cbc88375833aed07390338e647064 --> MockTransfer_58aa8ce7623e719021665bb42e05fb99 -DealProvider_947a0acc5d949314aefec0b89951bccc --> MockTransfer_58aa8ce7623e719021665bb42e05fb99 - -MockVaultManager_ccc71cd578d4d5555c11a3057448af39[MockVaultManager] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> MockVaultManager_ccc71cd578d4d5555c11a3057448af39 - -DelayMigratorState_b991984f094cafcbde2850e701c68b7f[DelayMigratorState] -IMigrator_e60a1da02e19e1dc00110c211c868725 --> DelayMigratorState_b991984f094cafcbde2850e701c68b7f - -DelayVaultMigrator_b6878dbb61f39821c5c34697f100809a[DelayVaultMigrator]:::changed -DelayMigratorState_b991984f094cafcbde2850e701c68b7f --> DelayVaultMigrator_b6878dbb61f39821c5c34697f100809a -ILockDealV2_c70ef79f7508da97d418c411affec316 --> DelayVaultMigrator_b6878dbb61f39821c5c34697f100809a - -IVault_a136653d18fd950f1568772a50c096a2[IVault] - -Vault_30a71139af369be4d4de80987ff1c9f9[Vault] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> Vault_30a71139af369be4d4de80987ff1c9f9 -IVault_a136653d18fd950f1568772a50c096a2 --> Vault_30a71139af369be4d4de80987ff1c9f9 -ERC20Helper_0e870a288adab9c346f2196fefe3657e --> Vault_30a71139af369be4d4de80987ff1c9f9 - -IVaultManager_33dfafa1b61e307292763635c0134220[IVaultManager] - -SignCheck_8eb3ab0b8d1abd52d4a885ddf354c62f[SignCheck] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> SignCheck_8eb3ab0b8d1abd52d4a885ddf354c62f - -VaultControl_52e356cacb735cae3767d1626fc8e9a4[VaultControl] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 -VaultView_3d9a067ceb7191469916c0c76ad3e973 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 -VaultManagerEvents_8e255d206b01ce0fda484fb5a0f4af08 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 -Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 -ERC2981_837d968019cd5e33f486f5869d25c3ca --> VaultControl_52e356cacb735cae3767d1626fc8e9a4 - -VaultManager_d099f59d998476e47495534c838d4e87[VaultManager] -VaultControl_52e356cacb735cae3767d1626fc8e9a4 --> VaultManager_d099f59d998476e47495534c838d4e87 -SignCheck_8eb3ab0b8d1abd52d4a885ddf354c62f --> VaultManager_d099f59d998476e47495534c838d4e87 -ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225 --> VaultManager_d099f59d998476e47495534c838d4e87 - -VaultManagerEvents_8e255d206b01ce0fda484fb5a0f4af08[VaultManagerEvents] - -VaultState_db1b90a2d34071a0926226ee5dc6a5a8[VaultState] - -VaultView_3d9a067ceb7191469916c0c76ad3e973[VaultView] -VaultState_db1b90a2d34071a0926226ee5dc6a5a8 --> VaultView_3d9a067ceb7191469916c0c76ad3e973 -IVaultManager_33dfafa1b61e307292763635c0134220 --> VaultView_3d9a067ceb7191469916c0c76ad3e973 - -MockTrustee_58e4d9c1239acd6f520e0b90f32fd164[MockTrustee] - -IDelayVaultProvider_29e63a33f6152478a4ac79e3268a95c4[IDelayVaultProvider] -IProvider_cd7de875c175f10c05b0017e9965fc7e --> IDelayVaultProvider_29e63a33f6152478a4ac79e3268a95c4 - -IDelayVaultV1_5efea0143004e183d96271a2ea1faed5[IDelayVaultV1] - -ILockDealV2_c70ef79f7508da97d418c411affec316[ILockDealV2] - -IMigrator_e60a1da02e19e1dc00110c211c868725[IMigrator] - -ISphereXEngine_f482646d0f579a8400d8bd022e2dbc3c[ISphereXEngine] - -SphereXProtected_65b58846f76d41a538e58df9d3925b95[SphereXProtected] -SphereXProtectedBase_c93a6e30d8c3a1f95be46e0e3c4045c1 --> SphereXProtected_65b58846f76d41a538e58df9d3925b95 - -SphereXProtectedBase_c93a6e30d8c3a1f95be46e0e3c4045c1[SphereXProtectedBase] - -Ownable_6f1c1a7a333b8cdb6324af84c0a770c1[Ownable] -Context_9bc521564404bae8d4d098d6065dfb07 --> Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 - -IERC2981_75f84d241d040904f070b04ede15a0e2[IERC2981] -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> IERC2981_75f84d241d040904f070b04ede15a0e2 - -IERC4906_7050632951d929ba724f0037f9e7717e[IERC4906] -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> IERC4906_7050632951d929ba724f0037f9e7717e -IERC721_a429b489dff6845686f9ebdde7c21432 --> IERC4906_7050632951d929ba724f0037f9e7717e - -Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63[Pausable] -Context_9bc521564404bae8d4d098d6065dfb07 --> Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63 -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> Pausable_5cc9e68ad0aa35e1b5f96c973ce20f63 - -ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225[ReentrancyGuard] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ReentrancyGuard_625573287f06c3fd69fdaeb1bb6d4225 - -ERC20_bacc8aac7a84088b0fd2f1700c189ee5[ERC20] -Context_9bc521564404bae8d4d098d6065dfb07 --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 -IERC20_a3d3c121ed2d01093a3bfa083f59dd0a --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 -IERC20Metadata_39bd892766396042893279b53af5d94c --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC20_bacc8aac7a84088b0fd2f1700c189ee5 - -IERC20_a3d3c121ed2d01093a3bfa083f59dd0a[IERC20] - -IERC20Metadata_39bd892766396042893279b53af5d94c[IERC20Metadata] -IERC20_a3d3c121ed2d01093a3bfa083f59dd0a --> IERC20Metadata_39bd892766396042893279b53af5d94c - -ERC721_64e9af5a70638b559e62e8502be9eff1[ERC721] -Context_9bc521564404bae8d4d098d6065dfb07 --> ERC721_64e9af5a70638b559e62e8502be9eff1 -ERC165_177a1c81e843900c2e4cb067949baa43 --> ERC721_64e9af5a70638b559e62e8502be9eff1 -IERC721_a429b489dff6845686f9ebdde7c21432 --> ERC721_64e9af5a70638b559e62e8502be9eff1 -IERC721Metadata_51d7a19a5298a604cf68da1f5a2e7ab7 --> ERC721_64e9af5a70638b559e62e8502be9eff1 -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC721_64e9af5a70638b559e62e8502be9eff1 - -IERC721_a429b489dff6845686f9ebdde7c21432[IERC721] -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> IERC721_a429b489dff6845686f9ebdde7c21432 - -IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7[IERC721Receiver] - -ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827[ERC721Enumerable] -ERC721_64e9af5a70638b559e62e8502be9eff1 --> ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827 -IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd --> ERC721Enumerable_ddce8134da94eb748bbbf5baccdd0827 - -IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd[IERC721Enumerable] -IERC721_a429b489dff6845686f9ebdde7c21432 --> IERC721Enumerable_bd98f4691923412c26fd70c0ee0c13fd - -IERC721Metadata_51d7a19a5298a604cf68da1f5a2e7ab7[IERC721Metadata] -IERC721_a429b489dff6845686f9ebdde7c21432 --> IERC721Metadata_51d7a19a5298a604cf68da1f5a2e7ab7 - -ERC721Holder_4beda974380602ee388e3cc279acc07f[ERC721Holder] -IERC721Receiver_f8ee1f3d81e818e63e181ba8a0cf10d7 --> ERC721Holder_4beda974380602ee388e3cc279acc07f -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC721Holder_4beda974380602ee388e3cc279acc07f - -ERC2981_837d968019cd5e33f486f5869d25c3ca[ERC2981] -IERC2981_75f84d241d040904f070b04ede15a0e2 --> ERC2981_837d968019cd5e33f486f5869d25c3ca -ERC165_177a1c81e843900c2e4cb067949baa43 --> ERC2981_837d968019cd5e33f486f5869d25c3ca -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC2981_837d968019cd5e33f486f5869d25c3ca - -Context_9bc521564404bae8d4d098d6065dfb07[Context] - -ERC165_177a1c81e843900c2e4cb067949baa43[ERC165] -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b --> ERC165_177a1c81e843900c2e4cb067949baa43 - -IERC165_7f3a74cab6e5a3c4fe35cd27886aaf5b[IERC165] - -ERC20Helper_0e870a288adab9c346f2196fefe3657e[ERC20Helper] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC20Helper_0e870a288adab9c346f2196fefe3657e - -GovManager_5e8b21506ea6eb66b3fd508aaa345322[GovManager] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> GovManager_5e8b21506ea6eb66b3fd508aaa345322 -Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> GovManager_5e8b21506ea6eb66b3fd508aaa345322 - -ILockedDealV2_313e2236856f188e5cac986cdaccb0d6[ILockedDealV2] - -IVaultManager_2474704c8ba20a41e09b5445f11872e8[IVaultManager] -IERC2981_75f84d241d040904f070b04ede15a0e2 --> IVaultManager_2474704c8ba20a41e09b5445f11872e8 - -ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb[ERC20Token] -SphereXProtected_65b58846f76d41a538e58df9d3925b95 --> ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb -ERC20_bacc8aac7a84088b0fd2f1700c189ee5 --> ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb -Ownable_6f1c1a7a333b8cdb6324af84c0a770c1 --> ERC20Token_5c1d8b35a7f3327432bb8bf519676cbb - -classDef changed fill:blue -``` From 36c91b312a2b2b8a4aebcf4a06161e67c42b42cd Mon Sep 17 00:00:00 2001 From: idoh-spherex Date: Sun, 5 Nov 2023 17:05:57 +0200 Subject: [PATCH 6/6] Fixed remappings. --- contracts/DelayVaultProvider.sol | 2 +- contracts/LastPoolOwnerState.sol | 2 +- contracts/MigratorV1/DelayMigratorState.sol | 2 +- contracts/MigratorV1/DelayVaultMigrator.sol | 4 ++-- hardhat.config.ts | 25 --------------------- package.json | 6 ++--- remappings.txt | 3 --- test/DelayMigrator/Migrator.ts | 2 +- test/DelayVaultProvider/setupTests.ts | 2 +- 9 files changed, 10 insertions(+), 38 deletions(-) delete mode 100644 remappings.txt diff --git a/contracts/DelayVaultProvider.sol b/contracts/DelayVaultProvider.sol index 638b471..86028a4 100644 --- a/contracts/DelayVaultProvider.sol +++ b/contracts/DelayVaultProvider.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.0; import "./DelayVaultState.sol"; -import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import "@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/IERC20.sol"; import {SphereXProtected} from "@spherex-xyz/contracts/src/SphereXProtected.sol"; diff --git a/contracts/LastPoolOwnerState.sol b/contracts/LastPoolOwnerState.sol index 28826c3..e8ae883 100644 --- a/contracts/LastPoolOwnerState.sol +++ b/contracts/LastPoolOwnerState.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.0; import "./LockDealNFT/contracts/interfaces/IBeforeTransfer.sol"; -import "@openzeppelin/contracts/utils/introspection/IERC165.sol"; +import "@spherex-xyz/openzeppelin-solidity/contracts/utils/introspection/IERC165.sol"; abstract contract LastPoolOwnerState is IBeforeTransfer, IERC165 { mapping(uint256 => address) internal lastPoolOwner; diff --git a/contracts/MigratorV1/DelayMigratorState.sol b/contracts/MigratorV1/DelayMigratorState.sol index 73217c9..ccc8bc6 100644 --- a/contracts/MigratorV1/DelayMigratorState.sol +++ b/contracts/MigratorV1/DelayMigratorState.sol @@ -4,7 +4,7 @@ pragma solidity ^0.8.0; import "../interfaces/IDelayVaultProvider.sol"; import "../interfaces/IDelayVaultV1.sol"; import "../interfaces/IMigrator.sol"; -import "@poolzfinance/poolz-helper-v2/contracts/interfaces/IVaultManager.sol"; +import "@spherex-xyz/poolz-helper-v2/contracts/interfaces/IVaultManager.sol"; abstract contract DelayMigratorState is IMigrator { IDelayVaultV1 public oldVault; diff --git a/contracts/MigratorV1/DelayVaultMigrator.sol b/contracts/MigratorV1/DelayVaultMigrator.sol index 898ceac..0541e6a 100644 --- a/contracts/MigratorV1/DelayVaultMigrator.sol +++ b/contracts/MigratorV1/DelayVaultMigrator.sol @@ -3,8 +3,8 @@ pragma solidity ^0.8.0; import "./DelayMigratorState.sol"; import "../interfaces/ILockDealV2.sol"; -import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import "@openzeppelin/contracts/utils/introspection/ERC165Checker.sol"; +import "@spherex-xyz/openzeppelin-solidity/contracts/token/ERC20/IERC20.sol"; +import "@spherex-xyz/openzeppelin-solidity/contracts/utils/introspection/ERC165Checker.sol"; import {SphereXProtected} from "@spherex-xyz/contracts/src/SphereXProtected.sol"; diff --git a/hardhat.config.ts b/hardhat.config.ts index 4d194e7..501a973 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -3,16 +3,6 @@ import "@truffle/dashboard-hardhat-plugin" import "hardhat-gas-reporter" import { HardhatUserConfig } from "hardhat/config" import "solidity-coverage" -import "hardhat-preprocessor"; -import * as fs from 'fs'; - -function getRemappings() { - return fs - .readFileSync("remappings.txt", "utf8") - .split("\n") - .filter(Boolean) // remove empty lines - .map((line) => line.trim().split("=")); - } const config: HardhatUserConfig = { defaultNetwork: "hardhat", @@ -44,21 +34,6 @@ const config: HardhatUserConfig = { noColors: true, outputFile: "gas-report.txt", }, - preprocess: { - eachLine: (hre) => ({ - transform: (line: string) => { - if (line.match(/^\s*import /i)) { - for (const [from, to] of getRemappings()) { - if (line.includes(from)) { - line = line.replace(from, to); - break; - } - } - } - return line; - }, - }), - }, } export default config diff --git a/package.json b/package.json index 6d51548..3e929cf 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,6 @@ "@nomiclabs/hardhat-ethers": "^2.2.1", "@nomiclabs/hardhat-etherscan": "^3.1.2", "@nomiclabs/hardhat-waffle": "^2.0.6", - "@poolzfinance/poolz-helper-v2": "^2.1.14", "@truffle/dashboard-hardhat-plugin": "^0.2.15", "@typechain/ethers-v5": "^10.1.0", "@typechain/hardhat": "^6.1.2", @@ -35,9 +34,10 @@ "typescript": "^5.2.2" }, "dependencies": { + "@openzeppelin/contracts": "^4.9.3", "@spherex-xyz/contracts": "^1.0.6", "@spherex-xyz/openzeppelin-solidity": "^0.0.4", - "@spherex-xyz/poolz-helper-v2": "^0.0.2", - "hardhat-preprocessor": "^0.1.5" + "@spherex-xyz/poolz-helper-v2": "^0.0.3", + "poolz-helper-v2": "^2.1.13" } } diff --git a/remappings.txt b/remappings.txt deleted file mode 100644 index b5634a3..0000000 --- a/remappings.txt +++ /dev/null @@ -1,3 +0,0 @@ -@openzeppelin/=node_modules/@spherex-xyz/openzeppelin-solidity/ -@poolzfinance/poolz-helper-v2/=node_modules/@spherex-xyz/poolz-helper-v2/ -poolz-helper-v2/contracts/=node_modules/@spherex-xyz/poolz-helper-v2/contracts/ \ No newline at end of file diff --git a/test/DelayMigrator/Migrator.ts b/test/DelayMigrator/Migrator.ts index fdead70..04202bb 100644 --- a/test/DelayMigrator/Migrator.ts +++ b/test/DelayMigrator/Migrator.ts @@ -39,7 +39,7 @@ describe('DelayVault Migrator', function () { before('Download and unzip contracts', async () => { [user1, user2, user3, user4, user5] = await ethers.getSigners(); token = await deployed( - 'ERC20Token', + '@spherex-xyz/poolz-helper-v2/contracts/token/ERC20Token.sol:ERC20Token', 'TestToken', 'TEST', ); diff --git a/test/DelayVaultProvider/setupTests.ts b/test/DelayVaultProvider/setupTests.ts index dec96ec..b3f88dc 100644 --- a/test/DelayVaultProvider/setupTests.ts +++ b/test/DelayVaultProvider/setupTests.ts @@ -51,7 +51,7 @@ export class DelaySetup { this.mockProvider = await deployed('MockProvider', this.lockDealNFT.address, this.timedDealProvider.address); this.delayVault = await deployed('DelayVault'); this.token = await deployed( - 'ERC20Token', + '@spherex-xyz/poolz-helper-v2/contracts/token/ERC20Token.sol:ERC20Token', 'Token', 'TKN', );